Entur Inventory Admin API

The Inventory Admin API from Entur — 9 operation(s) for inventory admin.

Operations 21

GET /v1/quotas Get quota(s) #
PUT /v1/quotas Overwrite quota(s) #
POST /v1/quotas Create quota(s) #
GET /v1/quotas/{quotaId} Get quota #
PUT /v1/quotas/{quotaId} Update quota #
DELETE /v1/quotas/{quotaId} Delete quota #
GET /v1/quota-templates Get quota templates for a line #
POST /v1/quota-templates Create quota template #
GET /v1/quota-templates/{id} Get quota template by id #
PUT /v1/quota-templates/{id} Update quota template #
DELETE /v1/quota-templates/{id} Delete quota template #
GET /v1/quota-configurations/{id} Get quota configuration #
PUT /v1/quota-configurations/{id} Update quota configuration #
DELETE /v1/quota-configurations/{id} Delete quota configuration #
GET /v1/dated-service-journeys/{id} Get a departure #
PATCH /v1/dated-service-journeys/{id} Update a departure #
GET /v1/quota-configurations Get quota configurations #
POST /v1/quota-configurations Create quota configuration #
GET /v1/nesting-config-tree Get nesting config trees #
POST /v1/nesting-config-tree Create/Update a nesting config tree #
POST /v1/dated-service-journeys/{departureId}/refresh Refresh departure with live journey data #

Specifications

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-partner-dataset-rpt-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-partner-dataset-download-job-dto-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-partner-settlement-import-dto-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-partner-settlement-import-response-dto-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-given-consent-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-consent-crm-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-consent-base-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-given-consent-bulk-update-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-given-consent-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-consent-base-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-customer-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-temporary-customer-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-customer-post-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-customer-put-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-ecard-ownership-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-temporary-customer-post-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-result-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-quota-request-v1-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-quota-configuration-response-v1-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-quota-response-v1-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-reservation-response-v1-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-quota-configuration-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-multi-stock-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-search-geo-location-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-search-authority-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-search-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-search-trip-pattern-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-collection-info-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-customer-input-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-search-offer-input-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-subscriber-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-extend-expiry-time-input-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-update-traveller-input-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-order-note-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-order-note-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-page-of-order-note-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-order-line-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-order-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-fee-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-order-create-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-order-line-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-order-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-payment-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-transaction-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-credit-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-transaction-import-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-transaction-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-terminal-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-program-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-transaction-by-order-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-current-level-summary-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-current-level-summary-query-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-point-period-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-customer-membership-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-employee-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-imported-employee-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-imported-employee-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-contract-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-imported-employee-merge-patch-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-entitlement-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-zonal-stop-place-distance-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-fare-zone-distance-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-fare-zone-distance-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-coordinate-distance-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-distance-calculation-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-fare-table-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-fare-table-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-version-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-version-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-purchase-window-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-purchase-window-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-purchase-window-list-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-supplement-product-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-supplement-product-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-sales-offer-package-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-sales-offer-package-publication-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-sales-offer-package-assignment-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-supplement-product-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-generic-parameter-assignment-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-exchanging-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-amount-of-price-unit-product-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-capped-discount-right-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-sale-discount-right-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-netex-import-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-send-receipt-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-user-receipt-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-receipt-type-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-refund-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-refund-option-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-dry-run-refund-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-compensation-operation-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-refund-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-compensation-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-change-order-lines-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-order-line-ids-and-reservation-ids-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-reserve-offers-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-add-supplement-products-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-reserve-third-party-products-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-reserve-third-party-products-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-seating-offer-debug-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-rebooked-reservation-response-v1-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-rebooked-reservation-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-reservation-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-seating-offer-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-reservation-line-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-reserve-specific-seats-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-map-string-string-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-seq-cancel-seat-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-seq-companion-for-seat-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-seq-journey-query-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-seq-product-attribute-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-asset-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-booking-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-support-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-one-stop-booking-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-one-stop-booking-event-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-notification-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-post-skoleskyss-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-post-skoleskyss-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/entur/refs/heads/main/json-schema/entur-delete-skoleskyss-response-schema.json

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/entur:entur-inventory-admin-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

entur-inventory-admin-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Entur Inventory Admin API
  version: 2026.09.0
  contact:
    name: Entur Team Varelager
  description: 'Operations tagged Inventory Admin across 2 of this provider''s published API definitions: entur-inventory-openapi.json, entur-inventory-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.entur.io/inventory
security:
- bearer-key: []
tags:
- name: Inventory Admin
paths:
  /v1/quotas:
    parameters:
    - $ref: '#/components/parameters/ET-Client-Name'
    - $ref: '#/components/parameters/X-Correlation-Id'
    get:
      tags:
      - Inventory Admin
      summary: Get quota(s)
      description: Retrieve quota(s) for a service journey
      operationId: getQuotaOnDeparture
      parameters:
      - name: datedServiceJourney
        in: query
        description: Id for the dated service journey
        required: true
        style: form
        explode: true
        schema:
          type: string
      - name: product
        in: query
        description: Navn product
        required: false
        style: form
        explode: true
        schema:
          type: string
      - name: origin
        in: query
        description: Navn origin
        required: false
        style: form
        explode: true
        schema:
          type: string
      - name: destination
        in: query
        description: Navn destination
        required: false
        style: form
        explode: true
        schema:
          type: string
      - name: quotaConfigId
        in: query
        description: Id for quotaconfig
        required: false
        style: form
        explode: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/QuotaResponseV1'
    put:
      tags:
      - Inventory Admin
      summary: Overwrite quota(s)
      description: Overwrite quota(s) for a dated service journey
      operationId: updateQuotasOnDeparture
      parameters:
      - name: datedServiceJourney
        in: query
        description: The departure ID (dated service journey) to overwrite quotas for
        required: true
        style: form
        explode: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              type: array
              description: List of quotas to update for a dated service journey
              items:
                $ref: '#/components/schemas/UpdateQuotaRequestV1'
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/QuotaResponseV1'
    post:
      tags:
      - Inventory Admin
      summary: Create quota(s)
      description: Create quota(s) for a service journey
      operationId: postQuotasOnDeparture
      requestBody:
        content:
          application/json:
            schema:
              type: array
              description: List of quotas to create
              items:
                $ref: '#/components/schemas/QuotaRequestV1'
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/QuotaResponseV1'
    servers:
    - url: https://api.entur.io/inventory
  /v1/quotas/{quotaId}:
    parameters:
    - $ref: '#/components/parameters/ET-Client-Name'
    - $ref: '#/components/parameters/X-Correlation-Id'
    get:
      tags:
      - Inventory Admin
      summary: Get quota
      description: Retrieve quota by ID
      operationId: getQuotaById
      parameters:
      - name: quotaId
        in: path
        description: Id for the quota
        required: true
        style: simple
        explode: false
        schema:
          type: integer
          format: int64
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuotaResponseV1'
    put:
      tags:
      - Inventory Admin
      summary: Update quota
      description: Updates a quota for a service journey
      operationId: putQuotaOnDeparture
      parameters:
      - name: quotaId
        in: path
        description: ID for the quota
        required: true
        style: simple
        explode: false
        schema:
          type: integer
          format: int64
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateQuotaRequestV1'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuotaResponseV1'
    delete:
      tags:
      - Inventory Admin
      summary: Delete quota
      description: Delete quota by ID
      operationId: deleteQuotaById
      parameters:
      - name: quotaId
        in: path
        description: Id for the quota
        required: true
        style: simple
        explode: false
        schema:
          type: integer
          format: int64
      responses:
        '204':
          description: No Content
    servers:
    - url: https://api.entur.io/inventory
  /v1/quota-templates:
    parameters:
    - $ref: '#/components/parameters/ET-Client-Name'
    - $ref: '#/components/parameters/X-Correlation-Id'
    get:
      tags:
      - Inventory Admin
      summary: Get quota templates for a line
      description: Retrieve all quota templates for a given line
      operationId: getQuotaTemplates
      parameters:
      - name: lineId
        in: query
        description: Id of the line to get quota templates for
        required: true
        style: form
        explode: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/QuotaTemplateResponseV1'
    post:
      tags:
      - Inventory Admin
      summary: Create quota template
      description: Create a new quota template for a line
      operationId: createQuotaTemplate
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/QuotaTemplateRequestV1'
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuotaTemplateResponseV1'
    servers:
    - url: https://api.entur.io/inventory
  /v1/quota-templates/{id}:
    parameters:
    - $ref: '#/components/parameters/ET-Client-Name'
    - $ref: '#/components/parameters/X-Correlation-Id'
    get:
      tags:
      - Inventory Admin
      summary: Get quota template by id
      description: Retrieve a quota template by its ID
      operationId: getQuotaTemplate
      parameters:
      - name: id
        in: path
        description: Id of the quota template
        required: true
        style: simple
        explode: false
        schema:
          type: integer
          format: int64
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuotaTemplateResponseV1'
    put:
      tags:
      - Inventory Admin
      summary: Update quota template
      description: Update an existing quota template
      operationId: updateQuotaTemplate
      parameters:
      - name: id
        in: path
        description: Id of the quota template
        required: true
        style: simple
        explode: false
        schema:
          type: integer
          format: int64
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/QuotaTemplateUpdateRequestV1'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuotaTemplateResponseV1'
    delete:
      tags:
      - Inventory Admin
      summary: Delete quota template
      description: Delete a quota template by its ID
      operationId: deleteQuotaTemplate
      parameters:
      - name: id
        in: path
        description: Id of the quota template
        required: true
        style: simple
        explode: false
        schema:
          type: integer
          format: int64
      responses:
        '204':
          description: No Content
    servers:
    - url: https://api.entur.io/inventory
  /v1/quota-configurations/{id}:
    parameters:
    - $ref: '#/components/parameters/ET-Client-Name'
    - $ref: '#/components/parameters/X-Correlation-Id'
    get:
      tags:
      - Inventory Admin
      summary: Get quota configuration
      description: Retrieve quota configurations by ID
      operationId: getQuotaConfiguration
      parameters:
      - name: id
        in: path
        description: Id for the quota configuration to get
        required: true
        style: simple
        explode: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuotaConfigurationResponseV1'
      security:
      - bearer-key: []
    put:
      tags:
      - Inventory Admin
      summary: Update quota configuration
      description: Update a quota configuration
      operationId: putQuotaConfiguration
      parameters:
      - name: id
        in: path
        description: The id of the quota configuration to update
        required: true
        style: simple
        explode: false
        schema:
          type: integer
          format: int32
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/QuotaConfiguration'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuotaConfigurationResponseV1'
      security:
      - bearer-key: []
    delete:
      tags:
      - Inventory Admin
      summary: Delete quota configuration
      operationId: deleteQuotaConfiguration
      parameters:
      - name: id
        in: path
        description: The id of the quota configuration to delete
        required: true
        style: simple
        explode: false
        schema:
          type: integer
          format: int32
      responses:
        '204':
          description: No Content
      security:
      - bearer-key: []
    servers:
    - url: https://api.entur.io/inventory
  /v1/dated-service-journeys/{id}:
    parameters:
    - $ref: '#/components/parameters/ET-Client-Name'
    - $ref: '#/components/parameters/X-Correlation-Id'
    get:
      tags:
      - Inventory Admin
      summary: Get a departure
      description: Retrieves a departure for transportation.
      operationId: getDeparture
      parameters:
      - name: id
        in: path
        description: Id for the departure
        required: true
        style: simple
        explode: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DepartureResponseV1'
    patch:
      tags:
      - Inventory Admin
      summary: Update a departure
      description: Updates inactive flag on departure
      operationId: patchDeparture
      parameters:
      - name: id
        in: path
        description: Id for the departure
        required: true
        style: simple
        explode: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateDepartureRequestV1'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DepartureResponseV1'
    servers:
    - url: https://api.entur.io/inventory
  /v1/quota-configurations:
    parameters:
    - $ref: '#/components/parameters/ET-Client-Name'
    - $ref: '#/components/parameters/X-Correlation-Id'
    get:
      tags:
      - Inventory Admin
      summary: Get quota configurations
      description: Get all registered quota configurations
      operationId: findAllQuotaConfigurations
      parameters:
      - name: ownerOrganisationId
        in: query
        description: Not applicable for Partners/operators. Used to filter between operator organisations
        required: false
        style: form
        explode: true
        schema:
          type: string
      responses:
        default:
          description: default response
          content:
            application/json:
              schema:
                type: string
      security:
      - bearer-key: []
    post:
      tags:
      - Inventory Admin
      summary: Create quota configuration
      description: Create a quota configuration
      operationId: postQuotaConfiguration
      parameters:
      - name: ownerOrganisationId
        in: query
        description: Not applicable for Partners/operators. Used to filter between operator organisations
        required: false
        style: form
        explode: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/QuotaConfiguration'
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuotaConfigurationResponseV1'
      security:
      - bearer-key: []
    servers:
    - url: https://api.entur.io/inventory
  /v1/nesting-config-tree:
    parameters:
    - $ref: '#/components/parameters/ET-Client-Name'
    - $ref: '#/components/parameters/X-Correlation-Id'
    get:
      tags:
      - Inventory Admin
      summary: Get nesting config trees
      description: Retrieves all nesting config trees
      operationId: getNestingTrees
      parameters:
      - name: ownerOrganisationId
        in: query
        description: Not applicable for Partners/operators. Used to filter between operator organisations
        required: false
        style: form
        explode: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/NestingConfigTreeResponseV1'
    post:
      tags:
      - Inventory Admin
      summary: Create/Update a nesting config tree
      description: Create/Update a nesting config tree.
      operationId: postQuotaConfiguration_1
      parameters:
      - name: ownerOrganisationId
        in: query
        description: Not applicable for Partners/operators. Used to filter between operator organisations
        required: false
        style: form
        explode: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NestingConfigTree'
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NestingConfigTreeResponseV1'
    servers:
    - url: https://api.entur.io/inventory
  /v1/dated-service-journeys/{departureId}/refresh:
    parameters:
    - $ref: '#/components/parameters/ET-Client-Name'
    - $ref: '#/components/parameters/X-Correlation-Id'
    post:
      tags:
      - Inventory Admin
      summary: Refresh departure with live journey data
      description: Refresh departure with journey data, which can possibly merge multiple existing departures
      operationId: refreshDeparture
      parameters:
      - name: departureId
        in: path
        description: The datedServiceJourneyId to refresh
        required: true
        style: simple
        explode: false
        schema:
          type: string
      - name: multiPrivateCodeOverride
        in: query
        description: If true, the refresh will merge departures event with different privateCodes
        required: false
        style: form
        explode: true
        schema:
          type: boolean
          default: false
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DepartureResponseV1'
    servers:
    - url: https://api.entur.io/inventory
components:
  schemas:
    OdRequestV1:
      type: object
      properties:
        origin:
          type: string
        destination:
          type: string
      required:
      - destination
      - origin
    QuotaTemplateQuotaResponseV1:
      type: object
      properties:
        quota:
          type: integer
          format: int32
        productIds:
          type: array
          items:
            type: string
        quotaConfigurationId:
          type: integer
          format: int32
          nullable: true
      required:
      - productIds
      - quota
    QuotaTemplateQuotaRequestV1:
      type: object
      properties:
        quota:
          type: integer
          format: int32
        productIds:
          type: array
          items:
            type: string
        quotaConfigurationId:
          type: integer
          format: int32
          nullable: true
      required:
      - productIds
      - quota
    UpdateQuotaRequestV1:
      type: object
      description: Quota to update
      properties:
        quota:
          type: integer
          format: int32
        products:
          type: array
          items:
            type: string
        ods:
          type: array
          items:
            $ref: '#/components/schemas/OdRequestV1'
        quotaConfigurationId:
          type: integer
          format: int32
        purchaseWindowStart:
          type: string
          format: date-time
        purchaseWindowStop:
          type: string
          format: date-time
        useStoplist:
          type: boolean
      required:
      - ods
      - products
      - quota
      - useStoplist
    Line:
      type: object
      properties:
        id:
          type: string
        version:
          type: integer
          format: int32
        organisationId:
          type: integer
          format: int64
        created:
          type: string
          format: date-time
        changed:
          type: string
          format: date-time
        stops:
          type: array
          items:
            type: string
      required:
      - changed
      - created
      - id
      - organisationId
      - stops
      - version
    DepartureResponseV1:
      type: object
      properties:
        id:
          type: string
        invertedDirection:
          type: string
        line:
          $ref: '#/components/schemas/Line'
        organisationId:
          type: integer
          format: int64
        departureDate:
          type: string
          format: date
        isClosed:
          type: boolean
      required:
      - departureDate
      - id
      - invertedDirection
      - isClosed
      - line
      - organisationId
    QuotaResponseV1:
      type: object
      properties:
        id:
          type: integer
          format: int64
        quota:
          type: integer
          format: int32
        products:
          type: array
          items:
            type: string
        ods:
          type: array
          items:
            $ref: '#/components/schemas/OdResponse'
        quotaConfigurationId:
          type: integer
          format: int32
        datedServiceJourneyId:
          type: string
        purchaseWindowStart:
          type: string
          format: date-time
        purchaseWindowStop:
          type: string
          format: date-time
        useStoplist:
          type: boolean
      required:
      - datedServiceJourneyId
      - id
      - ods
      - products
      - quota
      - useStoplist
    QuotaTemplateUpdateRequestV1:
      type: object
      description: Request to update a quota template
      properties:
        quotas:
          type: array
          items:
            $ref: '#/components/schemas/QuotaTemplateQuotaRequestV1'
      required:
      - quotas
    QuotaConfiguration:
      type: object
      description: Updated quota configuration
      properties:
        name:
          type: string
        priority:
          type: integer
          format: int32
        selectionRule:
          type: string
          enum:
          - COMBINED
          - SINGLE
        consumptionRule:
          type: string
          enum:
          - DIRECT
          - BY_PRIORITY
        directionRule:
          type: string
          enum:
          - FROM_RIGHT
          - FROM_LEFT
        parent:
          type: integer
          format: int32
        id:
          type: integer
          format: int32
        closedBy:
          type: array
          items:
            type: integer
            format: int32
      required:
      - name
      - priority
    UpdateDepartureRequestV1:
      type: object
      properties:
        isClosed:
          type:
          - boolean
          - 'null'
    QuotaTemplateResponseV1:
      type: object
      properties:
        id:
          type: integer
          format: int64
        lineId:
          type: string
        privateCode:
          type: string
          nullable: true
        quotas:
          type: array
          items:
            $ref: '#/components/schemas/QuotaTemplateQuotaResponseV1'
      required:
      - id
      - lineId
      - quotas
    QuotaRequestV1:
      type: object
      description: One or more quotas for the service journey
      properties:
        quota:
          type: integer
          format: int32
        products:
          type: array
          items:
            type: string
        ods:
          type: array
          items:
            $ref: '#/components/schemas/OdRequestV1'
        quotaConfigurationId:
          type: integer
          format: int32
        datedServiceJourneyId:
          type: string
        purchaseWindowStart:
          type: string
          format: date-time
        purchaseWindowStop:
          type: string
          format: date-time
        useStoplist:
          type: boolean
      required:
      - datedServiceJourneyId
      - ods
      - products
      - quota
      - useStoplist
    NestingConfigTreeNodeRequestV1:
      type: object
      properties:
        quotaConfigurationRequest:
          $ref: '#/components/schemas/QuotaConfiguration'
        children:
          type: array
          items:
            required:
            - quotaConfigurationRequest
      required:
      - children
      - quotaConfigurationRequest
    OdResponse:
      type: object
      properties:
        origin:
          type: string
        destination:
          type: string
      required:
      - destination
      - origin
    NestingConfigTreeNodeResponseV1:
      type: object
      properties:
        quotaConfiguration:
          $ref: '#/components/schemas/QuotaConfigurationResponseV1'
        children:
          type: array
          items:
            required:
            - quotaConfiguration
      required:
      - children
      - quotaConfiguration
    QuotaConfigurationResponseV1:
      type: object
      properties:
        id:
          type: integer
          format: int32
        organisationId:
          type: integer
          format: int64
        name:
          type: string
        priority:
          type: integer
          format: int32
        selectionRule:
          type: string
          enum:
          - COMBINED
          - SINGLE
        consumptionRule:
          type: string
          enum:
          - DIRECT
          - BY_PRIORITY
        directionRule:
          type: string
          enum:
          - FROM_RIGHT
          - FROM_LEFT
        parent:
          type: integer
          format: int32
        closedBy:
          type: array
          items:
            type: integer
            format: int32
      required:
      - closedBy
      - id
      - name
      - organisationId
      - priority
    NestingConfigTreeResponseV1:
      type: object
      properties:
        root:
          $ref: '#/components/schemas/NestingConfigTreeNodeResponseV1'
      required:
      - root
    NestingConfigTree:
      type: object
      description: A NestingConfigTree
      properties:
        root:
          $ref: '#/components/schemas/NestingConfigTreeNodeRequestV1'
        flattenTree:
          type: array
          items:
            $ref: '#/components/schemas/QuotaConfiguration'
      required:
      - flattenTree
      - root
    QuotaTemplateRequestV1:
      type: object
      description: Request to create a quota template
      properties:
        lineId:
          type: string
        privateCode:
          type: string
          nullable: true
        quotas:
          type: array
          items:
            $ref: '#/components/schemas/QuotaTemplateQuotaRequestV1'
      required:
      - lineId
      - quotas
  parameters:
    X-Correlation-Id:
      name: X-Correlation-Id
      in: header
      description: Correlation id
      required: false
      style: simple
      explode: false
      schema:
        type: string
    ET-Client-Name:
      name: ET-Client-Name
      in: header
      description: 'Entur 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>`.'
      required: false
      style: simple
      explode: false
      schema:
        type: string
  securitySchemes:
    bearer-key:
      type: http
      scheme: Bearer
      bearerFormat: jwt
x-refined-from:
- entur-inventory-openapi.json
- entur-inventory-openapi.yml