curl --request POST \
--url https://api.id.zapsign.com.br/v1/api-keys \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Integração backend"
}
'{
"object": "api_key",
"id": "key_0VH6KAMHAE8HTD08DB9XVZEN3P",
"token": "sk_XhhtZoudJBibSS7-r2GwZicaCzhrbY9ZZxrIC4ESrjc"
}{
"error": {
"type": "invalid_request",
"code": "missing_required_param",
"message": "A required parameter is missing.",
"param": "cpf",
"doc_url": "https://docs.id.zapsign.com.br/missing_required_param",
"request_id": "req_3PK3TA2H0MEMTDSAPREHSY4QC4"
}
}{
"error": {
"type": "authentication_error",
"code": "invalid_api_key",
"message": "The API key provided is invalid.",
"doc_url": "https://docs.id.zapsign.com.br/invalid_api_key",
"request_id": "req_3PK3TA2H0MEMTDSAPREHSY4QC4"
}
}{
"error": {
"type": "invalid_request",
"code": "missing_required_param",
"message": "<string>",
"doc_url": "https://docs.id.zapsign.com.br/missing_required_param",
"request_id": "req_3PK3TA2H0MEMTDSAPREHSY4QC4",
"param": "cpf"
}
}{
"error": {
"type": "rate_limit_error",
"code": "rate_limit_exceeded",
"message": "Too many requests. Please retry after the indicated delay.",
"doc_url": "https://docs.id.zapsign.com.br/rate_limit_exceeded",
"request_id": "req_3PK3TA2H0MEMTDSAPREHSY4QC4"
}
}{
"error": {
"type": "api_error",
"code": "api_error",
"message": "An internal error occurred.",
"doc_url": "https://docs.id.zapsign.com.br/api_error",
"request_id": "req_3PK3TA2H0MEMTDSAPREHSY4QC4"
}
}Criar chave de API
O token completo aparece uma única vez, nesta resposta. Guarde antes de fechar. Este endpoint não aceita Idempotency-Key: cada chamada cria uma chave nova.
curl --request POST \
--url https://api.id.zapsign.com.br/v1/api-keys \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Integração backend"
}
'{
"object": "api_key",
"id": "key_0VH6KAMHAE8HTD08DB9XVZEN3P",
"token": "sk_XhhtZoudJBibSS7-r2GwZicaCzhrbY9ZZxrIC4ESrjc"
}{
"error": {
"type": "invalid_request",
"code": "missing_required_param",
"message": "A required parameter is missing.",
"param": "cpf",
"doc_url": "https://docs.id.zapsign.com.br/missing_required_param",
"request_id": "req_3PK3TA2H0MEMTDSAPREHSY4QC4"
}
}{
"error": {
"type": "authentication_error",
"code": "invalid_api_key",
"message": "The API key provided is invalid.",
"doc_url": "https://docs.id.zapsign.com.br/invalid_api_key",
"request_id": "req_3PK3TA2H0MEMTDSAPREHSY4QC4"
}
}{
"error": {
"type": "invalid_request",
"code": "missing_required_param",
"message": "<string>",
"doc_url": "https://docs.id.zapsign.com.br/missing_required_param",
"request_id": "req_3PK3TA2H0MEMTDSAPREHSY4QC4",
"param": "cpf"
}
}{
"error": {
"type": "rate_limit_error",
"code": "rate_limit_exceeded",
"message": "Too many requests. Please retry after the indicated delay.",
"doc_url": "https://docs.id.zapsign.com.br/rate_limit_exceeded",
"request_id": "req_3PK3TA2H0MEMTDSAPREHSY4QC4"
}
}{
"error": {
"type": "api_error",
"code": "api_error",
"message": "An internal error occurred.",
"doc_url": "https://docs.id.zapsign.com.br/api_error",
"request_id": "req_3PK3TA2H0MEMTDSAPREHSY4QC4"
}
}Authorizations
Duas credenciais são aceitas no cabeçalho Authorization: Bearer ...: sua chave de API (prefixo sk_, criada no painel ou pelos endpoints de Chaves de API) ou um access token OAuth 2.1 do ZapSign ID (Authorization Code + PKCE S256, emissor https://id.zapsign.com.br, audiência https://api.id.zapsign.com.br/v1). Tokens OAuth carregam os escopos validations:read (consultas) e validations:write (criação e verificação) e não têm acesso aos endpoints de Chaves de API — esses exigem chave sk_ com full_access. Token OAuth rejeitado responde 401 com code invalid_token; escopo insuficiente responde 403 com code insufficient_scope e o cabeçalho WWW-Authenticate indicando o escopo exigido. Descoberta: https://id.zapsign.com.br/.well-known/oauth-authorization-server (servidor de autorização, RFC 8414) e https://api.id.zapsign.com.br/.well-known/oauth-protected-resource/v1 (recurso protegido, RFC 9728). Disponibilidade: o OAuth entra em produção na próxima publicação da plataforma; antes de integrar, confirme que os URLs de descoberta respondem JSON (e não 404) e, enquanto isso, autentique com a chave sk_.
Body
Dados para criar uma chave de API.
Nome para identificar a chave depois.
1 - 50"Integração backend"
Escopo da chave. Se você omitir, vale validations_access.
| Valor | O que permite |
|---|---|
validations_access | Criar e consultar validações |
full_access | O mesmo, mais gerenciar chaves de API |
validations_access, full_access Response
Chave criada; o token é retornado uma única vez.
Resposta da criação: o id da chave e o token completo, que aparece uma única vez.
Sempre api_key.
api_key Identificador único da chave criada.
"key_0VH6KAMHAE8HTD08DB9XVZEN3P"
O token secreto. Guarde agora: esta é a única resposta que o traz.
"sk_XhhtZoudJBibSS7-r2GwZicaCzhrbY9ZZxrIC4ESrjc"
Was this page helpful?