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

# List Scheduling Pages

> Retrieve a paginated list of scheduling pages (event types) in your workspace, including title, slug, duration, and active status.



## OpenAPI

````yaml GET /event-types
openapi: 3.0.0
info:
  title: Zeeg Public API
  description: >-
    Zeeg public API documentation.


    ## Authentication

    All endpoints require a Bearer token. You can generate an API token from
    [your Zeeg dashboard](https://app.zeeg.me/account/settings/api-access).


    Each token is scoped to specific permissions (e.g. `events:read`,
    `webhooks:write`). Make sure your token has the required scopes for the
    endpoints you want to use.


    ## Recommended Headers

    We recommend including the `Accept: application/json` header in all API
    requests to ensure you receive JSON responses.
  version: 2.0.0
  x-logo:
    url: https://app.zeeg.me/img/logo-dark.2ca83593.svg
    backgroundColor: '#f7f7f9'
    altText: zeeg
  contact:
    name: Zeeg Support
    email: support@zeeg.me
    url: https://zeeg.me/en/contact
  license:
    name: Proprietary
    url: https://zeeg.me/en/legal/terms
  termsOfService: https://zeeg.me/en/legal/terms
servers:
  - url: https://api.zeeg.me/v2
    description: Production
security:
  - bearer: []
tags:
  - name: Scheduled Events
    description: Management of events scheduled via Zeeg
  - name: Scheduling Pages
    description: Scheduling pages information and management
  - name: Availability Schedule
    description: Read and change availability for users
  - name: Webhooks
    description: Webhooks management
  - name: Notes
    description: Notes for scheduled events
  - name: Workspaces & Teams
    description: Workspace users and team member management
  - name: AI Agent
    description: AI Agent integration endpoints
  - name: Payloads
    description: Webhook payload schemas
  - name: CRM - Objects
    description: >-
      Discover the schema of CRM objects (standard and custom) including all
      attribute definitions
  - name: CRM - Companies
    description: Create, read, update, and delete CRM company records
  - name: CRM - People
    description: Create, read, update, and delete CRM person records
paths:
  /event-types:
    parameters: []
    get:
      tags:
        - Scheduling Pages
      summary: List scheduling pages
      description: >-
        Returns a list of scheduling pages.


        - By default, returns the scheduling pages in which the current user is
        a host.

        - You can filter by a specific user using one of **userSlug**,
        **email**, or **publicId**. Only one of the three may be provided per
        request. These filters are usable only with an organization admin/owner
        token, and only for users in the same organization.
      operationId: get-api-event-types
      parameters:
        - schema:
            type: string
            example: lena-meier
          in: query
          name: userSlug
          description: >-
            Filter for scheduling pages of a specific user in your organization
            by slug. Only usable with an organization admin/owner token.
            Mutually exclusive with `email` and `publicId`.
        - schema:
            type: string
            format: email
            example: lena@acme.com
          in: query
          name: email
          description: >-
            Filter for scheduling pages of a specific user in your organization
            by email. Case-insensitive. Only usable with an organization
            admin/owner token. Mutually exclusive with `userSlug` and
            `publicId`.
        - schema:
            type: string
            example: aBc123
          in: query
          name: publicId
          description: >-
            Filter for scheduling pages of a specific user in your organization
            by their stable public identifier. Case-insensitive. Only usable
            with an organization admin/owner token. Mutually exclusive with
            `userSlug` and `email`.
        - schema:
            type: number
            default: 20
            minimum: 1
            maximum: 100
            example: 10
          in: query
          name: count
          description: Limit the number of returned results per page.
        - schema:
            type: number
            minimum: 1
          in: query
          name: page
          description: Page number for paginated results.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  collection:
                    type: array
                    items:
                      $ref: '#/components/schemas/SchedulingPage'
                  pagination:
                    type: object
                    required:
                      - total
                      - count
                      - totalPages
                      - currentPage
                    properties:
                      total:
                        type: integer
                        minimum: 0
                        description: Total number of records.
                      count:
                        type: integer
                        minimum: 0
                        default: 20
                        description: Number of records per page.
                      totalPages:
                        type: integer
                        minimum: 0
                        description: Total number of pages.
                      previousPage:
                        type: string
                        nullable: true
                        description: Link to previous page, or null.
                        example: /v2/event-types?page=1
                      currentPage:
                        type: integer
                        minimum: 1
                        description: Current page number.
                      nextPage:
                        type: string
                        nullable: true
                        description: Link to next page, or null.
                        example: /v2/event-types?page=3
              examples:
                List of scheduling pages:
                  value:
                    collection:
                      - uri: >-
                          https://api.zeeg.me/v2/event-types/80f46bf5-eb01-4c07-960e-a9a3e18aae5e
                        uuid: 80f46bf5-eb01-4c07-960e-a9a3e18aae5e
                        title: 30-Minute Discovery Call
                        type: ONE_ON_ONE
                        slug: 30min-discovery-call
                        schedulingUrl: https://zeeg.me/lena-meier/30min-discovery-call
                        isActive: true
                        duration: 30
                        eventDurations:
                          - minutes: 30
                            default: true
                        profile:
                          type: User
                          firstName: Lena
                          lastName: Meier
                          slug: lena-meier
                          url: https://zeeg.me/lena-meier
                          avatarUrl: null
                          email: lena.meier@horizondigital.de
                        description: >-
                          <p>Let's connect for a quick 30-minute discovery call
                          to explore how we can help your business grow.</p>
                        color: 2196f3
                        maxActiveInvitees: 1
                        inviteeNameFormat: FULL_NAME
                        inviteePhoneNumber: false
                        inviteeQuestions:
                          - id: 1
                            order: 1
                            question: What would you like to discuss?
                            isActive: true
                            isRequired: true
                            type: TEXT_INPUT
                            options: null
                        availabilityType: shared
                        schedule:
                          uri: https://api.zeeg.me/v2/schedules/Q1ZYo391da
                          uuid: Q1ZYo391da
                          title: Working hours
                      - uri: >-
                          https://api.zeeg.me/v2/event-types/c12e6d26-1051-4e24-9380-8cca56609b9c
                        uuid: c12e6d26-1051-4e24-9380-8cca56609b9c
                        title: Product Demo
                        type: ONE_ON_ONE
                        slug: product-demo
                        schedulingUrl: https://zeeg.me/lena-meier/product-demo
                        isActive: true
                        duration: 60
                        eventDurations:
                          - minutes: 60
                            default: true
                          - minutes: 45
                            default: false
                        profile:
                          type: User
                          firstName: Lena
                          lastName: Meier
                          slug: lena-meier
                          url: https://zeeg.me/lena-meier
                          avatarUrl: null
                          email: lena.meier@horizondigital.de
                        description: >-
                          <p>See our product in action with a comprehensive demo
                          tailored to your needs.</p>
                        color: 4caf50
                        maxActiveInvitees: 1
                        inviteeNameFormat: FULL_NAME
                        inviteePhoneNumber: true
                        inviteeQuestions:
                          - id: 2
                            order: 1
                            question: What is your company size?
                            isActive: true
                            isRequired: true
                            type: RADIO_INPUT
                            options:
                              - 1-10
                              - 11-50
                              - 51-200
                              - 200+
                          - id: 3
                            order: 2
                            question: >-
                              Please share anything that will help prepare for
                              our meeting.
                            isActive: true
                            isRequired: false
                            type: TEXT_INPUT
                            options: null
                        availabilityType: shared
                        schedule:
                          uri: https://api.zeeg.me/v2/schedules/Q1ZYo391da
                          uuid: Q1ZYo391da
                          title: Working hours
                      - uri: >-
                          https://api.zeeg.me/v2/event-types/3f8a1c2d-5b6e-4f7a-9c0d-1e2f3a4b5c6d
                        uuid: 3f8a1c2d-5b6e-4f7a-9c0d-1e2f3a4b5c6d
                        title: Kostenloses Erstgespräch
                        type: ROUND_ROBIN
                        slug: erstgespraech
                        schedulingUrl: https://zeeg.me/R/erstgespraech
                        isActive: true
                        duration: 45
                        eventDurations:
                          - minutes: 45
                            default: true
                        profile:
                          type: Organization
                          id: 1842
                          title: Horizon Digital GmbH
                          logoUrl: null
                        description: null
                        color: 2196f3
                        maxActiveInvitees: 1
                        inviteeNameFormat: FULL_NAME
                        inviteePhoneNumber: false
                        inviteeQuestions: []
                        availabilityType: per_host
                        schedule: null
                      - uri: >-
                          https://api.zeeg.me/v2/event-types/9b2d3c4e-5f6a-4b7c-8d9e-0a1b2c3d4e5f
                        uuid: 9b2d3c4e-5f6a-4b7c-8d9e-0a1b2c3d4e5f
                        title: Team Onboarding Session
                        type: COLLECTIVE
                        slug: team-onboarding
                        schedulingUrl: https://zeeg.me/C/team-onboarding
                        isActive: true
                        duration: 60
                        eventDurations:
                          - minutes: 60
                            default: true
                        profile:
                          type: Organization
                          id: 1842
                          title: Horizon Digital GmbH
                          logoUrl: null
                        description: null
                        color: 4caf50
                        maxActiveInvitees: 1
                        inviteeNameFormat: FULL_NAME
                        inviteePhoneNumber: false
                        inviteeQuestions: []
                        availabilityType: per_host
                        schedule: null
                    pagination:
                      total: 4
                      count: 4
                      totalPages: 1
                      previousPage: null
                      currentPage: 1
                      nextPage: null
        '401':
          $ref: '#/components/responses/401'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                  message:
                    type: string
                  data:
                    type: array
                    items: {}
                  status:
                    type: integer
              examples:
                Forbidden:
                  value:
                    success: false
                    message: You cannot access this resource.
                    data: []
                    status: 403
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                  errors:
                    type: object
                    additionalProperties:
                      type: array
                      items:
                        type: string
              examples:
                Conflicting user filters:
                  value:
                    message: Provide only one of userSlug, email, or publicId.
                    errors:
                      filter:
                        - Provide only one of userSlug, email, or publicId.
      security:
        - bearer: []
components:
  schemas:
    SchedulingPage:
      type: object
      required:
        - uri
        - uuid
        - title
        - type
        - slug
        - schedulingUrl
        - isActive
        - duration
        - profile
        - color
        - maxActiveInvitees
        - inviteeNameFormat
      properties:
        uri:
          type: string
          format: uri
        uuid:
          type: string
          format: uuid
        title:
          type: string
        type:
          type: string
        slug:
          type: string
        schedulingUrl:
          type: string
          format: uri
        isActive:
          type: boolean
        duration:
          type: integer
        eventDurations:
          type: array
          items:
            type: object
            properties:
              minutes:
                type: integer
              default:
                type: boolean
        profile:
          type: object
          nullable: true
          required:
            - type
          properties:
            type:
              type: string
            firstName:
              type: string
            lastName:
              type: string
              nullable: true
            slug:
              type: string
            url:
              type: string
              format: uri
            avatarUrl:
              type: string
              format: uri
              nullable: true
            email:
              type: string
              format: email
        description:
          type: string
          nullable: true
        color:
          type: string
        maxActiveInvitees:
          type: integer
        inviteeNameFormat:
          type: string
        inviteePhoneNumber:
          type: boolean
        inviteeQuestions:
          type: array
          nullable: true
          items:
            type: object
            required:
              - order
              - question
              - isActive
              - isRequired
              - type
            properties:
              id:
                type: integer
                description: >-
                  Numeric ID of the question, used when submitting answers via
                  the booking API.
              order:
                type: integer
              question:
                type: string
              isActive:
                type: boolean
              isRequired:
                type: boolean
              type:
                type: string
              options:
                type: array
                nullable: true
                items: {}
        availabilityType:
          type: string
          enum:
            - shared
            - per_host
          x-mint:
            post:
              - Alpha
          description: >-
            Where the availability schedule for this scheduling page lives.
            `shared` — one schedule is set on the page itself and applies to
            everyone; see `schedule`. `per_host` — each host has their own
            schedule for this page (COLLECTIVE / ROUND_ROBIN); the per-host
            schedules are returned on the single-page endpoint in
            `hosts[].schedule`.
        schedule:
          type: object
          nullable: true
          required:
            - uri
            - uuid
            - title
          x-mint:
            post:
              - Alpha
          description: >-
            Reference to the page-level availability schedule shared by all
            hosts. `null` when `availabilityType` is `per_host`. In list
            responses this is a reference only; the single-page endpoint inlines
            the full schedule (hours and overrides).
          properties:
            uri:
              type: string
              format: uri
              example: https://api.zeeg.me/v2/schedules/Q1ZYo391da
              description: API resource URI for this schedule
            uuid:
              type: string
              description: Schedule identifier
              example: Q1ZYo391da
            title:
              type: string
              description: Display name of the schedule
      description: A scheduling page (event type) as returned in list responses.
  responses:
    '401':
      description: Unauthorized
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                type: string
                example: Unauthenticated.
          examples:
            Unauthenticated:
              value:
                message: Unauthenticated.
  securitySchemes:
    bearer:
      type: http
      scheme: bearer
      description: ''

````