Skip to content

Vista Digital Platform (V1)

Download OpenAPI description
Languages
Servers
Mock server
https://developer.vista.co/_mock/openapi/digital-platform/openapi

Completed Order Assets

Operations

Completed Orders

Operations

Orders

Operations

Seats

Operations

Discounts

Operations

Events

Operations

Showtimes

Operations

Films

Operations

Gift Cards

Operations

Items

Operations

Journeys

Operations

Third Party Passes

Operations

Loyalty

Operations

Authentication

Operations

Members

Operations

Updates the member personal details of the currently authenticated member

Request

Full personalDetails object from GetMember containing updated values must be sent to this endpoint. If field is not provided then it's considered that it must be cleared.

Note: currently Vista Loyalty doesn't support clearing fields. Also enum fields don't support setting value 0 where it is equivalent of clearing field (e.g. NotSpecified)

Licenses Required

  • Vista.Ocapi
Headers
loyaltySessionTokenstring

Current Loyalty session token, represents a 'signed-in' member

Connect-Region-Codestring

Region Code

Bodyrequired

Member personal details to update

nameobject(PersonName)required

Gets the name

name.​givenNamestring or null

Gets the given name

name.​familyNamestring or null

Gets the family name

name.​middleNamestring or null

Gets the middle or any additional name

contactDetailsobject(MemberContactDetails)required

Gets the contact details

contactDetails.​phoneNumbersArray of objects(PhoneNumber)required

Gets the list of phone number entities

contactDetails.​phoneNumbers[].​typestring(PhoneNumberType)required

Gets the type

Enum"Home""Mobile""Work""Business""Fax"
contactDetails.​phoneNumbers[].​numberstringnon-emptyrequired

Gets the phone number

contactDetails.​addressobject(MemberAddress)

Gets the physical address

contactDetails.​pushNotificationTokenobject(PushNotificationToken)

Gets the push notification token

interestSubscriptionsArray of objects(MemberInterestSubscription)required

Gets the list of member interest subscription entities

interestSubscriptions[].​interestIdinteger(int32)required

Gets the unique identifier of the interest

interestSubscriptions[].​interestContactMethodIdsArray of integers(int32)required

Gets the list of unique identifiers of the selected interest contact method entities

preferencesobject(MemberPreferences)required

Gets the preferences

preferences.​sitesobject(MemberSitePreferences)required

Gets the site preferences

preferences.​sites.​pickupSiteIdstring or null

Gets the unique identifier of the loyalty site used for pickup orders

preferences.​sites.​primarySiteIdstring or null

Gets the unique identifier of the primary loyalty site

preferences.​sites.​preferredSiteIdsArray of stringsrequired

Gets the list of unique identifiers of the preferred loyalty site entities

preferences.​genresobject(MemberGenrePreferences)required

Gets the genre preferences

preferences.​genres.​preferredGenreIdsArray of stringsrequired

Gets the list of unique identifiers of the preferred loyalty genre entities

preferences.​contactobject(MemberContactPreferences)required

Gets the contact preferences

preferences.​contact.​contactMethodsArray of strings(MemberContactMethod)required

Gets the list of preferred member contact method entities

Items Enum"Sms""Email""Mail""Phone""Fax"
preferences.​contact.​mailerFrequencystring(MemberMailerFrequency)required

Gets the mailer frequency

Enum"Never""Weekly""Fortnightly""Monthly"
preferences.​contact.​allowThirdPartyContactbooleanrequired

Gets a value indicating whether the member has consented to being contacted by third parties

preferences.​customPreferencesArray of objects(MemberCustomPreference)required

Gets the list of member custom preference entities

preferences.​customPreferences[].​customPreferenceIdinteger(int32)required

Gets the unique identifier of the custom preference

preferences.​customPreferences[].​customPreferenceOptionIdsArray of integers(int32)required

Gets the list of unique identifiers of the selected custom preference option entities

preferences.​languageTagstring or null

Gets the IETF (RFC 4646) language tag

Example: "en-US"
preferences.​allowThirdPartyProfilingbooleanrequired

Gets a value indicating whether the member has consented to third-party profiling

birthDatestring or null(date-time)

Gets the date of birth, if known

maritalStatusstring(MemberMaritalStatus)required

Gets the marital status

Enum"NotSpecified""Single""Married""Partnered""Divorced""Other"
genderstring(MemberGender)required

Gets the gender

Enum"NotSpecified""Male""Female""Other"
educationLevelIdinteger or null(int32)

Gets the unique identifier of the education level, if known

occupationIdinteger or null(int32)

Gets the unique identifier of the occupation, if known

householdPersonCountinteger or null(int32)

Gets the number of people living in the household, if known

nationalIdstring or null

Gets the national unique identifier, if known

externalIdstring or null

Gets the unique identifier used in a previous loyalty system, if known

curl -i -X PUT \
  https://developer.vista.co/_mock/openapi/digital-platform/openapi/ocapi/v1/members/current/personal-details \
  -H 'Connect-Region-Code: string' \
  -H 'Content-Type: application/json' \
  -H 'loyaltySessionToken: string' \
  -d '{
    "name": {
      "givenName": "string",
      "familyName": "string",
      "middleName": "string"
    },
    "contactDetails": {
      "phoneNumbers": [
        {
          "type": "Home",
          "number": "string"
        }
      ],
      "address": {
        "line1": "60 Khyber Pass Road",
        "suburb": "Grafton",
        "city": "Auckland",
        "state": null,
        "postCode": "1023",
        "country": "New Zealand"
      },
      "pushNotificationToken": {
        "id": "string",
        "type": "Android"
      }
    },
    "interestSubscriptions": [
      {
        "interestId": 0,
        "interestContactMethodIds": [
          0
        ]
      }
    ],
    "preferences": {
      "sites": {
        "pickupSiteId": "string",
        "primarySiteId": "string",
        "preferredSiteIds": [
          "string"
        ]
      },
      "genres": {
        "preferredGenreIds": [
          "string"
        ]
      },
      "contact": {
        "contactMethods": [
          "Sms"
        ],
        "mailerFrequency": "Never",
        "allowThirdPartyContact": true
      },
      "customPreferences": [
        {
          "customPreferenceId": 0,
          "customPreferenceOptionIds": [
            0
          ]
        }
      ],
      "languageTag": "en-US",
      "allowThirdPartyProfiling": true
    },
    "birthDate": "2019-08-24T14:15:22Z",
    "maritalStatus": "NotSpecified",
    "gender": "NotSpecified",
    "educationLevelId": 0,
    "occupationId": 0,
    "householdPersonCount": 0,
    "nationalId": "string",
    "externalId": "string"
  }'

Responses

Member personal details updated.

Updates the member photo of the currently authenticated member

Request

The photo is uploaded via a form-data key/value pair with type file and the key being "MemberPhoto".

The Photo file should be uploaded using the HTTP request body type form-data set to File, with a Key of MemberPhoto and Value of the photo file to be uploaded.

Supported photo file formats are: JPEG, BMP, PNG, HEIC, WebP. File size limit and photo dimensions are configured in Loyalty. The file size limit specifies and upper-bound on file size, while photo dimensions are an exact requirement.

An HTTP Bad Request is returned in the following cases:

  • No Loyalty member is currently logged in.
  • No photo is uploaded.
  • Based on Loyalty configuration, the Loyalty member isn't eligible to update their photo
  • The photo file size is too large.
  • The photo dimensions don't match the dimensions configured in Loyalty.
  • The photo format isn't accepted.

An HTTP Bad Gateway is returned if the connection to Loyalty times out.

Licenses Required

  • Vista.Ocapi
  • Vista.Loyalty.MemberPhotos
Headers
loyaltySessionTokenstring

Current Loyalty session token, represents a 'signed-in' member

Connect-Region-Codestring

Region Code

Bodymultipart/form-data
ContentTypestring
ContentDispositionstring
Headersobject
Lengthinteger(int64)
Namestring
FileNamestring
curl -i -X PUT \
  https://developer.vista.co/_mock/openapi/digital-platform/openapi/ocapi/v1/members/current/photo \
  -H 'Connect-Region-Code: string' \
  -H 'Content-Type: multipart/form-data' \
  -H 'loyaltySessionToken: string' \
  -F ContentType=string \
  -F ContentDisposition=string \
  -F 'Headers[property1]=string' \
  -F 'Headers[property2]=string' \
  -F Length=0 \
  -F Name=string \
  -F FileName=string

Responses

Success

Bodyapplication/json
memberPhotoobject(MemberPhotoBase)

Gets the member photo entity

Response
application/json
{ "memberPhoto": { "isUpdatable": true, "canBeUpdatedAt": "2019-08-24T14:15:22Z", "uriExpiresAt": "2019-08-24T14:15:22Z", "uri": "http://example.com" } }

Validates whether an email is available for a new member

Request

This endpoint validates email correctly only if the ForceUniqueEmails system setting in Loyalty is set to true.

Licenses Required

  • Vista.Ocapi
Headers
Connect-Region-Codestring

Region Code

Bodyrequired

Details to validate email availability

emailstring or null

Gets the email address

curl -i -X POST \
  https://developer.vista.co/_mock/openapi/digital-platform/openapi/ocapi/v1/members/email-availability \
  -H 'Connect-Region-Code: string' \
  -H 'Content-Type: application/json' \
  -d '{
    "email": "string"
  }'

Responses

Success

Bodyapplication/json
isAvailableboolean

Gets a value indicating whether the provided email is available

Response
application/json
{ "isAvailable": true }

Member Completed Orders

Operations

Friends

Operations

Password Reset

Operations

Payments

Operations

Member Rewards

Operations

Subscriptions

Operations

Ticket Redemption Cards

Operations

Credentials

Operations

Watched Films

Operations

Watchlist Films

Operations

Completion

Operations

Gift shop

Operations

Vouchers

Operations

Refunds

Operations

Seating

Operations

Browsing

Operations

Sites

Operations

Surveys

Operations

Third-Party Member Schemes

Operations

Ticket Prices

Operations

Tracking Events

Operations

Tips

Operations