About Ticket Definitions v3

With the Ticket Definitions API, you can create definitions for tickets. A definition includes the following ticket settings:

  • Fee type. Determine whether the fee will be paid by a guest or a seller.
  • Pricing. Define different ticket prices based on factors such as early bird discounts, VIP packages, group rates, or special promotions. Several pricing methods are available for you to select from: Fixed price, Guest price, Free. Additionally, you can customize prices for different groups of people using Price options.
  • Availability. Set the ticket limit available to buy. Also, you are able to check number of purchased or reserved tickets.
  • Sale period. Set the sale start and end dates. Also, when defining the sale period, it is possible to choose to display event tickets to customers even before the sale starts.

Before you begin

It’s important to note the following points before starting to code:

  • Install the Wix Events & Tickets app from Wix App Market.
  • Ticket definition is not the same as ticket. Ticket definitions are used to define settings for a set of tickets. After paying for selected tickets, the Checkout API automatically generates the ticket.

Use cases

Terminology

  • Pricing method: Different pricing methods are available for an event:
    • Fixed price: All tickets in the same definition are sold at the exact same price, regardless of when they are purchased or other factors.
    • Guest price: The guest enters the ticket price. Optionally, you can set the minimum price guests must pay for a ticket. This pricing method is applied to donation.
    • Price options: All tickets in the same ticket definition are priced at different rates, such as different prices for adults, children, and students.
  • Ticket availability: The status of ticket inventory, indicating whether tickets are available or sold out. This type can also include availability limits and timeframes for ticket sales.
  • Sale period: Duration of time during which event tickets are available for purchase.
  • Event Dashboard: Control center in the Wix site UI for managing site event settings and features.
Did this help?

Ticket Definitions v3: Supported Filters and Sorting

The following table shows field support for filters and sorting for the Ticket Definition object:

FieldQuery Filter OperatorsSortable
id$eq, $ne, $lt, $lte, $gt, $gte, $in, $nin, $existsSortable
eventId$eq, $ne, $lt, $lte, $gt, $gte, $in, $nin, $existsSortable
name$eq, $ne, $lt, $lte, $gt, $gte, $in, $nin, $existsSortable
description$eq, $ne, $lt, $lte, $gt, $gte, $in, $nin, $existsSortable
limit$eq, $ne, $lt, $lte, $gt, $gte, $in, $nin, $existsSortable
pricing_method.pricing_type$eq, $ne, $lt, $lte, $gt, $gte, $in, $nin, $existsSortable
feeType$eq, $ne, $lt, $lte, $gt, $gte, $in, $nin, $existsSortable
saleStatus$eq, $ne, $lt, $lte, $gt, $gte, $in, $nin, $existsSortable
updatedDate$eq, $ne, $lt, $lte, $gt, $gte, $in, $nin, $existsSortable
createdDate$eq, $ne, $lt, $lte, $gt, $gte, $in, $nin, $existsSortable
hidden$eq, $ne, $in, $nin, $existsSortable
pricing_method.free$eq, $ne, $in, $nin, $existsSortable

Related content: API Query Language, Ticket Definitions Query endpoint

Did this help?

Ticket Definitions v3: Sample Use Cases & Flows

This article presents possible use cases and corresponding sample flows that your app can support. It provides a useful starting point as you plan your app's implementation.

Add a specific-price ticket counter for an event

This use case demonstrates how you can update your event site with a ticket counter for specific-price tickets. This counter provides real-time information on the availability of tickets for customers to see. For example, your page can have a counter that says "Only 3 tickets left for this price." By displaying the number of tickets remaining, you can motivate customers to buy tickets promptly.

Note: This flow assumes you have already created the UI component of the counter for your site.

To create a ticket counter, follow these steps:

  1. Call Get Ticket Definition and retrieve either:
  • The salesDetails.unsoldCount and fixedPrice.value values (for fixedPrice pricing method).
  • The salesDetails.unsoldCount and pricingOptions.optionDetails.price.value field values (for optionalPrice pricing method).
  1. Pass these retrieved values in your app to initialize the counter on your website, displaying the number of available tickets at the specified price.

  2. On an ongoing basis, listen for each new ticket purchase using the Order Confirmed Webhook.

  3. When the webhook is triggered, you'll receive an order in the payload. Retrieve the ticketDefinitionId value from the event data.

  4. Send the extracted ticketDefinitionId value to your site and compare it with the ticket definition ID for which the counter is set. If they match, call Get Ticket Definition again to retrieve the updated salesDetails.unsoldCount value. Send this new decreased value to your website to update the ticket counter.

Sync ticket definitions with an external ticketing system

If you're using a Wix site to manage events and another system to handle ticketing, you can synchronize ticket definitions between them whenever a definition is updated on the site. This includes aspects such as ticket types, pricing, availability, and any other relevant ticket settings. This synchronization eliminates the need for manual updates and reduces the risk of discrepancies between systems.

To upload and update all ticket definitions defined on the Wix site to your external system for the first time, follow these flows:

Part 1: Initial setup

  1. Create a custom field in your system that stores the ticket definition ID for a particular event to ensure a 1-to-1 relationship with the external ticketing system. Craft your code so that this ID won't be overwritten by future updates from your app.

  2. Create a mapping from the site ticket definition fields to the system fields that will be used whenever site ticket definitions and the external system are synchronized.

  3. Query Ticket Definitions by eventId and send the relevant information to the external ticketing system.

Part 2: Synchronize to the external system

  1. On an ongoing basis, listen for changes to site ticket definitions with these webhooks:

  2. When one of the above webhooks is triggered, you'll receive the ticket definition in the payload. You can bring those changes to the ticketing system by retrieving the relevant info from the payload, and use mapping to take action on the external system:

    • For created and updated ticket definitions retrieve the relevant info from the createdEvent.currentEntity object.

    • For deleted ticket definitions retrieve the createdEvent.currentEntity.id value.

Notify customers when tickets go on sale

Let customers know when ticket sales for an event begin. You can send automated notifications to customers with email or push notifications. These notifications make customers aware of ticket availability so they can secure their tickets promptly.

Note: This flow assumes your customers already have the ability to subscribe to your newsletters.

To send notifications about the start of ticket sales, follow these steps:

  1. Get Ticket Definition.

  2. Retrieve the salePeriod.startDate field value, and write your code so that the value can be passed to your marketing tool.

  3. Request and filter the list of subscribers in your external marketing tool based on customers subscription status for the current event.

  4. When the ticket sale start date arrives, send notifications to your customers who have opted in to receive marketing emails.

Did this help?

Ticket Definition Object


Properties
idstringRead-onlyformat GUID

Ticket definition ID.


eventIdstringformat GUID

Event ID to which the ticket definition belongs.


revisionintegerRead-onlyformat int64

Revision number, which increments by 1 each time the ticket definition is updated. To prevent conflicting changes, the existing revision must be used when updating a ticket definition.


createdDatestringRead-onlyformat date-time

Date and time when the ticket definition was created.


updatedDatestringRead-onlyformat date-time

Date and time when the ticket definition was updated.


namestringminLength 1maxLength 30

Ticket definition name.


descriptionstringmaxLength 500

Ticket definition description.


policyTextstringmaxLength 1000

Ticket definition policy.


hiddenboolean

Whether this ticket definition is hidden to site visitors and can't be purchased.


limitedbooleanRead-only

Whether the ticket has a limited maximum quantity.


initialLimitintegerformat int32

The maximum number of tickets that can be sold for the event when first defining the event. If a seating map is defined after you created a ticket definition, this property is ignored and actualLimit is used instead.


actualLimitintegerRead-onlyformat int32

The maximum number of tickets that can be sold for the event after adding a seating map to the event. If no seating map is defined, this property is the same as initialLimit.


pricingMethodPricingMethod

Ticket pricing method.


feeTypestring

Whether fee is included in the ticket price or customer pays it additionally at checkout.


salePeriodSalePeriod

Ticket sale period.


saleStatusstringRead-only

Ticket sale status.


salesDetailsSalesDetails

Ticket sales information.
Note: This field is only returned when SALES_DETAILS fieldset is included in the request.


limitPerCheckoutintegerRead-onlyminimum 0maximum 50format int32

Number of tickets that can be purchased per checkout.
Note: If the actuaLimit or salesDetails.unsoldCount field value is smaller than limitPerCheckout, then it overrides this field.


extendedFieldsExtendedFields

Data extensions.


eventDetailsEventDetails

Associated event information.
Note: This field is only returned when EVENT_DETAILS fieldset is included in the request.

TicketDefinition
JSON
{ "ticketDefinition": { "id": "aaf51c30-a61c-473e-96be-a42dfa5064c0", "eventId": "9d720f99-1b5a-4141-9877-d32985391e18", "revision": "1", "createdDate": "2023-05-25T11:39:26.108Z", "updatedDate": "2023-05-25T11:39:26.108Z", "name": "Leather Workshop", "description": "Step into the world of fine craftsmanship and explore the artistry of handcrafted leather goods at our captivating Leather Workshop. Join us for a hands-on experience that delves into the intricate process of transforming raw leather into exquisite creations. Immerse yourself in a creative atmosphere where seasoned leather artisans will guide you through the journey of mastering age-old techniques and unlocking your inner artisan.", "policy_text": "This is your event ticket. Ticket holders must present their tickets on entry. You can either print your ticket or present this digital version. You can find all the details about this event on our website. If you have any questions, issues or wish to get a refund, contact the event host. If you can’t attend the event, please get in touch. Looking forward to seeing you there!", "hidden": false, "limited": true, "initialLimit": 3, "actualLimit": 3, "pricingMethod": { "fixedPrice": { "value": "200.00", "currency": "USD" }, "pricingType": "STANDARD", "free": false }, "feeType": "FEE_INCLUDED", "salePeriod": { "startDate": "2023-06-07T10:00:00Z", "endDate": "2023-06-30T00:00:00Z", "displayNotOnSale": false }, "saleStatus": "SALE_ENDED", "salesDetails": { "unsoldCount": 3, "soldCount": 0, "reservedCount": 0, "soldOut": false } } }
Did this help?

POST

Create Ticket Definition


Creates a ticket definition. Allowed to create up to 100 definitions per event.

Authentication

You can only call this method when authenticated as a Wix app or Wix user identity.

Permissions
Manage Events - all permissions
Manage Ticket Definitions
Learn more about app permissions.
Endpoint
POST
https://www.wixapis.com/events-ticket-definitions/v3/ticket-definitions

Body Params
ticketDefinitionTicketDefinitionRequired

Ticket definition info.


fieldsArray <string>maxItems 5

Predefined sets of fields to return.

Response Object
ticketDefinitionTicketDefinition

Created ticket definition.

Request
cURL
curl -X POST 'cv3/ticket-definitions' \ -H 'Content-Type: application/json' \ -H 'Authorization: <AUTH TOKEN>' \ -d '{ "ticketDefinition": { "eventId": "9d720f99-1b5a-4141-9877-d32985391e18", "name": "Leather Workshop", "description": "Step into the world of fine craftsmanship and explore the artistry of handcrafted leather goods at our captivating Leather Workshop. Join us for a hands-on experience that delves into the intricate process of transforming raw leather into exquisite creations. Immerse yourself in a creative atmosphere where seasoned leather artisans will guide you through the journey of mastering age-old techniques and unlocking your inner artisan.", "policyText": "This is your event ticket. Ticket holders must present their tickets on entry. You can either print your ticket or present this digital version. You can find all the details about this event on our website. If you have any questions, issues or wish to get a refund, contact the event host. If you can’t attend the event, please get in touch. Looking forward to seeing you there!", "hidden": false, "initialLimit": 3, "pricingMethod": { "fixedPrice": { "value": "200", "currency": "USD" } }, "feeType": "FEE_INCLUDED", "salePeriod": { "startDate": "2023-06-07T10:00:00Z", "endDate": "2023-06-30T00:00:00Z", "displayNotOnSale": false } }, "fields": ["SALES_DETAILS"] }'
Response
JSON
{ "ticketDefinition": { "id": "aaf51c30-a61c-473e-96be-a42dfa5064c0", "eventId": "9d720f99-1b5a-4141-9877-d32985391e18", "revision": "1", "createdDate": "2023-05-25T11:39:26.108Z", "updatedDate": "2023-05-25T11:39:26.108Z", "name": "Leather Workshop", "description": "Step into the world of fine craftsmanship and explore the artistry of handcrafted leather goods at our captivating Leather Workshop. Join us for a hands-on experience that delves into the intricate process of transforming raw leather into exquisite creations. Immerse yourself in a creative atmosphere where seasoned leather artisans will guide you through the journey of mastering age-old techniques and unlocking your inner artisan.", "policyText": "This is your event ticket. Ticket holders must present their tickets on entry. You can either print your ticket or present this digital version. You can find all the details about this event on our website. If you have any questions, issues or wish to get a refund, contact the event host. If you can’t attend the event, please get in touch. Looking forward to seeing you there!", "hidden": false, "limited": true, "initialLimit": 3, "actualLimit": 3, "pricingMethod": { "fixedPrice": { "value": "200.00", "currency": "USD" }, "pricingType": "STANDARD", "free": false }, "feeType": "FEE_INCLUDED", "salePeriod": { "startDate": "2023-06-07T10:00:00Z", "endDate": "2023-06-30T00:00:00Z", "displayNotOnSale": false }, "saleStatus": "SALE_ENDED", "salesDetails": { "unsoldCount": 3, "soldCount": 0, "reservedCount": 0, "soldOut": false } } }
Errors
428Failed Precondition

There are 3 errors with this status code:

See the entire list and learn more about Wix errors.

Event TriggersThis method triggers the following events:
Did this help?

PATCH

Update Ticket Definition


Updates a ticket definition.

Each time the ticket definition is updated, revision increments by 1. The existing revision must be included when updating the ticket definition. This ensures you're working with the latest ticket definition and prevents unintended overwrites.

Authentication

You can only call this method when authenticated as a Wix app or Wix user identity.

Permissions
Manage Events - all permissions
Manage Ticket Definitions
Learn more about app permissions.
Endpoint
PATCH
https://www.wixapis.com/events-ticket-definitions/v3/ticket-definitions/{ticketDefinition.id}

Path Params
ticketDefinition.idstringRequired

Ticket definition ID.

Body Params
ticketDefinitionTicketDefinitionRequired

Ticket definition to update.


fieldsArray <string>maxItems 5

Predefined sets of fields to return.

Response Object
ticketDefinitionTicketDefinition

The updated ticket definition.

Update ticket definition
Request
cURL
curl -X PATCH 'https://www.wixapis.com/events-ticket-definitions/events-ticket-definitions/v3/ticket-definitions/aaf51c30-a61c-473e-96be-a42dfa5064c0' \ -H 'Content-Type: application/json' \ -H 'Authorization: <AUTH TOKEN>' \ -d '{ "ticketDefinition": { "id": "aaf51c30-a61c-473e-96be-a42dfa5064c0", "eventId": "9d720f99-1b5a-4141-9877-d32985391e18", "revision": "1", "name": "Leather Workshop", "pricingMethod": { "fixedPrice": { "value": "200.00", "currency": "USD" } }, "feeType": "FEE_INCLUDED", "salePeriod": { "startDate": "2023-06-08T10:00:00Z" }, }, "mask": { "salePeriod.startDate" } }'
Response
JSON
{ "ticketDefinition": { "id": "aaf51c30-a61c-473e-96be-a42dfa5064c0", "eventId": "9d720f99-1b5a-4141-9877-d32985391e18", "revision": "2", "createdDate": "2023-05-25T11:39:26.108Z", "updatedDate": "2023-05-25T13:44:58.775Z", "name": "Leather Workshop", "description": "Step into the world of fine craftsmanship and explore the artistry of handcrafted leather goods at our captivating Leather Workshop. Join us for a hands-on experience that delves into the intricate process of transforming raw leather into exquisite creations. Immerse yourself in a creative atmosphere where seasoned leather artisans will guide you through the journey of mastering age-old techniques and unlocking your inner artisan.", "policyText": "This is your event ticket. Ticket holders must present their tickets on entry. You can either print your ticket or present this digital version. You can find all the details about this event on our website. If you have any questions, issues or wish to get a refund, contact the event host. If you can’t attend the event, please get in touch. Looking forward to seeing you there!", "hidden": false, "limited": true, "initialLimit": 3, "actualLimit": 3, "pricingMethod": { "fixedPrice": { "value": "200.00", "currency": "USD" }, "pricingType": "STANDARD", "free": false }, "feeType": "FEE_INCLUDED", "salePeriod": { "startDate": "2023-06-08T10:00:00Z", "endDate": "2023-06-30T00:00:00Z", "displayNotOnSale": false }, "saleStatus": "SALE_STARTED", "salesDetails": null } }
Errors
428Failed Precondition

There is 1 error with this status code:

See the entire list and learn more about Wix errors.

Did this help?

GET

Get Ticket Definition


Retrieves a ticket definition by ID.

Authentication

You can only call this method when authenticated as a Wix app or Wix user identity.

Permissions
Manage Events - all permissions
Manage Orders
Manage Ticket Definitions
Learn more about app permissions.
Endpoint
GET
https://www.wixapis.com/events-ticket-definitions/v3/ticket-definitions/{ticketDefinitionId}

Path Params
ticketDefinitionIdstringRequired

Ticket definition ID.

Query Params
fieldsArray <string>

Predefined sets of fields to return.

Response Object
ticketDefinitionTicketDefinition

The requested ticket definition.

Get ticket definition
Request
cURL
curl -X GET 'https://www.wixapis.com/events-ticket-definitions/events-ticket-definitions/v3/ticket-definitions/aaf51c30-a61c-473e-96be-a42dfa5064c0' \ -H 'Authorization: <AUTH TOKEN>'
Response
JSON
{ "ticketDefinition": { "id": "aaf51c30-a61c-473e-96be-a42dfa5064c0", "eventId": "9d720f99-1b5a-4141-9877-d32985391e18", "revision": "1", "createdDate": "2023-05-25T11:39:26.108Z", "updatedDate": "2023-05-25T11:39:26.108Z", "name": "Leather Workshop", "description": "Step into the world of fine craftsmanship and explore the artistry of handcrafted leather goods at our captivating Leather Workshop. Join us for a hands-on experience that delves into the intricate process of transforming raw leather into exquisite creations. Immerse yourself in a creative atmosphere where seasoned leather artisans will guide you through the journey of mastering age-old techniques and unlocking your inner artisan.", "policyText": "This is your event ticket. Ticket holders must present their tickets on entry. You can either print your ticket or present this digital version. You can find all the details about this event on our website. If you have any questions, issues or wish to get a refund, contact the event host. If you can’t attend the event, please get in touch. Looking forward to seeing you there!", "hidden": false, "limited": true, "initialLimit": 3, "actualLimit": 3, "pricingMethod": { "fixedPrice": { "value": "200.00", "currency": "USD" }, "pricingType": "STANDARD", "free": false }, "feeType": "FEE_INCLUDED", "salePeriod": { "startDate": "2023-06-07T10:00:00Z", "endDate": "2023-06-30T00:00:00Z", "displayNotOnSale": false }, "saleStatus": "SALE_ENDED", "salesDetails": null } }
Did this help?

DELETE

Delete Ticket Definition


Permanently deletes a ticket definition.

Authentication

You can only call this method when authenticated as a Wix app or Wix user identity.

Permissions
Manage Events - all permissions
Manage Ticket Definitions
Learn more about app permissions.
Endpoint
DELETE
https://www.wixapis.com/events-ticket-definitions/v3/ticket-definitions/{ticketDefinitionId}

Path Params
ticketDefinitionIdstringRequired

ID of the ticket definition to delete.

Response Object
Returns an empty object.
Delete ticket definition
Request
cURL
curl -X DELETE 'https://www.wixapis.com/events-ticket-definitions/events-ticket-definitions/v3/ticket-definitions/625115fd-31cb-4f64-b7bd-06c3137486c0' \ -H 'Authorization: <AUTH TOKEN>' \
Response
JSON
{}
Event TriggersThis method triggers the following events:
Did this help?

POST

Reorder Ticket Definitions


Changes ticket definitions order in an event dashboard and the list of available tickets in the ticket picker.

Note: It is possible to use both beforeTicketDefinitionId and afterTicketDefinitionId at the same time but only the last one defined will be executed.

Authentication

You can only call this method when authenticated as a Wix app or Wix user identity.

Permissions
Manage Events - all permissions
Manage Ticket Definitions
Learn more about app permissions.
Endpoint
POST
https://www.wixapis.com/events-ticket-definitions/v3/ticket-definitions/reorder

Body Params
eventIdstringRequiredformat GUID

Event ID.


ticketDefinitionIdstringRequiredformat GUID

Ticket definition ID.


ONE OF:

beforeDefinitionIdstringformat GUID

Move the given definitionId before the referenced ticket definition.


afterDefinitionIdstringformat GUID

Move the given definitionId after the referenced ticket definition.

Response Object
Returns an empty object.
Reorder ticket definitions
Request
cURL
curl -X POST 'https://www.wixapis.com/events-ticket-definitions/events-ticket-definitions/v3/ticket-definitions/reorder' \ -H 'Content-Type: application/json' \ -H 'Authorization: <AUTH TOKEN>' \ -d '{ "eventId": "9d720f99-1b5a-4141-9877-d32985391e18", "ticketDefinitionId": "625115fd-31cb-4f64-b7bd-06c3137486c0", "beforeTicketDefinitionId": "7ffbabb4-708c-449b-a956-78d153cd1faa" }'
Response
JSON
{}
Errors
400Invalid Argument

There is 1 error with this status code:

See the entire list and learn more about Wix errors.

Event TriggersThis method triggers the following events:
Did this help?

POST

Query Ticket Definitions


Retrieves a list of ticket definitions, given the provided paging, filtering, and sorting. Query Ticket Definitions runs with these defaults, which you can override:

  • createdDate is sorted in ASC order
  • paging.limit is 100
  • paging.offset is 0

For field support for filters and sorting, see Ticket Definitions: Supported Filters and Sorting. To learn about working with Query endpoints, see API Query Language.

Authentication

You can only call this method when authenticated as a Wix app or Wix user identity.

Permissions
Manage Events - all permissions
Manage Orders
Manage Ticket Definitions
Learn more about app permissions.
Endpoint
POST
https://www.wixapis.com/events-ticket-definitions/v3/ticket-definitions/query

Body Params
queryQueryRequired

Query options. See API Query Language for more details.


fieldsArray <string>maxItems 5

Predefined sets of fields to return.

Response Object
ticketDefinitionsArray <TicketDefinition>

List of ticket definitions.


metadataMetadata

Metadata for the paginated results.

Query ticket definitions by created date with sales details
Request
cURL
curl -X POST 'https://www.wixapis.com/events-ticket-definitions/events-ticket-definitions/v3/ticket-definitions/query' \ -H 'Content-Type: application/json' \ -H 'Authorization: <AUTH TOKEN>' \ -d '{ "query": { "filter": { "createdDate": { "$gt": "2023-05-25T00:00:00.000Z" } }, "fields": [ "SALES_DETAILS" ] } }'
Response
JSON
{ "ticketDefinitions": [ { "id": "625115fd-31cb-4f64-b7bd-06c3137486c0", "eventId": "9d720f99-1b5a-4141-9877-d32985391e18", "revision": "1", "createdDate": "2023-05-25T12:41:24.422Z", "updatedDate": "2023-05-25T12:41:24.422Z", "name": "Shoemaking for Beginners", "description": "Embark on a fascinating journey into the world of shoemaking at our Shoemaking for Beginners event. Discover the art and craftsmanship behind creating your own pair of shoes as our expert instructors guide you through each step of the process. From designing to pattern-making and assembling, this hands-on workshop is your gateway to mastering the fundamentals of shoemaking and unleashing your inner designer.", "policyText": "This is your event ticket. Ticket holders must present their tickets on entry. You can either print your ticket or present this digital version. You can find all the details about this event on our website. If you have any questions, issues or wish to get a refund, contact the event host. If you can’t attend the event, please get in touch. Looking forward to seeing you there!", "hidden": false, "limited": true, "initialLimit": 12, "actualLimit": 12, "pricingMethod": { "pricingOptions": { "optionDetails": [ { "optionId": "e63f7f77-ce5d-487b-b585-af30d103fbc8", "name": "Regular Ticket", "price": { "value": "50.00", "currency": "USD" } }, { "optionId": "6e409caa-6183-47f1-b0d6-c78b7047f3b2", "name": "Student Ticket", "price": { "value": "25.00", "currency": "USD" } } ] }, "pricingType": "STANDARD", "free": false }, "feeType": "FEE_INCLUDED", "salePeriod": { "startDate": "2023-07-14T10:00:00Z", "endDate": "2023-07-22T00:00:00Z", "displayNotOnSale": false }, "saleStatus": "SALE_ENDED", "salesDetails": { "unsoldCount": 12, "soldCount": 0, "reservedCount": 0, "soldOut": false } }, { "id": "7ffbabb4-708c-449b-a956-78d153cd1faa", "eventId": "39d16ecc-0ec8-4764-8077-8e991f20ef9d", "revision": "1", "createdDate": "2023-05-25T12:06:15.815Z", "updatedDate": "2023-05-25T12:06:15.815Z", "name": "Gospel Concert", "description": "Experience the uplifting power of gospel music at our awe-inspiring Gospel Concert. Join us for an unforgettable evening filled with soul-stirring melodies, powerful harmonies, and heartfelt performances by renowned gospel artists. Let your spirit soar as you immerse yourself in the joyous celebration of faith, music, and unity at this not-to-be-missed event.", "policyText": "This is your event ticket. Ticket holders must present their tickets on entry. You can either print your ticket or present this digital version. You can find all the details about this event on our website. If you have any questions, issues or wish to get a refund, contact the event host. If you can’t attend the event, please get in touch. Looking forward to seeing you there!", "hidden": false, "limited": true, "initialLimit": 50, "actualLimit": 50, "pricingMethod": { "guestPrice": { "value": "2.00", "currency": "USD" }, "pricingType": "DONATION", "free": false }, "feeType": "FEE_ADDED_AT_CHECKOUT", "salePeriod": { "startDate": "2023-06-28T10:00:00Z", "endDate": "2023-07-08T00:00:00Z", "displayNotOnSale": false }, "saleStatus": "SALE_ENDED", "salesDetails": { "unsoldCount": 3, "soldCount": 0, "reservedCount": 0, "soldOut": false } } ], "metadata": { "count": 2, "offset": null, "total": null, "tooManyToCount": null, "cursors": { "next": null, "prev": null } } }
Did this help?

POST

Count Ticket Definitions


Counts ticket definitions by the saleStatus field, including those with the hidden status.

Authentication

You can only call this method when authenticated as a Wix app or Wix user identity.

Permissions
Manage Events - all permissions
Manage Orders
Manage Ticket Definitions
Learn more about app permissions.
Endpoint
POST
https://www.wixapis.com/events-ticket-definitions/v3/ticket-definitions/count

Body Params
filterstruct

Filter object in the following format:
"filter" : { "fieldName1": "value1" }.


facetArray <string>maxLength 100maxItems 20

Parameters to count ticket definitions by.

  • Max: 20 facets.
Response Object
metadataMetadata

Metadata for the paginated results.


facetsMap <string, FacetCounts>format map

Filter facets.

Count ticket definitions by the "Sale started" status
Request
cURL
curl -X POST 'https://www.wixapis.com/events-ticket-definitions/events-ticket-definitions/v3/ticket-definitions/count' \ -H 'Content-Type: application/json' \ -H 'Authorization: <AUTH TOKEN>' \ -d '{ "filter": { "saleStatus": { "$eq": "SALE_STARTED" } }, "facet": ["saleStatus"] }'
Response
JSON
{ "metadata": { "total": 4 }, "facets": { "saleStatus": { "counts": { "SALE_STARTED": 4 } } } }
Errors
400Invalid Argument

There is 1 error with this status code:

See the entire list and learn more about Wix errors.

Did this help?

POST

Bulk Delete Ticket Definitions By Filter


Deletes multiple ticket definitions.

All ticket definitions that meet the specified filter criteria are deleted.

Authentication

You can only call this method when authenticated as a Wix app or Wix user identity.

Permissions
Manage Events - all permissions
Manage Ticket Definitions
Learn more about app permissions.
Endpoint
POST
https://www.wixapis.com/events-ticket-definitions/v3/bulk/ticket-definitions/delete

Body Params
filterstructRequired

Filter object in the following format:
"filter" : { "fieldName1": "value1" }.

Example:
"filter" : { "eventId": "3d3d5c04-ece0-45a8-85f0-11a58edaa192" }

Response Object
Returns an empty object.
Bulk delete ticket definitions by filter
Request
cURL
curl -X POST 'https://www.wixapis.com/events-ticket-definitions/events-ticket-definitions/v3/bulk/ticket-definitions/delete' \ -H 'Content-Type: application/json' \ -H 'Authorization: <AUTH TOKEN>' \ "filter": { "eventId": "9d720f99-1b5a-4141-9877-d32985391e18" } }'
Response
JSON
{}
Event TriggersThis method triggers the following events:
Did this help?

POST

Change Currency


Changes ticket price currency per event.

Authentication

You can only call this method when authenticated as a Wix app or Wix user identity.

Permissions
Manage Events - all permissions
Manage Ticket Definitions
Learn more about app permissions.
Endpoint
POST
https://www.wixapis.com/events-ticket-definitions/v3/ticket-definitions/currency

Body Params
eventIdstringRequiredformat GUID

Event ID.


currencystringRequiredminLength 3maxLength 3

Ticket price currency in 3-letter ISO-4217 alphabetic format.

Response Object
Returns an empty object.
Change currency
Request
cURL
curl -X POST 'https://www.wixapis.com/events-ticket-definitions/v3/ticket-definitions/currency' \ -H 'Content-Type: application/json' \ -H 'Authorization: <AUTH TOKEN>' \ -d '{ "eventId": "9d720f99-1b5a-4141-9877-d32985391e18", "currency": "USD" }'
Response
JSON
{}
Errors
428Failed Precondition

There is 1 error with this status code:

See the entire list and learn more about Wix errors.

Event TriggersThis method triggers the following events:
Did this help?

Ticket Definition Created


Triggered when a ticket definition is created.

Permissions
Manage Events - all permissions
Manage Orders
Manage Ticket Definitions
Learn more about app permissions.
Event BodyEvent Body Event data is received as a JSON Web Token (JWT). It may be delayed. Be sure to verify the data was sent by Wix.
Event Data
idstring

Unique event ID. Allows clients to ignore duplicate webhooks.


entityFqdnstring

Fully qualified domain name of the entity associated with the event. Expected wix.events.v3.ticket_definition.


slugstring

Event name. Expected created.


entityIdstring

ID of the entity associated with the event.


eventTimestringformat date-time

Event timestamp.


triggeredByAnonymizeRequestboolean

Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).


originatedFromstring

If present, indicates the action that triggered the event.


createdEventCreatedEvent

Event information.

Event Body

The data payload will include the following as an encoded JWT:

JSON
{ "data": { "eventType": "wix.events.v3.ticket_definition_created", "instanceId": "<app-instance-id>", "data": "<stringified-JSON>", // The identity field is sent as a stringified JSON "identity": { "identityType": "<identityType>", // ANONYMOUS_VISITOR, MEMBER, WIX_USER, APP "anonymousVisitorId": "<anonymousVisitorId>", // in case of ANONYMOUS_VISITOR "memberId": "<memberId>", // in case of MEMBER "wixUserId": "<wixUserId>", // in case of WIX_USER "appId": "<appId>" // in case of APP } } }

TicketDefinitionCreated
JSON
{ "id": "9aca3895-8c58-48b7-84a5-35bcd431c125", "entityFqdn": "wix.events.ticketdef.v3.ticket_definition", "slug": "created", "entityId": "aaf51c30-a61c-473e-96be-a42dfa5064c0", "createdEvent": { "entity": { "id": "aaf51c30-a61c-473e-96be-a42dfa5064c0", "eventId": "9d720f99-1b5a-4141-9877-d32985391e18", "revision": "1", "createdDate": "2023-05-25T11:39:26.108Z", "updatedDate": "2023-05-25T11:39:26.108Z", "name": "Leather Workshop", "hidden": false, "limited": true, "initialLimit": 3, "actualLimit": 3, "pricingMethod": { "fixedPrice": { "value": "200.00", "currency": "USD" }, "pricingType": "STANDARD", "free": false }, "feeType": "FEE_INCLUDED", "salePeriod": { "startDate": "2023-06-07T10:00:00Z", "endDate": "2023-06-30T00:00:00Z", "displayNotOnSale": false }, "saleStatus": "SALE_SCHEDULED" } }, "eventTime": "2023-05-25T11:39:26.278160Z", "triggeredByAnonymizeRequest": false, "entityEventSequence": "1" }
Did this help?

Ticket Definition Deleted


Triggered when a ticket definition is deleted.

Permissions
Manage Events - all permissions
Manage Orders
Manage Ticket Definitions
Learn more about app permissions.
Event BodyEvent Body Event data is received as a JSON Web Token (JWT). It may be delayed. Be sure to verify the data was sent by Wix.
Event Data
idstring

Unique event ID. Allows clients to ignore duplicate webhooks.


entityFqdnstring

Fully qualified domain name of the entity associated with the event. Expected wix.events.v3.ticket_definition.


slugstring

Event name. Expected deleted.


entityIdstring

ID of the entity associated with the event.


eventTimestringformat date-time

Event timestamp.


triggeredByAnonymizeRequestboolean

Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).


originatedFromstring

If present, indicates the action that triggered the event.


deletedEventstruct

Event information.

Event Body

The data payload will include the following as an encoded JWT:

JSON
{ "data": { "eventType": "wix.events.v3.ticket_definition_deleted", "instanceId": "<app-instance-id>", "data": "<stringified-JSON>", // The identity field is sent as a stringified JSON "identity": { "identityType": "<identityType>", // ANONYMOUS_VISITOR, MEMBER, WIX_USER, APP "anonymousVisitorId": "<anonymousVisitorId>", // in case of ANONYMOUS_VISITOR "memberId": "<memberId>", // in case of MEMBER "wixUserId": "<wixUserId>", // in case of WIX_USER "appId": "<appId>" // in case of APP } } }

TicketDefinitionDeleted
JSON
{ "id": "85deb868-5896-4a44-8f0a-3544eb432216", "entityFqdn": "wix.events.ticketdef.v3.ticket_definition", "slug": "deleted", "entityId": "077766f0-ffa4-4fa1-bdf8-dbb0439c1892", "deletedEvent": {}, "eventTime": "2023-05-25T10:57:03.945444Z", "triggeredByAnonymizeRequest": false }
Did this help?

Ticket Definition Sale Ended


Triggered when a ticket sale ends. Sales details are not included in the payload.

Permissions
Manage Events - all permissions
Manage Orders
Manage Ticket Definitions
Learn more about app permissions.
Event BodyEvent Body Event data is received as a JSON Web Token (JWT). It may be delayed. Be sure to verify the data was sent by Wix.
Event Data
idstring

Unique event ID. Allows clients to ignore duplicate webhooks.


entityFqdnstring

Fully qualified domain name of the entity associated with the event. Expected wix.events.v3.ticket_definition.


slugstring

Event name. Expected sale_ended.


entityIdstring

ID of the entity associated with the event.


eventTimestringformat date-time

Event timestamp.


triggeredByAnonymizeRequestboolean

Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).


originatedFromstring

If present, indicates the action that triggered the event.


actionEventActionEvent

Event information.

Event Body

The data payload will include the following as an encoded JWT:

JSON
{ "data": { "eventType": "wix.events.v3.ticket_definition_sale_ended", "instanceId": "<app-instance-id>", "data": "<stringified-JSON>", // The identity field is sent as a stringified JSON "identity": { "identityType": "<identityType>", // ANONYMOUS_VISITOR, MEMBER, WIX_USER, APP "anonymousVisitorId": "<anonymousVisitorId>", // in case of ANONYMOUS_VISITOR "memberId": "<memberId>", // in case of MEMBER "wixUserId": "<wixUserId>", // in case of WIX_USER "appId": "<appId>" // in case of APP } } }

TicketDefinitionSaleEnded
JSON
{ "id": "7cf9dc1b-be64-4394-b748-21de6bed31f1", "entityFqdn": "wix.events.ticketdef.v3.ticket_definition", "slug": "sale_ended", "entityId": "aaf51c30-a61c-473e-96be-a42dfa5064c0", "actionEvent": { "body": { "ticketDefinition": { "id": "aaf51c30-a61c-473e-96be-a42dfa5064c0", "eventId": "9d720f99-1b5a-4141-9877-d32985391e18", "revision": "1", "createdDate": "2023-05-25T11:39:26.108Z", "updatedDate": "2023-05-25T11:39:26.108Z", "name": "Leather Workshop", "description": "Step into the world of fine craftsmanship and explore the artistry of handcrafted leather goods at our captivating Leather Workshop. Join us for a hands-on experience that delves into the intricate process of transforming raw leather into exquisite creations. Immerse yourself in a creative atmosphere where seasoned leather artisans will guide you through the journey of mastering age-old techniques and unlocking your inner artisan.", "policyText": "This is your event ticket. Ticket holders must present their tickets on entry. You can either print your ticket or present this digital version. You can find all the details about this event on our website. If you have any questions, issues or wish to get a refund, contact the event host. If you can’t attend the event, please get in touch. Looking forward to seeing you there!", "hidden": false, "limited": true, "initialLimit": 3, "actualLimit": 3, "pricingMethod": { "fixedPrice": { "value": "200.00", "currency": "USD" }, "pricingType": "STANDARD", "free": false }, "feeType": "FEE_INCLUDED", "salePeriod": { "startDate": "2023-06-07T10:00:00Z", "endDate": "2023-06-30T00:00:00Z", "displayNotOnSale": false }, "saleStatus": "SALE_ENDED" } } }, "eventTime": "2023-05-25T13:44:59.129216Z", "triggeredByAnonymizeRequest": false }
Did this help?

Ticket Definition Sale Period Updated


Triggered when a sale period is updated.

Permissions
Manage Events - all permissions
Manage Orders
Manage Ticket Definitions
Learn more about app permissions.
Event BodyEvent Body Event data is received as a JSON Web Token (JWT). It may be delayed. Be sure to verify the data was sent by Wix.
Event Data
idstring

Unique event ID. Allows clients to ignore duplicate webhooks.


entityFqdnstring

Fully qualified domain name of the entity associated with the event. Expected wix.events.v3.ticket_definition.


slugstring

Event name. Expected sale_period_updated.


entityIdstring

ID of the entity associated with the event.


eventTimestringformat date-time

Event timestamp.


triggeredByAnonymizeRequestboolean

Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).


originatedFromstring

If present, indicates the action that triggered the event.


actionEventActionEvent

Event information.

Event Body

The data payload will include the following as an encoded JWT:

JSON
{ "data": { "eventType": "wix.events.v3.ticket_definition_sale_period_updated", "instanceId": "<app-instance-id>", "data": "<stringified-JSON>", // The identity field is sent as a stringified JSON "identity": { "identityType": "<identityType>", // ANONYMOUS_VISITOR, MEMBER, WIX_USER, APP "anonymousVisitorId": "<anonymousVisitorId>", // in case of ANONYMOUS_VISITOR "memberId": "<memberId>", // in case of MEMBER "wixUserId": "<wixUserId>", // in case of WIX_USER "appId": "<appId>" // in case of APP } } }

TicketDefinitionSalePeriodUpdated
JSON
{ "id": "7cf9dc1b-be64-4394-b748-21de6bed31f1", "entityFqdn": "wix.events.ticketdef.v3.ticket_definition", "slug": "sale_period_updated", "entityId": "aaf51c30-a61c-473e-96be-a42dfa5064c0", "updatedEvent": { "currentEntity": { "afterUpdate": { "startDate": "2023-06-08T10:00:00Z", "endDate": "2023-06-30T00:00:00Z", "displayNotOnSale": false } } }, "eventTime": "2023-05-25T13:44:59.129216Z", "triggeredByAnonymizeRequest": false }
Did this help?

Ticket Definition Sale Started


Triggered when a ticket sale starts. Sales details are not included in the payload.

Permissions
Manage Events - all permissions
Manage Orders
Manage Ticket Definitions
Learn more about app permissions.
Event BodyEvent Body Event data is received as a JSON Web Token (JWT). It may be delayed. Be sure to verify the data was sent by Wix.
Event Data
idstring

Unique event ID. Allows clients to ignore duplicate webhooks.


entityFqdnstring

Fully qualified domain name of the entity associated with the event. Expected wix.events.v3.ticket_definition.


slugstring

Event name. Expected sale_started.


entityIdstring

ID of the entity associated with the event.


eventTimestringformat date-time

Event timestamp.


triggeredByAnonymizeRequestboolean

Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).


originatedFromstring

If present, indicates the action that triggered the event.


actionEventActionEvent

Event information.

Event Body

The data payload will include the following as an encoded JWT:

JSON
{ "data": { "eventType": "wix.events.v3.ticket_definition_sale_started", "instanceId": "<app-instance-id>", "data": "<stringified-JSON>", // The identity field is sent as a stringified JSON "identity": { "identityType": "<identityType>", // ANONYMOUS_VISITOR, MEMBER, WIX_USER, APP "anonymousVisitorId": "<anonymousVisitorId>", // in case of ANONYMOUS_VISITOR "memberId": "<memberId>", // in case of MEMBER "wixUserId": "<wixUserId>", // in case of WIX_USER "appId": "<appId>" // in case of APP } } }

TicketDefinitionSaleStarted
JSON
{ "id": "7cf9dc1b-be64-4394-b748-21de6bed31f1", "entityFqdn": "wix.events.ticketdef.v3.ticket_definition", "slug": "sale_started", "entityId": "aaf51c30-a61c-473e-96be-a42dfa5064c0", "actionEvent": { "body": { "ticketDefinition": { "id": "aaf51c30-a61c-473e-96be-a42dfa5064c0", "eventId": "9d720f99-1b5a-4141-9877-d32985391e18", "revision": "1", "createdDate": "2023-05-25T11:39:26.108Z", "updatedDate": "2023-05-25T11:39:26.108Z", "name": "Leather Workshop", "description": "Step into the world of fine craftsmanship and explore the artistry of handcrafted leather goods at our captivating Leather Workshop. Join us for a hands-on experience that delves into the intricate process of transforming raw leather into exquisite creations. Immerse yourself in a creative atmosphere where seasoned leather artisans will guide you through the journey of mastering age-old techniques and unlocking your inner artisan.", "policyText": "This is your event ticket. Ticket holders must present their tickets on entry. You can either print your ticket or present this digital version. You can find all the details about this event on our website. If you have any questions, issues or wish to get a refund, contact the event host. If you can’t attend the event, please get in touch. Looking forward to seeing you there!", "hidden": false, "limited": true, "initialLimit": 3, "actualLimit": 3, "pricingMethod": { "fixedPrice": { "value": "200.00", "currency": "USD" }, "pricingType": "STANDARD", "free": false }, "feeType": "FEE_INCLUDED", "salePeriod": { "startDate": "2023-06-07T10:00:00Z", "endDate": "2023-06-30T00:00:00Z", "displayNotOnSale": false }, "saleStatus": "SALE_STARTED" } } }, "eventTime": "2023-05-25T13:44:59.129216Z", "triggeredByAnonymizeRequest": false }
Did this help?

Ticket Definition Updated


Triggered when a ticket definition is updated.

Permissions
Manage Events - all permissions
Manage Orders
Manage Ticket Definitions
Learn more about app permissions.
Event BodyEvent Body Event data is received as a JSON Web Token (JWT). It may be delayed. Be sure to verify the data was sent by Wix.
Event Data
idstring

Unique event ID. Allows clients to ignore duplicate webhooks.


entityFqdnstring

Fully qualified domain name of the entity associated with the event. Expected wix.events.v3.ticket_definition.


slugstring

Event name. Expected updated.


entityIdstring

ID of the entity associated with the event.


eventTimestringformat date-time

Event timestamp.


triggeredByAnonymizeRequestboolean

Whether the event was triggered as a result of a privacy regulation application (for example, GDPR).


originatedFromstring

If present, indicates the action that triggered the event.


updatedEventUpdatedEvent

Event information.

Event Body

The data payload will include the following as an encoded JWT:

JSON
{ "data": { "eventType": "wix.events.v3.ticket_definition_updated", "instanceId": "<app-instance-id>", "data": "<stringified-JSON>", // The identity field is sent as a stringified JSON "identity": { "identityType": "<identityType>", // ANONYMOUS_VISITOR, MEMBER, WIX_USER, APP "anonymousVisitorId": "<anonymousVisitorId>", // in case of ANONYMOUS_VISITOR "memberId": "<memberId>", // in case of MEMBER "wixUserId": "<wixUserId>", // in case of WIX_USER "appId": "<appId>" // in case of APP } } }

TicketDefinitionUpdated
JSON
{ "id": "7cf9dc1b-be64-4394-b748-21de6bed31f1", "entityFqdn": "wix.events.ticketdef.v3.ticket_definition", "slug": "updated", "entityId": "aaf51c30-a61c-473e-96be-a42dfa5064c0", "updatedEvent": { "currentEntity": { "afterUpdate": { "id": "aaf51c30-a61c-473e-96be-a42dfa5064c0", "eventId": "9d720f99-1b5a-4141-9877-d32985391e18", "revision": "2", "createdDate": "2023-05-25T11:39:26.108Z", "updatedDate": "2023-05-25T13:39:26.108Z", "name": "Leather Workshop", "hidden": false, "limited": true, "initialLimit": 3, "actualLimit": 3, "pricingMethod": { "fixedPrice": { "value": "200.00", "currency": "USD" }, "pricingType": "STANDARD", "free": false }, "feeType": "FEE_INCLUDED", "salePeriod": { "startDate": "2023-06-07T10:00:00Z", "endDate": "2023-06-30T00:00:00Z", "displayNotOnSale": false }, "saleStatus": "SALE_SCHEDULED" } } }, "eventTime": "2023-05-25T13:44:59.129216Z", "triggeredByAnonymizeRequest": false }
Did this help?