Grip API Dokumentation

Version 2.0 · /api/v2

Kunden

Kunden sind Ansprechpartner, also Personen, innerhalb der Kundenorganisation. Sie benötigen immer eine Kundenorganisation als Container. Empfänger eines Angebots in Grip ist immer der Ansprechpartner, also ein Kunde.

Das Objekt client

Das Objekt client enthält alle Informationen zum Ansprechpartner auf Kundenseite (kurz: Kunde) wie zum Beispiel Vor- und Nachname, E-Mail-Adresse und Telefonnummer.

client

Eigenschaften

id integer
Eindeutige Kennung
Nur lesbar
firstname string
Vorname
lastname string
Nachname
Pflicht
prefix string
Akad. Titel
sex integer
Anrede
Zulässige Werte: 0 => unbekannt, 1 => männlich, 2 => weiblich
phone string
Telefon
email string
E-Mail
notes text
Bemerkungen
created_at datetime
Zeitpunkt der Erstellung
updated_at datetime
Zeitpunkt der letzten Änderung

Alle Kunden auflisten

GET /clients

Dieser Endpunkt ermöglicht das Auflisten aller Kunden. Die gesamte Liste wird ohne Paginierung zurück gegeben. Die Attribute des Objekts sind im Abschnitt Das Objekt client beschrieben.

Request
curl 'https://deinkonto.getgrip.de/api/v2/clients' \
  -H 'Accept: application/vnd.api+json' \
  -H 'Authorization: Bearer {token}'
  
Response
{
    "data": [
        {
            "id": "53",
            "type": "client",
            "attributes": {
                "firstname": "AAA",
                "lastname": "55",
                "prefix": "",
                "sex": 0,
                "phone": "",
                "email": "a.55@aaa.net",
                "notes": "",
                "created_at": "2018-12-14T21:24:51.384+01:00",
                "updated_at": "2023-03-10T18:05:26.206+01:00"
            },
            "relationships": {
                "client_organization": {
                    "data": {
                        "id": "84",
                        "type": "client_organization"
                    }
                }
            }
        },
        {
            "id": "54",
            "type": "client",
            "attributes": {
                "firstname": "Martin",
                "lastname": "Aahr",
                // ...
            }
        },
        // ...
    ]
}
  

Kunde anlegen

POST /clients

Dieser Endpunkt ermöglicht das Anlegen eines Objekts vom Typ client. Der Request muss das Attribut "type" = "client" enthalten. Die Attribute des Objekts sind im Abschnitt Das Objekt client beschrieben.

Request
curl 'https://deinkonto.getgrip.de/api/v2/clients' \
  -H 'Authorization: Bearer {token}' \
  -H 'Content-Type: application/json' \
  -d '{
      "data": {
          "type": "client",
          "attributes": {
              "firstname": "Manuel",
              "lastname": "Kronberger",
              "sex": "1"
          },
          "relationships": {
              "client_organization": {
                  "data":
                      {
                          "type": "client_organization",
                          "id": "110"
                      }

              }
          }
      }
  }'
Response
{
    "data": {
        "id": "190",
        "type": "client",
        "attributes": {
            "firstname": "Manuel",
            "lastname": "Kronberger",
            "prefix": null,
            "sex": 1,
            "phone": null,
            "email": null,
            "notes": null,
            "created_at": "2023-03-29T17:51:13.603+02:00",
            "updated_at": "2023-03-29T17:51:13.603+02:00"
        },
        "relationships": {
            "client_organization": {
                "data": {
                    "id": "110",
                    "type": "client_organization"
                }
            }
        }
    }
}

Kunde abrufen

GET /client/:id

Dieser Endpunkt ermöglicht das Abrufen eines einzelnen Kunden. Mit dem Request-Parameter include=client_organizations können die Attribute der zugehörigen Kundenorganisation in die Abfrage einbezogen werden.

Request
curl 'https://deinkonto.getgrip.de/api/v2/clients/153' \
  -H 'Accept: application/vnd.api+json' \
  -H 'Authorization: Bearer {token}'
Response
{
    "data": {
        "id": "153",
        "type": "client",
        "attributes": {
            "firstname": "Sophie",
            "lastname": "Klarmann",
            "prefix": "Dr.",
            "sex": 2,
            "phone": "0171/1002001",
            "email": "sk@klarmann.com",
            "notes": "",
            "created_at": "2022-04-12T18:22:12.380+02:00",
            "updated_at": "2023-03-29T17:37:14.832+02:00"
        },
        "relationships": {
            "client_organization": {
                "data": {
                    "id": "110",
                    "type": "client_organization"
                }
            }
        }
    }
}

Kunde ändern

PUT /client/:id

Dieser Endpunkt ermöglicht das Ändern eines Objekts vom Typ client. Der Request muss die Attribute type und id enthalten. Die Attribute des Objekts sind im Abschnitt Das Objekt client beschrieben.

Request
curl -L -X PATCH 'https://deinkonto.getgrip.de/api/v2/clients/190' \
  -H 'Authorization: Bearer {token}' \
  -H 'Content-Type: application/json' \
  --data-raw '{
    "data": {
        "type": "client",
        "id": "190",
        "attributes": {
            "phone": "0171/1002002",
            "email": "mk@klarmann.com"
        }
    }
}'
Response
{
    "data": {
        "id": "190",
        "type": "client",
        "attributes": {
            "firstname": "Manuel",
            "lastname": "Kronberger",
            "prefix": null,
            "sex": 1,
            "phone": "0171/1002002",
            "email": "mk@klarmann.com",
            "notes": null,
            "created_at": "2023-03-29T17:51:13.603+02:00",
            "updated_at": "2023-03-29T17:57:37.370+02:00"
        },
        "relationships": {
            "client_organization": {
                "data": {
                    "id": "110",
                    "type": "client_organization"
                }
            }
        }
    }
}

Kunde löschen

DELETE /client/:id

Dieser Endpunkt ermöglicht das Löschen eines Kunden. Das Löschen ist nur möglich, wenn keine Angebote für diesen Kunden existieren.

Request
curl https://deinkonto.getgrip.de/api/v2/clients/190 \
  --header 'Authorization: Bearer {token}' \
  --request DELETE

© 2024 T8 Lab GmbH