Interop API

List Actors

get

Get a list of actors installed in Interop Clouds for accounts visible to you. This API is used to obtain coordinates and credentials essential for interacting with Integrations and other actors.

Authorizations
Query parameters
pageinteger · int32Optional

Specify the page number (defaults to 0)

page_sizeinteger · int32Optional

Specify the page_size (defaults to the maximum page size)

Responses
200
Actors response
application/json
Responseall of
get
GET /v2/interop/actors HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

Actors response

{
  "data": [
    null,
    {
      "name": "text",
      "type": "connector",
      "connector_type": "text",
      "auth": {
        "type": "text",
        "client_id": "text",
        "client_secret": "password",
        "updated_at": "2025-07-04T16:18:06.444Z"
      }
    }
  ]
}

List Interop Clouds

get

Get a list of Interop Clouds for accounts visible to you.

Authorizations
Query parameters
pageinteger · int32Optional

Specify the page number (defaults to 0)

page_sizeinteger · int32Optional

Specify the page_size (defaults to the maximum page size)

Responses
200
Clouds response
application/json
Responseall of
get
GET /v2/interop/clouds HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

Clouds response

{
  "data": [
    null,
    {
      "name": "text",
      "userdata": "text",
      "generation": 1
    }
  ]
}

Create an Interop Cloud

post
Authorizations
Body
all ofOptional
Responses
200
Success
application/json
Responseall of
post
POST /v2/interop/clouds HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 48

{
  "name": "text",
  "userdata": "text",
  "generation": 1
}
{
  "data": {
    "name": "text",
    "userdata": "text",
    "generation": 1
  }
}
get

Get a list of Interop Clouds matching the search criteria.

Authorizations
Query parameters
generationinteger · int32Optional

List all Clouds of a matching generation

userdatastringOptional

List all Clouds with matching userdata

namestringOptional

List all Clouds with a matching name

pageinteger · int32Optional

Specify the page number (defaults to 0)

page_sizeinteger · int32Optional

Specify the page_size (defaults to the maximum page size)

Responses
200
Clouds response
application/json
Responseall of
get
GET /v2/interop/clouds/search HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

Clouds response

{
  "data": [
    null,
    {
      "name": "text",
      "userdata": "text",
      "generation": 1
    }
  ]
}

Find an Interop Cloud

get

Find an Interop Cloud by identifier

Authorizations
Path parameters
idstring · uuidRequired

id of the object

Responses
200
Cloud response
application/json
Responseall of
get
GET /v2/interop/clouds/{id} HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

Cloud response

{
  "data": {
    "name": "text",
    "userdata": "text",
    "generation": 1
  }
}

Delete an Interop Cloud

delete
Authorizations
Path parameters
idstring · uuidRequired

id of the Cloud to delete

Responses
204
Success
delete
DELETE /v2/interop/clouds/{id} HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
204

Success

No content

List all Actors in an Interop Cloud

get
Authorizations
Path parameters
idstring · uuidRequired

id of the object

Query parameters
include_credentialsbooleanOptional

Include actor credentials

pageinteger · int32Optional

Specify the page number (defaults to 0)

page_sizeinteger · int32Optional

Specify the page_size (defaults to the maximum page size)

Responses
200
Actors response
application/json
Responseall of
get
GET /v2/interop/clouds/{id}/actors HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

Actors response

{
  "data": [
    null,
    {
      "name": "text",
      "type": "connector",
      "connector_type": "text",
      "auth": {
        "type": "text",
        "client_id": "text",
        "client_secret": "password",
        "updated_at": "2025-07-04T16:18:06.444Z"
      }
    }
  ]
}

List Integrations

get

List all Integrations

Authorizations
Query parameters
namestringOptional

Find an Integration by name

pageinteger · int32Optional

Specify the page number (defaults to 0)

page_sizeinteger · int32Optional

Specify the page_size (defaults to the maximum page size)

Responses
200
Integrations response
application/json
Responseall of
get
GET /v2/interop/integrations HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

Integrations response

{
  "data": [
    null,
    {
      "name": "text",
      "title": "text",
      "version": "text"
    }
  ]
}

Create Integration

post

Create an Integration

Authorizations
Body
all ofOptional
Responses
200
Success
application/json
Responseall of
post
POST /v2/interop/integrations HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 47

{
  "name": "text",
  "title": "text",
  "version": "text"
}
{
  "data": {
    "name": "text",
    "title": "text",
    "version": "text"
  }
}

List Integration Versions

get

List the versions of an Integration. Each version is described by an Integration Blueprint.

Authorizations
Path parameters
idstring · uuidRequired

id of the Integration

Query parameters
pageinteger · int32Optional

Specify the page number (defaults to 0)

page_sizeinteger · int32Optional

Specify the page_size (defaults to the maximum page size)

Responses
200
Integration Versions response
application/json
Responseall of
get
GET /v2/interop/integrations/{id}/versions HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

Integration Versions response

{
  "data": [
    null,
    {
      "version": "text",
      "title": "text",
      "release_state": "unspecified"
    }
  ]
}

Create Integration Version

post

Create a new version of an Integration

Authorizations
Path parameters
idstring · uuidRequired

id of the Integration

Body
stringOptional
Responses
200
Success
application/json
Responseall of
post
POST /v2/interop/integrations/{id}/versions HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/xml
Accept: */*
Content-Length: 6

"text"
{
  "data": {
    "version": "text",
    "title": "text",
    "release_state": "unspecified"
  }
}

Update Integration Version

patch
Authorizations
Path parameters
idstring · uuidRequired

id of the Integration to update

versionstringRequired

version to update

Body
all ofOptional
Responses
204
No content
patch
PATCH /v2/interop/integrations/{id}/versions/{version} HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 63

{
  "version": "text",
  "title": "text",
  "release_state": "unspecified"
}
204

No content

No content

Delete Integration Version

delete
Authorizations
Path parameters
idstring · uuidRequired

id of the Integration to update

versionstringRequired

version to delete

Responses
204
No content
delete
DELETE /v2/interop/integrations/{id}/versions/{version} HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
204

No content

No content

Update Integration Blueprint

put
Authorizations
Path parameters
idstring · uuidRequired

id of the Integration to update

versionstringRequired

version to update

Body
stringOptional
Responses
200
IntegrationVersion response
application/json
Responseall of
put
PUT /v2/interop/integrations/{id}/versions/{version}/blueprint HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/xml
Accept: */*
Content-Length: 6

"text"
200

IntegrationVersion response

{
  "data": {
    "version": "text",
    "title": "text",
    "release_state": "unspecified"
  }
}

Find an Integration

get
Authorizations
Path parameters
idstring · uuidRequired

id of the Integration to find

Responses
200
Integration response
application/json
Responseall of
get
GET /v2/interop/integrations/{id} HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

Integration response

{
  "data": {
    "name": "text",
    "title": "text",
    "version": "text"
  }
}

Update Integration

patch
Authorizations
Path parameters
idstring · uuidRequired

id of the Integration to update

Body
all ofOptional
Responses
204
No content
patch
PATCH /v2/interop/integrations/{id} HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 47

{
  "name": "text",
  "title": "text",
  "version": "text"
}
204

No content

No content

Delete an Integration

delete
Authorizations
Path parameters
idstring · uuidRequired

id of the Integration to delete

Responses
204
Success
delete
DELETE /v2/interop/integrations/{id} HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
204

Success

No content

List Interop Tenants

get

Get a list of TenantInfo representing your licensed and authorized Integration tenants.

Authorizations
Query parameters
accountsstring · uuid[] · min: 1Optional

Optionally restrict the returned list of tenants to only those for the specified Accounts.

integrationstring[] · min: 1Optional

Optionally restrict the returned list of tenants to only those for the specified Integration or Integrations. Use this parameter when you have multiple Integrations all serviced by the same client application. When omitted, includes tenants of all Integrations owned by your account.

pageinteger · int32Optional

Specify the page number (defaults to 0)

page_sizeinteger · int32Optional

Specify the page_size (defaults to the maximum page size)

Responses
200
TenantInfos response
application/json
Responseall of
get
GET /v2/interop/tenants HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

TenantInfos response

{
  "data": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "name": "text",
      "actor_id": "123e4567-e89b-12d3-a456-426614174000",
      "account": null,
      "cloud": null,
      "integration": null,
      "auth": {
        "type": "text",
        "client_id": "text",
        "client_secret": "password",
        "updated_at": "2025-07-04T16:18:06.444Z"
      },
      "app_auth": {
        "scheme": "oauth2",
        "token": "text",
        "refresh_token": "text",
        "client_id": "text",
        "client_secret": "text",
        "username": "text",
        "password": "text",
        "api_key": "text"
      },
      "lti_developer_id": "text"
    }
  ]
}

Find Interop Tenant

get
Authorizations
Path parameters
idstring · uuidRequired

id of the TenantInfo to find

Responses
200
TenantInfo response
application/json
Responseall of
get
GET /v2/interop/tenants/{id} HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

TenantInfo response

{
  "data": {
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "name": "text",
    "actor_id": "123e4567-e89b-12d3-a456-426614174000",
    "account": null,
    "cloud": null,
    "integration": null,
    "auth": {
      "type": "text",
      "client_id": "text",
      "client_secret": "password",
      "updated_at": "2025-07-04T16:18:06.444Z"
    },
    "app_auth": {
      "scheme": "oauth2",
      "token": "text",
      "refresh_token": "text",
      "client_id": "text",
      "client_secret": "text",
      "username": "text",
      "password": "text",
      "api_key": "text"
    },
    "lti_developer_id": "text"
  }
}

Find Interop Tenant by actor authentication credentials

get
Authorizations
Responses
200
TenantInfo response
application/json
Responseall of
get
GET /v2/interop/tenant HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

TenantInfo response

{
  "data": {
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "name": "text",
    "actor_id": "123e4567-e89b-12d3-a456-426614174000",
    "account": null,
    "cloud": null,
    "integration": null,
    "auth": {
      "type": "text",
      "client_id": "text",
      "client_secret": "password",
      "updated_at": "2025-07-04T16:18:06.444Z"
    },
    "app_auth": {
      "scheme": "oauth2",
      "token": "text",
      "refresh_token": "text",
      "client_id": "text",
      "client_secret": "text",
      "username": "text",
      "password": "text",
      "api_key": "text"
    },
    "lti_developer_id": "text"
  }
}

Get tenant state by actor authentication credentials

get
Authorizations
Responses
200
TenantState response
application/json
Responseall of
get
GET /v2/interop/tenant/state HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

TenantState response

{
  "data": {
    "rollover_mode_enabled": true,
    "synchronization_suspended": true,
    "setup_mode_enabled": true,
    "mass_change_pending": true
  }
}

List Scoping Schools

get

Get the list of ScopingSchools that define how to scope this tenant's repository by school

Authorizations
Query parameters
pageinteger · int32Optional

Specify the page number (defaults to 0)

page_sizeinteger · int32Optional

Specify the page_size (defaults to the maximum page size)

Responses
200
ScopingSchools response
application/json
Responseall of
get
GET /v2/interop/tenant/scoping/schools HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

ScopingSchools response

{
  "data": [
    {
      "account_id": "123e4567-e89b-12d3-a456-426614174000",
      "tenant_id": "123e4567-e89b-12d3-a456-426614174000",
      "school_id": "123e4567-e89b-12d3-a456-426614174000",
      "school_ref_id": "text",
      "name": "text",
      "local_id": "text",
      "keywords": "text",
      "selected": true
    }
  ]
}

Create Scoping Schools

post
Authorizations
Query parameters
replacebooleanOptional

true to replace existing Scoping Schools, false to append to existing Scoping Schools

Default: true
Body
Responses
200
Success
application/json
Responseall of
post
POST /v2/interop/tenant/scoping/schools HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 255

{
  "data": [
    {
      "account_id": "123e4567-e89b-12d3-a456-426614174000",
      "tenant_id": "123e4567-e89b-12d3-a456-426614174000",
      "school_id": "123e4567-e89b-12d3-a456-426614174000",
      "school_ref_id": "text",
      "name": "text",
      "local_id": "text",
      "keywords": "text",
      "selected": true
    }
  ]
}
{
  "data": {
    "account_id": "123e4567-e89b-12d3-a456-426614174000",
    "tenant_id": "123e4567-e89b-12d3-a456-426614174000",
    "school_id": "123e4567-e89b-12d3-a456-426614174000",
    "school_ref_id": "text",
    "name": "text",
    "local_id": "text",
    "keywords": "text",
    "selected": true
  }
}

Delete Scoping Schools

delete
Authorizations
Responses
204
Success
delete
DELETE /v2/interop/tenant/scoping/schools HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
204

Success

No content

Find Scoping School

get
Authorizations
Path parameters
idstring · uuidRequired

id of the ScopingSchool to find

Responses
200
ScopingSchool response
application/json
Responseall of
get
GET /v2/interop/tenant/scoping/schools/{id} HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

ScopingSchool response

{
  "data": {
    "account_id": "123e4567-e89b-12d3-a456-426614174000",
    "tenant_id": "123e4567-e89b-12d3-a456-426614174000",
    "school_id": "123e4567-e89b-12d3-a456-426614174000",
    "school_ref_id": "text",
    "name": "text",
    "local_id": "text",
    "keywords": "text",
    "selected": true
  }
}

Update Scoping School

put
Authorizations
Path parameters
idstring · uuidRequired

id of the Scoping School to update

Body
account_idstring · uuidOptional
tenant_idstring · uuidOptional
school_idstring · uuidOptional
school_ref_idstringOptional
namestringOptional
local_idstringOptional
keywordsstringOptional
selectedbooleanOptional
Responses
200
ScopingSchool response
application/json
Responseall of
put
PUT /v2/interop/tenant/scoping/schools/{id} HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 244

{
  "account_id": "123e4567-e89b-12d3-a456-426614174000",
  "tenant_id": "123e4567-e89b-12d3-a456-426614174000",
  "school_id": "123e4567-e89b-12d3-a456-426614174000",
  "school_ref_id": "text",
  "name": "text",
  "local_id": "text",
  "keywords": "text",
  "selected": true
}
200

ScopingSchool response

{
  "data": {
    "account_id": "123e4567-e89b-12d3-a456-426614174000",
    "tenant_id": "123e4567-e89b-12d3-a456-426614174000",
    "school_id": "123e4567-e89b-12d3-a456-426614174000",
    "school_ref_id": "text",
    "name": "text",
    "local_id": "text",
    "keywords": "text",
    "selected": true
  }
}

Delete Scoping School

delete
Authorizations
Path parameters
idstring · uuidRequired

id of the ScopingSchool

Responses
204
Success
delete
DELETE /v2/interop/tenant/scoping/schools/{id} HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
204

Success

No content

List Scoping Courses

get

Get the list of Scoping Courses to apply to this tenant's repository

Authorizations
Query parameters
pageinteger · int32Optional

Specify the page number (defaults to 0)

page_sizeinteger · int32Optional

Specify the page_size (defaults to the maximum page size)

Responses
200
ScopingCourses response
application/json
Responseall of
get
GET /v2/interop/tenant/scoping/courses HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

ScopingCourses response

{
  "data": [
    {
      "account_id": "123e4567-e89b-12d3-a456-426614174000",
      "tenant_id": "123e4567-e89b-12d3-a456-426614174000",
      "course_id": "123e4567-e89b-12d3-a456-426614174000",
      "course_ref_id": "text",
      "school_id": "123e4567-e89b-12d3-a456-426614174000",
      "school_ref_id": "text",
      "name": "text",
      "local_id": "text",
      "keywords": "text",
      "selected": true
    }
  ]
}

Create Scoping Courses

post
Authorizations
Query parameters
replacebooleanOptional

true to replace existing Scoping Courses, false to append to existing Scoping Courses

Default: true
Body
Responses
200
Success
application/json
Responseall of
post
POST /v2/interop/tenant/scoping/courses HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 329

{
  "data": [
    {
      "account_id": "123e4567-e89b-12d3-a456-426614174000",
      "tenant_id": "123e4567-e89b-12d3-a456-426614174000",
      "course_id": "123e4567-e89b-12d3-a456-426614174000",
      "course_ref_id": "text",
      "school_id": "123e4567-e89b-12d3-a456-426614174000",
      "school_ref_id": "text",
      "name": "text",
      "local_id": "text",
      "keywords": "text",
      "selected": true
    }
  ]
}
{
  "data": {
    "account_id": "123e4567-e89b-12d3-a456-426614174000",
    "tenant_id": "123e4567-e89b-12d3-a456-426614174000",
    "course_id": "123e4567-e89b-12d3-a456-426614174000",
    "course_ref_id": "text",
    "school_id": "123e4567-e89b-12d3-a456-426614174000",
    "school_ref_id": "text",
    "name": "text",
    "local_id": "text",
    "keywords": "text",
    "selected": true
  }
}

Delete Scoping Courses

delete
Authorizations
Responses
204
Success
delete
DELETE /v2/interop/tenant/scoping/courses HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
204

Success

No content

Find Scoping Course

get
Authorizations
Path parameters
idstring · uuidRequired

id of the ScopingCourse to find

Responses
200
ScopingCourse response
application/json
Responseall of
get
GET /v2/interop/tenant/scoping/courses/{id} HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

ScopingCourse response

{
  "data": {
    "account_id": "123e4567-e89b-12d3-a456-426614174000",
    "tenant_id": "123e4567-e89b-12d3-a456-426614174000",
    "course_id": "123e4567-e89b-12d3-a456-426614174000",
    "course_ref_id": "text",
    "school_id": "123e4567-e89b-12d3-a456-426614174000",
    "school_ref_id": "text",
    "name": "text",
    "local_id": "text",
    "keywords": "text",
    "selected": true
  }
}

Update Scoping Course

put
Authorizations
Path parameters
idstring · uuidRequired

id of the Scoping Course to update

Body
account_idstring · uuidOptional
tenant_idstring · uuidOptional
course_idstring · uuidOptional
course_ref_idstringOptional
school_idstring · uuidOptional
school_ref_idstringOptional
namestringOptional
local_idstringOptional
keywordsstringOptional
selectedbooleanOptional
Responses
200
ScopingCourse response
application/json
Responseall of
put
PUT /v2/interop/tenant/scoping/courses/{id} HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 318

{
  "account_id": "123e4567-e89b-12d3-a456-426614174000",
  "tenant_id": "123e4567-e89b-12d3-a456-426614174000",
  "course_id": "123e4567-e89b-12d3-a456-426614174000",
  "course_ref_id": "text",
  "school_id": "123e4567-e89b-12d3-a456-426614174000",
  "school_ref_id": "text",
  "name": "text",
  "local_id": "text",
  "keywords": "text",
  "selected": true
}
200

ScopingCourse response

{
  "data": {
    "account_id": "123e4567-e89b-12d3-a456-426614174000",
    "tenant_id": "123e4567-e89b-12d3-a456-426614174000",
    "course_id": "123e4567-e89b-12d3-a456-426614174000",
    "course_ref_id": "text",
    "school_id": "123e4567-e89b-12d3-a456-426614174000",
    "school_ref_id": "text",
    "name": "text",
    "local_id": "text",
    "keywords": "text",
    "selected": true
  }
}

Delete Scoping Course

delete
Authorizations
Path parameters
idstring · uuidRequired

id of the ScopingCourse

Responses
204
Success
delete
DELETE /v2/interop/tenant/scoping/courses/{id} HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
204

Success

No content

Get Tenant Application

get

The endpoint returns tenant application's authentication parameters (defined in the integration blueprint), as well as configuration options. The tenant (identified by actor authentication credentials) must be an integration. The response should be cached by driver implementations in memory.

Authorizations
Responses
200
Tenant Application Response
application/json
get
GET /v2/interop/tenant/application HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

Tenant Application Response

{
  "data": {
    "account_id": "123e4567-e89b-12d3-a456-426614174000",
    "tenant_id": "123e4567-e89b-12d3-a456-426614174000",
    "deliver_tasks": true,
    "auth_type": "unspecified",
    "auth_state": "unspecified",
    "options": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    },
    "auth_props": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    },
    "auth_session_id_pending": "123e4567-e89b-12d3-a456-426614174000",
    "auth_message": "text",
    "auth_props_pending": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    },
    "auth_state_pending": "unspecified"
  }
}

Update Tenant Application

patch

Intended to be used during the authentication setup workflow (if there is authentication defined in the integration blueprint). The tenant (identified by actor authentication credentials) must be an integration. Can be updated and only when the pending auth status of the application is 'updating'). Only a subset of the Tenant Application configuration may be changed: auth message, pending auth state (can only be set to 'confirmed'/'error'), pending auth attributes.

Authorizations
Body
account_idstring · uuidRead-onlyOptional
tenant_idstring · uuidRead-onlyOptional
deliver_tasksbooleanRead-onlyOptional
auth_typestring · enumRead-onlyOptionalPossible values:
auth_statestring · enumRead-onlyOptionalPossible values:
auth_session_id_pendingstring · uuid | nullableRead-onlyOptional
auth_messagestring | nullableOptional
auth_state_pendingstring · enumOptionalPossible values:
Responses
204
Success
patch
PATCH /v2/interop/tenant/application HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 114

{
  "auth_message": "text",
  "auth_props_pending": {
    "ANY_ADDITIONAL_PROPERTY": "text"
  },
  "auth_state_pending": "unspecified"
}
204

Success

No content

List Rollovers

get

Get the list of rollovers for the tenant. The tenant is identified by actor authentication credentials.

Authorizations
Query parameters
sortstring · enumOptional

Sorting criteria. Prefix with - for descending order.

Example: -namePossible values:
pageinteger · int32Optional

Specify the page number (defaults to 0)

page_sizeinteger · int32Optional

Specify the page_size (defaults to the maximum page size)

Responses
200
Rollovers response
application/json
Responseall of
get
GET /v2/interop/tenant/rollovers HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

Rollovers response

{
  "data": [
    null,
    {
      "name": "text",
      "type": "new_year",
      "start_date": "2025-07-04T16:18:06.444Z",
      "end_date": "2025-07-04T16:18:06.444Z",
      "metadata": {
        "created": null,
        "updated": null
      },
      "status": "upcoming",
      "status_change_failure_count": 1,
      "failure_reason": "alreadyInRolloverMode"
    }
  ]
}

Create a rollover for the tenant identified by actor authentication credentials.

post
Authorizations
Body
namestringRead-onlyRequired
start_datestring · date-timeRead-onlyRequired
end_datestring · date-timeRead-onlyRequired
typestring · enumRequiredPossible values:
statusstring · enumRequiredPossible values:
cloud_idstring · uuidRequired
actor_idstring · uuidOptional
metadataobjectOptional
Responses
201
Rollover response
application/json
Responseall of
post
POST /v2/interop/tenant/rollovers HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 182

{
  "type": "new_year",
  "status": "upcoming",
  "cloud_id": "123e4567-e89b-12d3-a456-426614174000",
  "actor_id": "123e4567-e89b-12d3-a456-426614174000",
  "metadata": {
    "created": null,
    "updated": null
  }
}
{
  "data": {
    "name": "text",
    "type": "new_year",
    "start_date": "2025-07-04T16:18:06.444Z",
    "end_date": "2025-07-04T16:18:06.444Z",
    "metadata": {
      "created": null,
      "updated": null
    },
    "status": "upcoming",
    "status_change_failure_count": 1,
    "failure_reason": "alreadyInRolloverMode"
  }
}

Count Rollovers

get

Get the count of rollovers for the tenant. The tenant is identified by actor authentication credentials.

Authorizations
Responses
200
Count of Rollovers
application/json
Responseinteger
get
GET /v2/interop/tenant/rollovers/count HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

Count of Rollovers

1

Get a Rollover

get

Get a rollover for the tenant. The tenant is identified by actor authentication credentials.

Authorizations
Path parameters
idstring · uuidRequired

id of the rollover to query

Responses
200
Rollover response
application/json
get
GET /v2/interop/tenant/rollovers/{id} HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

Rollover response

{
  "data": {
    "name": "text",
    "type": "new_year",
    "start_date": "2025-07-04T16:18:06.444Z",
    "end_date": "2025-07-04T16:18:06.444Z",
    "metadata": {
      "created": null,
      "updated": null
    },
    "status": "upcoming",
    "status_change_failure_count": 1,
    "failure_reason": "alreadyInRolloverMode"
  }
}

Update a rollover for the tenant identified by actor authentication credentials.

put
Authorizations
Path parameters
idstring · uuidRequired

id of the rollover to update

Body
namestringRead-onlyRequired
start_datestring · date-timeRead-onlyRequired
end_datestring · date-timeRead-onlyRequired
typestring · enumRequiredPossible values:
statusstring · enumRequiredPossible values:
cloud_idstring · uuidRequired
actor_idstring · uuidOptional
metadataobjectOptional
Responses
200
Rollover response
application/json
Responseall of
put
PUT /v2/interop/tenant/rollovers/{id} HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 182

{
  "type": "new_year",
  "status": "upcoming",
  "cloud_id": "123e4567-e89b-12d3-a456-426614174000",
  "actor_id": "123e4567-e89b-12d3-a456-426614174000",
  "metadata": {
    "created": null,
    "updated": null
  }
}
{
  "data": {
    "name": "text",
    "type": "new_year",
    "start_date": "2025-07-04T16:18:06.444Z",
    "end_date": "2025-07-04T16:18:06.444Z",
    "metadata": {
      "created": null,
      "updated": null
    },
    "status": "upcoming",
    "status_change_failure_count": 1,
    "failure_reason": "alreadyInRolloverMode"
  }
}

Delete a rollover for the tenant identified by actor authentication credentials.

delete
Authorizations
Path parameters
idstring · uuidRequired

id of the rollover to delete

Responses
204
Rollover deleted
delete
DELETE /v2/interop/tenant/rollovers/{id} HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*

No content

List Schedules

get

Get the list of schedules for the tenant. The tenant is identified by actor authentication credentials.

Authorizations
Query parameters
pageinteger · int32Optional

Specify the page number (defaults to 0)

page_sizeinteger · int32Optional

Specify the page_size (defaults to the maximum page size)

Responses
200
Schedules response
application/json
Responseall of
get
GET /v2/interop/tenant/schedules HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

Schedules response

{
  "data": [
    null,
    {
      "type": "unspecified",
      "last_executed_at": "2025-07-04T16:18:06.444Z",
      "enabled": true,
      "hour": 1,
      "days": "text",
      "metadata": null
    }
  ]
}

Create a Schedule for the tenant identified by actor authentication credentials. Only the `hour` (understood in UTC) field is expected, only creating collection schedules is possible.

post
Authorizations
Body
hourinteger · max: 23Required
Responses
201
Schedule response
application/json
Responseall of
post
POST /v2/interop/tenant/schedules HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 10

{
  "hour": 1
}
{
  "data": {
    "type": "unspecified",
    "last_executed_at": "2025-07-04T16:18:06.444Z",
    "enabled": true,
    "hour": 1,
    "days": "text",
    "metadata": null
  }
}

Run a schedule

post

Only permitted for unpaused collection schedules, and if there is no pending ingestion.

Authorizations
Path parameters
idstring · uuidRequired

id of the Schedule to run

Body
object | nullableOptional
Responses
204
No content, schedule queued for execution
post
POST /v2/interop/tenant/schedules/{id}/run HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 2

{}

No content

Count Schedules

get

Get the count of schedules for the tenant. The tenant is identified by actor authentication credentials.

Authorizations
Responses
200
Count of Schedules
application/json
Responseinteger
get
GET /v2/interop/tenant/schedules/count HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

Count of Schedules

1

Find a Schedule by id

get
Authorizations
Path parameters
idstring · uuidRequired

id of the Schedule to find

Responses
200
Schedule response
application/json
Responseall of
get
GET /v2/interop/tenant/schedules/{id} HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

Schedule response

{
  "data": {
    "type": "unspecified",
    "last_executed_at": "2025-07-04T16:18:06.444Z",
    "enabled": true,
    "hour": 1,
    "days": "text",
    "metadata": null
  }
}

Update Schedule

patch

Update a schedule. Only the enabled attribute may be updated.

Authorizations
Path parameters
idstring · uuidRequired

id of the Schedule to update

Body
enabledbooleanOptional
Responses
204
No content
patch
PATCH /v2/interop/tenant/schedules/{id} HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 16

{
  "enabled": true
}
204

No content

No content

Delete Schedule

delete

Delete a schedule.

Authorizations
Path parameters
idstring · uuidRequired

id of the Schedule to update

Responses
204
No content
delete
DELETE /v2/interop/tenant/schedules/{id} HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
204

No content

No content

List Ingestions

get

Get a list of Ingestions.

Authorizations
Query parameters
pageinteger · int32Optional

Specify the page number (defaults to 0)

page_sizeinteger · int32Optional

Specify the page_size (defaults to the maximum page size)

Responses
200
Ingestions response
application/json
Responseall of
get
GET /v2/interop/ingestions HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

Ingestions response

{
  "data": [
    null,
    {
      "type": "unspecified",
      "state": "unspecified",
      "started_at": "2025-07-04T16:18:06.444Z",
      "external_import_ids": [
        "text"
      ],
      "has_pending_task": true,
      "metadata": {
        "scheduled": null
      }
    }
  ]
}

Count Ingestions

get

Get the total count of ingestions that would be returned by listIngestions

Authorizations
Responses
200
Count of Ingestions
application/json
Responseinteger
get
GET /v2/interop/ingestions/count HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

Count of Ingestions

1

Find an Ingestion by id

get
Authorizations
Path parameters
idstring · uuidRequired

id of the Ingestion to find

Responses
200
Ingestion response
application/json
Responseall of
get
GET /v2/interop/ingestions/{id} HTTP/1.1
Host: api.us2.kimonocloud.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
200

Ingestion response

{
  "data": {
    "type": "unspecified",
    "state": "unspecified",
    "started_at": "2025-07-04T16:18:06.444Z",
    "external_import_ids": [
      "text"
    ],
    "has_pending_task": true,
    "metadata": {
      "scheduled": null
    }
  }
}

Last updated

Was this helpful?