> ## Documentation Index
> Fetch the complete documentation index at: https://nango-wari-integration-config-credentials-api.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Get an integration

> Returns a specific integration

<Info>
  Requires an API key with one of: `environment:integrations:read` or `environment:integrations:read_credentials`. [Learn more about API key scopes](/reference/backend/http-api/api-keys#scopes).
</Info>

<ResponseExample>
  ```json Basic response theme={null}
  {
    "data": {
      "unique_key": "slack-nango-community",
      "display_name": "Slack",
      "provider": "slack",
      "logo": "http://localhost:3003/images/template-logos/github.svg",
      "forward_webhooks": true,
      "created_at": "2023-10-16T08:45:26.241Z",
      "updated_at": "2023-10-16T08:45:26.241Z"
    }
  }
  ```

  ```json With credentials (OAuth2/OAuth1/TBA) theme={null}
  {
    "data": {
      "unique_key": "github-nango",
      "display_name": "GitHub",
      "provider": "github",
      "logo": "http://localhost:3003/images/template-logos/github.svg",
      "forward_webhooks": false,
      "created_at": "2023-10-16T08:45:26.241Z",
      "updated_at": "2023-10-16T08:45:26.241Z",
      "credentials": {
        "type": "OAUTH2",
        "client_id": "abc123",
        "client_secret": "secret456",
        "scopes": "repo,user",
        "webhook_secret": null
      }
    }
  }
  ```

  ```json With credentials (GitHub App / CUSTOM) theme={null}
  {
    "data": {
      "unique_key": "github-app-nango",
      "display_name": "GitHub App",
      "provider": "github-app",
      "logo": "http://localhost:3003/images/template-logos/github.svg",
      "forward_webhooks": false,
      "created_at": "2023-10-16T08:45:26.241Z",
      "updated_at": "2023-10-16T08:45:26.241Z",
      "credentials": {
        "type": "CUSTOM",
        "client_id": "abc123",
        "client_secret": "secret456",
        "app_id": "123456",
        "app_link": "https://github.com/apps/my-app",
        "private_key": "-----BEGIN RSA PRIVATE KEY-----\n...\n-----END RSA PRIVATE KEY-----"
      }
    }
  }
  ```

  ```json With credentials (MCP_OAUTH2_GENERIC) theme={null}
  {
    "data": {
      "unique_key": "mcp-generic",
      "display_name": "MCP Server OAuth2 (Generic)",
      "provider": "mcp-generic",
      "logo": "http://localhost:3003/images/template-logos/mcp-generic.svg",
      "forward_webhooks": true,
      "created_at": "2023-10-16T08:45:26.241Z",
      "updated_at": "2023-10-16T08:45:26.241Z",
      "credentials": {
        "type": "MCP_OAUTH2_GENERIC",
        "client_name": "Acme Inc",
        "client_uri": "https://acme.com",
        "client_logo_uri": "https://acme.com/logo.png"
      }
    }
  }
  ```

  ```json With credentials (integration_config-based, e.g. aws-sigv4) theme={null}
  {
    "data": {
      "unique_key": "my-aws-integration",
      "display_name": "AWS SigV4 Proxy",
      "provider": "aws-sigv4",
      "logo": "http://localhost:3003/images/template-logos/aws-sigv4.svg",
      "forward_webhooks": true,
      "created_at": "2023-10-16T08:45:26.241Z",
      "updated_at": "2023-10-16T08:45:26.241Z",
      "credentials": {
        "type": "INTEGRATION_CONFIG",
        "auth_mode": "AWS_SIGV4",
        "integration_config": {
          "service": "s3",
          "stsMode": "builtin",
          "awsAccessKeyId": "AKIAIOSFODNN7EXAMPLE",
          "awsSecretAccessKey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
        }
      }
    }
  }
  ```
</ResponseExample>

<Info>
  For providers that declare an `integration_config` schema instead of fixed credentials fields (e.g. `aws-sigv4`, `epic`, `private-api-generic`), `credentials` returns `type: "INTEGRATION_CONFIG"` with the provider's actual `auth_mode` and its `integration_config` values -- only the fields that provider's schema declares, nothing else from the integration's internal storage.
</Info>


## OpenAPI

````yaml GET /integrations/{uniqueKey}
openapi: 3.1.0
info:
  title: Nango API
  description: Nango API specs used to authorize & sync data with external APIs.
  version: 1.0.0
servers:
  - url: https://api.nango.dev
    description: Production server
  - url: http://localhost:3003
    description: Local server
security:
  - bearerAuth: []
externalDocs:
  url: https://nango.dev/docs/reference/backend/http-api/authentication
paths:
  /integrations/{uniqueKey}:
    get:
      summary: Get an integration
      description: Returns a specific integration
      parameters:
        - name: uniqueKey
          in: path
          required: true
          schema:
            type: string
          description: The integration ID (unique_key) that you created in Nango.
        - name: include
          in: query
          schema:
            type: array
            items:
              type: string
              enum:
                - webhook
                - credentials
          description: Include additional sensitive data
      responses:
        '200':
          description: Successfully returned an integration
          content:
            application/json:
              schema:
                type: object
                required:
                  - data
                properties:
                  data:
                    $ref: '#/components/schemas/IntegrationFull'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  schemas:
    IntegrationFull:
      allOf:
        - $ref: '#/components/schemas/Integration'
        - type: object
          additionalProperties: false
          properties:
            webhook_url:
              anyOf:
                - type: string
                - type: 'null'
              description: Configure your integration webhooks to point to this URL
            credentials:
              anyOf:
                - $ref: '#/components/schemas/IntegrationCredentialsWithConfig'
                - type: 'null'
    Integration:
      type: object
      additionalProperties: false
      required:
        - unique_key
        - display_name
        - provider
        - created_at
        - updated_at
      properties:
        unique_key:
          type: string
          description: The integration ID that you created in Nango.
        display_name:
          type: string
          description: The provider display name.
        provider:
          type: string
          description: The Nango API Configuration.
        logo:
          type: string
          description: Absolute path to the logo of this integration (svg)
        created_at:
          type: string
          format: date-time
          description: When it was created
        updated_at:
          type: string
          format: date-time
          description: Last time it was updated
        forward_webhooks:
          type: boolean
          description: >-
            Whether webhooks received from this integration's provider are
            forwarded to your backend.
    IntegrationCredentialsWithConfig:
      description: >
        Same as IntegrationCredentials, plus the shape returned for providers
        that declare an `integration_config` schema (e.g. aws-sigv4, epic,
        private-api-generic) instead of fixed credentials fields. This variant
        is response-only -- it can't be submitted on create or update.
      oneOf:
        - $ref: '#/components/schemas/IntegrationCredentials'
        - type: object
          required:
            - type
            - auth_mode
            - integration_config
          properties:
            type:
              type: string
              enum:
                - INTEGRATION_CONFIG
            auth_mode:
              type: string
              description: >-
                The provider's actual auth mode (e.g. AWS_SIGV4, TWO_STEP,
                API_KEY).
            integration_config:
              type: object
              additionalProperties:
                type: string
              description: >-
                The provider's `integration_config` values, keyed by the fields
                it declares.
    StdError:
      type: object
      additionalProperties: false
      properties:
        error:
          type: object
          additionalProperties: false
          required:
            - code
          properties:
            code:
              type: string
            message:
              type: string
            errors:
              type: array
              items:
                type: object
    IntegrationCredentials:
      description: Integration credentials schema for different authentication types.
      oneOf:
        - type: object
          required:
            - type
            - client_id
            - client_secret
          properties:
            type:
              type: string
              enum:
                - OAUTH1
                - OAUTH2
                - TBA
            client_id:
              type: string
              minLength: 1
              maxLength: 255
            client_secret:
              type: string
              minLength: 1
            scopes:
              anyOf:
                - type: string
                  pattern: ^[0-9a-zA-Z:/_.-]+(,[0-9a-zA-Z:/_.-]+)*$
                - type: 'null'
            webhook_secret:
              anyOf:
                - type: string
                  maxLength: 255
                - type: 'null'
        - type: object
          required:
            - type
            - app_id
            - app_link
            - private_key
          properties:
            type:
              type: string
              enum:
                - APP
            app_id:
              type: string
              minLength: 1
              maxLength: 255
            app_link:
              type: string
              minLength: 1
            private_key:
              type: string
              pattern: ^-----BEGIN RSA PRIVATE KEY----.*-----END RSA PRIVATE KEY-----$
        - type: object
          required:
            - type
            - client_id
            - client_secret
            - app_id
            - app_link
            - private_key
          properties:
            type:
              type: string
              enum:
                - CUSTOM
            client_id:
              type: string
              minLength: 1
              maxLength: 255
            client_secret:
              type: string
              minLength: 1
            app_id:
              type: string
              minLength: 1
              maxLength: 255
            app_link:
              type: string
              minLength: 1
            private_key:
              type: string
              pattern: ^-----BEGIN RSA PRIVATE KEY----.*-----END RSA PRIVATE KEY-----$
        - type: object
          required:
            - type
          properties:
            type:
              type: string
              enum:
                - MCP_OAUTH2_GENERIC
            client_name:
              type: string
              minLength: 1
              maxLength: 255
            client_uri:
              type: string
              maxLength: 255
            client_logo_uri:
              type: string
              maxLength: 255
  responses:
    BadRequest:
      description: Bad request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/StdError'
    Unauthorized:
      description: Unauthorized
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/StdError'
    NotFound:
      description: Not Found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/StdError'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        An Environment API key from your Nango environment, or an Account API
        key for account-level endpoints.

````