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

# Invite People to the Workspace

> Email invitations to join your workspace, with the role each person gets. An accepted invitation adds a paid seat.



## OpenAPI

````yaml POST /organizations/invitations
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.


    ## Responses

    Every response is JSON, whatever `Accept` header the request sends.
  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
  - name: Routing Forms - Forms
    description: Read routing forms with their questions and their routes
  - name: Routing Forms - Submissions
    description: Read and delete the submissions that invitees send through a routing form
paths:
  /organizations/invitations:
    post:
      tags:
        - Workspaces & Teams
      summary: Invite people to the workspace
      description: >-
        Emails an invitation to join your workspace to each address. **An
        accepted invitation adds a paid seat** to the workspace's subscription.


        An address that already belongs to a member is skipped. An address with
        a pending invitation gets the role passed here, `user` when the request
        names none, and is not emailed again within an hour of its last
        invitation. The response lists the pending invitation of every address
        that has one.


        The workspace owner, admins and partners can invite, from a confirmed
        email address, while the plan is active and has seats left; pending
        invitations count against the seats. The role `partner` is limited to
        the workspace's partner allowance, and the role `owner` cannot be given
        by invitation.


        **Required scope:** `users:write`. This scope needs a paid plan.
      operationId: post-organizations-invitations
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - emails
              properties:
                emails:
                  type: array
                  minItems: 1
                  maxItems: 100
                  items:
                    type: string
                    format: email
                  description: The addresses to invite. They are stored in lowercase.
                role:
                  type: string
                  enum:
                    - admin
                    - user
                    - external
                    - partner
                  default: user
                  description: The workspace role each invited person gets.
            examples:
              Invite two people:
                value:
                  emails:
                    - lena.weber@horizondigital.de
                    - jonas.klein@horizondigital.de
                  role: user
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  status:
                    type: integer
                    example: 201
                  data:
                    type: object
                    properties:
                      invitations:
                        type: array
                        items:
                          $ref: '#/components/schemas/WorkspaceInvitation'
        '400':
          description: The workspace owner's plan does not include a workspace.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkspaceError'
        '401':
          $ref: '#/components/responses/401'
        '403':
          description: >-
            The token misses the scope or a paid plan, or a check refuses the
            invitation (role, unconfirmed email address, inactive plan, no seats
            left, hourly limit, partner allowance).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkspaceError'
              examples:
                Not allowed:
                  value:
                    success: false
                    message: >-
                      Only the owners and admins can invite new users to the
                      workspace.
                    status: 403
                No seats left:
                  value:
                    success: false
                    message: >-
                      The remaining number of seats for your workspace in the
                      current plan is 2. Please get in touch with us to increase
                      the limit.
                    status: 403
        '422':
          $ref: '#/components/responses/422'
      security:
        - bearer: []
components:
  schemas:
    WorkspaceInvitation:
      type: object
      description: >-
        A pending invitation to join the workspace. It disappears from the list
        once the person accepts it or it is revoked.
      properties:
        id:
          type: integer
          example: 4182
        email:
          type: string
          format: email
          example: lena.weber@horizondigital.de
        role:
          type: string
          enum:
            - admin
            - user
            - external
            - partner
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
          description: When the invitation email was last sent.
    WorkspaceError:
      type: object
      description: The error envelope of the team and invitation endpoints.
      properties:
        success:
          type: boolean
          example: false
        message:
          type: string
        status:
          type: integer
  responses:
    '401':
      description: Unauthorized
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                type: string
                example: Unauthenticated.
          examples:
            Unauthenticated:
              value:
                message: Unauthenticated.
    '422':
      description: Unprocessable Entity
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                type: string
                example: The given data was invalid.
              errors:
                type: object
                additionalProperties:
                  type: array
                  items:
                    type: string
                example:
                  field_name:
                    - The field_name field is required.
  securitySchemes:
    bearer:
      type: http
      scheme: bearer
      description: ''

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.