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

# List Connect Center offerings

> List Checkfu-qualified IntegrationOfferings already joined to only the named Principal's Connections.



## OpenAPI

````yaml /openapi.json get /v1/principals/{id}/integration-offerings
openapi: 3.1.0
info:
  title: Checkfu API
  version: '2026-08-31'
  description: >-
    Authentication is declared per operation: API-key, runtime, or connector
    bearer; Automation signature; or credential-free pairing redemption. Every
    general Checkfu REST request requires the dated `Checkfu-Version` header
    (one of: 2026-08-31); the three MCP JSON-RPC transports use
    `MCP-Protocol-Version`, A2A uses `A2A-Version`, and the provider OAuth
    callback carries neither Checkfu header. API keys resolve one Workspace
    without a request selector; authenticated responses identify it with
    `Checkfu-Workspace-Id`.
servers:
  - url: https://api.checkfu.com
security:
  - bearerAuth: []
tags:
  - name: organizations
  - name: sourceRepositories
  - name: tenants
  - name: workspaces
  - name: principals
  - name: principalGroups
  - name: principalAccessCredentials
  - name: apiKeys
  - name: agents
  - name: harnessRuntime
  - name: permissionAssignments
  - name: actionPolicies
  - name: files
  - name: memoryStores
  - name: modelCredentials
  - name: modelRoutingProfiles
  - name: toolSources
  - name: skills
  - name: skillSources
  - name: agentBlueprints
  - name: skillProposals
  - name: instructionProposals
  - name: catalog
  - name: managedTools
  - name: concepts
  - name: support
  - name: connections
  - name: connectionVaults
  - name: connectionAssignments
  - name: connectedRuntimes
  - name: fileTrees
  - name: collaboration
  - name: automationGraphs
  - name: automations
  - name: actionApprovals
  - name: standingApprovals
  - name: workloadReviewPolicies
  - name: usage
  - name: models
  - name: outcomes
  - name: budgets
  - name: billing
  - name: sessions
  - name: audit
  - name: sessionExports
  - name: runs
  - name: runnerPools
  - name: transcripts
  - name: sessionWatches
  - name: sessionCapsules
  - name: sessionTrajectories
  - name: webhookEndpoints
  - name: integrationGateway
  - name: workEnvironments
  - name: computers
  - name: computerScreens
  - name: computerBrowserObservations
  - name: computerBrowserActions
  - name: environments
  - name: computerHeadlessOperations
  - name: vaults
  - name: apiMcp
  - name: a2a
paths:
  /v1/principals/{id}/integration-offerings:
    get:
      tags:
        - integrationGateway
      summary: List Connect Center offerings
      description: >-
        List Checkfu-qualified IntegrationOfferings already joined to only the
        named Principal's Connections. Start the supplier-neutral workflow here:
        choose one available offering and opaque placement, begin a
        ConnectionSession, observe its durable state, then read the resulting
        Connection and tools before planning access. Every row carries stable
        offering identity, supplier-neutral provenance, review tier, immutable
        package binding, exact scope and egress defaults, tool count, the
        canonical API/MCP/CLI/A2A transport set bound during qualification,
        qualification expiry, connection flow, and opaque placement choices.
        Supplier tenant ids, adapter names, placement handles, local targets,
        executables, credentials, and account handles are never returned.


        Checkfu support posture: alpha; hosted. Required evidence journey:
        connection-lifecycle. Deployment-specific readiness and the latest
        proven release are available from GET /v1/support/capabilities.
      operationId: integrationGateway.listOfferings
      parameters:
        - name: id
          in: path
          schema:
            $ref: '#/components/schemas/PrincipalId'
          required: true
        - name: checkfu-version
          in: header
          schema:
            type: string
            enum:
              - '2026-08-31'
          required: true
        - name: limit
          in: query
          schema:
            type: integer
            minimum: 1
          required: false
        - name: page
          in: query
          schema:
            type: string
            pattern: ^c1_[0-9a-z]+$
          required: false
      responses:
        '200':
          description: ConnectCenterOfferingPage
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectCenterOfferingPage'
          headers:
            checkfu-workspace-id:
              description: The Workspace resolved from the authenticated bearer credential.
              required: true
              schema:
                $ref: '#/components/schemas/WorkspaceId'
        '400':
          description: Typed Checkfu wire error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationMalformedError'
        '401':
          description: Typed Checkfu wire error
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                properties:
                  error:
                    type: object
                    required:
                      - type
                      - message
                      - more
                    properties:
                      type:
                        type: string
                        enum:
                          - auth.invalid_key
                      message:
                        type: string
                      more:
                        type: string
                        enum:
                          - >-
                            https://docs.checkfu.com/reference/errors#auth-invalid-key
                        description: >-
                          Stable public documentation and remedy for this error
                          type.
                    additionalProperties: false
                additionalProperties: false
        '403':
          description: >-
            The organization, tenant, or workspace backing this key is
            administratively disabled. | Deployment governance or retention
            policy denied the request.
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    required:
                      - error
                    properties:
                      error:
                        type: object
                        properties:
                          type:
                            type: string
                            enum:
                              - auth.disabled_tenancy
                          message:
                            type: string
                          more:
                            type: string
                            enum:
                              - >-
                                https://docs.checkfu.com/reference/errors#auth-disabled-tenancy
                            description: >-
                              Stable public documentation and remedy for this
                              error type.
                        required:
                          - type
                          - message
                          - more
                        additionalProperties: false
                    additionalProperties: false
                  - $ref: '#/components/schemas/PolicyDeniedError'
        '404':
          description: >-
            The requested resource does not exist in the resolved deployment
            boundary.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationNotFoundError'
        '409':
          description: The request conflicts with the resource's current state.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationConflictError'
        '429':
          description: Typed Checkfu wire error
          headers:
            retry-after:
              description: >-
                Delay in seconds for rate limits or deployment quotas with a
                known release or UTC reset boundary
              required: false
              schema:
                type: integer
                minimum: 1
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                properties:
                  error:
                    type: object
                    required:
                      - type
                      - message
                      - more
                    properties:
                      type:
                        type: string
                        enum:
                          - budget.exceeded
                      message:
                        type: string
                      more:
                        type: string
                        enum:
                          - >-
                            https://docs.checkfu.com/reference/errors#budget-exceeded
                        description: >-
                          Stable public documentation and remedy for this error
                          type.
                    additionalProperties: false
                additionalProperties: false
        '500':
          description: >-
            An unexpected internal failure occurred; the message contains an
            opaque incident reference.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RuntimeInternalError'
      security:
        - bearerAuth: []
components:
  schemas:
    PrincipalId:
      type: string
      pattern: ^prin_[0-9a-f]{32}$
    ConnectCenterOfferingPage:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/ConnectCenterOffering'
        next_page:
          anyOf:
            - type: string
            - type: 'null'
      required:
        - data
        - next_page
      additionalProperties: false
    WorkspaceId:
      type: string
      pattern: ^wrkspc_[0-9a-f]{32}$
    ValidationMalformedError:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - validation.malformed
            message:
              type: string
            more:
              type: string
              enum:
                - https://docs.checkfu.com/reference/errors#validation-malformed
              description: Stable public documentation and remedy for this error type.
          required:
            - type
            - message
            - more
          additionalProperties: false
      required:
        - error
      additionalProperties: false
      description: >-
        The request could not be decoded or violated a declared input
        constraint.
    PolicyDeniedError:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - policy.denied
            message:
              type: string
            more:
              type: string
              enum:
                - https://docs.checkfu.com/reference/errors#policy-denied
              description: Stable public documentation and remedy for this error type.
          required:
            - type
            - message
            - more
          additionalProperties: false
      required:
        - error
      additionalProperties: false
      description: Deployment governance or retention policy denied the request.
    ValidationNotFoundError:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - validation.not_found
            message:
              type: string
            more:
              type: string
              enum:
                - https://docs.checkfu.com/reference/errors#validation-not-found
              description: Stable public documentation and remedy for this error type.
          required:
            - type
            - message
            - more
          additionalProperties: false
      required:
        - error
      additionalProperties: false
      description: >-
        The requested resource does not exist in the resolved deployment
        boundary.
    ValidationConflictError:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - validation.conflict
            message:
              type: string
            more:
              type: string
              enum:
                - https://docs.checkfu.com/reference/errors#validation-conflict
              description: Stable public documentation and remedy for this error type.
          required:
            - type
            - message
            - more
          additionalProperties: false
      required:
        - error
      additionalProperties: false
      description: The request conflicts with the resource's current state.
    RuntimeInternalError:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - runtime.internal
            message:
              type: string
            more:
              type: string
              enum:
                - https://docs.checkfu.com/reference/errors#runtime-internal
              description: Stable public documentation and remedy for this error type.
          required:
            - type
            - message
            - more
          additionalProperties: false
      required:
        - error
      additionalProperties: false
      description: >-
        An unexpected internal failure occurred; the message contains an opaque
        incident reference.
    ConnectCenterOffering:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/IntegrationOfferingId'
        provider:
          type: string
          pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
        name:
          type: string
          allOf:
            - minLength: 1
            - maxLength: 8192
        description:
          type: string
          allOf:
            - maxLength: 16384
        provenance:
          type: string
          enum:
            - protocol
            - managed
            - organization
        review:
          $ref: '#/components/schemas/Union_146'
        connection_flow:
          $ref: '#/components/schemas/Union_385'
        tool_transports:
          $ref: '#/components/schemas/IntegrationToolTransports'
        provider_package:
          $ref: '#/components/schemas/ConnectCenterProviderPackageBinding'
        minimum_scopes:
          $ref: '#/components/schemas/Arrays_30'
        egress_rules:
          type: array
          items:
            $ref: '#/components/schemas/EgressRule'
          allOf:
            - minItems: 1
            - maxItems: 32
        tool_count:
          type: integer
          exclusiveMinimum: 0
        qualification_expires_at:
          $ref: '#/components/schemas/IntegrationGatewayInstant'
        availability:
          anyOf:
            - type: object
              properties:
                status:
                  type: string
                  enum:
                    - available
              required:
                - status
              additionalProperties: false
            - type: object
              properties:
                status:
                  type: string
                  enum:
                    - unavailable
                reason:
                  type: string
                  enum:
                    - adapter_unavailable
                    - package_unqualified
                    - runtime_unqualified
                    - qualification_expired
                    - operator_disabled
              required:
                - status
                - reason
              additionalProperties: false
        placements:
          $ref: '#/components/schemas/ConnectCenterPlacementIdentity'
        connections:
          type: array
          items:
            $ref: '#/components/schemas/ConnectionSummary'
          allOf:
            - maxItems: 1024
      required:
        - id
        - provider
        - name
        - description
        - provenance
        - review
        - connection_flow
        - tool_transports
        - provider_package
        - minimum_scopes
        - egress_rules
        - tool_count
        - qualification_expires_at
        - availability
        - placements
        - connections
      additionalProperties: false
    IntegrationOfferingId:
      type: string
      pattern: ^ioff_[0-9a-f]{32}$
    Union_146:
      type: string
      enum:
        - curated
        - structural
        - unreviewed
    Union_385:
      anyOf:
        - type: object
          properties:
            kind:
              type: string
              enum:
                - oauth
          required:
            - kind
          additionalProperties: false
        - type: object
          properties:
            kind:
              type: string
              enum:
                - credential_entry
            credential_kind:
              type: string
              enum:
                - api_key
                - basic
                - service_account
          required:
            - kind
            - credential_kind
          additionalProperties: false
        - type: object
          properties:
            kind:
              type: string
              enum:
                - none
          required:
            - kind
          additionalProperties: false
    IntegrationToolTransports:
      type: array
      items:
        $ref: '#/components/schemas/IntegrationToolTransport'
      allOf:
        - minItems: 1
        - maxItems: 4
    ConnectCenterProviderPackageBinding:
      type: object
      properties:
        name:
          type: string
          pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
        version:
          type: integer
          exclusiveMinimum: 0
        digest:
          type: string
          pattern: ^sha256:[0-9a-f]{64}$
        review:
          $ref: '#/components/schemas/Union_146'
      required:
        - name
        - version
        - digest
        - review
      additionalProperties: false
    Arrays_30:
      type: array
      items:
        $ref: '#/components/schemas/ConnectionScope'
      allOf:
        - maxItems: 256
        - minItems: 1
    EgressRule:
      type: object
      properties:
        scheme:
          type: string
          enum:
            - https
        host:
          $ref: '#/components/schemas/PublicHostname'
        port:
          type: integer
          allOf:
            - minimum: 1
              maximum: 65535
        path_prefix:
          $ref: '#/components/schemas/HttpPath'
        methods:
          type: array
          items:
            $ref: '#/components/schemas/HttpMethod'
          allOf:
            - minItems: 1
            - maxItems: 7
        allowed_headers:
          $ref: '#/components/schemas/AllowedEgressHeaders'
      required:
        - scheme
        - host
        - port
        - path_prefix
        - methods
      additionalProperties: false
      description: One reviewed HTTPS destination and bounded method/header authority.
    IntegrationGatewayInstant:
      type: string
      allOf:
        - maxLength: 24
        - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z$
          x-checkfu-current-timestamp: true
          description: >-
            A canonical UTC ISO-8601 integration-gateway instant with
            millisecond precision.
    ConnectCenterPlacementIdentity:
      type: array
      items:
        type: object
        properties:
          id:
            type: string
            pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
          kind:
            type: string
            enum:
              - hosted
              - dedicated_cell
          label:
            type: string
            allOf:
              - minLength: 1
              - maxLength: 8192
          availability:
            anyOf:
              - type: object
                properties:
                  status:
                    type: string
                    enum:
                      - available
                required:
                  - status
                additionalProperties: false
              - type: object
                properties:
                  status:
                    type: string
                    enum:
                      - unavailable
                  reason:
                    type: string
                    enum:
                      - not_configured
                      - temporarily_unavailable
                required:
                  - status
                  - reason
                additionalProperties: false
        required:
          - id
          - kind
          - label
          - availability
        additionalProperties: false
      allOf:
        - minItems: 1
        - maxItems: 16
    ConnectionSummary:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/ConnectionId'
        workspace_id:
          $ref: '#/components/schemas/WorkspaceId'
        owner_principal_id:
          $ref: '#/components/schemas/PrincipalId'
        provider:
          type: string
          pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
        label:
          type: string
          allOf:
            - minLength: 1
            - maxLength: 8192
        scope_count:
          type: integer
          allOf:
            - minimum: 0
              maximum: 256
        egress_rule_count:
          type: integer
          allOf:
            - minimum: 0
              maximum: 32
        custody_adapter:
          type: string
          pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
        lifecycle:
          $ref: '#/components/schemas/Union_174'
        health:
          $ref: '#/components/schemas/Union_175'
        drift:
          $ref: '#/components/schemas/Union_176'
        provider_package:
          anyOf:
            - type: object
              properties:
                name:
                  type: string
                  pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
                version:
                  type: integer
                  exclusiveMinimum: 0
                digest:
                  type: string
                  pattern: ^sha256:[0-9a-f]{64}$
                review:
                  $ref: '#/components/schemas/Union_146'
              required:
                - name
                - version
                - digest
                - review
              additionalProperties: false
            - type: 'null'
        custody_revoke_pending:
          type: boolean
        last_health_check_at:
          anyOf:
            - type: string
            - type: 'null'
        credential_set:
          $ref: '#/components/schemas/ConnectionCredentialSet'
        version:
          type: integer
          exclusiveMinimum: 0
        created_at:
          type: string
        updated_at:
          type: string
      required:
        - id
        - workspace_id
        - owner_principal_id
        - provider
        - label
        - scope_count
        - egress_rule_count
        - custody_adapter
        - lifecycle
        - health
        - drift
        - custody_revoke_pending
        - last_health_check_at
        - version
        - created_at
        - updated_at
      additionalProperties: false
      description: A bounded Connection list projection without scopes or egress rules.
    IntegrationToolTransport:
      type: string
      enum:
        - api
        - mcp
        - cli
        - a2a
      description: >-
        The reviewed protocol shape through which an IntegrationOffering serves
        tools.
    ConnectionScope:
      type: string
      allOf:
        - minLength: 1
        - maxLength: 512
        - pattern: ^[^\s,]+$
    PublicHostname:
      type: string
      allOf:
        - minLength: 1
        - maxLength: 253
        - pattern: ^[a-z0-9](?:[a-z0-9.-]*[a-z0-9])?$
    HttpPath:
      type: string
      allOf:
        - minLength: 1
        - maxLength: 8192
    HttpMethod:
      type: string
      enum:
        - GET
        - POST
        - PUT
        - PATCH
        - DELETE
        - HEAD
        - OPTIONS
    AllowedEgressHeaders:
      type: array
      items:
        type: string
        allOf:
          - minLength: 1
          - maxLength: 128
          - pattern: ^[!#$%&'*+.^_`|~0-9A-Za-z-]+$
      allOf:
        - maxItems: 128
    ConnectionId:
      type: string
      pattern: ^conn_[0-9a-f]{32}$
    Union_174:
      type: string
      enum:
        - pending
        - active
        - disabled
        - revoked
    Union_175:
      type: string
      enum:
        - pending
        - healthy
        - reauthorization_required
        - unavailable
    Union_176:
      type: string
      enum:
        - none
        - custody_configuration
        - capability_refresh
    ConnectionCredentialSet:
      type: object
      properties:
        slots:
          type: array
          items:
            type: object
            properties:
              kind:
                $ref: '#/components/schemas/CredentialKind'
              source:
                $ref: '#/components/schemas/WebhookSecretSource'
              held:
                type: boolean
            required:
              - kind
              - held
            additionalProperties: false
          allOf:
            - maxItems: 6
        purposes:
          type: array
          items:
            $ref: '#/components/schemas/PurposeReadiness'
          allOf:
            - maxItems: 4
      required:
        - slots
        - purposes
      additionalProperties: false
      description: >-
        The Connection's credential slots, which are held, and per-purpose
        readiness.
    CredentialKind:
      type: string
      enum:
        - oauth
        - api_key
        - basic
        - service_account
        - mtls
        - webhook_secret
    WebhookSecretSource:
      type: string
      enum:
        - checkfu_minted
        - provider_issued
    PurposeReadiness:
      type: object
      properties:
        purpose:
          $ref: '#/components/schemas/CredentialPurpose'
        ready:
          type: boolean
        missing:
          type: array
          items:
            $ref: '#/components/schemas/CredentialKind'
          allOf:
            - maxItems: 6
      required:
        - purpose
        - ready
        - missing
      additionalProperties: false
    CredentialPurpose:
      type: string
      enum:
        - tools_mcp
        - tools_rest
        - webhook_register
        - webhook_verify
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````

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