Checks one or more application replica sets in a region for live content, that is, races that are currently being tracked live, and reports what was found without changing anything. This is the landscape-wide, aggregating check: running in the landscape manager, it resolves each named replica set in the region and queries its master, then combines the individual answers into a single result covering all requested replica sets. It is the single-server live-content query (GET /sailingserver/api/v1/livecontent, which each individual server answers about itself) fanned out and aggregated across the replica sets' masters — the two are counterparts rather than duplicates, and they share the same JSON response format.
This is exactly the check that the disruptive landscape operations (upgradeapplicationreplicaset, movetoarchiveserver, removeapplicationreplicaset, movemastertootherinstance and stopreplicatingandremovemasterfromtargetgroups) run internally before proceeding and, unless forced, reject the operation with HTTP status 409 Conflict if live content is present. Call this service beforehand to find out whether such an operation would be blocked, and on which events and races. An empty replicaSets array in the response means no live content was found.
The response has the same structure as the live-content service (grouped by replica set, then event, then tracked race, with all time points encoded as epoch milliseconds in UTC); see there for a detailed description of the fields.
| Webservice Type: | POST |
| Output format: | json |
| Mandatory query parameters: |
regionId, region where the replica sets are located, e.g., eu-west-1
replicaSetName, the name of a replica set to check for live content. This parameter may be repeated to check
several replica sets in one request (e.g., -d 'replicaSetName=alpha' -d 'replicaSetName=beta').
|
| Optional form parameters: |
keyName, the name of the SSH key to use; must identify an existing SSH key by that name in the region specified
and will be used to log on to existing and new instances using a root ssh connection. If not specified, the
key used to launch an instance will be used for trying to connect to it, and a private key with matching name
for the respective region will be looked up.
privateKeyEncryptionPassphrase, the pass phrase to decrypt the private key for the key specified by the keyName parameter
masterReplicationBearerToken, the bearer token used to query the replica sets' masters for their live content; defaults to the
bearer token of the user authenticated for this request.
timeoutInMilliseconds, timeout in milliseconds to wait for responses from nodes when analyzing the replica sets
existing in the region; if not specified, waiting will not time out.
|
| Request method: | POST |
| Example: | curl -X POST -d 'regionId=eu-west-2' -d 'replicaSetName=mynewevent' -d 'keyName=Horst' --data-urlencode 'privateKeyEncryptionPassphrase=HorstsSuperSecretPassword' -H 'Authorization: Bearer RwGK+DV38LKjeuDu+Bx87/3blLJHD7Ff+NCLeud9nRQ=' "https://sapsailing.com/sailinglandscape/api/landscape/livecontentcheck" produces output (empty replicaSets means no live content was found):
{
"checkedAtMillis": 1700000000000,
"replicaSets": [
{
"replicaSetName": "mynewevent",
"events": [
{
"eventId": "a1b2c3d4-0000-0000-0000-000000000000",
"eventName": "Kiel Week 2023",
"eventStartMillis": 1699900000000,
"eventEndMillis": 1700400000000,
"races": [
{
"regattaName": "49er",
"raceName": "R1",
"trackingStartMillis": 1699999000000,
"trackingEndMillis": null
}
]
}
]
}
]
}
|