openapi: 3.0.4 info: title: Track-POD Address Vehicle API description: 'Track-POD API enables ERP or any other system integration with Track-POD without need for any manual data input. Our API provides an easy HTTP interface to Track-POD functionality through JSON or XML

Endpoint:
https://api.track-pod.com/

Request headers:
X-API-KEY - API Key. Please find the API key in the Track-POD settings
Content-Type - (POST/PUT) Request input type: application/json - JSON, application/xml - XML
Accept - Response output type: application/json - JSON, application/xml - XML
Accept-Encoding - Response compression: gzip, deflate, br

Webhooks:
Create/Update/Delete route, Create/Update/Delete order, and more How to use Webhooks?' version: '2.0' security: - ApiKey: [] tags: - name: Vehicle paths: /Vehicle/{id}: get: tags: - Vehicle summary: Get vehicle by Track-POD unique identifier operationId: GetVehicle parameters: - name: id in: path required: true schema: type: integer format: int32 responses: '200': description: A vehicle content: text/plain: schema: $ref: '#/components/schemas/VehicleExtended' application/json: schema: $ref: '#/components/schemas/VehicleExtended' text/json: schema: $ref: '#/components/schemas/VehicleExtended' application/xml: schema: $ref: '#/components/schemas/VehicleExtended' text/xml: schema: $ref: '#/components/schemas/VehicleExtended' '401': description: Unauthorized. Invalid X-API-KEY in the request header '404': description: Not found. Vehicle not found '429': description: Too Many Requests. Rate limit is 20 requests/sec and 400 requests/min '500': description: Internal Server Error delete: tags: - Vehicle summary: Delete vehicle by Track-POD unique identifier operationId: DeleteVehicle parameters: - name: id in: path required: true schema: type: integer format: int32 responses: '200': description: Vehicle was deleted content: text/plain: schema: $ref: '#/components/schemas/ApiResponse' application/json: schema: $ref: '#/components/schemas/ApiResponse' text/json: schema: $ref: '#/components/schemas/ApiResponse' application/xml: schema: $ref: '#/components/schemas/ApiResponse' text/xml: schema: $ref: '#/components/schemas/ApiResponse' '400': description: Bad Request. '401': description: Unauthorized. Invalid X-API-KEY in the request header '404': description: Not found. Vehicle not found '429': description: Too Many Requests. Rate limit is 20 requests/sec and 400 requests/min '500': description: Internal Server Error /Vehicle: get: tags: - Vehicle summary: Get vehicles operationId: GetVehicles parameters: - name: number in: query schema: type: string responses: '200': description: Vehicles content: text/plain: schema: type: array items: $ref: '#/components/schemas/VehicleExtended' xml: name: List`1 application/json: schema: type: array items: $ref: '#/components/schemas/VehicleExtended' xml: name: List`1 text/json: schema: type: array items: $ref: '#/components/schemas/VehicleExtended' xml: name: List`1 application/xml: schema: type: array items: $ref: '#/components/schemas/VehicleExtended' xml: name: List`1 text/xml: schema: type: array items: $ref: '#/components/schemas/VehicleExtended' xml: name: List`1 '401': description: Unauthorized. Invalid X-API-KEY in the request header '429': description: Too Many Requests. Rate limit is 20 requests/sec and 400 requests/min '500': description: Internal Server Error post: tags: - Vehicle summary: Add vehicle operationId: AddVehicle requestBody: description: '' content: application/json: schema: $ref: '#/components/schemas/NewVehicle' application/xml: schema: $ref: '#/components/schemas/NewVehicle' responses: '201': description: Vehicle was created successfully content: text/plain: schema: $ref: '#/components/schemas/ApiResponse' application/json: schema: $ref: '#/components/schemas/ApiResponse' text/json: schema: $ref: '#/components/schemas/ApiResponse' application/xml: schema: $ref: '#/components/schemas/ApiResponse' text/xml: schema: $ref: '#/components/schemas/ApiResponse' '400': description: One or more validation errors '401': description: Unauthorized. Invalid X-API-KEY in the request header '415': description: Unsupported Media Type. Invalid Content-Type in the request header. Must be application/json or application/xml '429': description: Too Many Requests. Rate limit is 20 requests/sec and 400 requests/min '500': description: Internal Server Error put: tags: - Vehicle summary: Update vehicle operationId: UpdateVehicle requestBody: description: '' content: application/json: schema: $ref: '#/components/schemas/UpdateVehicle' application/xml: schema: $ref: '#/components/schemas/UpdateVehicle' responses: '202': description: Vehicle was updated successfully content: text/plain: schema: $ref: '#/components/schemas/ApiResponse' application/json: schema: $ref: '#/components/schemas/ApiResponse' text/json: schema: $ref: '#/components/schemas/ApiResponse' application/xml: schema: $ref: '#/components/schemas/ApiResponse' text/xml: schema: $ref: '#/components/schemas/ApiResponse' '400': description: One or more validation errors '401': description: Unauthorized. Invalid X-API-KEY in the request header '404': description: Not found. Vehicle not found '415': description: Unsupported Media Type. Invalid Content-Type in the request header. Must be application/json or application/xml '429': description: Too Many Requests. Rate limit is 20 requests/sec and 400 requests/min '500': description: Internal Server Error components: schemas: VehicleExtended: type: object properties: Id: type: integer description: Track-POD unique identifier format: int32 nullable: true example: 2341 DriverId: type: string description: Driver's Track-POD unique identifier format: uuid nullable: true example: 00000000-0000-0000-0000-000000000000 DriverUsername: type: string description: Driver's username nullable: true example: MyDriver DepotId: type: string description: Unique identifier in user accounting system nullable: true example: 1 Depot: type: string description: Depot address nullable: true example: '9 Riverside, Salford M7 1PA ' MaxNodes: type: integer description: Maximum number of sites/orders format: int32 nullable: true example: 5 MaxWorkTime: type: integer description: Maximum work time, h format: int32 nullable: true example: 8 MaxDistance: type: integer description: Maximum distance, km format: int32 nullable: true example: 1000 SpeedRatio: type: number description: Speed ratio restriction format: double nullable: true example: 1 CostPerDistance: type: number description: Cost per distance (km) format: double nullable: true example: 1 CostPerHour: type: number description: Cost per hour format: double nullable: true example: 10 BaseFare: type: number description: Base fare format: double nullable: true example: 0 StartTime: type: string description: Start time format: date-span nullable: true example: 08:00:00 VehicleType: type: integer description: 'Vehicle type: 0 - Truck/Car, 1 - Motorcycle, 2 - Bicycle' format: int32 nullable: true example: 1 EmissionCo2: type: integer description: Vehicle emission g/km or g/mile format: int32 nullable: true example: 250 Number: maxLength: 30 minLength: 0 type: string description: Number nullable: true example: XXX777 CarrierCode: maxLength: 255 minLength: 0 type: string description: Carrier Code nullable: true example: 31 Carrier: maxLength: 255 minLength: 0 type: string description: Carrier nullable: true example: Big Logistics Weight: type: number description: Capacity Weight format: double nullable: true example: 10000 Volume: type: number description: Capacity Volume format: double nullable: true example: 14.5 Pallets: type: number description: Capacity Pallets format: double nullable: true example: 16 additionalProperties: false xml: name: VehicleExtended NewVehicle: type: object properties: Number: maxLength: 30 minLength: 0 type: string description: "Required (*) \n\nNumber" nullable: true example: XXX777 CarrierCode: maxLength: 255 minLength: 0 type: string description: Carrier Code nullable: true example: 31 Carrier: maxLength: 255 minLength: 0 type: string description: Carrier nullable: true example: Big Logistics Weight: maximum: 100000000 minimum: 0 type: number description: Capacity Weight format: double nullable: true example: 100 Volume: maximum: 100000000 minimum: 0 type: number description: Capacity Volume format: double nullable: true example: 14.5 Pallets: maximum: 100000000 minimum: 0 type: number description: Capacity Pallets format: double nullable: true example: 16 DriverId: type: string description: "Required (*) \n\nDriver's Track-POD unique identifier (DriverId or DriverUsername is Required)" format: uuid nullable: true example: 00000000-0000-0000-0000-000000000000 DriverUsername: type: string description: "Required (*) \n\nDriver's username (DriverId or DriverUsername is Required)" nullable: true example: MyDriver DepotId: maxLength: 50 minLength: 0 type: string description: "Required (*) \n\nUnique identifier in user accounting system (DepotId or Depot is Required)" nullable: true example: 1 Depot: maxLength: 255 minLength: 0 type: string description: "Required (*) \n\nDepot address (DepotId or Depot is Required)" nullable: true example: '9 Riverside, Salford M7 1PA ' MaxNodes: maximum: 200 minimum: 0 type: integer description: Maximum number of sites/orders format: int32 nullable: true example: 5 MaxWorkTime: maximum: 480 minimum: 0 type: integer description: Maximum work time, h format: int32 nullable: true example: 8 MaxDistance: maximum: 10000 minimum: 0 type: integer description: Maximum distance, km format: int32 nullable: true example: 1000 SpeedRatio: type: number description: 'Speed ratio restriction (should be grater than 0 and less or equal 2)' format: double nullable: true example: 1 CostPerDistance: maximum: 1000000 minimum: 0 type: number description: Cost per distance (km) format: double nullable: true example: 1.1 CostPerHour: maximum: 1000000 minimum: 0 type: number description: Cost per hour format: double nullable: true example: 10 BaseFare: maximum: 1000000 minimum: 0 type: number description: Base fare format: double nullable: true example: 0 StartTime: type: string description: Start time format: date-span nullable: true example: 08:00:00 VehicleType: maximum: 2 minimum: 0 type: integer description: 'Vehicle type: 0 - Truck/Car, 1 - Motorcycle, 2 - Bicycle' format: int32 nullable: true example: 1 EmissionCo2: maximum: 50000 minimum: 0 type: integer description: Vehicle emission g/km or g/mile format: int32 nullable: true example: 250 additionalProperties: false description: '"*" - required fields' xml: name: NewVehicle UpdateVehicle: type: object properties: Id: type: integer description: Track-POD unique identifier format: int32 example: 2341 Number: maxLength: 30 minLength: 0 type: string description: "Required (*) \n\nNumber" nullable: true example: XXX777 CarrierCode: maxLength: 255 minLength: 0 type: string description: Carrier Code nullable: true example: 31 Carrier: maxLength: 255 minLength: 0 type: string description: Carrier nullable: true example: Big Logistics Weight: maximum: 100000000 minimum: 0 type: number description: Capacity Weight format: double nullable: true example: 100 Volume: maximum: 100000000 minimum: 0 type: number description: Capacity Volume format: double nullable: true example: 14.5 Pallets: maximum: 100000000 minimum: 0 type: number description: Capacity Pallets format: double nullable: true example: 16 DriverId: type: string description: "Required (*) \n\nDriver's Track-POD unique identifier (DriverId or DriverUsername is Required)" format: uuid nullable: true example: 00000000-0000-0000-0000-000000000000 DriverUsername: type: string description: "Required (*) \n\nDriver's username (DriverId or DriverUsername is Required)" nullable: true example: MyDriver DepotId: maxLength: 50 minLength: 0 type: string description: "Required (*) \n\nUnique identifier in user accounting system (DepotId or Depot is Required)" nullable: true example: 1 Depot: maxLength: 255 minLength: 0 type: string description: "Required (*) \n\nDepot address (DepotId or Depot is Required)" nullable: true example: '9 Riverside, Salford M7 1PA ' MaxNodes: maximum: 200 minimum: 0 type: integer description: Maximum number of sites/orders format: int32 nullable: true example: 5 MaxWorkTime: maximum: 480 minimum: 0 type: integer description: Maximum work time, h format: int32 nullable: true example: 8 MaxDistance: maximum: 10000 minimum: 0 type: integer description: Maximum distance, km format: int32 nullable: true example: 1000 SpeedRatio: type: number description: 'Speed ratio restriction (should be grater than 0 and less or equal 2)' format: double nullable: true example: 1 CostPerDistance: maximum: 1000000 minimum: 0 type: number description: Cost per distance (km) format: double nullable: true example: 1.1 CostPerHour: maximum: 1000000 minimum: 0 type: number description: Cost per hour format: double nullable: true example: 10 BaseFare: maximum: 1000000 minimum: 0 type: number description: Base fare format: double nullable: true example: 0 StartTime: type: string description: Start time format: date-span nullable: true example: 08:00:00 VehicleType: maximum: 2 minimum: 0 type: integer description: 'Vehicle type: 0 - Truck/Car, 1 - Motorcycle, 2 - Bicycle' format: int32 nullable: true example: 1 EmissionCo2: maximum: 50000 minimum: 0 type: integer description: Vehicle emission g/km or g/mile format: int32 nullable: true example: 250 additionalProperties: false xml: name: UpdateVehicle ApiResponse: type: object properties: Status: type: integer description: The HTTP status code for the response format: int32 nullable: true Title: type: string description: A short, human-readable summary of the response nullable: true Detail: type: string description: A human-readable explanation specific to this response. nullable: true additionalProperties: false description: 'Object for all API responses, except GET (status code: 200)' xml: name: ApiResponse securitySchemes: ApiKey: type: apiKey description: Please enter API key into field name: X-API-KEY in: header