50

Platform API Guide

Get Platforms - Successfully

GET /v1/platforms

Query Parameters

Parameter Type Optional Description

parentServicePointSloids

Array[String]

true

servicePointNumbers

Array[Integer]

true

sloids

Array[String]

true

statusRestrictions

Array[String]

true

Must be one of ["DRAFT","VALIDATED","IN_REVIEW","WITHDRAWN","REVOKED"]

validOn

String

true

fromDate

String

true

toDate

String

true

validToFromDate

String

true

createdAfter

String

true

modifiedAfter

String

true

page

Integer

true

size

Integer

true

sort

Array[String]

true

Example request

$ curl 'http://localhost:8080/v1/platforms' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1383

{
  "objects" : [ {
    "creationDate" : "2025-06-06T09:33:29.566743",
    "creator" : "e123456",
    "editionDate" : "2025-06-06T09:33:29.566779",
    "editor" : "e123456",
    "status" : "VALIDATED",
    "id" : 1001,
    "validFrom" : "2000-01-01",
    "validTo" : "2000-12-31",
    "etagVersion" : 0,
    "sloid" : "ch:1:sloid:12345:1",
    "parentServicePointSloid" : "ch:1:sloid:12345",
    "boardingDevice" : "LIFTS",
    "adviceAccessInfo" : "Access Information Advice",
    "additionalInformation" : null,
    "shuttle" : "NO",
    "contrastingAreas" : "YES",
    "dynamicAudio" : "NOT_APPLICABLE",
    "dynamicVisual" : "TO_BE_COMPLETED",
    "height" : 123.12,
    "inclination" : 123.12,
    "inclinationLongitudinal" : 123.12,
    "inclinationWidth" : 123.12,
    "infoOpportunities" : [ "ELECTRONIC_VISUAL_INFORMATION_COMPLETE", "ACOUSTIC_INFORMATION", "TEXT_TO_SPEECH_DEPARTURES" ],
    "levelAccessWheelchair" : "NO",
    "partialElevation" : false,
    "superelevation" : 321.123,
    "tactileSystem" : "TO_BE_COMPLETED",
    "attentionField" : "TO_BE_COMPLETED",
    "vehicleAccess" : "PLATFORM_ACCESS_WITH_ASSISTANCE_WHEN_NOTIFIED",
    "wheelchairAreaLength" : 456.321,
    "wheelchairAreaWidth" : 321.123,
    "number" : {
      "number" : 1234567,
      "uicCountryCode" : 12,
      "numberShort" : 34567,
      "checkDigit" : 8
    }
  } ],
  "totalCount" : 1
}

Get Platforms by parentSloid - Successfully

GET /v1/platforms

Query Parameters

Parameter Type Optional Description

parentServicePointSloids

Array[String]

true

servicePointNumbers

Array[Integer]

true

sloids

Array[String]

true

statusRestrictions

Array[String]

true

Must be one of ["DRAFT","VALIDATED","IN_REVIEW","WITHDRAWN","REVOKED"]

validOn

String

true

fromDate

String

true

toDate

String

true

validToFromDate

String

true

createdAfter

String

true

modifiedAfter

String

true

page

Integer

true

size

Integer

true

sort

Array[String]

true

Example request

$ curl 'http://localhost:8080/v1/platforms?parentServicePointSloids=ch:1:sloid:12345' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1383

{
  "objects" : [ {
    "creationDate" : "2025-06-06T09:33:31.880123",
    "creator" : "e123456",
    "editionDate" : "2025-06-06T09:33:31.880156",
    "editor" : "e123456",
    "status" : "VALIDATED",
    "id" : 1009,
    "validFrom" : "2000-01-01",
    "validTo" : "2000-12-31",
    "etagVersion" : 0,
    "sloid" : "ch:1:sloid:12345:1",
    "parentServicePointSloid" : "ch:1:sloid:12345",
    "boardingDevice" : "LIFTS",
    "adviceAccessInfo" : "Access Information Advice",
    "additionalInformation" : null,
    "shuttle" : "NO",
    "contrastingAreas" : "YES",
    "dynamicAudio" : "NOT_APPLICABLE",
    "dynamicVisual" : "TO_BE_COMPLETED",
    "height" : 123.12,
    "inclination" : 123.12,
    "inclinationLongitudinal" : 123.12,
    "inclinationWidth" : 123.12,
    "infoOpportunities" : [ "ELECTRONIC_VISUAL_INFORMATION_COMPLETE", "ACOUSTIC_INFORMATION", "TEXT_TO_SPEECH_DEPARTURES" ],
    "levelAccessWheelchair" : "NO",
    "partialElevation" : false,
    "superelevation" : 321.123,
    "tactileSystem" : "TO_BE_COMPLETED",
    "attentionField" : "TO_BE_COMPLETED",
    "vehicleAccess" : "PLATFORM_ACCESS_WITH_ASSISTANCE_WHEN_NOTIFIED",
    "wheelchairAreaLength" : 456.321,
    "wheelchairAreaWidth" : 321.123,
    "number" : {
      "number" : 1234567,
      "uicCountryCode" : 12,
      "numberShort" : 34567,
      "checkDigit" : 8
    }
  } ],
  "totalCount" : 1
}

Get Platforms by Sloid - Successfully

GET /v1/platforms/ch:1:sloid:12345:1

Path Variables

Path Variable Type Optional Description

sloid

String

false

Example request

$ curl 'http://localhost:8080/v1/platforms/ch:1:sloid:12345:1' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1269

[ {
  "creationDate" : "2025-06-06T09:33:30.885077",
  "creator" : "e123456",
  "editionDate" : "2025-06-06T09:33:30.885106",
  "editor" : "e123456",
  "status" : "VALIDATED",
  "id" : 1005,
  "validFrom" : "2000-01-01",
  "validTo" : "2000-12-31",
  "etagVersion" : 0,
  "sloid" : "ch:1:sloid:12345:1",
  "parentServicePointSloid" : "ch:1:sloid:12345",
  "boardingDevice" : "LIFTS",
  "adviceAccessInfo" : "Access Information Advice",
  "additionalInformation" : null,
  "shuttle" : "NO",
  "contrastingAreas" : "YES",
  "dynamicAudio" : "NOT_APPLICABLE",
  "dynamicVisual" : "TO_BE_COMPLETED",
  "height" : 123.12,
  "inclination" : 123.12,
  "inclinationLongitudinal" : 123.12,
  "inclinationWidth" : 123.12,
  "infoOpportunities" : [ "ELECTRONIC_VISUAL_INFORMATION_COMPLETE", "ACOUSTIC_INFORMATION", "TEXT_TO_SPEECH_DEPARTURES" ],
  "levelAccessWheelchair" : "NO",
  "partialElevation" : false,
  "superelevation" : 321.123,
  "tactileSystem" : "TO_BE_COMPLETED",
  "attentionField" : "TO_BE_COMPLETED",
  "vehicleAccess" : "PLATFORM_ACCESS_WITH_ASSISTANCE_WHEN_NOTIFIED",
  "wheelchairAreaLength" : 456.321,
  "wheelchairAreaWidth" : 321.123,
  "number" : {
    "number" : 1234567,
    "uicCountryCode" : 12,
    "numberShort" : 34567,
    "checkDigit" : 8
  }
} ]

Get Platforms with filter - Successfully

GET /v1/platforms

Query Parameters

Parameter Type Optional Description

parentServicePointSloids

Array[String]

true

servicePointNumbers

Array[Integer]

true

sloids

Array[String]

true

statusRestrictions

Array[String]

true

Must be one of ["DRAFT","VALIDATED","IN_REVIEW","WITHDRAWN","REVOKED"]

validOn

String

true

fromDate

String

true

toDate

String

true

validToFromDate

String

true

createdAfter

String

true

modifiedAfter

String

true

page

Integer

true

size

Integer

true

sort

Array[String]

true

Example request

$ curl 'http://localhost:8080/v1/platforms?numbers=12345&sloids=ch:1:sloid:12345:1&fromDate=2000-01-01&statusRestrictions=VALIDATED&toDate=2000-12-31&validOn=2000-06-28&createdAfter=2025-06-06%2009:33:31&modifiedAfter=2025-06-06%2009:33:32' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1383

{
  "objects" : [ {
    "creationDate" : "2025-06-06T09:33:32.593306",
    "creator" : "e123456",
    "editionDate" : "2025-06-06T09:33:32.593339",
    "editor" : "e123456",
    "status" : "VALIDATED",
    "id" : 1012,
    "validFrom" : "2000-01-01",
    "validTo" : "2000-12-31",
    "etagVersion" : 0,
    "sloid" : "ch:1:sloid:12345:1",
    "parentServicePointSloid" : "ch:1:sloid:12345",
    "boardingDevice" : "LIFTS",
    "adviceAccessInfo" : "Access Information Advice",
    "additionalInformation" : null,
    "shuttle" : "NO",
    "contrastingAreas" : "YES",
    "dynamicAudio" : "NOT_APPLICABLE",
    "dynamicVisual" : "TO_BE_COMPLETED",
    "height" : 123.12,
    "inclination" : 123.12,
    "inclinationLongitudinal" : 123.12,
    "inclinationWidth" : 123.12,
    "infoOpportunities" : [ "ELECTRONIC_VISUAL_INFORMATION_COMPLETE", "ACOUSTIC_INFORMATION", "TEXT_TO_SPEECH_DEPARTURES" ],
    "levelAccessWheelchair" : "NO",
    "partialElevation" : false,
    "superelevation" : 321.123,
    "tactileSystem" : "TO_BE_COMPLETED",
    "attentionField" : "TO_BE_COMPLETED",
    "vehicleAccess" : "PLATFORM_ACCESS_WITH_ASSISTANCE_WHEN_NOTIFIED",
    "wheelchairAreaLength" : 456.321,
    "wheelchairAreaWidth" : 321.123,
    "number" : {
      "number" : 1234567,
      "uicCountryCode" : 12,
      "numberShort" : 34567,
      "checkDigit" : 8
    }
  } ],
  "totalCount" : 1
}

Get Platform Overview - Successfully

GET /v1/platforms/overview/ch:1:sloid:7000

Path Variables

Path Variable Type Optional Description

parentSloid

String

false

Example request

$ curl 'http://localhost:8080/v1/platforms/overview/ch:1:sloid:7000' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 134

[ {
  "sloid" : "ch:1:sloid:12345:1",
  "validFrom" : "2000-01-01",
  "validTo" : "2000-12-31",
  "recordingStatus" : "INCOMPLETE"
} ]

Create Complete Platforms - Successfully

POST /v1/platforms

Request Body Fields

Path Type Optional Description

parentServicePointSloid

String

false

Parent Service Point Sloid: Unique code for locations that is used in customer information. The structure is described in the “Swiss Location ID” specification, chapter 4.2. The document is available here: transportdatamanagement.ch/standards/

Example value: ch:1:sloid:18771

Length must be between 1 and 500

boardingDevice

String

true

Wheelchair aids

Must be one of ["TO_BE_COMPLETED","NO","NOT_APPLICABLE","RAMPS","LIFTS"]

adviceAccessInfo

String

true

Information on access to transport

additionalInformation

String

true

Additional Information

shuttle

String

true

Shuttle

Must be one of ["TO_BE_COMPLETED","YES","NO"]

contrastingAreas

String

true

Tactile-visual marking of platform surfaces

Must be one of ["TO_BE_COMPLETED","YES","NO"]

dynamicAudio

String

true

Acoustic information

Must be one of ["TO_BE_COMPLETED","YES","NO","NOT_APPLICABLE"]

dynamicVisual

String

true

Dynamic optical information

Must be one of ["TO_BE_COMPLETED","YES","NO","NOT_APPLICABLE"]

height

Decimal

true

Height [cm]

inclination

Decimal

true

Cross-platform slope [%]

inclinationLongitudinal

Decimal

true

Longitudinal inclination of the holding edge [%]

inclinationWidth

Decimal

true

Platform longitudinal inclination [%]

infoOpportunities

Array[String]

true

Information options

Must be one of ["TO_BE_COMPLETED","STATIC_VISUAL_INFORMATION","ELECTRONIC_VISUAL_INFORMATION_DEPARTURES","ELECTRONIC_VISUAL_INFORMATION_COMPLETE","ACOUSTIC_INFORMATION","TEXT_TO_SPEECH_DEPARTURES","TEXT_TO_SPEECH_COMPLETE"]

levelAccessWheelchair

String

true

Must be one of ["TO_BE_COMPLETED","YES","NO","NOT_APPLICABLE"]

partialElevation

Boolean

true

superelevation

Decimal

true

Track superelevation value [mm]

tactileSystem

String

true

Must be one of ["TO_BE_COMPLETED","YES","NO"]

attentionField

String

true

Must be one of ["TO_BE_COMPLETED","YES","NO"]

vehicleAccess

String

true

Must be one of ["TO_BE_COMPLETED","PLATFORM_ACCESS_WITHOUT_ASSISTANCE","PLATFORM_ACCESS_WITH_ASSISTANCE","PLATFORM_ACCESS_WITH_ASSISTANCE_WHEN_NOTIFIED","PLATFORM_NOT_WHEELCHAIR_ACCESSIBLE"]

wheelchairAreaLength

Decimal

true

Wheelchair Area Length [mm]

wheelchairAreaWidth

Decimal

true

Wheelchair Area Width [mm]

sloid

String

true

Unique code for locations that is used in customer information. The structure is described in the “Swiss Location ID” specification, chapter 4.2. The document is available here: transportdatamanagement.ch/standards/

Example value: ch:1:sloid:18771:1

Length must be between 1 and 500

id

Integer

true

This ID helps identify versions of a prm object in the use case front end and/or update. This ID can be deleted if the version is no longer present. Do not use this ID to map your object to a prm object. To do this, use the sloid or parentServicePointSloid in combination with the data range (valid from/valid until).

Example value: 1

validFrom

String

false

Valid from

validTo

String

false

Valid to

etagVersion

Integer

true

Optimistic locking version - instead of ETag HTTP Header (see RFC7232:Section 2.3)

Example value: 5

creationDate

String

true

Object creation date

Example value: 01.01.2000

creator

String

true

User creator

Example value: u123456

editionDate

String

true

Last edition date

Example value: 01.01.2000

editor

String

true

User editor

Example value: u123456

status

String

true

Status

Must be one of ["DRAFT","VALIDATED","IN_REVIEW","WITHDRAWN","REVOKED"]

Example request

$ curl 'http://localhost:8080/v1/platforms' -i -X POST \
    -H 'Content-Type: application/json;charset=UTF-8' \
    -d '{
  "creationDate" : null,
  "creator" : null,
  "editionDate" : null,
  "editor" : null,
  "status" : "VALIDATED",
  "id" : null,
  "validFrom" : "2000-01-01",
  "validTo" : "2000-12-31",
  "etagVersion" : null,
  "sloid" : "ch:1:sloid:12345:1",
  "parentServicePointSloid" : "ch:1:sloid:7000",
  "boardingDevice" : "LIFTS",
  "adviceAccessInfo" : "Access Information Advice",
  "additionalInformation" : "additional info",
  "shuttle" : "NO",
  "contrastingAreas" : "YES",
  "dynamicAudio" : "NOT_APPLICABLE",
  "dynamicVisual" : "TO_BE_COMPLETED",
  "height" : null,
  "inclination" : 123.12,
  "inclinationLongitudinal" : null,
  "inclinationWidth" : 123.12,
  "infoOpportunities" : [ ],
  "levelAccessWheelchair" : "NO",
  "partialElevation" : null,
  "superelevation" : 321.123,
  "tactileSystem" : null,
  "attentionField" : null,
  "vehicleAccess" : null,
  "wheelchairAreaLength" : null,
  "wheelchairAreaWidth" : null
}'

Example response

HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 1102

{
  "creationDate" : "2025-06-06T09:33:30.674924",
  "creator" : "e123456",
  "editionDate" : "2025-06-06T09:33:30.674955",
  "editor" : "e123456",
  "status" : "VALIDATED",
  "id" : 1004,
  "validFrom" : "2000-01-01",
  "validTo" : "2000-12-31",
  "etagVersion" : 0,
  "sloid" : "ch:1:sloid:12345:1",
  "parentServicePointSloid" : "ch:1:sloid:7000",
  "boardingDevice" : "LIFTS",
  "adviceAccessInfo" : "Access Information Advice",
  "additionalInformation" : "additional info",
  "shuttle" : "NO",
  "contrastingAreas" : "YES",
  "dynamicAudio" : "NOT_APPLICABLE",
  "dynamicVisual" : "TO_BE_COMPLETED",
  "height" : null,
  "inclination" : 123.12,
  "inclinationLongitudinal" : null,
  "inclinationWidth" : 123.12,
  "infoOpportunities" : [ ],
  "levelAccessWheelchair" : "NO",
  "partialElevation" : null,
  "superelevation" : 321.123,
  "tactileSystem" : null,
  "attentionField" : null,
  "vehicleAccess" : null,
  "wheelchairAreaLength" : null,
  "wheelchairAreaWidth" : null,
  "number" : {
    "number" : 8507000,
    "uicCountryCode" : 85,
    "numberShort" : 7000,
    "checkDigit" : 3
  }
}

Create Reduced Platforms - Successfully

POST /v1/platforms

Request Body Fields

Path Type Optional Description

parentServicePointSloid

String

false

Parent Service Point Sloid: Unique code for locations that is used in customer information. The structure is described in the “Swiss Location ID” specification, chapter 4.2. The document is available here: transportdatamanagement.ch/standards/

Example value: ch:1:sloid:18771

Length must be between 1 and 500

boardingDevice

String

true

Wheelchair aids

Must be one of ["TO_BE_COMPLETED","NO","NOT_APPLICABLE","RAMPS","LIFTS"]

adviceAccessInfo

String

true

Information on access to transport

additionalInformation

String

true

Additional Information

shuttle

String

true

Shuttle

Must be one of ["TO_BE_COMPLETED","YES","NO"]

contrastingAreas

String

true

Tactile-visual marking of platform surfaces

Must be one of ["TO_BE_COMPLETED","YES","NO"]

dynamicAudio

String

true

Acoustic information

Must be one of ["TO_BE_COMPLETED","YES","NO","NOT_APPLICABLE"]

dynamicVisual

String

true

Dynamic optical information

Must be one of ["TO_BE_COMPLETED","YES","NO","NOT_APPLICABLE"]

height

Decimal

true

Height [cm]

inclination

Decimal

true

Cross-platform slope [%]

inclinationLongitudinal

Decimal

true

Longitudinal inclination of the holding edge [%]

inclinationWidth

Decimal

true

Platform longitudinal inclination [%]

infoOpportunities

Array[String]

true

Information options

Must be one of ["TO_BE_COMPLETED","STATIC_VISUAL_INFORMATION","ELECTRONIC_VISUAL_INFORMATION_DEPARTURES","ELECTRONIC_VISUAL_INFORMATION_COMPLETE","ACOUSTIC_INFORMATION","TEXT_TO_SPEECH_DEPARTURES","TEXT_TO_SPEECH_COMPLETE"]

levelAccessWheelchair

String

true

Must be one of ["TO_BE_COMPLETED","YES","NO","NOT_APPLICABLE"]

partialElevation

Boolean

true

superelevation

Decimal

true

Track superelevation value [mm]

tactileSystem

String

true

Must be one of ["TO_BE_COMPLETED","YES","NO"]

attentionField

String

true

Must be one of ["TO_BE_COMPLETED","YES","NO"]

vehicleAccess

String

true

Must be one of ["TO_BE_COMPLETED","PLATFORM_ACCESS_WITHOUT_ASSISTANCE","PLATFORM_ACCESS_WITH_ASSISTANCE","PLATFORM_ACCESS_WITH_ASSISTANCE_WHEN_NOTIFIED","PLATFORM_NOT_WHEELCHAIR_ACCESSIBLE"]

wheelchairAreaLength

Decimal

true

Wheelchair Area Length [mm]

wheelchairAreaWidth

Decimal

true

Wheelchair Area Width [mm]

sloid

String

true

Unique code for locations that is used in customer information. The structure is described in the “Swiss Location ID” specification, chapter 4.2. The document is available here: transportdatamanagement.ch/standards/

Example value: ch:1:sloid:18771:1

Length must be between 1 and 500

id

Integer

true

This ID helps identify versions of a prm object in the use case front end and/or update. This ID can be deleted if the version is no longer present. Do not use this ID to map your object to a prm object. To do this, use the sloid or parentServicePointSloid in combination with the data range (valid from/valid until).

Example value: 1

validFrom

String

false

Valid from

validTo

String

false

Valid to

etagVersion

Integer

true

Optimistic locking version - instead of ETag HTTP Header (see RFC7232:Section 2.3)

Example value: 5

creationDate

String

true

Object creation date

Example value: 01.01.2000

creator

String

true

User creator

Example value: u123456

editionDate

String

true

Last edition date

Example value: 01.01.2000

editor

String

true

User editor

Example value: u123456

status

String

true

Status

Must be one of ["DRAFT","VALIDATED","IN_REVIEW","WITHDRAWN","REVOKED"]

Example request

$ curl 'http://localhost:8080/v1/platforms' -i -X POST \
    -H 'Content-Type: application/json;charset=UTF-8' \
    -d '{
  "creationDate" : null,
  "creator" : null,
  "editionDate" : null,
  "editor" : null,
  "status" : "VALIDATED",
  "id" : null,
  "validFrom" : "2003-01-01",
  "validTo" : "2003-12-31",
  "etagVersion" : null,
  "sloid" : "ch:1:sloid:12345:1",
  "parentServicePointSloid" : "ch:1:sloid:7000",
  "boardingDevice" : null,
  "adviceAccessInfo" : null,
  "additionalInformation" : null,
  "shuttle" : "NO",
  "contrastingAreas" : null,
  "dynamicAudio" : null,
  "dynamicVisual" : null,
  "height" : 333.12,
  "inclination" : null,
  "inclinationLongitudinal" : 123.12,
  "inclinationWidth" : null,
  "infoOpportunities" : [ "ACOUSTIC_INFORMATION", "ELECTRONIC_VISUAL_INFORMATION_COMPLETE", "TEXT_TO_SPEECH_DEPARTURES" ],
  "levelAccessWheelchair" : null,
  "partialElevation" : null,
  "superelevation" : null,
  "tactileSystem" : "TO_BE_COMPLETED",
  "attentionField" : null,
  "vehicleAccess" : "PLATFORM_ACCESS_WITH_ASSISTANCE_WHEN_NOTIFIED",
  "wheelchairAreaLength" : 456.321,
  "wheelchairAreaWidth" : 321.123
}'

Example response

HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 1203

{
  "creationDate" : "2025-06-06T09:33:31.681779",
  "creator" : "e123456",
  "editionDate" : "2025-06-06T09:33:31.681809",
  "editor" : "e123456",
  "status" : "VALIDATED",
  "id" : 1008,
  "validFrom" : "2003-01-01",
  "validTo" : "2003-12-31",
  "etagVersion" : 0,
  "sloid" : "ch:1:sloid:12345:1",
  "parentServicePointSloid" : "ch:1:sloid:7000",
  "boardingDevice" : null,
  "adviceAccessInfo" : null,
  "additionalInformation" : null,
  "shuttle" : "NO",
  "contrastingAreas" : null,
  "dynamicAudio" : null,
  "dynamicVisual" : null,
  "height" : 333.12,
  "inclination" : null,
  "inclinationLongitudinal" : 123.12,
  "inclinationWidth" : null,
  "infoOpportunities" : [ "ELECTRONIC_VISUAL_INFORMATION_COMPLETE", "ACOUSTIC_INFORMATION", "TEXT_TO_SPEECH_DEPARTURES" ],
  "levelAccessWheelchair" : null,
  "partialElevation" : null,
  "superelevation" : null,
  "tactileSystem" : "TO_BE_COMPLETED",
  "attentionField" : "TO_BE_COMPLETED",
  "vehicleAccess" : "PLATFORM_ACCESS_WITH_ASSISTANCE_WHEN_NOTIFIED",
  "wheelchairAreaLength" : 456.321,
  "wheelchairAreaWidth" : 321.123,
  "number" : {
    "number" : 8507000,
    "uicCountryCode" : 85,
    "numberShort" : 7000,
    "checkDigit" : 3
  }
}

Create Reduced Platforms - Unsuccessfully

POST /v1/platforms

Request Body Fields

Path Type Optional Description

parentServicePointSloid

String

false

Parent Service Point Sloid: Unique code for locations that is used in customer information. The structure is described in the “Swiss Location ID” specification, chapter 4.2. The document is available here: transportdatamanagement.ch/standards/

Example value: ch:1:sloid:18771

Length must be between 1 and 500

boardingDevice

String

true

Wheelchair aids

Must be one of ["TO_BE_COMPLETED","NO","NOT_APPLICABLE","RAMPS","LIFTS"]

adviceAccessInfo

String

true

Information on access to transport

additionalInformation

String

true

Additional Information

shuttle

String

true

Shuttle

Must be one of ["TO_BE_COMPLETED","YES","NO"]

contrastingAreas

String

true

Tactile-visual marking of platform surfaces

Must be one of ["TO_BE_COMPLETED","YES","NO"]

dynamicAudio

String

true

Acoustic information

Must be one of ["TO_BE_COMPLETED","YES","NO","NOT_APPLICABLE"]

dynamicVisual

String

true

Dynamic optical information

Must be one of ["TO_BE_COMPLETED","YES","NO","NOT_APPLICABLE"]

height

Decimal

true

Height [cm]

inclination

Decimal

true

Cross-platform slope [%]

inclinationLongitudinal

Decimal

true

Longitudinal inclination of the holding edge [%]

inclinationWidth

Decimal

true

Platform longitudinal inclination [%]

infoOpportunities

Array[String]

true

Information options

Must be one of ["TO_BE_COMPLETED","STATIC_VISUAL_INFORMATION","ELECTRONIC_VISUAL_INFORMATION_DEPARTURES","ELECTRONIC_VISUAL_INFORMATION_COMPLETE","ACOUSTIC_INFORMATION","TEXT_TO_SPEECH_DEPARTURES","TEXT_TO_SPEECH_COMPLETE"]

levelAccessWheelchair

String

true

Must be one of ["TO_BE_COMPLETED","YES","NO","NOT_APPLICABLE"]

partialElevation

Boolean

true

superelevation

Decimal

true

Track superelevation value [mm]

tactileSystem

String

true

Must be one of ["TO_BE_COMPLETED","YES","NO"]

attentionField

String

true

Must be one of ["TO_BE_COMPLETED","YES","NO"]

vehicleAccess

String

true

Must be one of ["TO_BE_COMPLETED","PLATFORM_ACCESS_WITHOUT_ASSISTANCE","PLATFORM_ACCESS_WITH_ASSISTANCE","PLATFORM_ACCESS_WITH_ASSISTANCE_WHEN_NOTIFIED","PLATFORM_NOT_WHEELCHAIR_ACCESSIBLE"]

wheelchairAreaLength

Decimal

true

Wheelchair Area Length [mm]

wheelchairAreaWidth

Decimal

true

Wheelchair Area Width [mm]

sloid

String

true

Unique code for locations that is used in customer information. The structure is described in the “Swiss Location ID” specification, chapter 4.2. The document is available here: transportdatamanagement.ch/standards/

Example value: ch:1:sloid:18771:1

Length must be between 1 and 500

id

Integer

true

This ID helps identify versions of a prm object in the use case front end and/or update. This ID can be deleted if the version is no longer present. Do not use this ID to map your object to a prm object. To do this, use the sloid or parentServicePointSloid in combination with the data range (valid from/valid until).

Example value: 1

validFrom

String

false

Valid from

validTo

String

false

Valid to

etagVersion

Integer

true

Optimistic locking version - instead of ETag HTTP Header (see RFC7232:Section 2.3)

Example value: 5

creationDate

String

true

Object creation date

Example value: 01.01.2000

creator

String

true

User creator

Example value: u123456

editionDate

String

true

Last edition date

Example value: 01.01.2000

editor

String

true

User editor

Example value: u123456

status

String

true

Status

Must be one of ["DRAFT","VALIDATED","IN_REVIEW","WITHDRAWN","REVOKED"]

Example request

$ curl 'http://localhost:8080/v1/platforms' -i -X POST \
    -H 'Content-Type: application/json;charset=UTF-8' \
    -d '{
  "creationDate" : null,
  "creator" : null,
  "editionDate" : null,
  "editor" : null,
  "status" : "VALIDATED",
  "id" : null,
  "validFrom" : "2000-01-01",
  "validTo" : "2000-12-31",
  "etagVersion" : null,
  "sloid" : "ch:1:sloid:12345:1",
  "parentServicePointSloid" : "ch:1:sloid:7000",
  "boardingDevice" : "LIFTS",
  "adviceAccessInfo" : "Access Information Advice",
  "additionalInformation" : "additional info",
  "shuttle" : "NO",
  "contrastingAreas" : "YES",
  "dynamicAudio" : "NOT_APPLICABLE",
  "dynamicVisual" : "TO_BE_COMPLETED",
  "height" : 123.12,
  "inclination" : 123.12,
  "inclinationLongitudinal" : 123.12,
  "inclinationWidth" : 123.12,
  "infoOpportunities" : [ "ACOUSTIC_INFORMATION", "ELECTRONIC_VISUAL_INFORMATION_COMPLETE", "TEXT_TO_SPEECH_DEPARTURES" ],
  "levelAccessWheelchair" : "NO",
  "partialElevation" : false,
  "superelevation" : 321.123,
  "tactileSystem" : "TO_BE_COMPLETED",
  "attentionField" : null,
  "vehicleAccess" : "PLATFORM_ACCESS_WITH_ASSISTANCE_WHEN_NOTIFIED",
  "wheelchairAreaLength" : 456.321,
  "wheelchairAreaWidth" : 321.123
}'

Example response

HTTP/1.1 400 Bad Request
Content-Type: application/json
Content-Length: 4028

{
  "status" : 400,
  "message" : "PlatformVersion with sloid [ch:1:sloid:12345:1] cannot be save: Attempting to save a Reduced object with wrong properties population!",
  "error" : null,
  "details" : [ {
    "message" : "Must be null for Reduced Object",
    "field" : "inclination",
    "displayInfo" : {
      "code" : "ERROR.PRM.RECODING_VARIANTS.BAD_REQUEST",
      "parameters" : [ {
        "key" : "field",
        "value" : "inclination"
      }, {
        "key" : "detail",
        "value" : "Must be null for Reduced Object"
      }, {
        "key" : "reduced",
        "value" : "true"
      } ]
    }
  }, {
    "message" : "Must be null for Reduced Object",
    "field" : "boardingDevice",
    "displayInfo" : {
      "code" : "ERROR.PRM.RECODING_VARIANTS.BAD_REQUEST",
      "parameters" : [ {
        "key" : "field",
        "value" : "boardingDevice"
      }, {
        "key" : "detail",
        "value" : "Must be null for Reduced Object"
      }, {
        "key" : "reduced",
        "value" : "true"
      } ]
    }
  }, {
    "message" : "Must be null for Reduced Object",
    "field" : "adviceAccessInfo",
    "displayInfo" : {
      "code" : "ERROR.PRM.RECODING_VARIANTS.BAD_REQUEST",
      "parameters" : [ {
        "key" : "field",
        "value" : "adviceAccessInfo"
      }, {
        "key" : "detail",
        "value" : "Must be null for Reduced Object"
      }, {
        "key" : "reduced",
        "value" : "true"
      } ]
    }
  }, {
    "message" : "Must be null for Reduced Object",
    "field" : "levelAccessWheelchair",
    "displayInfo" : {
      "code" : "ERROR.PRM.RECODING_VARIANTS.BAD_REQUEST",
      "parameters" : [ {
        "key" : "field",
        "value" : "levelAccessWheelchair"
      }, {
        "key" : "detail",
        "value" : "Must be null for Reduced Object"
      }, {
        "key" : "reduced",
        "value" : "true"
      } ]
    }
  }, {
    "message" : "Must be null for Reduced Object",
    "field" : "dynamicAudio",
    "displayInfo" : {
      "code" : "ERROR.PRM.RECODING_VARIANTS.BAD_REQUEST",
      "parameters" : [ {
        "key" : "field",
        "value" : "dynamicAudio"
      }, {
        "key" : "detail",
        "value" : "Must be null for Reduced Object"
      }, {
        "key" : "reduced",
        "value" : "true"
      } ]
    }
  }, {
    "message" : "Must be null for Reduced Object",
    "field" : "superelevation",
    "displayInfo" : {
      "code" : "ERROR.PRM.RECODING_VARIANTS.BAD_REQUEST",
      "parameters" : [ {
        "key" : "field",
        "value" : "superelevation"
      }, {
        "key" : "detail",
        "value" : "Must be null for Reduced Object"
      }, {
        "key" : "reduced",
        "value" : "true"
      } ]
    }
  }, {
    "message" : "Must be null for Reduced Object",
    "field" : "contrastingAreas",
    "displayInfo" : {
      "code" : "ERROR.PRM.RECODING_VARIANTS.BAD_REQUEST",
      "parameters" : [ {
        "key" : "field",
        "value" : "contrastingAreas"
      }, {
        "key" : "detail",
        "value" : "Must be null for Reduced Object"
      }, {
        "key" : "reduced",
        "value" : "true"
      } ]
    }
  }, {
    "message" : "Must be null for Reduced Object",
    "field" : "inclinationWidth",
    "displayInfo" : {
      "code" : "ERROR.PRM.RECODING_VARIANTS.BAD_REQUEST",
      "parameters" : [ {
        "key" : "field",
        "value" : "inclinationWidth"
      }, {
        "key" : "detail",
        "value" : "Must be null for Reduced Object"
      }, {
        "key" : "reduced",
        "value" : "true"
      } ]
    }
  }, {
    "message" : "Must be null for Reduced Object",
    "field" : "dynamicVisual",
    "displayInfo" : {
      "code" : "ERROR.PRM.RECODING_VARIANTS.BAD_REQUEST",
      "parameters" : [ {
        "key" : "field",
        "value" : "dynamicVisual"
      }, {
        "key" : "detail",
        "value" : "Must be null for Reduced Object"
      }, {
        "key" : "reduced",
        "value" : "true"
      } ]
    }
  } ]
}

Create Complete Platforms - Unsuccessfully

POST /v1/platforms

Request Body Fields

Path Type Optional Description

parentServicePointSloid

String

false

Parent Service Point Sloid: Unique code for locations that is used in customer information. The structure is described in the “Swiss Location ID” specification, chapter 4.2. The document is available here: transportdatamanagement.ch/standards/

Example value: ch:1:sloid:18771

Length must be between 1 and 500

boardingDevice

String

true

Wheelchair aids

Must be one of ["TO_BE_COMPLETED","NO","NOT_APPLICABLE","RAMPS","LIFTS"]

adviceAccessInfo

String

true

Information on access to transport

additionalInformation

String

true

Additional Information

shuttle

String

true

Shuttle

Must be one of ["TO_BE_COMPLETED","YES","NO"]

contrastingAreas

String

true

Tactile-visual marking of platform surfaces

Must be one of ["TO_BE_COMPLETED","YES","NO"]

dynamicAudio

String

true

Acoustic information

Must be one of ["TO_BE_COMPLETED","YES","NO","NOT_APPLICABLE"]

dynamicVisual

String

true

Dynamic optical information

Must be one of ["TO_BE_COMPLETED","YES","NO","NOT_APPLICABLE"]

height

Decimal

true

Height [cm]

inclination

Decimal

true

Cross-platform slope [%]

inclinationLongitudinal

Decimal

true

Longitudinal inclination of the holding edge [%]

inclinationWidth

Decimal

true

Platform longitudinal inclination [%]

infoOpportunities

Array[String]

true

Information options

Must be one of ["TO_BE_COMPLETED","STATIC_VISUAL_INFORMATION","ELECTRONIC_VISUAL_INFORMATION_DEPARTURES","ELECTRONIC_VISUAL_INFORMATION_COMPLETE","ACOUSTIC_INFORMATION","TEXT_TO_SPEECH_DEPARTURES","TEXT_TO_SPEECH_COMPLETE"]

levelAccessWheelchair

String

true

Must be one of ["TO_BE_COMPLETED","YES","NO","NOT_APPLICABLE"]

partialElevation

Boolean

true

superelevation

Decimal

true

Track superelevation value [mm]

tactileSystem

String

true

Must be one of ["TO_BE_COMPLETED","YES","NO"]

attentionField

String

true

Must be one of ["TO_BE_COMPLETED","YES","NO"]

vehicleAccess

String

true

Must be one of ["TO_BE_COMPLETED","PLATFORM_ACCESS_WITHOUT_ASSISTANCE","PLATFORM_ACCESS_WITH_ASSISTANCE","PLATFORM_ACCESS_WITH_ASSISTANCE_WHEN_NOTIFIED","PLATFORM_NOT_WHEELCHAIR_ACCESSIBLE"]

wheelchairAreaLength

Decimal

true

Wheelchair Area Length [mm]

wheelchairAreaWidth

Decimal

true

Wheelchair Area Width [mm]

sloid

String

true

Unique code for locations that is used in customer information. The structure is described in the “Swiss Location ID” specification, chapter 4.2. The document is available here: transportdatamanagement.ch/standards/

Example value: ch:1:sloid:18771:1

Length must be between 1 and 500

id

Integer

true

This ID helps identify versions of a prm object in the use case front end and/or update. This ID can be deleted if the version is no longer present. Do not use this ID to map your object to a prm object. To do this, use the sloid or parentServicePointSloid in combination with the data range (valid from/valid until).

Example value: 1

validFrom

String

false

Valid from

validTo

String

false

Valid to

etagVersion

Integer

true

Optimistic locking version - instead of ETag HTTP Header (see RFC7232:Section 2.3)

Example value: 5

creationDate

String

true

Object creation date

Example value: 01.01.2000

creator

String

true

User creator

Example value: u123456

editionDate

String

true

Last edition date

Example value: 01.01.2000

editor

String

true

User editor

Example value: u123456

status

String

true

Status

Must be one of ["DRAFT","VALIDATED","IN_REVIEW","WITHDRAWN","REVOKED"]

Example request

$ curl 'http://localhost:8080/v1/platforms' -i -X POST \
    -H 'Content-Type: application/json;charset=UTF-8' \
    -d '{
  "creationDate" : null,
  "creator" : null,
  "editionDate" : null,
  "editor" : null,
  "status" : "VALIDATED",
  "id" : null,
  "validFrom" : "2000-01-01",
  "validTo" : "2000-12-31",
  "etagVersion" : null,
  "sloid" : "ch:1:sloid:12345:1",
  "parentServicePointSloid" : "ch:1:sloid:7000",
  "boardingDevice" : "LIFTS",
  "adviceAccessInfo" : "Access Information Advice",
  "additionalInformation" : "additional info",
  "shuttle" : "NO",
  "contrastingAreas" : "YES",
  "dynamicAudio" : "NOT_APPLICABLE",
  "dynamicVisual" : "TO_BE_COMPLETED",
  "height" : 123.1,
  "inclination" : 123.12,
  "inclinationLongitudinal" : null,
  "inclinationWidth" : 123.12,
  "infoOpportunities" : [ ],
  "levelAccessWheelchair" : "NO",
  "partialElevation" : null,
  "superelevation" : 321.123,
  "tactileSystem" : null,
  "attentionField" : null,
  "vehicleAccess" : null,
  "wheelchairAreaLength" : null,
  "wheelchairAreaWidth" : null
}'

Example response

HTTP/1.1 400 Bad Request
Content-Type: application/json
Content-Length: 620

{
  "status" : 400,
  "message" : "PlatformVersion with sloid [ch:1:sloid:12345:1] cannot be save: Attempting to save a Complete object with wrong properties population!",
  "error" : null,
  "details" : [ {
    "message" : "Must be null for Completed Object",
    "field" : "height",
    "displayInfo" : {
      "code" : "ERROR.PRM.RECODING_VARIANTS.BAD_REQUEST",
      "parameters" : [ {
        "key" : "field",
        "value" : "height"
      }, {
        "key" : "detail",
        "value" : "Must be null for Completed Object"
      }, {
        "key" : "reduced",
        "value" : "false"
      } ]
    }
  } ]
}

Update Platforms - Successfully

PUT /v1/platforms/1011

Path Variables

Path Variable Type Optional Description

id

Integer

false

Request Body Fields

Path Type Optional Description

parentServicePointSloid

String

false

Parent Service Point Sloid: Unique code for locations that is used in customer information. The structure is described in the “Swiss Location ID” specification, chapter 4.2. The document is available here: transportdatamanagement.ch/standards/

Example value: ch:1:sloid:18771

Length must be between 1 and 500

boardingDevice

String

true

Wheelchair aids

Must be one of ["TO_BE_COMPLETED","NO","NOT_APPLICABLE","RAMPS","LIFTS"]

adviceAccessInfo

String

true

Information on access to transport

additionalInformation

String

true

Additional Information

shuttle

String

true

Shuttle

Must be one of ["TO_BE_COMPLETED","YES","NO"]

contrastingAreas

String

true

Tactile-visual marking of platform surfaces

Must be one of ["TO_BE_COMPLETED","YES","NO"]

dynamicAudio

String

true

Acoustic information

Must be one of ["TO_BE_COMPLETED","YES","NO","NOT_APPLICABLE"]

dynamicVisual

String

true

Dynamic optical information

Must be one of ["TO_BE_COMPLETED","YES","NO","NOT_APPLICABLE"]

height

Decimal

true

Height [cm]

inclination

Decimal

true

Cross-platform slope [%]

inclinationLongitudinal

Decimal

true

Longitudinal inclination of the holding edge [%]

inclinationWidth

Decimal

true

Platform longitudinal inclination [%]

infoOpportunities

Array[String]

true

Information options

Must be one of ["TO_BE_COMPLETED","STATIC_VISUAL_INFORMATION","ELECTRONIC_VISUAL_INFORMATION_DEPARTURES","ELECTRONIC_VISUAL_INFORMATION_COMPLETE","ACOUSTIC_INFORMATION","TEXT_TO_SPEECH_DEPARTURES","TEXT_TO_SPEECH_COMPLETE"]

levelAccessWheelchair

String

true

Must be one of ["TO_BE_COMPLETED","YES","NO","NOT_APPLICABLE"]

partialElevation

Boolean

true

superelevation

Decimal

true

Track superelevation value [mm]

tactileSystem

String

true

Must be one of ["TO_BE_COMPLETED","YES","NO"]

attentionField

String

true

Must be one of ["TO_BE_COMPLETED","YES","NO"]

vehicleAccess

String

true

Must be one of ["TO_BE_COMPLETED","PLATFORM_ACCESS_WITHOUT_ASSISTANCE","PLATFORM_ACCESS_WITH_ASSISTANCE","PLATFORM_ACCESS_WITH_ASSISTANCE_WHEN_NOTIFIED","PLATFORM_NOT_WHEELCHAIR_ACCESSIBLE"]

wheelchairAreaLength

Decimal

true

Wheelchair Area Length [mm]

wheelchairAreaWidth

Decimal

true

Wheelchair Area Width [mm]

sloid

String

true

Unique code for locations that is used in customer information. The structure is described in the “Swiss Location ID” specification, chapter 4.2. The document is available here: transportdatamanagement.ch/standards/

Example value: ch:1:sloid:18771:1

Length must be between 1 and 500

id

Integer

true

This ID helps identify versions of a prm object in the use case front end and/or update. This ID can be deleted if the version is no longer present. Do not use this ID to map your object to a prm object. To do this, use the sloid or parentServicePointSloid in combination with the data range (valid from/valid until).

Example value: 1

validFrom

String

false

Valid from

validTo

String

false

Valid to

etagVersion

Integer

true

Optimistic locking version - instead of ETag HTTP Header (see RFC7232:Section 2.3)

Example value: 5

creationDate

String

true

Object creation date

Example value: 01.01.2000

creator

String

true

User creator

Example value: u123456

editionDate

String

true

Last edition date

Example value: 01.01.2000

editor

String

true

User editor

Example value: u123456

status

String

true

Status

Must be one of ["DRAFT","VALIDATED","IN_REVIEW","WITHDRAWN","REVOKED"]

Example request

$ curl 'http://localhost:8080/v1/platforms/1011' -i -X PUT \
    -H 'Content-Type: application/json;charset=UTF-8' \
    -d '{
  "creationDate" : "2025-06-06T09:33:32.164905",
  "creator" : "e123456",
  "editionDate" : "2025-06-06T09:33:32.165797",
  "editor" : "e123456",
  "status" : null,
  "id" : null,
  "validFrom" : "2001-01-01",
  "validTo" : "2001-12-31",
  "etagVersion" : 0,
  "sloid" : "ch:1:sloid:12345:1",
  "parentServicePointSloid" : "ch:1:sloid:7000",
  "boardingDevice" : "LIFTS",
  "adviceAccessInfo" : "Access Information Advice",
  "additionalInformation" : "additional 2",
  "shuttle" : "NO",
  "contrastingAreas" : "YES",
  "dynamicAudio" : "NOT_APPLICABLE",
  "dynamicVisual" : "TO_BE_COMPLETED",
  "height" : null,
  "inclination" : 123.12,
  "inclinationLongitudinal" : null,
  "inclinationWidth" : 123.12,
  "infoOpportunities" : [ ],
  "levelAccessWheelchair" : "NO",
  "partialElevation" : null,
  "superelevation" : 321.123,
  "tactileSystem" : null,
  "attentionField" : null,
  "vehicleAccess" : null,
  "wheelchairAreaLength" : null,
  "wheelchairAreaWidth" : null
}'

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 2206

[ {
  "creationDate" : "2025-06-06T09:33:32.087452",
  "creator" : "e123456",
  "editionDate" : "2025-06-06T09:33:32.087486",
  "editor" : "e123456",
  "status" : "VALIDATED",
  "id" : 1010,
  "validFrom" : "2000-01-01",
  "validTo" : "2000-12-31",
  "etagVersion" : 1,
  "sloid" : "ch:1:sloid:12345:1",
  "parentServicePointSloid" : "ch:1:sloid:7000",
  "boardingDevice" : "LIFTS",
  "adviceAccessInfo" : "Access Information Advice",
  "additionalInformation" : "additional 1",
  "shuttle" : "NO",
  "contrastingAreas" : "YES",
  "dynamicAudio" : "NOT_APPLICABLE",
  "dynamicVisual" : "TO_BE_COMPLETED",
  "height" : null,
  "inclination" : 123.12,
  "inclinationLongitudinal" : null,
  "inclinationWidth" : 123.12,
  "infoOpportunities" : [ ],
  "levelAccessWheelchair" : "NO",
  "partialElevation" : null,
  "superelevation" : 321.123,
  "tactileSystem" : null,
  "attentionField" : null,
  "vehicleAccess" : null,
  "wheelchairAreaLength" : null,
  "wheelchairAreaWidth" : null,
  "number" : {
    "number" : 1234567,
    "uicCountryCode" : 12,
    "numberShort" : 34567,
    "checkDigit" : 8
  }
}, {
  "creationDate" : "2025-06-06T09:33:32.164905",
  "creator" : "e123456",
  "editionDate" : "2025-06-06T09:33:32.387536",
  "editor" : "e123456",
  "status" : "VALIDATED",
  "id" : 1011,
  "validFrom" : "2001-01-01",
  "validTo" : "2001-12-31",
  "etagVersion" : 2,
  "sloid" : "ch:1:sloid:12345:1",
  "parentServicePointSloid" : "ch:1:sloid:7000",
  "boardingDevice" : "LIFTS",
  "adviceAccessInfo" : "Access Information Advice",
  "additionalInformation" : "additional 2",
  "shuttle" : "NO",
  "contrastingAreas" : "YES",
  "dynamicAudio" : "NOT_APPLICABLE",
  "dynamicVisual" : "TO_BE_COMPLETED",
  "height" : null,
  "inclination" : 123.12,
  "inclinationLongitudinal" : null,
  "inclinationWidth" : 123.12,
  "infoOpportunities" : [ ],
  "levelAccessWheelchair" : "NO",
  "partialElevation" : null,
  "superelevation" : 321.123,
  "tactileSystem" : null,
  "attentionField" : null,
  "vehicleAccess" : null,
  "wheelchairAreaLength" : null,
  "wheelchairAreaWidth" : null,
  "number" : {
    "number" : 1234567,
    "uicCountryCode" : 12,
    "numberShort" : 34567,
    "checkDigit" : 8
  }
} ]

Create Platforms without Stop Point- Unsuccessfully

POST /v1/platforms

Request Body Fields

Path Type Optional Description

parentServicePointSloid

String

false

Parent Service Point Sloid: Unique code for locations that is used in customer information. The structure is described in the “Swiss Location ID” specification, chapter 4.2. The document is available here: transportdatamanagement.ch/standards/

Example value: ch:1:sloid:18771

Length must be between 1 and 500

boardingDevice

String

true

Wheelchair aids

Must be one of ["TO_BE_COMPLETED","NO","NOT_APPLICABLE","RAMPS","LIFTS"]

adviceAccessInfo

String

true

Information on access to transport

additionalInformation

String

true

Additional Information

shuttle

String

true

Shuttle

Must be one of ["TO_BE_COMPLETED","YES","NO"]

contrastingAreas

String

true

Tactile-visual marking of platform surfaces

Must be one of ["TO_BE_COMPLETED","YES","NO"]

dynamicAudio

String

true

Acoustic information

Must be one of ["TO_BE_COMPLETED","YES","NO","NOT_APPLICABLE"]

dynamicVisual

String

true

Dynamic optical information

Must be one of ["TO_BE_COMPLETED","YES","NO","NOT_APPLICABLE"]

height

Decimal

true

Height [cm]

inclination

Decimal

true

Cross-platform slope [%]

inclinationLongitudinal

Decimal

true

Longitudinal inclination of the holding edge [%]

inclinationWidth

Decimal

true

Platform longitudinal inclination [%]

infoOpportunities

Array[String]

true

Information options

Must be one of ["TO_BE_COMPLETED","STATIC_VISUAL_INFORMATION","ELECTRONIC_VISUAL_INFORMATION_DEPARTURES","ELECTRONIC_VISUAL_INFORMATION_COMPLETE","ACOUSTIC_INFORMATION","TEXT_TO_SPEECH_DEPARTURES","TEXT_TO_SPEECH_COMPLETE"]

levelAccessWheelchair

String

true

Must be one of ["TO_BE_COMPLETED","YES","NO","NOT_APPLICABLE"]

partialElevation

Boolean

true

superelevation

Decimal

true

Track superelevation value [mm]

tactileSystem

String

true

Must be one of ["TO_BE_COMPLETED","YES","NO"]

attentionField

String

true

Must be one of ["TO_BE_COMPLETED","YES","NO"]

vehicleAccess

String

true

Must be one of ["TO_BE_COMPLETED","PLATFORM_ACCESS_WITHOUT_ASSISTANCE","PLATFORM_ACCESS_WITH_ASSISTANCE","PLATFORM_ACCESS_WITH_ASSISTANCE_WHEN_NOTIFIED","PLATFORM_NOT_WHEELCHAIR_ACCESSIBLE"]

wheelchairAreaLength

Decimal

true

Wheelchair Area Length [mm]

wheelchairAreaWidth

Decimal

true

Wheelchair Area Width [mm]

sloid

String

true

Unique code for locations that is used in customer information. The structure is described in the “Swiss Location ID” specification, chapter 4.2. The document is available here: transportdatamanagement.ch/standards/

Example value: ch:1:sloid:18771:1

Length must be between 1 and 500

id

Integer

true

This ID helps identify versions of a prm object in the use case front end and/or update. This ID can be deleted if the version is no longer present. Do not use this ID to map your object to a prm object. To do this, use the sloid or parentServicePointSloid in combination with the data range (valid from/valid until).

Example value: 1

validFrom

String

false

Valid from

validTo

String

false

Valid to

etagVersion

Integer

true

Optimistic locking version - instead of ETag HTTP Header (see RFC7232:Section 2.3)

Example value: 5

creationDate

String

true

Object creation date

Example value: 01.01.2000

creator

String

true

User creator

Example value: u123456

editionDate

String

true

Last edition date

Example value: 01.01.2000

editor

String

true

User editor

Example value: u123456

status

String

true

Status

Must be one of ["DRAFT","VALIDATED","IN_REVIEW","WITHDRAWN","REVOKED"]

Example request

$ curl 'http://localhost:8080/v1/platforms' -i -X POST \
    -H 'Content-Type: application/json;charset=UTF-8' \
    -d '{
  "creationDate" : null,
  "creator" : null,
  "editionDate" : null,
  "editor" : null,
  "status" : "VALIDATED",
  "id" : null,
  "validFrom" : "2000-01-01",
  "validTo" : "2000-12-31",
  "etagVersion" : null,
  "sloid" : "ch:1:sloid:12345:1",
  "parentServicePointSloid" : "ch:1:sloid:7000",
  "boardingDevice" : "LIFTS",
  "adviceAccessInfo" : "Access Information Advice",
  "additionalInformation" : "additional info",
  "shuttle" : "NO",
  "contrastingAreas" : "YES",
  "dynamicAudio" : "NOT_APPLICABLE",
  "dynamicVisual" : "TO_BE_COMPLETED",
  "height" : 123.12,
  "inclination" : 123.12,
  "inclinationLongitudinal" : 123.12,
  "inclinationWidth" : 123.12,
  "infoOpportunities" : [ "ACOUSTIC_INFORMATION", "ELECTRONIC_VISUAL_INFORMATION_COMPLETE", "TEXT_TO_SPEECH_DEPARTURES" ],
  "levelAccessWheelchair" : "NO",
  "partialElevation" : false,
  "superelevation" : 321.123,
  "tactileSystem" : "TO_BE_COMPLETED",
  "attentionField" : null,
  "vehicleAccess" : "PLATFORM_ACCESS_WITH_ASSISTANCE_WHEN_NOTIFIED",
  "wheelchairAreaLength" : 456.321,
  "wheelchairAreaWidth" : 321.123
}'

Example response

HTTP/1.1 412 Precondition Failed
Content-Type: application/json
Content-Length: 133

{
  "status" : 412,
  "message" : "The stop point with sloid ch:1:sloid:7000 does not exist.",
  "error" : null,
  "details" : null
}