Events
Events are the core model in Gatsby. They describe details such as name, time, location, and more. On this page, we'll dive into the different event endpoints you can use to manage events programmatically.
The event model
The event model contains all the information about your events, including details like name, date, location, and virtual options.
Properties
- Name
eventId
- Type
- string
- Description
Unique identifier for the event.
- Name
name
- Type
- string
- Description
The name of the event.
- Name
primarySlug
- Type
- string
- Description
The URL slug for the event.
- Name
primaryDate
- Type
- string
- Description
The date and time when the event is scheduled to occur.
- Name
timezone
- Type
- string
- Description
The timezone the event is scheduled in.
- Name
userRole
- Type
- string
- Description
The role of the authenticated user for this event.
- Name
isPublic
- Type
- boolean
- Description
Whether the event is public or private.
- Name
locationName
- Type
- string
- Description
The name of the event location.
- Name
locationAddress
- Type
- string
- Description
The address of the event location.
- Name
locationPhoneNumber
- Type
- string
- Description
The phone number of the event location.
- Name
locationWebsite
- Type
- string
- Description
The website of the event location.
- Name
virtualLocations
- Type
- array
- Description
An array of virtual location objects for online events.
- Name
eventTags
- Type
- array
- Description
An array of tags associated with the event.
- Name
images
- Type
- array
- Description
An array of image objects associated with the event.
- Name
rsvpDescription
- Type
- string
- Description
Description text for the event RSVP process.
List all events
This endpoint allows you to retrieve a paginated list of all your active events. By default, past events are excluded.
Optional attributes
- Name
limit
- Type
- integer
- Description
Limit the number of events returned.
- Name
skip
- Type
- integer
- Description
Number of events to skip for pagination.
- Name
includePastEvents
- Type
- boolean
- Description
Include past events when set to
true
.
- Name
showOrganizationEvents
- Type
- boolean
- Description
Show all events within the organization when set to
true
.
Request
curl -G https://rest.gatsby.events/event \
-H "Authorization: Bearer {token}" \
-H "organizationSlug: {organizationSlug}" \
-d limit=10
Response
{
"events": [
{
"eventId": "e8dj2ns9-34kd-9j3b",
"name": "Annual Conference 2023",
"primarySlug": "annual-conference-2023",
"primaryDate": "2023-11-15T09:00:00Z",
"timezone": "America/Los_Angeles",
"userRole": "admin",
"isPublic": true,
"locationName": "Convention Center",
"locationAddress": "123 Main St, San Francisco, CA",
"locationPhoneNumber": "+14155551234",
"locationWebsite": "https://convention.example.com",
"virtualLocations": [
{
"url": "https://zoom.us/j/1234567890",
"password": "conference",
"phoneNumber": "+14155551234",
"sourceType": "zoom"
}
],
"eventTags": ["conference", "annual", "technology"],
"images": [
{
"type": "banner",
"url": "https://assets.gatsby.events/events/banner.jpg"
},
{
"type": "logo",
"url": "https://assets.gatsby.events/events/logo.jpg"
}
],
"rsvpDescription": "Please RSVP by November 1st"
},
{
"eventId": "f92jd8s7-56hj-7k4l"
// ...
}
]
}
Retrieve event guest list
This endpoint allows you to retrieve the guest list for a specific event by providing the event ID.
Request
curl https://rest.gatsby.events/event/e8dj2ns9-34kd-9j3b/guestlist \
-H "Authorization: Bearer {token}" \
-H "organizationSlug: {organizationSlug}"
Response
{
"guests": [
{
"personId": "52907745-7672-470e-a",
"firstName": "John",
"lastName": "Doe",
"email": "[email protected]",
"rsvpStatus": "Accepted",
"rsvpStatusHistory": [
{
"status": "Invited",
"actorId": "admin-user-1",
"actorType": "user",
"createdAt": "2023-10-01T14:30:00Z"
},
{
"status": "Accepted",
"actorId": "52907745-7672-470e-a",
"actorType": "eventPerson",
"createdAt": "2023-10-05T10:15:00Z"
}
],
"dietaryRestrictions": ["Vegetarian"],
"attendanceStatus": "Attended",
"rsvpQuestionResponses": [
{
"title": "T-Shirt Size",
"description": "Please select your t-shirt size",
"answers": ["Medium"]
}
],
"rsvpNote": "Arriving late",
"customColumns": {
"table": "A4",
"badge": "VIP"
}
},
{
"personId": "8293b8f2-3019-42a8-b"
// ...
}
]
}
Add guests to an event
This endpoint allows you to add guests to a specific event. You can add existing persons by their personId or create new persons in the process.
Required attributes
- Name
guests
- Type
- array
- Description
An array of guest objects to add to the event.
Guest object properties
- Name
personId
- Type
- string
- Description
The unique identifier for an existing person to add as a guest.
- Name
firstName
- Type
- string
- Description
First name for creating a new person.
- Name
lastName
- Type
- string
- Description
Last name for creating a new person.
- Name
email
- Type
- string
- Description
Email for creating a new person.
- Name
phoneNumber
- Type
- string
- Description
Phone number for creating a new person.
- Name
company
- Type
- string
- Description
Company for creating a new person.
- Name
position
- Type
- string
- Description
Position for creating a new person.
- Name
notes
- Type
- string
- Description
Notes for the guest.
Request
curl https://rest.gatsby.events/event/e8dj2ns9-34kd-9j3b/guestlist \
-H "Authorization: Bearer {token}" \
-H "organizationSlug: {organizationSlug}" \
-d '{
"guests": [
{
"personId": "52907745-7672-470e-a"
},
{
"firstName": "Jane",
"lastName": "Smith",
"email": "[email protected]",
"company": "Acme Inc",
"position": "CEO"
}
]
}'
Response
{
"guests": [
{
"personId": "52907745-7672-470e-a",
"firstName": "John",
"lastName": "Doe",
"email": "[email protected]",
"rsvpStatus": "Invited",
"rsvpStatusHistory": [
{
"status": "Invited",
"actorId": "admin-user-1",
"actorType": "user",
"createdAt": "2023-11-01T14:30:00Z"
}
],
"dietaryRestrictions": null,
"attendanceStatus": null,
"rsvpQuestionResponses": [],
"rsvpNote": null,
"customColumns": null
},
{
"personId": "67492abd-9821-742e-c",
"firstName": "Jane",
"lastName": "Smith",
"email": "[email protected]",
"rsvpStatus": "Invited",
"rsvpStatusHistory": [
{
"status": "Invited",
"actorId": "admin-user-1",
"actorType": "user",
"createdAt": "2023-11-01T14:30:00Z"
}
],
"dietaryRestrictions": null,
"attendanceStatus": null,
"rsvpQuestionResponses": [],
"rsvpNote": null,
"customColumns": null
}
]
}
Update event guests
This endpoint allows you to update the status of guests for a specific event.
Required attributes
- Name
guests
- Type
- array
- Description
An array of guest objects to update.
Guest update object properties
- Name
personId
- Type
- string
- Description
The unique identifier of the person to update.
- Name
rsvpStatus
- Type
- string
- Description
The new RSVP status for the guest (e.g. "Accepted", "Declined", "Maybe").
- Name
attendanceStatus
- Type
- string
- Description
The attendance status for the guest ("Attended" or "No Show").
Request
curl -X PUT https://rest.gatsby.events/event/e8dj2ns9-34kd-9j3b/guestlist \
-H "Authorization: Bearer {token}" \
-H "organizationSlug: {organizationSlug}" \
-d '{
"guests": [
{
"personId": "52907745-7672-470e-a",
"rsvpStatus": "Accepted",
"attendanceStatus": "Attended"
},
{
"personId": "67492abd-9821-742e-c",
"rsvpStatus": "Declined",
"attendanceStatus": null
}
]
}'
Response
{
"guests": [
{
"personId": "52907745-7672-470e-a",
"firstName": "John",
"lastName": "Doe",
"email": "[email protected]",
"rsvpStatus": "Accepted",
"rsvpStatusHistory": [
{
"status": "Invited",
"actorId": "admin-user-1",
"actorType": "user",
"createdAt": "2023-10-01T14:30:00Z"
},
{
"status": "Accepted",
"actorId": "admin-user-1",
"actorType": "user",
"createdAt": "2023-11-02T09:45:00Z"
}
],
"dietaryRestrictions": ["Vegetarian"],
"attendanceStatus": "Attended",
"rsvpQuestionResponses": [],
"rsvpNote": null,
"customColumns": null
},
{
"personId": "67492abd-9821-742e-c",
"firstName": "Jane",
"lastName": "Smith",
"email": "[email protected]",
"rsvpStatus": "Declined",
"rsvpStatusHistory": [
{
"status": "Invited",
"actorId": "admin-user-1",
"actorType": "user",
"createdAt": "2023-10-01T14:30:00Z"
},
{
"status": "Declined",
"actorId": "admin-user-1",
"actorType": "user",
"createdAt": "2023-11-02T09:45:00Z"
}
],
"dietaryRestrictions": null,
"attendanceStatus": null,
"rsvpQuestionResponses": [],
"rsvpNote": null,
"customColumns": null
}
]
}