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 Auth Settings 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: Auth Settings paths: /v3/authentication-settings: get: x-speakeasy-entity-operation: terraform-resource: AuthenticationSettings#read terraform-datasource: null operationId: get-authentication-settings summary: Get Auth Settings description: Returns authentication configuration, which determines how users can log in and how they are assigned to teams. responses: '200': $ref: '#/components/responses/AuthenticationSettings' '401': $ref: '#/components/responses/IdentityUnauthenticated' servers: - url: https://global.api.konghq.com/ tags: - Auth Settings patch: x-speakeasy-entity-operation: AuthenticationSettings#create,update operationId: update-authentication-settings summary: Update Auth Settings description: Updates authentication configuration. requestBody: $ref: '#/components/requestBodies/UpdateAuthenticationSettings' responses: '200': $ref: '#/components/responses/AuthenticationSettings' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' servers: - url: https://global.api.konghq.com/ tags: - Auth Settings /v3/identity-provider: get: operationId: get-idp-configuration summary: Get the IdP Configuration description: Fetch the IdP configuration. responses: '200': $ref: '#/components/responses/IdPConfiguration' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' '404': $ref: '#/components/responses/IdentityNotFound' servers: - url: https://global.api.konghq.com/ tags: - Auth Settings patch: operationId: update-idp-configuration summary: Update IdP Configuration description: Update the IdP configuration. requestBody: $ref: '#/components/requestBodies/UpdateIdPConfiguration' responses: '200': $ref: '#/components/responses/IdPConfiguration' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' servers: - url: https://global.api.konghq.com/ tags: - Auth Settings /v3/identity-provider/team-group-mappings: get: operationId: get-team-group-mappings summary: Get a Team Group Mappings description: 'Retrieves the mappings between Konnect Teams and Identity Provider Groups. Returns a 400 error if an Identity Provider has not yet been configured.' parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' responses: '200': $ref: '#/components/responses/TeamGroupMappingCollection' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' servers: - url: https://global.api.konghq.com/ tags: - Auth Settings patch: operationId: patch-team-group-mappings summary: Patch Mappings by Team ID description: 'Allows partial updates to the mappings between Konnect Teams and Identity Provider Groups. The request body must be keyed on team ID. For a given team ID, the given group list is a complete replacement. To remove all mappings for a given team, provide an empty group list. Returns a 400 error if an Identity Provider has not yet been configured, or if a team ID in the request body is not found or is not a UUID.' requestBody: $ref: '#/components/requestBodies/PatchTeamGroupMappings' responses: '200': $ref: '#/components/responses/TeamGroupMappingCollection' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' servers: - url: https://global.api.konghq.com/ tags: - Auth Settings /v3/identity-provider/team-mappings: put: operationId: update-idp-team-mappings summary: Update Team Mappings description: Updates the IdP group to Konnect team mapping. requestBody: $ref: '#/components/requestBodies/UpdateTeamMappings' responses: '200': $ref: '#/components/responses/TeamMappingCollection' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityPermissionDenied' '404': $ref: '#/components/responses/IdentityNotFound' '412': $ref: '#/components/responses/PreconditionFailed' servers: - url: https://global.api.konghq.com/ tags: - Auth Settings get: operationId: get-idp-team-mappings summary: Get a Team Mapping description: Fetch the IdP group to Konnect team mapping. parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' responses: '200': $ref: '#/components/responses/TeamMappingResponse' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' '404': $ref: '#/components/responses/IdentityNotFound' '412': $ref: '#/components/responses/PreconditionFailed' servers: - url: https://global.api.konghq.com/ tags: - Auth Settings /v3/identity-providers: get: operationId: get-identity-providers summary: List Identity Providers description: 'Retrieves the identity providers available within the organization. This operation provides information about various identity providers for SAML or OIDC authentication integrations. ' parameters: - name: filter in: query description: Filter identity providers returned in the response. required: false schema: type: object properties: type: $ref: '#/components/schemas/StringFieldEqualsFilter' style: deepObject responses: '200': $ref: '#/components/responses/IdentityProviders' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' servers: - url: https://global.api.konghq.com/ tags: - Auth Settings post: x-speakeasy-entity-operation: IdentityProvider#create operationId: create-identity-provider summary: Create Identity Provider description: 'Creates a new identity provider. This operation allows the creation of a new identity provider for authentication purposes. ' requestBody: $ref: '#/components/requestBodies/CreateIdentityProviderRequest' responses: '201': $ref: '#/components/responses/IdentityProvider' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/CreateIdentityProviderPermissionDenied' '409': $ref: '#/components/responses/Conflict' servers: - url: https://global.api.konghq.com/ tags: - Auth Settings /v3/identity-providers/{id}: parameters: - name: id in: path description: ID of the identity provider. required: true schema: type: string format: uuid example: d32d905a-ed33-46a3-a093-d8f536af9a8a get: x-speakeasy-entity-operation: terraform-resource: IdentityProvider#read terraform-datasource: null operationId: get-identity-provider summary: Get Identity Provider description: 'Retrieves the configuration of a single identity provider. This operation returns information about a specific identity provider''s settings and authentication integration details. ' responses: '200': $ref: '#/components/responses/IdentityProvider' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' '404': $ref: '#/components/responses/IdentityNotFound' servers: - url: https://global.api.konghq.com/ tags: - Auth Settings patch: x-speakeasy-entity-operation: IdentityProvider#update operationId: update-identity-provider summary: Update Identity Provider description: 'Updates the configuration of an existing identity provider. This operation allows modifications to be made to an existing identity provider''s configuration. ' requestBody: $ref: '#/components/requestBodies/UpdateIdentityProviderRequest' responses: '200': $ref: '#/components/responses/IdentityProvider' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' '404': $ref: '#/components/responses/IdentityNotFound' '409': $ref: '#/components/responses/Conflict' servers: - url: https://global.api.konghq.com/ tags: - Auth Settings delete: x-speakeasy-entity-operation: IdentityProvider#delete operationId: delete-identity-provider summary: Delete Identity Provider description: 'Deletes an existing identity provider configuration. This operation removes a specific identity provider from the organization. ' responses: '204': description: No Content '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' '404': $ref: '#/components/responses/IdentityNotFound' servers: - url: https://global.api.konghq.com/ tags: - Auth Settings /v3/identity-providers/{idpId}/team-group-mappings: parameters: - name: idpId in: path description: ID of the identity provider. required: true schema: type: string format: uuid example: d32d905a-ed33-46a3-a093-d8f536af9a8a get: operationId: list-idp-team-group-mappings summary: List Team Group Mappings description: 'Returns a paginated list of team group mappings for the specified identity provider. Mappings define the relationship between identity provider groups and Konnect teams. ' parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageAfter' - $ref: '#/components/parameters/PageBefore' - name: filter in: query description: Filter mappings by team ID or group name. required: false schema: type: object properties: team_id: $ref: '#/components/schemas/StringFieldEqualsFilter' group: $ref: '#/components/schemas/StringFieldEqualsFilter' style: deepObject responses: '200': $ref: '#/components/responses/IdpTeamGroupMappingsCollection' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' '404': $ref: '#/components/responses/IdentityNotFound' servers: - url: https://global.api.konghq.com/ tags: - Auth Settings post: x-speakeasy-entity-operation: terraform-resource: IdentityProviderTeamGroupMapping#create terraform-datasource: null operationId: create-idp-team-group-mapping summary: Create Team Group Mapping description: 'Creates a new team group mapping for the specified identity provider. A mapping associates an identity provider group with a Konnect team. ' requestBody: $ref: '#/components/requestBodies/CreateIdpTeamGroupMappingRequest' responses: '201': $ref: '#/components/responses/IdpTeamGroupMapping' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' '404': $ref: '#/components/responses/IdentityNotFound' '409': $ref: '#/components/responses/Conflict' servers: - url: https://global.api.konghq.com/ tags: - Auth Settings /v3/identity-providers/{idpId}/team-group-mappings/{id}: parameters: - name: idpId in: path description: ID of the identity provider. required: true schema: type: string format: uuid example: d32d905a-ed33-46a3-a093-d8f536af9a8a - name: id in: path description: ID of the team group mapping. required: true schema: type: string format: uuid example: 7f9fd312-a987-4628-b4c5-bb4f4fddd5f7 get: x-speakeasy-entity-operation: terraform-resource: IdentityProviderTeamGroupMapping#read terraform-datasource: null operationId: get-idp-team-group-mapping summary: Get Team Group Mapping description: Returns the team group mapping for the specified ID. responses: '200': $ref: '#/components/responses/IdpTeamGroupMapping' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' '404': $ref: '#/components/responses/IdentityNotFound' servers: - url: https://global.api.konghq.com/ tags: - Auth Settings delete: x-speakeasy-entity-operation: terraform-resource: IdentityProviderTeamGroupMapping#delete terraform-datasource: null operationId: delete-idp-team-group-mapping summary: Delete Team Group Mapping description: 'Deletes a team group mapping by ID. Returns 204 if the mapping was deleted, or 404 if the mapping was not found. ' responses: '204': description: No Content '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' '404': $ref: '#/components/responses/IdentityNotFound' servers: - url: https://global.api.konghq.com/ tags: - Auth Settings components: schemas: IdentityProvider: x-speakeasy-entity: IdentityProvider description: The identity provider that contains configuration data for authentication integration. type: object properties: id: $ref: '#/components/schemas/UUID' type: $ref: '#/components/schemas/IdentityProviderType' enabled: $ref: '#/components/schemas/IdentityProviderEnabled' login_path: $ref: '#/components/schemas/IdentityProviderLoginPath' config: type: object oneOf: - $ref: '#/components/schemas/OIDCIdentityProviderConfig' - $ref: '#/components/schemas/SAMLIdentityProviderConfig' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' title: Identity Provider 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 IdP: description: 'The IdP object contains the configuration data for the OIDC authentication integration. NOTE: The `openid` scope is required. Removing it could break the OIDC integration.' type: object properties: issuer: type: string format: uri example: https://myidp.com/oauth2 login_path: type: string example: myapp client_id: type: string example: YOUR_CLIENT_ID scopes: type: array items: type: string default: - email - openid - profile claim_mappings: type: object minProperties: 3 properties: name: type: string example: name default: name email: type: string example: email default: email groups: type: string example: custom-groups-claim default: groups title: IdP Configuration IdpTeamGroupMapping: description: A mapping between a Konnect team and an identity provider group. type: object properties: id: $ref: '#/components/schemas/UUID' team_id: description: The Konnect team ID. type: string format: uuid example: 6801e673-cc10-498a-94cd-4271de07a0d3 group: description: The identity provider group name. Group names are case sensitive. type: string example: Tech Leads created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' required: - id - team_id - group - created_at - updated_at title: IdpTeamGroupMapping SAMLIdentityProviderMetadata: description: 'The identity provider''s SAML metadata. If the identity provider supports a metadata URL, you can use the `idp_metadata_url` field instead. ' type: string example: "\n\n \n\n" title: SAML Identity Provider Metadata StringFieldEqualsFilter: description: Filters on the given string field value by exact match. properties: eq: type: string title: StringFieldEqualsFilter 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 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 ConflictError: allOf: - $ref: '#/components/schemas/BaseError' - type: object properties: status: example: 409 title: example: Conflict type: example: https://httpstatuses.com/409 instance: example: kong:trace:1234567890 detail: example: Conflict 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 OIDCIdentityProviderClaimMappings: description: "Defines the mappings between OpenID Connect (OIDC) claims and local claims used by your application for \nauthentication.\n" type: object properties: name: description: The claim mapping for the user's name. type: string example: name default: name email: description: The claim mapping for the user's email address. type: string example: email default: email groups: description: The claim mapping for the user's group membership information. type: string example: groups default: groups title: OIDC Claim Mappings OIDCIdentityProviderScopes: description: The scopes requested by your application when authenticating with the identity provider. type: array items: type: string default: - email - openid - profile title: OIDC Identity Provider Scopes Property IdentityProviderLoginPath: description: The path used for initiating login requests with the identity provider. type: string example: myapp title: Identity Provider Login Path Property UpdateIdentityProvider: x-speakeasy-entity: IdentityProvider description: The identity provider that contains configuration data for updating an authentication integration. type: object properties: enabled: $ref: '#/components/schemas/IdentityProviderEnabled' login_path: $ref: '#/components/schemas/IdentityProviderLoginPath' config: type: object oneOf: - $ref: '#/components/schemas/OIDCIdentityProviderConfig' - $ref: '#/components/schemas/SAMLIdentityProviderConfig' title: Identity Provider CreateIdentityProvider: x-speakeasy-entity: IdentityProvider description: The identity provider that contains configuration data for creating an authentication integration. type: object properties: type: $ref: '#/components/schemas/IdentityProviderType' enabled: $ref: '#/components/schemas/IdentityProviderEnabled' login_path: $ref: '#/components/schemas/IdentityProviderLoginPath' config: type: object oneOf: - $ref: '#/components/schemas/OIDCIdentityProviderConfig' - $ref: '#/components/schemas/SAMLIdentityProviderConfig' title: Identity Provider UUID: description: Contains a unique identifier used for this resource. type: string format: uuid example: 5f9fd312-a987-4628-b4c5-bb4f4fddd5f7 readOnly: true TeamMapping: description: A team assignment is a mapping of an IdP group to a Konnect Team. type: object properties: group: description: The IdP group. type: string example: Service Developers team_ids: description: An array of ID's that are mapped to the specified group. type: array items: type: string format: uuid example: 6801e673-cc10-498a-94cd-4271de07a0d3 uniqueItems: true example: group: Service Developers team_ids: - 6801e673-cc10-498a-94cd-4271de07a0d3 title: TeamMapping TeamGroupMapping: description: A map of Konnect Team to IdP groups. type: object properties: team_id: description: The Konnect team ID. type: string format: uuid example: 6801e673-cc10-498a-94cd-4271de07a0d3 groups: description: The IdP groups that are mapped to the specified team. type: array items: type: string example: API Engineers uniqueItems: true example: team_id: 6801e673-cc10-498a-94cd-4271de07a0d3 groups: - Tech Leads - API Engineers title: TeamGroupMapping 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 CursorMetaPage: type: object properties: first: description: URI to the first page type: string format: path last: description: URI to the last page type: string format: path next: description: URI to the next page type: string format: path nullable: true previous: description: URI to the previous page type: string format: path nullable: true size: description: Requested page size type: number example: 10 required: - size - next - previous SAMLIdentityProviderMetadataURL: description: The identity provider's metadata URL where the identity provider's metadata can be obtained. type: string format: uri example: https://mocksaml.com/api/saml/metadata title: SAML Identity Provider Metadata URL CursorMeta: description: Pagination metadata. type: object properties: page: $ref: '#/components/schemas/CursorMetaPage' required: - page 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 OIDCIdentityProviderClientSecret: description: The Client Secret assigned to your application by the identity provider. type: string example: YOUR_CLIENT_SECRET title: OIDC Identity Provider Login Client Secret Property writeOnly: true x-speakeasy-param-sensitive: true x-speakeasy-terraform-plan-only: true 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:. 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 InvalidParameterDependentItem: type: object properties: field: type: string example: name readOnly: true rule: description: invalid parameters rules type: string enum: - dependent_fields nullable: true readOnly: true reason: type: string example: is a required field readOnly: true dependents: type: array items: {} nullable: true readOnly: true uniqueItems: true source: type: string example: body additionalProperties: false required: - field - rule - reason - dependents InvalidRules: description: invalid parameters rules type: string enum: - required - is_array - is_base64 - is_boolean - is_date_time - is_integer - is_null - is_number - is_object - is_string - is_uuid - is_fqdn - is_arn - unknown_property - missing_reference - is_label - matches_regex - invalid - is_supported_network_availability_zone_list - is_supported_network_cidr_block - is_supported_provider_region - type nullable: true readOnly: true x-speakeasy-unknown-values: allow InvalidParameters: description: invalid parameters type: array items: oneOf: - $ref: '#/components/schemas/InvalidParameterStandard' - $ref: '#/components/schemas/InvalidParameterMinimumLength' - $ref: '#/components/schemas/InvalidParameterMaximumLength' - $ref: '#/components/schemas/InvalidParameterChoiceItem' - $ref: '#/components/schemas/InvalidParameterDependentItem' minItems: 1 nullable: false uniqueItems: true BadRequestError: allOf: - $ref: '#/components/schemas/BaseError' - type: object required: - invalid_parameters properties: invalid_parameters: $ref: '#/components/schemas/InvalidParameters' IdentityProviderEnabled: description: 'Indicates whether the identity provider is enabled. Only one identity provider can be active at a time, such as SAML or OIDC. ' type: boolean example: true default: false title: Identity Provider Enabled Property IdentityProviderType: description: Specifies the type of identity provider. type: string example: oidc enum: - oidc - saml x-speakeasy-unknown-values: allow InvalidParameterStandard: type: object properties: field: type: string example: name readOnly: true rule: $ref: '#/components/schemas/InvalidRules' source: type: string example: body reason: type: string example: is a required field readOnly: true additionalProperties: false required: - field - reason SAMLIdentityProviderConfig: description: The identity provider that contains configuration data for the SAML authentication integration. type: object properties: idp_metadata_url: $ref: '#/components/schemas/SAMLIdentityProviderMetadataURL' idp_metadata_xml: $ref: '#/components/schemas/SAMLIdentityProviderMetadata' sp_metadata_url: type: string format: path example: /api/v2/developer/authenticate/saml/metadata readOnly: true sp_entity_id: description: The entity ID of the service provider (SP). type: string example: https://cloud.konghq.com/sp/00000000-0000-0000-0000-000000000000 readOnly: true login_url: description: The URL to redirect users to for initiating login with the identity provider. type: string example: https://cloud.konghq.com/login/the-saml-konnect-org readOnly: true callback_url: description: The path URL where the SAML identity provider sends authentication responses after successful login attempts. type: string format: path example: /api/v2/developer/authenticate/saml/acs readOnly: true additionalProperties: false title: SAML Identity Provider Config OIDCIdentityProviderConfig: description: The identity provider that contains configuration data for the OIDC authentication integration. type: object properties: issuer_url: $ref: '#/components/schemas/OIDCIdentityProviderIssuer' client_id: $ref: '#/components/schemas/OIDCIdentityProviderClientId' client_secret: $ref: '#/components/schemas/OIDCIdentityProviderClientSecret' scopes: $ref: '#/components/schemas/OIDCIdentityProviderScopes' claim_mappings: $ref: '#/components/schemas/OIDCIdentityProviderClaimMappings' additionalProperties: false required: - issuer_url - client_id title: OIDC Identity Provider Config OIDCIdentityProviderClientId: description: The client ID assigned to your application by the identity provider. type: string example: YOUR_CLIENT_ID title: OIDC Identity Provider Login Client Id Property OIDCIdentityProviderIssuer: description: The issuer URI of the identity provider. This is the URL where the provider's metadata can be obtained. type: string format: uri example: https://konghq.okta.com/oauth2/default title: OIDC Identity Provider Issuer Property NotFoundError: allOf: - $ref: '#/components/schemas/BaseError' - type: object properties: status: example: 404 title: example: Not Found type: example: https://httpstatuses.com/404 instance: example: kong:trace:1234567890 detail: example: Not found 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 responses: IdentityPermissionDenied: description: Permission denied content: application/problem+json: schema: $ref: '#/components/schemas/ForbiddenError' IdentityProviders: description: 'A collection of identity providers. This response contains a collection of identity providers, which may include both OIDC and SAML identity providers. ' content: application/json: schema: type: array items: $ref: '#/components/schemas/IdentityProvider' title: Identity Provider Collection Response Conflict: description: Conflict content: application/problem+json: schema: $ref: '#/components/schemas/ConflictError' AuthenticationSettings: description: Response for authentication settings endpoint content: application/json: schema: type: object properties: basic_auth_enabled: description: The organization has basic auth enabled. type: boolean example: true oidc_auth_enabled: description: The organization has OIDC disabled. type: boolean example: false saml_auth_enabled: description: The organization has SAML disabled. type: boolean example: false idp_mapping_enabled: description: IdP groups determine the Konnect teams a user has. type: boolean example: true konnect_mapping_enabled: description: A Konnect Identity Admin assigns teams to a user. type: boolean example: false title: Authentication Settings Response CreateIdentityProviderPermissionDenied: description: Permission denied content: application/problem+json: schema: $ref: '#/components/schemas/ForbiddenError' IdpTeamGroupMappingsCollection: description: A paginated collection of IDP team group mappings. content: application/json: schema: type: object properties: meta: $ref: '#/components/schemas/CursorMeta' data: type: array items: $ref: '#/components/schemas/IdpTeamGroupMapping' IdentityUnauthenticated: description: Unauthenticated content: application/problem+json: schema: $ref: '#/components/schemas/UnauthorizedError' IdpTeamGroupMapping: description: A single team group mapping. content: application/json: schema: $ref: '#/components/schemas/IdpTeamGroupMapping' Unauthorized: description: Unauthorized content: application/problem+json: schema: description: The error response object. type: object properties: status: description: The HTTP status code. type: integer example: 403 title: description: The Error Response. type: string example: Unauthorized instance: description: The Konnect traceback code. type: string example: konnect:trace:952172606039454040 detail: description: Details about the error response. type: string example: You do not have permission to perform this action $ref: '#/components/schemas/UnauthorizedError' title: Unauthorized Response IdPConfiguration: description: A get action response of the IdP configuration. content: application/json: schema: $ref: '#/components/schemas/IdP' TeamGroupMappingCollection: description: A paginated collection of mappings grouped by team_id. content: application/json: schema: type: object properties: meta: $ref: '#/components/schemas/PaginatedMeta' data: type: array items: $ref: '#/components/schemas/TeamGroupMapping' title: Team Group Mapping Collection Response IdentityBadRequest: description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' IdentityNotFound: description: Not Found content: application/problem+json: schema: $ref: '#/components/schemas/NotFoundError' IdentityProvider: description: 'An identity provider configuration. This response represents the configuration of a specific identity provider, which can be either OIDC or SAML. ' content: application/json: schema: $ref: '#/components/schemas/IdentityProvider' TeamMappingResponse: description: A paginated list response for a collection of team mappings. content: application/json: schema: type: object properties: meta: description: Contains pagination data. type: object properties: page: description: The page object. type: object properties: number: description: Page number. type: integer example: 1 size: description: Page size. type: integer example: 9 total: description: Total number of results. type: integer example: 5 data: type: array items: type: object properties: group: description: Group names. type: string example: 111(@&*$)(@*#_@(gfds re gdsf dfg team_ids: description: Team ID's that belong to the specified group. type: array items: type: string example: 3df49db8-39ff-490d-9fe1-251a3361fb13 title: Team Mapping Response TeamMappingCollection: description: A paginated list response for a collection of team mappings. content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/TeamMapping' title: Team Mapping Collection Response PreconditionFailed: description: Precondition Failed content: application/problem+json: schema: description: The error response object. type: object properties: status: description: The HTTP status code. type: integer example: 412 title: description: The error response code. type: string example: Precondition Failed instance: description: The Konnect traceback code. type: string example: konnect:trace:1896611024257578096 detail: description: Details about the error response. type: string example: IdP configuration not found title: Precondition Failed Response parameters: PageAfter: name: page[after] description: Request the next page of data, starting with the item after this parameter. required: false in: query allowEmptyValue: true schema: type: string example: ewogICJpZCI6ICJoZWxsbyB3b3JsZCIKfQ 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 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 PageBefore: name: page[before] description: Request the next page of data, starting with the item before this parameter. required: false in: query allowEmptyValue: true schema: type: string example: ewogICJpZCI6ICJoZWxsbyB3b3JsZCIKfQ requestBodies: UpdateTeamMappings: content: application/json: schema: type: object properties: mappings: description: The mappings object. type: array items: type: object properties: group: type: string team_ids: type: array items: type: string example: mappings: - group: Service Developers team_ids: - af91db4c-6e51-403e-a2bf-33d27ae50c0a description: The request schema for updating IdP team mappings. PatchTeamGroupMappings: content: application/json: schema: type: object properties: data: description: The IdP groups to map to the given team. type: array items: type: object properties: team_id: type: string format: uuid groups: type: array items: type: string example: data: - team_id: af91db4c-6e51-403e-a2bf-33d27ae50c0a groups: - Service Developers description: The request schema for a partial update of mappings from Konnect Teams to IdP Groups. UpdateIdPConfiguration: content: application/json: schema: type: object properties: issuer: type: string format: uri example: https://myidp.com/oauth2 login_path: type: string example: myapp client_id: type: string example: YOUR_CLIENT_ID client_secret: type: string example: YOUR_CLIENT_SECRET scopes: type: array items: type: string default: openid default: - email - openid - profile claim_mappings: type: object minProperties: 3 properties: name: type: string example: name default: name email: type: string example: email default: email groups: type: string example: custom-group-claim default: groups description: The request schema for the update IdP configuration request. UpdateIdentityProviderRequest: description: 'An object representing the configuration for updating an identity provider. This configuration may pertain to either an OIDC or a SAML identity provider. ' required: true content: application/json: schema: $ref: '#/components/schemas/UpdateIdentityProvider' UpdateAuthenticationSettings: description: The request schema to update an organization's authentication settings. content: application/json: schema: type: object properties: basic_auth_enabled: description: The organization has basic auth enabled. type: boolean example: true oidc_auth_enabled: description: The organization has OIDC disabled. type: boolean example: false saml_auth_enabled: description: The organization has SAML disabled. type: boolean example: false idp_mapping_enabled: description: Whether IdP groups determine the Konnect teams a user has. type: boolean example: true konnect_mapping_enabled: description: Whether a Konnect Identity Admin assigns teams to a user. type: boolean example: false CreateIdentityProviderRequest: description: 'An object representing the configuration for creating a new identity provider. This configuration may pertain to either an OIDC or a SAML identity provider. ' required: true content: application/json: schema: $ref: '#/components/schemas/CreateIdentityProvider' CreateIdpTeamGroupMappingRequest: description: Request to create an IDP team group mapping. required: true content: application/json: schema: type: object properties: team_id: description: The Konnect team ID to associate with the identity provider group. type: string format: uuid example: 6801e673-cc10-498a-94cd-4271de07a0d3 group: description: The identity provider group name. Group names are case sensitive. type: string example: Tech Leads required: - team_id - group securitySchemes: adminToken: in: header name: Kong-Admin-Token type: apiKey externalDocs: description: Documentation for Kong Gateway and its APIs url: https://developer.konghq.com