# This file was auto-generated by Fern from our API Definition.

import typing

import typing_extensions
from .booking_created_event_data import BookingCreatedEventDataParams


class BookingCreatedEventParams(typing_extensions.TypedDict):
    """
    Published when a booking is created.

    To receive this event with buyer-level permissions, you must have `APPOINTMENTS_READ` set for the OAuth scope.
    To receive this event with seller-level permissions, you must have `APPOINTMENTS_ALL_READ` and `APPOINTMENTS_READ` set for the OAuth scope.
    """

    merchant_id: typing_extensions.NotRequired[typing.Optional[str]]
    """
    The ID of the target seller associated with the event.
    """

    type: typing_extensions.NotRequired[typing.Optional[str]]
    """
    The type of this event. The value is `"booking.created"`.
    """

    event_id: typing_extensions.NotRequired[typing.Optional[str]]
    """
    A unique ID for the event.
    """

    created_at: typing_extensions.NotRequired[str]
    """
    The timestamp of when the event was created, in RFC 3339 format.
    """

    data: typing_extensions.NotRequired[BookingCreatedEventDataParams]
    """
    The data associated with the event.
    """
