API-Referenz
Team
Der Inhaber eines X-Kontos kann es mit anderen Gemlead-Nutzern teilen. Jedes Mitglied arbeitet darin mit dem Tarif und den Credits des Inhabers, und seine Rolle bestimmt, was es ändern darf, Bereich für Bereich. Abrechnung und Verbindung des X-Kontos bleiben beim Inhaber.
Der Inhaber und die Admins laden Mitglieder ein und ändern sie. Nur der Inhaber macht jemanden zum Admin oder ändert einen Admin. Ein X-Konto hat höchstens 50 Mitglieder, Einladungen eingeschlossen.
Ein Mitglied, dessen Rolle die Einstellungen bearbeiten darf, kann einen eigenen API-Schlüssel erstellen oder eine KI-App verbinden. Dieser Schlüssel hat die Rechte der Rolle des Mitglieds, nie mehr, und funktioniert nicht mehr, sobald es das Team verlässt.
Das Teamobjekt
Wer in Gemlead am X-Konto arbeitet, zuerst sein Inhaber, und was der Nutzer des Schlüssels dort darf.
Attribute
- objectstringImmer
team. - account_idstringDie ID des X-Kontos, wie im Kontoobjekt.
- your_rolestringDie Rolle des Nutzers des Schlüssels.
ownerfür die Schlüssel des Inhabers.ownerviewersettereditoradmincustom - your_member_idstring oder nullDer Nutzer des Schlüssels als Mitglied, null für den Inhaber.
- ownerobjectDer Gemlead-Nutzer, der das X-Konto verbunden hat und dafür bezahlt.
- membersArray von objectsDie Mitglieder und die Einladungen, als Teammitglied-Objekte.
- max_membersintegerWie viele Mitglieder ein X-Konto höchstens hat, Einladungen eingeschlossen.
{
"object": "team",
"account_id": "a9PzK2vRtM",
"your_role": "owner",
"your_member_id": null,
"owner": {
"name": "Alex Moreau",
"email": "alex@acme.com",
"profile_image_url": "https://pbs.twimg.com/profile_images/1180044592/acme_400x400.jpg"
},
"members": [
{
"id": "Tm4kQ9wZrB",
"object": "team_member",
"email": "sara@acme.com",
"name": "Sara Kim",
"profile_image_url": "https://pbs.twimg.com/profile_images/1733920571/sara_400x400.jpg",
"role": "setter",
"zones": {
"personas": "view",
"campaigns": "view",
"chat": "edit",
"leads": "edit",
"settings": "view"
},
"status": "active",
"created_at": "2026-09-14T09:21:05.300Z"
},
{
"id": "Tm8vX2pLnC",
"object": "team_member",
"email": "dev@acme.com",
"name": null,
"profile_image_url": null,
"role": "custom",
"zones": {
"personas": "edit",
"campaigns": "view",
"chat": "view",
"leads": "edit",
"settings": "view"
},
"status": "invited",
"created_at": "2026-11-06T07:45:12.904Z"
}
],
"max_members": 50
}Team abrufen
Gibt den Inhaber des X-Kontos zurück, dann jedes Mitglied und jede Einladung mit Rolle und Bereichen, und die Rolle des Nutzers des Schlüssels.
Rückgabe
Das Teamobjekt.
curl https://gemlead.ai/api/v1/team \
-H "Authorization: Bearer $GEMLEAD_API_KEY"{
"object": "team",
"account_id": "a9PzK2vRtM",
"your_role": "owner",
"your_member_id": null,
"owner": {
"name": "Alex Moreau",
"email": "alex@acme.com",
"profile_image_url": "https://pbs.twimg.com/profile_images/1180044592/acme_400x400.jpg"
},
"members": [
{
"id": "Tm4kQ9wZrB",
"object": "team_member",
"email": "sara@acme.com",
"name": "Sara Kim",
"profile_image_url": "https://pbs.twimg.com/profile_images/1733920571/sara_400x400.jpg",
"role": "setter",
"zones": {
"personas": "view",
"campaigns": "view",
"chat": "edit",
"leads": "edit",
"settings": "view"
},
"status": "active",
"created_at": "2026-09-14T09:21:05.300Z"
},
{
"id": "Tm8vX2pLnC",
"object": "team_member",
"email": "dev@acme.com",
"name": null,
"profile_image_url": null,
"role": "custom",
"zones": {
"personas": "edit",
"campaigns": "view",
"chat": "view",
"leads": "edit",
"settings": "view"
},
"status": "invited",
"created_at": "2026-11-06T07:45:12.904Z"
}
],
"max_members": 50
}Das Teammitglied-Objekt
Jemand, mit dem der Inhaber das X-Konto teilt, oder eine Einladung, die noch nicht angenommen ist.
Attribute
- idstringEindeutige Kennung des Mitglieds.
- objectstringImmer
team_member. - emailstringDie E-Mail, an die die Einladung ging.
- namestring oder nullDer Name in Gemlead. Null, bis die Person dem Team beitritt.
- profile_image_urlstring oder nullDie URL des Profilbilds.
- rolestring
viewersieht alles und ändert nichts.setterkümmert sich um Chat und Leads.editorändert alles außer den Einstellungen.adminändert alles und verwaltet das Team.customändert die Bereiche, die du wählst.viewersettereditoradmincustom - zonesobjectWas das Mitglied ändern darf, Bereich für Bereich, jeweils
viewoderedit. Die Rolle legt sie fest, undcustombehält die, die du wählst. - statusstring
active, sobald die Person ein Gemlead-Konto mit dieser E-Mail hat, bis dahininvited.invitedactive - created_atstringWann die Einladung verschickt wurde, ISO 8601.
{
"id": "Tm4kQ9wZrB",
"object": "team_member",
"email": "sara@acme.com",
"name": "Sara Kim",
"profile_image_url": "https://pbs.twimg.com/profile_images/1733920571/sara_400x400.jpg",
"role": "setter",
"zones": {
"personas": "view",
"campaigns": "view",
"chat": "edit",
"leads": "edit",
"settings": "view"
},
"status": "active",
"created_at": "2026-09-14T09:21:05.300Z"
}Mitglied einladen
Lädt jemanden per E-Mail mit einer Rolle ins Team des X-Kontos ein und schickt der Person eine E-Mail. Wer ein Gemlead-Konto mit dieser E-Mail hat, ist sofort dabei, alle anderen, sobald sie sich damit registrieren.
Body-Parameter
- emailstringErforderlichDie E-Mail der Person, bis zu 200 Zeichen.
- rolestringErforderlichWas das Mitglied darf. Siehe
roleim Teammitglied-Objekt.viewersettereditoradmincustom - zonesobjectNur mit der Rolle
custom, was das Mitglied ändern darf, Bereich für Bereich, jeweilsviewoderedit. Ein fehlender Bereich istview.
Rückgabe
Das neue Teammitglied-Objekt, mit dem Wert active in status, wenn die Person ein Gemlead-Konto hat, sonst invited.
Fehler
- Ein Pflichtparameter fehlt.
paramnennt ihn. - Ein Parameter hat einen Wert, den die API nicht akzeptiert, etwa
zonesmit einer anderen Rolle alscustomoder die E-Mail des Inhabers selbst.paramnennt ihn. - Der Body enthält ein Feld, das dieser Endpoint nicht akzeptiert.
- 403forbiddenDer Nutzer des Schlüssels darf das Team nicht ändern. Der Inhaber und die Admins dürfen es, und nur der Inhaber ernennt oder ändert einen Admin.
- Diese E-Mail ist schon im Team, als Mitglied oder als Einladung.
- Das X-Konto hat schon 50 Mitglieder, Einladungen eingeschlossen.
curl -X POST https://gemlead.ai/api/v1/team/members \
-H "Authorization: Bearer $GEMLEAD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"email": "dev@acme.com",
"role": "custom",
"zones": {
"personas": "edit",
"leads": "edit"
}
}'{
"id": "Tm8vX2pLnC",
"object": "team_member",
"email": "dev@acme.com",
"name": null,
"profile_image_url": null,
"role": "custom",
"zones": {
"personas": "edit",
"campaigns": "view",
"chat": "view",
"leads": "edit",
"settings": "view"
},
"status": "invited",
"created_at": "2026-11-06T07:45:12.904Z"
}Mitglied ändern
Ändert die Rolle eines Mitglieds oder, Bereich für Bereich, was es ändern darf. Mit zones wird die Rolle custom, und nur die gesendeten Bereiche ändern sich.
Pfadparameter
- member_idstringErforderlichDie ID des Teammitglieds.
Body-Parameter
- rolestringWas das Mitglied darf. Siehe
roleim Teammitglied-Objekt.viewersettereditoradmincustom - zonesobjectDie Bereiche, die sich ändern, jeweils
viewoderedit. Die anderen bleiben, wie sie sind.
Rückgabe
Das aktualisierte Teammitglied-Objekt.
Fehler
- Kein Teammitglied mit dieser ID im Konto des Schlüssels.
- Ein Parameter hat einen Wert, den die API nicht akzeptiert.
paramnennt ihn. - Der Body enthält ein Feld, das dieser Endpoint nicht akzeptiert.
- 403forbiddenDer Nutzer des Schlüssels darf das Team nicht ändern. Der Inhaber und die Admins dürfen es, und nur der Inhaber ernennt oder ändert einen Admin.
curl -X PATCH \
https://gemlead.ai/api/v1/team/members/Tm4kQ9wZrB \
-H "Authorization: Bearer $GEMLEAD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"role": "editor"
}'{
"id": "Tm4kQ9wZrB",
"object": "team_member",
"email": "sara@acme.com",
"name": "Sara Kim",
"profile_image_url": "https://pbs.twimg.com/profile_images/1733920571/sara_400x400.jpg",
"role": "editor",
"zones": {
"personas": "edit",
"campaigns": "edit",
"chat": "edit",
"leads": "edit",
"settings": "view"
},
"status": "active",
"created_at": "2026-09-14T09:21:05.300Z"
}Mitglied entfernen
Entfernt ein Mitglied aus dem Team oder zieht eine Einladung zurück. Die Person verliert sofort den Zugriff auf das X-Konto.
Pfadparameter
- member_idstringErforderlichDie ID des Teammitglieds.
Rückgabe
Ein Objekt mit der id des Mitglieds und dem Wert true in deleted.
Fehler
- Kein Teammitglied mit dieser ID im Konto des Schlüssels.
- 403forbiddenDer Nutzer des Schlüssels darf das Team nicht ändern. Der Inhaber und die Admins dürfen es, und nur der Inhaber ernennt oder ändert einen Admin.
curl -X DELETE \
https://gemlead.ai/api/v1/team/members/Tm8vX2pLnC \
-H "Authorization: Bearer $GEMLEAD_API_KEY"{
"id": "Tm8vX2pLnC",
"object": "team_member",
"deleted": true
}Team verlassen
Entfernt den Nutzer des Schlüssels aus dem Team des X-Kontos. Das geht mit dem Schlüssel eines Mitglieds, nie mit dem des Inhabers.
Rückgabe
Ein Objekt mit der id des Mitglieds und dem Wert true in deleted.
Fehler
- Der Schlüssel gehört dem Inhaber. Der Inhaber entfernt stattdessen die Mitglieder.
curl -X POST https://gemlead.ai/api/v1/team/leave \
-H "Authorization: Bearer $GEMLEAD_API_KEY"{
"id": "Tm4kQ9wZrB",
"object": "team_member",
"deleted": true
}