Entur · Schema
MultiStockResponse
CompanyPublic TransportJourney PlanningMobilityOpen DataNorwayTransitGraphQL
Properties
| Name | Type | Description |
|---|---|---|
| origin | string | |
| destination | string | |
| spannedDatedServiceJourneys | array | |
| reservableStock | array |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/entur/main/json-schema/entur-multi-stock-response-schema.json",
"title": "MultiStockResponse",
"x-generated": "2026-10-09",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/entur-inventory-openapi.yml#/components/schemas/MultiStockResponse",
"type": "object",
"properties": {
"origin": {
"type": "string"
},
"destination": {
"type": "string"
},
"spannedDatedServiceJourneys": {
"type": "array",
"items": {
"type": "string"
}
},
"reservableStock": {
"type": "array",
"items": {
"oneOf": [
{
"$ref": "#/$defs/NestingComponentResponseV1"
},
{
"$ref": "#/$defs/SimpleProductResponseV1"
},
{
"$ref": "#/$defs/ProductCollectionResponseV1"
},
{
"$ref": "#/$defs/ProductResponseV1"
}
]
}
}
},
"required": [
"destination",
"origin",
"reservableStock",
"spannedDatedServiceJourneys"
],
"$defs": {
"NestingComponentResponseV1": {
"allOf": [
{
"$ref": "#/$defs/StockComponentResponseV1"
},
{
"type": "object",
"properties": {
"aggregatedAvailability": {
"type": "integer",
"format": "int32"
},
"nestingGroup": {
"type": "string"
},
"priority": {
"type": "integer",
"format": "int32"
}
}
}
],
"required": [
"aggregatedAvailability",
"nestingGroup",
"priority"
]
},
"ProductCollectionResponseV1": {
"allOf": [
{
"$ref": "#/$defs/NestingComponentResponseV1"
},
{
"type": "object",
"properties": {
"selectionRule": {
"type": "string",
"enum": [
"COMBINED",
"SINGLE"
]
},
"consumptionRule": {
"type": "string",
"enum": [
"DIRECT",
"BY_PRIORITY"
]
},
"directionRule": {
"type": "string",
"enum": [
"FROM_RIGHT",
"FROM_LEFT"
]
},
"components": {
"type": "array",
"items": {
"oneOf": [
{
"$ref": "#/$defs/ProductCollectionResponseV1"
},
{
"$ref": "#/$defs/ProductResponseV1"
}
]
}
}
}
}
],
"required": [
"aggregatedAvailability",
"components",
"consumptionRule",
"directionRule",
"nestingGroup",
"priority",
"selectionRule"
]
},
"ProductResponseV1": {
"allOf": [
{
"$ref": "#/$defs/NestingComponentResponseV1"
},
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"products": {
"type": "array",
"items": {
"type": "string"
}
},
"leftInQuota": {
"type": "integer",
"format": "int32"
},
"purchaseWindowStart": {
"type": "string",
"format": "date-time"
},
"purchaseWindowStop": {
"type": "string",
"format": "date-time"
},
"closedBy": {
"type": "array",
"items": {
"type": "integer",
"format": "int32"
}
}
}
}
],
"required": [
"aggregatedAvailability",
"closedBy",
"id",
"leftInQuota",
"nestingGroup",
"priority",
"products"
]
},
"SimpleProductResponseV1": {
"allOf": [
{
"$ref": "#/$defs/StockComponentResponseV1"
},
{
"type": "object",
"properties": {
"products": {
"type": "array",
"items": {
"type": "string"
}
},
"leftInQuota": {
"type": "integer",
"format": "int32"
}
}
}
],
"required": [
"leftInQuota",
"products"
]
},
"StockComponentResponseV1": {}
}
}
Work with this as data
Every JSON Schema 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 schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.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.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/entur-multi-stock-response"
All schemas
curl "https://apis.io/api/v1/json-schemas?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.