openapi: 3.2.0 info: version: 1.0.0 title: Calendar REST Events API description: The Events Calendar REST API allows accessing upcoming events information easily and conveniently. servers: - url: https://elisa.tech/wp-json/tribe/events/v1/ tags: - name: Events paths: /events: get: parameters: - in: query schema: type: integer description: The archive page to return required: false name: page - in: query schema: type: integer description: The number of events to return on each page required: false name: per_page - in: query schema: type: string description: Events that start on the specified date required: false name: start_date - in: query schema: type: string description: Events that end on the specified date required: false name: end_date - in: query schema: type: string description: Events that start before the specified date required: false name: starts_before - in: query schema: type: string description: Events that start after the specified date required: false name: starts_after - in: query schema: type: string description: Events that end before the specified date required: false name: ends_before - in: query schema: type: string description: Events that end after the specified date required: false name: ends_after - in: query schema: type: string description: Dates set using the start_date/end_date, starts_*/ends_* are set to start at the specified times. The default behavior is to include the entire days. required: false name: strict_dates - in: query schema: type: string description: Events should contain the specified string in the title or description required: false name: search - in: query schema: type: array items: type: integer description: Events should be assigned one of the specified categories slugs or IDs required: false name: categories style: form - in: query schema: type: array items: type: integer description: Events should be assigned one of the specified tags slugs or IDs required: false name: tags style: form - in: query schema: type: array items: type: integer description: Events should be assigned one of the specified venue IDs required: false name: venue style: form - in: query schema: type: array items: type: integer description: Events should be assigned one of the specified organizer IDs required: false name: organizer style: form - in: query schema: type: boolean description: Events should be filtered by their featured status required: false name: featured - in: query schema: type: string description: The event post status required: false name: status - in: query schema: type: boolean description: Requires Events Calendar Pro. Events should be filtered by whether their venue has geolocation data required: false name: geoloc - in: query schema: type: number description: Requires Events Calendar Pro. Events should be filtered by their venue latitude location, must also provide geoloc_lng required: false name: geoloc_lat - in: query schema: type: number description: Requires Events Calendar Pro. Events should be filtered by their venue longitude location, must also provide geoloc_lat required: false name: geoloc_lng - in: query schema: type: array items: type: integer description: Include events with one of the post IDs specified in the array of CSV list, date filters will be ignored. required: false name: include style: form - in: query schema: type: integer description: Events should be filtered by their post_parent being the specified one. required: false name: post_parent - in: query schema: type: boolean description: Filter events with or without tickets. required: false name: ticketed responses: '200': description: Returns all the upcoming events matching the search criteria content: application/json: schema: title: events type: array items: $ref: '#/components/schemas/Event' '400': description: One or more of the specified query variables has a bad format '404': description: The requested page was not found. tags: - Events /events/{id}: get: parameters: - in: path schema: type: integer description: the event post ID required: true name: id - in: path schema: type: string description: The event password required: false name: password responses: '200': description: Returns the data of the event with the specified post ID content: application/json: schema: $ref: '#/components/schemas/Event' '400': description: The event post ID is missing. '403': description: The event with the specified ID is not accessible. '404': description: An event with the specified ID does not exist. tags: - Events post: parameters: - in: path schema: type: integer description: the event post ID required: true name: id - in: path schema: type: string description: The event password required: false name: password requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: author: description: The event author ID type: integer date: description: The event publication date type: string date_utc: description: The event publication date (UTC time zone) type: string title: description: The event title type: string description: description: The event description type: string slug: description: The event slug type: string excerpt: description: The event excerpt type: string status: description: The event post status type: string timezone: description: The event time zone type: string all_day: description: Whether the event lasts the whole day or not type: boolean start_date: description: The event start date and time type: string end_date: description: The event end date and time type: string image: description: The event featured image ID or URL type: string cost: description: The event cost type: string website: description: The event website URL type: string show_map: description: Whether the event should show a map or not type: boolean show_map_link: description: Whether the event should show a map link or not type: boolean hide_from_listings: description: Whether events should be hidden in the calendar view or not type: boolean sticky: description: Whether the event should be sticky in the calendar view or not type: boolean featured: description: Whether the event should be featured on the site or not type: boolean categories: description: The event category ID or name type: array items: type: integer tags: description: The event tag ID or name type: array items: type: integer venue: description: The event venue IDs or data type: array items: type: integer organizer: description: The event organizer IDs or data type: array items: type: integer responses: '200': description: Returns the data of the updated event content: application/json: schema: $ref: '#/components/schemas/Event' '201': description: Returns the data of the created event content: application/json: schema: $ref: '#/components/schemas/Event' '400': description: A required parameter is missing or an input parameter is in the wrong format '403': description: The user is not authorized to create events tags: - Events delete: parameters: - in: path schema: type: integer description: the event post ID required: true name: id - in: path schema: type: string description: The event password required: false name: password responses: '200': description: Deletes an event and returns its data content: application/json: schema: $ref: '#/components/schemas/Event' '400': description: The event post ID is missing or does not exist. '403': description: The current user cannot delete the event with the specified ID. '410': description: The event with the specified ID has been deleted already. '500': description: The event with the specified ID could not be deleted. tags: - Events /events/by-slug/{slug}: get: parameters: - in: path schema: type: string description: the event post name required: true name: slug responses: '200': description: Returns the data of the event with the specified post ID content: application/json: schema: $ref: '#/components/schemas/Event' '400': description: The event post ID is missing. '403': description: The event with the specified ID is not accessible. '404': description: An event with the specified ID does not exist. tags: - Events post: parameters: - in: path schema: type: string description: the event post name required: true name: slug requestBody: content: application/x-www-form-urlencoded: schema: type: object properties: author: description: The event author ID type: integer date: description: The event publication date type: string date_utc: description: The event publication date (UTC time zone) type: string title: description: The event title type: string description: description: The event description type: string slug: description: The event slug type: string excerpt: description: The event excerpt type: string status: description: The event post status type: string timezone: description: The event time zone type: string all_day: description: Whether the event lasts the whole day or not type: boolean start_date: description: The event start date and time type: string end_date: description: The event end date and time type: string image: description: The event featured image ID or URL type: string cost: description: The event cost type: string website: description: The event website URL type: string show_map: description: Whether the event should show a map or not type: boolean show_map_link: description: Whether the event should show a map link or not type: boolean hide_from_listings: description: Whether events should be hidden in the calendar view or not type: boolean sticky: description: Whether the event should be sticky in the calendar view or not type: boolean featured: description: Whether the event should be featured on the site or not type: boolean categories: description: The event category ID or name type: array items: type: integer tags: description: The event tag ID or name type: array items: type: integer venue: description: The event venue IDs or data type: array items: type: integer organizer: description: The event organizer IDs or data type: array items: type: integer responses: '200': description: Returns the data of the updated event content: application/json: schema: $ref: '#/components/schemas/Event' '201': description: Returns the data of the created event content: application/json: schema: $ref: '#/components/schemas/Event' '400': description: A required parameter is missing or an input parameter is in the wrong format '403': description: The user is not authorized to create events tags: - Events delete: parameters: - in: path schema: type: string description: the event post name required: true name: slug responses: '200': description: Deletes an event and returns its data content: application/json: schema: $ref: '#/components/schemas/Event' '400': description: The event post ID is missing or does not exist. '403': description: The current user cannot delete the event with the specified ID. '410': description: The event with the specified ID has been deleted already. '500': description: The event with the specified ID could not be deleted. tags: - Events components: schemas: Event: type: object properties: id: type: integer description: The event WordPress post ID global_id: type: string description: The event ID used to globally identify in Event Aggregator global_id_lineage: type: array items: type: string description: An Array containing the lineage of where this event comes from, this should not change after the event is created. author: type: integer description: The event author WordPress post ID date: type: string description: The event creation date in the site time zone date_utc: type: string description: The event creation date in UTC time modified: type: string description: The event last modification date in the site time zone modified_utc: type: string description: The event last modification date in UTC time status: type: string description: The event status url: type: string description: The URL to the event page rest_url: type: string description: The TEC REST API link to fetch this event title: type: string description: The event name description: type: string description: The event long description excerpt: type: string description: The event short description slug: type: string description: The event slug image: type: object description: The event featured image details if set $ref: '#/components/schemas/Image' all_day: type: boolean description: Whether or not this event is an all day Event start_date: type: string description: The event start date in the event or site time zone start_date_details: type: array description: An array of each component of the event start date items: $ref: '#/components/schemas/DateDetails' end_date: type: string description: The event end date in the event or site time zone end_date_details: type: array description: An array of each component of the event end date items: $ref: '#/components/schemas/DateDetails' utc_start_date: type: string description: The event start date in UTC time utc_start_date_details: type: array description: An array of each component of the event start date in UTC time items: $ref: '#/components/schemas/DateDetails' utc_end_date: type: string description: The event end date in UTC time utc_end_date_details: type: array description: An array of each component of the event end date in UTC time items: $ref: '#/components/schemas/DateDetails' timezone: type: string description: The event time zone string timezone_abbr: type: string description: The abbreviated event time zone string cost: type: string description: The event cost including the currency symbol cost_details: type: array description: The event cost details items: $ref: '#/components/schemas/CostDetails' website: type: string description: The event website URL show_map: type: boolean description: Whether the map should be shown for the event or not show_map_link: type: boolean description: Whether the map link should be shown for the event or not hide_from_listings: type: boolean description: Whether an event should be hidden from the calendar view or not sticky: type: boolean description: Whether an event is sticky in the calendar view or not featured: type: boolean description: Whether the event is featured in the calendar or not categories: type: array description: The event categories items: $ref: '#/components/schemas/Term' tags: type: array description: The event tags items: $ref: '#/components/schemas/Term' venue: type: object description: The event venue $ref: '#/components/schemas/Venue' organizer: type: array description: The event organizers items: $ref: '#/components/schemas/Organizer' ImageSize: type: object properties: width: type: integer description: The image width in pixels in the specified size height: type: integer description: The image height in pixels in the specified size mime-type: type: string description: The image mime-type url: type: string format: uri description: The link to the image in the specified size on the site Organizer: type: object properties: id: type: integer description: The organizer WordPress post ID global_id: type: string description: The organizer ID used to globally identify in Event Aggregator global_id_lineage: type: array items: type: string description: An Array containing the lineage of where this organizer comes from, this should not change after the organizer is created. author: type: integer description: The organizer author WordPress post ID date: type: string description: The organizer creation date in the site time zone date_utc: type: string description: The organizer creation date in UTC time modified: type: string description: The organizer last modification date in the site time zone modified_utc: type: string description: The organizer last modification date in UTC time status: type: string description: The organizer status url: type: string description: The URL to the organizer page organizer: type: string description: The organizer name description: type: string description: The organizer long description excerpt: type: string description: The organizer short description slug: type: string description: The organizer slug image: type: string description: The event featured image details if set $ref: '#/components/schemas/Image' phone: type: string description: The organizer phone number website: type: string description: The organizer website email: type: string description: The organizer email address Image: type: object properties: url: type: string format: uri description: The URL to the full size version of the image id: type: integer description: The image WordPress post ID extension: type: string description: The image file extension width: type: integer description: The image natural width in pixels height: type: integer description: The image natural height in pixels sizes: type: array description: The details about each size available for the image items: $ref: '#/components/schemas/ImageSize' DateDetails: type: object properties: year: type: integer description: The date year month: type: integer description: The date month day: type: integer description: The date day hour: type: integer description: The date hour minutes: type: integer description: The date minutes seconds: type: integer description: The date seconds CostDetails: type: object properties: currency_symbol: type: string description: The cost currency symbol 'currency_position ': type: string description: The position of the currency symbol in the cost string enum: - prefix - postfix values: type: array items: type: integer description: A sorted array of all the numeric values for the cost Term: type: object properties: id: type: integer description: The WordPress term ID name: type: string description: The term name slug: type: string description: The term slug taxonomy: type: string description: The taxonomy the term belongs to description: type: string description: The term description parent: type: integer description: The term parent term if any count: type: integer description: The number of posts associated with the term url: type: string description: The URL to the term archive page urls: type: array items: type: string description: A list of links to the term own, archive and parent REST URL Venue: type: object properties: id: type: integer description: The venue WordPress post ID global_id: type: string description: The venue ID used to globally identify in Event Aggregator global_id_lineage: type: array items: type: string description: An Array containing the lineage of where this organizer comes from, this should not change after the organizer is created. author: type: integer description: The venue author WordPress post ID date: type: string description: The venue creation date in the site time zone date_utc: type: string description: The venue creation date in UTC time modified: type: string description: The venue last modification date in the site time zone modified_utc: type: string description: The venue last modification date in UTC time status: type: string description: The venue status url: type: string description: The URL to the venue page venue: type: string description: The venue name description: type: string description: The venue long description excerpt: type: string description: The venue short description slug: type: string description: The venue slug image: type: string description: The event featured image details if set $ref: '#/components/schemas/Image' show_map: type: boolean description: Whether the map should be shown for the venue or not show_map_link: type: boolean description: Whether the map link should be shown for the venue or not address: type: string description: The venue address city: type: string description: The venue city country: type: string description: The venue country province: type: string description: The venue province state: type: string description: The venue state zip: type: string description: The venue ZIP code phone: type: string description: The venue phone number website: type: string description: The venue website URL stateprovince: type: string description: The venue state or province geo_lat: type: number format: double description: The venue geo latitude geo_lng: type: number format: double description: The venue geo longitude