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

# Create simple booking or blocker



## OpenAPI

````yaml /developers/openapi/admin.openapi.json post /api/v1/bookings
openapi: 3.1.0
info:
  title: admin-api
  version: '1.0'
  description: >-
    The Admin API gives you **full programmatic access** to your anny
    organization. It is built for **server-side integrations** — backend
    services, automation scripts, and custom tooling that act on behalf of your
    team.


    ---


    ## When to use the Admin API


    Use the Admin API when you need to **drive workflows from your own
    systems**:


    - **Sync membership data** — create or update customers, assign them to
    communities, reflect subscription status from an external CRM

    - **Create bookings programmatically** — build back-office tools or automate
    repeat reservations without going through the customer checkout

    - **Issue and forward invoices** — generate invoices, send them to
    customers, or push them to your accounting system

    - **React to real-time events** — pair the API with
    [Webhooks](/developers/guides/admin/webhooks) to trigger side effects
    whenever a booking is created, cancelled, or checked in

    - **Drive display panels** — push live occupancy and schedule data to
    digital signage or lobby displays


    Combined with [webhook subscriptions](/developers/guides/admin/webhooks),
    you can build fully automated, event-driven workflows without polling.


    ---


    ## Authentication


    Generate a long-lived API token directly in the admin dashboard under
    **Organization Settings → API**. All requests require it in the
    `Authorization` header:


    ```

    Authorization: Bearer {access_token}

    ```


    Every endpoint is **organization-scoped**. Pass your organization ID as a
    query parameter on every request:


    ```

    ?o={organization_id}

    ```


    See the [Authentication guide](/developers/guides/authentication) for token
    scopes and the full OAuth2 flow.


    ---


    ## Admin API vs Customer API


    | | Admin API | Customer API |

    |---|---|---|

    | **Use case** | Server-side automation, backend tooling | End-user apps,
    booking widgets |

    | **Auth** | Required — API token or OAuth2 | Optional — many endpoints work
    without a token |

    | **Identifiers** | Immutable UUIDs and integer IDs | Slugs, booking
    numbers, order numbers |

    | **Access** | Full read/write | Public and customer-owned data only |


    → [Go to the Customer API](/developers/api-reference/customer)


    ---


    ## Resource Identifiers


    The Admin API uses **immutable IDs** — UUIDs for most entities, integers for
    legacy ones. These are safe to store in external systems and never change,
    even if an organization renames a resource.


    ---


    ## Starting Points


    | Guide | What it covers |

    |---|---|

    | [Getting Started](/developers) | First steps and quickstart |

    | [JSON:API Conventions](/developers/guides/json-api-conventions) | Request
    and response format |

    | [Authentication](/developers/guides/authentication) | API tokens, OAuth2,
    scopes |

    | [Availability & Booking Search](/developers/guides/availability) | Search
    open slots and timeslots |

    | [Admin Booking Creation](/developers/guides/admin/booking-creation) |
    Create bookings from the back office |

    | [Admin Booking Lifecycle](/developers/guides/admin/booking-lifecycle) |
    Status changes, check-in, cancellations |

    | [Invoices](/developers/guides/admin/invoices) | Create, send, and manage
    invoices |

    | [Customer Management](/developers/guides/admin/customer-management) |
    Create and manage customer records |

    | [Booking Calendars](/developers/guides/admin/calendar-events) | Custom
    calendar events |

    | [Timeslot Management](/developers/guides/admin/timeslot-management) |
    Manage timeslot CRUD, recurrence, allocations, and rescheduling |

    | [Broadcast Campaigns](/developers/guides/admin/broadcasting) | Email and
    push campaigns |

    | [Exports](/developers/guides/admin/exports) | Export bookings and customer
    data |

    | [Webhooks & Events](/developers/guides/admin/webhooks) | Subscribe to
    real-time events |


    ---


    ## Base URLs


    | Environment | URL |

    |---|---|

    | Production | `https://b.anny.co` |

    | Gov-Cloud | `https://b.anny.eu` |
  contact:
    name: anny GmbH
    url: https://anny.co
    email: support@anny.co
servers:
  - url: https://b.anny.co
    description: Production
  - url: https://b.anny.eu
    description: Gov-Cloud
security:
  - Bearer: []
tags:
  - name: Add-On Groups
  - name: Add-Ons
  - name: Booking Add-Ons
  - name: Booking Bundles
  - name: Booking Passes
  - name: Booking Quota Grants
  - name: Booking Quotas
  - name: Booking Rules
  - name: Bookings
  - name: Broadcast Campaigns
  - name: Broadcasts
  - name: Calendars
  - name: Cancellation Policies
  - name: Communities
  - name: External Links
  - name: Community Invites
  - name: Custom Fields
  - name: Custom Forms
  - name: Customers
  - name: Businesses
  - name: Display Panels
  - name: Displays
  - name: Document Templates
  - name: Exports
  - name: External Calendars
  - name: Files
  - name: Images
  - name: Invoices
  - name: Items
  - name: Legal Document Links
  - name: Legal Documents
  - name: Model Identifiers
  - name: Orders
  - name: Organizations
  - name: Payment Setups
  - name: Payments
  - name: Plan Subscriptions
  - name: Price Modifiers
  - name: Properties
  - name: Queues
  - name: Resource Categories
  - name: Resource Groups
  - name: Resource Properties
  - name: Resources
  - name: Scans
  - name: Schedule Groups
  - name: Schedules
  - name: Service Add-Ons
  - name: Service Groups
  - name: Services
  - name: Sub-Resources
  - name: Test-Results
  - name: Test Results
  - name: Tests
  - name: Timeslot Allocations
  - name: Timeslot Series
  - name: Timeslots
  - name: User Invites
  - name: Users
  - name: Customer Balances
  - name: Vouchers
  - name: Webhooks
paths:
  /api/v1/bookings:
    post:
      tags:
        - Bookings
      summary: Create simple booking or blocker
      operationId: post-bookings
      parameters:
        - schema:
            type: string
          in: header
          name: Authorization
          description: Bearer Token
          required: true
        - schema:
            type: string
            default: application/vnd.api+json
          in: header
          name: Content-Type
        - schema:
            type: boolean
            default: '1'
          in: query
          name: check_availability
        - schema:
            type: string
          in: query
          name: o
          description: Organization ID
      requestBody:
        content:
          application/vnd.api+json:
            schema:
              type: object
              properties:
                data:
                  type: object
                  properties:
                    type:
                      type: string
                      default: bookings
                    attributes:
                      type: object
                      properties:
                        status:
                          type: string
                        is_blocker:
                          type: boolean
                        description:
                          type: string
                        weight:
                          type: integer
                        currency:
                          type: string
                        is_net_total:
                          type: boolean
                        custom_entry_map:
                          type:
                            - object
                            - 'null'
                        manually_created:
                          type: boolean
                        is_sub_booking:
                          type: boolean
                        start_date:
                          type: string
                          format: date-time
                        end_date:
                          type: string
                          format: date-time
                        blocker_start_date:
                          type: string
                          format: date-time
                        blocker_end_date:
                          type: string
                          format: date-time
                    relationships:
                      type: object
                      properties:
                        resource:
                          type: object
                          properties:
                            data:
                              type: object
                              properties:
                                type:
                                  type: string
                                id:
                                  type: string
                        service:
                          type: object
                          properties:
                            data:
                              type: object
                              properties:
                                type:
                                  type: string
                                id:
                                  type: string
                        order:
                          type: object
                          properties:
                            data:
                              type:
                                - object
                                - 'null'
                    meta:
                      type:
                        - object
                        - 'null'
            examples:
              default:
                value:
                  data:
                    type: bookings
                    attributes:
                      status: accepted
                      is_blocker: false
                      description: Max Mustermann - Basic
                      weight: 1
                      currency: EUR
                      is_net_total: false
                      custom_entry_map: {}
                      manually_created: true
                      is_sub_booking: false
                      start_date: '2021-10-08T07:15:00+02:00'
                      end_date: '2021-10-08T07:45:00+02:00'
                      blocker_start_date: '2021-10-08T07:15:00+02:00'
                      blocker_end_date: '2021-10-08T07:45:00+02:00'
                    relationships:
                      resource:
                        data:
                          id: '21887'
                          type: resources
                      service:
                        data:
                          id: '2777'
                          type: services
                      order:
                        data: null
                    meta: {}
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/bookings.v1'
              examples:
                default:
                  value:
                    data:
                      type: bookings
                      id: '4467710'
                      attributes:
                        number: BB93809456
                        status: accepted
                        is_blocker: false
                        start_date: '2021-10-08T05:15:00+00:00'
                        end_date: '2021-10-08T05:45:00+00:00'
                        blocker_start_date: '2021-10-08T05:00:00+00:00'
                        blocker_end_date: '2021-10-08T06:00:00+00:00'
                        description: Max Mustermann - Basic
                        charged_duration: 60
                        weight: 1
                        currency: null
                        total: 10
                        is_net_total: false
                        code: QKuBqC70mmwB7RAi
                        subtotal: 10
                        charged_total: 10
                        charged_subtotal: 10
                        starting_fee: 10
                        customer_note: null
                        created_at: '2021-10-07T08:36:14+00:00'
                        canceled_at: null
                        check_in_date: null
                        check_out_date: null
                        custom_entry_map: {}
                        note: null
                        manually_created: true
                        is_sub_booking: false
                        external_uuid: null
                        has_payment: null
                        is_editable: true
                        updated_at: '2021-10-07T08:36:14+00:00'
                      links:
                        self: https://b.anny.co/api/v1/bookings/4467710
                      meta: []
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      security:
        - Bearer: []
components:
  schemas:
    bookings.v1:
      $schema: https://json-schema.org/draft/2020-12/schema
      x-version: 1.1.0
      title: Booking
      type: object
      description: >-
        A booking blocks the related resource from `start_date` until its
        `end_date` while its status is `reserved`, `requested` or `accepted`.


        **Status values:**

        - `reserved` — booking is reserved until order expiration

        - `requested` — needs manual acceptance by admin

        - `accepted` — accepted (automatically or manually)

        - `rejected` — rejected by admin before fulfillment; always yields a
        100% refund when payment exists

        - `canceled` — canceled by customer or admin; refund follows the
        configured cancellation policy conditions

        - `expired` — booking expired because the check-in time passed without
        check-in
      x-tags:
        - Models
      properties:
        id:
          type: string
        type:
          type: string
          default: bookings
        attributes:
          type: object
          properties:
            number:
              type:
                - string
                - 'null'
              description: Booking number
            status:
              type: string
              enum:
                - reserved
                - requested
                - accepted
                - rejected
                - canceled
                - expired
              description: Current booking status
            is_blocker:
              type: boolean
              description: Whether this booking blocks the resource time slot
            start_date:
              type: string
              description: Start date in ISO 8601 format
            end_date:
              type: string
              description: End date in ISO 8601 format
            blocker_start_date:
              type: string
              description: Blocker interval start (includes buffer time)
            blocker_end_date:
              type: string
              description: Blocker interval end (includes buffer time)
            description:
              type:
                - string
                - 'null'
              description: Auto-generated description
              x-visibility: admin
            charged_duration:
              type: integer
              description: Duration in minutes that is charged
            weight:
              type: integer
              description: How many slots this booking occupies
            is_sequence:
              type: boolean
              description: Whether this booking is part of a sequence
            price_hidden:
              type: boolean
              description: Whether prices are hidden for this booking
            visible_for_customer:
              type: boolean
              description: Whether this booking is visible for the customer
            can_edit:
              type: boolean
              description: Whether the customer can edit this booking
            is_own:
              type: boolean
              description: Whether the authenticated customer owns this booking
            currency:
              type:
                - string
                - 'null'
              description: ISO 4217 currency code
              x-visibility: authenticated
            tax_rate:
              type: number
              description: Tax rate applied
              x-visibility: authenticated
            total:
              type: number
              description: Total amount including tax
              x-visibility: authenticated
            is_net_total:
              type: boolean
              description: Whether total is net (before tax)
              x-visibility: authenticated
            code:
              type:
                - string
                - 'null'
              description: Unique booking code for check-in
              x-visibility: authenticated
            subtotal:
              type: number
              description: Subtotal before tax
              x-visibility: authenticated
            charged_total:
              type: number
              description: Total charged amount
              x-visibility: authenticated
            charged_subtotal:
              type: number
              description: Charged subtotal
              x-visibility: authenticated
            starting_fee:
              type: number
              description: Starting fee amount
              x-visibility: authenticated
            customer_note:
              type:
                - string
                - 'null'
              description: Note from the customer
              x-visibility: authenticated
            created_at:
              type: string
              description: Creation timestamp
              x-visibility: authenticated
            canceled_at:
              type:
                - string
                - 'null'
              description: Cancellation timestamp
              x-visibility: authenticated
            check_in_date:
              type:
                - string
                - 'null'
              description: Check-in timestamp
              x-visibility: authenticated
            check_out_date:
              type:
                - string
                - 'null'
              description: Check-out timestamp
              x-visibility: authenticated
            custom_entry_map:
              type: object
              description: Custom field entries as key-value map
              x-visibility: authenticated
            is_series:
              type: boolean
              description: Whether this booking belongs to a series
              x-visibility: authenticated
            is_series_master:
              type: boolean
              description: Whether this is the master booking of a series
              x-visibility: authenticated
            series_id:
              type:
                - string
                - 'null'
              description: ID of the series this booking belongs to
              x-visibility: authenticated
            series_type:
              type:
                - string
                - 'null'
              description: Type of the series
              x-visibility: authenticated
            note:
              type:
                - string
                - 'null'
              description: Internal admin note
              x-visibility: admin
            manually_created:
              type: boolean
              description: Whether booking was created manually by admin
              x-visibility: admin
            is_sub_booking:
              type: boolean
              description: Whether this is a sub-booking
              x-visibility: admin
            external_uuid:
              type:
                - string
                - 'null'
              description: External UUID for integrations
              x-visibility: admin
            has_payment:
              type: boolean
              description: Whether a payment is associated
              x-visibility: admin
            is_editable:
              type: boolean
              description: Whether the booking can be edited
              x-visibility: admin
            status_reason:
              type:
                - string
                - 'null'
              description: Reason for status change
              x-visibility: admin
            updated_at:
              type: string
              description: Last update timestamp
              x-visibility: admin
        links:
          $ref: '#/components/schemas/links.v1'
        relationships:
          type: object
          properties:
            resource:
              type: object
              description: The booked resource
              properties:
                data:
                  type:
                    - object
                    - 'null'
                  properties:
                    type:
                      type: string
                    id:
                      type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            service:
              type: object
              description: The booked service
              properties:
                data:
                  type:
                    - object
                    - 'null'
                  properties:
                    type:
                      type: string
                    id:
                      type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            order:
              type: object
              description: The associated order
              properties:
                data:
                  type:
                    - object
                    - 'null'
                  properties:
                    type:
                      type: string
                    id:
                      type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            customer:
              type: object
              description: The booking customer
              properties:
                data:
                  type:
                    - object
                    - 'null'
                  properties:
                    type:
                      type: string
                    id:
                      type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            organization:
              type: object
              description: The organization
              properties:
                data:
                  type:
                    - object
                    - 'null'
                  properties:
                    type:
                      type: string
                    id:
                      type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            super_booking:
              type: object
              description: Parent booking if this is a sub-booking
              properties:
                data:
                  type:
                    - object
                    - 'null'
                  properties:
                    type:
                      type: string
                    id:
                      type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            sub_bookings:
              type: object
              description: Child sub-bookings
              properties:
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                      id:
                        type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            booking_add_ons:
              type: object
              description: Add-ons attached to this booking
              properties:
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                      id:
                        type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            cancellation_policy:
              type: object
              description: Applied cancellation policy
              properties:
                data:
                  type:
                    - object
                    - 'null'
                  properties:
                    type:
                      type: string
                    id:
                      type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            custom_entries:
              type: object
              description: Custom field entries
              properties:
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                      id:
                        type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            model_identifiers:
              type: object
              description: QR/barcode identifiers
              properties:
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                      id:
                        type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            activities:
              type: object
              description: Change log activities
              properties:
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                      id:
                        type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            test_results:
              type: object
              description: Associated test results
              properties:
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                      id:
                        type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            external_calendar:
              type: object
              description: Synced external calendar
              properties:
                data:
                  type:
                    - object
                    - 'null'
                  properties:
                    type:
                      type: string
                    id:
                      type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            host:
              type: object
              description: Host user for this booking
              properties:
                data:
                  type:
                    - object
                    - 'null'
                  properties:
                    type:
                      type: string
                    id:
                      type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            attendees:
              type: object
              description: Attendee customer accounts
              properties:
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                      id:
                        type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            booking_participants:
              type: object
              description: Booking participants
              properties:
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                      id:
                        type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            files:
              type: object
              description: Attached files
              properties:
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                      id:
                        type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            access_control_grants:
              type: object
              description: Access control grants
              properties:
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                      id:
                        type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            sync_sources:
              type: object
              description: Integration sync sources
              properties:
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                      id:
                        type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            reminders:
              type: object
              description: Scheduled reminders
              properties:
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                      id:
                        type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            sequence:
              type: object
              description: Sequence parent booking
              properties:
                data:
                  type:
                    - object
                    - 'null'
                  properties:
                    type:
                      type: string
                    id:
                      type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            sequenced_bookings:
              type: object
              description: Sequenced bookings
              properties:
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                      id:
                        type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            series_bookings:
              type: object
              description: Other bookings in the series
              properties:
                data:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                      id:
                        type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            series_master:
              type: object
              description: Master booking of the series
              properties:
                data:
                  type:
                    - object
                    - 'null'
                  properties:
                    type:
                      type: string
                    id:
                      type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            booking_series:
              type: object
              description: Series configuration
              properties:
                data:
                  type:
                    - object
                    - 'null'
                  properties:
                    type:
                      type: string
                    id:
                      type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            delegated_by:
              type: object
              description: Customer account that delegated this booking
              properties:
                data:
                  type:
                    - object
                    - 'null'
                  properties:
                    type:
                      type: string
                    id:
                      type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            queue_ticket:
              type: object
              description: Associated queue ticket
              properties:
                data:
                  type:
                    - object
                    - 'null'
                  properties:
                    type:
                      type: string
                    id:
                      type: string
                links:
                  $ref: '#/components/schemas/links.v1'
    links.v1:
      $schema: https://json-schema.org/draft/2020-12/schema
      x-version: 1.1.0
      title: ResourceLinks
      x-tags:
        - Models
      type: object
      description: JSON:API self-link object
      properties:
        self:
          type: string
          format: uri
  securitySchemes:
    Bearer:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://auth.anny.co/oauth/authorize
          tokenUrl: https://auth.anny.co/oauth/token
          refreshUrl: https://auth.anny.co/oauth/token/refresh
          scopes: {}

````