curl -X POST "https://api.sistema-representantes.com.br/api/v1/products" \
-H "Content-Type: application/json" \
-H "x-api-key: sua-api-key-aqui" \
-d '{
"id": "QUEIJO-PRATO",
"nome": "Queijo Prato",
"descricao": "Queijo prato fatiado, embalagem de 1kg",
"preco": 42.50,
"ativo": true
}'
const produto = {
id: "REQUEIJAO-200G",
nome: "Requeijão Cremoso 200g",
descricao: "Requeijão cremoso tradicional, copo de 200g",
preco: 8.90,
};
const response = await fetch('https://api.sistema-representantes.com.br/api/v1/products', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'x-api-key': 'sua-api-key-aqui'
},
body: JSON.stringify(produto)
});
const result = await response.json();
if (result.success) {
console.log('Produto criado:', result.data);
} else {
console.error('Erro:', result.error);
}
import requests
import json
url = "https://api.sistema-representantes.com.br/api/v1/products"
headers = {
'Content-Type': 'application/json',
'x-api-key': 'sua-api-key-aqui'
}
# Criar produto em caixa
produto = {
"id": "IOGURTE-MORANGO-CX",
"nome": "Iogurte Sabor Morango",
"descricao": "Iogurte integral sabor morango, caixa com 12 unidades de 170g",
"preco": 36.00,
"ativo": True
}
response = requests.post(url, headers=headers, json=produto)
result = response.json()
if response.status_code == 201:
print("Produto criado com sucesso!")
print(f"ID: {result['data']['id']}")
print(f"Nome: {result['data']['nome']}")
print(f"Preço: R$ {result['data']['preco']:.2f} por {result['data']['unidade']}")
else:
print(f"Erro: {result.get('error', 'Erro desconhecido')}")
{
"success": true,
"data": {
"id": "QUEIJO-PRATO",
"nome": "Queijo Prato",
"descricao": "Queijo prato fatiado, embalagem de 1kg",
"preco": 42.50,
"ativo": true,
"created_at": "2024-01-26T10:00:00Z",
"updated_at": "2024-01-26T10:00:00Z"
}
}
{
"error": "Já existe um produto com este ID"
}
{
"error": "Dados de entrada inválidos",
"details": [
{
"code": "too_small",
"minimum": 0,
"type": "number",
"inclusive": true,
"exact": false,
"message": "Number must be greater than or equal to 0",
"path": ["preco"]
}
]
}
{
"error": "API key ausente"
}
Produtos
Criar Produto
Cadastra um novo produto no sistema
POST
/
api
/
v1
/
products
curl -X POST "https://api.sistema-representantes.com.br/api/v1/products" \
-H "Content-Type: application/json" \
-H "x-api-key: sua-api-key-aqui" \
-d '{
"id": "QUEIJO-PRATO",
"nome": "Queijo Prato",
"descricao": "Queijo prato fatiado, embalagem de 1kg",
"preco": 42.50,
"ativo": true
}'
const produto = {
id: "REQUEIJAO-200G",
nome: "Requeijão Cremoso 200g",
descricao: "Requeijão cremoso tradicional, copo de 200g",
preco: 8.90,
};
const response = await fetch('https://api.sistema-representantes.com.br/api/v1/products', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'x-api-key': 'sua-api-key-aqui'
},
body: JSON.stringify(produto)
});
const result = await response.json();
if (result.success) {
console.log('Produto criado:', result.data);
} else {
console.error('Erro:', result.error);
}
import requests
import json
url = "https://api.sistema-representantes.com.br/api/v1/products"
headers = {
'Content-Type': 'application/json',
'x-api-key': 'sua-api-key-aqui'
}
# Criar produto em caixa
produto = {
"id": "IOGURTE-MORANGO-CX",
"nome": "Iogurte Sabor Morango",
"descricao": "Iogurte integral sabor morango, caixa com 12 unidades de 170g",
"preco": 36.00,
"ativo": True
}
response = requests.post(url, headers=headers, json=produto)
result = response.json()
if response.status_code == 201:
print("Produto criado com sucesso!")
print(f"ID: {result['data']['id']}")
print(f"Nome: {result['data']['nome']}")
print(f"Preço: R$ {result['data']['preco']:.2f} por {result['data']['unidade']}")
else:
print(f"Erro: {result.get('error', 'Erro desconhecido')}")
{
"success": true,
"data": {
"id": "QUEIJO-PRATO",
"nome": "Queijo Prato",
"descricao": "Queijo prato fatiado, embalagem de 1kg",
"preco": 42.50,
"ativo": true,
"created_at": "2024-01-26T10:00:00Z",
"updated_at": "2024-01-26T10:00:00Z"
}
}
{
"error": "Já existe um produto com este ID"
}
{
"error": "Dados de entrada inválidos",
"details": [
{
"code": "too_small",
"minimum": 0,
"type": "number",
"inclusive": true,
"exact": false,
"message": "Number must be greater than or equal to 0",
"path": ["preco"]
}
]
}
{
"error": "API key ausente"
}
O ID do produto é definido pelo usuário e geralmente representa o código/SKU do produto.
Você precisa de uma API key válida no header x-api-key para usar este endpoint.
Headers
string
required
application/json
string
required
API key de autenticação
Body
string
required
ID único do produto (código/SKU)Este será o identificador do produto no sistema
string
required
Nome do produtoMínimo de 1 caractere
string
Descrição detalhada do produto
number
required
Preço unitário do produtoDeve ser maior ou igual a 0
boolean
default:"true"
Status inicial do produto
true- Produto ativofalse- Produto inativo
curl -X POST "https://api.sistema-representantes.com.br/api/v1/products" \
-H "Content-Type: application/json" \
-H "x-api-key: sua-api-key-aqui" \
-d '{
"id": "QUEIJO-PRATO",
"nome": "Queijo Prato",
"descricao": "Queijo prato fatiado, embalagem de 1kg",
"preco": 42.50,
"ativo": true
}'
const produto = {
id: "REQUEIJAO-200G",
nome: "Requeijão Cremoso 200g",
descricao: "Requeijão cremoso tradicional, copo de 200g",
preco: 8.90,
};
const response = await fetch('https://api.sistema-representantes.com.br/api/v1/products', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'x-api-key': 'sua-api-key-aqui'
},
body: JSON.stringify(produto)
});
const result = await response.json();
if (result.success) {
console.log('Produto criado:', result.data);
} else {
console.error('Erro:', result.error);
}
import requests
import json
url = "https://api.sistema-representantes.com.br/api/v1/products"
headers = {
'Content-Type': 'application/json',
'x-api-key': 'sua-api-key-aqui'
}
# Criar produto em caixa
produto = {
"id": "IOGURTE-MORANGO-CX",
"nome": "Iogurte Sabor Morango",
"descricao": "Iogurte integral sabor morango, caixa com 12 unidades de 170g",
"preco": 36.00,
"ativo": True
}
response = requests.post(url, headers=headers, json=produto)
result = response.json()
if response.status_code == 201:
print("Produto criado com sucesso!")
print(f"ID: {result['data']['id']}")
print(f"Nome: {result['data']['nome']}")
print(f"Preço: R$ {result['data']['preco']:.2f} por {result['data']['unidade']}")
else:
print(f"Erro: {result.get('error', 'Erro desconhecido')}")
Response
Sucesso
boolean
Indica se a operação foi bem-sucedida
object
{
"success": true,
"data": {
"id": "QUEIJO-PRATO",
"nome": "Queijo Prato",
"descricao": "Queijo prato fatiado, embalagem de 1kg",
"preco": 42.50,
"ativo": true,
"created_at": "2024-01-26T10:00:00Z",
"updated_at": "2024-01-26T10:00:00Z"
}
}
{
"error": "Já existe um produto com este ID"
}
{
"error": "Dados de entrada inválidos",
"details": [
{
"code": "too_small",
"minimum": 0,
"type": "number",
"inclusive": true,
"exact": false,
"message": "Number must be greater than or equal to 0",
"path": ["preco"]
}
]
}
{
"error": "API key ausente"
}
Validações
Validações aplicadas:
- ID deve ser único no sistema
- Nome deve ter pelo menos 1 caractere
- Preço deve ser maior ou igual a 0
Dicas
Boas práticas para IDs de produtos:
- Use códigos significativos (ex: PROD-001, QUEIJO-MUSSARELA)
- Mantenha um padrão consistente
- Evite caracteres especiais
- Use maiúsculas para facilitar busca