Admin API
Esta API reúne ações administrativas. Ela nunca deve ser chamada pelo client-side.
- Autenticação
- Obter link de avaliação
- Criar pedido
- Criar pedido (V2)
- Atualizar pedido
- Obter avaliações
- Obter perguntas
- Obter respostas pesquisa NPS
- Moderação de avaliações
- Listar grupos de produtos
- Obter grupo de produtos
- Criar grupo de produtos
- Atualizar grupo de produtos
- Deletar grupo de produtos
Autenticação
Você deve chamar a API da Auth0, nosso provedor de autenticação, para que possa utilizar os demais endpoints de nossa API administrativa
POST https://reviews-api.konfidency.com.br/oauth/token
Campos do corpo da requisição (JSON)
| Parâmetro | Descrição |
|---|---|
| audience | Fixo: https://reviews-api.konfidency.com.br |
| grant_type | Fixo: client_credentials |
| client_id | ID de cliente enviado pelo time de integração |
| client_secret | Token secreto enviado pelo time de integração |
Exemplo de corpo da requisição
{
"audience": "https://reviews-api.konfidency.com.br",
"grant_type": "client_credentials",
"client_id": "eSRTjDtxTaprkd6Yb97DouqFORbTT1dV",
"client_secret": "cSrP6TF1ktSAH1IV1p24Vztd9Lc4AoLA62f0KIPU1vkymSjd7a5QzpTy0Tqo51PZ"
}
Exemplo de Resposta
{
"access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"expires_in": 86400,
"token_type": "Bearer"
}
Campos
| campo | descrição |
|---|---|
| access_token | token de acesso gerado |
| expires_in | tempo de validade do token |
| token_type | tipo de token, sempre será Bearer |
Link de avaliação
Permite obter o link de avaliação para um pedido
GET /{customer}/orders/{orderId}/ratelink
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| customer | Fornecido pelo nosso time de integração |
| orderId | número do pedido em sua plataforma |
Exemplo de Resposta
{
"link": "https://www.kfy.app/rate/konfidency/62b266a92bbbb599f720bb22/123456-1"
}
Campos da resposta
| campo | descrição |
|---|---|
| link | URL única para avaliação do pedido |
Criar Pedido
Integra um novo pedido na plataforma Konfidency Reviews
POST /{customer}/orders
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| customer | Fornecido pelo nosso time de integração |
Parâmetros do corpo da requisição
| Parâmetro | Descrição |
|---|---|
| orderId | Número do pedido, identificação única na plataforma do cliente |
| createdDate | Data de criação do pedido |
| userId | ID do usuário na plataforma do cliente não utilizar dados sensíveis |
| status | Status do produto, created, authorized, shipped ou delivered |
| estimatedDeliveryDate | Data de entrega prevista do pedido |
| deliveredDate | Data da entrega do pedido |
| name | Nome do cliente |
| E-mail do cliente - obrigatório para notificações por e-mail | |
| phone | Celular do cliente - obrigatório para notificações por SMS e WhatsApp |
| pointOfSale | Origem do pedido (ex: "Loja Física", "E-commerce", "Marketplace") |
| deliveryMethod | Método de entrega (ex: "Correios", "Transportadora", "Retirada") |
| optOutEmail | Indica se o cliente realizou opt-out para receber e-mails |
| optOutSMS | Indica se o cliente realizou opt-out para receber mensagens SMS |
| optOutWhatsApp | Indica se o cliente realizou opt-out para receber mensagens via WhatsApp |
| items.sku | SKU do produto |
Exemplo de corpo da requisição
{
"orderId": "P123456-1",
"createdDate": "2022-06-01 12:34",
"userId": "12345",
"name": "João da Silva",
"email": "[email protected]",
"phone": "551191234-5678",
"status": "created",
"estimatedDeliveryDate": "2022-07-15",
"pointOfSale": "E-commerce",
"deliveryMethod": "Correios",
"optOutEmail": false,
"optOutWhatsApp": false,
"optOutSMS": true,
"items": [
{
"sku": "01001"
}
]
}
Resposta
Esta API não gera um JSON de resposta, um status 200 significa que os dados foram salvos corretamente
Criar Pedido (V2)
Versão otimizada da API de integração de pedidos com suporte a marketplace, dados expandidos de produtos e atualização de pedidos existentes.
POST /{customer}/orders
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| customer | Fornecido pelo nosso time de integração |
Parâmetros do corpo da requisição
| Parâmetro | Descrição |
|---|---|
| version | Deve ser 2 para usar esta versão da API |
| orderId | Número do pedido, identificação única na plataforma do cliente |
| userId | ID do usuário na plataforma do cliente não utilizar dados sensíveis |
| createdDate | Data de criação do pedido |
| authorizedDate | Data de autorização/pagamento do pedido (opcional) |
| estimatedDeliveryDate | Data de entrega prevista do pedido (opcional) |
| deliveredDate | Data de entrega efetiva do pedido (opcional) |
| modifiedDate | Data de última modificação do pedido (opcional) |
| name | Nome do cliente |
| E-mail do cliente - obrigatório para notificações por e-mail | |
| phone | Celular do cliente - obrigatório para notificações por SMS e WhatsApp |
| pointOfSale | Origem do pedido (ex: "Loja Física", "E-commerce", "Marketplace") (opcional) |
| deliveryMethod | Método de entrega (ex: "Correios", "Transportadora", "Retirada") (opcional) |
| status | Status do pedido, created, authorized, paid, invoiced, shipped, delivered ou cancelled |
| optOutEmail | Indica se o cliente realizou opt-out para receber e-mails |
| optOutSMS | Indica se o cliente realizou opt-out para receber mensagens SMS |
| optOutWhatsApp | Indica se o cliente realizou opt-out para receber mensagens via WhatsApp |
| items | Array de itens do pedido (veja estrutura abaixo) |
Estrutura de items (V2)
| Parâmetro | Descrição |
|---|---|
| items.productId | SKU/ID principal do produto |
| items.sku | SKU da variante do produto (opcional) |
| items.skuName | Nome/descrição da variante (ex: "Tamanho P - Cor Azul") (opcional) |
| items.status | Status específico do item (opcional, usa status do pedido se omitido) |
| items.cancelled | Indica se o item foi cancelado (boolean) (opcional) |
| items.sellerInfo | Informações do seller/marketplace (opcional, veja estrutura abaixo) |
| items.productData | Dados completos do produto (opcional, veja estrutura abaixo) |
Estrutura de items.sellerInfo (Marketplace)
| Parâmetro | Descrição |
|---|---|
| items.sellerInfo.id | ID único do seller/vendedor |
| items.sellerInfo.name | Nome do seller/vendedor |
Estrutura de items.productData
| Parâmetro | Descrição |
|---|---|
| items.productData.name | Nome do produto |
| items.productData.productName | Nome do produto (alternativo) |
| items.productData.brand | Marca do produto |
| items.productData.brandName | Marca do produto (alternativo) |
| items.productData.mpn | Manufacturer Part Number (opcional) |
| items.productData.ean | Código EAN (opcional) |
| items.productData.gtin | Global Trade Item Number (opcional) |
| items.productData.url | URL da página do produto (será normalizada com a URL da loja) |
| items.productData.image | URL da imagem principal do produto |
| items.productData.categories | Array de categorias do produto |
| items.productData.categoryName | Nome da categoria (alternativo, será convertido em array) |
Exemplo de corpo da requisição (V2)
{
"version": 2,
"orderId": "P123456-1",
"userId": "12345",
"name": "João da Silva",
"email": "[email protected]",
"phone": "551191234-5678",
"createdDate": "2022-06-01 12:34",
"authorizedDate": "2022-06-01 13:00",
"estimatedDeliveryDate": "2022-06-15",
"deliveredDate": "2022-06-14",
"pointOfSale": "E-commerce",
"deliveryMethod": "Transportadora",
"status": "delivered",
"optOutEmail": false,
"optOutWhatsApp": false,
"optOutSMS": true,
"items": [
{
"productId": "CAM-001",
"sku": "CAM-001-P-AZUL",
"skuName": "Tamanho P - Cor Azul",
"status": "authorized",
"cancelled": false,
"sellerInfo": {
"id": "SELLER123",
"name": "Loja Parceira ABC"
},
"productData": {
"name": "Camiseta Básica",
"brand": "Konfidency Store",
"mpn": "CAM001",
"ean": "7891234567890",
"url": "/produtos/camiseta-basica",
"image": "https://example.com/camiseta.jpg",
"categories": ["Roupas", "Camisetas", "Masculino"]
}
}
]
}