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

# Get Available Time Slots by Shared Link

> Resolve a Zeeg shared scheduling link to its available time slots — useful when booking on behalf of an invitee from a public link.



## OpenAPI

````yaml GET /availability-by-shared-link/{sharedLink}
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:
  /availability-by-shared-link/{sharedLink}:
    parameters:
      - schema:
          type: string
        name: sharedLink
        in: path
        required: true
        description: >-
          The shared scheduling link identifier (e.g. the token from a shared or
          collective scheduling link URL).
    get:
      tags:
        - Scheduling Pages
      summary: Get available time slots by shared link
      description: >-
        Returns available time slots for a scheduling page identified by a
        shared link, within a date range.


        This endpoint is used for shared or collective scheduling links where
        the event type is not directly accessible via an owner slug and event
        type slug combination.


        Please note that access to this endpoint requires an **active paid
        subscription**.


        This API requires either of the following scopes:

        - `admin:full`

        - `timetable`
      operationId: get-availability-by-shared-link
      parameters:
        - schema:
            type: string
            format: date
            example: '2026-04-01'
          in: query
          name: startDate
          required: true
          description: Start date in YYYY-MM-DD format.
        - schema:
            type: string
            format: date
            example: '2026-04-14'
          in: query
          name: endDate
          required: true
          description: End date in YYYY-MM-DD format.
        - schema:
            type: string
            example: Europe/Berlin
            default: UTC
          in: query
          name: timeZone
          required: true
          description: IANA time zone identifier.
        - schema:
            type: number
          in: query
          name: duration
          description: >-
            Meeting duration in minutes. Defaults to the event type's configured
            duration.
        - schema:
            type: boolean
          in: query
          name: withHostsCount
          description: Set to `1` to include available host count for each time slot.
        - schema:
            type: string
            format: email
          in: query
          name: hostEmail
          description: >-
            Email of the host to filter available slots for (useful for Round
            Robin events).
        - schema:
            type: string
          in: query
          name: hostSlug
          description: >-
            Slug of the host to filter available slots for (useful for Round
            Robin events).
        - schema:
            type: boolean
          in: query
          name: check_first_available
          description: When set to `1`, the response will include the first available date.
        - schema:
            type: integer
            minimum: 1
          in: query
          name: seats
          description: Number of seats to book (for group event types).
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  ownerSlug:
                    type: string
                  eventTypeSlug:
                    type: string
                  schedulingUrl:
                    type: string
                    format: uri
                  duration:
                    type: integer
                  firstAvailableDate:
                    type: string
                    format: date
                  lastAvailableDate:
                    type: string
                    format: date
                  timeZone:
                    type: string
                  timeZoneOffset:
                    type: string
                  isNotAvailable:
                    type: boolean
                  availability:
                    type: array
                    items:
                      type: object
                      properties:
                        date:
                          type: string
                          format: date
                        slots:
                          type: array
                          description: >-
                            Array of time strings or objects with `time` and
                            `availableHosts` when `withHostsCount=1`.
                          items:
                            oneOf:
                              - type: string
                              - type: object
                                properties:
                                  time:
                                    type: string
                                  availableHosts:
                                    type: integer
                  currentTime:
                    type: string
                    format: date-time
              examples:
                Available time slots via shared link:
                  value:
                    ownerSlug: shared
                    eventTypeSlug: 30min-discovery-call
                    schedulingUrl: https://zeeg.me/shared/30min-discovery-call
                    duration: 30
                    firstAvailableDate: '2026-04-01'
                    lastAvailableDate: '2026-04-14'
                    timeZone: Europe/Paris
                    timeZoneOffset: '+02:00'
                    isNotAvailable: false
                    availability:
                      - date: '2026-04-01'
                        slots:
                          - '09:00'
                          - '09:30'
                          - '10:00'
                          - '10:30'
                          - '14:00'
                          - '14:30'
                          - '15:00'
                      - date: '2026-04-02'
                        slots:
                          - '09:00'
                          - '09:30'
                          - '10:00'
                          - '11:00'
                          - '14:00'
                          - '15:00'
                      - date: '2026-04-03'
                        slots: []
                      - date: '2026-04-04'
                        slots: []
                      - date: '2026-04-05'
                        slots:
                          - '09:00'
                          - '10:00'
                          - '14:00'
                          - '14:30'
                    currentTime: '2026-03-20T12:00:00+00:00'
        '401':
          $ref: '#/components/responses/401'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  controle:
                    type: object
                    properties:
                      type:
                        type: string
                  message:
                    type: string
                  required_scopes:
                    type: array
                    items:
                      type: string
              examples:
                Premium scope error:
                  value:
                    controle:
                      type: error
                    message: Invalid scope(s) provided.
                    required_scopes:
                      - admin:full
                      - timetable
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
              examples:
                Event type not found:
                  value:
                    error: Entry for EventType not found
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                  errors:
                    type: object
              examples:
                Missing required fields:
                  value:
                    message: The start date field is required. (and 1 more error)
                    errors:
                      startDate:
                        - The start date field is required.
                      endDate:
                        - The end date field is required.
      security:
        - bearer: []
components:
  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: ''

````