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

Create event

Request

Create a draft event.

Bodyapplication/json
namestringrequired

Name of the event

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

bookingGuidelinesArray of AirBookingGuidelineWrapper (object) or HotelBookingGuidelineWrapper (object) or CarBookingGuidelineWrapper (object) or RailBookingGuidelineWrapper (object)(EventBookingGuideline)

A list of booking guideline for the event.

allowedBookingTypesArray of strings(EventAllowedBookingType)

Allowed booking types for the event group

Items Enum"AIR""HOTEL""CAR""RAIL"
externalIdstring

External Id for the event

Example: "qwert123"
eventCustomFieldResponsesArray of objects(CustomFieldResponse)

List of custom field responses for the event.

parentEventIdstring

Optional parent event's id.

Example: "56789012"
companyIdobject(CompanyId)

Company id

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"
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"]
policyIdstring(uuid)

Policy associated with the event.

Example: "f7b3b3b3-7b3b-4b3b-8b3b-3b3b3b3b3b3b"
travellersArray of objects(UserId)[ 0 .. 1000 ] items

Travellers associated with the event

typestring(EventType)

Type of an event

Enum"GENERIC""PROGRAM""PROGRAM_SESSION""PROGRAM_TRIP"
allowTravelersPolicystring(AllowTravelersPolicy)

Apply travelers policy when it is less restrictive.

Enum"ALLOWED""NOT_ALLOWED"
emailPreferencesobject(BucketEmailPreferences)

Email communication preferences based on bucket types.

curl -i -X POST \
  https://apis.spotnana.com/v2/events \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "string",
    "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"
      }
    ],
    "bookingGuidelines": [
      {
        "numGuestsAllowed": 1,
        "airBookingGuideLine": {
          "allowedAirports": [
            {
              "airportCode": "WRA",
              "airportName": "Warder Airport",
              "cityName": "Werder",
              "countryName": "Ethiopia",
              "countryCode": "ET",
              "zoneName": "Africa/Addis_Ababa",
              "stateCode": "CA"
            }
          ],
          "arrivalBookingWindow": {
            "startDateTime": {
              "iso8601": "2017-07-21T17:32"
            },
            "endDateTime": {
              "iso8601": "2017-07-21T17:32"
            }
          },
          "departureBookingWindow": {
            "startDateTime": {
              "iso8601": "2017-07-21T17:32"
            },
            "endDateTime": {
              "iso8601": "2017-07-21T17:32"
            }
          },
          "allowedFlightGuidelines": [
            {
              "allowedFlightType": "ROUND_TRIP",
              "numberOfLegs": 2
            }
          ]
        }
      }
    ],
    "allowedBookingTypes": [
      "AIR"
    ],
    "externalId": "qwert123",
    "eventCustomFieldResponses": [
      {
        "customFieldId": "f49d00fe-1eda-4304-ba79-a980f565281d",
        "responseItems": [
          {
            "response": "Leisure travel",
            "additionalInput": "20"
          }
        ],
        "travelerAccess": "HIDDEN"
      }
    ],
    "parentEventId": "56789012",
    "companyId": {
      "id": "f49d00fe-1eda-4304-ba79-a980f565281d"
    },
    "bookingStyle": "SELF_SERVE",
    "referenceUsers": [
      {
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
      }
    ],
    "travelerTypes": [
      "EMPLOYEE"
    ],
    "policyId": "f7b3b3b3-7b3b-4b3b-8b3b-3b3b3b3b3b3b",
    "travellers": [
      {
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
      }
    ],
    "type": "GENERIC",
    "allowTravelersPolicy": "ALLOWED",
    "emailPreferences": {
      "bucketTypes": [
        "BOOKING_CONFIRMATIONS"
      ],
      "isEnabled": false,
      "toEmails": [
        "example@email.com"
      ],
      "ccEmails": [
        "example@email.com"
      ],
      "bccEmails": [
        "example@email.com"
      ]
    }
  }'

Responses

OK

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

Get event

Request

Get event details for the specified event ID.

Path
eventIdstringrequired

Event ID

Example: 6926658168
Query
typestring(EventType)

EventType of the event.

Enum"GENERIC""PROGRAM""PROGRAM_SESSION""PROGRAM_TRIP"
Example: type=GENERIC
curl -i -X GET \
  'https://apis.spotnana.com/v2/events/6926658168?type=GENERIC' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

OK

Bodyapplication/json
eventobject(Event)

Event details

Response
application/json
{ "event": { "id": "string", "name": "string", "type": "GENERIC", "description": "string", "startDateTime": {}, "endDateTime": {}, "location": {}, "group": {}, "status": "DRAFT", "companyId": {}, "runningStatus": "UPCOMING", "paymentSources": [], "numTravelers": 1, "customFieldResponses": [], "externalId": "qwert123", "policyId": "f7b3b3b3-7b3b-4b3b-8b3b-3b3b3b3b3b3b", "parentEventId": "56789012" } }

Delete a draft event

Request

Delete a draft (i.e., unpublished) event. A deleted event cannot be accessed or viewed again.

Path
eventIdstringrequired

Event ID

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

Responses

OK

Response
No content