Service Points API Guide
Read ServicePointVersions - Successfully
GET /v1/service-points
Query Parameters
Parameter | Type | Optional | Description |
---|---|---|---|
sloids |
Array[String] |
true |
|
numbers |
Array[Integer] |
true |
|
uicCountryCodes |
Array[Integer] |
true |
|
isoCountryCodes |
Array[String] |
true |
|
numbersShort |
Array[Integer] |
true |
|
abbreviations |
Array[String] |
true |
|
businessOrganisationSboids |
Array[String] |
true |
|
countries |
Array[String] |
true |
Must be one of ["AZERBAIJAN","BELGIUM","BELARUS","SERB_BOSNIA_AND_HERZEGOVINA","BOSNIA_AND_HERZEGOVINA","CROAT_BOSNIA_AND_HERZEGOVINA","BULGARIA","CANADA","CHINA","NORTH_KOREA","SOUTH_KOREA","CROATIA","CUBA","DENMARK","EGYPT","ESTONIA","FINLAND","FRANCE","GEORGIA","GERMANY","JAPAN","GREECE","IRAN","IRAQ","IRELAND","ISRAEL","ITALY","KAZAKHSTAN","KYRGYZSTAN","LATVIA","LEBANON","LITHUANIA","LUXEMBOURG","MACEDONIA","MOROCCO","MOLDOVA","MONGOLIA","MONTENEGRO","NORWAY","NETHERLANDS","POLAND","PORTUGAL","GREAT_BRITAIN","CONGO","CZECH_REPUBLIC","ROMANIA","RUSSIA","SERBIA","SYRIA","SLOVAKIA","SLOVENIA","SPAIN","UNITED_STATES","SOUTH_AFRICA","SWEDEN","SWITZERLAND","TAJIKISTAN","TUNISIA","TURKEY","TURKMENISTAN","UKRAINE","HUNGARY","UZBEKISTAN","VIETNAM","GERMANY_BUS","AUSTRIA_BUS","ITALY_BUS","FRANCE_BUS","AUSTRIA_HUNGARY","BOSNIA_AND_HERZEGOVINA_RAILWAY","AFGHANISTAN","ALBANIA","ALGERIA","ARMENIA","AUSTRALIA","AUSTRIA","LIECHTENSTEIN","SUDAN","TSCHAD","LIBYEN","MONACO","NIGER","NIGERIA","JEMEN"] |
operatingPointTechnicalTimetableTypes |
Array[String] |
true |
Must be one of ["PROPERTY_LINE","INVESTMENT_LOCATIONS_OPERATING_POINT","COUNTRY_BORDER","UNKNOWN","OPERATING_POINT_BUS","TURNING_LOOP","ASSIGNED_OPERATING_POINT","BLOCKING_POINT","END_OF_TRACK","LANE_SEPARATION","INTERSECTION","CONNECTING_POINT","LANE_CHANGE","BRANCH","SERVICE_STATION","ERROR_PROFILE","EX_STOP_POINT","ROUTE_SPEED_CHANGE"] |
categories |
Array[String] |
true |
Must be one of ["NOVA_VIRTUAL","BILLETING_MACHINE","PARK_AND_RAIL","MAINTENANCE_POINT","BORDER_POINT","TCV_PASSENGER_TRANSPORT","HIGH_VOLTAGE_AREA","GSMR_POLE","POINT_OF_SALE","DISTRIBUTION_POINT","PROTECTED_PATH","GSMR","HOSTNAME","SIGNAL_BOX","IP_CLEAN_UP","GALLERY","MIGRATION_DIVERSE","MIGRATION_CENTRAL_SERVICE","MIGRATION_MOBILE_EQUIPE","MIGRATION_TCV_PV","TRAVEL_AGENCY","TRAVEL_AGENCY_ORGANISATION"] |
operatingPointTypes |
Array[String] |
true |
Must be one of ["INVENTORY_POINT","SYSTEM_OPERATING_POINT","RAILNET_POINT"] |
stopPointTypes |
Array[String] |
true |
Must be one of ["ORDERLY","ON_REQUEST","ZONE_ON_REQUEST","TEMPORARY","OUT_OF_ORDER","UNKNOWN"] |
meansOfTransport |
Array[String] |
true |
Must be one of ["TRAIN","BUS","TRAM","BOAT","CABLE_CAR","CHAIRLIFT","CABLE_RAILWAY","RACK_RAILWAY","METRO","ELEVATOR","UNKNOWN"] |
statusRestrictions |
Array[String] |
true |
Must be one of ["DRAFT","VALIDATED","IN_REVIEW","WITHDRAWN","REVOKED"] |
operatingPoint |
Boolean |
true |
|
withTimetable |
Boolean |
true |
|
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/service-points' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 2279
{
"objects" : [ {
"creationDate" : "2025-05-26T10:57:59.791502",
"creator" : "e123456",
"editionDate" : "2025-05-26T10:57:59.791521",
"editor" : "e123456",
"status" : "VALIDATED",
"id" : 1027,
"designationLong" : null,
"designationOfficial" : "Bern, Wyleregg",
"abbreviation" : null,
"freightServicePoint" : false,
"sortCodeOfDestinationStation" : null,
"businessOrganisation" : "ch:1:sboid:100626",
"categories" : [ ],
"operatingPointType" : null,
"operatingPointTechnicalTimetableType" : null,
"operatingPointTrafficPointType" : null,
"operatingPointRouteNetwork" : true,
"meansOfTransport" : [ "BUS" ],
"stopPointType" : null,
"validFrom" : "2014-12-14",
"validTo" : "2021-03-31",
"etagVersion" : 0,
"number" : {
"number" : 8589008,
"numberShort" : 89008,
"checkDigit" : 7,
"uicCountryCode" : 85
},
"sloid" : "ch:1:sloid:89008",
"operatingPointKilometerMaster" : null,
"operatingPoint" : true,
"operatingPointWithTimetable" : true,
"terminationInProgress" : false,
"servicePointGeolocation" : {
"spatialReference" : "LV95",
"lv95" : {
"north" : 1201099.0,
"east" : 2600783.0,
"spatialReference" : "LV95"
},
"wgs84" : {
"north" : 46.96096808019,
"east" : 7.44891972221,
"spatialReference" : "WGS84"
},
"lv03" : {
"north" : 201099.0,
"east" : 600783.0,
"spatialReference" : "LV03"
},
"height" : 555.0,
"swissLocation" : {
"canton" : "BERN",
"cantonInformation" : {
"fsoNumber" : 2,
"name" : "Bern",
"abbreviation" : "BE"
},
"district" : {
"fsoNumber" : 246,
"districtName" : "Bern-Mittelland"
},
"localityMunicipality" : {
"fsoNumber" : 351,
"municipalityName" : "Bern",
"localityName" : "Bern"
}
},
"isoCountryCode" : "CH"
},
"country" : "SWITZERLAND",
"stopPoint" : true,
"trafficPoint" : true,
"borderPoint" : false,
"operatingPointKilometer" : false,
"fareStop" : false,
"hasGeolocation" : true
} ],
"totalCount" : 1
}
Read ServicePoint by ServicePointNumber - Successfully
GET /v1/service-points/8589008
Path Variables
Path Variable | Type | Optional | Description |
---|---|---|---|
servicePointNumber |
Integer |
false |
Example request
$ curl 'http://localhost:8080/v1/service-points/8589008' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 2084
[ {
"creationDate" : "2025-05-26T10:58:12.16775",
"creator" : "e123456",
"editionDate" : "2025-05-26T10:58:12.167767",
"editor" : "e123456",
"status" : "VALIDATED",
"id" : 1083,
"designationLong" : null,
"designationOfficial" : "Bern, Wyleregg",
"abbreviation" : null,
"freightServicePoint" : false,
"sortCodeOfDestinationStation" : null,
"businessOrganisation" : "ch:1:sboid:100626",
"categories" : [ ],
"operatingPointType" : null,
"operatingPointTechnicalTimetableType" : null,
"operatingPointTrafficPointType" : null,
"operatingPointRouteNetwork" : true,
"meansOfTransport" : [ "BUS" ],
"stopPointType" : null,
"validFrom" : "2014-12-14",
"validTo" : "2021-03-31",
"etagVersion" : 0,
"number" : {
"number" : 8589008,
"numberShort" : 89008,
"checkDigit" : 7,
"uicCountryCode" : 85
},
"sloid" : "ch:1:sloid:89008",
"operatingPointKilometerMaster" : null,
"operatingPoint" : true,
"operatingPointWithTimetable" : true,
"terminationInProgress" : false,
"servicePointGeolocation" : {
"spatialReference" : "LV95",
"lv95" : {
"north" : 1201099.0,
"east" : 2600783.0,
"spatialReference" : "LV95"
},
"wgs84" : {
"north" : 46.96096808019,
"east" : 7.44891972221,
"spatialReference" : "WGS84"
},
"lv03" : {
"north" : 201099.0,
"east" : 600783.0,
"spatialReference" : "LV03"
},
"height" : 555.0,
"swissLocation" : {
"canton" : "BERN",
"cantonInformation" : {
"fsoNumber" : 2,
"name" : "Bern",
"abbreviation" : "BE"
},
"district" : {
"fsoNumber" : 246,
"districtName" : "Bern-Mittelland"
},
"localityMunicipality" : {
"fsoNumber" : 351,
"municipalityName" : "Bern",
"localityName" : "Bern"
}
},
"isoCountryCode" : "CH"
},
"country" : "SWITZERLAND",
"stopPoint" : true,
"trafficPoint" : true,
"borderPoint" : false,
"operatingPointKilometer" : false,
"fareStop" : false,
"hasGeolocation" : true
} ]
Read ServicePoint by ServicePointNumber - Unsuccessfully
GET /v1/service-points
Query Parameters
Parameter | Type | Optional | Description |
---|---|---|---|
sloids |
Array[String] |
true |
|
numbers |
Array[Integer] |
true |
|
uicCountryCodes |
Array[Integer] |
true |
|
isoCountryCodes |
Array[String] |
true |
|
numbersShort |
Array[Integer] |
true |
|
abbreviations |
Array[String] |
true |
|
businessOrganisationSboids |
Array[String] |
true |
|
countries |
Array[String] |
true |
Must be one of ["AZERBAIJAN","BELGIUM","BELARUS","SERB_BOSNIA_AND_HERZEGOVINA","BOSNIA_AND_HERZEGOVINA","CROAT_BOSNIA_AND_HERZEGOVINA","BULGARIA","CANADA","CHINA","NORTH_KOREA","SOUTH_KOREA","CROATIA","CUBA","DENMARK","EGYPT","ESTONIA","FINLAND","FRANCE","GEORGIA","GERMANY","JAPAN","GREECE","IRAN","IRAQ","IRELAND","ISRAEL","ITALY","KAZAKHSTAN","KYRGYZSTAN","LATVIA","LEBANON","LITHUANIA","LUXEMBOURG","MACEDONIA","MOROCCO","MOLDOVA","MONGOLIA","MONTENEGRO","NORWAY","NETHERLANDS","POLAND","PORTUGAL","GREAT_BRITAIN","CONGO","CZECH_REPUBLIC","ROMANIA","RUSSIA","SERBIA","SYRIA","SLOVAKIA","SLOVENIA","SPAIN","UNITED_STATES","SOUTH_AFRICA","SWEDEN","SWITZERLAND","TAJIKISTAN","TUNISIA","TURKEY","TURKMENISTAN","UKRAINE","HUNGARY","UZBEKISTAN","VIETNAM","GERMANY_BUS","AUSTRIA_BUS","ITALY_BUS","FRANCE_BUS","AUSTRIA_HUNGARY","BOSNIA_AND_HERZEGOVINA_RAILWAY","AFGHANISTAN","ALBANIA","ALGERIA","ARMENIA","AUSTRALIA","AUSTRIA","LIECHTENSTEIN","SUDAN","TSCHAD","LIBYEN","MONACO","NIGER","NIGERIA","JEMEN"] |
operatingPointTechnicalTimetableTypes |
Array[String] |
true |
Must be one of ["PROPERTY_LINE","INVESTMENT_LOCATIONS_OPERATING_POINT","COUNTRY_BORDER","UNKNOWN","OPERATING_POINT_BUS","TURNING_LOOP","ASSIGNED_OPERATING_POINT","BLOCKING_POINT","END_OF_TRACK","LANE_SEPARATION","INTERSECTION","CONNECTING_POINT","LANE_CHANGE","BRANCH","SERVICE_STATION","ERROR_PROFILE","EX_STOP_POINT","ROUTE_SPEED_CHANGE"] |
categories |
Array[String] |
true |
Must be one of ["NOVA_VIRTUAL","BILLETING_MACHINE","PARK_AND_RAIL","MAINTENANCE_POINT","BORDER_POINT","TCV_PASSENGER_TRANSPORT","HIGH_VOLTAGE_AREA","GSMR_POLE","POINT_OF_SALE","DISTRIBUTION_POINT","PROTECTED_PATH","GSMR","HOSTNAME","SIGNAL_BOX","IP_CLEAN_UP","GALLERY","MIGRATION_DIVERSE","MIGRATION_CENTRAL_SERVICE","MIGRATION_MOBILE_EQUIPE","MIGRATION_TCV_PV","TRAVEL_AGENCY","TRAVEL_AGENCY_ORGANISATION"] |
operatingPointTypes |
Array[String] |
true |
Must be one of ["INVENTORY_POINT","SYSTEM_OPERATING_POINT","RAILNET_POINT"] |
stopPointTypes |
Array[String] |
true |
Must be one of ["ORDERLY","ON_REQUEST","ZONE_ON_REQUEST","TEMPORARY","OUT_OF_ORDER","UNKNOWN"] |
meansOfTransport |
Array[String] |
true |
Must be one of ["TRAIN","BUS","TRAM","BOAT","CABLE_CAR","CHAIRLIFT","CABLE_RAILWAY","RACK_RAILWAY","METRO","ELEVATOR","UNKNOWN"] |
statusRestrictions |
Array[String] |
true |
Must be one of ["DRAFT","VALIDATED","IN_REVIEW","WITHDRAWN","REVOKED"] |
operatingPoint |
Boolean |
true |
|
withTimetable |
Boolean |
true |
|
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/service-points?numbers=12345678' -i -X GET
Example response
HTTP/1.1 400 Bad Request
Content-Type: application/json
Content-Length: 519
{
"status" : 400,
"message" : "Constraint for requestbody was violated",
"error" : "Method argument not valid error",
"details" : [ {
"message" : "Value 12345678 rejected due to must be less than or equal to 9999999",
"field" : "numbers[0]",
"displayInfo" : {
"code" : "ERROR.CONSTRAINT",
"parameters" : [ {
"key" : "rejectedValue",
"value" : "12345678"
}, {
"key" : "cause",
"value" : "must be less than or equal to 9999999"
} ]
}
} ]
}
Read ServicePointVersion by ID - Successfully
GET /v1/service-points/versions/1067
Path Variables
Path Variable | Type | Optional | Description |
---|---|---|---|
id |
Integer |
false |
Example request
$ curl 'http://localhost:8080/v1/service-points/versions/1067' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 2080
{
"creationDate" : "2025-05-26T10:58:09.464776",
"creator" : "e123456",
"editionDate" : "2025-05-26T10:58:09.46479",
"editor" : "e123456",
"status" : "VALIDATED",
"id" : 1067,
"designationLong" : null,
"designationOfficial" : "Bern, Wyleregg",
"abbreviation" : null,
"freightServicePoint" : false,
"sortCodeOfDestinationStation" : null,
"businessOrganisation" : "ch:1:sboid:100626",
"categories" : [ ],
"operatingPointType" : null,
"operatingPointTechnicalTimetableType" : null,
"operatingPointTrafficPointType" : null,
"operatingPointRouteNetwork" : true,
"meansOfTransport" : [ "BUS" ],
"stopPointType" : null,
"validFrom" : "2014-12-14",
"validTo" : "2021-03-31",
"etagVersion" : 0,
"number" : {
"number" : 8589008,
"numberShort" : 89008,
"checkDigit" : 7,
"uicCountryCode" : 85
},
"sloid" : "ch:1:sloid:89008",
"operatingPointKilometerMaster" : null,
"operatingPoint" : true,
"operatingPointWithTimetable" : true,
"terminationInProgress" : false,
"servicePointGeolocation" : {
"spatialReference" : "LV95",
"lv95" : {
"north" : 1201099.0,
"east" : 2600783.0,
"spatialReference" : "LV95"
},
"wgs84" : {
"north" : 46.96096808019,
"east" : 7.44891972221,
"spatialReference" : "WGS84"
},
"lv03" : {
"north" : 201099.0,
"east" : 600783.0,
"spatialReference" : "LV03"
},
"height" : 555.0,
"swissLocation" : {
"canton" : "BERN",
"cantonInformation" : {
"fsoNumber" : 2,
"name" : "Bern",
"abbreviation" : "BE"
},
"district" : {
"fsoNumber" : 246,
"districtName" : "Bern-Mittelland"
},
"localityMunicipality" : {
"fsoNumber" : 351,
"municipalityName" : "Bern",
"localityName" : "Bern"
}
},
"isoCountryCode" : "CH"
},
"country" : "SWITZERLAND",
"stopPoint" : true,
"trafficPoint" : true,
"borderPoint" : false,
"operatingPointKilometer" : false,
"fareStop" : false,
"hasGeolocation" : true
}
Read ServicePoint by ServicePointNumber - NotFound
GET /v1/service-points/1234567
Path Variables
Path Variable | Type | Optional | Description |
---|---|---|---|
servicePointNumber |
Integer |
false |
Example request
$ curl 'http://localhost:8080/v1/service-points/1234567' -i -X GET
Example response
HTTP/1.1 404 Not Found
Content-Type: application/json
Content-Length: 440
{
"status" : 404,
"message" : "Entity not found",
"error" : "Not found",
"details" : [ {
"message" : "Object with servicePointNumber 1234567 not found",
"field" : "servicePointNumber",
"displayInfo" : {
"code" : "ERROR.ENTITY_NOT_FOUND",
"parameters" : [ {
"key" : "field",
"value" : "servicePointNumber"
}, {
"key" : "value",
"value" : "1234567"
} ]
}
} ]
}
Search ServicePoint successfully
POST /v1/service-points/search
Request Body Fields
Path | Type | Optional | Description |
---|---|---|---|
value |
String |
false |
Search over: - ServicePointNumber/DiDok-Number formerly known as UIC-Code - Official designation of a location - Location abbreviation - Long designation of a location Length must be between 2 and 2147483647 |
Example request
$ curl 'http://localhost:8080/v1/service-points/search' -i -X POST \
-H 'Content-Type: application/json;charset=UTF-8' \
-d '{
"value" : "bern"
}'
Example response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 104
[ {
"number" : 8589008,
"designationOfficial" : "Bern, Wyleregg",
"sloid" : "ch:1:sloid:89008"
} ]
Search ServicePoint when no match
POST /v1/service-points/search
Request Body Fields
Path | Type | Optional | Description |
---|---|---|---|
value |
String |
false |
Search over: - ServicePointNumber/DiDok-Number formerly known as UIC-Code - Official designation of a location - Location abbreviation - Long designation of a location Length must be between 2 and 2147483647 |
Example request
$ curl 'http://localhost:8080/v1/service-points/search' -i -X POST \
-H 'Content-Type: application/json;charset=UTF-8' \
-d '{
"value" : "zug"
}'
Example response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 3
[ ]
Search ServicePoint when try to search with less than 2 digits
POST /v1/service-points/search
Request Body Fields
Path | Type | Optional | Description |
---|---|---|---|
value |
String |
false |
Search over: - ServicePointNumber/DiDok-Number formerly known as UIC-Code - Official designation of a location - Location abbreviation - Long designation of a location Length must be between 2 and 2147483647 |
Example request
$ curl 'http://localhost:8080/v1/service-points/search' -i -X POST \
-H 'Content-Type: application/json;charset=UTF-8' \
-d '{
"value" : "b"
}'
Example response
HTTP/1.1 400 Bad Request
Content-Type: application/json
Content-Length: 528
{
"status" : 400,
"message" : "Constraint for requestbody was violated",
"error" : "Method argument not valid error",
"details" : [ {
"message" : "Value b rejected due to You must enter at least 2 digits to start a search!",
"field" : "value",
"displayInfo" : {
"code" : "ERROR.CONSTRAINT",
"parameters" : [ {
"key" : "rejectedValue",
"value" : "b"
}, {
"key" : "cause",
"value" : "You must enter at least 2 digits to start a search!"
} ]
}
} ]
}
Search ServicePoint with route network true successfully
POST /v1/service-points/search-sp-with-route-network
Request Body Fields
Path | Type | Optional | Description |
---|---|---|---|
value |
String |
false |
Search over: - ServicePointNumber/DiDok-Number formerly known as UIC-Code - Official designation of a location - Location abbreviation - Long designation of a location Length must be between 2 and 2147483647 |
Example request
$ curl 'http://localhost:8080/v1/service-points/search-sp-with-route-network' -i -X POST \
-H 'Content-Type: application/json;charset=UTF-8' \
-d '{
"value" : "bern"
}'
Example response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 104
[ {
"number" : 8589008,
"designationOfficial" : "Bern, Wyleregg",
"sloid" : "ch:1:sloid:89008"
} ]
Search ServicePoint when no match
POST /v1/service-points/search
Request Body Fields
Path | Type | Optional | Description |
---|---|---|---|
value |
String |
false |
Search over: - ServicePointNumber/DiDok-Number formerly known as UIC-Code - Official designation of a location - Location abbreviation - Long designation of a location Length must be between 2 and 2147483647 |
Example request
$ curl 'http://localhost:8080/v1/service-points/search' -i -X POST \
-H 'Content-Type: application/json;charset=UTF-8' \
-d '{
"value" : "zug"
}'
Example response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 3
[ ]
Search ServicePoint when try to search with less than 2 digits
POST /v1/service-points/search
Request Body Fields
Path | Type | Optional | Description |
---|---|---|---|
value |
String |
false |
Search over: - ServicePointNumber/DiDok-Number formerly known as UIC-Code - Official designation of a location - Location abbreviation - Long designation of a location Length must be between 2 and 2147483647 |
Example request
$ curl 'http://localhost:8080/v1/service-points/search' -i -X POST \
-H 'Content-Type: application/json;charset=UTF-8' \
-d '{
"value" : "b"
}'
Example response
HTTP/1.1 400 Bad Request
Content-Type: application/json
Content-Length: 528
{
"status" : 400,
"message" : "Constraint for requestbody was violated",
"error" : "Method argument not valid error",
"details" : [ {
"message" : "Value b rejected due to You must enter at least 2 digits to start a search!",
"field" : "value",
"displayInfo" : {
"code" : "ERROR.CONSTRAINT",
"parameters" : [ {
"key" : "rejectedValue",
"value" : "b"
}, {
"key" : "cause",
"value" : "You must enter at least 2 digits to start a search!"
} ]
}
} ]
}
Search SwissOnly ServicePoint successfully
POST /v1/service-points/search-swiss-only
Request Body Fields
Path | Type | Optional | Description |
---|---|---|---|
value |
String |
false |
Search over: - ServicePointNumber/DiDok-Number formerly known as UIC-Code - Official designation of a location - Location abbreviation - Long designation of a location Length must be between 2 and 2147483647 |
Example request
$ curl 'http://localhost:8080/v1/service-points/search-swiss-only' -i -X POST \
-H 'Content-Type: application/json;charset=UTF-8' \
-d '{
"value" : "bern"
}'
Example response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 104
[ {
"number" : 8589008,
"designationOfficial" : "Bern, Wyleregg",
"sloid" : "ch:1:sloid:89008"
} ]
Create ServicePoint
POST /v1/service-points
Request Body Fields
Path | Type | Optional | Description |
---|---|---|---|
numberShort |
Integer |
true |
Five digits number. Represent service point ID. Example value: 34505 |
country |
String |
false |
The country for the service point. Only needed if ServicePointNumber is created automatically Example value: SWITZERLAND Must be one of ["AZERBAIJAN","BELGIUM","BELARUS","SERB_BOSNIA_AND_HERZEGOVINA","BOSNIA_AND_HERZEGOVINA","CROAT_BOSNIA_AND_HERZEGOVINA","BULGARIA","CANADA","CHINA","NORTH_KOREA","SOUTH_KOREA","CROATIA","CUBA","DENMARK","EGYPT","ESTONIA","FINLAND","FRANCE","GEORGIA","GERMANY","JAPAN","GREECE","IRAN","IRAQ","IRELAND","ISRAEL","ITALY","KAZAKHSTAN","KYRGYZSTAN","LATVIA","LEBANON","LITHUANIA","LUXEMBOURG","MACEDONIA","MOROCCO","MOLDOVA","MONGOLIA","MONTENEGRO","NORWAY","NETHERLANDS","POLAND","PORTUGAL","GREAT_BRITAIN","CONGO","CZECH_REPUBLIC","ROMANIA","RUSSIA","SERBIA","SYRIA","SLOVAKIA","SLOVENIA","SPAIN","UNITED_STATES","SOUTH_AFRICA","SWEDEN","SWITZERLAND","TAJIKISTAN","TUNISIA","TURKEY","TURKMENISTAN","UKRAINE","HUNGARY","UZBEKISTAN","VIETNAM","GERMANY_BUS","AUSTRIA_BUS","ITALY_BUS","FRANCE_BUS","AUSTRIA_HUNGARY","BOSNIA_AND_HERZEGOVINA_RAILWAY","AFGHANISTAN","ALBANIA","ALGERIA","ARMENIA","AUSTRALIA","AUSTRIA","LIECHTENSTEIN","SUDAN","TSCHAD","LIBYEN","MONACO","NIGER","NIGERIA","JEMEN"] |
operatingPointKilometerMasterNumber |
Integer |
true |
Reference to a operatingPointRouteNetwork. OperatingPointKilometer are always related to a operatingPointRouteNetwork Example value: 8034505 |
servicePointGeolocation |
Object |
true |
|
servicePointGeolocation.spatialReference |
String |
false |
Coordinate system spatial reference Example value: LV95 Must be one of ["WGS84WEB","LV95","LV03","WGS84"] |
servicePointGeolocation.north |
Decimal |
false |
North longitude Example value: 225738.00000000000 |
servicePointGeolocation.east |
Decimal |
false |
Eastern longitude Example value: 681821.00000000000 |
servicePointGeolocation.height |
Decimal |
true |
Height of the coordinate point Example value: 540.20000 |
id |
Integer |
true |
This ID helps identify versions of a service point 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 service point. To do this, use the sloid or number in combination with the data range (valid from/valid until). Example value: 1 |
designationLong |
String |
true |
Long designation of a location. Used primarily in customer information. Not all systems can process names of this length. Example value: Biel/Bienne Bözingenfeld/Champs-de-Boujean Length must be between 2 and 50 |
designationOfficial |
String |
false |
Official designation of a location that must be used by all recipients Example value: Biel/Bienne Bözingenfeld/Champ Length must be between 2 and 30 |
abbreviation |
String |
true |
Location abbreviation. Mainly used by the railways. Abbreviations may not be used as a code for identifying locations. Example value: BIBD Must conform to regex [A-Z0-9]* Length must be between 1 and 6 |
freightServicePoint |
Boolean |
false |
Indicates if this a Service Point for freights. |
sortCodeOfDestinationStation |
String |
true |
SortCodeOfDestinationStation - only for FreightServicePoint Example value: 1234 Length must be between 0 and 5 |
businessOrganisation |
String |
false |
SBOID of the associated BusinessOrganisation Example value: ch:1:sboid:100001 Length must be between 1 and 50 |
categories |
Array[String] |
true |
ServicePoint Categories: Assignment of service points to defined business cases. Must be one of ["NOVA_VIRTUAL","BILLETING_MACHINE","PARK_AND_RAIL","MAINTENANCE_POINT","BORDER_POINT","TCV_PASSENGER_TRANSPORT","HIGH_VOLTAGE_AREA","GSMR_POLE","POINT_OF_SALE","DISTRIBUTION_POINT","PROTECTED_PATH","GSMR","HOSTNAME","SIGNAL_BOX","IP_CLEAN_UP","GALLERY","MIGRATION_DIVERSE","MIGRATION_CENTRAL_SERVICE","MIGRATION_MOBILE_EQUIPE","MIGRATION_TCV_PV","TRAVEL_AGENCY","TRAVEL_AGENCY_ORGANISATION"] |
operatingPointType |
String |
true |
OperatingPointType, Specifies the detailed intended use of a operating point. Must be one of ["INVENTORY_POINT","SYSTEM_OPERATING_POINT","RAILNET_POINT"] |
operatingPointTechnicalTimetableType |
String |
true |
OperatingPointTechnicalTimetableType, all service points relevant for timetable planning and publication. At most one of OperatingPointTechnicalTimetableType, OperatingPointTrafficPointType may be set Must be one of ["PROPERTY_LINE","INVESTMENT_LOCATIONS_OPERATING_POINT","COUNTRY_BORDER","UNKNOWN","OPERATING_POINT_BUS","TURNING_LOOP","ASSIGNED_OPERATING_POINT","BLOCKING_POINT","END_OF_TRACK","LANE_SEPARATION","INTERSECTION","CONNECTING_POINT","LANE_CHANGE","BRANCH","SERVICE_STATION","ERROR_PROFILE","EX_STOP_POINT","ROUTE_SPEED_CHANGE"] |
operatingPointTrafficPointType |
String |
true |
OperatingPointTrafficPointType, Specifies the detailed intended use of a traffic point.At most one of OperatingPointTechnicalTimetableType, OperatingPointTrafficPointType may be set Must be one of ["TARIFF_POINT"] |
operatingPointRouteNetwork |
Boolean |
false |
ServicePoint is OperatingPointRouteNetwork Example value: false |
meansOfTransport |
Array[String] |
true |
Means of transport. Indicates for which means of transport a stop is intended/equipped. Mandatory for StopPoints Must be one of ["TRAIN","BUS","TRAM","BOAT","CABLE_CAR","CHAIRLIFT","CABLE_RAILWAY","RACK_RAILWAY","METRO","ELEVATOR","UNKNOWN"] |
stopPointType |
String |
true |
Type of the StopPoint, Indicates for which type of traffic (e.g. regular traffic) a stop was recorded. Must be one of ["ORDERLY","ON_REQUEST","ZONE_ON_REQUEST","TEMPORARY","OUT_OF_ORDER","UNKNOWN"] |
validFrom |
String |
false |
|
validTo |
String |
false |
|
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/service-points' -i -X POST \
-H 'Content-Type: application/json;charset=UTF-8' \
-d '{
"creationDate" : null,
"creator" : null,
"editionDate" : null,
"editor" : null,
"status" : null,
"id" : null,
"designationLong" : "designation long 1",
"designationOfficial" : "Aargau Strasse",
"abbreviation" : "ABC",
"freightServicePoint" : false,
"sortCodeOfDestinationStation" : "39136",
"businessOrganisation" : "ch:1:sboid:100871",
"categories" : [ "POINT_OF_SALE" ],
"operatingPointType" : null,
"operatingPointTechnicalTimetableType" : null,
"operatingPointTrafficPointType" : null,
"operatingPointRouteNetwork" : true,
"meansOfTransport" : [ "TRAIN" ],
"stopPointType" : "ON_REQUEST",
"validFrom" : "2010-12-11",
"validTo" : "2019-08-10",
"etagVersion" : null,
"operatingPointKilometerMasterNumber" : null,
"servicePointGeolocation" : {
"spatialReference" : "LV95",
"north" : 1201099.0,
"east" : 2600783.0,
"height" : 555.0,
"country" : "SWITZERLAND",
"swissLocation" : {
"canton" : "BERN",
"cantonInformation" : {
"fsoNumber" : 2,
"name" : "Bern",
"abbreviation" : "BE"
},
"district" : {
"fsoNumber" : 246,
"districtName" : "Bern-Mittelland"
},
"localityMunicipality" : {
"fsoNumber" : 351,
"municipalityName" : "Bern",
"localityName" : "Bern"
}
}
},
"numberShort" : null,
"country" : "SWITZERLAND"
}'
Example response
HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 2208
{
"creationDate" : "2025-05-26T10:58:20.479196",
"creator" : "e123456",
"editionDate" : "2025-05-26T10:58:20.4792",
"editor" : "e123456",
"status" : "DRAFT",
"id" : 1127,
"designationLong" : "designation long 1",
"designationOfficial" : "Aargau Strasse",
"abbreviation" : "ABC",
"freightServicePoint" : false,
"sortCodeOfDestinationStation" : "39136",
"businessOrganisation" : "ch:1:sboid:100871",
"categories" : [ "POINT_OF_SALE" ],
"operatingPointType" : null,
"operatingPointTechnicalTimetableType" : null,
"operatingPointTrafficPointType" : null,
"operatingPointRouteNetwork" : true,
"meansOfTransport" : [ "TRAIN" ],
"stopPointType" : "ON_REQUEST",
"validFrom" : "2010-12-11",
"validTo" : "2019-08-10",
"etagVersion" : 0,
"number" : {
"number" : 8500001,
"numberShort" : 1,
"checkDigit" : 8,
"uicCountryCode" : 85
},
"sloid" : "ch:1:sloid:1",
"operatingPointKilometerMaster" : {
"number" : 8500001,
"numberShort" : 1,
"checkDigit" : 8,
"uicCountryCode" : 85
},
"operatingPoint" : true,
"operatingPointWithTimetable" : true,
"terminationInProgress" : false,
"servicePointGeolocation" : {
"spatialReference" : "LV95",
"lv95" : {
"north" : 1201099.0,
"east" : 2600783.0,
"spatialReference" : "LV95"
},
"wgs84" : {
"north" : 46.96096808019,
"east" : 7.44891972221,
"spatialReference" : "WGS84"
},
"lv03" : {
"north" : 201099.0,
"east" : 600783.0,
"spatialReference" : "LV03"
},
"height" : 555.0,
"swissLocation" : {
"canton" : "BERN",
"cantonInformation" : {
"fsoNumber" : 2,
"name" : "Bern",
"abbreviation" : "BE"
},
"district" : {
"fsoNumber" : 246,
"districtName" : "Bern-Mittelland"
},
"localityMunicipality" : {
"fsoNumber" : 351,
"municipalityName" : "Bern",
"localityName" : "Bern"
}
},
"isoCountryCode" : "CH"
},
"country" : "SWITZERLAND",
"stopPoint" : true,
"trafficPoint" : true,
"borderPoint" : false,
"operatingPointKilometer" : true,
"fareStop" : false,
"hasGeolocation" : true
}
Validate ServicePoint Status
POST /v1/service-points/versions/1110/skip-workflow
Path Variables
Path Variable | Type | Optional | Description |
---|---|---|---|
id |
Integer |
false |
Example request
$ curl 'http://localhost:8080/v1/service-points/versions/1110/skip-workflow' -i -X POST
Example response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 2214
{
"creationDate" : "2025-05-26T10:58:17.971666",
"creator" : "e123456",
"editionDate" : "2025-05-26T10:58:18.065569",
"editor" : "e123456",
"status" : "VALIDATED",
"id" : 1110,
"designationLong" : "designation long 1",
"designationOfficial" : "Aargau Strasse",
"abbreviation" : "ABC",
"freightServicePoint" : false,
"sortCodeOfDestinationStation" : "39136",
"businessOrganisation" : "ch:1:sboid:100871",
"categories" : [ "POINT_OF_SALE" ],
"operatingPointType" : null,
"operatingPointTechnicalTimetableType" : null,
"operatingPointTrafficPointType" : null,
"operatingPointRouteNetwork" : true,
"meansOfTransport" : [ "TRAIN" ],
"stopPointType" : "ON_REQUEST",
"validFrom" : "2010-12-11",
"validTo" : "2019-08-10",
"etagVersion" : 1,
"number" : {
"number" : 8500001,
"numberShort" : 1,
"checkDigit" : 8,
"uicCountryCode" : 85
},
"sloid" : "ch:1:sloid:1",
"operatingPointKilometerMaster" : {
"number" : 8500001,
"numberShort" : 1,
"checkDigit" : 8,
"uicCountryCode" : 85
},
"operatingPoint" : true,
"operatingPointWithTimetable" : true,
"terminationInProgress" : false,
"servicePointGeolocation" : {
"spatialReference" : "LV95",
"lv95" : {
"north" : 1201099.0,
"east" : 2600783.0,
"spatialReference" : "LV95"
},
"wgs84" : {
"north" : 46.96096808019,
"east" : 7.44891972221,
"spatialReference" : "WGS84"
},
"lv03" : {
"north" : 201099.0,
"east" : 600783.0,
"spatialReference" : "LV03"
},
"height" : 555.0,
"swissLocation" : {
"canton" : "BERN",
"cantonInformation" : {
"fsoNumber" : 2,
"name" : "Bern",
"abbreviation" : "BE"
},
"district" : {
"fsoNumber" : 246,
"districtName" : "Bern-Mittelland"
},
"localityMunicipality" : {
"fsoNumber" : 351,
"municipalityName" : "Bern",
"localityName" : "Bern"
}
},
"isoCountryCode" : "CH"
},
"country" : "SWITZERLAND",
"stopPoint" : true,
"trafficPoint" : true,
"borderPoint" : false,
"operatingPointKilometer" : true,
"fareStop" : false,
"hasGeolocation" : true
}
Revoke ServicePoints Status
POST /v1/service-points/8500001/revoke
Path Variables
Path Variable | Type | Optional | Description |
---|---|---|---|
servicePointNumber |
Integer |
false |
Example request
$ curl 'http://localhost:8080/v1/service-points/8500001/revoke' -i -X POST
Example response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 4428
[ {
"creationDate" : "2025-05-26T10:58:00.476528",
"creator" : "e123456",
"editionDate" : "2025-05-26T10:58:00.866175",
"editor" : "e123456",
"status" : "REVOKED",
"id" : 1031,
"designationLong" : "designation long 1",
"designationOfficial" : "Aargau Strasse",
"abbreviation" : "ABC",
"freightServicePoint" : false,
"sortCodeOfDestinationStation" : "39136",
"businessOrganisation" : "ch:1:sboid:100871",
"categories" : [ "POINT_OF_SALE" ],
"operatingPointType" : null,
"operatingPointTechnicalTimetableType" : null,
"operatingPointTrafficPointType" : null,
"operatingPointRouteNetwork" : true,
"meansOfTransport" : [ "TRAIN" ],
"stopPointType" : "ON_REQUEST",
"validFrom" : "2010-12-11",
"validTo" : "2019-08-10",
"etagVersion" : 2,
"number" : {
"number" : 8500001,
"numberShort" : 1,
"checkDigit" : 8,
"uicCountryCode" : 85
},
"sloid" : "ch:1:sloid:1",
"operatingPointKilometerMaster" : {
"number" : 8500001,
"numberShort" : 1,
"checkDigit" : 8,
"uicCountryCode" : 85
},
"operatingPoint" : true,
"operatingPointWithTimetable" : true,
"terminationInProgress" : false,
"servicePointGeolocation" : {
"spatialReference" : "LV95",
"lv95" : {
"north" : 1201099.0,
"east" : 2600783.0,
"spatialReference" : "LV95"
},
"wgs84" : {
"north" : 46.96096808019,
"east" : 7.44891972221,
"spatialReference" : "WGS84"
},
"lv03" : {
"north" : 201099.0,
"east" : 600783.0,
"spatialReference" : "LV03"
},
"height" : 555.0,
"swissLocation" : {
"canton" : "BERN",
"cantonInformation" : {
"fsoNumber" : 2,
"name" : "Bern",
"abbreviation" : "BE"
},
"district" : {
"fsoNumber" : 246,
"districtName" : "Bern-Mittelland"
},
"localityMunicipality" : {
"fsoNumber" : 351,
"municipalityName" : "Bern",
"localityName" : "Bern"
}
},
"isoCountryCode" : "CH"
},
"country" : "SWITZERLAND",
"stopPoint" : true,
"trafficPoint" : true,
"borderPoint" : false,
"operatingPointKilometer" : true,
"fareStop" : false,
"hasGeolocation" : true
}, {
"creationDate" : "2025-05-26T10:58:00.697201",
"creator" : "e123456",
"editionDate" : "2025-05-26T10:58:00.867966",
"editor" : "e123456",
"status" : "REVOKED",
"id" : 1032,
"designationLong" : "designation long 1",
"designationOfficial" : "Aargau Strasse",
"abbreviation" : "ABC",
"freightServicePoint" : false,
"sortCodeOfDestinationStation" : "39136",
"businessOrganisation" : "ch:1:sboid:100871",
"categories" : [ "POINT_OF_SALE" ],
"operatingPointType" : null,
"operatingPointTechnicalTimetableType" : null,
"operatingPointTrafficPointType" : null,
"operatingPointRouteNetwork" : true,
"meansOfTransport" : [ "BUS" ],
"stopPointType" : "ON_REQUEST",
"validFrom" : "2019-08-11",
"validTo" : "2020-08-10",
"etagVersion" : 3,
"number" : {
"number" : 8500001,
"numberShort" : 1,
"checkDigit" : 8,
"uicCountryCode" : 85
},
"sloid" : "ch:1:sloid:1",
"operatingPointKilometerMaster" : {
"number" : 8500001,
"numberShort" : 1,
"checkDigit" : 8,
"uicCountryCode" : 85
},
"operatingPoint" : true,
"operatingPointWithTimetable" : true,
"terminationInProgress" : false,
"servicePointGeolocation" : {
"spatialReference" : "LV95",
"lv95" : {
"north" : 1201099.0,
"east" : 2600783.0,
"spatialReference" : "LV95"
},
"wgs84" : {
"north" : 46.96096808019,
"east" : 7.44891972221,
"spatialReference" : "WGS84"
},
"lv03" : {
"north" : 201099.0,
"east" : 600783.0,
"spatialReference" : "LV03"
},
"height" : 555.0,
"swissLocation" : {
"canton" : "BERN",
"cantonInformation" : {
"fsoNumber" : 2,
"name" : "Bern",
"abbreviation" : "BE"
},
"district" : {
"fsoNumber" : 246,
"districtName" : "Bern-Mittelland"
},
"localityMunicipality" : {
"fsoNumber" : 351,
"municipalityName" : "Bern",
"localityName" : "Bern"
}
},
"isoCountryCode" : "CH"
},
"country" : "SWITZERLAND",
"stopPoint" : true,
"trafficPoint" : true,
"borderPoint" : false,
"operatingPointKilometer" : true,
"fareStop" : false,
"hasGeolocation" : true
} ]
Update ServicePoint by ID
PUT /v1/service-points/1038
Path Variables
Path Variable | Type | Optional | Description |
---|---|---|---|
id |
Integer |
false |
Request Body Fields
Path | Type | Optional | Description |
---|---|---|---|
operatingPointKilometerMasterNumber |
Integer |
true |
Reference to a operatingPointRouteNetwork. OperatingPointKilometer are always related to a operatingPointRouteNetwork Example value: 8034505 |
servicePointGeolocation |
Object |
true |
|
servicePointGeolocation.spatialReference |
String |
false |
Coordinate system spatial reference Example value: LV95 Must be one of ["WGS84WEB","LV95","LV03","WGS84"] |
servicePointGeolocation.north |
Decimal |
false |
North longitude Example value: 225738.00000000000 |
servicePointGeolocation.east |
Decimal |
false |
Eastern longitude Example value: 681821.00000000000 |
servicePointGeolocation.height |
Decimal |
true |
Height of the coordinate point Example value: 540.20000 |
id |
Integer |
true |
This ID helps identify versions of a service point 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 service point. To do this, use the sloid or number in combination with the data range (valid from/valid until). Example value: 1 |
designationLong |
String |
true |
Long designation of a location. Used primarily in customer information. Not all systems can process names of this length. Example value: Biel/Bienne Bözingenfeld/Champs-de-Boujean Length must be between 2 and 50 |
designationOfficial |
String |
false |
Official designation of a location that must be used by all recipients Example value: Biel/Bienne Bözingenfeld/Champ Length must be between 2 and 30 |
abbreviation |
String |
true |
Location abbreviation. Mainly used by the railways. Abbreviations may not be used as a code for identifying locations. Example value: BIBD Must conform to regex [A-Z0-9]* Length must be between 1 and 6 |
freightServicePoint |
Boolean |
false |
Indicates if this a Service Point for freights. |
sortCodeOfDestinationStation |
String |
true |
SortCodeOfDestinationStation - only for FreightServicePoint Example value: 1234 Length must be between 0 and 5 |
businessOrganisation |
String |
false |
SBOID of the associated BusinessOrganisation Example value: ch:1:sboid:100001 Length must be between 1 and 50 |
categories |
Array[String] |
true |
ServicePoint Categories: Assignment of service points to defined business cases. Must be one of ["NOVA_VIRTUAL","BILLETING_MACHINE","PARK_AND_RAIL","MAINTENANCE_POINT","BORDER_POINT","TCV_PASSENGER_TRANSPORT","HIGH_VOLTAGE_AREA","GSMR_POLE","POINT_OF_SALE","DISTRIBUTION_POINT","PROTECTED_PATH","GSMR","HOSTNAME","SIGNAL_BOX","IP_CLEAN_UP","GALLERY","MIGRATION_DIVERSE","MIGRATION_CENTRAL_SERVICE","MIGRATION_MOBILE_EQUIPE","MIGRATION_TCV_PV","TRAVEL_AGENCY","TRAVEL_AGENCY_ORGANISATION"] |
operatingPointType |
String |
true |
OperatingPointType, Specifies the detailed intended use of a operating point. Must be one of ["INVENTORY_POINT","SYSTEM_OPERATING_POINT","RAILNET_POINT"] |
operatingPointTechnicalTimetableType |
String |
true |
OperatingPointTechnicalTimetableType, all service points relevant for timetable planning and publication. At most one of OperatingPointTechnicalTimetableType, OperatingPointTrafficPointType may be set Must be one of ["PROPERTY_LINE","INVESTMENT_LOCATIONS_OPERATING_POINT","COUNTRY_BORDER","UNKNOWN","OPERATING_POINT_BUS","TURNING_LOOP","ASSIGNED_OPERATING_POINT","BLOCKING_POINT","END_OF_TRACK","LANE_SEPARATION","INTERSECTION","CONNECTING_POINT","LANE_CHANGE","BRANCH","SERVICE_STATION","ERROR_PROFILE","EX_STOP_POINT","ROUTE_SPEED_CHANGE"] |
operatingPointTrafficPointType |
String |
true |
OperatingPointTrafficPointType, Specifies the detailed intended use of a traffic point.At most one of OperatingPointTechnicalTimetableType, OperatingPointTrafficPointType may be set Must be one of ["TARIFF_POINT"] |
operatingPointRouteNetwork |
Boolean |
false |
ServicePoint is OperatingPointRouteNetwork Example value: false |
meansOfTransport |
Array[String] |
true |
Means of transport. Indicates for which means of transport a stop is intended/equipped. Mandatory for StopPoints Must be one of ["TRAIN","BUS","TRAM","BOAT","CABLE_CAR","CHAIRLIFT","CABLE_RAILWAY","RACK_RAILWAY","METRO","ELEVATOR","UNKNOWN"] |
stopPointType |
String |
true |
Type of the StopPoint, Indicates for which type of traffic (e.g. regular traffic) a stop was recorded. Must be one of ["ORDERLY","ON_REQUEST","ZONE_ON_REQUEST","TEMPORARY","OUT_OF_ORDER","UNKNOWN"] |
validFrom |
String |
false |
|
validTo |
String |
false |
|
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/service-points/1038' -i -X PUT \
-H 'Content-Type: application/json;charset=UTF-8' \
-d '{
"creationDate" : null,
"creator" : null,
"editionDate" : null,
"editor" : null,
"status" : null,
"id" : null,
"designationLong" : "designation long 1",
"designationOfficial" : "Aargau Strasse",
"abbreviation" : "ABC",
"freightServicePoint" : false,
"sortCodeOfDestinationStation" : "39136",
"businessOrganisation" : "ch:1:sboid:100871",
"categories" : [ "POINT_OF_SALE" ],
"operatingPointType" : null,
"operatingPointTechnicalTimetableType" : null,
"operatingPointTrafficPointType" : null,
"operatingPointRouteNetwork" : true,
"meansOfTransport" : [ "TRAIN" ],
"stopPointType" : "ON_REQUEST",
"validFrom" : "2011-12-11",
"validTo" : "2012-12-11",
"etagVersion" : 0,
"operatingPointKilometerMasterNumber" : null,
"servicePointGeolocation" : {
"spatialReference" : "LV95",
"north" : 1200000.0,
"east" : 2600000.0,
"height" : null,
"country" : "SWITZERLAND",
"swissLocation" : {
"canton" : "AARGAU",
"cantonInformation" : {
"fsoNumber" : 19,
"name" : "Aargau",
"abbreviation" : "AG"
},
"district" : {
"fsoNumber" : 1909,
"districtName" : "Rheinfelden"
},
"localityMunicipality" : {
"fsoNumber" : null,
"municipalityName" : "Hellikon",
"localityName" : "Hellikon"
}
}
},
"numberShort" : null,
"country" : "SWITZERLAND"
}'
Example response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 6637
[ {
"creationDate" : "2025-05-26T10:58:01.883157",
"creator" : "e123456",
"editionDate" : "2025-05-26T10:58:02.07888",
"editor" : "e123456",
"status" : "DRAFT",
"id" : 1038,
"designationLong" : "designation long 1",
"designationOfficial" : "Aargau Strasse",
"abbreviation" : "ABC",
"freightServicePoint" : false,
"sortCodeOfDestinationStation" : "39136",
"businessOrganisation" : "ch:1:sboid:100871",
"categories" : [ "POINT_OF_SALE" ],
"operatingPointType" : null,
"operatingPointTechnicalTimetableType" : null,
"operatingPointTrafficPointType" : null,
"operatingPointRouteNetwork" : true,
"meansOfTransport" : [ "TRAIN" ],
"stopPointType" : "ON_REQUEST",
"validFrom" : "2010-12-11",
"validTo" : "2011-12-10",
"etagVersion" : 2,
"number" : {
"number" : 8500001,
"numberShort" : 1,
"checkDigit" : 8,
"uicCountryCode" : 85
},
"sloid" : "ch:1:sloid:1",
"operatingPointKilometerMaster" : {
"number" : 8500001,
"numberShort" : 1,
"checkDigit" : 8,
"uicCountryCode" : 85
},
"operatingPoint" : true,
"operatingPointWithTimetable" : true,
"terminationInProgress" : false,
"servicePointGeolocation" : {
"spatialReference" : "LV95",
"lv95" : {
"north" : 1201099.0,
"east" : 2600783.0,
"spatialReference" : "LV95"
},
"wgs84" : {
"north" : 46.96096808019,
"east" : 7.44891972221,
"spatialReference" : "WGS84"
},
"lv03" : {
"north" : 201099.0,
"east" : 600783.0,
"spatialReference" : "LV03"
},
"height" : 555.0,
"swissLocation" : {
"canton" : "BERN",
"cantonInformation" : {
"fsoNumber" : 2,
"name" : "Bern",
"abbreviation" : "BE"
},
"district" : {
"fsoNumber" : 246,
"districtName" : "Bern-Mittelland"
},
"localityMunicipality" : {
"fsoNumber" : 351,
"municipalityName" : "Bern",
"localityName" : "Bern"
}
},
"isoCountryCode" : "CH"
},
"country" : "SWITZERLAND",
"stopPoint" : true,
"trafficPoint" : true,
"borderPoint" : false,
"operatingPointKilometer" : true,
"fareStop" : false,
"hasGeolocation" : true
}, {
"creationDate" : "2025-05-26T10:58:02.106605",
"creator" : "e123456",
"editionDate" : "2025-05-26T10:58:02.165312",
"editor" : "e123456",
"status" : "DRAFT",
"id" : 1039,
"designationLong" : "designation long 1",
"designationOfficial" : "Aargau Strasse",
"abbreviation" : "ABC",
"freightServicePoint" : false,
"sortCodeOfDestinationStation" : "39136",
"businessOrganisation" : "ch:1:sboid:100871",
"categories" : [ "POINT_OF_SALE" ],
"operatingPointType" : null,
"operatingPointTechnicalTimetableType" : null,
"operatingPointTrafficPointType" : null,
"operatingPointRouteNetwork" : true,
"meansOfTransport" : [ "TRAIN" ],
"stopPointType" : "ON_REQUEST",
"validFrom" : "2011-12-11",
"validTo" : "2012-12-11",
"etagVersion" : 2,
"number" : {
"number" : 8500001,
"numberShort" : 1,
"checkDigit" : 8,
"uicCountryCode" : 85
},
"sloid" : "ch:1:sloid:1",
"operatingPointKilometerMaster" : {
"number" : 8500001,
"numberShort" : 1,
"checkDigit" : 8,
"uicCountryCode" : 85
},
"operatingPoint" : true,
"operatingPointWithTimetable" : true,
"terminationInProgress" : false,
"servicePointGeolocation" : {
"spatialReference" : "LV95",
"lv95" : {
"north" : 1200000.0,
"east" : 2600000.0,
"spatialReference" : "LV95"
},
"wgs84" : {
"north" : 46.95108277187,
"east" : 7.43863242087,
"spatialReference" : "WGS84"
},
"lv03" : {
"north" : 200000.0,
"east" : 600000.0,
"spatialReference" : "LV03"
},
"height" : 553.6,
"swissLocation" : {
"canton" : "BERN",
"cantonInformation" : {
"fsoNumber" : 2,
"name" : "Bern",
"abbreviation" : "BE"
},
"district" : {
"fsoNumber" : 246,
"districtName" : "Bern-Mittelland"
},
"localityMunicipality" : {
"fsoNumber" : 351,
"municipalityName" : "Bern",
"localityName" : "Bern"
}
},
"isoCountryCode" : "CH"
},
"country" : "SWITZERLAND",
"stopPoint" : true,
"trafficPoint" : true,
"borderPoint" : false,
"operatingPointKilometer" : true,
"fareStop" : false,
"hasGeolocation" : true
}, {
"creationDate" : "2025-05-26T10:58:02.196831",
"creator" : "e123456",
"editionDate" : "2025-05-26T10:58:02.200478",
"editor" : "e123456",
"status" : "DRAFT",
"id" : 1040,
"designationLong" : "designation long 1",
"designationOfficial" : "Aargau Strasse",
"abbreviation" : "ABC",
"freightServicePoint" : false,
"sortCodeOfDestinationStation" : "39136",
"businessOrganisation" : "ch:1:sboid:100871",
"categories" : [ "POINT_OF_SALE" ],
"operatingPointType" : null,
"operatingPointTechnicalTimetableType" : null,
"operatingPointTrafficPointType" : null,
"operatingPointRouteNetwork" : true,
"meansOfTransport" : [ "TRAIN" ],
"stopPointType" : "ON_REQUEST",
"validFrom" : "2012-12-12",
"validTo" : "2019-08-10",
"etagVersion" : 2,
"number" : {
"number" : 8500001,
"numberShort" : 1,
"checkDigit" : 8,
"uicCountryCode" : 85
},
"sloid" : "ch:1:sloid:1",
"operatingPointKilometerMaster" : {
"number" : 8500001,
"numberShort" : 1,
"checkDigit" : 8,
"uicCountryCode" : 85
},
"operatingPoint" : true,
"operatingPointWithTimetable" : true,
"terminationInProgress" : false,
"servicePointGeolocation" : {
"spatialReference" : "LV95",
"lv95" : {
"north" : 1201099.0,
"east" : 2600783.0,
"spatialReference" : "LV95"
},
"wgs84" : {
"north" : 46.96096808019,
"east" : 7.44891972221,
"spatialReference" : "WGS84"
},
"lv03" : {
"north" : 201099.0,
"east" : 600783.0,
"spatialReference" : "LV03"
},
"height" : 555.0,
"swissLocation" : {
"canton" : "BERN",
"cantonInformation" : {
"fsoNumber" : 2,
"name" : "Bern",
"abbreviation" : "BE"
},
"district" : {
"fsoNumber" : 246,
"districtName" : "Bern-Mittelland"
},
"localityMunicipality" : {
"fsoNumber" : 351,
"municipalityName" : "Bern",
"localityName" : "Bern"
}
},
"isoCountryCode" : "CH"
},
"country" : "SWITZERLAND",
"stopPoint" : true,
"trafficPoint" : true,
"borderPoint" : false,
"operatingPointKilometer" : true,
"fareStop" : false,
"hasGeolocation" : true
} ]
Get ServicePoint FotComment
GET /v1/service-points/8589008/fot-comment
Path Variables
Path Variable | Type | Optional | Description |
---|---|---|---|
servicePointNumber |
Integer |
false |
Example request
$ curl 'http://localhost:8080/v1/service-points/8589008/fot-comment' -i -X GET
Example response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 247
{
"creationDate" : "2025-05-26T10:58:30.275708",
"creator" : "e123456",
"editionDate" : "2025-05-26T10:58:30.275717",
"editor" : "e123456",
"status" : null,
"fotComment" : "Very important on demand service point",
"etagVersion" : 0
}
Create ServicePoint FotComment
PUT /v1/service-points/8589008/fot-comment
Path Variables
Path Variable | Type | Optional | Description |
---|---|---|---|
servicePointNumber |
Integer |
false |
Request Body Fields
Path | Type | Optional | Description |
---|---|---|---|
fotComment |
String |
true |
FotComment Example value: Good Service Point. Length must be between 1 and 2000 |
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/service-points/8589008/fot-comment' -i -X PUT \
-H 'Content-Type: application/json;charset=UTF-8' \
-d '{
"creationDate" : null,
"creator" : null,
"editionDate" : null,
"editor" : null,
"status" : null,
"fotComment" : "Very important on demand service point",
"etagVersion" : null
}'
Example response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 247
{
"creationDate" : "2025-05-26T10:58:30.401098",
"creator" : "e123456",
"editionDate" : "2025-05-26T10:58:30.401108",
"editor" : "e123456",
"status" : null,
"fotComment" : "Very important on demand service point",
"etagVersion" : 0
}