API · v1

Zamówienia do środka. Trasy na zewnątrz.

Przesyłaj zlecenia z systemu, którego i tak używasz, i odbieraj ułożoną trasę z nienaruszonymi własnymi identyfikatorami. Trzy punkty końcowe, bez SDK.

Adres bazowy
api.routemate.app/v1
Uwierzytelnianie
OAuth2 client_credentials
Ważność tokenu
3600 s
Dostępność
Plan Team i wyższe
01 · Punkty końcowe

Trzy wywołania i to cała powierzchnia

Punkty końcowe API integracyjnego RouteMate.
MetodaŚcieżkaCel
POST/v1/integration-tokenWymiana danych uwierzytelniających klienta na token bearer, ważny godzinę
POST/v1/integration-importImport zlecenia wraz z przystankami, geokodowanie adresów, optymalizacja trasy i przypisanie kierowcy — w jednym żądaniu
GET/v1/integration-jobsStatus zlecenia i przystanków: liczniki postępu, stan każdego przystanku, zoptymalizowana kolejność
02 · Rozpisane wywołanie

Import, geokodowanie, optymalizacja, przypisanie

Żądanie
POST /v1/integration-import HTTP/1.1
Authorization: Bearer {token}
Content-Type: application/json

{
  "external_job_id": "WMS-2026-07-30-A",
  "driver_email": "driver@fleet.com.au",
  "optimize": true,
  "stops": [
    { "external_stop_id": "SO-88214",
      "address": "3/216 Brunswick St, Fitzroy VIC 3065",
      "parcel_count": 2,
      "duration_minutes": 4 }
  ]
}
Odpowiedź · 200 OK
{
  "job_id": "job_7Yq2c",
  "external_job_id": "WMS-2026-07-30-A",
  "assigned_to": "driver@fleet.com.au",
  "optimized": true,
  "stops_imported": 142,
  "stops": [
    { "external_stop_id": "SO-88214",
      "stop_id": "stp_9f2",
      "sequence": 38,
      "status": "pending" }
  ],
  "warnings": []
}
03 · Opis pól

Twoje identyfikatory zostają

Każdy identyfikator, który wyślesz, wraca po drodze z powrotem — na zleceniu i na każdym przystanku. Nigdy nie musisz utrzymywać tabeli mapowania między swoimi numerami zamówień a naszymi.

Opis pól importu.
external_job_idTwoja własna referencja partii — wraca przy każdym przystanku, więc nie potrzebujesz tabeli mapowania
external_stop_idTwój numer zamówienia lub przesyłki, przeniesiony aż do statusu i zakończenia
addressJedna linia adresu; geokodowana przy imporcie, błędy wracają jako ostrzeżenia
parcel_countUżywane do założeń o ładunku i obsłudze na przystanku
duration_minutesCzas obsługi pod drzwiami — zużywany w modelu, a nie pomijany
driver_emailPrzypisuje gotową trasę kierowcy, który jest już na koncie
04 · Zachowanie

Co się dzieje, gdy coś idzie źle

Zapisy idempotentne

Ponowny import tego samego external_job_id aktualizuje zlecenie, zamiast tworzyć drugie. Ponowienie po przekroczeniu limitu czasu jest bezpieczne.

Częściowe powodzenie

Przystanek, którego nie da się zgeokodować, wraca w warnings[], a reszta zlecenia zostaje zaimportowana. Żądanie nie kończy się błędem w całości dlatego, że jeden adres jest zły.

Wersjonowanie

Wersja jest w ścieżce. Wewnątrz wersji pola są dodawane, ale nigdy nie są usuwane ani wykorzystywane do czegoś innego, więc integracja napisana dziś nadal działa.

Klucze do piaskownicy są darmowe

Buduj najpierw na piaskownicy, zanim się do czegokolwiek zobowiążesz. Napisz do nas, a wyślemy dane dostępowe i rozpisany przykład na twoim własnym formacie danych.