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

# Get custom integration definition

> Return the full JSON definition of the custom integration, including decrypted secrets.

Access is controlled by the integration read-secrets policy.



## OpenAPI

````yaml https://api.galileo.ai/public/v2/openapi.json get /v2/integrations/custom/definition
openapi: 3.1.0
info:
  title: FastAPI
  version: 0.1.0
servers:
  - url: https://api.galileo.ai
    description: Galileo Public APIs - galileo-v2
security: []
paths:
  /v2/integrations/custom/definition:
    get:
      tags:
        - integrations
      summary: Get custom integration definition
      description: >-
        Return the full JSON definition of the custom integration, including
        decrypted secrets.


        Access is controlled by the integration read-secrets policy.
      operationId: get_custom_integration_definition_v2_integrations_custom_definition_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustomIntegrationDefinition'
      security:
        - APIKeyHeader: []
        - ClassicAPIKeyHeader: []
        - OAuth2PasswordBearer: []
        - HTTPBasic: []
components:
  schemas:
    CustomIntegrationDefinition:
      properties:
        authentication_type:
          $ref: '#/components/schemas/CustomAuthenticationType'
        endpoint:
          type: string
          title: Endpoint
        default_model:
          anyOf:
            - type: string
            - type: 'null'
          title: Default Model
        model_properties:
          anyOf:
            - items:
                $ref: '#/components/schemas/ModelProperties'
              type: array
            - type: 'null'
          title: Model Properties
        token:
          anyOf:
            - type: string
            - type: 'null'
          title: Token
        api_key_header:
          anyOf:
            - type: string
            - type: 'null'
          title: Api Key Header
        api_key_value:
          anyOf:
            - type: string
            - type: 'null'
          title: Api Key Value
        authentication_scope:
          anyOf:
            - type: string
            - type: 'null'
          title: Authentication Scope
        oauth2_token_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Oauth2 Token Url
        headers:
          anyOf:
            - additionalProperties:
                type: string
              type: object
            - type: 'null'
          title: Headers
        custom_llm_config:
          anyOf:
            - $ref: '#/components/schemas/CustomLLMConfig'
            - type: 'null'
        custom_header_mapping:
          anyOf:
            - additionalProperties:
                type: string
              type: object
            - type: 'null'
          title: Custom Header Mapping
        multi_modal_config:
          anyOf:
            - $ref: '#/components/schemas/MultiModalModelIntegrationConfig'
            - type: 'null'
      type: object
      required:
        - authentication_type
        - endpoint
      title: CustomIntegrationDefinition
      description: |-
        Response schema for the full JSON definition of a custom integration.

        Returns the exact same structure used to create the integration,
        including decrypted sensitive fields (api_key_value, token, headers).
        Only accessible to users with edit permission (creator + admins).
    CustomAuthenticationType:
      type: string
      enum:
        - api_key
        - none
        - oauth2
      title: CustomAuthenticationType
      description: |-
        Authentication types for custom integrations.

        Values:
        - none: No authentication required
        - oauth2: OAuth2 token-based authentication
        - api_key: API key header-based authentication
    ModelProperties:
      properties:
        name:
          type: string
          title: Name
          description: The model name used when calling the API.
        alias:
          anyOf:
            - type: string
            - type: 'null'
          title: Alias
          description: The display name/alias for the model. Defaults to name.
        based_on:
          anyOf:
            - type: string
            - type: 'null'
          title: Based On
          description: >-
            Alias of a built-in model whose parameter map should be used. For
            example, 'gpt-5.4'. Mutually exclusive with supported_parameters.
        supported_parameters:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Supported Parameters
          description: >-
            Explicit list of parameter names this model supports (e.g.,
            ['max_tokens', 'temperature', 'verbosity']). Each name must be a
            valid RunParamsMap field. Mutually exclusive with based_on.
      type: object
      required:
        - name
      title: ModelProperties
      description: |-
        Properties for a model in a custom integration.

        Attributes:
            name: The model name used when calling the API.
            alias: The display name/alias for the model in the UI.
                  Defaults to ``name`` when not provided.
            based_on: Alias of a built-in model whose parameter map should be used.
                      Mutually exclusive with ``supported_parameters``.
            supported_parameters: Explicit list of parameter names this model supports.
                                  Mutually exclusive with ``based_on``.
    CustomLLMConfig:
      properties:
        file_name:
          type: string
          title: File Name
          description: >-
            Python file name containing the CustomLLM class (e.g.,
            'my_handler.py')
        class_name:
          type: string
          title: Class Name
          description: Class name within the module (must be a litellm.CustomLLM subclass)
        init_kwargs:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Init Kwargs
          description: Optional keyword arguments to pass to the CustomLLM constructor
      type: object
      required:
        - file_name
        - class_name
      title: CustomLLMConfig
      description: >-
        Configuration for a custom LiteLLM handler class.


        Allows users to specify a custom implementation of litellm.CustomLLM

        that handles acompletion() calls with custom request/response
        transformation.
    MultiModalModelIntegrationConfig:
      properties:
        max_files:
          anyOf:
            - type: integer
              minimum: 1
            - type: 'null'
          title: Max Files
          description: Maximum number of files allowed per request. None means no limit.
        max_file_size_bytes:
          anyOf:
            - type: integer
              minimum: 1
            - type: 'null'
          title: Max File Size Bytes
          description: Maximum file size in bytes per file. None means no limit.
      type: object
      title: MultiModalModelIntegrationConfig
      description: Configuration for multi-modal capabilities (file uploads).
  securitySchemes:
    APIKeyHeader:
      type: apiKey
      in: header
      name: Splunk-AO-API-Key
    ClassicAPIKeyHeader:
      type: apiKey
      in: header
      name: Galileo-API-Key
    OAuth2PasswordBearer:
      type: oauth2
      flows:
        password:
          scopes: {}
          tokenUrl: https://api.galileo.ai/login
    HTTPBasic:
      type: http
      scheme: basic

````