Integração com AutocenterAPP

Run in Insomnia

Integração com AutocenterAPP

Guia de Utilização

As rotas listadas a seguir podem ser acessadas com uma autenticação Bearer usando sua chave única da API. Pode ser obtida em contato com nossos administradores e equipe de suporte.

Trate a chave da API como se fosse uma senha, ou seja, é secreta e intransferível. Note que caso não tenha, esqueça ou perca sua chave, será possível gerar uma nova entrando em contato.

cURL

Repair


 

POST Create Repair

https://integration.autocenterapp.com/repair

Rota de criar ordem de serviço

Para fazer uma requisição de serviços, observe o seguinte:

  • O campo id_external é obrigatório.
  • Pelo menos um objeto dentro do array services é obrigatório.
  • A requisição retornará possíveis falhas no comentário da ordem de serviço, campo comment.
  • O campo userDocument deve ser um documento válido.
  • O campo userPhone deve ter um formato de telefone válido.
  • O campo userEmail deve ter um formato de e-mail válido.
  • Os campos date e finishDate deve ter formato de data (ANO/MES/DIA), caso não informado será usado a data atual.
  • Os campos time e finishTime deve ter formato de horário (MINUTOS/SEGUNDOS), caso não informado será usado o horário atual.
// Interface do serviço dentro do array 'services'
interface Service {
  codProd: string;         // Código do produto
  name: string;            // Nome do serviço
  quantity: number;        // Quantidade
  total: number;           // Total do serviço
  description: string;     // Descrição do serviço
  ncm: string;             // Código NCM do serviço
    local_code: string;             // Código NCM do serviço
    original_reference: string[];             // Código NCM do serviço
}

// Interface principal que contém os dados da requisição
interface ProductData {
  id_external: string;       // Identificador externo do produto
  services: Service[];       // Array de serviços
  plate: string;             // Placa do veículo
  userDocument: string;      // Documento do usuário
  userName: string;          // Nome do usuário
  userPhone: string;         // Telefone do usuário
  userEmail: string;         // E-mail do usuário
  date: string;              // Data de início
  time: string;              // Hora de início
  finishDate: string;        // Data de finalização
  finishTime: string;        // Hora de finalização
  discount: string;          // Desconto aplicado
  defect: string;            // Defeitos informados
  km: string;                // Quilometragem do veículo
  total: string;             // Total da operação
  description: string;       // Descrição geral
}
{
  "id_external": "id_external",
  "services": [
    {
      "codProd": "codProd",
      "name": "name",
      "quantity": 1,
      "total": 1,
      "description": "description",
      "ncm": "ABC",
      "local_code": "local_code",
      "original_reference": ["original_reference"]
    }
  ],
  "plate": "AAA0000",
  "userDocument": "262.185.220-12",
  "userName": "",
  "userPhone": "87900001111",
  "userEmail": "email@email.com",
  "date": "2024/12/01",
  "time": "08:00",
  "finishDate": "",
  "finishTime": "",
  "discount": "",
  "defect": "",
  "km": "",
  "total": "",
  "description": ""
}
Headers
Content-Type
application/json
Authorization
Bearer external_token
Body json
{
  "id_external": "id_external",
  "services": [
    {
      "codProd": "codProd",
      "name": "name",
      "quantity": 1,
      "total": 1,
      "description": "description",
      "ncm": "ABC",
      "local_code": "local_code",
      "original_reference": [
        "original_reference"
      ]
    }
  ],
  "plate": "AAA0000",
  "userDocument": "262.185.220-12",
  "userName": "",
  "userPhone": "87900001111",
  "userEmail": "email@email.com",
  "date": "2024/12/01",
  "time": "08:00",
  "finishDate": "",
  "finishTime": "",
  "discount": "",
  "defect": "",
  "km": "",
  "total": "",
  "description": ""
}

Example request:
curl "https://integration.autocenterapp.com/repair" \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer {{ _.external_token }}' \
  -X POST \
  -d '{
    "id_external": "id_external",
    "services": [
      {
      "codProd": "codProd",
      "name": "name",
      "quantity": 1,
      "total": 1,
      "description": "description",
      "ncm": "ABC",
      "local_code": "local_code",
      "original_reference": ["original_reference"]
      }
    ],
    "plate": "AAA0000",
    "userDocument": "262.185.220-12",
    "userName": "",
    "userPhone": "87900001111",
    "userEmail": "email@email.com",
    "date": "2024/12/01",
    "time": "08:00",
    "finishDate": "",
    "finishTime": "",
    "discount": "",
    "defect": "",
    "km": "",
    "total": "",
    "description": ""
}' 
 

PUT Update Repair

https://integration.autocenterapp.com/repair

Rota de editar ordem de serviço

Para fazer uma requisição de serviços, observe o seguinte:

  • A rota tenta buscar a ordem de serviço pelo id_external informado.
  • O campo id_external é obrigatório.
  • Pelo menos um objeto dentro do array services é obrigatório.
  • A requisição retornará possíveis falhas no comentário da ordem de serviço, campo comment.
  • O campo userDocument deve ser um documento válido.
  • O campo userPhone deve ter um formato de telefone válido.
  • O campo userEmail deve ter um formato de e-mail válido.
  • Os campos date e finishDate deve ter formato de data (ANO/MES/DIA), caso não informado será usado a data atual.
  • Os campos time e finishTime deve ter formato de horário (MINUTOS/SEGUNDOS), caso não informado será usado o horário atual.
// Interface do serviço dentro do array 'services'
interface Service {
  codProd: string;         // Código do produto
  name: string;            // Nome do serviço
  quantity: number;        // Quantidade
  total: number;           // Total do serviço
  description: string;     // Descrição do serviço
  ncm: string;             // Código NCM do serviço
    local_code: string;             // Código NCM do serviço
    original_reference: string[];             // Código NCM do serviço
}

// Interface principal que contém os dados da requisição
interface ProductData {
  id_external: string;       // Identificador externo do produto
  services: Service[];       // Array de serviços
  plate: string;             // Placa do veículo
  userDocument: string;      // Documento do usuário
  userName: string;          // Nome do usuário
  userPhone: string;         // Telefone do usuário
  userEmail: string;         // E-mail do usuário
  date: string;              // Data de início
  time: string;              // Hora de início
  finishDate: string;        // Data de finalização
  finishTime: string;        // Hora de finalização
  discount: string;          // Desconto aplicado
  defect: string;            // Defeitos informados
  km: string;                // Quilometragem do veículo
  total: string;             // Total da operação
  description: string;       // Descrição geral
}
{
  "id_external": "id_external",
  "services": [
    {
      "codProd": "codProd",
      "name": "name",
      "quantity": 1,
      "total": 1,
      "description": "description",
      "ncm": "ABC",
      "local_code": "local_code",
      "original_reference": ["original_reference"]
    }
  ],
  "plate": "AAA0000",
  "userDocument": "262.185.220-12",
  "userName": "",
  "userPhone": "87900001111",
  "userEmail": "email@email.com",
  "date": "2024/12/01",
  "time": "08:00",
  "finishDate": "",
  "finishTime": "",
  "discount": "",
  "defect": "",
  "km": "",
  "total": "",
  "description": ""
}
Headers
Content-Type
application/json
Authorization
Bearer external_token
Body json
{
  "id_external": "id_external2a1",
  "services": [
    {
      "codProd": "codProd",
      "name": "name",
      "quantity": 1,
      "total": 1,
      "description": "description"
    }
  ],
  "plate": "",
  "userDocument": "2",
  "userName": "",
  "userPhone": "",
  "userEmail": "",
  "date": "",
  "time": "",
  "finishDate": "",
  "finishTime": "",
  "discount": "",
  "defect": "",
  "km": "",
  "total": "",
  "description": ""
}

Example request:
curl "https://integration.autocenterapp.com/repair" \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer {{ _.external_token }}' \
  -X PUT \
  -d '{
    "id_external": "id_external2a1",
    "services": [
      {
       "codProd": "codProd",
       "name": "name",
       "quantity": 1,
       "total": 1,
       "description": "description"
      }
    ],
    "plate": "",
    "userDocument": "2",
    "userName": "",
    "userPhone": "",
    "userEmail": "",
    "date": "",
    "time": "",
    "finishDate": "",
    "finishTime": "",
    "discount": "",
    "defect": "",
    "km": "",
    "total": "",
    "description": ""
}' 
 

GET Find Repair By External Id

https://integration.autocenterapp.com/repair/id_external

Rota de encontrar ordem de serviço por ID externo

Enviar id externo por parâmetro da rota

Headers
Authorization
Bearer external_token

Example request:
curl "https://integration.autocenterapp.com/repair/id_external" \
  -H 'Authorization: Bearer {{ _.external_token }}' \
  -X GET 
 

DELETE Delete Repair

https://integration.autocenterapp.com/repair/id_external

Rota de deletar ordem de serviço por ID externo

Enviar id externo por parâmetro da rota

Headers
Authorization
Bearer external_token

Example request:
curl "https://integration.autocenterapp.com/repair/id_external" \
  -H 'Authorization: Bearer {{ _.external_token }}' \
  -X DELETE 

Product


 

POST Create Products

https://integration.autocenterapp.com/product

Rota de criar produtos

Enviar array de produtos

Para enviar um array de produtos, observe o seguinte:

  • Os campos id_external e name são obrigatórios para cada produto no array.
  • A requisição retornará um array contendo os produtos que foram adicionados com sucesso e um array contendo os produtos que falharam devido a IDs duplicados ou produtos já existentes.
  • O campo original_reference é um array de string
interface Product {
  id_external: string;
  name: string;
  value?: number;
  description?: string; 
  amount?: number | string; 
  local_code?: string; 
  original_reference?: string[];
}

interface ProductRequest {
  products: Product[];
}

Exemplo de formato da requisição:

{
  "products": [
    {
      "id_external": "id_external",
      "name": "name",
      "value": 2.5,
      "description": "description",
      "amount": 1,
      "local_code": "local_code",
      "original_reference": ["original_reference"]
    },
    {
      "id_external": "id_external2",
      "name": "name",
      "value": "",
      "description": "",
      "amount": "",
      "local_code": "",
      "original_reference": []
    }
  ]
}
Headers
Content-Type
application/json
Authorization
Bearer external_token
Body json
{
  "products": [
    {
      "id_external": "id_external",
      "name": "name",
      "value": 2.5,
      "description": "description",
      "amount": 1,
      "local_code": "local_code",
      "original_reference": [
        "original_reference"
      ]
    },
    {
      "id_external": "id_external2",
      "name": "name",
      "value": "",
      "description": "",
      "amount": "",
      "local_code": "",
      "original_reference": []
    }
  ]
}

Example request:
curl "https://integration.autocenterapp.com/product" \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer {{ _.external_token }}' \
  -X POST \
  -d '{
"products": [
  {
    "id_external": "id_external",
    "name": "name",
    "value": 2.5,
    "description": "description",
    "amount": 1,
    "local_code": "local_code",
    "original_reference": ["original_reference"]
  },
  {
    "id_external": "id_external2",
    "name": "name",
    "value": "",
    "description": "",
    "amount": "",
    "local_code": "",
    "original_reference": []
  }
]
}
' 
 

PUT Update Products

https://integration.autocenterapp.com/product

Rota de editar produtos

Enviar array de produtos

Para enviar um array de produtos, observe o seguinte:

  • Os campos id_external e name são obrigatórios para cada produto no array.
  • A requisição retornará um array contendo os produtos que foram editados com sucesso e um array contendo os produtos que falharam devido a IDs duplicados ou produtos não encontrados.
  • O campo original_reference é um array de string
interface Product {
  id_external: string;
  name: string;
  value?: number;
  description?: string; 
  amount?: number | string; 
  local_code?: string; 
  original_reference?: string[];
}

interface ProductRequest {
  products: Product[];
}

Exemplo de formato da requisição:

{
  "products": [
    {
      "id_external": "id_external",
      "name": "name",
      "value": 2.5,
      "description": "description",
      "amount": 1,
      "local_code": "local_code",
      "original_reference": ["original_reference"]
    },
    {
      "id_external": "id_external2",
      "name": "name",
      "value": "",
      "description": "",
      "amount": "",
      "local_code": "",
      "original_reference": []
    }
  ]
}
Headers
Content-Type
application/json
Authorization
Bearer external_token
Body json
{
  "products": [
    {
      "id_external": "id_external",
      "name": "Name",
      "value": "",
      "description": "description",
      "amount": "",
      "local_code": "",
      "original_reference": []
    },
    {
      "id_external": "zz",
      "name": "Name",
      "value": "",
      "description": "description",
      "amount": "",
      "local_code": "",
      "original_reference": []
    }
  ]
}

Example request:
curl "https://integration.autocenterapp.com/product" \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer {{ _.external_token }}' \
  -X PUT \
  -d '{
"products": [
  {
    "id_external": "id_external",
    "name": "Name",
    "value": "",
    "description": "description",
    "amount": "",
    "local_code": "",
    "original_reference": []
  },
  {
    "id_external": "zz",
    "name": "Name",
    "value": "",
    "description": "description",
    "amount": "",
    "local_code": "",
    "original_reference": []
  }
]
}
' 
 

GET Find Product By External Id

https://integration.autocenterapp.com/product/id_external

Rota de encontrar produto por ID externo

Enviar id externo por parâmetro da rota

Headers
Authorization
Bearer external_token

Example request:
curl "https://integration.autocenterapp.com/product/id_external" \
  -H 'Authorization: Bearer {{ _.external_token }}' \
  -X GET 
 

DELETE Delete Product By External Id

https://integration.autocenterapp.com/product/id_external

Rota de deletar produto por ID externo

Enviar id externo por parâmetro da rota

Headers
Authorization
Bearer external_token

Example request:
curl "https://integration.autocenterapp.com/product/id_external" \
  -H 'Authorization: Bearer {{ _.external_token }}' \
  -X DELETE 

Fuel Price


 

PUT Update Fuel Price

https://integration.autocenterapp.com/fuel_price

Rota Exclusiva para Postos de Gasolina

Rota de criar/editar preço do combustível.

Esta rota é exclusiva para postos de gasolina e requer os seguintes campos obrigatórios:

  • id_external: Identificação externa do preço do combustível.
  • name: Nome do combustível.
  • price: Preço do combustível.

Outros campos podem ser incluídos na requisição, mas os campos acima são obrigatórios.

interface Product {
  id_external: string; // ID externo único para identificar o produto
  name: string;        // Nome do produto
  price: number;       // Preço do produto (valor numérico)
  ncm?: string;         // Código NCM (pode estar vazio, opcional)
  actived?: boolean;     // Status do produto (true/false)
}

Exemplo de formato da requisição:

{
  "id_external": "id_external",
  "name": "name",
  "price": 2,
  "ncm": "",
  "actived": ""
}
Headers
Content-Type
application/json
Authorization
Bearer external_token
Body json
{
  "id_external": "id_external",
  "name": "name",
  "price": 2,
  "ncm": "",
  "actived": ""
}

Example request:
curl "https://integration.autocenterapp.com/fuel_price" \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer {{ _.external_token }}' \
  -X PUT \
  -d '{
    "id_external": "id_external",
    "name": "name",
    "price": 2,
    "ncm": "",
    "actived": ""
}'