Desenvolvedores

API REST

Cinco tipos de registro, as mesmas cinco operações em cada um, JSON na entrada e na saída.

https://api.trypromptlab.com/api/v1
URL base
Authorization: Bearer pl_live_…
Cabeçalho de autenticação
  • 10 / segundo
  • 300 / minuto
  • 10.000 / hora
Limites de requisições por chave · 429

Chaves de API

SettingsDevelopersAPI keysProprietários e administradores do workspace
  • Exibida uma única vez, ao ser criada.
  • Age como o administrador que a criou, com as mesmas permissões.
  • Deixa de funcionar se essa pessoa sair do workspace.
  • Revogue-a quando quiser.

Endpoints

GET/{resource}Listar
GET/{resource}/{id}Obter um
POST/{resource}Criar
PATCH/{resource}/{id}Atualizar
DELETE/{resource}/{id}Excluir
{resource} é um destescontactscompaniesdealsnotestasks

Exemplo

Requisição
curl -X POST https://api.trypromptlab.com/api/v1/companies \
  -H "Authorization: Bearer pl_live_…" \
  -H "Content-Type: application/json" \
  -d '{"name":"Acme","website":"https://acme.com"}'
Resposta · 201
{
  "data": {
    "id": "665f1c2a9b1e8a0012ab34cd",
    "object": "company",
    "name": "Acme",
    "website": "https://acme.com",
    "createdAt": "2026-10-22T08:15:51.000Z",
    "updatedAt": "2026-10-22T08:15:51.000Z"
  }
}
PATCH · Requisição
curl -X PATCH https://api.trypromptlab.com/api/v1/deals/<id> \
  -H "Authorization: Bearer pl_live_…" \
  -H "Content-Type: application/json" \
  -d '{"stage":"QUALIFIED"}'

Respostas

Lista
{
  "data": [ … ],
  "pagination": {
    "page": 1,
    "limit": 10,
    "total": 42,
    "totalPages": 5
  }
}
Exclusão
{
  "data": {
    "id": "665f1c2a…",
    "deleted": true
  }
}
Erro
{
  "statusCode": 401,
  "message": "…",
  "error": "invalid_api_key"
}

Erros

StatusSignificado
400Corpo ou parâmetros inválidos. Um campo desconhecido retorna `property X should not exist`.
401Chave ausente, errada ou revogada
403O administrador da chave não tem acesso a este registro ou ação
404Nenhum registro com este id
429Acima do limite: espere e tente de novo
500Erro no servidor: tente de novo mais tarde. A chave continua válida.

Recursos

limit: máximo 100, padrão 10. sortOrder: asc ou desc.

/contacts

"object": "contact"
CampoTipoObservações
firstNamestringObrigatório
lastNamestring
middleNamestring
jobTitlestring
departmentstring
decisionRoleenumDECISION_MAKERINFLUENCERTECHNICAL_EVALUATORBUYERPROCUREMENTEND_USERGATEKEEPER
emailstring
emailsstring[]
phoneobjectvaluelabel: work | mobile | home | other
phoneNumbersobject[]valuelabel: work | mobile | home | other
linkedInstring
addressobjectstreetAddresscitystatezipCodecountry
regionstring
accountIdid→ companies
leadIdid→ deals
isPrimaryboolean
customFieldsobject
Filtros da listapagelimitsearchaccountIdleadIdsortBysortOrder

/companies

"object": "company"
CampoTipoObservações
namestringObrigatório
websitestring
linkedInstring
phonestring
addressobjectstreetAddresscitystatezipCodecountry
regionstring
primaryIndustrystring
businessTypeenumMANUFACTURERDISTRIBUTORTRADEREND_USER
descriptionstring
sourcestring
estimatedAnnualRevenuenumber
employeeCountnumber
ownerIdid
customFieldsobject
Filtros da listapagelimitsearchprimaryIndustrybusinessTypesortBysortOrder

/deals

"object": "deal"

Mova um negócio com PATCH e uma nova stage.

CampoTipoObservações
namestring
accountIdid→ companiesObrigatório
contactIdsid[]→ contacts
assignedSalesOwnerid
stagestring
priorityenumLOWMEDIUMHIGH
sourceenumEXPOLINKEDINDIRECT_MEETINGWEBSITE_INQUIRYDISTRIBUTOR_REFERRALCOLD_CALLEXISTING_CUSTOMER_REFERRALCONFERENCEEMAIL_CAMPAIGNEMAILTRADE_PUBLICATIONSALESFORCEHUBSPOTACUMATICAOTHER
lossReasonenumPRICECOMPETITORTIMINGNO_BUDGETPRODUCT_FITOTHER
closeDatedate
estimatedOpportunityValueUSDnumber
expectedAnnualVolumeMTnumber
nextFollowUpDatedate
customFieldsobject
Filtros da listapagelimitsearchstageaccountIdcontactIdassignedSalesOwnersortBysortOrder

/notes

"object": "note"
CampoTipoObservações
contentstringObrigatório
titlestring
accountIdid→ companies
contactIdid→ contacts
leadIdid→ deals
customFieldsobject
Filtros da listapagelimitaccountIdcontactIdleadId

/tasks

"object": "task"

Conclua uma tarefa com PATCH e "status": "completed".

CampoTipoObservações
namestringObrigatório
descriptionstring
assigneeIdsid[]
priorityenumlowmediumhighurgent
taskTypestring
dueDatedate
accountIdid→ companies
contactsid[]→ contacts
opportunityIdid→ deals
customFieldsobject
statusenumSó no PATCHtodoin_progresscompletedexpired
Filtros da listapagelimitsearchstatusaccountIdcontactIdopportunityIdsortBysortOrder