> ## Documentation Index
> Fetch the complete documentation index at: https://docs.automate.ax/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Automate.ax automations are TypeScript programs.
> Use Bun for installation and command examples.
> Use Automate.ax for the product name and automate.ax for the package, CLI, and domain.
> Treat documented public APIs as current; do not invent transitional or deprecated names.

# On Booking Custom Attribute Definition Owned Created

> A custom attribute definition was created by your application. The application that created the custom attribute definition is the owner of the definition and corresponding custom attributes.

`square.onBookingCustomAttributeDefinitionOwnedCreated` subscribes to `booking.custom_attribute_definition.owned.created` for the selected seller. It does not require an additional Square OAuth permission.

## Example

```ts automations/square-on-booking-custom-attribute-definition-owned-created.automation.ts theme={null}
import { automation } from "automate.ax"
import { square } from "automate.ax/square"

export default automation(
  "onBookingCustomAttributeDefinitionOwnedCreated",
  () => {
    const event = square.onBookingCustomAttributeDefinitionOwnedCreated()

    // Send event to the Square-aware order, CRM, or messaging action you use.
  },
)
```

## Event

A custom attribute definition was created by your application. The application that created the custom attribute definition is the owner of the definition and corresponding custom attributes.

The signal resolves to the official `Square.BookingCustomAttributeDefinitionOwnedCreatedEvent` payload with `type` narrowed to `booking.custom_attribute_definition.owned.created`.
