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

# List this app's installations

> Every organization that has installed the calling app, in every status — including `uninstalled`. Intended as the reconciliation source of truth: poll it (nightly is enough for most apps) and treat it as authoritative, using the `app.installed` / `app.uninstalled` webhooks for latency rather than correctness. Webhook delivery is at-least-once and can still be lost; this endpoint cannot be. Scoped to the app the API key belongs to; no X-Organization-Id header is required or accepted.



## OpenAPI

````yaml /openapi-v4.json get /marketplace/installations
openapi: 3.0.0
info:
  title: Max AI Public API
  description: API for third-party marketplace apps
  version: '4.0'
  contact: {}
servers:
  - url: https://api.maxcare.ai/v4
security: []
tags: []
paths:
  /marketplace/installations:
    get:
      tags:
        - Marketplace
      summary: List this app's installations
      description: >-
        Every organization that has installed the calling app, in every status —
        including `uninstalled`. Intended as the reconciliation source of truth:
        poll it (nightly is enough for most apps) and treat it as authoritative,
        using the `app.installed` / `app.uninstalled` webhooks for latency
        rather than correctness. Webhook delivery is at-least-once and can still
        be lost; this endpoint cannot be. Scoped to the app the API key belongs
        to; no X-Organization-Id header is required or accepted.
      operationId: MarketplacePublicController_listInstallations
      parameters: []
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListInstallationsSuccessResponseV3'
        '401':
          description: Invalid or missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiUnauthorizedResponse'
        '429':
          description: Rate limit exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicApiRateLimitResponse'
      security:
        - api-key: []
components:
  schemas:
    ListInstallationsSuccessResponseV3:
      type: object
      properties:
        code:
          type: string
          description: Response code
          example: success
        data:
          $ref: '#/components/schemas/ListInstallationsDataResponseV3'
      required:
        - code
        - data
    PublicApiUnauthorizedResponse:
      type: object
      properties:
        code:
          type: string
          description: Error code
          example: unauthorized
        message:
          type: string
          description: Human-readable error message
          example: Invalid or missing API key
        trace_id:
          type: string
          description: Trace ID for debugging
          example: 550e8400-e29b-41d4-a716-446655440000
      required:
        - code
        - message
        - trace_id
    PublicApiRateLimitResponse:
      type: object
      properties:
        code:
          type: string
          description: Error code
          example: rate_limit_exceeded
        message:
          type: string
          description: Human-readable error message
          example: Rate limit exceeded. Maximum 1000 requests per 60 seconds.
        trace_id:
          type: string
          description: Trace ID for debugging
          example: 550e8400-e29b-41d4-a716-446655440000
      required:
        - code
        - message
        - trace_id
    ListInstallationsDataResponseV3:
      type: object
      properties:
        installations:
          type: array
          items:
            $ref: '#/components/schemas/ExternalAppInstallationResponseV3'
      required:
        - installations
    ExternalAppInstallationResponseV3:
      type: object
      properties:
        installationId:
          type: string
          description: Installation ID
          example: b1c2d3e4-f5a6-4b7c-8d9e-0f1a2b3c4d5e
        organizationId:
          type: string
          description: Organization that installed the app
          example: org_a1b2c3d4e5f64a7b8c9d0e1f2a3b4c5d
        organizationName:
          type: string
          description: >-
            Organization display name. Null when the organization record is
            unavailable.
          nullable: true
          example: Dermatology & Cosmetic Center
        status:
          type: string
          description: >-
            Installation status. Only `active` installations can authenticate
            against the data API — a request carrying a key for an installation
            in any other status is rejected with 401.
          enum:
            - active
            - inactive
            - suspended
            - uninstalled
          example: active
        versionId:
          type: string
          description: App version the installation is pinned to
          nullable: true
          example: apv_e1f2a3b4c5d64e7f8a9b0c1d2e3f4a5b
        grantedPermissions:
          description: >-
            Optional scopes the organization granted, on top of the version's
            required set
          example:
            - read:phone_numbers
          type: array
          items:
            type: string
        settings:
          type: object
          description: The organization's answers to the version's settings schema
          example:
            reminderWindowDays: 30
        installedAt:
          type: string
          description: When the app was installed
          example: '2026-08-02T14:03:11.000Z'
        uninstalledAt:
          type: string
          description: >-
            When the app was uninstalled; null while the installation has never
            been uninstalled
          nullable: true
          example: null
      required:
        - installationId
        - organizationId
        - organizationName
        - status
        - versionId
        - grantedPermissions
        - settings
        - installedAt
        - uninstalledAt
  securitySchemes:
    api-key:
      scheme: bearer
      bearerFormat: JWT
      type: http
      description: Marketplace API key

````