Event API (v2)

Download OpenAPI description
Languages
Servers
Staging URL
https://apis.spotnana.com/
Spotnana mock server
https://developer.spotnana.com/_mock/openapi/eventapi/

Events

APIs to create and manage events.

Operations

List events

Request

List all the events that match the specified criteria in the request.

Bodyapplication/json
listEventTypestring

Type of events

Enum"UPCOMING""PAST_OR_COMPLETED""CANCELLED_EVENT"
Example: "UPCOMING"
filtersArray of EventUserFilterWrapper (object) or EventStatusFilterWrapper (object) or EventNameFilterWrapper (object) or EventDateRangeFilterWrapper (object) or EventCompanyFilterWrapper (object) or EventParentFilterWrapper (object) or EventTypeFilterWrapper (object) or EventIdFilterWrapper (object)(EventFilter)

List events filters

travelerFiltersArray of objects(EventTravelerFilter)

Filters for event travelers

listByTravelerEventsboolean

Whether listing travelers or events.

Default false
Example: true
offsetinteger>= 0

Indicates from where in the list of events the server should start.

Default 0
Example: 2
limitinteger<= 100

Maximum number of results to be fetched for the query.

Default 10
Example: 2
sortOptionsArray of objects(SearchEventSortOptions)

Sort options for the list events request.

curl -i -X POST \
  https://apis.spotnana.com/v2/events/list \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "listEventType": "UPCOMING",
    "filters": [
      {
        "userFilter": {
          "userId": {
            "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
          }
        }
      }
    ],
    "travelerFilters": [
      {
        "type": "string",
        "searchTerm": "name"
      }
    ],
    "listByTravelerEvents": true,
    "offset": 2,
    "limit": 2,
    "sortOptions": [
      {
        "sortField": "START_DATE",
        "sortOrder": "DESC"
      }
    ]
  }'

Responses

OK

Bodyapplication/json
eventsArray of objects(Event)

List of events

paginationParamsobject(OffsetBasedPaginationResponseParams)

Pagination parameters for response.

Response
application/json
{ "events": [ {} ], "paginationParams": { "totalNumResults": 0 } }

Publish event

Request

Publish a draft event.

Path
eventIdstringrequired

Event ID

Example: 6926658168
curl -i -X POST \
  https://apis.spotnana.com/v2/events/6926658168/publish \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

OK

Bodyapplication/json
idstring
Response
application/json
{ "id": "string" }

Edit basic details of an event

Request

Edit the basic information of an event such as the event name, description, date and time, location, and contacts.

Path
eventIdstringrequired

Event ID

Example: 6926658168
Bodyapplication/json
namestringrequired

Name of the event

typestring(EventType)

Type of an event

Enum"GENERIC""PROGRAM""PROGRAM_SESSION""PROGRAM_TRIP"
descriptionstring

Description of the event

documentsArray of objects(Document)

Documents attached for an event

startDateTimeobject(DateTimeLocal)

Local date and time in ISO 8601 format.

endDateTimeobject(DateTimeLocal)

Local date and time in ISO 8601 format.

locationobject(EventLocation)required

Location for an event

location.​addressobject(PostalAddress)

Postal Address Details

location.​coordinatesobject(Latlng)

Latitude and Longitude for a Location

contactsArray of objects(UserId)

Contacts for the event

referenceUsersArray of objects(UserId)

Event group reference user ids

travelerTypesArray of strings(Persona)

Allowed traveler types for the event

Items Enum"UNKNOWN_PERSONA""EMPLOYEE""GUEST""PERSONAL""RELATIVE""ADHOC"
Example: ["EMPLOYEE"]
bookingStylestring(EventBookingStyle)

Whether the event bookings will be self served by the traveler or would be arranged by an agent for the traveler.

Enum"SELF_SERVE""AGENT_MANAGED"
policyIdstring(uuid)

Policy associated with the event.

Example: "f7b3b3b3-7b3b-4b3b-8b3b-3b3b3b3b3b3b"
allowTravelersPolicystring(AllowTravelersPolicy)

Apply travelers policy when it is less restrictive.

Enum"ALLOWED""NOT_ALLOWED"
emailPreferencesobject(BucketEmailPreferences)

Email communication preferences based on bucket types.

allowTravelersToRsvpstring(AllowTravelersToRsvp)

Allow travelers to rsvp for the event

Enum"ALLOWED""NOT_ALLOWED"
internalNotesstring

Internal notes of the event

Example: "Use travelers default as payment method."
tripOverridesobject(TripOverrides)

Trip overrides for the event

inheritedCustomFieldIdsArray of strings(uuid)

List of custom field IDs that were inherited from parent

Example: ["f7b3b3b3-7b3b-4b3b-8b3b-3b3b3b3b3b3b"]
eventCustomFieldV3ResponsesArray of objects(CustomFieldPrefilledResponse)

List of custom field responses for an event.

eventCustomFieldResponsesArray of objects(CustomFieldResponse)Deprecated

List of custom field responses for the event.

curl -i -X POST \
  https://apis.spotnana.com/v2/events/6926658168/edit-basic-info \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "string",
    "type": "GENERIC",
    "description": "string",
    "documents": [
      {
        "url": "https://s3.amazonaws.com/bucket-name/folder-name/file-name",
        "documentId": "f49d00fe-1eda-4304-ba79-a980f565281d",
        "documentMetadata": {
          "documentType": "VISA",
          "entityType": "PNR",
          "entityId": "123124",
          "entityMetadata": {
            "pnrMetadata": {
              "flightMetadata": {
                "flightId": "CgNERU4SA1NGTxoKNTQ1NzI5ODcxMQ"
              }
            },
            "invoiceMetadata": {
              "invoiceNumber": "SPOT-0001",
              "invoiceType": "FARE_INVOICE"
            },
            "travelType": "AIR"
          },
          "name": "BoardingPass.pdf"
        }
      }
    ],
    "startDateTime": {
      "iso8601": "2017-07-21T17:32"
    },
    "endDateTime": {
      "iso8601": "2017-07-21T17:32"
    },
    "location": {
      "address": {
        "addressLines": [
          "Golden Gate Bridge"
        ],
        "administrativeArea": "CA",
        "administrativeAreaName": "California",
        "description": "San Francisco Home",
        "isDefault": true,
        "languageCode": "en",
        "locality": "San Francisco",
        "locationCode": "LAX",
        "organization": "Spotnana",
        "postalCode": "94130",
        "continentCode": "AF",
        "recipients": [
          "string"
        ],
        "regionCode": "US",
        "regionName": "America",
        "revision": 1,
        "sortingCode": "Jamaica",
        "sublocality": "string",
        "timezone": "America/Los_Angeles",
        "coordinates": {
          "latitude": 77.1025,
          "longitude": 28.7041
        }
      },
      "coordinates": {
        "latitude": 77.1025,
        "longitude": 28.7041
      }
    },
    "contacts": [
      {
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
      }
    ],
    "referenceUsers": [
      {
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
      }
    ],
    "travelerTypes": [
      "EMPLOYEE"
    ],
    "bookingStyle": "SELF_SERVE",
    "policyId": "f7b3b3b3-7b3b-4b3b-8b3b-3b3b3b3b3b3b",
    "allowTravelersPolicy": "ALLOWED",
    "emailPreferences": {
      "bucketTypes": [
        "BOOKING_CONFIRMATIONS"
      ],
      "isEnabled": false,
      "toEmails": [
        "example@email.com"
      ],
      "ccEmails": [
        "example@email.com"
      ],
      "bccEmails": [
        "example@email.com"
      ]
    },
    "allowTravelersToRsvp": "ALLOWED",
    "internalNotes": "Use travelers default as payment method.",
    "tripOverrides": {
      "legalEntity": {
        "behavior": "OVERRIDE_ALLOWED",
        "legalEntityRef": {
          "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
          "name": "string"
        }
      },
      "costCenter": {
        "behavior": "OVERRIDE_ALLOWED",
        "costCenterRef": {
          "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
          "name": "string"
        }
      },
      "department": {
        "behavior": "OVERRIDE_ALLOWED",
        "departmentRef": {
          "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
          "name": "string"
        }
      },
      "userAttributes": [
        {
          "behavior": "OVERRIDE_ALLOWED",
          "attribute": {
            "fixedColumnName": "contingentType",
            "value": "FSTV"
          }
        }
      ]
    },
    "inheritedCustomFieldIds": [
      "f7b3b3b3-7b3b-4b3b-8b3b-3b3b3b3b3b3b"
    ],
    "eventCustomFieldV3Responses": [
      {
        "fieldId": "84922011-b03d-4966-bc95-c5b49bc2e342",
        "fieldName": "string",
        "armId": "0fd508db-63ff-4444-bfb1-b89c43061433",
        "readOnly": true,
        "hidden": true,
        "selectedOptions": [
          {
            "name": "string",
            "description": "string",
            "additionalUserInput": "string",
            "additionalInfos": [
              "string"
            ],
            "additionalInfoConfigs": [
              {
                "type": "VARIABLE",
                "name": "LLF"
              }
            ]
          }
        ]
      }
    ],
    "eventCustomFieldResponses": [
      {
        "customFieldId": "f49d00fe-1eda-4304-ba79-a980f565281d",
        "responseItems": [
          {
            "response": "Leisure travel",
            "additionalInput": "20"
          }
        ],
        "travelerAccess": "HIDDEN"
      }
    ]
  }'

Responses

OK

Bodyapplication/json
idstring
Response
application/json
{ "id": "string" }