Kong DCR Providers API

Dynamic Client Registration Providers are configurations representing an external Identity Provider whose clients (i.e. Applications) Konnect will be authorized to manage. For instance, they will be able to perform dynamic client registration (DCR) with the provider. The DCR provider provides credentials to each DCR-enabled application in Konnect that can be used to access Product Versions that the app is registered for.

OpenAPI Specification

kong-dcr-providers-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  contact:
    email: support@konghq.com
    name: Kong Inc
    url: https://konghq.com
  description: 'OpenAPI 3.0 spec for Kong Gateway''s Admin API.


    You can learn more about Kong Gateway at [developer.konghq.com](https://developer.konghq.com).

    Give Kong a star at the [Kong/kong](https://github.com/kong/kong) repository.'
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  title: Kong Enterprise Admin ACLs DCR Providers API
  version: 3.14.0
servers:
- description: Default Admin API URL
  url: '{protocol}://{hostname}:{port}{path}'
  variables:
    hostname:
      default: localhost
      description: Hostname for Kong's Admin API
    path:
      default: /
      description: Base path for Kong's Admin API
    port:
      default: '8001'
      description: Port for Kong's Admin API
    protocol:
      default: http
      description: Protocol for requests to Kong's Admin API
      enum:
      - http
      - https
security:
- adminToken: []
tags:
- name: DCR Providers
  description: "Dynamic Client Registration Providers are configurations representing an external Identity Provider whose clients (i.e. Applications) Konnect will be authorized to manage.\nFor instance, they will be able to perform dynamic client registration (DCR) with the provider. \nThe DCR provider provides credentials to each DCR-enabled application in Konnect that can be used to access Product Versions that the app is registered for.\n"
paths:
  /v2/dcr-providers:
    post:
      operationId: create-dcr-provider
      summary: Create DCR provider
      description: Creates a DCR provider.
      requestBody:
        $ref: '#/components/requestBodies/CreateDcrProvider'
      responses:
        '201':
          $ref: '#/components/responses/CreateDcrProvider'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
      tags:
      - DCR Providers
    get:
      operationId: list-dcr-providers
      summary: List DCR Providers
      description: Returns a paginated collection of DCR providers.
      parameters:
      - $ref: '#/components/parameters/PageSize'
      - $ref: '#/components/parameters/PageNumber'
      - $ref: '#/components/parameters/SortDcrProviders'
      - $ref: '#/components/parameters/FilterDcrProvidersById'
      - $ref: '#/components/parameters/FilterDcrProvidersByIdShort'
      - $ref: '#/components/parameters/FilterDcrProvidersByIdContains'
      - $ref: '#/components/parameters/FilterDcrProvidersByIssuer'
      - $ref: '#/components/parameters/FilterDcrProvidersByIssuerShort'
      - $ref: '#/components/parameters/FilterDcrProvidersByIssuerContains'
      - $ref: '#/components/parameters/FilterDcrProvidersByName'
      - $ref: '#/components/parameters/FilterDcrProvidersByNameShort'
      - $ref: '#/components/parameters/FilterDcrProvidersByNameContains'
      - $ref: '#/components/parameters/FilterDcrProvidersByProviderType'
      - $ref: '#/components/parameters/FilterDcrProvidersByProviderTypeShort'
      - $ref: '#/components/parameters/FilterDcrProvidersByInitialClientId'
      - $ref: '#/components/parameters/FilterDcrProvidersByInitialClientIdShort'
      - $ref: '#/components/parameters/FilterDcrProvidersByInitialClientIdContains'
      - $ref: '#/components/parameters/FilterDcrProvidersByInitialClientAudience'
      - $ref: '#/components/parameters/FilterDcrProvidersByInitialClientAudienceShort'
      - $ref: '#/components/parameters/FilterDcrProvidersByInitialClientAudienceContains'
      responses:
        '200':
          $ref: '#/components/responses/ListDcrProviders'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
      tags:
      - DCR Providers
  /v2/dcr-providers/{dcrProviderId}:
    parameters:
    - $ref: '#/components/parameters/DcrProviderId'
    get:
      operationId: get-dcr-provider
      summary: Get a DCR provider
      description: Returns a DCR provider.
      responses:
        '200':
          $ref: '#/components/responses/GetDcrProvider'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - DCR Providers
    patch:
      operationId: update-dcr-provider
      summary: Update DCR provider
      description: Updates a DCR provider.
      requestBody:
        $ref: '#/components/requestBodies/UpdateDcrProvider'
      responses:
        '200':
          $ref: '#/components/responses/GetDcrProvider'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - DCR Providers
    delete:
      operationId: delete-dcr-provider
      summary: Delete DCR provider
      description: Deletes a DCR provider.
      responses:
        '204':
          description: No Content.
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - DCR Providers
  /v2/dcr-providers/{dcrProviderId}/verify:
    parameters:
    - $ref: '#/components/parameters/DcrProviderId'
    post:
      operationId: verify-dcr-provider
      summary: Verify DCR provider configuration
      description: Verifies if a DCR provider is configured properly. Returns 200 for success, 4xx for failure.
      responses:
        '200':
          $ref: '#/components/responses/VerifyDcrProvider'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - DCR Providers
components:
  parameters:
    FilterDcrProvidersByProviderType:
      name: filter[provider_type][eq]
      description: filters DCR Providers by their provider type
      in: query
      required: false
      schema:
        type: string
    FilterDcrProvidersByInitialClientIdShort:
      name: filter[initial_client_id]
      description: filters DCR Providers by their initial client id (alias for filter[initial_client_id][eq])
      in: query
      required: false
      schema:
        type: string
    FilterDcrProvidersByIssuerShort:
      name: filter[issuer]
      description: filters DCR Providers by their issuer (alias for filter[issuer][eq])
      in: query
      required: false
      schema:
        type: string
    PageSize:
      name: page[size]
      description: The maximum number of items to include per page. The last page of a collection may include fewer items.
      required: false
      in: query
      allowEmptyValue: true
      schema:
        type: integer
        example: 10
      x-speakeasy-terraform-ignore: true
    FilterDcrProvidersByIdContains:
      name: filter[id][contains]
      description: filters DCR Providers by their id with a supplied substring
      in: query
      required: false
      schema:
        type: string
    FilterDcrProvidersByInitialClientAudience:
      name: filter[initial_client_audience][eq]
      description: filters DCR Providers by their initial client audience
      in: query
      required: false
      schema:
        type: string
    FilterDcrProvidersByInitialClientIdContains:
      name: filter[initial_client_id][contains]
      description: filters DCR Providers by their initial client id with a supplied substring
      in: query
      required: false
      schema:
        type: string
    FilterDcrProvidersByNameContains:
      name: filter[name][contains]
      description: filters DCR Providers by their name with a supplied substring
      in: query
      required: false
      schema:
        type: string
    FilterDcrProvidersByInitialClientAudienceShort:
      name: filter[initial_client_audience]
      description: filters DCR Providers by their initial client audience (alias for filter[initial_client_audience][eq])
      in: query
      required: false
      schema:
        type: string
    FilterDcrProvidersByIdShort:
      name: filter[id]
      description: filters DCR Providers by their id (alias for filter[id][eq])
      in: query
      required: false
      schema:
        type: string
    DcrProviderId:
      name: dcrProviderId
      description: DCR provider identifier
      in: path
      required: true
      schema:
        $ref: '#/components/schemas/UUID'
    FilterDcrProvidersById:
      name: filter[id][eq]
      description: filters DCR Providers by their id
      in: query
      required: false
      schema:
        type: string
    FilterDcrProvidersByInitialClientId:
      name: filter[initial_client_id][eq]
      description: filters DCR Providers by their initial client id
      in: query
      required: false
      schema:
        type: string
    FilterDcrProvidersByProviderTypeShort:
      name: filter[provider_type]
      description: filters DCR Providers by their provider type (alias for filter[provider_type][eq])
      in: query
      required: false
      schema:
        type: string
    PageNumber:
      name: page[number]
      description: Determines which page of the entities to retrieve.
      required: false
      in: query
      allowEmptyValue: true
      schema:
        type: integer
        example: 1
      x-speakeasy-terraform-ignore: true
    FilterDcrProvidersByName:
      name: filter[name][eq]
      description: filters DCR Providers by their name
      in: query
      required: false
      schema:
        type: string
    FilterDcrProvidersByInitialClientAudienceContains:
      name: filter[initial_client_audience][contains]
      description: filters DCR Providers by their initial client audience with a supplied substring
      in: query
      required: false
      schema:
        type: string
    FilterDcrProvidersByNameShort:
      name: filter[name]
      description: filters DCR Providers by their name (alias for filter[name][eq])
      in: query
      required: false
      schema:
        type: string
    SortDcrProviders:
      name: sort
      description: "Sorts a collection of DCR Providers. Supported sort attributes are:\n  - created_at\n  - updated_at\n  - provider_type\n  - issuer\n  - name\n"
      in: query
      required: false
      schema:
        type: string
    FilterDcrProvidersByIssuer:
      name: filter[issuer][eq]
      description: filters DCR Providers by their issuer
      in: query
      required: false
      schema:
        type: string
    FilterDcrProvidersByIssuerContains:
      name: filter[issuer][contains]
      description: filters DCR Providers by their issuer with a supplied substring
      in: query
      required: false
      schema:
        type: string
  schemas:
    CreateDcrConfigAuth0InRequest:
      description: Payload to create an Auth0 DCR provider.
      type: object
      properties:
        initial_client_id:
          $ref: '#/components/schemas/DcrConfigPropertyInitialClientId'
        initial_client_secret:
          $ref: '#/components/schemas/DcrConfigPropertyInitialClientSecret'
        initial_client_audience:
          $ref: '#/components/schemas/DcrConfigPropertyInitialClientAudience'
        use_developer_managed_scopes:
          type: boolean
      additionalProperties: false
      required:
      - initial_client_id
      - initial_client_secret
      title: DcrConfigAuth0InRequest
    CreateDcrProviderRequestAuth0:
      description: Request body for creating an Auth0 DCR provider.
      type: object
      properties:
        provider_type:
          type: string
          enum:
          - auth0
        dcr_config:
          $ref: '#/components/schemas/CreateDcrConfigAuth0InRequest'
        name:
          $ref: '#/components/schemas/DcrProviderName'
        display_name:
          $ref: '#/components/schemas/DcrProviderDisplayName'
        issuer:
          type: string
          format: url
          maxLength: 256
        labels:
          $ref: '#/components/schemas/Labels'
      required:
      - provider_type
      - dcr_config
      - name
      - issuer
      title: CreateDcrProviderRequestAuth0
    CreateDcrConfigHttpInRequest:
      description: Payload to create an HTTP DCR provider.
      type: object
      properties:
        dcr_base_url:
          $ref: '#/components/schemas/DcrBaseUrl'
        api_key:
          $ref: '#/components/schemas/DcrConfigPropertyApiKey'
        disable_event_hooks:
          $ref: '#/components/schemas/DcrConfigPropertyDisableEventHooks'
        disable_refresh_secret:
          $ref: '#/components/schemas/DcrConfigPropertyDisableRefreshSecret'
        allow_multiple_credentials:
          $ref: '#/components/schemas/DcrConfigPropertyAllowMultipleCredentials'
      additionalProperties: false
      required:
      - dcr_base_url
      - api_key
      title: CreateDcrConfigHttpInRequest
    InvalidParameterChoiceItem:
      type: object
      properties:
        field:
          type: string
          example: name
          readOnly: true
        rule:
          description: invalid parameters rules
          type: string
          enum:
          - enum
          nullable: false
          readOnly: true
        reason:
          type: string
          example: is a required field
          readOnly: true
        choices:
          type: array
          items: {}
          minItems: 1
          nullable: false
          readOnly: true
          uniqueItems: true
        source:
          type: string
          example: body
      additionalProperties: false
      required:
      - field
      - reason
      - rule
      - choices
    CreateDcrProviderResponse:
      description: A response containing the newly created DCR provider object.
      type: object
      allOf:
      - $ref: '#/components/schemas/DcrProviderBase'
      - discriminator:
          propertyName: provider_type
          mapping:
            auth0: '#/components/schemas/DcrProviderAuth0'
            azureAd: '#/components/schemas/DcrProviderAzureAd'
            curity: '#/components/schemas/DcrProviderCurity'
            okta: '#/components/schemas/DcrProviderOkta'
            http: '#/components/schemas/DcrProviderHttp'
        type: object
        oneOf:
        - $ref: '#/components/schemas/DcrProviderAuth0'
        - $ref: '#/components/schemas/DcrProviderAzureAd'
        - $ref: '#/components/schemas/DcrProviderCurity'
        - $ref: '#/components/schemas/DcrProviderOkta'
        - $ref: '#/components/schemas/DcrProviderHttp'
    VerifyDcrProviderResponse:
      description: A response containing the result of attempting to verify a DCR provider configuration.
      type: object
      properties:
        status:
          type: string
          enum:
          - success
          - failed
          x-speakeasy-unknown-values: allow
        errors:
          type: array
          items:
            type: string
      additionalProperties: false
      required:
      - status
      - errors
      title: VerifyDcrProviderResponse
    Labels:
      description: "Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\".\n"
      type: object
      example:
        env: test
      additionalProperties:
        type: string
        pattern: ^[a-z0-9A-Z]{1}([a-z0-9A-Z-._]*[a-z0-9A-Z]+)?$
        minLength: 1
        maxLength: 63
      maxProperties: 50
      title: Labels
    UpdateDcrConfigHttpInRequest:
      description: Payload to update an HTTP DCR provider.
      type: object
      properties:
        dcr_base_url:
          $ref: '#/components/schemas/DcrBaseUrl'
        api_key:
          $ref: '#/components/schemas/DcrConfigPropertyApiKey'
        disable_event_hooks:
          $ref: '#/components/schemas/DcrConfigPropertyDisableEventHooks'
        disable_refresh_secret:
          $ref: '#/components/schemas/DcrConfigPropertyDisableRefreshSecret'
        allow_multiple_credentials:
          $ref: '#/components/schemas/DcrConfigPropertyAllowMultipleCredentials'
      additionalProperties: false
      title: CreateDcrConfigHttpInRequest
    DcrProviderCurity:
      description: A DCR provider for Curity -- only properties not included in DcrProviderBase
      type: object
      properties:
        provider_type:
          type: string
          enum:
          - curity
        dcr_config:
          $ref: '#/components/schemas/DcrConfigCurityInResponse'
      required:
      - provider_type
      - dcr_config
      title: DCR provider - Curity
    DcrProviderOkta:
      description: A DCR provider for Okta -- only properties not included in DcrProviderBase
      type: object
      properties:
        provider_type:
          type: string
          enum:
          - okta
        dcr_config:
          $ref: '#/components/schemas/DcrConfigOktaInResponse'
      required:
      - provider_type
      - dcr_config
      title: DCR provider - OKTA
    CreateDcrProviderRequest:
      description: Request body for creating a DCR provider. The provider_type cannot be updated after creation.
      type: object
      discriminator:
        propertyName: provider_type
        mapping:
          auth0: '#/components/schemas/CreateDcrProviderRequestAuth0'
          azureAd: '#/components/schemas/CreateDcrProviderRequestAzureAd'
          curity: '#/components/schemas/CreateDcrProviderRequestCurity'
          okta: '#/components/schemas/CreateDcrProviderRequestOkta'
          http: '#/components/schemas/CreateDcrProviderRequestHttp'
      oneOf:
      - $ref: '#/components/schemas/CreateDcrProviderRequestAuth0'
      - $ref: '#/components/schemas/CreateDcrProviderRequestAzureAd'
      - $ref: '#/components/schemas/CreateDcrProviderRequestCurity'
      - $ref: '#/components/schemas/CreateDcrProviderRequestOkta'
      - $ref: '#/components/schemas/CreateDcrProviderRequestHttp'
      title: CreateDcrProviderRequest
    DcrConfigHttpInResponse:
      description: A DCR provider configuration for HTTP
      type: object
      properties:
        dcr_base_url:
          type: string
          format: url
        disable_event_hooks:
          $ref: '#/components/schemas/DcrConfigPropertyDisableEventHooks'
        disable_refresh_secret:
          $ref: '#/components/schemas/DcrConfigPropertyDisableRefreshSecret'
        allow_multiple_credentials:
          $ref: '#/components/schemas/DcrConfigPropertyAllowMultipleCredentials'
      additionalProperties: false
      required:
      - dcr_base_url
      title: DcrConfigHttpInResponse
    UpdateDcrConfigAuth0InRequest:
      description: Payload to update an Auth0 DCR provider.
      type: object
      properties:
        initial_client_id:
          $ref: '#/components/schemas/DcrConfigPropertyInitialClientId'
        initial_client_secret:
          $ref: '#/components/schemas/DcrConfigPropertyInitialClientSecret'
        initial_client_audience:
          $ref: '#/components/schemas/DcrConfigPropertyInitialClientAudience'
        use_developer_managed_scopes:
          type: boolean
      additionalProperties: false
      title: DcrConfigAuth0InRequest
    InvalidParameterMinimumLength:
      type: object
      properties:
        field:
          type: string
          example: name
          readOnly: true
        rule:
          description: invalid parameters rules
          type: string
          enum:
          - min_length
          - min_digits
          - min_lowercase
          - min_uppercase
          - min_symbols
          - min_items
          - min
          nullable: false
          readOnly: true
          x-speakeasy-unknown-values: allow
        minimum:
          type: integer
          example: 8
        source:
          type: string
          example: body
        reason:
          type: string
          example: must have at least 8 characters
          readOnly: true
      additionalProperties: false
      required:
      - field
      - reason
      - rule
      - minimum
    UpdateDcrConfigOktaInRequest:
      description: Payload to update an Okta DCR provider.
      type: object
      properties:
        dcr_token:
          $ref: '#/components/schemas/DcrConfigPropertyDcrToken'
      additionalProperties: false
      title: DcrConfigOktaInRequest
    UpdatedAt:
      description: An ISO-8601 timestamp representation of entity update date.
      type: string
      format: date-time
      example: '2022-11-04T20:10:06.927Z'
      readOnly: true
      x-speakeasy-param-suppress-computed-diff: true
    InvalidParameterMaximumLength:
      type: object
      properties:
        field:
          type: string
          example: name
          readOnly: true
        rule:
          description: invalid parameters rules
          type: string
          enum:
          - max_length
          - max_items
          - max
          nullable: false
          readOnly: true
          x-speakeasy-unknown-values: allow
        maximum:
          type: integer
          example: 8
        source:
          type: string
          example: body
        reason:
          type: string
          example: must not have more than 8 characters
          readOnly: true
      additionalProperties: false
      required:
      - field
      - reason
      - rule
      - maximum
    CreateDcrProviderRequestOkta:
      description: Request body for creating an Okta DCR provider.
      type: object
      properties:
        provider_type:
          type: string
          enum:
          - okta
        dcr_config:
          $ref: '#/components/schemas/CreateDcrConfigOktaInRequest'
        name:
          $ref: '#/components/schemas/DcrProviderName'
        display_name:
          $ref: '#/components/schemas/DcrProviderDisplayName'
        issuer:
          type: string
          format: url
          maxLength: 256
        labels:
          $ref: '#/components/schemas/Labels'
      required:
      - provider_type
      - dcr_config
      - name
      - issuer
      title: CreateDcrProviderRequestOkta
    DcrConfigPropertyInitialClientAudience:
      description: 'This is the audience value used for the initial client.

        If using a custom domain on Auth0, this must be set as to the Auth0 Management API audience value.

        If left blank, the issuer will be used instead.

        '
      type: string
      maxLength: 256
      nullable: true
      title: DcrConfigPropertyInitialClientAudience
    ListDcrProvidersResponse:
      description: A paginated list response for a collection of DCR providers
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/DcrProviderResponse'
        meta:
          $ref: '#/components/schemas/PaginatedMeta'
      additionalProperties: false
      required:
      - data
      - meta
      title: ListDcrProvidersResponse
    DcrProviderAzureAd:
      description: A DCR provider for Azure AD -- only properties not included in DcrProviderBase
      type: object
      properties:
        provider_type:
          type: string
          enum:
          - azureAd
        dcr_config:
          $ref: '#/components/schemas/DcrConfigAzureAdInResponse'
      required:
      - provider_type
      - dcr_config
      title: DCR provider - Azure AD
    LabelsUpdate:
      description: "Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nLabels are intended to store **INTERNAL** metadata.\n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\".\n"
      type: object
      example:
        env: test
      additionalProperties:
        type: string
        pattern: ^[a-z0-9A-Z]{1}([a-z0-9A-Z-._]*[a-z0-9A-Z]+)?$
        minLength: 1
        maxLength: 63
        nullable: true
      maxProperties: 50
      nullable: true
      writeOnly: true
    DcrConfigOktaInResponse:
      description: A DCR provider configuration for Okta
      type: object
      properties: {}
      additionalProperties: false
      title: DcrConfigOktaInResponse
    PaginatedMeta:
      description: returns the pagination information
      type: object
      properties:
        page:
          $ref: '#/components/schemas/PageMeta'
      required:
      - page
      title: PaginatedMeta
      x-speakeasy-terraform-ignore: true
    CreatedAt:
      description: An ISO-8601 timestamp representation of entity creation date.
      type: string
      format: date-time
      example: '2022-11-04T20:10:06.927Z'
      readOnly: true
      x-speakeasy-param-suppress-computed-diff: true
    BaseError:
      description: standard error
      type: object
      properties:
        status:
          description: 'The HTTP status code of the error. Useful when passing the response

            body to child properties in a frontend UI. Must be returned as an integer.

            '
          type: integer
          readOnly: true
        title:
          description: 'A short, human-readable summary of the problem. It should not

            change between occurences of a problem, except for localization.

            Should be provided as "Sentence case" for direct use in the UI.

            '
          type: string
          readOnly: true
        type:
          description: The error type.
          type: string
          readOnly: true
        instance:
          description: 'Used to return the correlation ID back to the user, in the format

            kong:trace:<correlation_id>. This helps us find the relevant logs

            when a customer reports an issue.

            '
          type: string
          readOnly: true
        detail:
          description: 'A human readable explanation specific to this occurence of the problem.

            This field may contain request/entity data to help the user understand

            what went wrong. Enclose variable values in square brackets. Should be

            provided as "Sentence case" for direct use in the UI.

            '
          type: string
          readOnly: true
      required:
      - status
      - title
      - instance
      - detail
      title: Error
    DcrProviderName:
      description: 'The name of the DCR provider. This is used to identify the DCR provider in the Konnect UI.

        '
      type: string
      maxLength: 256
      minLength: 1
    UpdateDcrConfigAzureAdInRequest:
      description: Payload to update an Azure AD DCR provider.
      type: object
      properties:
        initial_client_id:
          $ref: '#/components/schemas/DcrConfigPropertyInitialClientId'
        initial_client_secret:
          $ref: '#/components/schemas/DcrConfigPropertyInitialClientSecret'
      additionalProperties: false
      title: DcrConfigAzureAdInRequest
    BadRequestError:
      allOf:
      - $ref: '#/components/schemas/BaseError'
      - type: object
        required:
        - invalid_parameters
        properties:
          invalid_parameters:
            $ref: '#/components/schemas/InvalidParameters'
    DcrConfigPropertyApiKey:
      description: 'This is the API Key that will be sent with each HTTP request to the custom DCR server. It can be

        verified on the server to ensure that incoming requests are coming from Konnect.

        '
      type: string
      maxLength: 256
      minLength: 12
      pattern: ^[a-zA-Z0-9_]+$
      title: DcrConfigPropertyApiKey
    DcrBaseUrl:
      description: 'The base URL of the DCR server. This is the URL that will be used to make the HTTP requests from Konnect to the DCR provider.

        This URL must be accessible from the Konnect service.

        '
      type: string
      format: url
      maxLength: 256
    PageMeta:
      description: Contains pagination query parameters and the total number of objects returned.
      type: object
      properties:
        number:
          type: number
          example: 1
          x-speakeasy-terraform-ignore: true
        size:
          type: number
          example: 10
          x-speakeasy-terraform-ignore: true
        total:
          type: number
          example: 100
          x-speakeasy-terraform-ignore: true
      required:
      - number
      - size
      - total
    DcrConfigPropertyDisableEventHooks:
      description: This flag disables all the event-hooks on the application flow for the DCR provider.
      type: boolean
      title: DcrConfigPropertyDisableEventHooks
    DcrConfigCurityInResponse:
      description: A DCR provider configuration for Curity
      type: object
      properties:
        initial_client_id:
          $ref: '#/components/schemas/DcrConfigPropertyInitialClientId'
      additionalProperties: false
      required:
      - initial_client_id
      title: DcrConfigCurityInResponse
    DcrProviderHttp:
      description: A DCR provider for HTTP -- only properties not included in DcrProviderBase
      type: object
      properties:
        provider_type:
          type: string
          enum:
          - http
        dcr_config:
          $ref: '#/components/schemas/DcrConfigHttpInResponse'
      required:
      - provider_type
      - dcr_config
      title: DCR provider - HTTP
    UUID:
      description: Contains a unique identifier used for this resource.
      type: string
      format: uuid
      example: 5f9fd312-a987-4628-b4c5-bb4f4fddd5f7
      readOnly: true
    DcrProviderAuth0:
      description: A DCR provider for Auth0 -- only properties not included in DcrProviderBase
      type: object
      properties:
        provider_type:
          type: string
          enum:
          - auth0
        dcr_config:
          $ref: '#/components/schemas/DcrConfigAuth0InResponse'
      required:
      - provider_type
      - dcr_config
      title: DCR provider - Auth0
    ForbiddenError:
      allOf:
      - $ref: '#/components/schemas/BaseError'
      - type: object
        properties:
          status:
            example: 403
          title:
            example: Forbidden
          type:
            example: https://httpstatuses.com/403
          instance:
            example: kong:trace:1234567890
          detail:
            example: Forbidden
    UnauthorizedError:
      allOf:
      - $ref: '#/components/schemas/BaseError'
      - type: object
        properties:
          status:
            example: 401
          title:
            example: Unauthorized
          type:
            example: https://httpstatuses.com/401
          instance:
            example: kong:trace:1234567890
          detail:
            example: Invalid credentials
    CreateDcrProviderRequestCurity:
      description: Request body for creating a Curity DCR provider.
      type: object
      properties:
        provider_type:
          type: string
          enum:
          - curity
        dcr_config:
          $ref: '#/components/schemas/CreateDcrConfigCurityInRequest'
        name:
          $ref: '#/components/schemas/DcrProviderName'
        display_name:
          $ref: '#/components/schemas/DcrProviderDisplayName'
        issuer:
          type: string
          format: url
          maxLength: 256
        labels:
          $ref: '#/components/schemas/Labels'
      required:
      - provider_type
      - dcr_config
      - name
      - issuer
      title: CreateDcrProviderRequestCurity
    DcrConfigAzureAdInResponse:
      description: A DCR provider configuration for Azure AD
      type: object
      properties:
        initial_client_id:
          $ref: '#/components/schemas/DcrConfigPropertyInitialClientId'
      additionalProperties: false
      required:
      - initial_client_id
      title: DcrConfigAzureAdInResponse
    DcrConfigPropertyDcrToken:
      description: 'This secret should be copied from your identity provider''s settings after you create a client

        and assign it as the management client for DCR for this developer portal

        '
      type: string
      maxLength: 256
      title: DcrConfigPropertyInitialDcrToken
    CreateDcrConfigCurityInRequest:
      description: Payload to create a Curity DCR provider.
      typ

# --- truncated at 32 KB (45 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/kong/refs/heads/main/openapi/kong-dcr-providers-api-openapi.yml