Skip to main content
Um orçamento (quote) é criado a partir dos resultados de uma busca de veículos. Ele representa uma proposta de fretamento para um cliente, com o preço do fornecedor acrescido da margem configurada.
Busca obrigatória. Não é possível criar um orçamento sem uma busca prévia. Os preços são sempre extraídos do resultado da busca armazenado — o parceiro não informa valores.Validade de 30 minutos. A busca expira 30 minutos após a conclusão do polling. Após esse prazo, realize uma nova busca antes de criar o orçamento.

Endpoints

MétodoEndpointDescrição
POST/quotesCriar orçamento
GET/quotesListar orçamentos
GET/quotes/{id}Buscar orçamento por ID

Criar orçamento

O payload usa os dados retornados pelo polling da busca. Informe o search_id e o veículo escolhido; os preços e os dados de rota são extraídos automaticamente do resultado armazenado.

Campos da requisição

CampoTipoObrigatórioDescrição
customer_idintegerSimID do cliente no CGD
search_idstringSimsearch_id retornado pelo endpoint de busca
selectedVehicleobjectSimVeículo escolhido nos resultados
selectedVehicle.idintegerSimid do veículo retornado pela busca
selectedVehicle.tenant_idstring (UUID)Simtenant_id do veículo retornado pela busca
customRouterarraySó para customtripParadas do roteiro (veja abaixo)
default_margin_percentagenumberNãoMargem em percentual (ex: 15). Se omitido, usa a margem padrão configurada na conta.
Os campos simpleTrip (origin, destination, tripType) e o preço do veículo são extraídos automaticamente da busca. O parceiro não precisa — e não pode — enviá-los.

Exemplos por tipo de viagem

O tripType da busca define o tipo do orçamento automaticamente. Não é necessário informá-lo na criação do orçamento.

Ida simples, ida e volta ou hora (onewaytrip / roundtrip / hourtrip)

Para todos esses tipos, o payload é idêntico — o tipo é herdado da busca.
curl -X POST https://gds.fretatech.com.br/api/partner/v1/quotes \
  -H "Authorization: Bearer SUA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "customer_id": 5,
    "search_id": "dMeazSmRgEikWVxe",
    "default_margin_percentage": 15,
    "selectedVehicle": {
      "id": 28,
      "tenant_id": "fb4a8f4c-617a-45f8-a2e9-0aebbc5cd0f5"
    }
  }'

Roteiro personalizado (customtrip)

Para roteiros com múltiplas paradas, inclua o array customRouter com as paradas em ordem. A busca deve ter sido feita com trip_type: "customtrip".
curl -X POST https://gds.fretatech.com.br/api/partner/v1/quotes \
  -H "Authorization: Bearer SUA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "customer_id": 5,
    "search_id": "Ox2VB6xxOL4HOVae",
    "default_margin_percentage": 15,
    "selectedVehicle": {
      "id": 28,
      "tenant_id": "fb4a8f4c-617a-45f8-a2e9-0aebbc5cd0f5"
    },
    "customRouter": [
      {
        "address": "São Paulo, SP, Brasil",
        "lat": "-23.5505199",
        "lng": "-46.6333094",
        "date": "15/04/2026",
        "time": "07:00"
      },
      {
        "address": "Campinas, SP, Brasil",
        "lat": "-22.9056099",
        "lng": "-47.0607605",
        "date": "15/04/2026",
        "time": "09:00"
      },
      {
        "address": "Ribeirão Preto, SP, Brasil",
        "lat": "-21.1774886",
        "lng": "-47.8103017",
        "date": "15/04/2026",
        "time": "15:00"
      }
    ]
  }'

Campos de cada parada em customRouter

CampoTipoDescrição
addressstringEndereço completo da parada
latstringLatitude
lngstringLongitude
datestringData da parada no formato DD/MM/YYYY
timestringHorário da parada no formato HH:MM

Como o preço é calculado

O preço final exibido ao cliente inclui a taxa central da viação, a taxa de serviço do CGD e a margem do parceiro:
base          = priceCents do veículo (extraído da busca, já inclui a taxa central da viação)
              + despesas do motorista (quando aplicável)
service_fee   = base × service_fee_percentage   (padrão: 7%)
margin        = base × margin_percentage
total         = base + service_fee + margin
Exemplo com veículo de R17.718,81(jaˊcomtaxacentral10 17.718,81 (já com taxa central 10%), despesas R 280, margem 15%:
base:         R$ 17.998,81  (17.718,81 + 280,00)
service_fee:  R$  1.259,92  (7%)
margin:       R$  2.699,82  (15%)
total:        R$ 21.958,55

Erros possíveis na criação

HTTPMensagemCausa
404Busca não encontradasearch_id inválido
422Busca expiradaMais de 30 min desde a conclusão da busca. Refaça a busca.
422Veículo não encontrado nesta buscavehicle_id ou tenant_id incorreto

Resposta

{
  "success": true,
  "data": {
    "id": 76,
    "uuid": "621cebbd-cf60-4ab5-a6d6-8dd9545cb9d6",
    "customer": {
      "id": 5,
      "uuid": "6039e108-f7ac-4b19-9a2c-bbf822d6de18",
      "name": "AC DA SILVA",
      "email": "email@email.com.br",
      "phone": null
    },
    "pricing": {
      "subtotal": 1799881,
      "total": 2195855,
      "discount": 0,
      "addition": 0,
      "service_fee_percentage": "7.00",
      "service_fee_value": 125992,
      "margin_percentage": "15.00",
      "margin_value": 269982
    },
    "status": "pending",
    "items": [
      {
        "id": 83,
        "uuid": "be1734d6-05b6-4501-9ce7-bd5bc3ade306",
        "tenant_id": "fb4a8f4c-617a-45f8-a2e9-0aebbc5cd0f5",
        "vehicle_id": 28,
        "type": "onewaytrip",
        "price_cents": 1771881,
        "trip_details": {
          "origin": {
            "address": "Peruíbe, SP, Brasil",
            "city": "Peruíbe",
            "date": "08/03/2026",
            "time": "21:00",
            "lat": "-24.3182917",
            "lng": "-46.9940600"
          },
          "destination": {
            "address": "Aparecida, SP, Brasil",
            "city": "Aparecida",
            "date": "09/03/2026",
            "time": "07:00",
            "lat": "-22.8469289",
            "lng": "-45.2316803"
          }
        },
        "tenant_display": {
          "name": "Viação Mimo - Várzea Paulista",
          "logo": null
        },
        "created_at": "2026-03-08T17:30:00-03:00"
      }
    ],
    "created_at": "2026-03-08T17:30:00-03:00",
    "updated_at": "2026-03-08T17:30:10-03:00"
  },
  "message": "Orçamento criado com sucesso"
}

Campos da resposta

CampoTipoDescrição
idintegerID do orçamento
uuidstringUUID do orçamento
statusstringStatus do orçamento (veja abaixo)
pricing.subtotalintegerSubtotal em centavos (base + despesas motorista)
pricing.service_fee_valueintegerTaxa de serviço em centavos
pricing.margin_valueintegerMargem em centavos
pricing.totalintegerValor total em centavos
itemsarrayItens do orçamento (um por trecho da viagem)

Status do orçamento

StatusDescrição
pendingOrçamento criado, aguardando aprovação do cliente
approvedAprovado pelo cliente
rejectedRecusado pelo cliente
convertedConvertido em pedido
expiredPrazo de validade expirado

Listar orçamentos

curl -X GET "https://gds.fretatech.com.br/api/partner/v1/quotes?status=pending&customer_id=5" \
  -H "Authorization: Bearer SUA_API_KEY"

Parâmetros de filtro

ParâmetroTipoDescrição
statusstringFiltra por status do orçamento
customer_idintegerFiltra por cliente
date_fromstringData inicial (YYYY-MM-DD)
date_tostringData final (YYYY-MM-DD)

Buscar orçamento por ID

curl -X GET https://gds.fretatech.com.br/api/partner/v1/quotes/76 \
  -H "Authorization: Bearer SUA_API_KEY"
Retorna o objeto completo do orçamento, idêntico ao retorno da criação.