curl -X PATCH "https://api.sistema-representantes.com.br/api/v1/sales/789e0123-e89b-12d3-a456-426614174222/status" \
-H "Content-Type: application/json" \
-H "x-api-key: sua-api-key-aqui" \
-d '{
"status": "ENVIADA"
}'
const response = await fetch('https://api.sistema-representantes.com.br/api/v1/sales/789e0123-e89b-12d3-a456-426614174222/status', {
method: 'PATCH',
headers: {
'Content-Type': 'application/json',
'x-api-key': 'sua-api-key-aqui'
},
body: JSON.stringify({
status: 'ENTREGUE'
})
});
const result = await response.json();
if (result.success) {
console.log('Status atualizado:', result.data.status);
console.log('Mensagem:', result.message);
} else {
console.error('Erro:', result.error);
}
import requests
import json
url = "https://api.sistema-representantes.com.br/api/v1/sales/789e0123-e89b-12d3-a456-426614174222/status"
headers = {
'Content-Type': 'application/json',
'x-api-key': 'sua-api-key-aqui'
}
# Marcar como enviada
data = {
"status": "ENVIADA"
}
response = requests.patch(url, headers=headers, json=data)
result = response.json()
if response.status_code == 200:
print("Status atualizado com sucesso!")
print(f"Novo status: {result['data']['status']}")
print(f"Mensagem: {result['message']}")
else:
print(f"Erro: {result.get('error', 'Erro desconhecido')}")
<?php
$url = 'https://api.sistema-representantes.com.br/api/v1/sales/789e0123-e89b-12d3-a456-426614174222/status';
$headers = [
'Content-Type: application/json',
'x-api-key: sua-api-key-aqui'
];
$data = [
'status' => 'AGUARDANDO PAGAMENTO'
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PATCH");
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
$result = json_decode($response, true);
if ($httpCode === 200) {
echo "Status atualizado com sucesso!\n";
echo "Novo status: " . $result['data']['status'] . "\n";
echo $result['message'] . "\n";
} else {
echo "Erro: " . $result['error'] . "\n";
}
?>
{
"success": true,
"data": {
"id": "789e0123-e89b-12d3-a456-426614174222",
"pedido": "PED-2024-003",
"data": "2024-01-25T00:00:00.000Z",
"nf": null,
"status": "ENVIADA",
"cliente_id": "123e4567-e89b-12d3-a456-426614174000",
"cliente_nome": "Supermercado Central",
"representada_id": "987e6543-e89b-12d3-a456-426614174999",
"representada_nome": "Laticínios Exemplo",
"valor_total": 1824.50,
"updated_at": "2024-01-26T18:30:00Z"
},
"message": "Status atualizado para ENVIADA"
}
{
"error": "Venda não encontrada"
}
{
"error": "Status inválido",
"details": [
{
"code": "invalid_enum_value",
"options": ["PAGA", "AGUARDANDO PAGAMENTO", "CANCELADA", "ENVIADA", "ENTREGUE"],
"path": ["status"],
"message": "Invalid enum value. Expected 'PAGA' | 'AGUARDANDO PAGAMENTO' | 'CANCELADA' | 'ENVIADA' | 'ENTREGUE'"
}
]
}
{
"error": "API key inválida"
}
Vendas
Atualizar Status da Venda
Atualiza apenas o status de uma venda existente
PATCH
/
api
/
v1
/
sales
/
{id}
/
status
curl -X PATCH "https://api.sistema-representantes.com.br/api/v1/sales/789e0123-e89b-12d3-a456-426614174222/status" \
-H "Content-Type: application/json" \
-H "x-api-key: sua-api-key-aqui" \
-d '{
"status": "ENVIADA"
}'
const response = await fetch('https://api.sistema-representantes.com.br/api/v1/sales/789e0123-e89b-12d3-a456-426614174222/status', {
method: 'PATCH',
headers: {
'Content-Type': 'application/json',
'x-api-key': 'sua-api-key-aqui'
},
body: JSON.stringify({
status: 'ENTREGUE'
})
});
const result = await response.json();
if (result.success) {
console.log('Status atualizado:', result.data.status);
console.log('Mensagem:', result.message);
} else {
console.error('Erro:', result.error);
}
import requests
import json
url = "https://api.sistema-representantes.com.br/api/v1/sales/789e0123-e89b-12d3-a456-426614174222/status"
headers = {
'Content-Type': 'application/json',
'x-api-key': 'sua-api-key-aqui'
}
# Marcar como enviada
data = {
"status": "ENVIADA"
}
response = requests.patch(url, headers=headers, json=data)
result = response.json()
if response.status_code == 200:
print("Status atualizado com sucesso!")
print(f"Novo status: {result['data']['status']}")
print(f"Mensagem: {result['message']}")
else:
print(f"Erro: {result.get('error', 'Erro desconhecido')}")
<?php
$url = 'https://api.sistema-representantes.com.br/api/v1/sales/789e0123-e89b-12d3-a456-426614174222/status';
$headers = [
'Content-Type: application/json',
'x-api-key: sua-api-key-aqui'
];
$data = [
'status' => 'AGUARDANDO PAGAMENTO'
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PATCH");
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
$result = json_decode($response, true);
if ($httpCode === 200) {
echo "Status atualizado com sucesso!\n";
echo "Novo status: " . $result['data']['status'] . "\n";
echo $result['message'] . "\n";
} else {
echo "Erro: " . $result['error'] . "\n";
}
?>
{
"success": true,
"data": {
"id": "789e0123-e89b-12d3-a456-426614174222",
"pedido": "PED-2024-003",
"data": "2024-01-25T00:00:00.000Z",
"nf": null,
"status": "ENVIADA",
"cliente_id": "123e4567-e89b-12d3-a456-426614174000",
"cliente_nome": "Supermercado Central",
"representada_id": "987e6543-e89b-12d3-a456-426614174999",
"representada_nome": "Laticínios Exemplo",
"valor_total": 1824.50,
"updated_at": "2024-01-26T18:30:00Z"
},
"message": "Status atualizado para ENVIADA"
}
{
"error": "Venda não encontrada"
}
{
"error": "Status inválido",
"details": [
{
"code": "invalid_enum_value",
"options": ["PAGA", "AGUARDANDO PAGAMENTO", "CANCELADA", "ENVIADA", "ENTREGUE"],
"path": ["status"],
"message": "Invalid enum value. Expected 'PAGA' | 'AGUARDANDO PAGAMENTO' | 'CANCELADA' | 'ENVIADA' | 'ENTREGUE'"
}
]
}
{
"error": "API key inválida"
}
Use este endpoint para alterar rapidamente o status de uma venda sem precisar enviar todos os dados.
Você precisa de uma API key válida no header x-api-key para usar este endpoint.
Path Parameters
string
required
ID único da venda (UUID)
Headers
string
required
application/json
string
required
API key de autenticação
Body
string
required
Novo status da vendaValores aceitos:
PAGA- Venda pagaAGUARDANDO PAGAMENTO- Aguardando pagamentoCANCELADA- Venda canceladaENVIADA- Venda enviadaENTREGUE- Venda entregue
curl -X PATCH "https://api.sistema-representantes.com.br/api/v1/sales/789e0123-e89b-12d3-a456-426614174222/status" \
-H "Content-Type: application/json" \
-H "x-api-key: sua-api-key-aqui" \
-d '{
"status": "ENVIADA"
}'
const response = await fetch('https://api.sistema-representantes.com.br/api/v1/sales/789e0123-e89b-12d3-a456-426614174222/status', {
method: 'PATCH',
headers: {
'Content-Type': 'application/json',
'x-api-key': 'sua-api-key-aqui'
},
body: JSON.stringify({
status: 'ENTREGUE'
})
});
const result = await response.json();
if (result.success) {
console.log('Status atualizado:', result.data.status);
console.log('Mensagem:', result.message);
} else {
console.error('Erro:', result.error);
}
import requests
import json
url = "https://api.sistema-representantes.com.br/api/v1/sales/789e0123-e89b-12d3-a456-426614174222/status"
headers = {
'Content-Type': 'application/json',
'x-api-key': 'sua-api-key-aqui'
}
# Marcar como enviada
data = {
"status": "ENVIADA"
}
response = requests.patch(url, headers=headers, json=data)
result = response.json()
if response.status_code == 200:
print("Status atualizado com sucesso!")
print(f"Novo status: {result['data']['status']}")
print(f"Mensagem: {result['message']}")
else:
print(f"Erro: {result.get('error', 'Erro desconhecido')}")
<?php
$url = 'https://api.sistema-representantes.com.br/api/v1/sales/789e0123-e89b-12d3-a456-426614174222/status';
$headers = [
'Content-Type: application/json',
'x-api-key: sua-api-key-aqui'
];
$data = [
'status' => 'AGUARDANDO PAGAMENTO'
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PATCH");
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
$result = json_decode($response, true);
if ($httpCode === 200) {
echo "Status atualizado com sucesso!\n";
echo "Novo status: " . $result['data']['status'] . "\n";
echo $result['message'] . "\n";
} else {
echo "Erro: " . $result['error'] . "\n";
}
?>
Response
Sucesso
boolean
Indica se a operação foi bem-sucedida
object
Dados completos da venda com o status atualizado
string
Mensagem de confirmação com o novo status
{
"success": true,
"data": {
"id": "789e0123-e89b-12d3-a456-426614174222",
"pedido": "PED-2024-003",
"data": "2024-01-25T00:00:00.000Z",
"nf": null,
"status": "ENVIADA",
"cliente_id": "123e4567-e89b-12d3-a456-426614174000",
"cliente_nome": "Supermercado Central",
"representada_id": "987e6543-e89b-12d3-a456-426614174999",
"representada_nome": "Laticínios Exemplo",
"valor_total": 1824.50,
"updated_at": "2024-01-26T18:30:00Z"
},
"message": "Status atualizado para ENVIADA"
}
{
"error": "Venda não encontrada"
}
{
"error": "Status inválido",
"details": [
{
"code": "invalid_enum_value",
"options": ["PAGA", "AGUARDANDO PAGAMENTO", "CANCELADA", "ENVIADA", "ENTREGUE"],
"path": ["status"],
"message": "Invalid enum value. Expected 'PAGA' | 'AGUARDANDO PAGAMENTO' | 'CANCELADA' | 'ENVIADA' | 'ENTREGUE'"
}
]
}
{
"error": "API key inválida"
}
Fluxo de Status
Fluxo típico de status de uma venda:
- PAGA → Status inicial padrão quando a venda é criada
- AGUARDANDO PAGAMENTO → Se o pagamento ainda não foi confirmado
- ENVIADA → Quando a mercadoria foi despachada
- ENTREGUE → Quando a mercadoria foi recebida pelo cliente
- CANCELADA → Se a venda foi cancelada por qualquer motivo
Casos de Uso
Exemplos práticos:
- Confirmar pagamento: Mudar de
AGUARDANDO PAGAMENTOparaPAGA - Despachar mercadoria: Mudar de
PAGAparaENVIADA - Confirmar entrega: Mudar de
ENVIADAparaENTREGUE - Cancelar venda: Mudar para
CANCELADAde qualquer status - Reverter cancelamento: Mudar de
CANCELADApara o status apropriado