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

# Invite somebody by email

> Sends an invitation naming the apps it grants and their address. The grant is written immediately, so the app is reachable the moment they accept.

Apps must be ones this computer actually serves; anything else is refused rather than quietly dropped. Rate-limited on the same budget as sign-in links — a 429 here is a 429 upstream.



## OpenAPI

````yaml /api-reference/openapi.json post /people/invite
openapi: 3.1.0
info:
  title: Meradomo Public API
  version: 1.0.0
  description: >-
    Two surfaces: the local management API on 127.0.0.1:8765 (Publish) and the
    OAuth endpoints on account.meradomo.com (Connect). No SDK — these HTTP
    endpoints are the integration surface.
  license:
    name: MIT
servers:
  - url: http://127.0.0.1:8765
    description: Local management API (Publish)
  - url: https://account.meradomo.com
    description: Control plane (Connect / OAuth)
security: []
paths:
  /people/invite:
    post:
      tags:
        - People
      summary: Invite somebody by email
      description: >-
        Sends an invitation naming the apps it grants and their address. The
        grant is written immediately, so the app is reachable the moment they
        accept.


        Apps must be ones this computer actually serves; anything else is
        refused rather than quietly dropped. Rate-limited on the same budget as
        sign-in links — a 429 here is a 429 upstream.
      operationId: peopleInvite
      parameters:
        - name: x-engine-capability
          in: header
          required: true
          schema:
            type: string
          description: >-
            The capability returned by POST /engine/register. Minted per engine
            run; one from a previous run is worthless.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - email
              properties:
                email:
                  type: string
                  format: email
                apps:
                  type: array
                  items:
                    type: string
                  description: >-
                    App labels to grant. Omit to invite without granting
                    anything.
      responses:
        '201':
          description: Invited
          content:
            application/json:
              schema:
                type: object
                properties:
                  email:
                    type: string
                  status:
                    type: string
                    example: pending
                  url:
                    type: string
                    description: Where the invitation points, when it named an app.
        '400':
          description: >-
            Refused, in words meant to be shown to a person — e.g. `that does
            not look like an email address`, or `you have not shared an app
            called Photos`. Show the message.
        '403':
          description: No (or wrong) capability. Register first.
        '429':
          description: Too many invitations. Same budget as sign-in links.
        '503':
          description: >-
            Not connected to an account yet, or the service could not be
            reached.
      servers:
        - url: http://127.0.0.1:8765

````