Skip to main content

Katanemo - identity, and fine-grained authorization for modern { API-first } software companies. (1.0.0)

Download OpenAPI specification:Download

With Katanemo developers can add support for users, enterprise SSO, machine keys and fine-grained authorization in minutes.

service

Katanemo's Service related APIs

Create Service

Create a Service in Katanemo. Once a service is created Katanemo identity and authorization capabilities on behalf of SaaS (API) Developers

Request Body schema: multipart/form-data

Details about the service, including the text-representation of the service APIs.

name
required
string

Service Name

description
string

Service Description

redirectUrl
required
string

Redirect URL after a successful login.

apiSpecFile
required
string <binary>

openapi service json or yaml file

authExclusionPaths
Array of strings

List of paths for which we do not require authentication

displayName
string

Display name of the service/company used in the Sign up, Login, Logout and other relevant branding pages

logoUrl
string

The URL for the service/company Logo used in the Sign up, Login, Logout and other relevant branding pages

detailsImageUrl
string

The URL of image showing details about the service to be displayed on the sign-up page.

termsUrl
string

The URL for the terms of the service

privacyUrl
string

The URL for the privacy of the service

docsUrl
string

The URL for the documentation of the service

Responses

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "serviceId": "string",
  • "serviceName": "string",
  • "description": "string",
  • "onboardURL": "string",
  • "redirectUrl": "string",
  • "apiSpecFileContents": "string",
  • "apis": [
    ],
  • "authExclusionPaths": [
    ],
  • "version": 0,
  • "updatedAt": 0,
  • "createdAt": 0,
  • "displayName": "string",
  • "logoUrl": "string",
  • "detailsImageUrl": "string",
  • "termsUrl": "string",
  • "privacyUrl": "string",
  • "docsUrl": "string"
}

List Services

List services that belong to a particular developer. Requires bearer token authorization

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Details for Katanemo AAA

Gets details about Katanemo's AAA SaaS service. Katanemo is powered by Katanemo, and our 3xA service uses the same core identity and authorization capabilities that we offer SaaS (API) developers

Responses

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "serviceId": "string",
  • "serviceName": "string",
  • "description": "string",
  • "onboardURL": "string",
  • "redirectUrl": "string",
  • "apiSpecFileContents": "string",
  • "apis": [
    ],
  • "authExclusionPaths": [
    ],
  • "version": 0,
  • "updatedAt": 0,
  • "createdAt": 0,
  • "displayName": "string",
  • "logoUrl": "string",
  • "detailsImageUrl": "string",
  • "termsUrl": "string",
  • "privacyUrl": "string",
  • "docsUrl": "string"
}

Get Service

Gets a Katanemo Service. The principal token must be present in the bearer header to retrieve the service details, unless the service is public

path Parameters
serviceId
required
string

Responses

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "serviceId": "string",
  • "serviceName": "string",
  • "description": "string",
  • "onboardURL": "string",
  • "redirectUrl": "string",
  • "apiSpecFileContents": "string",
  • "apis": [
    ],
  • "authExclusionPaths": [
    ],
  • "version": 0,
  • "updatedAt": 0,
  • "createdAt": 0,
  • "displayName": "string",
  • "logoUrl": "string",
  • "detailsImageUrl": "string",
  • "termsUrl": "string",
  • "privacyUrl": "string",
  • "docsUrl": "string"
}

Update Service

Update Service. Requires bearer token authorization for the caller updating the service

path Parameters
serviceId
required
string
Request Body schema: multipart/form-data

Service object of the service being updated.

name
string

Service Name

description
string

Service Description

redirectUrl
string

Redirect URL after a successful login.

apiSpecFile
string <binary>

openapi service json or yaml file

authExclusionPaths
Array of strings

List of paths for which we do not require authentication

displayName
string

Display name of the service/company used in the Sign up, Login, Logout and other relevant branding pages

logoUrl
string

The URL for the service/company Logo used in the Sign up, Login, Logout and other relevant branding pages

detailsImageUrl
string

The URL of image showing details about the service to be displayed on the sign-up page.

termsUrl
string

The URL for the terms of the service

privacyUrl
string

The URL for the privacy of the service

docsUrl
string

The URL for the documentatio of the service

Responses

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "serviceId": "string",
  • "serviceName": "string",
  • "description": "string",
  • "onboardURL": "string",
  • "redirectUrl": "string",
  • "apiSpecFileContents": "string",
  • "apis": [
    ],
  • "authExclusionPaths": [
    ],
  • "version": 0,
  • "updatedAt": 0,
  • "createdAt": 0,
  • "displayName": "string",
  • "logoUrl": "string",
  • "detailsImageUrl": "string",
  • "termsUrl": "string",
  • "privacyUrl": "string",
  • "docsUrl": "string"
}

Delete Service

Deletes a service. Note the delete operation is a 'soft' delete where by organizations can't access your service. Requires a bearer token to validate that the caller can delete the service.

path Parameters
serviceId
required
string

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": "string"
}

Add tags to a resource

Add tags (key/value pair) to a particular resource that is created for a service, for a particular organization account id.

path Parameters
serviceId
required
string
Request Body schema: application/json

Tags and resource id

serviceIdPath
string
serviceId
required
string
name
required
string
resourceId
required
string
accountId
string
token
string
required
object

Responses

Request samples

Content type
application/json
{
  • "serviceIdPath": "string",
  • "serviceId": "string",
  • "name": "string",
  • "resourceId": "string",
  • "accountId": "string",
  • "token": "string",
  • "tags": {
    }
}

Response samples

Content type
application/json
{
  • "serviceIdPath": "string",
  • "serviceId": "string",
  • "name": "string",
  • "resourceId": "string",
  • "accountId": "string",
  • "token": "string",
  • "tags": {
    }
}

Gets tags for a resource

Gets tags associated with a resource of a service

path Parameters
serviceId
required
string
Request Body schema: application/json

Tags and resource id

resourceName
required
string
resourceId
required
string
accountId
required
string

Responses

Request samples

Content type
application/json
{
  • "resourceName": "string",
  • "resourceId": "string",
  • "accountId": "string"
}

Response samples

Content type
application/json
{
  • "serviceIdPath": "string",
  • "serviceId": "string",
  • "name": "string",
  • "resourceId": "string",
  • "accountId": "string",
  • "token": "string",
  • "tags": {
    }
}

JWKS endpoint for Service

Gets public key that can be used to verify jwt token issued by Katanemo. This API does not require bearer authorization

path Parameters
serviceId
required
string

Responses

Response samples

Content type
application/json
{
  • "keys": [
    ]
}

sign-up/login

Katanemo's Login and sign-up APIs

Sign-up for Service

Onborad customers to a particular SaaS service managed by Katanemo. Generates email verification workflows and creates an organization for the customer subscribing to this particular service

path Parameters
serviceId
required
string
Request Body schema: application/json

Signup Info of the service developer or a service subscriber

emailAddress
required
string

Email address of user signing up for the service.

Responses

Request samples

Content type
application/json
{
  • "emailAddress": "string"
}

Response samples

Content type
application/json
{
  • "accountId": "string"
}

Confirm User

Confirm that the user belongs to the organization (email) they signed-up with. Used by Katanemo to verify developers signing-up for its 3xA service and for service developers on-boarding their customers (subscribers)

path Parameters
confirmationCode
required
string

Responses

Response samples

Content type
application/json
{
  • "session": "string",
  • "accountId": "string",
  • "emailAddress": "string",
  • "serviceId": "string"
}

Set Password

Allows the user to set password after verficiation via a session token.

path Parameters
serviceId
required
string
Request Body schema: application/json

Set password info

emailAddress
required
string

Email address of the user.

session
required
string

Session information of the user from confirm user respoonse.

password
required
string

Password of the user for the user to be used in future.

Responses

Request samples

Content type
application/json
{
  • "emailAddress": "string",
  • "session": "string",
  • "password": "string"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": "string"
}

Get password policy

Gets the password policy (length, characters, etc), to help the user set the correct password

path Parameters
serviceId
required
string

Responses

Response samples

Content type
application/json
{
  • "minimumLegnth": 0,
  • "requiredNumbers": true,
  • "requireSymbols": true,
  • "requireUpperCase": true,
  • "requireLowerCase": true
}

Login-init (SSO vs. Password)

Login-init helps developers determine if the user should be presented a SAML/SSO workflow or a user/password sign-in experience.

path Parameters
serviceId
required
string
Request Body schema: application/json

Login info (email) of the user

emailAddress
required
string

Email address of the developer account's user

state
string

Optional state parameters

Responses

Request samples

Content type
application/json
{
  • "emailAddress": "string",
  • "state": "string"
}

Response samples

Content type
application/json
{
  • "ssoEnabled": true,
  • "ssoRedirectUrl": "string"
}

Login (Password)

Login to any katanemo service. serviceId indicates service user is logging in to.

path Parameters
serviceId
required
string
Request Body schema: application/json

Login info of a user

emailAddress
required
string

Email address of the developer account's user

password
required
string

Password of the user

skipRedirect
boolean

By default login will redirect to service redirect URL, if this parameter is set as true then response will be returned.

state
string

Optional state parameter.

Responses

Request samples

Content type
application/json
{
  • "emailAddress": "string",
  • "password": "string",
  • "skipRedirect": true,
  • "state": "string"
}

Response samples

Content type
application/json
{
  • "token": "string"
}

access-control

Katamemo's APIs that help achieve customers and developers achieve fine-grained access controls (roles, abac, etc.)

Add tags to a resource

Add tags (key/value pair) to a particular resource that is created for a service, for a particular organization account id.

path Parameters
serviceId
required
string
Request Body schema: application/json

Tags and resource id

serviceIdPath
string
serviceId
required
string
name
required
string
resourceId
required
string
accountId
string
token
string
required
object

Responses

Request samples

Content type
application/json
{
  • "serviceIdPath": "string",
  • "serviceId": "string",
  • "name": "string",
  • "resourceId": "string",
  • "accountId": "string",
  • "token": "string",
  • "tags": {
    }
}

Response samples

Content type
application/json
{
  • "serviceIdPath": "string",
  • "serviceId": "string",
  • "name": "string",
  • "resourceId": "string",
  • "accountId": "string",
  • "token": "string",
  • "tags": {
    }
}

Gets tags for a resource

Gets tags associated with a resource of a service

path Parameters
serviceId
required
string
Request Body schema: application/json

Tags and resource id

resourceName
required
string
resourceId
required
string
accountId
required
string

Responses

Request samples

Content type
application/json
{
  • "resourceName": "string",
  • "resourceId": "string",
  • "accountId": "string"
}

Response samples

Content type
application/json
{
  • "serviceIdPath": "string",
  • "serviceId": "string",
  • "name": "string",
  • "resourceId": "string",
  • "accountId": "string",
  • "token": "string",
  • "tags": {
    }
}

Assign role

Assign role to an identity principal

Request Body schema: application/json

Role assignment

principalId
required
string
roleId
required
string

Responses

Request samples

Content type
application/json
{
  • "principalId": "string",
  • "roleId": "string"
}

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "serviceId": "string",
  • "userId": "string",
  • "isAdmin": true,
  • "isActive": true,
  • "token": "string",
  • "tags": {
    },
  • "roles": [
    ]
}

Assume role

Creates a token with requested roleId

Request Body schema: application/json

Role assignment

principalId
required
string
roleId
required
string

Responses

Request samples

Content type
application/json
{
  • "principalId": "string",
  • "roleId": "string"
}

Response samples

Content type
application/json
"string"

List Roles

Returns a list of all roles belonging to provided organization ID

path Parameters
accountId
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Creates Role

Creates a new Role

path Parameters
accountId
required
string
Request Body schema: application/json

Role to add to the system

accountId
string

AccountId

rolename
string

Role name

description
string

Role description

serviceId
string

ID of the service

object (Policy)

Responses

Request samples

Content type
application/json
{
  • "accountId": "string",
  • "rolename": "string",
  • "description": "string",
  • "serviceId": "string",
  • "policy": {
    }
}

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "roleId": "string",
  • "rolename": "string",
  • "description": "string",
  • "serviceId": "string",
  • "policy": {
    },
  • "version": 0,
  • "updatedAt": 0,
  • "createdAt": 0
}

Get Role

Gets a particular role for an organization

path Parameters
accountId
required
string
roleId
required
string

Responses

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "roleId": "string",
  • "rolename": "string",
  • "description": "string",
  • "serviceId": "string",
  • "policy": {
    },
  • "version": 0,
  • "updatedAt": 0,
  • "createdAt": 0
}

Update Role

Update role

path Parameters
accountId
required
string
roleId
required
string
Request Body schema: application/json

Role object that is being updated.

accountId
string

AccountId

rolename
string

Role name

description
string

Role description

serviceId
string

ID of the service

object (Policy)

Responses

Request samples

Content type
application/json
{
  • "accountId": "string",
  • "rolename": "string",
  • "description": "string",
  • "serviceId": "string",
  • "policy": {
    }
}

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "roleId": "string",
  • "rolename": "string",
  • "description": "string",
  • "serviceId": "string",
  • "policy": {
    },
  • "version": 0,
  • "updatedAt": 0,
  • "createdAt": 0
}

Create API Key

Creates a new client key for accessing a developers APIs

path Parameters
accountId
required
string
Request Body schema: application/json
defaultRoleId
required
string
clientName
required
string

Responses

Request samples

Content type
application/json
{
  • "defaultRoleId": "string",
  • "clientName": "string"
}

Response samples

Content type
application/json
{
  • "clientId": "string",
  • "clientSecret": "string"
}

List API Keys

List all client keys for an organization accessing a developers service

path Parameters
accountId
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get API Key

Get details of a particular API key for an organization.

path Parameters
accountId
required
string
keyId
required
string

Responses

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "roles": [
    ],
  • "clientName": "string",
  • "clientKeyId": "string",
  • "serviceId": "string",
  • "isActive": true
}

Delete API Key

Delete a particular API Key for an organization.

path Parameters
accountId
required
string
keyId
required
string

Responses

Response samples

Content type
application/json
"string"

Get Token

Returns a short-lived token for API key/secret pair. Tokens contain claims that identify what a principal can or cannot do.

Request Body schema: application/json
clientId
string
clientSecret
string

Responses

Request samples

Content type
application/json
{
  • "clientId": "string",
  • "clientSecret": "string"
}

Response samples

Content type
application/json
{
  • "accessToken": "string"
}

OAuth Token

Get an OAuth2.0 Token for an Authorization Code

Request Body schema: application/json
code
string
clientId
string
clientSecret
string

Responses

Request samples

Content type
application/json
{
  • "code": "string",
  • "clientId": "string",
  • "clientSecret": "string"
}

Response samples

Content type
application/json
{
  • "idToken": "string",
  • "accessToken": "string",
  • "expiresIn": 0,
  • "tokenType": "string"
}

OAuth Authorize

Used to initiate login workflow for user from application

Request Body schema: application/json

parameters requiired to determine where to take the user

clientId
required
string

ClientId of the developer

state
string

Optional state parameter to return to the Developer in case of a successful login

Responses

Request samples

Content type
application/json
{
  • "clientId": "string",
  • "state": "string"
}

ARC Authorize

Used by katanemo-arc to perform authroization on http requests

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": "string"
}

organization

Katanemo's Organization (SaaS customers) related APIs

List Organizations

Returns an object with information regarding an account which is present in the token

Responses

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "name": "string",
  • "adminAccount": "string",
  • "domainVerificationCode": "string",
  • "domain": "string",
  • "domainVerified": true,
  • "usersCount": 0,
  • "rolesCount": 0,
  • "oidcConnectionsCount": 0,
  • "samlConnectionsCount": 0,
  • "defaultConnection": "string",
  • "defaultConnectionType": "string",
  • "launchedServices": [
    ],
  • "subscribedServices": [
    ],
  • "subscribers": [
    ]
}

Get Organization

Returns an object with information regarding an account

path Parameters
accountId
required
string

Responses

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "name": "string",
  • "adminAccount": "string",
  • "domainVerificationCode": "string",
  • "domain": "string",
  • "domainVerified": true,
  • "usersCount": 0,
  • "rolesCount": 0,
  • "oidcConnectionsCount": 0,
  • "samlConnectionsCount": 0,
  • "defaultConnection": "string",
  • "defaultConnectionType": "string",
  • "launchedServices": [
    ],
  • "subscribedServices": [
    ],
  • "subscribers": [
    ]
}

Update Organization

Returns status code for successful or failed update.

path Parameters
accountId
required
string
Request Body schema: application/json

Update account object

name
required
string

Organization's account name to be dupated.

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": "string"
}

Verify Domain

Triggers the domain verification flow. If TXT record is created and has the correct verification code, the domain is verified.

path Parameters
accountId
required
string

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": "string"
}

List Users

Returns a list of all users belonging to provided organization ID

path Parameters
accountId
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Invite User

Creates a new User and triggers an email verification workflow, followed by set-password

path Parameters
accountId
required
string
Request Body schema: application/json

User information

accountId
required
string

Tenant name

userId
string

email address of the user

object
roles
Array of strings

Responses

Request samples

Content type
application/json
{
  • "accountId": "string",
  • "userId": "string",
  • "tags": {
    },
  • "roles": [
    ]
}

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "serviceId": "string",
  • "userId": "string",
  • "isAdmin": true,
  • "isActive": true,
  • "token": "string",
  • "tags": {
    },
  • "roles": [
    ]
}

Get User

Get a specific user for a particular organization

path Parameters
accountId
required
string
userId
required
string

Responses

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "serviceId": "string",
  • "userId": "string",
  • "isAdmin": true,
  • "isActive": true,
  • "token": "string",
  • "tags": {
    },
  • "roles": [
    ]
}

Update user

Updates a User account

path Parameters
userId
required
string
accountId
required
string
Request Body schema: application/json

User information

accountId
required
string

Tenant name

userId
string

email address of the user

object
roles
Array of strings

Responses

Request samples

Content type
application/json
{
  • "accountId": "string",
  • "userId": "string",
  • "tags": {
    },
  • "roles": [
    ]
}

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "serviceId": "string",
  • "userId": "string",
  • "isAdmin": true,
  • "isActive": true,
  • "token": "string",
  • "tags": {
    },
  • "roles": [
    ]
}

List Roles

Returns a list of all roles belonging to provided organization ID

path Parameters
accountId
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Creates Role

Creates a new Role

path Parameters
accountId
required
string
Request Body schema: application/json

Role to add to the system

accountId
string

AccountId

rolename
string

Role name

description
string

Role description

serviceId
string

ID of the service

object (Policy)

Responses

Request samples

Content type
application/json
{
  • "accountId": "string",
  • "rolename": "string",
  • "description": "string",
  • "serviceId": "string",
  • "policy": {
    }
}

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "roleId": "string",
  • "rolename": "string",
  • "description": "string",
  • "serviceId": "string",
  • "policy": {
    },
  • "version": 0,
  • "updatedAt": 0,
  • "createdAt": 0
}

Get Role

Gets a particular role for an organization

path Parameters
accountId
required
string
roleId
required
string

Responses

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "roleId": "string",
  • "rolename": "string",
  • "description": "string",
  • "serviceId": "string",
  • "policy": {
    },
  • "version": 0,
  • "updatedAt": 0,
  • "createdAt": 0
}

Update Role

Update role

path Parameters
accountId
required
string
roleId
required
string
Request Body schema: application/json

Role object that is being updated.

accountId
string

AccountId

rolename
string

Role name

description
string

Role description

serviceId
string

ID of the service

object (Policy)

Responses

Request samples

Content type
application/json
{
  • "accountId": "string",
  • "rolename": "string",
  • "description": "string",
  • "serviceId": "string",
  • "policy": {
    }
}

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "roleId": "string",
  • "rolename": "string",
  • "description": "string",
  • "serviceId": "string",
  • "policy": {
    },
  • "version": 0,
  • "updatedAt": 0,
  • "createdAt": 0
}

Create API Key

Creates a new client key for accessing a developers APIs

path Parameters
accountId
required
string
Request Body schema: application/json
defaultRoleId
required
string
clientName
required
string

Responses

Request samples

Content type
application/json
{
  • "defaultRoleId": "string",
  • "clientName": "string"
}

Response samples

Content type
application/json
{
  • "clientId": "string",
  • "clientSecret": "string"
}

List API Keys

List all client keys for an organization accessing a developers service

path Parameters
accountId
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get API Key

Get details of a particular API key for an organization.

path Parameters
accountId
required
string
keyId
required
string

Responses

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "roles": [
    ],
  • "clientName": "string",
  • "clientKeyId": "string",
  • "serviceId": "string",
  • "isActive": true
}

Delete API Key

Delete a particular API Key for an organization.

path Parameters
accountId
required
string
keyId
required
string

Responses

Response samples

Content type
application/json
"string"

identity

Katanemo's Identity related APIs

List Users

Returns a list of all users belonging to provided organization ID

path Parameters
accountId
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Invite User

Creates a new User and triggers an email verification workflow, followed by set-password

path Parameters
accountId
required
string
Request Body schema: application/json

User information

accountId
required
string

Tenant name

userId
string

email address of the user

object
roles
Array of strings

Responses

Request samples

Content type
application/json
{
  • "accountId": "string",
  • "userId": "string",
  • "tags": {
    },
  • "roles": [
    ]
}

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "serviceId": "string",
  • "userId": "string",
  • "isAdmin": true,
  • "isActive": true,
  • "token": "string",
  • "tags": {
    },
  • "roles": [
    ]
}

Get User

Get a specific user for a particular organization

path Parameters
accountId
required
string
userId
required
string

Responses

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "serviceId": "string",
  • "userId": "string",
  • "isAdmin": true,
  • "isActive": true,
  • "token": "string",
  • "tags": {
    },
  • "roles": [
    ]
}

Update user

Updates a User account

path Parameters
userId
required
string
accountId
required
string
Request Body schema: application/json

User information

accountId
required
string

Tenant name

userId
string

email address of the user

object
roles
Array of strings

Responses

Request samples

Content type
application/json
{
  • "accountId": "string",
  • "userId": "string",
  • "tags": {
    },
  • "roles": [
    ]
}

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "serviceId": "string",
  • "userId": "string",
  • "isAdmin": true,
  • "isActive": true,
  • "token": "string",
  • "tags": {
    },
  • "roles": [
    ]
}

Create API Key

Creates a new client key for accessing a developers APIs

path Parameters
accountId
required
string
Request Body schema: application/json
defaultRoleId
required
string
clientName
required
string

Responses

Request samples

Content type
application/json
{
  • "defaultRoleId": "string",
  • "clientName": "string"
}

Response samples

Content type
application/json
{
  • "clientId": "string",
  • "clientSecret": "string"
}

List API Keys

List all client keys for an organization accessing a developers service

path Parameters
accountId
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get API Key

Get details of a particular API key for an organization.

path Parameters
accountId
required
string
keyId
required
string

Responses

Response samples

Content type
application/json
{
  • "accountId": "string",
  • "roles": [
    ],
  • "clientName": "string",
  • "clientKeyId": "string",
  • "serviceId": "string",
  • "isActive": true
}

Delete API Key

Delete a particular API Key for an organization.

path Parameters
accountId
required
string
keyId
required
string

Responses

Response samples

Content type
application/json
"string"

access-logs

Katanemo's Access logs related APIs

List Access logs

Return a list of access logs that belong to a particular service and orgaization

path Parameters
serviceId
required
string
accountId
required
string
query Parameters
startTime
required
string

Start time of log entries in the format YYYY-MM-DDThh-mm-ss (e.g. 2023-01-15T15-28-58 which means 2023-01-15 15:28:58)

endTime
required
string

End time of log entries in the format YYYY-MM-DDThh-mm-ss (e.g. 2023-01-15T15-28-58 which means 2023-01-15 15:28:58)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

sso

Katanemo's Enterprise SSO APIs

List OIDC Connections

Returns a list of all OIDC connections belonging to provided organization

path Parameters
accountId
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Creates OIDC connection

Creates a new OIDC connection

path Parameters
accountId
required
string
Request Body schema: application/json

ODIC connection attributes

oidcConfigEndpoint
required
string

OIDC configuration URL

redirectURL
string

Callback URL for OIDC IdP

name
string

Name of the OIDC connection

clientId
required
string
clientSecret
required
string
nonce
string
state
string
accountId
string
serviceId
string
authorizationEndpoint
string
tokenEndpoint
string
userInfoEndpoint
string
issuerEndpoint
string
jwksEndpoint
string
connectionId
string

Responses

Request samples

Content type
application/json
{
  • "oidcConfigEndpoint": "string",
  • "redirectURL": "string",
  • "name": "string",
  • "clientId": "string",
  • "clientSecret": "string",
  • "nonce": "string",
  • "state": "string",
  • "accountId": "string",
  • "serviceId": "string",
  • "authorizationEndpoint": "string",
  • "tokenEndpoint": "string",
  • "userInfoEndpoint": "string",
  • "issuerEndpoint": "string",
  • "jwksEndpoint": "string",
  • "connectionId": "string"
}

Response samples

Content type
application/json
{
  • "oidcConfigEndpoint": "string",
  • "redirectURL": "string",
  • "name": "string",
  • "clientId": "string",
  • "clientSecret": "string",
  • "nonce": "string",
  • "state": "string",
  • "accountId": "string",
  • "serviceId": "string",
  • "authorizationEndpoint": "string",
  • "tokenEndpoint": "string",
  • "userInfoEndpoint": "string",
  • "issuerEndpoint": "string",
  • "jwksEndpoint": "string",
  • "connectionId": "string"
}

Update OIDC connection

Updates a OIDC connection

path Parameters
accountId
required
string
connectionId
required
string
Request Body schema: application/json

OIDC connection attributes

oidcConfigEndpoint
required
string

OIDC configuration URL

redirectURL
string

Callback URL for OIDC IdP

name
string

Name of the OIDC connection

clientId
required
string
clientSecret
required
string
nonce
string
state
string
accountId
string
serviceId
string
authorizationEndpoint
string
tokenEndpoint
string
userInfoEndpoint
string
issuerEndpoint
string
jwksEndpoint
string
connectionId
string

Responses

Request samples

Content type
application/json
{
  • "oidcConfigEndpoint": "string",
  • "redirectURL": "string",
  • "name": "string",
  • "clientId": "string",
  • "clientSecret": "string",
  • "nonce": "string",
  • "state": "string",
  • "accountId": "string",
  • "serviceId": "string",
  • "authorizationEndpoint": "string",
  • "tokenEndpoint": "string",
  • "userInfoEndpoint": "string",
  • "issuerEndpoint": "string",
  • "jwksEndpoint": "string",
  • "connectionId": "string"
}

Response samples

Content type
application/json
{
  • "oidcConfigEndpoint": "string",
  • "redirectURL": "string",
  • "name": "string",
  • "clientId": "string",
  • "clientSecret": "string",
  • "nonce": "string",
  • "state": "string",
  • "accountId": "string",
  • "serviceId": "string",
  • "authorizationEndpoint": "string",
  • "tokenEndpoint": "string",
  • "userInfoEndpoint": "string",
  • "issuerEndpoint": "string",
  • "jwksEndpoint": "string",
  • "connectionId": "string"
}

Get OIDC connection

Get details of an OIDC connection

path Parameters
accountId
required
string
connectionId
required
string

Responses

Response samples

Content type
application/json
{
  • "oidcConfigEndpoint": "string",
  • "redirectURL": "string",
  • "name": "string",
  • "clientId": "string",
  • "clientSecret": "string",
  • "nonce": "string",
  • "state": "string",
  • "accountId": "string",
  • "serviceId": "string",
  • "authorizationEndpoint": "string",
  • "tokenEndpoint": "string",
  • "userInfoEndpoint": "string",
  • "issuerEndpoint": "string",
  • "jwksEndpoint": "string",
  • "connectionId": "string"
}

Delete OIDC connection

Delete an OIDC connection

path Parameters
accountId
required
string
connectionId
required
string

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "errorCode": "string"
}

Trigger OIDC SSO

Triggers SSO for a particular OIDC connection. This would be initiated by the developer from applicatoon code

path Parameters
connectionId
required
string
accountId
required
string

Responses

Response samples

Content type
application/json
{
  • "code": 0,
  • "message": "string"
}

OIDC Callback

Handles OIDC login callback

path Parameters
accountId
required
string
connectionId
required
string
query Parameters
code
required
string

Authorization code returned by the OIDC provider

state
required
string

Authorization code returned by the OIDC provider

Responses

Response samples

Content type
application/json
{
  • "code": 0,
  • "message": "string"
}

List SAML Connections

Returns a list of all SAML connections belonging to provided organization

path Parameters
accountId
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Creates SAML connection

Creates a new SAML connection

path Parameters
accountId
required
string
Request Body schema: application/json

SAML connection attributes

connectionId
string
idProvider
required
string
state
string
name
string
defaultRoleId
required
string
loginLink
string
metadataLink
string
acsLink
string
audienceLink
string
Array of objects (AttributeRoleMapping)
rootURL
string
accountId
required
string
serviceId
required
string

Responses

Request samples

Content type
application/json
{
  • "connectionId": "string",
  • "idProvider": "string",
  • "state": "string",
  • "name": "string",
  • "defaultRoleId": "string",
  • "loginLink": "string",
  • "metadataLink": "string",
  • "acsLink": "string",
  • "audienceLink": "string",
  • "attributeRoleMappings": [
    ],
  • "rootURL": "string",
  • "accountId": "string",
  • "serviceId": "string"
}

Response samples

Content type
application/json
{
  • "connectionId": "string",
  • "idProvider": "string",
  • "state": "string",
  • "name": "string",
  • "defaultRoleId": "string",
  • "loginLink": "string",
  • "metadataLink": "string",
  • "acsLink": "string",
  • "audienceLink": "string",
  • "attributeRoleMappings": [
    ],
  • "rootURL": "string",
  • "accountId": "string",
  • "serviceId": "string"
}

Update SAML connection

Updates a SAML connection

path Parameters
accountId
required
string
connectionId
required
string
Request Body schema: application/json

SAML connection attributes

connectionId
string
idProvider
required
string
state
string
name
string
defaultRoleId
required
string
loginLink
string
metadataLink
string
acsLink
string
audienceLink
string
Array of objects (AttributeRoleMapping)
rootURL
string
accountId
required
string
serviceId
required
string

Responses

Request samples

Content type
application/json
{
  • "connectionId": "string",
  • "idProvider": "string",
  • "state": "string",
  • "name": "string",
  • "defaultRoleId": "string",
  • "loginLink": "string",
  • "metadataLink": "string",
  • "acsLink": "string",
  • "audienceLink": "string",
  • "attributeRoleMappings": [
    ],
  • "rootURL": "string",
  • "accountId": "string",
  • "serviceId": "string"
}

Response samples

Content type
application/json
{
  • "connectionId": "string",
  • "idProvider": "string",
  • "state": "string",
  • "name": "string",
  • "defaultRoleId": "string",
  • "loginLink": "string",
  • "metadataLink": "string",
  • "acsLink": "string",
  • "audienceLink": "string",
  • "attributeRoleMappings": [
    ],
  • "rootURL": "string",
  • "accountId": "string",
  • "serviceId": "string"
}

Get connection

Retreive a SAML connection

path Parameters
accountId
required
string
connectionId
required
string

Responses

Response samples

Content type
application/json
{
  • "connectionId": "string",
  • "idProvider": "string",
  • "state": "string",
  • "name": "string",
  • "defaultRoleId": "string",
  • "loginLink": "string",
  • "metadataLink": "string",
  • "acsLink": "string",
  • "audienceLink": "string",
  • "attributeRoleMappings": [
    ],
  • "rootURL": "string",
  • "accountId": "string",
  • "serviceId": "string"
}

MAP SAML Attributes

Creates a new attribute mapping for a SAML connection

path Parameters
accountId
required
string
connectionId
required
string
Request Body schema: application/json

SAML user attributes to role mapping

attribute
required
string
value
required
string
roleId
required
string

Responses

Request samples

Content type
application/json
{
  • "attribute": "string",
  • "value": "string",
  • "roleId": "string"
}

Response samples

Content type
application/json
{
  • "connectionId": "string",
  • "idProvider": "string",
  • "state": "string",
  • "name": "string",
  • "defaultRoleId": "string",
  • "loginLink": "string",
  • "metadataLink": "string",
  • "acsLink": "string",
  • "audienceLink": "string",
  • "attributeRoleMappings": [
    ],
  • "rootURL": "string",
  • "accountId": "string",
  • "serviceId": "string"
}

Triggers SAML SSO

Triggers SAML login for a particular connection. Account can have multiple SAML connections. It redirects to the login URL corresponding to a particular connection.

path Parameters
connectionId
required
string
accountId
required
string

Responses

Response samples

Content type
application/json
{
  • "code": 0,
  • "message": "string"
}

SAML Callback

Handle SAML login callback with SAML assertion. It can be passed as query parameter or payload.

path Parameters
accountId
required
string
connectionId
required
string
query Parameters
SAMLResponse
string

SAML response returned by the SAML IDP

Request Body schema: application/x-www-form-urlencoded
SAMLResponse
string

SAML response returned by the SAML IDP

Responses

Response samples

Content type
application/json
{
  • "code": 0,
  • "message": "string"
}

arc

Katanemo's Authorization Runtime Client APIs

Get Service Roles

path Parameters
serviceId
required
string
query Parameters
limit
integer

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Resource Tags

Get all resource tags associated with a Katanemo Service.

path Parameters
serviceId
required
string
query Parameters
limit
integer

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Initialize ARC Client

Initiative the Authorization Runtime Client with Developer API Keys

path Parameters
serviceId
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

health

Katanemo's Health APIs

Return Katanemo Health

This API returns the current health of the Katanemo Contorl Plane and Data Plane services.

Responses

Response samples

Content type
application/json
"string"