Referência da API
Personas
Uma persona é um tipo de comprador que você quer alcançar, como tipsters ou donos de agência. O Gemlead encontra leads para cada persona ativa e os pontua com base na descrição dela. As fontes dela definem onde o Gemlead procura.
Um dono com várias contas do X pode compartilhar uma persona entre elas. Elas trabalham com as mesmas fontes, configurações e leads, cada uma com as próprias campanhas, e um lead vai para uma só conta do X. O compartilhamento da persona define quais contas do X a compartilham.
- GET/v1/
personas - GET/v1/
personas/ :id - POST/v1/
personas - POST/v1/
personas/ :persona_id/ activate - POST/v1/
personas/ :persona_id/ pause - DELETE/v1/
personas/ :persona_id - POST/v1/
personas/ reorder - GET/v1/
personas/ :persona_id/ settings - PATCH/v1/
personas/ :persona_id/ settings - GET/v1/
personas/ :persona_id/ sharing - PUT/v1/
personas/ :persona_id/ sharing - POST/v1/
persona_suggestions - GET/v1/
persona_suggestions/ latest
O objeto persona
Um tipo de comprador que você quer alcançar. O Gemlead procura leads que combinam com cada persona ativa e os pontua com base nela.
Atributos
- idstringIdentificador único da persona.
- objectstringSempre
persona. - namestringO nome curto da persona, como
Tipsters. - descriptionstringQuem é esse comprador, nas suas palavras. O scoring se baseia nesse texto.
- marketstringIndica se você vende para empresas ou para consumidores.
b2bb2c - statusstringIndica se o Gemlead está procurando leads para esta persona.
activepaused - websitestring ou nullO site do que você vende para esta persona.
- statsobjectAs contagens desde a criação da persona e as de hoje, no fuso horário do seu perfil.
- sharingobjectAs contas do X do dono que compartilham a persona. Veja o compartilhamento da persona.
- created_atstringQuando a persona foi criada, em ISO 8601.
- updated_atstringQuando a persona mudou pela última vez, em ISO 8601.
{
"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"
}Listar personas
Retorna suas personas na ordem da sua página Personas.
Parâmetros de consulta
- limitintegerQuantos objetos retornar, de 1 a 100. O padrão é 25.
- cursorstringO
next_cursorda página anterior, para obter a página seguinte. Veja Paginação.
Retorno
Uma lista de objetos persona.
curl https://gemlead.ai/api/v1/personas \
-H "Authorization: Bearer $GEMLEAD_API_KEY"{
"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
}Obter uma persona
Retorna uma persona com as estatísticas dela.
Parâmetros de caminho
- idstringObrigatórioO ID da persona.
Retorno
Um objeto persona.
Erros
- Nenhuma persona com este ID na conta da chave.
curl https://gemlead.ai/api/v1/personas/lvWBPnytpS \
-H "Authorization: Bearer $GEMLEAD_API_KEY"{
"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"
}Criar uma persona
Cria uma persona e começa a encontrar os leads dela na hora. O scoring usa até 2 créditos por lead: 1 pela primeira triagem, mais 1 pelo score aprofundado quando o lead passa, até daily_scoring_limit leads por dia. Adicione fontes agora ou depois com Adicionar uma fonte.
Parâmetros do corpo
- namestringObrigatórioO nome da persona, de uma a três palavras como
Ghostwriters, com até 100 caracteres. - websitestringO site do seu produto, com até 500 caracteres. A IA que pontua os leads lê esse site.
- descriptionstringObrigatórioQuem é esse comprador, em palavras simples. A IA pontua cada lead de 0 a 100 com base nesse texto, então ele é o que mais importa. Ele pode incluir suas próprias regras de scoring. Até 12 000 caracteres.
- marketstring
b2bquando quem compra são empresas,b2cquando são pessoas comprando para si mesmas. O padrão éb2b.b2bb2c - keywordsarray de stringsPalavras num perfil ou nos posts dele que indicam um bom fit. Até 100, cada uma com até 100 caracteres.
- competitorsarray de stringsProdutos parecidos com o seu, quem usa um deles é um bom fit. Até 100.
- avoidarray de stringsQuem deve receber um score baixo, como
agenciesoustudents. Até 100. - min_followersintegerPerfis com menos seguidores não são pontuados, de 0 a 10 000 000. O padrão é 100.
- include_closed_inboxesbooleanPontua também as pessoas com DMs fechadas, uma campanha chega até elas com um comentário. O padrão é
true. - auto_expandbooleanDeixa o Gemlead adicionar fontes sozinho a partir dos melhores leads quando as outras se esgotam. O padrão é
false. - auto_expand_directionstringPara onde a expansão automática vai depois, em palavras simples como
more US founders. Até 500 caracteres. - daily_scoring_limitintegerO máximo de leads pontuados por dia para esta persona, com até 2 créditos por lead: 1 pela primeira triagem, mais 1 pelo score aprofundado quando o lead passa. De 100 a 20 000. Por padrão, o ritmo do seu plano, 3 300 por dia no Starter e 10 000 no Business.
- sourcesarray de objectsAté 20 fontes iniciais. Contas de investidores, aceleradoras e mídia são recusadas, pois não trazem compradores.
Retorno
O novo objeto persona.
Erros
- Falta um parâmetro obrigatório.
paramdiz qual. - Um parâmetro tem um valor que a API não aceita.
paramdiz qual. - O corpo tem um campo que este endpoint não aceita.
- A conta já tem 100 personas.
- Uma fonte inicial foi recusada, como um investidor ou uma conta de mídia.
paramésources.
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"
}
]
}'{
"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"
}Ativar uma persona
Reativa uma persona pausada. As fontes dela voltam a ser lidas e os leads dela, pontuados.
Parâmetros de caminho
- persona_idstringObrigatórioO ID da persona.
Retorno
Erros
- Nenhuma persona com este ID na conta da chave.
curl -X POST \
https://gemlead.ai/api/v1/personas/lvWBPnytpS/activate \
-H "Authorization: Bearer $GEMLEAD_API_KEY"{
"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"
}Pausar uma persona
Pausa uma persona. O Gemlead para de ler as fontes dela e de pontuar os leads dela, e os leads continuam lá.
Parâmetros de caminho
- persona_idstringObrigatórioO ID da persona.
Retorno
O objeto persona, com o status em paused.
Erros
- Nenhuma persona com este ID na conta da chave.
curl -X POST \
https://gemlead.ai/api/v1/personas/lvWBPnytpS/pause \
-H "Authorization: Bearer $GEMLEAD_API_KEY"{
"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"
}Excluir uma persona
Exclui uma persona com as fontes dela e os leads que nenhuma campanha trabalhou. As campanhas dela são arquivadas. Essa ação não pode ser desfeita.
Parâmetros de caminho
- persona_idstringObrigatórioO ID da persona.
Retorno
Um objeto com o id da persona, deleted igual a true e as contagens de archived_campaigns e deleted_sources. Os leads dela são excluídos em segundo plano, então deleted_leads é null e eles ainda podem aparecer em Listar leads por alguns minutos.
Erros
- Nenhuma persona com este ID na conta da chave.
curl -X DELETE https://gemlead.ai/api/v1/personas/lvWBPnytpS \
-H "Authorization: Bearer $GEMLEAD_API_KEY"{
"id": "lvWBPnytpS",
"object": "persona",
"deleted": true,
"archived_campaigns": 1,
"deleted_sources": 6,
"deleted_leads": null
}Reordenar personas
Define a ordem das suas personas, como o app as lista. Envie cada persona uma vez.
Parâmetros do corpo
- persona_idsarray de stringsObrigatórioTodos os IDs de persona da conta, na nova ordem.
Retorno
Uma lista de objetos persona na nova ordem.
Erros
- Falta um parâmetro obrigatório.
paramdiz qual. - Um parâmetro tem um valor que a API não aceita.
paramdiz qual. - Um ID não é de nenhuma persona da conta.
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"]
}'{
"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
}O objeto persona settings
Tudo o que define quais leads uma persona encontra e como a IA pontua esses leads, como na página da persona no app.
Atributos
- objectstringSempre
persona_settings. - persona_idstringO ID da persona.
- namestringO nome da persona, de uma a três palavras como
Ghostwriters. - websitestring ou nullO site do seu produto. A IA que pontua os leads lê esse site.
- descriptionstring ou nullQuem é esse comprador, em palavras simples. A IA pontua cada lead de 0 a 100 com base nesse texto, então ele é o que mais importa. Ele pode incluir suas próprias regras de scoring.
- marketstring
b2bquando quem compra são empresas,b2cquando são pessoas comprando para si mesmas.b2bb2c - keywordsarray de stringsPalavras num perfil ou nos posts dele que indicam um bom fit.
- competitorsarray de stringsProdutos parecidos com o seu. Quem usa um deles é um bom fit.
- avoidarray de stringsQuem deve receber um score baixo, como
agenciesoustudents. - min_followersintegerPerfis com menos seguidores não são pontuados.
- include_closed_inboxesbooleanIndica se as pessoas com DMs fechadas também são pontuadas. Uma campanha chega até elas com um comentário.
- auto_expandbooleanIndica se o Gemlead adiciona fontes sozinho a partir dos melhores leads quando as outras se esgotam.
- auto_expand_directionstring ou nullPara onde a expansão automática vai depois, em palavras simples, como
more US founders. - daily_scoring_limitintegerO máximo de leads pontuados por dia para esta persona, com até 2 créditos por lead: 1 pela primeira triagem, mais 1 pelo score aprofundado quando o lead passa.
- statusstringIndica se o Gemlead está encontrando e pontuando leads para ela.
activepaused - search_queriesarray de stringsAs buscas por palavra-chave dela.
- competitor_accountsarray de stringsAs contas concorrentes dela, usernames do X sem o @.
- updated_atstringQuando a persona mudou pela última vez, em ISO 8601.
{
"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"
}Obter as configurações de uma persona
Retorna todas as configurações de uma persona, com as buscas por palavra-chave e as contas concorrentes dela.
Parâmetros de caminho
- persona_idstringObrigatórioO ID da persona.
Retorno
Erros
- Nenhuma persona com este ID na conta da chave.
curl https://gemlead.ai/api/v1/personas/lvWBPnytpS/settings \
-H "Authorization: Bearer $GEMLEAD_API_KEY"{
"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"
}Atualizar as configurações de uma persona
Altera as configurações que você envia e mantém as outras. Uma lista enviada substitui a lista inteira, então envie keywords com a palavra nova junto das outras para manter todas.
Parâmetros de caminho
- persona_idstringObrigatórioO ID da persona.
Parâmetros do corpo
- namestringO nome da persona, de uma a três palavras como
Ghostwriters, com até 100 caracteres. - websitestringO site do seu produto, com até 500 caracteres. A IA que pontua os leads lê esse site.
- descriptionstringQuem é esse comprador, em palavras simples. A IA pontua cada lead de 0 a 100 com base nesse texto, então ele é o que mais importa. Ele pode incluir suas próprias regras de scoring. Até 12 000 caracteres.
- marketstring
b2bquando quem compra são empresas,b2cquando são pessoas comprando para si mesmas. O padrão éb2b.b2bb2c - keywordsarray de stringsPalavras num perfil ou nos posts dele que indicam um bom fit. Até 100, cada uma com até 100 caracteres.
- competitorsarray de stringsProdutos parecidos com o seu, quem usa um deles é um bom fit. Até 100.
- avoidarray de stringsQuem deve receber um score baixo, como
agenciesoustudents. Até 100. - min_followersintegerPerfis com menos seguidores não são pontuados, de 0 a 10 000 000. O padrão é 100.
- include_closed_inboxesbooleanPontua também as pessoas com DMs fechadas, uma campanha chega até elas com um comentário. O padrão é
true. - auto_expandbooleanDeixa o Gemlead adicionar fontes sozinho a partir dos melhores leads quando as outras se esgotam. O padrão é
false. - auto_expand_directionstringPara onde a expansão automática vai depois, em palavras simples como
more US founders. Até 500 caracteres. - daily_scoring_limitintegerO máximo de leads pontuados por dia para esta persona, com até 2 créditos por lead: 1 pela primeira triagem, mais 1 pelo score aprofundado quando o lead passa. De 100 a 20 000 para cada conta do X que compartilha a persona.
Retorno
O objeto persona settings atualizado.
Erros
- Nenhuma persona com este ID na conta da chave.
- Um parâmetro tem um valor que a API não aceita.
paramdiz qual. - O corpo tem um campo que este endpoint não aceita.
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"]
}'{
"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"
}O objeto persona sharing
As contas do X de um mesmo dono que trabalham com a mesma persona. Elas compartilham as fontes, as configurações, os leads e a lista de exclusão dela, e cada uma roda as próprias campanhas nela. Um lead vai para uma só conta do X, indicada no locked_to dele.
Atributos
- objectstringSempre
persona_sharing. - persona_idstringO ID da persona.
- home_accountobject ou nullA conta do X em que a persona foi criada. As fontes e os leads da persona ficam lá.
- shared_witharray de objectsAs outras contas do X que compartilham a persona. Vazio quando ela não é compartilhada.
- available_accountsarray de objectsAs outras contas do X do dono com as quais a persona pode ser compartilhada. Sempre vazio para um membro da equipe, que não pode mudar o compartilhamento.
- daily_scoring_limitintegerO máximo de leads pontuados por dia para a persona, para o grupo todo. Pode chegar a 20 000 para cada conta do X que compartilha a persona.
{
"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
}Obter o compartilhamento de uma persona
Retorna quais contas do X do dono compartilham uma persona, e as outras com as quais ela pode ser compartilhada.
Parâmetros de caminho
- persona_idstringObrigatórioO ID da persona.
Retorno
Erros
- Nenhuma persona com este ID na conta da chave.
curl https://gemlead.ai/api/v1/personas/lvWBPnytpS/sharing \
-H "Authorization: Bearer $GEMLEAD_API_KEY"{
"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
}Atualizar o compartilhamento de uma persona
Define quais outras contas do X do dono compartilham uma persona, a partir de qualquer conta do X do grupo, como Compartilhada com faz no app. Envie a lista inteira, ou uma vazia para parar de compartilhar. O daily_scoring_limit acompanha o tamanho do grupo, no mesmo ritmo para cada conta do X. Só as chaves do dono podem fazer isso.
Parâmetros de caminho
- persona_idstringObrigatórioO ID da persona.
Parâmetros do corpo
- account_idsarray de stringsObrigatórioTodas as outras contas do X do dono que compartilham a persona, até 20. A conta de origem sempre fica com ela.
Retorno
O objeto persona sharing atualizado.
Erros
- Falta um parâmetro obrigatório.
paramdiz qual. - Um parâmetro tem um valor que a API não aceita.
paramdiz qual. - O corpo tem um campo que este endpoint não aceita.
- 403forbiddenA chave é de um membro da equipe. Só o dono compartilha uma persona.
- Nenhuma persona com este ID, ou uma conta do X que não é do dono.
paramdiz qual. - Uma conta do X que você tira ainda tem campanhas na persona. Exclua as campanhas primeiro.
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"]
}'{
"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
}O objeto persona suggestion
Uma persona que a IA escreveu para você a partir de um nome e do seu produto, pronta para ser criada como está ou editada antes.
Atributos
- objectstringSempre
persona_suggestion. - statusstring
pendingenquanto a IA escreve, depoisreadyouerror.noneantes do primeiro pedido.pendingreadyerrornone - persona_namestring ou nullO nome pedido.
- suggestionobject ou nullQuando
ready, os camposdescription,keywords,competitorseavoidda persona, os mesmos de Criar uma persona. - generated_atstring ou nullQuando ela foi escrita, em ISO 8601.
- errorstring ou nullO que deu errado, quando
statuséerror.
{
"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
}Sugerir uma persona
Pede à IA que escreva uma persona a partir de um nome e do que você vende, ou que reescreva uma descrição. Leva alguns segundos, então a resposta é pending. Leia o resultado com Obter a sugestão de persona.
Parâmetros do corpo
- persona_namestringObrigatórioA persona a escrever, de uma a três palavras como
Ghostwriters. - websitestringO site do seu produto. O padrão é o do seu perfil do X.
- briefstringO que você vende e para quem, com as suas palavras, até 1 000 caracteres.
- current_descriptionstringUma descrição a reescrever, com
instruction. - instructionstringComo alterar
current_description, comoshorterouonly US agencies. Até 2 000 caracteres.
Retorno
Um objeto persona suggestion, com o status em pending.
Erros
- Falta um parâmetro obrigatório.
paramdiz qual. - Um parâmetro tem um valor que a API não aceita.
paramdiz qual. - O corpo tem um campo que este endpoint não aceita.
- O X ou um serviço do Gemlead não respondeu. Nada mudou, tente de novo em um minuto.
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."
}'{
"object": "persona_suggestion",
"status": "pending",
"persona_name": "Tipsters",
"suggestion": null,
"generated_at": null,
"error": null
}Obter a sugestão de persona
Retorna a última sugestão de persona da conta. Consulte de novo a cada poucos segundos enquanto ela estiver pending.
Retorno
curl https://gemlead.ai/api/v1/persona_suggestions/latest \
-H "Authorization: Bearer $GEMLEAD_API_KEY"{
"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
}