Entur · Schema

TemporaryCustomerResponse

A registered customer

CompanyPublic TransportJourney PlanningMobilityOpen DataNorwayTransitGraphQL

Properties

Name Type Description
changedAt string When the customer was last changed. ISO 8601 date format
changedBy string Who last changed the customer. Either web, app or username of employee. Used for traceability in accordance with GDPR
changedByChannel string Which sales channel or system who last changed the customer. Used for traceability in accordance with GDPR
countryCode string Telephone number country code, starting with +.
createdAt string When the customer was created. ISO 8601 date format
createdBy string Who created the customer. Either web, app or username of employee. Used for traceability in accordance with GDPR
createdByChannel string Which sales channel or system who created the customer. Used for traceability in accordance with GDPR
customerAccountId string Customer account id used for account based ticketing
customerConsents array The legacy consents connected to the customer.
customerNumber integer Customer number.
customerRef string Optional customer reference. Defaults to customer number if not set.
dateOfBirth string Date of birth. ISO 8601 date format
dateOfDeath string Date of death. ISO 8601 date format
email string Contact email.
emailOld string When customer is deleted (status='D'), the value of 'email' is moved here to allow creation of a new customer with the same email.
emailVerifiedAt string When the email was verified. ISO 8601 date format
expirationDate string The date when the customers personal data should be deleted. Personal data will be deleted continuously. ISO 8601 date format
firstName string First and middle name.
givenConsents array The consents connected to the customer. Deprecated
landlineNumber string Landline telephone number.
nationality string The customers nationality. ISO 3166-1 alpha-3 format
notes array The notes connected to the customer.
organisationId integer The organisation the customer is registered with.
postalAddresses array The postal addresses connected to the customer.
preferences array The preferences connected to the customer.
status string Customer status. Statuses supported: 'A' = Active, 'P' = Passive, 'D' = Deleted. Default is 'A'.
surname string Surname.
telephoneNumber string Deprecated. Please use countryCode and telephoneNumberNoCountryCode. Telephone number for customer. This should be a cell phone number.
telephoneNumberNoCountryCode string Telephone number without country code or punctuation.
telephoneNumberVerifiedAt string When the telephone number was verified. ISO 8601 date format
uuid string A universal unique id for the customer. 32 random alphanumeric characters. Not RFC 4122 compliant
View JSON Schema on GitHub

JSON Schema

entur-temporary-customer-response-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/entur/main/json-schema/entur-temporary-customer-response-schema.json",
  "title": "TemporaryCustomerResponse",
  "description": "A registered customer",
  "x-generated": "2026-10-09",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/entur-customers-openapi.yml#/components/schemas/TemporaryCustomerResponse",
  "required": [
    "changedAt",
    "changedBy",
    "changedByChannel",
    "createdAt",
    "createdBy",
    "createdByChannel",
    "customerNumber",
    "expirationDate",
    "firstName",
    "organisationId",
    "status",
    "surname",
    "uuid"
  ],
  "type": "object",
  "properties": {
    "changedAt": {
      "type": "string",
      "description": "When the customer was last changed. ISO 8601 date format",
      "format": "date-time"
    },
    "changedBy": {
      "maxLength": 100,
      "type": "string",
      "description": "Who last changed the customer. Either web, app or username of employee. Used for traceability in accordance with GDPR"
    },
    "changedByChannel": {
      "maxLength": 100,
      "type": "string",
      "description": "Which sales channel or system who last changed the customer. Used for traceability in accordance with GDPR"
    },
    "countryCode": {
      "maxLength": 4,
      "type": "string",
      "description": "Telephone number country code, starting with +."
    },
    "createdAt": {
      "type": "string",
      "description": "When the customer was created. ISO 8601 date format",
      "format": "date-time"
    },
    "createdBy": {
      "maxLength": 100,
      "type": "string",
      "description": "Who created the customer. Either web, app or username of employee. Used for traceability in accordance with GDPR"
    },
    "createdByChannel": {
      "maxLength": 100,
      "type": "string",
      "description": "Which sales channel or system who created the customer. Used for traceability in accordance with GDPR"
    },
    "customerAccountId": {
      "maxLength": 60,
      "type": "string",
      "description": "Customer account id used for account based ticketing"
    },
    "customerConsents": {
      "type": "array",
      "description": "The legacy consents connected to the customer.",
      "items": {
        "$ref": "#/$defs/CustomerConsent"
      }
    },
    "customerNumber": {
      "type": "integer",
      "description": "Customer number.",
      "format": "int64"
    },
    "customerRef": {
      "maxLength": 40,
      "type": "string",
      "description": "Optional customer reference. Defaults to customer number if not set."
    },
    "dateOfBirth": {
      "type": "string",
      "description": "Date of birth. ISO 8601 date format",
      "format": "date"
    },
    "dateOfDeath": {
      "type": "string",
      "description": "Date of death. ISO 8601 date format",
      "format": "date"
    },
    "email": {
      "maxLength": 80,
      "type": "string",
      "description": "Contact email."
    },
    "emailOld": {
      "maxLength": 80,
      "type": "string",
      "description": "When customer is deleted (status='D'), the value of 'email' is moved here to allow creation of a new customer with the same email."
    },
    "emailVerifiedAt": {
      "type": "string",
      "description": "When the email was verified. ISO 8601 date format",
      "format": "date-time"
    },
    "expirationDate": {
      "type": "string",
      "description": "The date when the customers personal data should be deleted. Personal data will be deleted continuously. ISO 8601 date format",
      "format": "date-time"
    },
    "firstName": {
      "maxLength": 50,
      "type": "string",
      "description": "First and middle name."
    },
    "givenConsents": {
      "type": "array",
      "description": "The consents connected to the customer. Deprecated",
      "deprecated": true,
      "items": {
        "type": "object",
        "description": "The consents connected to the customer. Deprecated",
        "deprecated": true
      }
    },
    "landlineNumber": {
      "maxLength": 20,
      "type": "string",
      "description": "Landline telephone number."
    },
    "nationality": {
      "maxLength": 3,
      "type": "string",
      "description": "The customers nationality. ISO 3166-1 alpha-3 format"
    },
    "notes": {
      "type": "array",
      "description": "The notes connected to the customer.",
      "items": {
        "$ref": "#/$defs/NoteResponse"
      }
    },
    "organisationId": {
      "type": "integer",
      "description": "The organisation the customer is registered with.",
      "format": "int64"
    },
    "postalAddresses": {
      "type": "array",
      "description": "The postal addresses connected to the customer.",
      "items": {
        "$ref": "#/$defs/PostalAddressResponse"
      }
    },
    "preferences": {
      "type": "array",
      "description": "The preferences connected to the customer.",
      "items": {
        "$ref": "#/$defs/CustomerPreferenceResponse"
      }
    },
    "status": {
      "type": "string",
      "description": "Customer status. Statuses supported: 'A' = Active, 'P' = Passive, 'D' = Deleted. Default is 'A'.",
      "enum": [
        "A",
        "P",
        "D"
      ]
    },
    "surname": {
      "maxLength": 50,
      "type": "string",
      "description": "Surname."
    },
    "telephoneNumber": {
      "maxLength": 20,
      "type": "string",
      "description": "Deprecated. Please use countryCode and telephoneNumberNoCountryCode. Telephone number for customer. This should be a cell phone number."
    },
    "telephoneNumberNoCountryCode": {
      "maxLength": 12,
      "type": "string",
      "description": "Telephone number without country code or punctuation."
    },
    "telephoneNumberVerifiedAt": {
      "type": "string",
      "description": "When the telephone number was verified. ISO 8601 date format",
      "format": "date-time"
    },
    "uuid": {
      "maxLength": 32,
      "minLength": 32,
      "type": "string",
      "description": "A universal unique id for the customer. 32 random alphanumeric characters. Not RFC 4122 compliant"
    }
  },
  "$defs": {
    "CustomerConsent": {
      "type": "object",
      "properties": {
        "changedAt": {
          "type": "string",
          "description": "When the customer consent was last changed.",
          "format": "date-time"
        },
        "consentChoice": {
          "type": "boolean",
          "description": "Whether the customer has approved or declined this consent."
        },
        "consentCode": {
          "maxLength": 20,
          "type": "string",
          "description": "The consent code."
        },
        "createdAt": {
          "type": "string",
          "description": "When the customer consent was created.",
          "format": "date-time"
        },
        "customerId": {
          "type": "integer",
          "description": "Id of the customer.",
          "format": "int64"
        }
      },
      "description": "Legacy consents for a customer"
    },
    "CustomerPreferenceResponse": {
      "required": [
        "changedAt",
        "createdAt",
        "preference",
        "preferenceId"
      ],
      "type": "object",
      "properties": {
        "changedAt": {
          "type": "string",
          "description": "When the customer preference was last changed. ISO 8601 date format",
          "format": "date-time"
        },
        "createdAt": {
          "type": "string",
          "description": "When the customer preference was created. ISO 8601 date format",
          "format": "date-time"
        },
        "customerId": {
          "type": "integer",
          "description": "Id of the customer. Deprecated",
          "format": "int64",
          "deprecated": true
        },
        "preference": {
          "$ref": "#/$defs/PreferenceResponse"
        },
        "preferenceId": {
          "type": "integer",
          "description": "Id of the preference",
          "format": "int64"
        },
        "preferenceValue": {
          "maxLength": 100,
          "minLength": 1,
          "type": "string",
          "description": "Value of the preference. This can be things like membership number."
        }
      },
      "description": "Preferences response for a customer"
    },
    "NoteResponse": {
      "required": [
        "changedAt",
        "changedBy",
        "createdAt",
        "createdBy",
        "customerId",
        "id",
        "text"
      ],
      "type": "object",
      "properties": {
        "changedAt": {
          "type": "string",
          "description": "When the note was last changed. ISO 8601 date format",
          "format": "date-time"
        },
        "changedBy": {
          "maxLength": 100,
          "type": "string",
          "description": "Who last changed the note."
        },
        "createdAt": {
          "type": "string",
          "description": "When the note was created. ISO 8601 date format",
          "format": "date-time"
        },
        "createdBy": {
          "maxLength": 100,
          "type": "string",
          "description": "Who created the note."
        },
        "customerId": {
          "type": "integer",
          "description": "Id of the customer connected to the note.",
          "format": "int64"
        },
        "id": {
          "type": "integer",
          "description": "Note id.",
          "format": "int64"
        },
        "text": {
          "maxLength": 4000,
          "type": "string",
          "description": "Note content."
        }
      },
      "description": "Deprecated"
    },
    "PostalAddressResponse": {
      "required": [
        "changedAt",
        "countryCode",
        "createdAt",
        "customerId",
        "id",
        "postCode",
        "town",
        "typeOfAddress"
      ],
      "type": "object",
      "properties": {
        "addressLine1": {
          "maxLength": 80,
          "type": "string",
          "description": "Address line 1."
        },
        "addressLine2": {
          "maxLength": 80,
          "type": "string",
          "description": "Address line 2, often used for c/o information."
        },
        "changedAt": {
          "type": "string",
          "description": "When the postal address was last changed. ISO 8601 date format",
          "format": "date-time"
        },
        "countryCode": {
          "maxLength": 3,
          "minLength": 3,
          "type": "string",
          "description": "The address country code. ISO 3166-1 alpha-3 format"
        },
        "createdAt": {
          "type": "string",
          "description": "When the postal address was created. ISO 8601 date format",
          "format": "date-time"
        },
        "customerId": {
          "type": "integer",
          "description": "The customer connected to the address.",
          "format": "int64"
        },
        "id": {
          "type": "integer",
          "description": "Postal address id.",
          "format": "int64"
        },
        "postCode": {
          "maxLength": 10,
          "type": "string",
          "description": "The address post code."
        },
        "town": {
          "maxLength": 50,
          "type": "string",
          "description": "The address post town."
        },
        "typeOfAddress": {
          "type": "string",
          "description": "The type of address. Types supported: 'P' = Private, 'I' = Invoice, 'S' = Shadow.",
          "enum": [
            "P",
            "I",
            "S"
          ]
        },
        "verifiedAt": {
          "type": "string",
          "description": "When the address was verified. ISO 8601 date format",
          "format": "date-time"
        }
      },
      "description": "Postal address connected to a customer"
    },
    "PreferenceResponse": {
      "required": [
        "changedAt",
        "createdAt",
        "id",
        "isActive",
        "preferenceCode",
        "preferenceDescription",
        "preferenceType"
      ],
      "type": "object",
      "properties": {
        "changedAt": {
          "type": "string",
          "description": "When the preference was last changed. ISO 8601 date format",
          "format": "date-time"
        },
        "createdAt": {
          "type": "string",
          "description": "When the preference was created. ISO 8601 date format",
          "format": "date-time"
        },
        "id": {
          "type": "integer",
          "description": "Preference id.",
          "format": "int64"
        },
        "isActive": {
          "type": "boolean",
          "description": "Whether the preference is active."
        },
        "preferenceCode": {
          "maxLength": 20,
          "type": "string",
          "description": "The preference code."
        },
        "preferenceDescription": {
          "maxLength": 255,
          "type": "string",
          "description": "A description of the preference."
        },
        "preferenceType": {
          "maxLength": 20,
          "type": "string",
          "description": "Type of preference."
        }
      },
      "description": "Preference"
    }
  }
}

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.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/entur-temporary-customer-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.