A fare table holds the price(s) that a product references. A flat price is a table with a single selector-less entry; per-zone or per-distance pricing use the same shape with selector fields filled in. The table is versioned independently of the products that reference it.
Create a new fare table
Create a new fare table. A new version will be created with version number 1.
All prices in products-api are stored as a fare table — a flat price is a table with a single selector-less entry. The table is versioned independently of the products that reference it.
Only flat pricing is implemented: prices carry no zone or interval selectors, optionally
differentiated by userProfile. Zone-pair and interval selectors are documented on
FarePriceEntry and return 400 PRICE_MODEL_NOT_IMPLEMENTED until built.
Headers
ET-Client-NameEntur Client Header.
It is required that all consumers identify themselves by using this header.
Entur will deploy strict rate-limiting policies on API-consumers who do not identify with a header and reserves the right to block unidentified consumers.
The structure of ET-Client-Name should be: <company>-<application>.
X-Correlation-IdCorrelation id
Create a new fare table › Request Body
startDateFirst day this price version is valid.
statusStatus of the fare table version. Required; on create only DRAFT or PROPOSED is accepted — a new version cannot be published directly.
- DRAFT - Under construction and not ready for operational use.
- PROPOSED - Complete but pending review and approval.
- VERSIONED - Finalized and frozen; a new version must be created for further modifications. Remains authoritative for its validity period even after expiry.
- DEPRECATED - Explicitly withdrawn and should not be used; indicates an active decision to retract, not a natural expiry.
The prices in this table. Each entry must be uniquely identified by its selector
combination, so a flat price with no passenger-type differentiation is a single
selector-less entry. Each entry carries its own optional currency, per NeTEx.
ownerOrganisationIdInternal id of the organisation that owns this element. Omit it to use the organisation in the access token, which is what a caller acting for itself should do. Supplying a different organisation requires permission to act on behalf of that organisation.
endDateLast day this price version is valid (optional). Omit for an open-ended version.
Create a new fare table › Responses
Fare table created successfully
id^([A-Z]{3}):FareTabl… · requiredNeTEx id of the fare table.
versionId^([A-Z]{3}):Version:… · requiredNeTEx id of this fare table version.
ownerOrganisationIdInternal id of the organisation that owns this fare table.
startDateFirst day this price version is valid.
statusStatus of the fare table version.
- DRAFT - Under construction and not ready for operational use.
- PROPOSED - Complete but pending review and approval.
- VERSIONED - Finalized and frozen; a new version must be created for further modifications. Remains authoritative for its validity period even after expiry.
- DEPRECATED - Explicitly withdrawn and should not be used; indicates an active decision to retract, not a natural expiry.
The prices in this table. Each entry echoes its own currency, per NeTEx
FarePrice.Currency.
endDateLast day this price version is valid (optional). Omit for an open-ended version.
pricesForNeTEx ids of the priceable objects (e.g. supplement products) this fare table prices —
NeTEx FareTable.pricesFor.
The FareTable → PriceableObject link is deliberately loose: a versioned fare table prices a priceable object by netex id only, never pinned to a specific priceable object version. Version resolution happens later, when the product tree is built.
Get the active version of a fare table
Retrieve the version of the fare table that is active on the given date. Defaults to the version active today when no date is given.
path Parameters
id^([A-Z]{3}):([A-Za-z… · required · style: simpleThe netex ID of the element to retrieve
query Parameters
validOnDateThe date that the element should be valid for, e.g. the travel date. Defaults to the current date.
Headers
ET-Client-NameEntur Client Header.
It is required that all consumers identify themselves by using this header.
Entur will deploy strict rate-limiting policies on API-consumers who do not identify with a header and reserves the right to block unidentified consumers.
The structure of ET-Client-Name should be: <company>-<application>.
X-Correlation-IdCorrelation id
Get the active version of a fare table › Responses
The fare table version active on the given date.
id^([A-Z]{3}):FareTabl… · requiredNeTEx id of the fare table.
versionId^([A-Z]{3}):Version:… · requiredNeTEx id of this fare table version.
ownerOrganisationIdInternal id of the organisation that owns this fare table.
startDateFirst day this price version is valid.
statusStatus of the fare table version.
- DRAFT - Under construction and not ready for operational use.
- PROPOSED - Complete but pending review and approval.
- VERSIONED - Finalized and frozen; a new version must be created for further modifications. Remains authoritative for its validity period even after expiry.
- DEPRECATED - Explicitly withdrawn and should not be used; indicates an active decision to retract, not a natural expiry.
The prices in this table. Each entry echoes its own currency, per NeTEx
FarePrice.Currency.
endDateLast day this price version is valid (optional). Omit for an open-ended version.
pricesForNeTEx ids of the priceable objects (e.g. supplement products) this fare table prices —
NeTEx FareTable.pricesFor.
The FareTable → PriceableObject link is deliberately loose: a versioned fare table prices a priceable object by netex id only, never pinned to a specific priceable object version. Version resolution happens later, when the product tree is built.
Create a new version of an existing fare table
Create a new version of an existing fare table — this is how a price changes. The referencing products are not modified: they point at the table's id, and the effective version is resolved by validity period.
path Parameters
id^([A-Z]{3}):([A-Za-z… · required · style: simpleThe netex ID of the element to retrieve
Headers
ET-Client-NameEntur Client Header.
It is required that all consumers identify themselves by using this header.
Entur will deploy strict rate-limiting policies on API-consumers who do not identify with a header and reserves the right to block unidentified consumers.
The structure of ET-Client-Name should be: <company>-<application>.
X-Correlation-IdCorrelation id
Create a new version of an existing fare table › Request Body
startDateFirst day this price version is valid.
statusStatus of the fare table version. Required; on create only DRAFT or PROPOSED is accepted — a new version cannot be published directly.
- DRAFT - Under construction and not ready for operational use.
- PROPOSED - Complete but pending review and approval.
- VERSIONED - Finalized and frozen; a new version must be created for further modifications. Remains authoritative for its validity period even after expiry.
- DEPRECATED - Explicitly withdrawn and should not be used; indicates an active decision to retract, not a natural expiry.
The prices in this table. Each entry must be uniquely identified by its selector
combination, so a flat price with no passenger-type differentiation is a single
selector-less entry. Each entry carries its own optional currency, per NeTEx.
ownerOrganisationIdInternal id of the organisation that owns this element. Omit it to use the organisation in the access token, which is what a caller acting for itself should do. Supplying a different organisation requires permission to act on behalf of that organisation.
endDateLast day this price version is valid (optional). Omit for an open-ended version.
Create a new version of an existing fare table › Responses
Fare table version created successfully
id^([A-Z]{3}):FareTabl… · requiredNeTEx id of the fare table.
versionId^([A-Z]{3}):Version:… · requiredNeTEx id of this fare table version.
ownerOrganisationIdInternal id of the organisation that owns this fare table.
startDateFirst day this price version is valid.
statusStatus of the fare table version.
- DRAFT - Under construction and not ready for operational use.
- PROPOSED - Complete but pending review and approval.
- VERSIONED - Finalized and frozen; a new version must be created for further modifications. Remains authoritative for its validity period even after expiry.
- DEPRECATED - Explicitly withdrawn and should not be used; indicates an active decision to retract, not a natural expiry.
The prices in this table. Each entry echoes its own currency, per NeTEx
FarePrice.Currency.
endDateLast day this price version is valid (optional). Omit for an open-ended version.
pricesForNeTEx ids of the priceable objects (e.g. supplement products) this fare table prices —
NeTEx FareTable.pricesFor.
The FareTable → PriceableObject link is deliberately loose: a versioned fare table prices a priceable object by netex id only, never pinned to a specific priceable object version. Version resolution happens later, when the product tree is built.
Get a specific fare table version
Retrieve the complete fare table for a specific version, identified by NeTEx version id or version number.
path Parameters
id^([A-Z]{3}):([A-Za-z… · required · style: simpleThe netex ID of the element to retrieve
version^(([A-Z]{3}):Version… · required · style: simpleThe netex ID or sequence number of the version to retrieve
Headers
ET-Client-NameEntur Client Header.
It is required that all consumers identify themselves by using this header.
Entur will deploy strict rate-limiting policies on API-consumers who do not identify with a header and reserves the right to block unidentified consumers.
The structure of ET-Client-Name should be: <company>-<application>.
X-Correlation-IdCorrelation id
Get a specific fare table version › Responses
The fare table version
id^([A-Z]{3}):FareTabl… · requiredNeTEx id of the fare table.
versionId^([A-Z]{3}):Version:… · requiredNeTEx id of this fare table version.
ownerOrganisationIdInternal id of the organisation that owns this fare table.
startDateFirst day this price version is valid.
statusStatus of the fare table version.
- DRAFT - Under construction and not ready for operational use.
- PROPOSED - Complete but pending review and approval.
- VERSIONED - Finalized and frozen; a new version must be created for further modifications. Remains authoritative for its validity period even after expiry.
- DEPRECATED - Explicitly withdrawn and should not be used; indicates an active decision to retract, not a natural expiry.
The prices in this table. Each entry echoes its own currency, per NeTEx
FarePrice.Currency.
endDateLast day this price version is valid (optional). Omit for an open-ended version.
pricesForNeTEx ids of the priceable objects (e.g. supplement products) this fare table prices —
NeTEx FareTable.pricesFor.
The FareTable → PriceableObject link is deliberately loose: a versioned fare table prices a priceable object by netex id only, never pinned to a specific priceable object version. Version resolution happens later, when the product tree is built.
Update an existing fare table version
Update the version of a fare table in place. The version will not be active until a start date is set and the version is published.
path Parameters
id^([A-Z]{3}):([A-Za-z… · required · style: simpleThe netex ID of the element to retrieve
version^(([A-Z]{3}):Version… · required · style: simpleThe netex ID or sequence number of the version to retrieve
Headers
ET-Client-NameEntur Client Header.
It is required that all consumers identify themselves by using this header.
Entur will deploy strict rate-limiting policies on API-consumers who do not identify with a header and reserves the right to block unidentified consumers.
The structure of ET-Client-Name should be: <company>-<application>.
X-Correlation-IdCorrelation id
Update an existing fare table version › Request Body
startDateFirst day this price version is valid.
statusStatus of the fare table version. Required; on create only DRAFT or PROPOSED is accepted — a new version cannot be published directly.
- DRAFT - Under construction and not ready for operational use.
- PROPOSED - Complete but pending review and approval.
- VERSIONED - Finalized and frozen; a new version must be created for further modifications. Remains authoritative for its validity period even after expiry.
- DEPRECATED - Explicitly withdrawn and should not be used; indicates an active decision to retract, not a natural expiry.
The prices in this table. Each entry must be uniquely identified by its selector
combination, so a flat price with no passenger-type differentiation is a single
selector-less entry. Each entry carries its own optional currency, per NeTEx.
ownerOrganisationIdInternal id of the organisation that owns this element. Omit it to use the organisation in the access token, which is what a caller acting for itself should do. Supplying a different organisation requires permission to act on behalf of that organisation.
endDateLast day this price version is valid (optional). Omit for an open-ended version.
Update an existing fare table version › Responses
Fare table version updated successfully
id^([A-Z]{3}):FareTabl… · requiredNeTEx id of the fare table.
versionId^([A-Z]{3}):Version:… · requiredNeTEx id of this fare table version.
ownerOrganisationIdInternal id of the organisation that owns this fare table.
startDateFirst day this price version is valid.
statusStatus of the fare table version.
- DRAFT - Under construction and not ready for operational use.
- PROPOSED - Complete but pending review and approval.
- VERSIONED - Finalized and frozen; a new version must be created for further modifications. Remains authoritative for its validity period even after expiry.
- DEPRECATED - Explicitly withdrawn and should not be used; indicates an active decision to retract, not a natural expiry.
The prices in this table. Each entry echoes its own currency, per NeTEx
FarePrice.Currency.
endDateLast day this price version is valid (optional). Omit for an open-ended version.
pricesForNeTEx ids of the priceable objects (e.g. supplement products) this fare table prices —
NeTEx FareTable.pricesFor.
The FareTable → PriceableObject link is deliberately loose: a versioned fare table prices a priceable object by netex id only, never pinned to a specific priceable object version. Version resolution happens later, when the product tree is built.