---
title: "Create an event occurrence"
method: POST
path: "/v1/event_series/{event_series_id}/events"
tags: ["Event series"]
---

# Create an event occurrence

`POST /v1/event_series/{event_series_id}/events`

## Request

- Base URL: `https://api.tickettailor.com`
- URL: `https://api.tickettailor.com/v1/event_series/{event_series_id}/events`
- Auth: HTTP basic
- TypeScript: <https://skmtc.dev/tickettailor/apis/ticket-tailor-api/docs/v1/event_series/:event_series_id/events/post.ts> (a function with typed inputs; its response is checked against the schema)

For the given event series ID, create an event

## Path parameters

- `event_series_id` string, required

## Request body `application/x-www-form-urlencoded`

- object
  - `end_date` string, required: Event end date in the YYYY-MM-dd format
  - `end_time` string: Event end time in the HH:ii:ss format
  - `hidden` true | false: True, if the event is set to hidden. False otherwise
  - `online_link` string: URL of the online event
  - `override_id` string: The ID of the override that needs to be applied against the event occurrence
  - `start_date` string, required: Event start date in the YYYY-MM-dd format
  - `start_time` string: Event start time in the HH:ii:ss format
  - `unavailable` true | false: True, if the event is set to unavailable. False otherwise
  - `unavailable_status` string: Optional custom status message when the event is set to unavailable

## Response `201`

Successfully created a new event

- EventOccurrence
  - `object` string
  - `id` string: A unique identifier for the event occurrence
  - `available_status` string, nullable: Optional custom status message when event is set to be available
  - `bundles` Bundle[], nullable: List of associated bundles
    - `object` string
    - `id` string
    - `access_code` string, nullable: Code to access a bundle
    - `booking_fee` integer: Booking fee in cents
    - `description` string: Bundle description
    - `group_id` string, nullable: Bundle group ID
    - `name` string: Bundle name
    - `price` integer: Price in cents
    - `products` object[]: Array of associated products
      - `id` string: A unique product identifier
      - `quantity` integer: Product quantity
    - `status` 'HIDDEN' | 'UNAVAILABLE' | 'ON_SALE' | 'SOLD_OUT': Bundle status
    - `ticket_types` object[]: Array of associated ticket types
      - `id` string: A unique ticket type identifier
      - `quantity` integer: Ticket type quantity
  - `chk` string: Used for Ticket Tailor checkout chk value
  - `currency` 'gbp' | 'usd' | 'eur' | 'sgd' | 'aud' | 'brl' | 'cad' | 'czk' | 'dkk' | 'hkd' | 'huf' | 'ils' | 'jpy' | 'myr' | 'mxn' | 'nok' | 'nzd' | 'php' | 'pln' | 'rub' | 'sek' | 'chf' | 'twd' | 'thb' | 'try': Information about the currency the event is configured to use
  - `end` object: The end date and time for the event
    - `date` string: ISO-8601 date for the end of the event
    - `formatted` string: A formatted date string for the end of the event
    - `iso` string: ISO-8601 date and time for the end of the event
    - `time` string: Time of the end of the event
    - `timezone` string: Timezone offset for the end of the event
    - `unix` integer: Unix timestamp for for the end of the event
  - `event_series_id` string: A unique identifier for the associated event series
  - `hidden` string: True, if event is set to hidden
  - `online_link` string, nullable: URL of the online event
  - `override_id` string, nullable: A unique identifier for the associated override
  - `revenue` number: Total revenue of the event
  - `sales_tax_label` string, nullable: The label for the sales tax
  - `sales_tax_percentage` integer, nullable: The percentage of the sales tax
  - `sales_tax_treatment` 'inclusive' | 'exclusive', nullable: The treatment of the sales tax
  - `start` object: The start date and time for the event
    - `date` string: ISO-8601 date for the start of the event
    - `formatted` string: A formatted date string for the start of the event
    - `iso` string: ISO-8601 date and time for the start of the event
    - `time` string: Time of the start of the event
    - `timezone` string: Timezone offset for the start of the event
    - `unix` integer: Unix timestamp for the start of the event
  - `max_tickets_sold_per_occurrence` integer, nullable: Maximum quantity of tickets that can be sold across all ticket types
  - `tickets_available` string, nullable: Are there any ticket types available?
  - `ticket_groups` TicketGroup[], nullable
    - `object` string
    - `id` string: A unique identifier for the ticket group
    - `bundle_ids` string[], nullable: An array of associated bundle ids
    - `max_per_order` integer, nullable: Maximum number of tickets allowed per order
    - `max_quantity` integer, nullable: Maximum quantity of tickets that are allowed to be sold for the tickets in the group
    - `min_per_order` integer, nullable: Minimum number of tickets allowed per order
    - `name` string: Name of the ticket group
    - `sort_order` integer: Sort index of the group in the UI
    - `ticket_ids` string[]: An array of associated ticket type ids
  - `ticket_types` TicketType[], nullable
    - `object` string, required
    - `id` string, required: A unique identifier for the ticket type
    - `access_code` string, nullable, required: Code to access a hidden ticket
    - `booking_fee` integer, required: Optional booking fee which is charged per ticket type to the customer and the funds are paid to you.
    - `description` string, nullable, required
    - `discounts` string[]: An array of associated discounts
    - `group_id` string, nullable, required: ID of the group this ticket type belongs to
    - `has_overrides` 'true' | 'false': Specifies whether the ticket type has overrides
    - `hide_after` object, nullable: Timestamp in seconds when the ticket type should be hidden until.
      - `date` string: ISO-8601 date for the start of the event
      - `formatted` string: A formatted date string for the start of the event
      - `iso` string: ISO-8601 date and time for the start of the event
      - `time` string: Time for the start of the event
      - `timezone` string: Timezone offset for the start of the event
      - `unix` integer: Unix timestamp for the start of the event
    - `hide_until` object, nullable: Timestamp in seconds when the ticket type should be hidden after.
      - `date` string: ISO-8601 date for the start of the event
      - `formatted` string: A formatted date string for the start of the event
      - `iso` string: ISO-8601 date and time for the start of the event
      - `time` string: Time for the start of the event
      - `timezone` string: Timezone offset for the start of the event
      - `unix` integer: Unix timestamp for the start of the event
    - `hide_when_sold_out` 'true' | 'false': Specifies whether the ticket is hidden when it has sold out
    - `max_per_order` integer, required: Maximum number of ticket types you can select per order
    - `min_per_order` integer, required: Minimum number of ticket types you can select per order
    - `name` string, required: Name of the ticket type
    - `override_id` string, nullable: The ID of the override associated with the ticket type
    - `price` union, required: Cost of the ticket type
      - integer
      - number
    - `show_quantity_remaining` 'true' | 'false': Specifies whether to show the number of tickets still available
    - `show_quantity_remaining_less_than` integer, nullable: Only show number of tickets still available when the available quantity is equal to or lower than this threshold
    - `status` 'on_sale' | 'sold_out' | 'unavailable' | 'hidden' | 'admin_only' | 'locked', required: Status of the ticket type
    - `sort_order` integer, required: Sort index of ticket type in the UI
    - `type` 'paid' | 'free', required
    - `quantity` integer, required: Number available for purchase
    - `quantity_held` integer, required: Number held
    - `quantity_in_baskets` integer: Number in baskets
    - `quantity_issued` integer, required: Number issued
    - `quantity_total` integer, required: Total number including issued and still available
  - `total_issued_tickets` integer: Total number of issued tickets
  - `transaction_fee_fixed_amount` integer, nullable: Fixed amount of the transaction fee
  - `transaction_fee_percentage` integer, nullable: Percentage of the transaction fee
  - `unavailable` string: True, if event is set to unavailable
  - `unavailable_status` string, nullable: Optional custom status message when event is set to be unavailable
  - `url` string: Event occurrence URL

## Other responses

- `default`: Error schema

---

[API](https://skmtc.dev/tickettailor/apis/ticket-tailor-api.md) - [All operations](https://skmtc.dev/tickettailor/apis/ticket-tailor-api/llms.txt) - [OpenAPI document](https://skmtc.dev/tickettailor/apis/ticket-tailor-api/revisions/b10f60afda54?raw)
