Parceiros de negócio
Verifica CPF/CNPJ de um parceiro; cadastro, consulta e alteração ainda são esboços.
Um parceiro de negócio é a empresa ou pessoa que pede cadastro numa loja B2B para comprar. Na plataforma 1.0 o cadastro tinha formulário em seções, validação do documento e aprovação.
Resumo do que cada chamada faz:
| Chamada | O que acontece |
|---|---|
GET /business_partners | Devolve listas vazias (companies, bp_types, bp_users) e search.total_items: 0. |
GET /business_partners/{id} | Devolve bp_user_data: null, listas vazias e message Business partner service not yet implemented. Partner ID: 7. |
POST com scope: "verify_document" | Funciona. Valida CPF ou CNPJ. |
POST com scope: "get_ai_data" ou "upload_file_data" | 201 com message de "not yet implemented". Nada é processado. |
POST sem scope | Valida os campos obrigatórios e responde 201 com id: 0 e a mensagem "Business partner creation not yet implemented". Nada é criado. |
PUT /business_partners/{id} (padrão scope: "update") | Exige form_values; depois responde 200 com "Business partner update not yet implemented". Nada é alterado. |
PUT com scope: "validate" | Responde validated: true sem validar nada. |
/api/v1.0/business_partnersAdminListar parceiros de negócio (esboço)
Parâmetros de consulta
pageintegerpadrão: 1items_per_pageintegerpadrão: 10/api/business_partnersAdminMesma operação, caminho alternativo
Mesmo comportamento, parâmetros e resposta de GET /api/v1.0/business_partners. Use este caminho se o seu cliente já foi escrito para ele.
/api/v1.0/business_partners/{id}AdminConsultar parceiro de negócio (esboço)
Parâmetros de caminho
idintegerobrigatório/api/business_partners/{id}AdminMesma operação, caminho alternativo
Mesmo comportamento, parâmetros e resposta de GET /api/v1.0/business_partners/{id}. Use este caminho se o seu cliente já foi escrito para ele.
/api/v1.0/business_partnersAdminVerificar documento ou cadastrar parceiro
Corpo da requisição
scopestringverify_documentget_ai_dataupload_file_datadocument_typestringcpf ou cnpj, sem diferenciar maiúsculas. Obrigatório em verify_document e no cadastro.document_numberstringverify_document e no cadastro.type_idintegercompany_idsarrayidintegerupload_file_data (esboço)./api/business_partnersAdminMesma operação, caminho alternativo
Mesmo comportamento, parâmetros e resposta de POST /api/v1.0/business_partners. Use este caminho se o seu cliente já foi escrito para ele.
/api/v1.0/business_partners/{id}AdminAlterar ou validar parceiro (esboço)
Parâmetros de caminho
idintegerobrigatórioCorpo da requisição
scopestringpadrão: updateupdatevalidateupdate (padrão) ou validate.form_valuesobjectscope é update./api/business_partners/{id}AdminMesma operação, caminho alternativo
Mesmo comportamento, parâmetros e resposta de PUT /api/v1.0/business_partners/{id}. Use este caminho se o seu cliente já foi escrito para ele.
Exemplo de requisição
curl -X POST "$BASE_URL/api/v1.0/business_partners" \
-u "$EMAIL:$API_KEY" \
-H "Content-Type: application/json" \
-d '{
"scope": "verify_document",
"document_type": "cnpj",
"document_number": "11.222.333/0001-81"
}'Resposta
{ "is_valid": true, "message": "" }Campos da resposta
is_validbooleantrue quando os dígitos verificadores do documento conferem. Não consulta a Receita Federal: só confirma que o número é bem formado.messagestring{
"id": 0,
"message": "Business partner creation not yet implemented"
}Erros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 401 | Sem credencial. | {"status":401,"message":"Authentication required. Use HTTP Basic with email:api_key or Bearer <jwt>."} |
| 401 | E-mail ou chave de API inválidos. | {"status":401,"message":"Invalid credentials"} |
| 403 | A credencial é válida, mas o usuário não é administrador. | {"status":403,"message":"Forbidden: admin scope required"} |
| 400 | Corpo que não é JSON. | {"status":400,"message":"Invalid JSON body"} |
| 400 | verify_document sem document_type ou document_number. | {"status":400,"message":"document_number and document_type are required"} |
| 400 | document_type diferente de cpf/cnpj. | {"status":400,"message":"document_type must be 'cpf' or 'cnpj'"} |
| 400 | Cadastro sem document_number, document_type, type_id ou company_ids (a mensagem cita o primeiro que falta). | {"status":400,"message":"type_id is required"} |
| 400 | PUT com scope update e sem form_values. | {"status":400,"message":"form_values is required for update scope"} |