Download OpenAPI specification:
The Direct Connect API enables real-time validation and redemption of Go City passes. Instantly verify attractions listed on the terminal, confirm pass eligibility and validate and record a visit on the pass.
Returns terminal profile information, including all offers available on this terminal.
{- "terminalId": "terminal01",
- "displayName": "Empire State Building",
- "offerList": [
- {
- "offerId": "10000000-0000-0000-0000-000000000001",
- "offerName": "General Admission",
- "status": "VALID"
}
]
}A customer visits your attraction with a Go City pass. The pass has a pass number and QR code to scan. The QR code must be scanned to call Go City which confirms the pass is valid to enter your attraction. The scan of the pass is required to also ensure your attraction is paid for this visit.
Validates and creates a Visit. This is a mandatory endpoint. Consumes entitlement and fulfills relevant reservations on success.
| passNumber | string Pass number. |
| offerId | string <uuid> Offer to create a visit for. |
| scanDateTime | string or null <date-time> Date and time of entry in the attraction's timezone. This is only used if the visit is 'offline' = true. |
| offline | boolean or null Indicates whether the scan is being made in real-time or not. This should only be used in case of emergency. |
| netRate | number or null <double> Net rate associated to the scan. |
{- "passNumber": "10000000001",
- "offerId": "10000000-0000-0000-0000-000000000001",
- "netRate": 20
}{- "status": "SUCCESS",
- "message": "Admit One Adult",
- "passNumber": "10000000001",
- "terminalId": "terminal01",
- "passRegion": "NEW_YORK",
- "customerType": "Adult",
- "passType": "ALL_INCLUSIVE",
- "passVariant": "Standard",
- "passBrand": "GO_CITY",
- "offerList": [
- {
- "offerId": "10000000-0000-0000-0000-000000000001",
- "offerName": "General Admission",
- "status": "SUCCESS"
}
], - "visitDateTime": "2025-01-01T00:00:00",
- "code": "SUCCESS_ADULT"
}Pass lookup verifies the eligibility of the pass for a specific attraction and attraction offers. This may include a few experiences, cruises or tours at your attraction.
Retrieves pass information and available offers for a given pass number. If offerId is provided, checks eligibility for that specific offer. If scanDateTime is not provided, uses current time. Requires Basic Auth with Terminal ID.
| passNumber required | string Example: 1234567890 Pass number of the pass |
| scanDateTime | string <date-time> Example: scanDateTime=2024-01-15T10:30:00 Local date time of the scan |
| offerId | string <uuid> Example: offerId=10000000-0000-0000-0000-000000000001 UUID of the offer to check eligibility for |
{- "terminalId": "terminal01",
- "passRegion": "NEW_YORK",
- "customerType": "ADULT",
- "passType": "ALL_INCLUSIVE",
- "passVariant": "STANDARD",
- "passBrand": "GREAT",
- "localDateTime": "2025-01-01T00:00:00",
- "offerList": [
- {
- "offerId": "10000000-0000-0000-0000-000000000001",
- "offerName": "General Admission",
- "status": "VALID"
}, - {
- "offerId": "10000000-0000-0000-0000-000000000002",
- "offerName": "102nd floor",
- "status": "INVALID",
- "message": "No entry: offer not covered by entitlement."
}
]
}