360Learning Groups API
The Groups API from 360Learning β 12 operation(s) for groups.
The Groups API from 360Learning β 12 operation(s) for groups.
openapi: 3.1.0
info:
title: Bulk Authentication Groups API
description: ''
version: 1.0.0
contact: {}
servers:
- url: https://app.360learning.com
description: Production EU
- url: https://app.us.360learning.com
description: Production US
tags:
- name: Groups
paths:
/api/v2/bulk/groups/catalog:
post:
description: '> π
>
> Required OAuth scope: `groups:bulk`.
> π
>
> This endpoint processes up to 20,000 objects asynchronously. For more information, see the [Bulk operations guide](doc:bulk-operations-1).
Adds multiple content IDs of a given type to groups catalogs. Upon submission, the request is queued. Use the provided URL in the response header to check the status of the bulk operation.'
operationId: v2.bulk.groups.AddContentsToGroupsCatalogController_addContentsToGroupsCatalog
parameters:
- name: 360-api-version
in: header
description: The version of the API.
required: true
schema:
type: string
enum:
- v2.0
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddContentsToGroupsCatalogBody'
responses:
'202':
description: The operation is successfully created.
headers:
Location:
schema:
type: string
description: 'The URL to retrieve the status of the bulk operation using its operation ID.
Example: `https://app.360learning.com/api/v2/bulk/operations/507f1f77bcf86cd799439011`.'
example: https://app.360learning.com/api/v2/bulk/operations/507f1f77bcf86cd799439011
'400':
description: The server cannot or will not process the request due to something that is perceived to be a client error.
content:
application/json:
schema:
oneOf:
- description: The input of a bulk operation must be an array.
title: Invalid Input
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- invalidInput
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
- description: The input array size exceeds the maximum limit of 20,000 objects.
title: Input Too Long
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- inputTooLong
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
'401':
description: The given access token is either missing, invalid, has expired, or has been revoked.
content:
application/json:
schema:
type: object
properties:
error:
type: string
enum:
- invalid_token
required:
- error
'403':
description: The given access token does not have the required OAuth scope to execute the request.
content:
application/json:
schema:
title: Invalid Scope
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- invalid_scope
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
'429':
description: The maximum number of concurrent operations has been reached.
content:
application/json:
schema:
title: Bulk Operations Concurrency Limit Reached
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- bulkOperationsConcurrencyLimitReached
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
'503':
description: The bulk API is temporarily disabled.
content:
application/json:
schema:
title: Bulk API Disabled
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- bulkAPIDisabled
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
security:
- oauth2: []
summary: Add content to catalogs
tags:
- Groups
delete:
description: '> π
>
> Required OAuth scope: `groups:bulk`.
> π
>
> This endpoint processes up to 20,000 objects asynchronously. For more information, see the [Bulk operations guide](doc:bulk-operations-1).
Removes multiple content IDs of a given type from groups catalogs. Upon submission, the request is queued. Use the provided URL in the response header to check the status of the bulk operation.'
operationId: v2.bulk.groups.RemoveContentsFromGroupsCatalogController_removeContentsFromGroupsCatalog
parameters:
- name: 360-api-version
in: header
description: The version of the API.
required: true
schema:
type: string
enum:
- v2.0
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RemoveContentsFromGroupsCatalogBody'
responses:
'202':
description: The operation is successfully created.
headers:
Location:
schema:
type: string
description: 'The URL to retrieve the status of the bulk operation using its operation ID.
Example: `https://app.360learning.com/api/v2/bulk/operations/507f1f77bcf86cd799439011`.'
example: https://app.360learning.com/api/v2/bulk/operations/507f1f77bcf86cd799439011
'400':
description: The server cannot or will not process the request due to something that is perceived to be a client error.
content:
application/json:
schema:
oneOf:
- description: The input of a bulk operation must be an array.
title: Invalid Input
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- invalidInput
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
- description: The input array size exceeds the maximum limit of 20,000 objects.
title: Input Too Long
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- inputTooLong
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
'401':
description: The given access token is either missing, invalid, has expired, or has been revoked.
content:
application/json:
schema:
type: object
properties:
error:
type: string
enum:
- invalid_token
required:
- error
'403':
description: The given access token does not have the required OAuth scope to execute the request.
content:
application/json:
schema:
title: Invalid Scope
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- invalid_scope
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
'429':
description: The maximum number of concurrent operations has been reached.
content:
application/json:
schema:
title: Bulk Operations Concurrency Limit Reached
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- bulkOperationsConcurrencyLimitReached
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
'503':
description: The bulk API is temporarily disabled.
content:
application/json:
schema:
title: Bulk API Disabled
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- bulkAPIDisabled
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
security:
- oauth2: []
summary: Remove content from catalogs
tags:
- Groups
/api/v2/bulk/groups/library:
post:
description: '> π
>
> Required OAuth scope: `groups:bulk`.
> π
>
> This endpoint processes up to 20,000 objects asynchronously. For more information, see the [Bulk operations guide](doc:bulk-operations-1).
Adds multiple content IDs of a given type to groups libraries. Upon submission, the request is queued. Use the provided URL in the response header to check the status of the bulk operation.'
operationId: v2.bulk.groups.AddContentsToGroupsLibraryController_addContentsToGroupsLibrary
parameters:
- name: 360-api-version
in: header
description: The version of the API.
required: true
schema:
type: string
enum:
- v2.0
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddContentsToGroupsLibraryBody'
responses:
'202':
description: The operation is successfully created.
headers:
Location:
schema:
type: string
description: 'The URL to retrieve the status of the bulk operation using its operation ID.
Example: `https://app.360learning.com/api/v2/bulk/operations/507f1f77bcf86cd799439011`.'
example: https://app.360learning.com/api/v2/bulk/operations/507f1f77bcf86cd799439011
'400':
description: The server cannot or will not process the request due to something that is perceived to be a client error.
content:
application/json:
schema:
oneOf:
- description: The input of a bulk operation must be an array.
title: Invalid Input
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- invalidInput
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
- description: The input array size exceeds the maximum limit of 20,000 objects.
title: Input Too Long
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- inputTooLong
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
'401':
description: The given access token is either missing, invalid, has expired, or has been revoked.
content:
application/json:
schema:
type: object
properties:
error:
type: string
enum:
- invalid_token
required:
- error
'403':
description: The given access token does not have the required OAuth scope to execute the request.
content:
application/json:
schema:
title: Invalid Scope
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- invalid_scope
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
'429':
description: The maximum number of concurrent operations has been reached.
content:
application/json:
schema:
title: Bulk Operations Concurrency Limit Reached
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- bulkOperationsConcurrencyLimitReached
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
'503':
description: The bulk API is temporarily disabled.
content:
application/json:
schema:
title: Bulk API Disabled
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- bulkAPIDisabled
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
security:
- oauth2: []
summary: Add content to libraries
tags:
- Groups
delete:
description: '> π
>
> Required OAuth scope: `groups:bulk`.
> π
>
> This endpoint processes up to 20,000 objects asynchronously. For more information, see the [Bulk operations guide](doc:bulk-operations-1).
Removes multiple content IDs of a given type from groups libraries. Upon submission, the request is queued. Use the provided URL in the response header to check the status of the bulk operation.'
operationId: v2.bulk.groups.RemoveContentsFromGroupsLibraryController_removeContentsFromGroupsLibrary
parameters:
- name: 360-api-version
in: header
description: The version of the API.
required: true
schema:
type: string
enum:
- v2.0
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RemoveContentsFromGroupsLibraryBody'
responses:
'202':
description: The operation is successfully created.
headers:
Location:
schema:
type: string
description: 'The URL to retrieve the status of the bulk operation using its operation ID.
Example: `https://app.360learning.com/api/v2/bulk/operations/507f1f77bcf86cd799439011`.'
example: https://app.360learning.com/api/v2/bulk/operations/507f1f77bcf86cd799439011
'400':
description: The server cannot or will not process the request due to something that is perceived to be a client error.
content:
application/json:
schema:
oneOf:
- description: The input of a bulk operation must be an array.
title: Invalid Input
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- invalidInput
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
- description: The input array size exceeds the maximum limit of 20,000 objects.
title: Input Too Long
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- inputTooLong
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
'401':
description: The given access token is either missing, invalid, has expired, or has been revoked.
content:
application/json:
schema:
type: object
properties:
error:
type: string
enum:
- invalid_token
required:
- error
'403':
description: The given access token does not have the required OAuth scope to execute the request.
content:
application/json:
schema:
title: Invalid Scope
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- invalid_scope
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
'429':
description: The maximum number of concurrent operations has been reached.
content:
application/json:
schema:
title: Bulk Operations Concurrency Limit Reached
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- bulkOperationsConcurrencyLimitReached
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
'503':
description: The bulk API is temporarily disabled.
content:
application/json:
schema:
title: Bulk API Disabled
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- bulkAPIDisabled
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
security:
- oauth2: []
summary: Remove content from libraries
tags:
- Groups
/api/v2/bulk/groups/memberships:
post:
description: '> π
>
> Required OAuth scope: `groups:bulk`.
> π
>
> This endpoint processes up to 20,000 objects asynchronously. For more information, see the [Bulk operations guide](doc:bulk-operations-1).
Adds multiple users to groups with their assigned roles. Upon submission, the request is queued. Use the provided URL in the response header to check the status of the bulk operation.'
operationId: v2.bulk.groups.AddUsersToGroupsController_addUsersToGroups
parameters:
- name: 360-api-version
in: header
description: The version of the API.
required: true
schema:
type: string
enum:
- v2.0
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddUsersToGroupsBody'
responses:
'202':
description: The operation is successfully created.
headers:
Location:
schema:
type: string
description: 'The URL to retrieve the status of the bulk operation using its operation ID.
Example: `https://app.360learning.com/api/v2/bulk/operations/507f1f77bcf86cd799439011`.'
example: https://app.360learning.com/api/v2/bulk/operations/507f1f77bcf86cd799439011
'400':
description: The server cannot or will not process the request due to something that is perceived to be a client error.
content:
application/json:
schema:
oneOf:
- description: The input of a bulk operation must be an array.
title: Invalid Input
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- invalidInput
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
- description: The input array size exceeds the maximum limit of 20,000 objects.
title: Input Too Long
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- inputTooLong
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
'401':
description: The given access token is either missing, invalid, has expired, or has been revoked.
content:
application/json:
schema:
type: object
properties:
error:
type: string
enum:
- invalid_token
required:
- error
'403':
description: The given access token does not have the required OAuth scope to execute the request.
content:
application/json:
schema:
title: Invalid Scope
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- invalid_scope
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
'429':
description: The maximum number of concurrent operations has been reached.
content:
application/json:
schema:
title: Bulk Operations Concurrency Limit Reached
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- bulkOperationsConcurrencyLimitReached
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
'503':
description: The bulk API is temporarily disabled.
content:
application/json:
schema:
title: Bulk API Disabled
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- bulkAPIDisabled
message:
type: string
example: A human-readable message to help with debugging.
required:
- code
- message
required:
- error
security:
- oauth2: []
summary: Add users to groups
tags:
- Groups
delete:
description: '> π
>
> Required OAuth scope: `groups:bulk`.
> π
>
> This endpoint processes up to 20,000 objects asynchronously. For more information, see the [Bulk operations guide](doc:bulk-operations-1).
Removes multiple users from groups with their assigned roles. The `learner` role is also removed from all public subgroups down to first private excluded. Upon submission, the request is queued. Use the provided URL in the response header to check the status of the bulk operation.'
operationId: v2.bulk.groups.RemoveUsersFromGroupsController_removeUsersFromGroups
parameters:
- name: 360-api-version
in: header
description: The version of the API.
required: true
schema:
type: string
enum:
- v2.0
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RemoveUsersFromGroupsBody'
responses:
'202':
description: The operation is successfully created.
headers:
Location:
schema:
type: string
description: 'The URL to retrieve the status of the bulk operation using its operation ID.
Example: `https://app.360learning.com/api/v2/bulk/operations/507f1f77bcf86cd799439011`.'
example: https://app.360learning.com/api/v2/bulk/operations/507f1f77bcf86cd799439011
'400':
description: The server cannot or will not process the request due to something that is perceived to be a client error.
content:
application/json:
schema:
oneOf:
- description: The input of a bulk operation must be an array.
title: Invalid Input
type: object
properties:
error:
type: object
prope
# --- truncated at 32 KB (129 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/360learning/refs/heads/main/openapi/360learning-groups-api-openapi.yml