API-referentie
Leads
Leads zijn de mensen die Gemlead op X vindt voor je persona's. Dana AI geeft elke lead een score van 0 tot 100, en vanaf 60 is een lead heet. Vraag ze op met filters, koppel je eigen metadata zoals een CRM-ID, of voer acties uit op een lead zoals je in de app zou doen.
Het lead-object
Iemand die Gemlead op X vond voor een van je persona's, met de score van Dana AI en waar die persoon staat in je outreach.
Attributen
- idstringUnieke ID van de lead.
- objectstringAltijd
lead. - profileobjectHet X-profiel van de lead.
- scoreinteger of nullHoe goed de lead bij je persona past, van 0 tot 100. Null zolang de lead niet gescoord is.
- score_reasonstring of nullWaarom de lead deze score kreeg, in een of twee zinnen.
- hotbooleanTrue als de score 60 of hoger is.
- statusstringWaar de lead in je pipeline staat.
pendingscoringscoredin_campaigncontactedin_conversationclosed - personaobject of nullDe persona waarvoor de lead is gevonden.
- campaignobject of nullDe campagne waarin de lead zit, als die er is.
- conversation_idstring of nullHet gesprek met de lead, zodra dat er is. Gebruik het met Een gesprek ophalen.
- locked_toobject of nullHet ene X-account van de eigenaar waarvoor deze persoon is gereserveerd. Een lead gaat naar maar één X-account, dus de andere accounts benaderen hem nooit. Null zolang de lead nog aan geen enkel account is toegewezen.
- found_atstringWanneer Gemlead de lead vond, in ISO 8601.
- scored_atstring of nullWanneer de lead is gescoord, in ISO 8601.
- updated_atstringWanneer de lead voor het laatst is gewijzigd, in ISO 8601.
- metadataobjectJe eigen key-value-paren, ingesteld met Een lead bijwerken.
{
"id": "msgOtJ8dvT",
"object": "lead",
"profile": {
"x_user_id": "1460283925",
"username": "jane_builds",
"name": "Jane Doe",
"bio": "Runs a paid trading community. Daily setups, no hype.",
"followers_count": 12400,
"following_count": 380,
"location": "Austin, TX",
"website": "https://janedoe.com",
"profile_image_url": "https://pbs.twimg.com/profile_images/1460283925/jane_400x400.jpg",
"verified": true,
"url": "https://x.com/jane_builds"
},
"score": 86,
"score_reason": "Runs a paid trading community and asks how to collect payments for it.",
"hot": true,
"status": "scored",
"persona": {
"id": "lvWBPnytpS",
"name": "Tipsters"
},
"campaign": null,
"conversation_id": null,
"locked_to": null,
"found_at": "2026-11-05T14:02:11.482Z",
"scored_at": "2026-11-05T14:03:40.117Z",
"updated_at": "2026-11-05T14:03:40.117Z",
"metadata": {}
}Leads opvragen
Geeft je leads terug, standaard de laatst gescoorde eerst. Combineer filters om precies de leads te krijgen die je wilt.
Queryparameters
- personastringAlleen leads van de persona met deze ID.
- statusstringAlleen leads met deze statussen, gescheiden door komma's, zoals
scored,in_campaign.pendingscoringscoredin_campaigncontactedin_conversationclosed - score_minintegerAlleen leads met minstens deze score, van 0 tot 100.
- score_maxintegerAlleen leads met hoogstens deze score, van 0 tot 100.
- hotboolean
truevoor leads met een score van 60 of meer,falsevoor de rest. - scored_afterstringAlleen leads die na dit tijdstip zijn gescoord, in ISO 8601.
- scored_beforestringAlleen leads die voor dit tijdstip zijn gescoord, in ISO 8601.
- found_afterstringAlleen leads die na dit tijdstip zijn gevonden, in ISO 8601.
- found_beforestringAlleen leads die voor dit tijdstip zijn gevonden, in ISO 8601.
- orderstringDe sorteervolgorde. Standaard
-scored_at, de laatst gescoorde eerst.-scored_at-score-found_at - limitintegerHoeveel objecten je terugkrijgt, van 1 tot 100. Standaard 25.
- cursorstringDe
next_cursorvan de vorige pagina, om de pagina daarna op te halen. Zie Paginering.
Resultaat
Een lijst van lead-objecten.
Fouten
- Een parameter heeft een waarde die de API niet accepteert.
paramgeeft aan welke.
curl -G https://gemlead.ai/api/v1/leads \
-H "Authorization: Bearer $GEMLEAD_API_KEY" \
-d hot=true \
-d limit=10{
"object": "list",
"data": [
{
"id": "msgOtJ8dvT",
"object": "lead",
"profile": {
"x_user_id": "1460283925",
"username": "jane_builds",
"name": "Jane Doe",
"bio": "Runs a paid trading community. Daily setups, no hype.",
"followers_count": 12400,
"following_count": 380,
"location": "Austin, TX",
"website": "https://janedoe.com",
"profile_image_url": "https://pbs.twimg.com/profile_images/1460283925/jane_400x400.jpg",
"verified": true,
"url": "https://x.com/jane_builds"
},
"score": 86,
"score_reason": "Runs a paid trading community and asks how to collect payments for it.",
"hot": true,
"status": "scored",
"persona": {
"id": "lvWBPnytpS",
"name": "Tipsters"
},
"campaign": null,
"conversation_id": null,
"locked_to": null,
"found_at": "2026-11-05T14:02:11.482Z",
"scored_at": "2026-11-05T14:03:40.117Z",
"updated_at": "2026-11-05T14:03:40.117Z",
"metadata": {}
}
],
"has_more": true,
"next_cursor": "eyJzIjoiMjAyNi0xMS0wNVQxNDowMzo0MC4xMTdaIn0"
}Een lead ophalen
Geeft één lead terug.
Padparameters
- idstringVerplichtDe ID van de lead.
Resultaat
Een lead-object.
Fouten
- Geen lead met deze ID op het account van de sleutel.
curl https://gemlead.ai/api/v1/leads/msgOtJ8dvT \
-H "Authorization: Bearer $GEMLEAD_API_KEY"{
"id": "msgOtJ8dvT",
"object": "lead",
"profile": {
"x_user_id": "1460283925",
"username": "jane_builds",
"name": "Jane Doe",
"bio": "Runs a paid trading community. Daily setups, no hype.",
"followers_count": 12400,
"following_count": 380,
"location": "Austin, TX",
"website": "https://janedoe.com",
"profile_image_url": "https://pbs.twimg.com/profile_images/1460283925/jane_400x400.jpg",
"verified": true,
"url": "https://x.com/jane_builds"
},
"score": 86,
"score_reason": "Runs a paid trading community and asks how to collect payments for it.",
"hot": true,
"status": "scored",
"persona": {
"id": "lvWBPnytpS",
"name": "Tipsters"
},
"campaign": null,
"conversation_id": null,
"locked_to": null,
"found_at": "2026-11-05T14:02:11.482Z",
"scored_at": "2026-11-05T14:03:40.117Z",
"updated_at": "2026-11-05T14:03:40.117Z",
"metadata": {}
}Een lead bijwerken
Zet je eigen metadata op een lead, of sluit hem af als je er klaar mee bent. Afsluiten stopt de campagnestappen die nog voor de lead klaarstaan, zodat Gemlead hem geen berichten meer stuurt.
Padparameters
- idstringVerplichtDe ID van de lead.
Bodyparameters
- metadataobjectKey-value-paren die worden samengevoegd met de metadata van de lead. Keys van maximaal 40 letters, cijfers,
_of-, waarden zijn strings van maximaal 500 tekens, maximaal 20 keys. Zet een key opnullof een lege string om hem te verwijderen, ofmetadataopnullom alles te wissen. - statusstringZet op
closedom de lead af te sluiten.closed
Resultaat
Het bijgewerkte lead-object.
Fouten
- Geen lead met deze ID op het account van de sleutel.
- Een parameter heeft een waarde die de API niet accepteert.
paramgeeft aan welke. - De body bevat een veld dat dit endpoint niet accepteert.
curl -X PATCH https://gemlead.ai/api/v1/leads/msgOtJ8dvT \
-H "Authorization: Bearer $GEMLEAD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"metadata": {
"crm_id": "hs_48213"
}
}'{
"id": "msgOtJ8dvT",
"object": "lead",
"profile": {
"x_user_id": "1460283925",
"username": "jane_builds",
"name": "Jane Doe",
"bio": "Runs a paid trading community. Daily setups, no hype.",
"followers_count": 12400,
"following_count": 380,
"location": "Austin, TX",
"website": "https://janedoe.com",
"profile_image_url": "https://pbs.twimg.com/profile_images/1460283925/jane_400x400.jpg",
"verified": true,
"url": "https://x.com/jane_builds"
},
"score": 86,
"score_reason": "Runs a paid trading community and asks how to collect payments for it.",
"hot": true,
"status": "scored",
"persona": {
"id": "lvWBPnytpS",
"name": "Tipsters"
},
"campaign": null,
"conversation_id": null,
"locked_to": null,
"found_at": "2026-11-05T14:02:11.482Z",
"scored_at": "2026-11-05T14:03:40.117Z",
"updated_at": "2026-11-05T14:03:40.117Z",
"metadata": {
"crm_id": "hs_48213"
}
}Een lead opnieuw scoren
Laat Dana AI de lead opnieuw beoordelen op basis van zijn persona, bijvoorbeeld nadat je de beschrijving van de persona hebt aangepast. Kost maximaal 2 credits per lead: 1 voor de eerste ronde, 1 extra voor de diepe score als de lead erdoor komt.
Padparameters
- lead_idstringVerplichtDe ID van de lead.
Resultaat
Het lead-object.
Fouten
- Geen lead met deze ID op het account van de sleutel.
- X of een dienst van Gemlead antwoordde niet. Er is niets veranderd, probeer het over een minuut opnieuw.
curl -X POST \
https://gemlead.ai/api/v1/leads/msgOtJ8dvT/rescore \
-H "Authorization: Bearer $GEMLEAD_API_KEY"{
"id": "msgOtJ8dvT",
"object": "lead",
"profile": {
"x_user_id": "1460283925",
"username": "jane_builds",
"name": "Jane Doe",
"bio": "Runs a paid trading community. Daily setups, no hype.",
"followers_count": 12400,
"following_count": 380,
"location": "Austin, TX",
"website": "https://janedoe.com",
"profile_image_url": "https://pbs.twimg.com/profile_images/1460283925/jane_400x400.jpg",
"verified": true,
"url": "https://x.com/jane_builds"
},
"score": 86,
"score_reason": "Runs a paid trading community and asks how to collect payments for it.",
"hot": true,
"status": "scored",
"persona": {
"id": "lvWBPnytpS",
"name": "Tipsters"
},
"campaign": null,
"conversation_id": null,
"locked_to": null,
"found_at": "2026-11-05T14:02:11.482Z",
"scored_at": "2026-11-05T14:03:40.117Z",
"updated_at": "2026-11-05T14:03:40.117Z",
"metadata": {}
}Een lead vernieuwen
Leest het X-profiel van de lead opnieuw uit, voor een nieuwe bio, foto of een nieuw aantal volgers.
Padparameters
- lead_idstringVerplichtDe ID van de lead.
Resultaat
Het bijgewerkte lead-object.
Fouten
- Geen lead met deze ID op het account van de sleutel.
- De sessie van het X-account is verlopen. Koppel het opnieuw in de app en probeer het dan nog eens.
- X of een dienst van Gemlead antwoordde niet. Er is niets veranderd, probeer het over een minuut opnieuw.
curl -X POST \
https://gemlead.ai/api/v1/leads/msgOtJ8dvT/refresh \
-H "Authorization: Bearer $GEMLEAD_API_KEY"{
"id": "msgOtJ8dvT",
"object": "lead",
"profile": {
"x_user_id": "1460283925",
"username": "jane_builds",
"name": "Jane Doe",
"bio": "Runs a paid trading community. Daily setups, no hype.",
"followers_count": 12400,
"following_count": 380,
"location": "Austin, TX",
"website": "https://janedoe.com",
"profile_image_url": "https://pbs.twimg.com/profile_images/1460283925/jane_400x400.jpg",
"verified": true,
"url": "https://x.com/jane_builds"
},
"score": 86,
"score_reason": "Runs a paid trading community and asks how to collect payments for it.",
"hot": true,
"status": "scored",
"persona": {
"id": "lvWBPnytpS",
"name": "Tipsters"
},
"campaign": null,
"conversation_id": null,
"locked_to": null,
"found_at": "2026-11-05T14:02:11.482Z",
"scored_at": "2026-11-05T14:03:40.117Z",
"updated_at": "2026-11-05T14:03:40.117Z",
"metadata": {}
}Een lead volgen
Volgt de lead meteen op X vanaf je X-account.
Padparameters
- lead_idstringVerplichtDe ID van de lead.
Resultaat
Het lead-object.
Fouten
- Geen lead met deze ID op het account van de sleutel.
- De lead heeft geen X-account-ID om te volgen.
- De sessie van het X-account is verlopen. Koppel het opnieuw in de app en probeer het dan nog eens.
- X of een dienst van Gemlead antwoordde niet. Er is niets veranderd, probeer het over een minuut opnieuw.
curl -X POST \
https://gemlead.ai/api/v1/leads/msgOtJ8dvT/follow \
-H "Authorization: Bearer $GEMLEAD_API_KEY"{
"id": "msgOtJ8dvT",
"object": "lead",
"profile": {
"x_user_id": "1460283925",
"username": "jane_builds",
"name": "Jane Doe",
"bio": "Runs a paid trading community. Daily setups, no hype.",
"followers_count": 12400,
"following_count": 380,
"location": "Austin, TX",
"website": "https://janedoe.com",
"profile_image_url": "https://pbs.twimg.com/profile_images/1460283925/jane_400x400.jpg",
"verified": true,
"url": "https://x.com/jane_builds"
},
"score": 86,
"score_reason": "Runs a paid trading community and asks how to collect payments for it.",
"hot": true,
"status": "scored",
"persona": {
"id": "lvWBPnytpS",
"name": "Tipsters"
},
"campaign": null,
"conversation_id": null,
"locked_to": null,
"found_at": "2026-11-05T14:02:11.482Z",
"scored_at": "2026-11-05T14:03:40.117Z",
"updated_at": "2026-11-05T14:03:40.117Z",
"metadata": {}
}Een lead ontvolgen
Ontvolgt de lead meteen op X vanaf je X-account.
Padparameters
- lead_idstringVerplichtDe ID van de lead.
Resultaat
Het lead-object.
Fouten
- Geen lead met deze ID op het account van de sleutel.
- De lead heeft geen X-account-ID om te ontvolgen.
- De sessie van het X-account is verlopen. Koppel het opnieuw in de app en probeer het dan nog eens.
- X of een dienst van Gemlead antwoordde niet. Er is niets veranderd, probeer het over een minuut opnieuw.
curl -X POST \
https://gemlead.ai/api/v1/leads/msgOtJ8dvT/unfollow \
-H "Authorization: Bearer $GEMLEAD_API_KEY"{
"id": "msgOtJ8dvT",
"object": "lead",
"profile": {
"x_user_id": "1460283925",
"username": "jane_builds",
"name": "Jane Doe",
"bio": "Runs a paid trading community. Daily setups, no hype.",
"followers_count": 12400,
"following_count": 380,
"location": "Austin, TX",
"website": "https://janedoe.com",
"profile_image_url": "https://pbs.twimg.com/profile_images/1460283925/jane_400x400.jpg",
"verified": true,
"url": "https://x.com/jane_builds"
},
"score": 86,
"score_reason": "Runs a paid trading community and asks how to collect payments for it.",
"hot": true,
"status": "scored",
"persona": {
"id": "lvWBPnytpS",
"name": "Tipsters"
},
"campaign": null,
"conversation_id": null,
"locked_to": null,
"found_at": "2026-11-05T14:02:11.482Z",
"scored_at": "2026-11-05T14:03:40.117Z",
"updated_at": "2026-11-05T14:03:40.117Z",
"metadata": {}
}Een lead omzetten in een bron
Maakt van een sterke lead een bron van zijn persona, om meer mensen zoals hem te vinden. Gemlead leest wie hij volgt, zijn volgers of wie op zijn posts reageert.
Padparameters
- lead_idstringVerplichtDe ID van de lead.
Bodyparameters
- methodstring
followingleest wie de lead volgt,competitor_followerszijn volgers,competitor_commentswie op zijn posts reageert. Standaardfollowing.followingcompetitor_followerscompetitor_comments
Resultaat
Een object met de lead_id, de persona_id, de method en de nieuwe bron, of bij competitor_comments de gebruikersnaam in competitor_account.
Fouten
- Geen lead met deze ID op het account van de sleutel.
- De lead hoort bij geen enkele persona.
- De persona heeft dit account al als bron met deze methode.
- De persona heeft al 100 concurrentaccounts.
- Een parameter heeft een waarde die de API niet accepteert.
paramgeeft aan welke. - X of een dienst van Gemlead antwoordde niet. Er is niets veranderd, probeer het over een minuut opnieuw.
curl -X POST \
https://gemlead.ai/api/v1/leads/msgOtJ8dvT/convert_to_source \
-H "Authorization: Bearer $GEMLEAD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"method": "following"
}'{
"object": "lead_conversion",
"lead_id": "msgOtJ8dvT",
"persona_id": "lvWBPnytpS",
"method": "following",
"source": {
"id": "s9KdT3pXwM",
"object": "source",
"persona_id": "lvWBPnytpS",
"method": "following",
"profile": {
"username": "pickswithmike",
"name": "Mike Picks",
"profile_image_url": "https://pbs.twimg.com/profile_images/1722093311/mike_400x400.jpg",
"followers_count": 8400,
"following_count": 1210,
"url": "https://x.com/pickswithmike"
},
"status": "pending",
"paused": false,
"error": null,
"read_following": true,
"read_followers": false,
"score_self": true,
"self_lead_id": "Lp4WqZ7sXe",
"origin_lead_id": "msgOtJ8dvT",
"stats": {
"leads": 1184,
"scored_leads": 1160,
"hot_leads": 212,
"avg_score": 44
},
"last_activity_at": "2026-11-05T14:03:40.117Z",
"last_scraped_at": "2026-11-05T14:02:11.482Z",
"created_at": "2026-09-14T09:21:05.300Z"
},
"competitor_account": null
}Een lead verwijderen
Verwijdert een lead. Hij verdwijnt uit je lijsten, elke campagne stopt voor hem en Gemlead haalt dezelfde persoon niet opnieuw binnen voor deze persona. Wil je iemand buiten elke persona houden, zet die persoon dan op de uitsluitingslijst.
Padparameters
- lead_idstringVerplichtDe ID van de lead.
Resultaat
Een object met de id van de lead en deleted op true.
Fouten
- Geen lead met deze ID op het account van de sleutel.
curl -X DELETE https://gemlead.ai/api/v1/leads/msgOtJ8dvT \
-H "Authorization: Bearer $GEMLEAD_API_KEY"{
"id": "msgOtJ8dvT",
"object": "lead",
"deleted": true
}Het herkomstobject
Hoe Gemlead een lead vond, de post waardoor hij opdook en elke campagne waarin hij zit.
Attributen
- objectstringAltijd
lead_origin. - lead_idstringDe ID van de lead.
- personaobject of nullDe persona waarvoor hij is gevonden.
- methodstring of nullHoe hij is gevonden.
followingkeywordscompetitor_followerscompetitor_comments - found_querystring of nullDe zoekopdracht die hem vond, bij
keywords. - source_usernamestring of nullDe bron of het concurrentaccount waarmee hij is gevonden.
- found_postobject of nullDe post waardoor de lead opdook, als die er is.
- campaignsarray van objectsDe campagnes waarin de lead zit, elk met
id,name, destatusvan de lead erin, demethodvan de campagne en destepwaar de lead staat.
{
"object": "lead_origin",
"lead_id": "msgOtJ8dvT",
"persona": {
"id": "lvWBPnytpS",
"name": "Tipsters"
},
"method": "keywords",
"found_query": "paid discord picks",
"source_username": null,
"found_post": {
"method": "keywords",
"query": "paid discord picks",
"post_id": "1985102233445566778",
"text": "Thinking of moving my paid discord picks to a real checkout. Any tips?",
"url": "https://x.com/i/status/1985102233445566778",
"posted_at": "2026-11-05T13:40:02.000Z",
"found_at": "2026-11-05T14:02:11.482Z"
},
"campaigns": [
{
"id": "c7RkQ2wLxe",
"name": "Tipsters warm intro",
"status": "waiting",
"method": "keywords",
"step": "Timer"
}
]
}De herkomst van een lead ophalen
Geeft terug hoe Gemlead de lead vond, de post waardoor hij opdook en elke campagne waarin hij zit, met de stap waar hij staat.
Padparameters
- lead_idstringVerplichtDe ID van de lead.
Resultaat
Een herkomstobject.
Fouten
- Geen lead met deze ID op het account van de sleutel.
curl https://gemlead.ai/api/v1/leads/msgOtJ8dvT/origin \
-H "Authorization: Bearer $GEMLEAD_API_KEY"{
"object": "lead_origin",
"lead_id": "msgOtJ8dvT",
"persona": {
"id": "lvWBPnytpS",
"name": "Tipsters"
},
"method": "keywords",
"found_query": "paid discord picks",
"source_username": null,
"found_post": {
"method": "keywords",
"query": "paid discord picks",
"post_id": "1985102233445566778",
"text": "Thinking of moving my paid discord picks to a real checkout. Any tips?",
"url": "https://x.com/i/status/1985102233445566778",
"posted_at": "2026-11-05T13:40:02.000Z",
"found_at": "2026-11-05T14:02:11.482Z"
},
"campaigns": [
{
"id": "c7RkQ2wLxe",
"name": "Tipsters warm intro",
"status": "waiting",
"method": "keywords",
"step": "Timer"
}
]
}