API-Referenz

Personas

Eine Persona ist ein Käufertyp, den du erreichen willst, etwa Tipster oder Agenturinhaber. Gemlead findet Leads für jede aktive Persona und bewertet sie anhand ihrer Beschreibung. Ihre Quellen bestimmen, wo Gemlead sucht.

Ein Inhaber mit mehreren X-Konten kann eine Persona zwischen ihnen teilen. Sie arbeiten mit denselben Quellen, Einstellungen und Leads, jedes mit eigenen Kampagnen, und ein Lead geht nur an ein X-Konto. Die Persona-Freigabe legt fest, welche X-Konten sie teilen.

Das Persona-Objekt

Ein Käufertyp, den du erreichen willst. Gemlead sucht Leads, die zu jeder aktiven Persona passen, und bewertet sie anhand der Persona.

Attribute

  • idstring
    Eindeutige Kennung der Persona.
  • objectstring
    Immer persona.
  • namestring
    Der Kurzname der Persona, etwa Tipsters.
  • descriptionstring
    Wer dieser Käufer ist, in deinen Worten. Das Scoring stützt sich darauf.
  • marketstring
    Ob du an Unternehmen oder an Endkunden verkaufst.
    b2bb2c
  • statusstring
    Ob Gemlead für diese Persona nach Leads sucht.
    activepaused
  • websitestring oder null
    Die Website des Angebots, das du dieser Persona verkaufst.
  • statsobject
    Zahlen seit dem Anlegen der Persona und für heute in der Zeitzone deines Profils.
  • sharingobject
    Die X-Konten des Inhabers, die die Persona teilen. Siehe Persona-Freigabe.
  • created_atstring
    Wann die Persona erstellt wurde, ISO 8601.
  • updated_atstring
    Wann sich die Persona zuletzt geändert hat, ISO 8601.
Das Persona-Objekt
{
  "id": "lvWBPnytpS",
  "object": "persona",
  "name": "Tipsters",
  "description": "Sports and trading tipsters who sell picks or signals to a paying community.",
  "market": "b2c",
  "status": "active",
  "website": "https://example.com",
  "stats": {
    "leads_found": 18420,
    "leads_scored": 17960,
    "hot_leads": 2134,
    "avg_score": 41,
    "today": {
      "leads_found": 312,
      "hot_leads": 38,
      "dms_sent": 25,
      "replies": 4
    }
  },
  "sharing": {
    "home_account": {
      "id": "a9PzK2vRtM",
      "username": "acme"
    },
    "shared_with": [
      {
        "id": "Hq4TnW8cLm",
        "username": "acme_sales"
      }
    ]
  },
  "created_at": "2026-09-14T09:21:05.300Z",
  "updated_at": "2026-11-06T07:45:12.904Z"
}

Personas auflisten

GET/v1/personasScope readMCPlist_personas

Gibt deine Personas in der Reihenfolge deiner Personas-Seite zurück.

Query-Parameter

  • limitinteger
    Wie viele Objekte zurückgegeben werden, von 1 bis 100. Standardmäßig 25.
  • cursorstring
    Der next_cursor der vorherigen Seite, um die nächste Seite abzurufen. Siehe Paginierung.

Rückgabe

Eine Liste von Persona-Objekten.

GET/v1/personas
curl https://gemlead.ai/api/v1/personas \
  -H "Authorization: Bearer $GEMLEAD_API_KEY"
Antwort200
{
  "object": "list",
  "data": [
    {
      "id": "lvWBPnytpS",
      "object": "persona",
      "name": "Tipsters",
      "description": "Sports and trading tipsters who sell picks or signals to a paying community.",
      "market": "b2c",
      "status": "active",
      "website": "https://example.com",
      "stats": {
        "leads_found": 18420,
        "leads_scored": 17960,
        "hot_leads": 2134,
        "avg_score": 41,
        "today": {
          "leads_found": 312,
          "hot_leads": 38,
          "dms_sent": 25,
          "replies": 4
        }
      },
      "sharing": {
        "home_account": {
          "id": "a9PzK2vRtM",
          "username": "acme"
        },
        "shared_with": [
          {
            "id": "Hq4TnW8cLm",
            "username": "acme_sales"
          }
        ]
      },
      "created_at": "2026-09-14T09:21:05.300Z",
      "updated_at": "2026-11-06T07:45:12.904Z"
    }
  ],
  "has_more": false,
  "next_cursor": null
}

Persona abrufen

GET/v1/personas/:idScope readMCPget_persona

Gibt eine Persona mit ihren Statistiken zurück.

Pfadparameter

  • idstringErforderlich
    Die ID der Persona.

Rückgabe

Ein Persona-Objekt.

Fehler

GET/v1/personas/:id
curl https://gemlead.ai/api/v1/personas/lvWBPnytpS \
  -H "Authorization: Bearer $GEMLEAD_API_KEY"
Antwort200
{
  "id": "lvWBPnytpS",
  "object": "persona",
  "name": "Tipsters",
  "description": "Sports and trading tipsters who sell picks or signals to a paying community.",
  "market": "b2c",
  "status": "active",
  "website": "https://example.com",
  "stats": {
    "leads_found": 18420,
    "leads_scored": 17960,
    "hot_leads": 2134,
    "avg_score": 41,
    "today": {
      "leads_found": 312,
      "hot_leads": 38,
      "dms_sent": 25,
      "replies": 4
    }
  },
  "sharing": {
    "home_account": {
      "id": "a9PzK2vRtM",
      "username": "acme"
    },
    "shared_with": [
      {
        "id": "Hq4TnW8cLm",
        "username": "acme_sales"
      }
    ]
  },
  "created_at": "2026-09-14T09:21:05.300Z",
  "updated_at": "2026-11-06T07:45:12.904Z"
}

Persona erstellen

POST/v1/personasScope writeMCPcreate_persona

Erstellt eine Persona und beginnt sofort, ihre Leads zu finden. Das Scoring kostet bis zu 2 Credits pro Lead: 1 für den ersten Durchgang, 1 weiterer für den Deep Score, wenn der Lead ihn besteht, für bis zu daily_scoring_limit Leads am Tag. Füge Quellen jetzt oder später mit Quelle hinzufügen hinzu.

Body-Parameter

  • namestringErforderlich
    Der Name der Persona, ein bis drei Wörter wie Ghostwriters, bis zu 100 Zeichen.
  • websitestring
    Die Website deines Produkts, bis zu 500 Zeichen. Die KI, die Leads bewertet, liest sie.
  • descriptionstringErforderlich
    Wer dieser Käufer ist, in einfachen Worten. Die KI bewertet jeden Lead daran auf einer Skala von 0 bis 100, deshalb zählt dieses Feld am meisten. Es kann auch deine eigenen Scoring-Regeln enthalten. Bis zu 12 000 Zeichen.
  • marketstring
    b2b, wenn Unternehmen kaufen, b2c, wenn Menschen für sich selbst kaufen. Standardmäßig b2b.
    b2bb2c
  • keywordsArray von strings
    Wörter in einem Profil oder seinen Beiträgen, die zeigen, dass jemand passt. Bis zu 100, jedes mit bis zu 100 Zeichen.
  • competitorsArray von strings
    Produkte wie deins, wer eines nutzt, passt. Bis zu 100.
  • avoidArray von strings
    Wen die KI niedrig bewerten soll, etwa agencies oder students. Bis zu 100.
  • min_followersinteger
    Profile mit weniger Followern werden nicht bewertet, 0 bis 10 000 000. Standardmäßig 100.
  • include_closed_inboxesboolean
    Auch Personen mit geschlossenen DMs bewerten, eine Kampagne erreicht sie per Kommentar. Standardmäßig true.
  • auto_expandboolean
    Gemlead selbst Quellen aus den besten Leads hinzufügen lassen, wenn die anderen versiegen. Standardmäßig false.
  • auto_expand_directionstring
    Wohin die automatische Erweiterung als Nächstes führt, in einfachen Worten wie more US founders. Bis zu 500 Zeichen.
  • daily_scoring_limitinteger
    Wie viele Leads für diese Persona höchstens pro Tag bewertet werden, bis zu 2 Credits pro Lead: 1 für den ersten Durchgang, 1 weiterer für den Deep Score, wenn der Lead ihn besteht. 100 bis 20 000. Standardmäßig das Tempo deines Tarifs, 3 300 am Tag bei Starter und 10 000 bei Business.
  • sourcesArray von objects
    Bis zu 20 Startquellen. Konten von Investoren, Acceleratoren und Medien werden abgelehnt, sie bringen keine Käufer.

Rückgabe

Das neue Persona-Objekt.

Fehler

POST/v1/personas
curl -X POST https://gemlead.ai/api/v1/personas \
  -H "Authorization: Bearer $GEMLEAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Tipsters",
    "description": "Sports and trading tipsters who sell picks or signals to a paying community.",
    "market": "b2c",
    "keywords": ["tipster", "betting tips"],
    "sources": [
      {
        "username": "pickswithmike"
      }
    ]
  }'
Antwort200
{
  "id": "lvWBPnytpS",
  "object": "persona",
  "name": "Tipsters",
  "description": "Sports and trading tipsters who sell picks or signals to a paying community.",
  "market": "b2c",
  "status": "active",
  "website": "https://example.com",
  "stats": {
    "leads_found": 18420,
    "leads_scored": 17960,
    "hot_leads": 2134,
    "avg_score": 41,
    "today": {
      "leads_found": 312,
      "hot_leads": 38,
      "dms_sent": 25,
      "replies": 4
    }
  },
  "sharing": {
    "home_account": {
      "id": "a9PzK2vRtM",
      "username": "acme"
    },
    "shared_with": [
      {
        "id": "Hq4TnW8cLm",
        "username": "acme_sales"
      }
    ]
  },
  "created_at": "2026-09-14T09:21:05.300Z",
  "updated_at": "2026-11-06T07:45:12.904Z"
}

Persona aktivieren

POST/v1/personas/:persona_id/activateScope writeMCPupdate_persona

Startet eine pausierte Persona wieder. Ihre Quellen werden gelesen und ihre Leads bewertet.

Pfadparameter

  • persona_idstringErforderlich
    Die ID der Persona.

Rückgabe

Das Persona-Objekt.

Fehler

POST/v1/personas/:persona_id/activate
curl -X POST \
  https://gemlead.ai/api/v1/personas/lvWBPnytpS/activate \
  -H "Authorization: Bearer $GEMLEAD_API_KEY"
Antwort200
{
  "id": "lvWBPnytpS",
  "object": "persona",
  "name": "Tipsters",
  "description": "Sports and trading tipsters who sell picks or signals to a paying community.",
  "market": "b2c",
  "status": "active",
  "website": "https://example.com",
  "stats": {
    "leads_found": 18420,
    "leads_scored": 17960,
    "hot_leads": 2134,
    "avg_score": 41,
    "today": {
      "leads_found": 312,
      "hot_leads": 38,
      "dms_sent": 25,
      "replies": 4
    }
  },
  "sharing": {
    "home_account": {
      "id": "a9PzK2vRtM",
      "username": "acme"
    },
    "shared_with": [
      {
        "id": "Hq4TnW8cLm",
        "username": "acme_sales"
      }
    ]
  },
  "created_at": "2026-09-14T09:21:05.300Z",
  "updated_at": "2026-11-06T07:45:12.904Z"
}

Persona pausieren

POST/v1/personas/:persona_id/pauseScope writeMCPupdate_persona

Pausiert eine Persona. Gemlead liest ihre Quellen nicht mehr und bewertet keine Leads mehr, ihre Leads bleiben erhalten.

Pfadparameter

  • persona_idstringErforderlich
    Die ID der Persona.

Rückgabe

Das Persona-Objekt, mit dem Wert paused in status.

Fehler

POST/v1/personas/:persona_id/pause
curl -X POST \
  https://gemlead.ai/api/v1/personas/lvWBPnytpS/pause \
  -H "Authorization: Bearer $GEMLEAD_API_KEY"
Antwort200
{
  "id": "lvWBPnytpS",
  "object": "persona",
  "name": "Tipsters",
  "description": "Sports and trading tipsters who sell picks or signals to a paying community.",
  "market": "b2c",
  "status": "paused",
  "website": "https://example.com",
  "stats": {
    "leads_found": 18420,
    "leads_scored": 17960,
    "hot_leads": 2134,
    "avg_score": 41,
    "today": {
      "leads_found": 312,
      "hot_leads": 38,
      "dms_sent": 25,
      "replies": 4
    }
  },
  "sharing": {
    "home_account": {
      "id": "a9PzK2vRtM",
      "username": "acme"
    },
    "shared_with": [
      {
        "id": "Hq4TnW8cLm",
        "username": "acme_sales"
      }
    ]
  },
  "created_at": "2026-09-14T09:21:05.300Z",
  "updated_at": "2026-11-06T07:45:12.904Z"
}

Persona löschen

DELETE/v1/personas/:persona_idScope writeMCPdelete_persona

Löscht eine Persona mit ihren Quellen und den Leads, die keine Kampagne bearbeitet hat. Ihre Kampagnen werden archiviert. Das lässt sich nicht rückgängig machen.

Pfadparameter

  • persona_idstringErforderlich
    Die ID der Persona.

Rückgabe

Ein Objekt mit der id der Persona, dem Wert true in deleted und der Anzahl von archived_campaigns und deleted_sources. Ihre Leads werden im Hintergrund gelöscht, deshalb ist deleted_leads null, und sie können noch ein paar Minuten in Leads auflisten auftauchen.

Fehler

DELETE/v1/personas/:persona_id
curl -X DELETE https://gemlead.ai/api/v1/personas/lvWBPnytpS \
  -H "Authorization: Bearer $GEMLEAD_API_KEY"
Antwort200
{
  "id": "lvWBPnytpS",
  "object": "persona",
  "deleted": true,
  "archived_campaigns": 1,
  "deleted_sources": 6,
  "deleted_leads": null
}

Personas neu ordnen

POST/v1/personas/reorderScope writeMCPreorder_personas

Legt die Reihenfolge deiner Personas fest, so wie die App sie auflistet. Sende jede Persona genau einmal.

Body-Parameter

  • persona_idsArray von stringsErforderlich
    Alle Persona-IDs des Kontos, in der neuen Reihenfolge.

Rückgabe

Eine Liste von Persona-Objekten in der neuen Reihenfolge.

Fehler

POST/v1/personas/reorder
curl -X POST https://gemlead.ai/api/v1/personas/reorder \
  -H "Authorization: Bearer $GEMLEAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "persona_ids": ["lvWBPnytpS", "pQ8nX2rTjk"]
  }'
Antwort200
{
  "object": "list",
  "data": [
    {
      "id": "lvWBPnytpS",
      "object": "persona",
      "name": "Tipsters",
      "description": "Sports and trading tipsters who sell picks or signals to a paying community.",
      "market": "b2c",
      "status": "active",
      "website": "https://example.com",
      "stats": {
        "leads_found": 18420,
        "leads_scored": 17960,
        "hot_leads": 2134,
        "avg_score": 41,
        "today": {
          "leads_found": 312,
          "hot_leads": 38,
          "dms_sent": 25,
          "replies": 4
        }
      },
      "sharing": {
        "home_account": {
          "id": "a9PzK2vRtM",
          "username": "acme"
        },
        "shared_with": [
          {
            "id": "Hq4TnW8cLm",
            "username": "acme_sales"
          }
        ]
      },
      "created_at": "2026-09-14T09:21:05.300Z",
      "updated_at": "2026-11-06T07:45:12.904Z"
    }
  ],
  "has_more": false,
  "next_cursor": null
}

Das Einstellungsobjekt

Alles, was bestimmt, welche Leads eine Persona findet und wie die KI sie bewertet, so wie die Seite der Persona in der App es bearbeitet.

Attribute

  • objectstring
    Immer persona_settings.
  • persona_idstring
    Die ID der Persona.
  • namestring
    Der Name der Persona, ein bis drei Wörter wie Ghostwriters.
  • websitestring oder null
    Die Website deines Produkts. Die KI, die Leads bewertet, liest sie.
  • descriptionstring oder null
    Wer dieser Käufer ist, in einfachen Worten. Die KI bewertet jeden Lead daran auf einer Skala von 0 bis 100, deshalb zählt dieses Feld am meisten. Es kann auch deine eigenen Scoring-Regeln enthalten.
  • marketstring
    b2b, wenn Unternehmen kaufen, b2c, wenn Menschen für sich selbst kaufen.
    b2bb2c
  • keywordsArray von strings
    Wörter in einem Profil oder seinen Beiträgen, die zeigen, dass jemand passt.
  • competitorsArray von strings
    Produkte wie deins. Wer eines nutzt, passt.
  • avoidArray von strings
    Wen die KI niedrig bewerten soll, etwa agencies oder students.
  • min_followersinteger
    Profile mit weniger Followern werden nicht bewertet.
  • include_closed_inboxesboolean
    Ob auch Personen mit geschlossenen DMs bewertet werden. Eine Kampagne erreicht sie per Kommentar.
  • auto_expandboolean
    Ob Gemlead selbst Quellen aus den besten Leads hinzufügt, wenn die anderen versiegen.
  • auto_expand_directionstring oder null
    Wohin die automatische Erweiterung als Nächstes führt, in einfachen Worten, etwa more US founders.
  • daily_scoring_limitinteger
    Wie viele Leads für diese Persona höchstens pro Tag bewertet werden, bis zu 2 Credits pro Lead: 1 für den ersten Durchgang, 1 weiterer für den Deep Score, wenn der Lead ihn besteht.
  • statusstring
    Ob Gemlead Leads für sie findet und bewertet.
    activepaused
  • search_queriesArray von strings
  • competitor_accountsArray von strings
    Ihre Konkurrenzkonten, X-Nutzernamen ohne @.
  • updated_atstring
    Wann sich die Persona zuletzt geändert hat, ISO 8601.
Das Einstellungsobjekt
{
  "object": "persona_settings",
  "persona_id": "lvWBPnytpS",
  "name": "Tipsters",
  "website": "https://example.com",
  "description": "Sports and trading tipsters who sell picks or signals to a paying community.",
  "market": "b2c",
  "status": "active",
  "keywords": ["tipster", "betting tips", "trading signals"],
  "competitors": ["Patreon", "Whop"],
  "avoid": ["betting brands", "news accounts"],
  "min_followers": 500,
  "include_closed_inboxes": true,
  "auto_expand": false,
  "auto_expand_direction": null,
  "daily_scoring_limit": 3300,
  "search_queries": ["paid discord picks", "vip tips telegram"],
  "competitor_accounts": ["whop"],
  "updated_at": "2026-11-06T07:45:12.904Z"
}

Persona-Einstellungen abrufen

GET/v1/personas/:persona_id/settingsScope readMCPget_persona_settings

Gibt alle Einstellungen einer Persona zurück, mit ihren Keyword-Suchen und Konkurrenzkonten.

Pfadparameter

  • persona_idstringErforderlich
    Die ID der Persona.

Rückgabe

Ein Einstellungsobjekt.

Fehler

GET/v1/personas/:persona_id/settings
curl https://gemlead.ai/api/v1/personas/lvWBPnytpS/settings \
  -H "Authorization: Bearer $GEMLEAD_API_KEY"
Antwort200
{
  "object": "persona_settings",
  "persona_id": "lvWBPnytpS",
  "name": "Tipsters",
  "website": "https://example.com",
  "description": "Sports and trading tipsters who sell picks or signals to a paying community.",
  "market": "b2c",
  "status": "active",
  "keywords": ["tipster", "betting tips", "trading signals"],
  "competitors": ["Patreon", "Whop"],
  "avoid": ["betting brands", "news accounts"],
  "min_followers": 500,
  "include_closed_inboxes": true,
  "auto_expand": false,
  "auto_expand_direction": null,
  "daily_scoring_limit": 3300,
  "search_queries": ["paid discord picks", "vip tips telegram"],
  "competitor_accounts": ["whop"],
  "updated_at": "2026-11-06T07:45:12.904Z"
}

Persona-Einstellungen ändern

PATCH/v1/personas/:persona_id/settingsScope writeMCPupdate_persona

Ändert die Einstellungen, die du sendest, und behält die anderen. Eine gesendete Liste ersetzt die ganze Liste, sende also keywords mit dem neuen Wort dazu, damit die anderen bleiben.

Pfadparameter

  • persona_idstringErforderlich
    Die ID der Persona.

Body-Parameter

  • namestring
    Der Name der Persona, ein bis drei Wörter wie Ghostwriters, bis zu 100 Zeichen.
  • websitestring
    Die Website deines Produkts, bis zu 500 Zeichen. Die KI, die Leads bewertet, liest sie.
  • descriptionstring
    Wer dieser Käufer ist, in einfachen Worten. Die KI bewertet jeden Lead daran auf einer Skala von 0 bis 100, deshalb zählt dieses Feld am meisten. Es kann auch deine eigenen Scoring-Regeln enthalten. Bis zu 12 000 Zeichen.
  • marketstring
    b2b, wenn Unternehmen kaufen, b2c, wenn Menschen für sich selbst kaufen. Standardmäßig b2b.
    b2bb2c
  • keywordsArray von strings
    Wörter in einem Profil oder seinen Beiträgen, die zeigen, dass jemand passt. Bis zu 100, jedes mit bis zu 100 Zeichen.
  • competitorsArray von strings
    Produkte wie deins, wer eines nutzt, passt. Bis zu 100.
  • avoidArray von strings
    Wen die KI niedrig bewerten soll, etwa agencies oder students. Bis zu 100.
  • min_followersinteger
    Profile mit weniger Followern werden nicht bewertet, 0 bis 10 000 000. Standardmäßig 100.
  • include_closed_inboxesboolean
    Auch Personen mit geschlossenen DMs bewerten, eine Kampagne erreicht sie per Kommentar. Standardmäßig true.
  • auto_expandboolean
    Gemlead selbst Quellen aus den besten Leads hinzufügen lassen, wenn die anderen versiegen. Standardmäßig false.
  • auto_expand_directionstring
    Wohin die automatische Erweiterung als Nächstes führt, in einfachen Worten wie more US founders. Bis zu 500 Zeichen.
  • daily_scoring_limitinteger
    Wie viele Leads für diese Persona höchstens pro Tag bewertet werden, bis zu 2 Credits pro Lead: 1 für den ersten Durchgang, 1 weiterer für den Deep Score, wenn der Lead ihn besteht. 100 bis 20 000 für jedes X-Konto, das die Persona teilt.

Rückgabe

Das aktualisierte Einstellungsobjekt.

Fehler

  • Keine Persona mit dieser ID im Konto des Schlüssels.
  • Ein Parameter hat einen Wert, den die API nicht akzeptiert. param nennt ihn.
  • Der Body enthält ein Feld, das dieser Endpoint nicht akzeptiert.
PATCH/v1/personas/:persona_id/settings
curl -X PATCH \
  https://gemlead.ai/api/v1/personas/lvWBPnytpS/settings \
  -H "Authorization: Bearer $GEMLEAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "min_followers": 500,
    "avoid": ["betting brands", "news accounts"]
  }'
Antwort200
{
  "object": "persona_settings",
  "persona_id": "lvWBPnytpS",
  "name": "Tipsters",
  "website": "https://example.com",
  "description": "Sports and trading tipsters who sell picks or signals to a paying community.",
  "market": "b2c",
  "status": "active",
  "keywords": ["tipster", "betting tips", "trading signals"],
  "competitors": ["Patreon", "Whop"],
  "avoid": ["betting brands", "news accounts"],
  "min_followers": 500,
  "include_closed_inboxes": true,
  "auto_expand": false,
  "auto_expand_direction": null,
  "daily_scoring_limit": 3300,
  "search_queries": ["paid discord picks", "vip tips telegram"],
  "competitor_accounts": ["whop"],
  "updated_at": "2026-11-06T07:45:12.904Z"
}

Das Freigabeobjekt

Die X-Konten eines Inhabers, die mit derselben Persona arbeiten. Sie teilen ihre Quellen, Einstellungen, Leads und Ausschlussliste, und jedes führt damit eigene Kampagnen. Ein Lead geht nur an ein X-Konto, angegeben in seinem locked_to.

Attribute

  • objectstring
    Immer persona_sharing.
  • persona_idstring
    Die ID der Persona.
  • home_accountobject oder null
    Das X-Konto, in dem die Persona erstellt wurde. Ihre Quellen und Leads liegen dort.
  • shared_withArray von objects
    Die anderen X-Konten, die die Persona teilen. Leer, wenn sie nicht geteilt ist.
  • available_accountsArray von objects
    Die anderen X-Konten des Inhabers, mit denen die Persona geteilt werden kann. Für ein Teammitglied immer leer, da es die Freigabe nicht ändern kann.
  • daily_scoring_limitinteger
    Wie viele Leads für die Persona höchstens pro Tag bewertet werden, für die ganze Gruppe. Bis zu 20 000 für jedes X-Konto, das die Persona teilt.
Das Freigabeobjekt
{
  "object": "persona_sharing",
  "persona_id": "lvWBPnytpS",
  "home_account": {
    "id": "a9PzK2vRtM",
    "username": "acme"
  },
  "shared_with": [
    {
      "id": "Hq4TnW8cLm",
      "username": "acme_sales"
    }
  ],
  "available_accounts": [
    {
      "id": "Rb7YsK3dQp",
      "username": "acme_founder"
    }
  ],
  "daily_scoring_limit": 3300
}

Persona-Freigabe abrufen

GET/v1/personas/:persona_id/sharingScope readMCPget_persona_sharing

Gibt zurück, welche X-Konten des Inhabers eine Persona teilen, und mit welchen anderen sie geteilt werden kann.

Pfadparameter

  • persona_idstringErforderlich
    Die ID der Persona.

Rückgabe

Ein Freigabeobjekt.

Fehler

GET/v1/personas/:persona_id/sharing
curl https://gemlead.ai/api/v1/personas/lvWBPnytpS/sharing \
  -H "Authorization: Bearer $GEMLEAD_API_KEY"
Antwort200
{
  "object": "persona_sharing",
  "persona_id": "lvWBPnytpS",
  "home_account": {
    "id": "a9PzK2vRtM",
    "username": "acme"
  },
  "shared_with": [
    {
      "id": "Hq4TnW8cLm",
      "username": "acme_sales"
    }
  ],
  "available_accounts": [
    {
      "id": "Rb7YsK3dQp",
      "username": "acme_founder"
    }
  ],
  "daily_scoring_limit": 3300
}

Persona-Freigabe ändern

PUT/v1/personas/:persona_id/sharingScope writeMCPupdate_persona_sharing

Legt fest, welche anderen X-Konten des Inhabers eine Persona teilen, von jedem X-Konto der Gruppe aus, wie Geteilt mit in der App. Sende die ganze Liste oder eine leere, um die Freigabe zu beenden. Das daily_scoring_limit folgt der Größe der Gruppe, im gleichen Tempo für jedes X-Konto. Das geht nur mit Schlüsseln des Inhabers.

Pfadparameter

  • persona_idstringErforderlich
    Die ID der Persona.

Body-Parameter

  • account_idsArray von stringsErforderlich
    Alle anderen X-Konten des Inhabers, die die Persona teilen, bis zu 20. Ihr Ursprungskonto behält sie immer.

Rückgabe

Das aktualisierte Freigabeobjekt.

Fehler

  • Ein Pflichtparameter fehlt. param nennt ihn.
  • Ein Parameter hat einen Wert, den die API nicht akzeptiert. param nennt ihn.
  • Der Body enthält ein Feld, das dieser Endpoint nicht akzeptiert.
  • Der Schlüssel gehört einem Teammitglied. Nur der Inhaber teilt eine Persona.
  • Keine Persona mit dieser ID, oder ein X-Konto, das nicht dem Inhaber gehört. param nennt es.
  • Ein X-Konto, das du herausnimmst, hat noch Kampagnen mit dieser Persona. Lösche sie zuerst.
PUT/v1/personas/:persona_id/sharing
curl -X PUT \
  https://gemlead.ai/api/v1/personas/lvWBPnytpS/sharing \
  -H "Authorization: Bearer $GEMLEAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "account_ids": ["Hq4TnW8cLm", "Rb7YsK3dQp"]
  }'
Antwort200
{
  "object": "persona_sharing",
  "persona_id": "lvWBPnytpS",
  "home_account": {
    "id": "a9PzK2vRtM",
    "username": "acme"
  },
  "shared_with": [
    {
      "id": "Hq4TnW8cLm",
      "username": "acme_sales"
    },
    {
      "id": "Rb7YsK3dQp",
      "username": "acme_founder"
    }
  ],
  "available_accounts": [],
  "daily_scoring_limit": 5000
}

Das Vorschlagsobjekt

Eine Persona, die die KI aus einem Namen und deinem Produkt für dich geschrieben hat. Du kannst sie so erstellen oder vorher bearbeiten.

Attribute

  • objectstring
    Immer persona_suggestion.
  • statusstring
    pending, solange die KI schreibt, dann ready oder error. none vor der ersten Anfrage.
    pendingreadyerrornone
  • persona_namestring oder null
    Der angefragte Name.
  • suggestionobject oder null
    Sobald ready, die Felder description, keywords, competitors und avoid der Persona, wie bei Persona erstellen.
  • generated_atstring oder null
    Wann sie geschrieben wurde, ISO 8601.
  • errorstring oder null
    Was schiefgelaufen ist, wenn status gleich error ist.
Das Vorschlagsobjekt
{
  "object": "persona_suggestion",
  "status": "ready",
  "persona_name": "Tipsters",
  "suggestion": {
    "description": "Sports and trading tipsters who sell picks or signals to a paying community on Discord or Telegram.",
    "keywords": ["tipster", "vip picks", "trading signals"],
    "competitors": ["Patreon", "Whop"],
    "avoid": ["betting brands", "sports media"]
  },
  "generated_at": "2026-11-06T07:45:12.904Z",
  "error": null
}

Persona vorschlagen lassen

POST/v1/persona_suggestionsScope writeMCPsuggest_persona

Lässt die KI eine Persona aus einem Namen und deinem Angebot schreiben oder eine Beschreibung umschreiben. Das dauert ein paar Sekunden, deshalb lautet die Antwort pending. Lies das Ergebnis mit Persona-Vorschlag abrufen.

Body-Parameter

  • persona_namestringErforderlich
    Die Persona, die geschrieben werden soll, ein bis drei Wörter wie Ghostwriters.
  • websitestring
    Die Website deines Produkts. Standardmäßig die aus deinem X-Profil.
  • briefstring
    Was du an wen verkaufst, in deinen Worten, bis zu 1 000 Zeichen.
  • current_descriptionstring
    Eine Beschreibung zum Umschreiben, zusammen mit instruction.
  • instructionstring
    Wie current_description geändert werden soll, etwa shorter oder only US agencies. Bis zu 2 000 Zeichen.

Rückgabe

Ein Vorschlagsobjekt, mit dem Wert pending in status.

Fehler

  • Ein Pflichtparameter fehlt. param nennt ihn.
  • Ein Parameter hat einen Wert, den die API nicht akzeptiert. param nennt ihn.
  • Der Body enthält ein Feld, das dieser Endpoint nicht akzeptiert.
  • X oder ein Gemlead-Dienst hat nicht geantwortet. Nichts wurde geändert, versuche es in einer Minute erneut.
POST/v1/persona_suggestions
curl -X POST https://gemlead.ai/api/v1/persona_suggestions \
  -H "Authorization: Bearer $GEMLEAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "persona_name": "Tipsters",
    "brief": "A checkout for paid Discord and Telegram groups."
  }'
Antwort202
{
  "object": "persona_suggestion",
  "status": "pending",
  "persona_name": "Tipsters",
  "suggestion": null,
  "generated_at": null,
  "error": null
}

Persona-Vorschlag abrufen

GET/v1/persona_suggestions/latestScope readMCPget_persona_suggestion

Gibt den letzten Persona-Vorschlag des Kontos zurück. Rufe ihn alle paar Sekunden erneut ab, solange er pending ist.

Rückgabe

Ein Vorschlagsobjekt.

GET/v1/persona_suggestions/latest
curl https://gemlead.ai/api/v1/persona_suggestions/latest \
  -H "Authorization: Bearer $GEMLEAD_API_KEY"
Antwort200
{
  "object": "persona_suggestion",
  "status": "ready",
  "persona_name": "Tipsters",
  "suggestion": {
    "description": "Sports and trading tipsters who sell picks or signals to a paying community on Discord or Telegram.",
    "keywords": ["tipster", "vip picks", "trading signals"],
    "competitors": ["Patreon", "Whop"],
    "avoid": ["betting brands", "sports media"]
  },
  "generated_at": "2026-11-06T07:45:12.904Z",
  "error": null
}