Download details of selected negotiation offer for freight publication.
Once the carrier has started the negotiation with you, you can check the current negotiation status and its history. Data is also available for offers of accepted and archived freights.
The offers-id identification number in request can be taken from the response of Get freight offer list request.
GET
/ext/freights-api/v1/freights/offers/{offers-id}
Request Authorization
Every request MUST include a valid access token obtained during the user authorization process, provided using the Bearer token scheme in the Authorization header.
Request
Successful Response
Error Response
Request Header
GET /ext/freights-api/v1/freights/offers/{offer-id} HTTP/1.1
Host: api.platform.trans.eu
Content-Type: application/json
Accept: application/json
Authorization: Bearer {access_token)
Api-key: {unique_app_api-key}Response Fields
| Attribute | Type | Example | Description |
| carrier | Object | The carrier’s company responding to the offer | |
| carrier.address | Object | Carrier’s company address | |
| carrier.address.country | String | “de” | Country using ISO values (see dictionary) |
| carrier.address.locality | String | “Berlin” | City name |
| carrier.address.postal_code | String | “09230” | Postal code |
| carrier.address.street | String | “Magazinstrasse” | Street name |
| carrier.company_id | Int | 1013454 | Carrier’s company Trans.eu officeId |
| carrier.email | String | mmiller@company.com | Carrier’s company e‑mail address |
| carrier.legal_name | String | “Company GmbH” | Carrier’s company name |
| carrier.telephone | String | “0049 301234567” | Carrier’s company telephone number |
| carrier.vat_id | String | “DE999999999” | Carrier’s company vat id |
| contact_employees | Array of Object | List of carrier’s employees assigned to freight negotiation | |
| contact_employees.last_name | String | “Miller” | Surname of assigned employee |
| contact_employees.name | String | “Max” | First name of assigned employee |
| contact_employees.trans_id | String | 1013454–2 | TransId of assigned employee |
| id | String | e9db1379-b172-4506–8d5b-531b82a99703 | Freight offer identifier |
| negotiations_logs | Array of Object | List of price changes with additional details, chronologically descending. | |
| negotiations_logs.action | String | “NEGOTIATION_PARTICIPANT_OFFER” | Negotiation action type — see list of values. |
| negotiations_logs.carrier_offer_expiration_date | String | null | Date and time of offer expiration |
| negotiations_logs.comment | String | null | Additional comment, posted as “requirements” during offer creation |
| negotiations_logs.created_at | String | “2026–03-04T07:51:46.181Z” | Date and time the offer was created |
| negotiations_logs.created_by | Object | Details of user submitting the offer | |
| negotiations_logs.created_by.email | String | maxmiller@company.com | User email address |
| negotiations_logs.created_by.family_name | String | “Miller” | User name |
| negotiations_logs.created_by.given_name | String | “Max” | User surname |
| negotiations_logs.created_by.id | Int | 759284 | User account id |
| negotiations_logs.created_by.telephone | String | “0049 301234567” | User telephone number |
| negotiations_logs.created_by.trans.id | String | “1013454–2” | User TransId |
| negotiations_logs.created_by_company_id | Int | 1013454 | User’s company officeId |
| negotiations_logs.id | String | e9db1379-b172-4506–8d5b-531b82a99703 | Freight offer identifier |
| negotiations_logs.is_shipper | Boolean | False | Value set to true if offer was sent by shipper |
| negotiations_logs.price | Object | Offer price of negotation action | |
| negotiations_logs.price.currency | String | “eur” | Price currency |
| negotiations_logs.price.value | Float | “600” | Price value |
| negotiations_logs.proposal_request_id | Int | 0 | Deprecated field. Always is 0. |
| offer_expiration_date | String | Date and time of publisher’s offer expiration | |
| price | Object | Current offer price | |
| price.currency | String | “eur” | Offer price currency |
| price.value | Float | 450 | Offer price value |
| status | String | “negotiation” | Offer negotiation status. |
| version | Int | 3 | Version of negotiation offer. The next call in this negotiation should have this number. |
Negotiations action types
The shipper company is an owner of freight publication.
The carrier company is the participant to the negotiations.
| Negotiation action | Description |
| NEGOTIATION_CREATED | The negotiations have started. |
| NEGOTIATION_OWNER_ACCEPT | A user from the shipper’s company accepted the offer |
| NEGOTIATION_OWNER_OFFER | A user from the shipper’s company submitted an offer |
| NEGOTIATION_OWNER_REJECT | A user from the shipper’s company rejected the offer and finished the negotiations. Both users will no longer be able to participate in negotiations for this freight. |
| NEGOTIATION_OWNER_RENOUNCE | A user from the shipper’s company rejected the offer. Negotiations can start again. |
| NEGOTIATION_OWNER_WITHDRAW | A user from the shipper’s company withdrew their last offer |
| NEGOTIATION_PARTICIPANT_ACCEPT | A user from the carrier’s company accepted the offer |
| NEGOTIATION_PARTICIPANT_OFFER | A user from the carrier’s company submitted an offer |
| NEGOTIATION_PARTICIPANT_REJECT | A user from the carrier’s company rejected the offer and finished the negotiations. Both users will no longer be able to participate in negotiations for this freight. |
| NEGOTIATION_PARTICIPANT_RENOUNCE | A user from the shipper’s company rejected the offer. Negotiations can start again. |
| NEGOTIATION_PARTICIPANT_WITHDRAW | A user from the carrier’s company withdrew their last offer |
| NEGOTIATION_WAS_TAKEN_OVER | A user from the shipper’s company took over the negotiation |
Response Body
{
"carrier": {
"address": {
"country": "DE",
"locality": "Berlin",
"postal_code": "09230",
"street": "Magazinstrasse"
},
"company_id": 1013454,
"email": "mmiller@company.com",
"legal_name": "Company GmbH",
"telephone": "0049 301234567",
"vat_id": "DE99999999"
},
"contact_employees": [
{
"last_name": "Miller",
"name": "Max",
"trans_id": "1013865-1"
}
],
"id": "e15d98f9-aebf-4812-b0c5-e441222ec833",
"negotiations_logs": [
{
"action": "NEGOTIATION_OWNER_ACCEPT",
"carrier_offer_expiration_date": null,
"comment": null,
"created_at": "2026-03-17T09:37:16.832Z",
"created_by": {
"email": "jkowalski@example.com",
"family_name": "Kowalski",
"given_name": "Jan",
"id": 765361,
"telephone": null,
"trans_id": "1007374-5"
},
"created_by_company_id": 1007374,
"id": "e15d98f9-aebf-4812-b0c5-e441222ec833",
"is_shipper": true,
"price": {
"currency": "eur",
"value": 230
},
"proposal_request_id": 0
},
{
"action": "NEGOTIATION_PARTICIPANT_OFFER",
"carrier_offer_expiration_date": null,
"comment": null,
"created_at": "2026-03-17T09:36:49.939Z",
"created_by": {
"email": "mmiller@company.com",
"family_name": "Miller",
"given_name": "Max",
"id": 759284,
"telephone": "0049 301234567",
"trans_id": "1013454-2"
},
"created_by_company_id": 1013454,
"id": "e15d98f9-aebf-4812-b0c5-e441222ec833",
"is_shipper": false,
"price": {
"currency": "eur",
"value": 230
},
"proposal_request_id": 0
},
{
"action": "NEGOTIATION_CREATED",
"carrier_offer_expiration_date": null,
"comment": null,
"created_at": "2026-03-17T09:36:49.939Z",
"created_by": {
"email": "jkowalski@example.com",
"family_name": "Kowalski",
"given_name": "Jan",
"id": 765361,
"telephone": null,
"trans_id": "1007374-5"
},
"created_by_company_id": 1007374,
"id": "e15d98f9-aebf-4812-b0c5-e441222ec833",
"is_shipper": true,
"price": {
"currency": "pln",
"value": null
},
"proposal_request_id": 0
}
],
"offer_expiration_date": null,
"price": {
"currency": "eur",
"value": 230
},
"status": "acceptation",
"version": 3
}Client errors (code 400)
HTTP 4xx status codes indicate client errors, meaning that the request could not be processed due to an issue on the client side. Below is a list of request-specific errors.
Example error 1
Offer does not exists or no access
{
"detail": "Negotiation read model not found",
"status": 404,
"title": "Not Found",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}Example error 2
The offer belongs to another employee of your company
{
"detail": "Access to freight forbidden (freight: 3824585, employee: 765361)",
"status": 403,
"title": "Forbidden",
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"
}