Indykite Authorization Policies API
KBAC and ContX IQ Policies CRUD operations
KBAC and ContX IQ Policies CRUD operations
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/indykite-authorization-policies-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
contact: {}
description: Config API supports CRUD operations on config objects.
title: Config REST Application Agent Credentials Authorization Policies API
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0
version: '1'
servers:
- url: https://eu.api.indykite.com/configs/v1
- url: https://us.api.indykite.com/configs/v1
security:
- BearerToken: []
tags:
- name: Authorization Policies
description: KBAC and ContX IQ Policies CRUD operations
x-displayName: Authorization Policies
paths:
/authorization-policies:
get:
tags:
- Authorization Policies
operationId: listAuthorizationPolicies
summary: List Authorization Policies
description: List Authorization Policies in provided Project with optional filtering.
parameters:
- description: Project ID where to search for Authorization Policies.
in: query
name: project_id
required: true
style: form
explode: true
schema:
type: string
- description: Full fetch of all data. If not provided, only metadata is returned.
in: query
name: full_fetch
required: false
style: form
explode: true
schema:
type: boolean
- description: List only objects, that contains given search query in name, display name or description
in: query
name: search
required: false
style: form
explode: true
schema:
type: string
- description: Type of policy to filter by, can be 'kbac' or 'ciq'.
in: query
name: type
required: false
style: form
explode: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/httpproxy.listConfigResponse-httpproxy_readAuthorizationPolicyResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.ErrorResponse'
'401':
description: Invalid ServiceAccount JWT in Authorization header
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.DetailedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.DetailedError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.DetailedError'
'422':
description: Unprocessable Entity
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.DetailedError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.ErrorResponse'
security:
- BearerToken: []
post:
tags:
- Authorization Policies
operationId: createAuthorizationPolicy
summary: Create Authorization Policy
description: Create Authorization Policy in provided Project.
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/httpproxy.createAuthorizationPolicyRequest'
description: Create Authorization Policy request
required: true
responses:
'201':
description: Created
headers:
etag:
description: Multiversion concurrency control version - etag
style: simple
explode: false
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/httpproxy.createConfigResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.ErrorResponse'
'401':
description: Invalid ServiceAccount JWT in Authorization header
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.DetailedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.DetailedError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.DetailedError'
'422':
description: Unprocessable Entity
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.DetailedError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.ErrorResponse'
x-codegen-request-body-name: request
security:
- BearerToken: []
/authorization-policies/{id}:
delete:
tags:
- Authorization Policies
operationId: deleteAuthorizationPolicy
summary: Delete Authorization Policy
description: Delete Authorization Policy by provided ID. You can optionally can specify etag in If-Match header.
parameters:
- description: Authorization Policy ID
in: path
name: id
required: true
style: simple
explode: false
schema:
type: string
- description: Multiversion concurrency control version - etag
in: header
name: If-Match
required: false
style: simple
explode: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/httpproxy.deleteConfigResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.ErrorResponse'
'401':
description: Invalid ServiceAccount JWT in Authorization header
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.DetailedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.DetailedError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.DetailedError'
'422':
description: Unprocessable Entity
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.DetailedError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.ErrorResponse'
security:
- BearerToken: []
get:
tags:
- Authorization Policies
operationId: getAuthorizationPolicy
summary: Read Authorization Policy
description: Read Authorization Policy identified by provided ID.
parameters:
- description: Authorization Policy ID or name
in: path
name: id
required: true
style: simple
explode: false
schema:
type: string
- description: Version of configuration to read. If not provided, latest version is returned.
in: query
name: version
required: false
style: form
explode: true
schema:
type: integer
- description: Parent project ID. Required when querying by name
in: query
name: location
required: false
style: form
explode: true
schema:
type: string
responses:
'200':
description: OK
headers:
etag:
description: Multiversion concurrency control version - etag
style: simple
explode: false
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/httpproxy.readAuthorizationPolicyResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.ErrorResponse'
'401':
description: Invalid ServiceAccount JWT in Authorization header
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.DetailedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.DetailedError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.DetailedError'
'422':
description: Unprocessable Entity
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.DetailedError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.ErrorResponse'
security:
- BearerToken: []
put:
tags:
- Authorization Policies
operationId: updateAuthorizationPolicy
summary: Update Authorization Policy
description: Update Authorization Policy identified by provided ID and optionally etag in If-Match header.
parameters:
- description: Authorization Policy ID
in: path
name: id
required: true
style: simple
explode: false
schema:
type: string
- description: Multiversion concurrency control version - etag.
in: header
name: If-Match
required: false
style: simple
explode: false
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/httpproxy.updateAuthorizationPolicyRequest'
description: Update Authorization Policy request.
required: true
responses:
'200':
description: OK
headers:
etag:
description: Multiversion concurrency control version - etag
style: simple
explode: false
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/httpproxy.updateConfigResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.ErrorResponse'
'401':
description: Invalid ServiceAccount JWT in Authorization header
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.DetailedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.DetailedError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.DetailedError'
'422':
description: Unprocessable Entity
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.DetailedError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/restapi.ErrorResponse'
x-codegen-request-body-name: request
security:
- BearerToken: []
components:
schemas:
httpproxy.listConfigResponse-httpproxy_readAuthorizationPolicyResponse:
properties:
data:
items:
$ref: '#/components/schemas/httpproxy.readAuthorizationPolicyResponse'
type: array
type: object
httpproxy.createConfigResponse:
properties:
create_time:
description: CreateTime specify when configuration was created.
type: string
created_by:
description: CreatedBy specify who created configuration.
type: string
id:
description: ID is globally unique identifier of created configuration.
type: string
update_time:
description: UpdateTime specify when configuration was last time updated.
type: string
updated_by:
description: UpdatedBy specify who last time updated configuration.
type: string
type: object
httpproxy.updateAuthorizationPolicyRequest:
properties:
description:
description: 'Description is optional description of configuration. When kept null, it is not changed.
But when set to empty string, it will be removed.'
maxLength: 65000
type: string
display_name:
description: 'DisplayName is optional human readable name of configuration. When kept null, it is not changed.
But when set to empty string, it will be removed.'
maxLength: 254
type: string
policy:
description: Policy is required to be valid JSON format of policy. Format differs based on policy type.
maxLength: 512000
type: string
status:
description: Status of policy specify whenever it is active or not. If status is DRAFT, it is possible to save invalid policy.
enum:
- ACTIVE
- INACTIVE
- DRAFT
type: string
tags:
items:
type: string
type: array
required:
- policy
- status
type: object
httpproxy.updateConfigResponse:
properties:
create_time:
description: CreateTime specify when configuration was created.
type: string
created_by:
description: CreatedBy specify who created configuration.
type: string
id:
description: ID of configuration to update.
type: string
update_time:
description: UpdateTime specify when configuration was last time updated.
type: string
updated_by:
description: UpdatedBy specify who last time updated configuration.
type: string
type: object
httpproxy.createAuthorizationPolicyRequest:
properties:
description:
description: Description is optional description of configuration.
maxLength: 65000
minLength: 2
type: string
display_name:
description: DisplayName is optional human readable name of configuration.
maxLength: 254
minLength: 2
type: string
name:
description: 'Name is URL friendly identifier of configuration, must be unique in scope of parent entity.
Also is immutable and cannot be changed later.'
type: string
policy:
description: Policy is required to be valid JSON format of policy. Format differs based on policy type.
maxLength: 512000
type: string
project_id:
description: 'ProjectID is identifier of Project, formerly known as Application space,
where to place this new configuration object. Must be in GID format.'
type: string
status:
description: Status of policy specify whenever it is active or not. If status is DRAFT, it is possible to save invalid policy.
enum:
- ACTIVE
- INACTIVE
- DRAFT
type: string
tags:
items:
type: string
type: array
required:
- name
- policy
- project_id
- status
type: object
restapi.DetailedError:
properties:
errors:
items:
type: string
type: array
message:
type: string
type: object
httpproxy.readAuthorizationPolicyResponse:
properties:
create_time:
description: CreateTime specify when configuration was created.
type: string
created_by:
description: CreatedBy specify who created configuration.
type: string
description:
description: Description is optional description of configuration.
type: string
display_name:
description: DisplayName is optional human readable name of configuration. Is equal to Name if not set.
type: string
id:
description: ID is globally unique identifier of configuration.
type: string
name:
description: Name is URL friendly identifier of configuration.
type: string
organization_id:
description: 'OrganizationID is globally unique identifier of organization, formerly known as customer,
under which configuration was created.'
type: string
policy:
type: string
project_id:
description: 'ProjectID is globally unique identifier of project, formerly known as application space,
under which configuration was created.
Might be empty, if configuration is created directly under organization.'
type: string
status:
type: string
tags:
items:
type: string
type: array
update_time:
description: UpdateTime specify when configuration was last time updated.
type: string
updated_by:
description: UpdatedBy specify who last time updated configuration.
type: string
type: object
restapi.ErrorResponse:
properties:
message:
example: Internal Server Error
type: string
type: object
httpproxy.deleteConfigResponse:
properties:
id:
description: ID of deleted configuration.
type: string
type: object
securitySchemes:
BearerToken:
type: http
scheme: bearer
bearerFormat: JWT
description: Bearer token generated from Service Account credentials.
x-original-swagger-version: '2.0'