TFS API Endpoints Reference

Version: 1

Base URL: https://tfs.system.trans.eu/api/rest/v1

Resources

TFS

Get dedicated order

Scopes

  • tfs.dedicated-orders.basic.read

Endpoint

GET /dedicated-orders/{order-id}

Query parameters

Param Type Description Required
order-id String Order identifier received with POST response in id field yes

Responses

Http status Description
200 Returned the dedicated order entity
400 Bad request
401 Unauthorized
403 Forbidden (i.e. wrong or missing access token)
404 Dedicated order not found
500 Internal Server Error

Response data structure

Property Type Description
id String Unique order id (as UUID)
number String Assigned order number (unique in scope of company)
status String {pending,accepted}
route Object (Route) Route details
payment Object (Payment) Payment details
carrier Object (Contractor) Carrier details
shipper Object (Contractor) Shipper details
loads Array (of Load) Loads details
_links Object External resources references

Route object structure

Field Type Description
events Array (of RouteEvent) Sorted list of route events

RouteEvent object structure

Field Type Description
place Object (Place) Details of event place
type Enum Event type.
Possible values: loading, unloading

Place object structure

Field Type Description
address Object (Address) Address details

Address object structure

Field Type Description
locality String City name
postal_code String Postal code
country String Country code in format ISO 3166-1 alpha-2

Payment object structure

Field Type Description
price Object (Price) Price definition
date_interval String Payment date interval in days, ISO 8601 formatted (see PHP DateInterval for more information)

Price object structure

Field Type Description
value Number Price value
currency String Price currency (ISO 4217)

Contractor object structure

Field Type Description
company Object (Company) Contractor company details
contact_person Object (ContactPerson) Contact person details

Company object structure

Field Type Description
name String Company name
vat_id String Company VAT id
address Object (Address) Company address details

ContactPerson object structure

Field Type Description
given_name String Person's given name
family_name String Person's last name
email String E-mail address
telephone String Telephone number in format: (XX) XXXXXXXXX

Load object structure

Field Type Description
weight Object (Weight) Load weight details

Weight object structure

Field Type Description
value Number Weight value
unit String Weight unit
Possible values: TNE (tons)

Example

GET /api/rest/v1/dedicated-orders/123e4567-e89b-12d3-a456-426655440000 HTTP/1.1
Host: tfs.system.trans.eu
Accept: application/hal+json
Authorization: Bearer {access_token}
HTTP/1.1 200 OK
Content-Type: application/hal+json

{
    "id": "123e4567-e89b-12d3-a456-426655440000",
    "number": "PL/2016/05/05/1234",
    "route": {
        "events": [
            {
                "place": {
                    "address": {
                        "locality": "Wrocław",
                        "postal_code": "12-345",
                        "country": "PL"
                    }
                },
                "type": "loading"
            },
            {
                "place": {
                    "address": {
                        "locality": "Warszawa",
                        "postal_code": "54-321",
                        "country": "PL"
                    }
                },
                "type": "unloading"
            }
        ]
    },
    "payment": {
        "price": {
            "value": 50,
            "currency": "PLN"
        },
        "date_interval": "P10D"
    },
    "loads" : [
        {
            "weight" : {
                "value" : 23,
                "unit" : "T"
            }
        },
        {
            "weight" : {
                "value" : 4,
                "unit" : "T"
            }
        }
    ],
    "_links": {
        "self": {
            "href": "https://tfs.system.trans.eu/api/rest/v1/dedicated-orders/123e4567-e89b-12d3-a456-426655440000"
        }
    }
}

Dedicated Orders

Add dedicated order

Scopes

  • tfs.dedicated-orders.basic.create

Endpoint

POST /dedicated-orders

Request body data

Param Type Description Required
number String Order number (unique in scope of your company) yes
payment Object (Payment) Payment details yes
route Object (Route) Route details yes
carrier Object (Contractor) Carrier details no
loads Array (of Load) Loads details no

Payment object structure

Field Type Description Required
price Object (Price) Price definition yes
date_interval String Payment date interval (in days, ISO 8601 formatted - see PHP DateInterval for more information) yes

Price object structure

Field Type Description Required
value Number Price value (positive number) yes
currency String (Currency) Price currency (ISO 4217) yes

Contractor object structure

Field Type Description Required
company Object (Company) Contractor company details no
contact_person Object (ContactPerson) Contractor contact person details no

Company object structure

Field Type Description Required
name String Company name yes
vat_id String Company VAT id no
address Object (Address) Company address details no

Address object structure

Field Type Description Required
locality String City name yes
postal_code String Postal code yes
country String Country code in format ISO 3166-1 alpha-2
Example: PL
yes

ContactPerson object structure

Field Type Description Required
given_name String Person's first name yes
family_name String Person's last name yes
email String E-mail address yes
telephone String Phone number in format: (XX) XXXXXXXXX no

Route object structure

Field Type Description Required
events Array (of RouteEvent) Array with route events yes

RouteEvent object structure

Field Type Description Required
place Object (Place) Details of event place yes
type String Event type.
Possible values: loading, unloading
yes

Place object structure

Field Type Description Required
address Object (Address) Address details yes

Load object structure

Field Type Description Required
weight Object (Weight) Load weight details yes

Weight object structure

Field Type Description Required
value Number Weight value yes
unit String Weight unit
Possible values: TNE (tons)
yes

Supported Currency list

Value (code) Currency name
BAM Bosnia and Herzegovina Convertible Mark
BGN Bulgarian Lev
BYR Belarussan Ruble
CHF Swiss Franc
CZK Czech Koruna
DKK Danish Krone
EUR European Euro
GBP Pound Sterling
HRK Croatian Kuna
HUF Hungarian Forint
ISK Icelandic Krona
KZT Kazakhstani Tenge
MDL Moldovan Leu
MKD Macedonian Denar
NOK Norwegian Krone
PLN Polish Zloty
RON Romanian Leu
RSD Serbian Dinar
RUB Russian Ruble
SEK Swedish Krone
TRY Turkish Lira
UAH Ukrainian Hryvnia
USD US Dollars

Responses

Http status Description
201 Created and returned the order entity
400 Bad request
401 Unauthorized
403 Forbidden (i.e. wrong or missing access token)
422 Unprocessable entity (i.e. invalid or missing request parameter)
500 Internal Server Error

Example

POST /api/rest/v1/dedicated-orders HTTP/1.1
Host: tfs.system.trans.eu
Accept: application/hal+json
Content-Type: application/json
Authorization: Bearer {access_token}

{
    "number": "DE/3455/4460",
    "route" : {
        "events": [
            {
                "place": {
                    "address": {
                        "locality": "Berlin",
                        "postal_code": "3456",
                        "country": "DE"
                    }
                },
                "type": "loading"
            },
            {
                "place": {
                    "address": {
                        "locality": "Wysoka",
                        "postal_code": "12345",
                        "country": "PL"
                    }
                },
                "type": "unloading"
            }
        ]
    },
    "payment": {
        "price": {
            "value": 34,
            "currency": "PLN"
        },
        "date_interval": "P10D"
    },  
    "loads" : [
        {
            "weight" : {
                "value" : 13,
                "unit" : "T"
            }
        },
        {
            "weight" : {
                "value" : 14,
                "unit" : "T"
            }
        }
    ]   
}
HTTP/1.1 201 Created
Content-Type: application/hal+json

{
    "id": "56acf700-1774-11e6-8ab6-0002a5d5c51b",
    ...
}

POST response data structure is identical to GET response structure.