> ## 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.

# Get available add-ons for a given service



## OpenAPI

````yaml /developers/openapi/customer.openapi.json get /api/v1/services/{service_slug}/add-ons
openapi: 3.1.0
info:
  title: customer-api
  version: '1.0'
  contact:
    name: anny GmbH
    url: anny.co
    email: support@anny.co
  description: >-
    The Customer API is the **public booking surface** for end-user facing
    applications. It covers everything a customer can see and do — searching
    availability, placing bookings, managing their account, and more.


    ---


    ## When to use the Customer API


    Use the Customer API when you are **building something your customers
    interact with directly**:


    - **Custom booking flow** — embed a fully branded booking experience inside
    your own app or website instead of redirecting to anny

    - **Headless checkout** — drive the cart, checkout, and payment steps
    entirely from your own frontend

    - **Custom confirmation pages** — retrieve booking and order details after
    checkout to render a tailored confirmation

    - **Opening hours and availability on public pages** — display live schedule
    data on your website with no authentication required

    - **White-label experiences** — build lobby screens, kiosks, or mobile apps
    on top of the Customer API


    Many endpoints work **without any authentication**. For a custom OAuth2
    client to authenticate your own users, contact
    [support@anny.co](mailto:support@anny.co) with your use case.


    ---


    ## Authentication — Optional Auth


    Most Customer API endpoints work without a token. Providing a customer
    bearer token unlocks personal data and additional actions:


    | Auth state | What's accessible |

    |---|---|

    | Anonymous | Availability, public resource/service info, booking lookup by
    number, checkout |

    | Customer token | Own bookings, account data, communities, passes, queue
    tickets |


    ```

    Authorization: Bearer {customer_access_token}

    ```


    To authenticate your own users, you need a custom OAuth2 client — contact
    [support@anny.co](mailto:support@anny.co). See the [Authentication
    guide](/developers/guides/authentication) for the full token flow.


    ---


    ## Customer API vs Admin API


    | Feature | Customer API | Admin API |

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

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

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

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

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


    → [Go to the Admin API](/developers/api-reference/admin)


    ---


    ## Resource Identifiers


    The Customer API uses **human-readable identifiers** that appear in booking
    URLs:


    | Entity | Identifier | Example |

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

    | Resources | Slug | `conference-room-berlin` |

    | Services | Slug | `hourly-desk-booking` |

    | Organizations | Slug | `acme-gmbh` |

    | Bookings | Booking number | `BB123456789` |

    | Orders | Order number | `BO123456789` |


    Use the Admin API if you need immutable internal IDs for storage in external
    systems.


    ---


    ## 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) | Customer token flow,
    OAuth2, anonymous access |

    | [Availability & Booking Search](/developers/guides/availability) | Search
    open slots, filter by service and resource |

    | [Customer Booking
    Lifecycle](/developers/guides/customer/booking-lifecycle) | View, modify,
    and cancel bookings |

    | [Order & Checkout Flow](/developers/guides/customer/checkout) | Cart,
    checkout steps, payment |

    | [Plans & Subscriptions](/developers/guides/customer/plans-subscriptions) |
    Membership plans and recurring billing |

    | [Communities & Access Control](/developers/guides/customer/communities) |
    Community membership and access gates |

    | [Waitlist](/developers/guides/customer/waitlist) | Join and manage
    waitlists |


    ---


    ## Base URLs


    | Environment | URL |

    |---|---|

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

    | Gov-Cloud | `https://b.anny.eu` |
  termsOfService: https://anny.co/terms-of-use
  x-logo:
    url: https://cdn.anny.co/cms/anny_logo_main_colour_blue_4865e76654.svg
    altText: anny logo
    href: https://anny.co
servers:
  - url: https://b.anny.co
    description: Production
  - url: https://b.anny.eu
    description: Gov-Cloud
security: []
tags:
  - name: Account Passes
  - name: Account Skills
  - name: Addresses
  - name: Availability
  - name: Booking Bundles
  - name: Booking Passes
  - name: Booking Quota Grants
  - name: Bookings
  - name: Communities
  - name: Community Accounts
  - name: Community Invites
  - name: Customer Accounts
  - name: Favorites
  - name: Orders
  - name: Organizations
  - name: Plan Subscriptions
  - name: Properties
  - name: Queues
  - name: Queue Tickets
  - name: Resources
  - name: Services
  - name: Waitlist
paths:
  /api/v1/services/{service_slug}/add-ons:
    parameters:
      - schema:
          type: string
        name: service_slug
        in: path
        required: true
    get:
      tags:
        - Services
      summary: Get available add-ons for a given service
      operationId: get-services-record-add-ons
      parameters:
        - schema:
            type: string
            enum:
              - name
          in: query
          name: sort
        - name: filter[search]
          in: query
          schema:
            type: string
        - name: filter[name]
          in: query
          schema:
            type: string
        - schema:
            type: string
          in: query
          name: filter[description]
        - schema:
            type: string
          in: query
          name: filter[customer_notice]
      responses:
        '200':
          description: OK
          content:
            application/vnd.api+json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/add-ons.v1'
              examples:
                default:
                  value:
                    data:
                      - type: add-ons
                        id: '239'
                        attributes:
                          name: Vegan Food
                          description: >-
                            <p>We will ensure all snacks offered will be
                            vegan.</p>
                          plain_description: We will ensure all snacks offered will be vegan.
                          customer_notice: 'Select # of vegan attendees'
                          lead_time: 0
                          is_third_party: false
                          currency: EUR
                          tax_rate: 19
                          price: 0
                        links:
                          self: https://b.anny.co/api/v1/add-ons/239
        '404':
          description: Not Found
components:
  schemas:
    add-ons.v1:
      $schema: https://json-schema.org/draft/2020-12/schema
      x-version: 1.1.0
      title: Add-On
      type: object
      description: >-
        An optional extra that can be added to a booking (e.g., equipment
        rental, catering).
      x-tags:
        - Models
        - Services
      properties:
        id:
          type: string
        type:
          type: string
          default: addons
        attributes:
          type: object
          properties:
            name:
              type: string
              description: Add-on name
            description:
              type:
                - string
                - 'null'
              description: Rich text description
            plain_description:
              type:
                - string
                - 'null'
              description: Plain text description
            customer_notice:
              type:
                - string
                - 'null'
              description: Notice shown to customers
            lead_time:
              type: integer
              description: Lead time in minutes
            is_third_party:
              type: boolean
              description: Whether provided by third party
            featured:
              type: boolean
              description: Whether featured in listing
            full_refund:
              type: boolean
              description: Whether fully refundable
            is_net_price:
              type: boolean
              description: Whether price is net
            currency:
              type: string
              description: ISO 4217 currency code
            tax_rate:
              type: number
              description: Tax rate
            price_type:
              type: string
              enum:
                - fixed
                - per_unit
                - staggered
              description: Pricing type
            price:
              type: number
              description: Base price
            staggered_pricing:
              type: array
              description: Staggered pricing tiers
            min_quantity:
              type: integer
              description: Minimum quantity
            max_quantity:
              type: integer
              description: Maximum quantity
            calculation_interval:
              type:
                - string
                - 'null'
              description: Calculation interval
            calculation_unit:
              type:
                - string
                - 'null'
              description: Calculation unit
        links:
          $ref: '#/components/schemas/links.v1'
        relationships:
          type: object
          properties:
            cover_image:
              type: object
              description: Cover image
              properties:
                data:
                  type:
                    - object
                    - 'null'
                  properties:
                    type:
                      type: string
                    id:
                      type: string
                links:
                  $ref: '#/components/schemas/links.v1'
            group:
              type: object
              description: Add-on group
              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

````