Skip to content

ibl-data-manager (3.59.0-ai-plus)

API for iblai

Download OpenAPI description
Languages
Servers
Mock server

https://docs.ibl.ai/_mock/apis/ibl/

https://base.manager.iblai.app/

ai-account

Operations

ai-analytics

Operations

ai-bot

Operations

ai-finetuning

Operations

ai-index

Operations

ai-marketing

Operations

ai-media

Operations

ai-mentor

Operations

ai-prompt

Operations

career

Operations

catalog

Operations

catalog_licenses_program_update_create

Request

API View for updating existing program licenses.

This endpoint allows administrators to update the properties of an existing program license.

Methods: POST: Update an existing program license

Request Body: A JSON object containing:

  • license_id (int, optional): The ID of the license to update (required if external_id not provided)
  • external_id (str, optional): External identifier of the license to update (required if license_id not provided)
  • name (str, optional): Updated display name for the license
  • count (int, optional): Updated number of seats purchased
  • started (datetime, optional): Updated date when license should begin
  • expired (datetime, optional): Updated date when license should expire
  • active (bool, optional): Updated active status
  • metadata (dict, optional): Updated additional license metadata
  • enrollment_config (dict, optional): Updated enrollment configuration
  • source (str, optional): Updated source identifier
  • change_type (str, optional): Type of change being made (default: "update")

Returns: POST: A JSON response containing the updated license: { "id": 123, "created": "2023-06-15T14:30:00Z", "started": "2023-06-15T14:30:00Z", "expired": "2024-06-15T14:30:00Z", "name": "Updated Program License 2023", "count": 150, "active": true, "metadata": {"updated": true}, "source": "updated-source", "external_id": "ext-123", "platform_key": "platform1", "program_id": "program-v1:org+program+run" }

Error Responses: 400 Bad Request: If required parameters are missing or invalid 401 Unauthorized: If the user is not authenticated 403 Forbidden: If the user does not have permission to update licenses 404 Not Found: If the specified license doesn't exist 500 Internal Server Error: If an unexpected error occurs during license update

Access Control:

  • Requires IsDMAdmin permission
  • Available only to DM administrators

Notes:

  • Cannot update the platform or program associated with a license
  • A license history record is automatically created for each update
Security
PlatformApiKeyAuthentication
Body
license_idinteger

The ID of the license to update (required if external_id not provided)

external_idstring

External identifier of the license to update (required if license_id not provided)

namestring

Updated display name for the license

countinteger

Updated number of seats purchased

startedstring(date-time)

Updated date when license should begin

expiredstring or null(date-time)

Updated date when license should expire

activeboolean

Updated active status

metadataobject

Updated additional license metadata

enrollment_configobject

Updated enrollment configuration

sourcestring

Updated source identifier

transaction_idstring

Transaction identifier for tracking

change_typestring

Type of change being made

Default "update"
curl -i -X POST \
  https://docs.ibl.ai/_mock/apis/ibl/api/catalog/licenses/program/update/ \
  -H 'Authorization: YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "license_id": 0,
    "external_id": "string",
    "name": "string",
    "count": 0,
    "started": "2019-08-24T14:15:22Z",
    "expired": "2019-08-24T14:15:22Z",
    "active": true,
    "metadata": {
      "property1": null,
      "property2": null
    },
    "enrollment_config": {
      "property1": null,
      "property2": null
    },
    "source": "string",
    "transaction_id": "string",
    "change_type": "update"
  }'

Responses

Bodyapplication/json
idintegerrequired

The unique identifier for the license

createdstring(date-time)required

When the license was created

startedstring(date-time)required

When the license becomes active

expiredstring or null(date-time)required

When the license expires (null if no expiration)

namestringrequired

The display name of the license

countintegerrequired

The number of seats purchased

activebooleanrequired

Whether the license is active

metadataobjectrequired

Additional license metadata

metadata.​property name*anyadditional property
sourcestringrequired

The source identifier for the license

external_idstring or nullrequired

External identifier for the license (null if none)

platform_keystringrequired

The platform key associated with the license

program_idstring

The program ID associated with the license

program_keystring

The program key associated with the license

program_namestring

The name of the program associated with the license

usage_countintegerrequired

Number of assignments using this license

assignmentsobject

Assignment counts by status (only included in verbose mode)

Response
application/json
{ "id": 0, "created": "2019-08-24T14:15:22Z", "started": "2019-08-24T14:15:22Z", "expired": "2019-08-24T14:15:22Z", "name": "string", "count": 0, "active": true, "metadata": { "property1": null, "property2": null }, "source": "string", "external_id": "string", "platform_key": "string", "program_id": "string", "program_key": "string", "program_name": "string", "usage_count": 0, "assignments": { "property1": 0, "property2": 0 } }

catalog_licenses_user_retrieve

Request

Retrieve a paginated list of user licenses

Security
PlatformApiKeyAuthentication
Query
activeboolean

Filter by active status

external_idstringnon-empty

Filter by external identifier

keystringnon-empty

Alternative filter by platform key

namestringnon-empty

Filter by license name (exact match)

pageinteger

Page number for pagination

page_sizeinteger

Number of results per page

platform_keystringnon-empty

The unique identifier for the platform

querystringnon-empty

Search license names (contains)

sortstringnon-empty

Field to sort results by

Default "-id"
sourcestringnon-empty

Filter by license source

verboseboolean

Include detailed assignment data in the response

Default false
curl -i -X GET \
  'https://docs.ibl.ai/_mock/apis/ibl/api/catalog/licenses/user/?active=true&external_id=string&key=string&name=string&page=0&page_size=0&platform_key=string&query=string&sort=-id&source=string&verbose=false' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Bodyapplication/json
countintegerrequired

Total number of results

next_pagestring or null(uri)required

URL for next page of results

previous_pagestring or null(uri)required

URL for previous page of results

resultsArray of objects(UserLicenseDetail)required

List of user licenses

results[].​idintegerrequired

The unique identifier for the license

results[].​createdstring(date-time)required

When the license was created

results[].​startedstring(date-time)required

When the license becomes active

results[].​expiredstring or null(date-time)required

When the license expires

results[].​namestringrequired

The display name of the license

results[].​countintegerrequired

The number of seats purchased

results[].​activebooleanrequired

Whether the license is active

results[].​metadataobjectrequired

Additional license metadata

results[].​metadata.​property name*anyadditional property
results[].​sourcestringrequired

The source identifier for the license

results[].​external_idstring or nullrequired

External identifier for the license

results[].​platform_keystringrequired

The platform key associated with the license

results[].​usage_countinteger

Number of assignments using this license

Default 0
results[].​assignmentsany

Assignment counts by status (only included in verbose mode)

Response
application/json
{ "count": 0, "next_page": "http://example.com", "previous_page": "http://example.com", "results": [ {} ] }

catalog_licenses_user_assignment_retrieve

Request

Retrieve a paginated list of user license assignments

Security
PlatformApiKeyAuthentication
Query
license_idintegerrequired

The ID of the user license

pageinteger

Page number for pagination

page_sizeinteger

Number of results per page

platform_keystringnon-empty

The unique identifier for the platform

platform_orgstringnon-empty

The organization identifier for the platform

sortstringnon-empty

Field to sort results by

Default "id"
curl -i -X GET \
  'https://docs.ibl.ai/_mock/apis/ibl/api/catalog/licenses/user/assignment/?license_id=0&page=0&page_size=0&platform_key=string&platform_org=string&sort=id' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Bodyapplication/json
countintegerrequired

Total number of results

next_pagestring or null(uri)required

URL for next page of results

previous_pagestring or null(uri)required

URL for previous page of results

resultsArray of objects(UserLicenseAssignmentDetail)required

List of user license assignments

results[].​idintegerrequired

The unique identifier for the assignment

results[].​user_idintegerrequired

The ID of the user assigned the license

results[].​usernamestringrequired

The username of the user assigned the license

results[].​emailstring or null(email)required

The email address of the user assigned the license

results[].​activebooleanrequired

Whether the assignment is active

results[].​fulfilledbooleanrequired

Whether the assignment has been fulfilled

results[].​redirect_tostring or null(uri)

URL to redirect to after fulfillment

results[].​metadataobjectrequired

Additional metadata for the assignment

results[].​metadata.​property name*anyadditional property
results[].​license_idintegerrequired

The ID of the user license

results[].​license_namestringrequired

The name of the user license

results[].​platform_keystringrequired

The platform key associated with the license

Response
application/json
{ "count": 0, "next_page": "http://example.com", "previous_page": "http://example.com", "results": [ {} ] }

core

Operations

credentials

Operations

features

Operations

media

Operations

notifications

Operations

scim

Operations

commerce

Operations

recommendations

Operations

reports

Operations

skills

Operations