# Blackboard

Anthology Adopt powered by Pendo allows institutions to gain insights on Blackboard Learn usage and take action through in-app messages, digital walkthrough guides, and tooltips.

- **Category:** education
- **Auth:** OAUTH2
- **Composio Managed App Available?** No
- **Tools:** 314
- **Triggers:** 0
- **Slug:** `BLACKBOARD`
- **Version:** 20260312_00

## Tools

### Course Announcements Access

**Slug:** `BLACKBOARD_ACCESS_CONTROLLED_COURSE_ANNOUNCEMENTS`

Retrieves a list of announcements for a specific course in the Blackboard learning management system. This endpoint allows users to access important messages, updates, or notifications related to a particular course. It should be used when there's a need to fetch all announcements or check for recent updates in a course. The tool returns announcement data but does not provide functionality for creating, updating, or deleting announcements. Keep in mind that the returned list may be paginated if there are many announcements, and additional calls might be necessary to retrieve all data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "title(desc),created" Supported fields are: - title - modified **Since**: 3500.3.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `title` | string | No | Search for announcements with a title like the provided value. **Since**: 3500.3.0  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `created` | string | No | Search for announcements with a created date relative to this value.  "createdCompare" may also be sent to control search behavior. **Since**: 3500.3.0  |
| `endDate` | string | No | Search announcements with end date relative to this value. "endAnnouncementsDateCompare" may also be sent to control search behavior. **Since**: 3900.92.0  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `modified` | string | No | Search for announcements with a modified date relative to this value.  "modifiedCompare" may also be sent to control search behavior. **Since**: 3500.3.0  |
| `startDate` | string | No | Search announcements with start date relative to this value. "startAnnouncementsDateCompare" may also be sent to control search behavior. **Since**: 3900.92.0  |
| `createdUntil` | string | No | Search announcements with created date less than or equal to this value. "createdCompare" needs to be set to "between" to perform the search correctly. **Since**: 3900.92.0  |
| `endDateUntil` | string | No | Search announcements with end date relative to this value. "endAnnouncementsDateCompare" needs to be set to "between" to perform the search correctly. **Since**: 3900.92.0  |
| `creatorUserId` | string | No | Search for announcements with creator user id equal to this value. **Since**: 3900.89.0.  |
| `modifiedUntil` | string | No | Search announcements with modified date less than or equal to this value. "modifiedCompare" needs to be set to "between" to perform the search correctly. **Since**: 3900.92.0  |
| `createdCompare` | string ("between" | "greaterOrEqual" | "lessThan") | No | Used alongside the "created" search parameter. Defaults to greaterOrEqual if not specified. "lessThan", "between" are also accepted values. **Since**: 3500.3.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \| \| between \|  \|   |
| `endDateCompare` | string ("between" | "greaterOrEqual" | "lessThan") | No | Used alongside the "endDate" search parameter. Defaults to greaterOrEqual if not specified. "lessThan", "between" are also accepted values. **Since**: 3900.92.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \| \| between \|  \|   |
| `startDateUntil` | string | No | Search announcements with start date relative to this value. "startAnnouncementsDateCompare" needs to be set to "between" to perform the search correctly. **Since**: 3900.92.0  |
| `creatorUsername` | string | No | Search for announcements with creator username equal to this value. **Since**: 3900.89.0.  |
| `modifiedCompare` | string ("between" | "greaterOrEqual" | "lessThan") | No | Used alongside the "modified" search parameter. Defaults to greaterOrEqual if not specified. "lessThan", "between" are also accepted values. **Since**: 3500.3.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \| \| between \|  \|   |
| `startDateCompare` | string ("between" | "greaterOrEqual" | "lessThan") | No | Used alongside the "startDate" search parameter. Defaults to greaterOrEqual if not specified. "lessThan", "between" are also accepted values. **Since**: 3900.92.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \| \| between \|  \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get course announcement by id

**Slug:** `BLACKBOARD_ACCESS_COURSE_ANNOUNCEMENTS_BASED_ON_PERMISSIONS`

Retrieves a specific announcement from a particular course in the Blackboard Learn system. This endpoint allows users to fetch detailed information about a single announcement, including its content, creation date, and any attachments. It is particularly useful for displaying announcement details in external applications or for retrieving updated information about a previously known announcement. The endpoint requires both the course ID and the announcement ID to ensure precise retrieval of the intended announcement. It should be used when specific announcement details are needed, rather than for listing all announcements in a course.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `announcementId` | string | Yes | Announcementid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update child course in parent

**Slug:** `BLACKBOARD_ADD_CHILD_COURSE`

This endpoint updates the relationship between a parent course and its child course in the Blackboard Learning Management System. It is used to modify existing course hierarchies, allowing administrators to restructure course organizations or adjust course relationships. The endpoint should be used when there's a need to change the parent-child association between two courses, such as moving a sub-course to a different parent course or updating the hierarchical structure of courses. It's important to note that this endpoint only modifies existing relationships and does not create new courses or new child-parent associations if they don't already exist in some form.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `childCourseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `ignoreEnrollmentErrors` | boolean | No | By default, enrollment errors encountered during a course merge will result in a 409 CONFLICT response.  The ignoreEnrollmentErrors parameter can be sent as true in order to bypass enrollment errors.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Upload file to attempt in gradebook

**Slug:** `BLACKBOARD_ATTACH_FILE`

This endpoint allows for the upload and attachment of files to a specific attempt within a course's gradebook in the Blackboard learning management system. It is used to associate submitted work, supporting documents, or any relevant files with a student's attempt on an assignment, quiz, or other assessable items. The endpoint should be called after the initial file upload process, using the generated uploadId to link the file to the specific attempt. It's particularly useful for instructors or system integrators who need to programmatically attach files to student submissions, or for building custom submission interfaces that interact with Blackboard's backend. This endpoint does not handle the actual file transfer; it assumes the file has already been uploaded to Blackboard's system and is now being associated with a specific attempt.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The name of the file which has been attached to an Attempt including the file extension.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `uploadId` | string | No | Uploadid |
| `attemptId` | string | Yes | Attemptid |
| `resourceId` | string | No | Resourceid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get oauth2 authorization code

**Slug:** `BLACKBOARD_AUTHORIZATION_CODE`

Initiates the OAuth 2.0 authorization code flow for the Blackboard API. This endpoint is used to obtain an authorization code, which is a crucial step in the OAuth 2.0 authentication process. The authorization code can later be exchanged for an access token, granting limited access to user resources on the Blackboard platform. This endpoint should be called when an application needs to request permission from a user to access their Blackboard data. It's important to note that this endpoint does not directly provide access to user data; it only initiates the authorization process. The response will typically include a redirect URL containing the authorization code, which the client application must handle appropriately.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `scope` | string | No | the space delimited scope(s) being requested for this authorization. Example value: "read write offline"  |
| `state` | string | No | Opaque value used by client to maintain state between request and callback. Used to prevent cross-site request forgery.  |
| `client_id` | string | No | Required. The client identifier for the registered application. |
| `redirect_uri` | string | No | the redirectUri to send the end user to once an authorization code response is made in Oauth2 Authorization Code Workflow  |
| `response_type` | string | No | Required. The response_type expected which must to be set to "code" |
| `code_challenge` | string | No | A code challenge to verify credentials along with the granted authorization code. It is used with the PKCE standard. **Since**: 3700.4.0  |
| `code_challenge_method` | string | No | This is the method used to verify the code challenge using the PKCE standard. Blackboard only supports s256 as the code challenge method. **Since**: 3700.4.0  |
| `one_time_session_token` | string | No | Token used to retrieve the session that generated this Oauth2 Code request. Used when session cookies are not sent due to privacy settings of the browser. **Since**: 3900.13.0  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get user gradebook for course

**Slug:** `BLACKBOARD_CONDITIONAL_GRADE_ACCESS`

Retrieves the gradebook information for a specific user within a particular course in Blackboard. This endpoint allows instructors or authorized personnel to access individual student grade data, including assignment scores, overall course grade, and any custom gradebook columns. It should be used when detailed grade information for a single student in a specific course is needed, such as for progress monitoring or grade reviews. The endpoint does not modify any data and is read-only. Note that this tool only provides grade data and does not include other course or user information beyond what's directly related to the gradebook.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Copy course with specific options

**Slug:** `BLACKBOARD_COPY_COURSE`

The CourseCopyTool allows you to create a copy of a Blackboard course with fine-grained control over which elements are included in the copy. This endpoint is used when you need to duplicate a course, either creating a new course or overwriting an existing one, while selectively choosing which components to transfer. It's particularly useful for course administrators or instructors preparing for a new semester or creating variations of an existing course. The tool provides extensive customization options, allowing you to include or exclude specific course elements such as content areas, assessments, gradebook settings, and more. However, it does not handle enrollment of students or instructors in the new course - this must be done separately after the copy is complete.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `copy__blogs` | boolean | No | Represents whether or not the blogs will be copied. |
| `copy__tasks` | boolean | No | Represents whether or not the tasks will be copied. |
| `copy__wikis` | boolean | No | Represents whether or not the wikis will be copied. |
| `copy__rubrics` | boolean | No | Represents whether or not the rubrics will be copied. |
| `copy__calendar` | boolean | No | Represents whether or not the calendar will be copied. |
| `copy__contacts` | boolean | No | Represents whether or not the contacts information will be copied. |
| `copy__glossary` | boolean | No | Represents whether or not the glossary will be copied. |
| `copy__journals` | boolean | No | Represents whether or not the journals will be copied. |
| `copy__gradebook` | boolean | No | Represents whether or not the grade book, columns and settings will be copied.  |
| `copy__assessments` | boolean | No | Represents whether or not the assessments will be copied. |
| `copy__discussions` | string ("ForumsAndStarterPosts" | "ForumsOnly" | "None") | No | Represents whether and how to copy the discussion forum  \| Type      \| Description  \| --------- \| --------- \| \| None \| Discussion board will not be copied \| \| ForumsAndStarterPosts \| Discussion board with Formus and starter posts will be copied \| \| ForumsOnly \| Discussion board with only forums will be copied \|   |
| `copy__contentAreas` | boolean | No | Represents whether or not the content areas will be copied. |
| `copy__announcements` | boolean | No | Represents whether or not the announcements will be copied. |
| `copy__groupSettings` | boolean | No | Represents whether or not the group settings will be copied. |
| `copy__retentionRules` | boolean | No | Represents whether or not the retention rules will be copied. |
| `targetCourse__courseId` | string | No | The CourseId that will represent the new course. |
| `copy__contentAlignments` | boolean | No | Represents whether or not the content alignments will be copied. |
| `copy__settings__duration` | boolean | No | Represents whether or not the duration settings will be copied. |
| `copy__adaptiveReleaseRules` | boolean | No | Represents whether or not the adaptive release rules will be copied. |
| `copy__settings__bannerImage` | boolean | No | Represents whether or not the banner image will be copied. |
| `copy__settings__guestAccess` | boolean | No | Represents whether or not the guest access settings will be copied. |
| `copy__settings__availability` | boolean | No | Represents whether or not the Availability setting will be copied. |
| `copy__settings__languagePack` | boolean | No | Represents whether or not the languange packs will be copied. |
| `copy__settings__observerAccess` | boolean | No | Represents whether or not the observer access settings will be copied. |
| `copy__settings__enrollmentOptions` | boolean | No | Represents whether or not the enrollment options will be copied. |
| `copy__settings__navigationSettings` | boolean | No | Represents whether or not the navigation settings will be copied. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Copy course by courseid

**Slug:** `BLACKBOARD_COURSE_AND_ORG_DUPLICATION_PERMISSIONS_UPDATE`

This endpoint creates a copy of an existing course in the Blackboard learning management system. It allows instructors or administrators to duplicate course content, settings, and structure into a new or existing course. Use this endpoint when you need to replicate a course for a new semester, create a template from an existing course, or backup course content. The operation copies all copyable elements of the source course into the target course specified by the courseId. Note that this process may take some time for large courses, and certain elements (such as student data or time-sensitive content) may not be copied. The endpoint does not provide real-time progress updates on the copying process.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The Course ID to copy into. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create course announcement

**Slug:** `BLACKBOARD_COURSE_ANNOUNCEMENT_CREATION_PERMISSION`

Creates a new announcement within a specified course in the Blackboard learning management system. This endpoint allows instructors or course administrators to post important messages, updates, or notifications to all enrolled students. The announcement can be customized with a title, rich text body using BbML, and specific availability settings. Use this endpoint when you need to communicate course-wide information, such as syllabus changes, assignment reminders, or important dates. The announcement can be created as a draft for later publication or immediately made visible based on the specified availability settings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | No | The message body of the Announcement. This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `draft` | boolean | No | An indication of whether or not the Announcement is in draft status. |
| `title` | string | Yes | The title of this Announcement. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `availability__duration__end` | string | No | The date this Announcement stops being Available. |
| `availability__duration__type` | string ("Permanent" | "Restricted") | No | Indicates whether this Course Announcement is always displayed (Permanent) or if it is shown only between the Start and End dates (Restricted).  \| Type      \| Description  \| --------- \| --------- \| \| Permanent \| The Announcement will always be displayed. \| \| Restricted \| The Announcement will start being displayed on Duration.Start and stop being displayed on Duration.End \|   |
| `availability__duration__start` | string | No | The date this Announcement starts being Available. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course list

**Slug:** `BLACKBOARD_COURSE_DATA_ACCESS_CONTROL_BY_USER_ENTITLEMENT`

Retrieves a list of courses from the Blackboard Learn platform. This endpoint allows developers to fetch information about courses available in the learning management system. It can be used to integrate course data into external applications, create custom dashboards, or sync course information with other systems. The endpoint returns read-only data and does not modify any course information. While it provides a comprehensive list of courses, it may not include detailed information about course content, assignments, or student data, which might require additional API calls. Use this endpoint when you need to obtain an overview of courses in the Blackboard Learn environment, such as for course catalogs or administrative purposes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Search for courses with name properties that contain this value. **Since**: 3100.0.0  |
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "name(desc),created" Supported fields are: - courseId - name - externalId - created **Since**: 3100.0.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `termId` | string | No | Search for courses with this termId.  This may optionally be the term"s externalId using the syntax "externalId:spring2015". **Since**: 3100.0.0  |
| `created` | string | No | Search for courses with a created date relative to this value.  "createdCompare" may also be sent to control search behavior. **Since**: 3100.0.0  |
| `courseId` | string | No | Search for courses with courseId properties that contain this value. **Since**: 3100.0.0  |
| `externalId` | string | No | Search for courses with externalId properties that contain this value. **Since**: 3100.0.0  |
| `allowGuests` | boolean | No | Search for courses which are configured to allow/disallow guest access, based on input.  Default: n/a (return courses regardless of guests allowed) **Since**: 3200.3.0  |
| `description` | string | No | Search for courses with description properties that contain this value. **Since**: 3100.0.0  |
| `dataSourceId` | string | No | Search for courses with this dataSourceId.  This may optionally be the data source"s externalId using the syntax "externalId:math101". **Since**: 3100.0.0  |
| `organization` | boolean | No | Search for courses by organization flag.  A value of "true" indicates that search results should be limited to only Organizations.  A value of "false" indicates results should be limited to Courses.  Not setting this field indicates that both Courses and Organizations should be returned. **Since**: 3100.0.0  |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "created" search parameter.  Defaults to greaterOrEqual if not specified. **Since**: 3100.0.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `availability__available` | string ("Disabled" | "No" | "Term" | "Yes") | No | Search for courses with availability.available properties that contain this value. **Since**: 3000.13.0  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may access the course. \| \| No \| Students may not access the course. \| \| Disabled \| Disabled by the SIS. Students may not access the course.  **Since**: 3100.0.0 \| \| Term \| Availability is inherited from the term settings. Requires a termId be set. \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Course endpoint entitlement access

**Slug:** `BLACKBOARD_COURSE_ENDPOINT_ENTITLEMENT_ACCESS`

Retrieves detailed information about a specific course in the Blackboard Learn platform using its unique identifier. This endpoint allows users to fetch comprehensive course data, which may include the course name, code, description, enrollment information, instructor details, and other relevant metadata. It's particularly useful for applications that need to display or process course information, such as student portals, administrative tools, or integration with other educational systems. The endpoint should be used when specific course details are required, but it will not provide information about student performance or course content. Note that the exact scope of information returned may depend on the user's permissions within the Blackboard system. name = "course_endpoint_entitlement_access" display_name = "Course Endpoint Entitlement Access"

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course details by id

**Slug:** `BLACKBOARD_COURSE_ENTITLEMENT_AND_DATA_ACCESS_CONTROL`

Retrieves detailed information about a specific course in the Blackboard Learning Management System. This endpoint allows users to fetch comprehensive data related to a course, such as its title, description, start and end dates, enrollment information, and other course-specific attributes. It is particularly useful for applications that need to display or process course information outside of the Blackboard interface. This tool should be used when detailed course information is required for a known course ID, but it will not provide a list of all courses or modify any course data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create course group

**Slug:** `BLACKBOARD_COURSE_GROUP_INITIATION`

Creates a new group within a specified course in the Blackboard Learn system. This endpoint allows for detailed customization of group properties, including its name, description, availability, and enrollment settings. It's particularly useful for organizing students into smaller units for collaborative work, discussions, or specific course activities. The function supports creating both regular groups and group sets, with options for self-enrollment or instructor-managed membership. Use this when setting up course structures that require student groupings, whether for project teams, study groups, or other collaborative activities within a course.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The title of the group. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `parentId` | string | No | The primary ID of the group"s parent group set. |
| `externalId` | string | No | An externally-defined unique ID for the group. Defaults to a random UUID if not provided during create.  |
| `isGroupSet` | boolean | No | Whether or not this is a group set. **Since**: 3700.1.0 |
| `description` | string | No | The description of the group. This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `enrollment__type` | string ("InstructorOnly" | "SelfEnrollment") | No | Whether the Group allows self enrollment or only enrolled by instructor. This can only be set on creation.  \| Type      \| Description  \| --------- \| --------- \| \| InstructorOnly \| Students are added to the Group by the instructor \| \| SelfEnrollment \| Students are added to the Group by self enrollment \|   |
| `enrollment__limit` | integer | No | The maximum allowed enrollment size for self enrolled groups. |
| `availability__available` | string ("No" | "SignupOnly" | "Yes") | No | Whether the Group is currently available to students.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may access the group. \| \| No \| Students may not access the group. \| \| SignupOnly \| Students may only signup and see the group listed, not yet access it. \|   |
| `enrollment__signupSheet__name` | string | No | The name of the signup sheet |
| `enrollment__signupSheet__description` | string | No | The description of the signup sheet This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `enrollment__signupSheet__showMembers` | boolean | No | A boolean indicating whether or not members can be seen by others prior to signing up.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update group details by course and group id

**Slug:** `BLACKBOARD_COURSE_GROUP_MODIFICATION`

Updates the properties of a specific group within a Blackboard Learn course. This endpoint allows modification of group details such as name, description, availability, and enrollment settings. It's particularly useful for adjusting group configurations after initial creation, managing student access, and controlling enrollment options. The endpoint supports partial updates, allowing you to modify only the specified fields without affecting others. Use this when you need to change group settings, update availability, or adjust enrollment limits and signup options for an existing group in a course.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The title of the group. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `parentId` | string | No | The primary ID of the group"s parent group set. |
| `externalId` | string | No | An externally-defined unique ID for the group. Defaults to a random UUID if not provided during create.  |
| `description` | string | No | The description of the group. This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `enrollment__limit` | integer | No | The maximum allowed enrollment size for self enrolled groups. |
| `availability__available` | string ("No" | "SignupOnly" | "Yes") | No | Whether the Group is currently available to students.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may access the group. \| \| No \| Students may not access the group. \| \| SignupOnly \| Students may only signup and see the group listed, not yet access it. \|   |
| `enrollment__signupSheet__name` | string | No | The name of the signup sheet |
| `enrollment__signupSheet__description` | string | No | The description of the signup sheet This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `enrollment__signupSheet__showMembers` | boolean | No | A boolean indicating whether or not members can be seen by others prior to signing up.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update course information by courseid

**Slug:** `BLACKBOARD_COURSE_MODIFICATION_PERMISSION_CHECKS`

The PatchCourse endpoint allows for updating specific details and settings of an existing course in the Blackboard Learn system. It is used when modifications to course properties such as name, description, availability, enrollment options, or localization settings are needed. This endpoint supports partial updates, meaning only the fields that require changes need to be included in the request body. It's particularly useful for making adjustments to course settings after initial creation or for updating course information based on changes in the academic calendar or institutional policies. However, it's important to note that some settings, like allowing guests or observers, are only modifiable for Classic courses, and certain operations may be restricted when a course is in a closed and complete state.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The name of the course. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `termId` | string | No | The ID of the term associated to this course. This may optionally be the term"s externalId using the syntax "externalId:spring.2016".  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `externalId` | string | No | An optional externally-defined unique ID for the course. Defaults to the courseId. Formerly known as "batchUid".  |
| `locale__id` | string | No | The locale of this course. |
| `allowGuests` | boolean | No | Whether guests (users with the role guest) are allowed access to the course. Modifiable only for Classic course. Defaults to true for Classic Courses and false for Ultra Courses.  |
| `description` | string | No | The description of the course. |
| `dataSourceId` | string | No | The ID of the data source associated with this course. This may optionally be the data source"s externalId using the syntax "externalId:math101".  |
| `locale__force` | boolean | No | Whether students are forced to use the course"s specified locale. |
| `allowObservers` | boolean | No | Whether observers are allowed access to the course. Modifiable only for Classic course. Defaults to false. **Since**: 3900.31.0  |
| `closedComplete` | boolean | No | This status does not affect availability of the course for viewing in any way. closedComplete is valid for both Ultra and Classic courses. If an Ultra course is in closedComplete mode, updates are not possible. For a Classic course in closedComplete mode, updates are still possible (through Web UI but not through REST i.e. closed is enforced for original courses when updated through REST the same way Ultra courses are blocked) but new notifications are not generated.  |
| `enrollment__end` | string | No | The date on which enrollment in this course ends. May only be set if enrollment.type is SelfEnrollment.  |
| `enrollment__type` | string ("EmailEnrollment" | "InstructorLed" | "SelfEnrollment") | No | Specifies the enrollment options for the course. Defaults to InstructorLed.  \| Type      \| Description  \| --------- \| --------- \| \| InstructorLed \| Enrollment tasks for the course can only performed by the instructor \| \| SelfEnrollment \| Instructors have the ability to enroll users, and students can also enroll themselves in the course \| \| EmailEnrollment \| Instructors have the ability to enroll users, and students can email requests to the instructor for enrollment \|   |
| `enrollment__start` | string | No | The date on which enrollments are allowed for the course. May only be set if enrollment.type is SelfEnrollment.  |
| `enrollment__accessCode` | string | No | The enrollment access code associated with this course. May only be set if enrollment.type is SelfEnrollment.  |
| `availability__available` | string ("Disabled" | "No" | "Term" | "Yes") | No | Whether the course is currently available to students. Instructors can always access the course if they have "Access unavailable course" entitlement. If set to "Term", the course"s parent term availability settings will be used.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may access the course. \| \| No \| Students may not access the course. \| \| Disabled \| Disabled by the SIS. Students may not access the course. @since 3100.0.0 \| \| Term \| Availability is inherited from the term settings. Requires a termId be set. \|   |
| `availability__duration__end` | string | No | The date this course ends. May only be set if availability.duration.type is DateRange.  |
| `availability__duration__type` | string ("Continuous" | "DateRange" | "FixedNumDays" | "Term") | No | The intended length of the course. Possible values are: - Continuous: The course is active on an ongoing basis. This is the default. - DateRange: The course will only be available between specific date ranges. - FixedNumDays: The course will only be available for a set number of days. - Term: The course"s parent term duration settings will be used.  \| Type      \| Description  \| --------- \| --------- \| \| Continuous \| Course is active on an ongoing basis. \| \| DateRange \| Course is only intended to be available between specific date ranges \| \| FixedNumDays \| Course is only available for a set number of days \| \| Term \| Course availablity is dictated by its associated term \|   |
| `availability__duration__start` | string | No | The date this course starts. May only be set if availability.duration.type is DateRange.  |
| `availability__duration__daysOfUse` | integer | No | The number of days this course can be used. May only be set if availability.duration.type is FixedNumDays.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update course information

**Slug:** `BLACKBOARD_COURSE_MODIFICATION_PERMISSIONS`

Updates an existing course in the Blackboard Learn system. This endpoint allows modification of various course attributes including basic information, availability settings, enrollment options, and localization preferences. It's used to adjust course details after initial creation, enabling instructors or administrators to manage course lifecycle and accessibility. The endpoint requires the course ID and accepts a range of optional parameters for fine-tuning course properties. It's particularly useful for making bulk changes to course settings or adapting courses to changing educational needs. Note that some settings, like allowing guests, are only modifiable for specific course types (Classic vs Ultra).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The name of the course. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `termId` | string | No | The ID of the term associated to this course. This may optionally be the term"s externalId using the syntax "externalId:spring.2016".  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `readOnly` | boolean | No | This status does not affect availability of the course for viewing in any way. readOnly is valid for both Ultra and Classic courses. If an Ultra course is in readOnly mode, updates are not possible. For a Classic course in readOnly mode, updates are still possible (through Web UI but not through REST i.e. closed is enforced for original courses when updated through REST the same way Ultra courses are blocked) but new notifications are not generated. **Deprecated**: since 3400.8.0; use the v2 endpoint"s closedComplete property instead  |
| `externalId` | string | No | An optional externally-defined unique ID for the course. Defaults to the courseId. Formerly known as "batchUid".  |
| `locale__id` | string | No | The locale of this course. |
| `allowGuests` | boolean | No | Whether guests (users with the role guest) are allowed access to the course. Modifiable only for Classic course. Defaults to true for Classic Courses and false for Ultra Courses.  |
| `description` | string | No | The description of the course. |
| `dataSourceId` | string | No | The ID of the data source associated with this course. This may optionally be the data source"s externalId using the syntax "externalId:math101".  |
| `locale__force` | boolean | No | Whether students are forced to use the course"s specified locale. |
| `enrollment__end` | string | No | The date on which enrollment in this course ends. May only be set if enrollment.type is SelfEnrollment.  |
| `enrollment__type` | string ("EmailEnrollment" | "InstructorLed" | "SelfEnrollment") | No | Specifies the enrollment options for the course. Defaults to InstructorLed.  \| Type      \| Description  \| --------- \| --------- \| \| InstructorLed \| Enrollment tasks for the course can only performed by the instructor \| \| SelfEnrollment \| Instructors have the ability to enroll users, and students can also enroll themselves in the course \| \| EmailEnrollment \| Instructors have the ability to enroll users, and students can email requests to the instructor for enrollment \|   |
| `enrollment__start` | string | No | The date on which enrollments are allowed for the course. May only be set if enrollment.type is SelfEnrollment.  |
| `enrollment__accessCode` | string | No | The enrollment access code associated with this course. May only be set if enrollment.type is SelfEnrollment.  |
| `availability__available` | string ("Disabled" | "No" | "Term" | "Yes") | No | Whether the course is currently available to students. Instructors can always access the course if they have "Access unavailable course" entitlement. If set to "Term", the course"s parent term availability settings will be used.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may access the course. \| \| No \| Students may not access the course. \| \| Disabled \| Disabled by the SIS. Students may not access the course.  **Since**: 3100.0.0 \| \| Term \| Availability is inherited from the term settings. Requires a termId be set. \|   |
| `availability__duration__end` | string | No | The date this course ends. May only be set if availability.duration.type is DateRange.  |
| `availability__duration__type` | string ("Continuous" | "DateRange" | "FixedNumDays" | "Term") | No | The intended length of the course.  \| Type      \| Description  \| --------- \| --------- \| \| Continuous \| Course is active on an ongoing basis. \| \| DateRange \| Course is only intended to be available between specific date ranges \| \| FixedNumDays \| Course is only available for a set number of days \| \| Term \| Course availablity is dictated by its associated term \|   |
| `availability__duration__start` | string | No | The date this course starts. May only be set if availability.duration.type is DateRange.  |
| `availability__duration__daysOfUse` | integer | No | The number of days this course can be used. May only be set if availability.duration.type is FixedNumDays.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete course by courseid

**Slug:** `BLACKBOARD_COURSE_ORG_SYNC_REMOVAL`

Deletes a specific course from the Blackboard Learn platform. This endpoint should be used when an administrator or authorized user needs to permanently remove a course from the system, including all associated content, enrollments, and data. It is particularly useful for cleaning up old or unused courses, or when restructuring the course catalog. Caution should be exercised when using this endpoint, as the deletion is irreversible and will result in the loss of all course-related information. This operation may have significant implications for student records and institutional data, so it should only be used after careful consideration and in compliance with institutional policies.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `removeFiles` | boolean | No | Whether to delete course files.  Defaults to true. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a class course

**Slug:** `BLACKBOARD_COURSE_OR_ORGANIZATION_CREATION`

Creates a new course in the Blackboard Learn system with specified settings and configurations. This endpoint allows administrators or instructors to set up a course with various parameters including its basic information, availability, enrollment options, and localization settings. It's particularly useful when setting up new courses for an academic term or creating specialized learning environments. The endpoint requires at minimum a course ID and name, but offers extensive customization through optional parameters. It's important to note that some settings, like Ultra status, can significantly impact the course's interface and functionality, so careful consideration should be given when configuring these options.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the course. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `termId` | string | No | The ID of the term associated to this course. This may optionally be the term"s externalId using the syntax "externalId:spring.2016".  |
| `courseId` | string | Yes | The Course ID attribute, shown to users in the UI. |
| `readOnly` | boolean | No | This status does not affect availability of the course for viewing in any way. readOnly is valid for both Ultra and Classic courses. If an Ultra course is in readOnly mode, updates are not possible. For a Classic course in readOnly mode, updates are still possible (through Web UI but not through REST i.e. closed is enforced for original courses when updated through REST the same way Ultra courses are blocked) but new notifications are not generated. **Deprecated**: since 3400.8.0; use the v2 endpoint"s closedComplete property instead  |
| `externalId` | string | No | An optional externally-defined unique ID for the course. Defaults to the courseId. Formerly known as "batchUid".  |
| `locale__id` | string | No | The locale of this course. |
| `allowGuests` | boolean | No | Whether guests (users with the role guest) are allowed access to the course. Modifiable only for Classic course. Defaults to true for Classic Courses and false for Ultra Courses.  |
| `description` | string | No | The description of the course. |
| `ultraStatus` | string ("Classic" | "Ultra" | "UltraPreview" | "Undecided") | No | Whether the course is rendered using Classic or Ultra Course View.  \| Type      \| Description  \| --------- \| --------- \| \| Undecided \| The ultra status is not decided. \| \| Classic \| The course is decided as classic. \| \| Ultra \| The course is decided as ultra \| \| UltraPreview \| The course is currently in Ultra mode but during the preview state where it may still be reverted via a Restore to the classic state \|   |
| `dataSourceId` | string | No | The ID of the data source associated with this course. This may optionally be the data source"s externalId using the syntax "externalId:math101".  |
| `organization` | boolean | No | Whether this object represents an Organization. Defaults to false. |
| `locale__force` | boolean | No | Whether students are forced to use the course"s specified locale. |
| `enrollment__end` | string | No | The date on which enrollment in this course ends. May only be set if enrollment.type is SelfEnrollment.  |
| `enrollment__type` | string ("EmailEnrollment" | "InstructorLed" | "SelfEnrollment") | No | Specifies the enrollment options for the course. Defaults to InstructorLed.  \| Type      \| Description  \| --------- \| --------- \| \| InstructorLed \| Enrollment tasks for the course can only performed by the instructor \| \| SelfEnrollment \| Instructors have the ability to enroll users, and students can also enroll themselves in the course \| \| EmailEnrollment \| Instructors have the ability to enroll users, and students can email requests to the instructor for enrollment \|   |
| `enrollment__start` | string | No | The date on which enrollments are allowed for the course. May only be set if enrollment.type is SelfEnrollment.  |
| `enrollment__accessCode` | string | No | The enrollment access code associated with this course. May only be set if enrollment.type is SelfEnrollment.  |
| `availability__available` | string ("Disabled" | "No" | "Term" | "Yes") | No | Whether the course is currently available to students. Instructors can always access the course if they have "Access unavailable course" entitlement. If set to "Term", the course"s parent term availability settings will be used.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may access the course. \| \| No \| Students may not access the course. \| \| Disabled \| Disabled by the SIS. Students may not access the course.  **Since**: 3100.0.0 \| \| Term \| Availability is inherited from the term settings. Requires a termId be set. \|   |
| `availability__duration__end` | string | No | The date this course ends. May only be set if availability.duration.type is DateRange.  |
| `availability__duration__type` | string ("Continuous" | "DateRange" | "FixedNumDays" | "Term") | No | The intended length of the course.  \| Type      \| Description  \| --------- \| --------- \| \| Continuous \| Course is active on an ongoing basis. \| \| DateRange \| Course is only intended to be available between specific date ranges \| \| FixedNumDays \| Course is only available for a set number of days \| \| Term \| Course availablity is dictated by its associated term \|   |
| `availability__duration__start` | string | No | The date this course starts. May only be set if availability.duration.type is DateRange.  |
| `availability__duration__daysOfUse` | integer | No | The number of days this course can be used. May only be set if availability.duration.type is FixedNumDays.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete user from course

**Slug:** `BLACKBOARD_COURSE_USER_REMOVAL`

Removes a specific user from a particular course in the Blackboard learning management system. This endpoint should be used when an administrator or instructor needs to unenroll a student, remove a teaching assistant, or disassociate any user from a course. It's particularly useful for managing course rosters, handling student withdrawals, or updating staff assignments. The operation is irreversible, so it should be used with caution. This endpoint does not delete the user from the entire Blackboard system; it only removes their association with the specified course. It's important to note that this action may affect the user's access to course materials and their course-related data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update user criterion in adaptive rule

**Slug:** `BLACKBOARD_CREATE_ADAPTIVE_RELEASE_ACL_USER_PREDICATE`

This endpoint updates a user-specific criterion within an adaptive release rule for a particular content item in a Blackboard course. It allows for fine-tuning of content visibility based on individual user conditions. Use this endpoint when you need to modify existing user-based criteria for adaptive release rules, such as changing performance thresholds or adjusting access conditions for a specific student. This tool is specifically for updating existing criteria and should not be used for creating new rules or criteria. Note that this endpoint focuses solely on user-specific criteria and does not handle group-based or date-based release conditions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ruleId` | string | Yes | The rule ID. This should be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |
| `criterionId` | string | Yes | The adaptive release criterion ID. This should be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create adaptive release criteria by rule

**Slug:** `BLACKBOARD_CREATE_ADAPTIVE_RELEASE_RULE_CRITERIA`

This endpoint allows for the creation of new adaptive release criteria for a specific rule within a course's content in Blackboard. It is used to define conditions under which course content will be made available to students, such as completion of prerequisites, achievement of certain grades, or specific dates. The endpoint should be used when instructors or course designers want to implement or modify conditional access to course materials. It's important to note that this endpoint only creates criteria for existing adaptive release rules and does not create the rules themselves.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ruleId` | string | Yes | The rule ID. This should be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create system announcement

**Slug:** `BLACKBOARD_CREATE_ANNOUNCEMENT`

Creates a new system-wide announcement in the Blackboard Learn environment. This endpoint allows administrators to compose and configure announcements that can be displayed to users across the platform. The announcement can be customized with rich text content, specific visibility durations, and display locations such as the login page or within courses. Use this endpoint when you need to broadcast important information, updates, or alerts to all users or specific segments of your Blackboard Learn community. It's particularly useful for system-wide notifications, maintenance alerts, or important institutional announcements. Note that creating excessive or irrelevant announcements may lead to information overload for users, so use this feature judiciously.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | No | The message body of the System Announcement. This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `title` | string | Yes | The title of this System Announcement. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `showAtLogin` | boolean | No | Whether this System Announcement should be displayed on the login page. |
| `showInCourses` | boolean | No | Whether this System Announcement should be displayed on courses. |
| `availability__duration__end` | string | No | The date this Announcement stops being Available. |
| `availability__duration__type` | string ("Permanent" | "Restricted") | No | Indicates whether this System Announcement is always displayed (Permanent) or if it is shown only between the Start and End dates (Restricted).  \| Type      \| Description  \| --------- \| --------- \| \| Permanent \| The Announcement will always be displayed. \| \| Restricted \| The Announcement will start being displayed on Duration.Start and stop being displayed on Duration.End \|   |
| `availability__duration__start` | string | No | The date this Announcement starts being Available. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create assignment in course contents

**Slug:** `BLACKBOARD_CREATE_ASSIGNMENT`

Creates a new assignment within a specified Blackboard course. This endpoint allows instructors to set up detailed assignments with customizable settings for availability, grading, and plagiarism detection. It supports rich text instructions using BbML, adaptive release for controlled content visibility, and integration with originality reporting tools. Use this endpoint when you need to programmatically create assignments with specific requirements or to batch create multiple assignments. The endpoint provides extensive customization options but requires careful consideration of parameters to ensure the assignment is set up correctly for student access and evaluation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | Yes | The title used for the created assignment content and gradebook column. Typically shown as the main text to click in the course outline when accessing the assignment.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `parentId` | string | No | The id of the parent content for the created assignment. |
| `position` | integer | No | The position of the created assignment within the other other content of its parent. Position values are zero-based (the first element has a position value of zero, not one). Default position is last in the list of child contents under the parent.  |
| `description` | string | No | The description to use when creating the assignment content. |
| `grading__due` | string | No | Date and time that the created assignment will be due. If not specified, this will default to the specified "availability.adaptiveRelease.end" date. If that is also not specified, due date defaults to null.  |
| `instructions` | string | No | The text instructions to use when creating the assignment content. This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `fileUploadIds` | array | No | Fileuploadids |
| `score__possible` | integer | No | The number of points possible for the created assignment. Defaults to 100.  |
| `grading__gradeSchemaId` | string | No | The grading schema to use for the created assignment. Defaults to Score. |
| `allowChildCourseContent` | boolean | No | By default, child courses of a cross listed course can not have their contents modified.  The allowChildCourseContent parameter can be sent as true in order to bypass this validation.  |
| `availability__available` | string ("No" | "PartiallyVisible" | "Yes") | No | Whether the created assignment is available to students. Instructors can always access the created assignment. If set to "PartiallyVisible", the title will be available to students but the body will not. Defaults to Yes.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \|  \| \| No \|  \| \| PartiallyVisible \|  \|   |
| `grading__attemptsAllowed` | integer | No | The number of attempts allowed on the created assignment. Defaults to 1. Maximum allowed is 10 for an Ultra Assignment. Value will be ignored if isUnlimitedAttemptsAllowed is set to true.  |
| `availability__allowGuests` | boolean | No | Whether the created assignment is available to users with the "guest" role. Defaults to true.  |
| `availability__allowObservers` | boolean | No | Whether the created assignment is available to users with the "observer" role. Defaults to true. **Since**: 3900.31.0  |
| `originalityReportingTool__id` | string | No | The Originality Reporting Tools handler id. |
| `availability__adaptiveRelease__end` | string | No | The date when the created assignment will no longer be available to students.  |
| `grading__isUnlimitedAttemptsAllowed` | boolean | No | Determines if the assignment has unlimited number of attempts. **Since**: 3400.8.0  |
| `availability__adaptiveRelease__start` | string | No | The date when the created assignment will become available to students. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update user meeting attendance status

**Slug:** `BLACKBOARD_CREATE_ATTENDANCE_RECORD`

Adds a user to a specific meeting within a Blackboard course and sets their attendance status. This endpoint is essential for managing attendance and user participation in course meetings. It allows instructors or authorized users to update a student's attendance record for a particular meeting. The endpoint should be used when recording attendance for course meetings, updating a user's attendance status, or integrating external attendance tracking systems with Blackboard. It provides a way to maintain accurate attendance records, which can be crucial for course management and student engagement tracking.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `status` | string ("Absent" | "Excused" | "Late" | "Present") | Yes | The attendance status of the user.  \| Type      \| Description  \| --------- \| --------- \| \| Absent \|  \| \| Late \|  \| \| Present \|  \| \| Excused \|  \|   |
| `userId` | string | Yes | The learn external id of the user. |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `meetingId` | string | Yes | The primary id of the meeting. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create calendar items

**Slug:** `BLACKBOARD_CREATE_CALENDAR_ITEM`

This endpoint creates a new calendar item in the Blackboard platform. It allows users to add various types of events, such as course-related activities, personal appointments, or institution-wide events, to specific calendars within the system. The endpoint supports creating one-time events as well as recurring items with customizable recurrence patterns. It also facilitates the integration of Learning Tools Interoperability (LTI) links, enabling the association of external learning tools with calendar items. This endpoint should be used when adding new events or activities to Blackboard calendars, but it cannot be used to modify existing calendar items or to create items for the read-only GradebookColumn type.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `end` | string | No | End date of the calendar item either in the past if the calendar item is for an event that"s already end OR in the future if it"s for an event to end in the future. This is always set and should occur after the start date.  |
| `type` | string ("Course" | "GradebookColumn" | "Institution" | "OfficeHours" | "Personal") | Yes | The type of this Calendar Item.  \| Type      \| Description  \| --------- \| --------- \| \| Course \|  \| \| GradebookColumn \| Read only. \| \| Institution \|  \| \| OfficeHours \|  \| \| Personal \|  \|   |
| `start` | string | No | Start date of the calendar item either in the past if the calendar item is for an event that"s already started OR in the future if it"s for an event to start in the future. This is always set and should occur before the end date.  |
| `title` | string | No | Title of the calendar item. Title length cannot exceed 255 characters. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `location` | string | No | Location of the calendar item and it cannot exceed 1024 characters. |
| `calendarId` | string | Yes | Calendar source identifier which indicates the calendar on which the calendar item was created. Examples of possible values : "PERSONAL", "INSTITUTION", and course id in the format of "_3_1".  |
| `description` | string | No | Description of the calendar item. |
| `disableResizing` | boolean | No | Whether resizing of the calendar item should NOT be allowed. |
| `recurrence__count` | integer | No | Recurrence count indicating how many times the calendar item should be repeated. Either this count OR the "until" date is/"should be" set. When creating a calendar item, "until" date will be used if both "until" date and the count are set.  |
| `recurrence__until` | string | No | The date the calendar item should be repeated until. Either this "until" date OR the count is/"should be" set. When creating a calendar item, "until" date will be used if both "until" date and the count are set.  |
| `recurrence__interval` | integer | No | Interval between recurrences depends on the repeating type. For example, if the calendar times should be repeated every three weeks, you need set interval to 3 as well as frequency to "Weekly". Minimum and Maximum allowed Intervals are 1 and 100 respectively.  |
| `recurrence__weekDays` | array | No | This property is used in conjunction with the "Weekly" frequency and it indicates the days of the week the calendar item should be repeated on.  |
| `recurrence__frequency` | string ("Daily" | "Monthly" | "Weekly") | No | Frequency of the calendar item repeated.  \| Type      \| Description  \| --------- \| --------- \| \| Monthly \|  \| \| Weekly \|  \| \| Daily \|  \|   |
| `recurrence__repeatDay` | string ("Friday" | "Monday" | "Saturday" | "Sunday" | "Thursday" | "Tuesday" | "Wednesday") | No | For monthly recurring event, repeat by day of week.  \| Type      \| Description  \| --------- \| --------- \| \| Sunday \|  \| \| Monday \|  \| \| Tuesday \|  \| \| Wednesday \|  \| \| Thursday \|  \| \| Friday \|  \| \| Saturday \|  \|   |
| `ltiLaunchDeepLink__url` | string | No | URL to launch of the Learning Tools Interoperability link |
| `ltiLaunchDeepLink__uuid` | string | No | Unique Id of the Learning Tools Interoperability link |
| `recurrence__originalEnd` | string | No | The original end date for the calendar item. |
| `ltiLaunchDeepLink__title` | string | No | Title of the Learning Tools Interoperability link |
| `recurrence__repeatBroken` | boolean | No | Calendar item that"s repeated is part of a recurring series of calendar events but the item has been changed since its original creation. In other words, the calendar item has been modified to no longer align with the recurring series (day/time changed for example) of events. This can only be true if the calendar item is repeatable.  |
| `recurrence__monthPosition` | integer | No | This property is used in conjunction with the "Monthly" frequency and it indicates that the calendar item is/"should be" repeated on nth occurrence of "repeatDay" in the month. Valid values for "monthPosition" are integers in the range of -1 and 4 inclusive: -1 for the last occurrence, 1 for the first occurrence, 2 for the second occurrence, and so on. 0 is not used.  |
| `recurrence__originalStart` | string | No | The original start date for the calendar item. |
| `recurrence__monthRepeatDay` | integer | No | This property is used in conjunction with the "Monthly" frequency and it indicates on which day of the month the calendar item is/"should be" repeated on. The valid values are valid month days, that is, 1 to 31. Either this OR both "monthPosition" and "repeatDay" should be set to create a recurring calendar item with "Monthly" frequency.  |
| `dynamicCalendarItemProps__gradable` | boolean | No | The dynamic calendar item can be graded and the current user (in context) has permission/entitlement to grade attempts for the object represented by this calendar item.  |
| `ltiLaunchDeepLink__placementHandle` | string | No | Placement handle Id of the Learning Tools Interoperability link |
| `dynamicCalendarItemProps__eventType` | string | No | Returns a human readable string describing the type of calendar item represented (e.g. assignment, test, etc.).  |
| `ltiLaunchDeepLink__customParameters` | object | No | Custom parameters of the Learning Tools Interoperability link |
| `dynamicCalendarItemProps__categoryId` | string | No | Returns the gradeableItem categoryId value .it is only set if the calendar event is dynamically created based on a single grade book column  |
| `dynamicCalendarItemProps__attemptable` | boolean | No | The dynamic calendar item can be attempted (can have attempts made against it) and the current user (in context) has permission/entitlement to grade attempts for the object represented by this calendar item.  |
| `dynamicCalendarItemProps__dateRangeLimited` | boolean | No | The dynamic calendar item is only visible during a specific windows of time.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add catalog category by type

**Slug:** `BLACKBOARD_CREATE_CATEGORY`

Creates a new category in the Blackboard catalog system. This endpoint allows administrators to define and organize content categories within the learning management system. Use this tool to add a new category with specific properties such as title, description, availability, and access restrictions. It's particularly useful for structuring course offerings, organizing resources, or creating custom catalogs within Blackboard. The created category can be set to appear on the front page and can be restricted to specific institutional roles, providing flexible control over content organization and access.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | Yes | The title of category |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `parentId` | string | No | The ID of this category"s parent category |
| `available` | boolean | Yes | Boolean indicating whether or not the category is available |
| `frontPage` | boolean | No | Boolean indicating whether or not the category should appear on the catalog front page  |
| `categoryId` | string | Yes | The human-readable id of the category |
| `restricted` | boolean | No | Boolean indicating whether or not category is available to all roles, or restricted to a specific set of roles.  |
| `description` | string | No | The description of the category |
| `categoryType` | string ("Course" | "Organization") | Yes | Categorytype |
| `institutionRoleIds` | array | No | The roles for which this category is available, if category is set to restricted. Not populated for lists of categories, only for individual category  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create child content in course

**Slug:** `BLACKBOARD_CREATE_CHILD`

Creates a new content item within a specified course and parent content in the Blackboard Learn platform. This endpoint allows for the creation of various types of content, such as documents, external links, folders, and assignments. It provides extensive control over content properties, including title, body, description, availability, and positioning within the course structure. The endpoint supports rich text formatting through BbML and offers features like review status and adaptive release settings. It should be used when adding new materials, resources, or organizational elements to a course. Note that the content type is determined by the contentHandler, and some properties may have different effects depending on the course experience (Classic vs. Ultra).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | No | The body text associated with this content. This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `title` | string | Yes | The title or name of this content. Typically shown as the main text to click in the course outline when accessing the content.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `subtype` | string | No | Optional assessment subtype for further differentiation. For example, a test can have the subtype "assignment" in Ultra, alongside AI conversations and knowledge checks, ensuring type-agnostic categorization.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `parentId` | string | No | The ID of the content"s parent.  Note that top-level contents do not have parents. The "parentId" field is a writable field as of the Bb Learn 3200.6.0 release.  Specifying a new value in PATCH requests allows the Content object to be moved from one parent to another.  |
| `position` | integer | No | The position of this content within its parent folder. Position values are zero-based (the first element has a position value of zero, not one). Default position is last in the list of child contents under the parent.  |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |
| `reviewable` | boolean | No | Indicates whether Review Status is enabled for this content. Content items with review status enabled can be marked as reviewed by students in classic courses and content items with review status enabled in Ultra are either in a Forced Sequence or content that should be counted towards the progress tracking feature as of 3900.19 This can be used to track performance and in Adaptive Release rules to control the release of other content. **Since**: 3700.15.0  |
| `description` | string | No | The short description of this content. This field is not used in Classic courses.  For Ultra courses this is used to show information directly on the course outline.  |
| `launchInNewWindow` | boolean | No | Indicates whether the content is going to open in a new window. **Since**: 3800.10.0  |
| `contentHandler__id` | string | No | The content handler"s ID. Publicly supported handlers:   \| ID                                 \| Documentation                   \| Since     \|  \|------------------------------------\|---------------------------------\|-----------\|  \| resource/x-bb-document             \| ContentItemTOPubV1              \|  3000.1.0 \|  \| resource/x-bb-externallink         \| ExternalLinkTOPubV1             \|  3000.1.0 \|  \| resource/x-bb-folder               \| ContentFolderTOPubV1            \|  3000.1.0 \|  \| resource/x-bb-courselink           \| CourseLinkTOPubV1               \|  3100.5.0 \|  \| resource/x-bb-forumlink            \| DiscussionLinkTOPubV1           \|  3100.6.0 \|  \| resource/x-bb-blti-link            \| BasicLTITOPubV1                 \|  3200.6.0 \|  \| resource/x-bb-file                 \| ContentFileTOPubV1              \|  3200.6.0 \|  \| resource/x-bb-asmt-test-link       \| TestLinkTOPubV1                 \|  3300.5.0 \|  \| resource/x-bb-assignment           \| AssignmentTOPubV1               \|  3400.9.0 \|  \| resource/x-bb-blti-bltiplacement-* \| BasicLTIPlacementContentTOPubV1 \|  3600.0.0 \|   For handlers that are not publicly supported yet, their ID will be shown here, and updates to common content attributes are allowed, but extended handler-specific attributes will not be visible.  |
| `allowChildCourseContent` | boolean | No | By default, child courses of a cross listed course can not have their contents modified.  The allowChildCourseContent parameter can be sent as true in order to bypass this validation.  |
| `availability__available` | string ("No" | "PartiallyVisible" | "Yes") | No | Whether the content is currently available to students.  Instructors can always access the content.  If set to "PartiallyVisible", the title will be available to students but the body will not.  Defaults to Yes.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \|  \| \| No \|  \| \| PartiallyVisible \|  \|   |
| `availability__allowGuests` | boolean | No | Whether this content is available to users with the "guest" role. Defaults to true.  |
| `availability__allowObservers` | boolean | No | Whether or not "observers" are allowed access to this Content. Defaults to true. **Since**: 3900.31.0  |
| `availability__adaptiveRelease__end` | string | No | The date when this content will no longer be available to students. |
| `availability__adaptiveRelease__start` | string | No | The date when this content will become available to students. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add child node in hierarchy

**Slug:** `BLACKBOARD_CREATE_CHILD_NODE`

Creates a new child node within the institutional hierarchy of Blackboard Learn. This endpoint allows administrators to expand and organize the structure of their educational institution by adding new nodes as children of existing ones. It is particularly useful for creating department, faculty, or program-level nodes within a larger institutional framework. The endpoint requires at least a title for the new node and can optionally include an external ID, description, and specific parent ID. Use this when you need to add a new organizational unit or level to your institution's hierarchy in Blackboard.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | Yes | Node display name |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `nodeId` | string | Yes | The node ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|      |
| `parentId` | string | No | The ID of the Node parent in the database |
| `externalId` | string | No | Node unique identifier |
| `description` | string | No | Node description |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Submit gradebook attempt

**Slug:** `BLACKBOARD_CREATE_COLUMN_ATTEMPT`

Creates a new attempt for a specific gradebook column in a Blackboard course. This endpoint allows instructors or authorized users to add a new attempt record for a student's assignment or assessment. It can be used to manually enter grades, provide feedback, or update the status of an attempt. The endpoint is particularly useful for managing individual student submissions, entering grades for offline assignments, or updating attempt statuses in bulk. Note that some fields, such as the attemptReceipt, are read-only and will be generated by the system rather than accepted as input.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `text` | string | No | The text grade associated with this attempt. |
| `notes` | string | No | The instructor notes associated with this attempt. |
| `score` | integer | No | The score associated with this attempt. |
| `exempt` | boolean | No | Whether the score associated with this attempt is ignored when computing the user"s grade for the associated grade column.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `status` | string ("Abandoned" | "Canceled" | "Completed" | "InProgress" | "InProgressAgain" | "NeedsGrading" | "NeedsGradingAgain" | "NotAttempted" | "Suspended") | No | The status of this attempt.  \| Type      \| Description  \| --------- \| --------- \| \| NotAttempted \| none of the students in a group has submitted an attempt; applies only to group assessments \| \| Abandoned \|   **Deprecated**: Since 9.1 SP8 unsupported status, undetermined behavior if used. \| \| InProgress \| attempt activity has commenced, but has not been submitted for grading \| \| Suspended \|   **Deprecated**: Since 9.1 SP8 unsupported status, undetermined behavior if used. \| \| Canceled \|   **Deprecated**: Since 9.1 SP8 unsupported status, undetermined behavior if used. \| \| NeedsGrading \| attempt has been submitted for grading, but has not been fully graded \| \| Completed \| a grade has been entered for the attempt \| \| InProgressAgain \| attempt has been graded, but more student activity occurred after the grade was entered; applies only to collaborative tools such as discussions \| \| NeedsGradingAgain \| additional student activity occurring after a grade was entered requires that the attempt be regraded; applies only to collaborative tools such as discussions \|   |
| `userId` | string | No | The user ID associated with this attempt.  Defaults to the authenticated user on create.  Can be specified as a user other than the authenticated user if the authenticated user has the "course.gradebook.MODIFY" entitlement and the authenticated application has the "course.attempt.nonowner.SUBMIT" entitlement.  |
| `columnId` | string | Yes | Columnid |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `feedback` | string | No | The instructor feedback associated with this attempt. |
| `attemptDate` | string | No | Return the attempt date associated with this attempt. |
| `studentComments` | string | No | The student comments associated with this attempt. |
| `studentSubmission` | string | No | The student submission text associated with this attempt. |
| `reconciliationMode` | string ("Average" | "Custom" | "Highest" | "Lowest") | No | The reconciliation mode to use when reconciling the attempt grade.  When modifying reconciliationMode, score is also required.  A new score will not be calculated based on the reconciliationMode **Since**: 3700.2.0  \| Type      \| Description  \| --------- \| --------- \| \| Average \|  \| \| Highest \|  \| \| Lowest \|  \| \| Custom \|  \|   |
| `attemptReceipt__receiptId` | string | No | The ID of the receipt. |
| `groupAttemptStudentComments` | string | No | The group attempt student comments associated with this attempt. |
| `attemptReceipt__submissionDate` | string | No | The date the associated attempt was submitted. |
| `attemptReceipt__submissionTotalSize` | integer | No | The total size of the submission in bytes **Since**: 3900.37.0 |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Post group attempts for gradebook column

**Slug:** `BLACKBOARD_CREATE_COLUMN_GROUP_ATTEMPT`

The CreateGroupAttempt endpoint allows for the creation or update of a group attempt for a specific gradebook column in a Blackboard Learn course. This tool is essential for managing group submissions, tracking their progress, and facilitating the grading process. It supports various aspects of group work, including submission status tracking, grading, feedback, and metadata management. The endpoint is particularly useful for instructors and course administrators who need to manage group assignments and assessments within the Blackboard learning environment. It provides flexibility in handling different stages of the submission process, from initial attempt to final grading, and supports both regular and Ultra course formats. However, users should be aware that some status options are deprecated and may cause unexpected behavior if used.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `text` | string | No | The text grade associated with this attempt. |
| `notes` | string | No | The instructor notes associated with this attempt. |
| `score` | integer | No | The score associated with this attempt. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `status` | string ("Abandoned" | "Canceled" | "Completed" | "InProgress" | "InProgressAgain" | "NeedsGrading" | "NeedsGradingAgain" | "NotAttempted" | "Suspended") | No | The status of this attempt.  \| Type      \| Description  \| --------- \| --------- \| \| NotAttempted \| none of the students in a group has submitted an attempt; applies only to group assessments \| \| Abandoned \|   **Deprecated**: Since 9.1 SP8 unsupported status, undetermined behavior if used. \| \| InProgress \| attempt activity has commenced, but has not been submitted for grading \| \| Suspended \|   **Deprecated**: Since 9.1 SP8 unsupported status, undetermined behavior if used. \| \| Canceled \|   **Deprecated**: Since 9.1 SP8 unsupported status, undetermined behavior if used. \| \| NeedsGrading \| attempt has been submitted for grading, but has not been fully graded \| \| Completed \| a grade has been entered for the attempt \| \| InProgressAgain \| attempt has been graded, but more student activity occurred after the grade was entered; applies only to collaborative tools such as discussions \| \| NeedsGradingAgain \| additional student activity occurring after a grade was entered requires that the attempt be regraded; applies only to collaborative tools such as discussions \|   |
| `userId` | string | No | The Id of the User who submitted this Group Attempt. |
| `groupId` | string | Yes | The Id of the Group that owns this Group Attempt. |
| `columnId` | string | Yes | Columnid |
| `courseId` | string | Yes | Courseid |
| `feedback` | string | No | The instructor feedback associated with this attempt. |
| `attemptDate` | string | No | Return the attempt date associated with this attempt. |
| `readyToPost` | boolean | No | The ready to post status of the group attempt. Only applicable to ultra courses and when the status of the attempt is "needsgrading". For any other attempt status values the readyToPost value is not applicable. In order for the attempt"s final grade to be displayed, readyToPost value must be set to true.  |
| `groupComments` | string | No | The group"s comments associated with this Group Attempt. |
| `groupSubmission` | string | No | The group"s submission text associated with this Group Attempt. |
| `attemptReceipt__receiptId` | string | No | The ID of the receipt. |
| `attemptReceipt__submissionDate` | string | No | The date the associated attempt was submitted. |
| `attemptReceipt__submissionTotalSize` | integer | No | The total size of the submission in bytes **Since**: 3900.37.0 |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create course content in course

**Slug:** `BLACKBOARD_CREATE_CONTENT`

Creates new content within a specified Blackboard course. This endpoint allows for the addition of various types of content, including documents, external links, folders, and more, with detailed configuration options. It supports rich text formatting through BbML, hierarchical content structure, and granular control over content availability and accessibility. Use this endpoint when adding new materials, resources, or structural elements to a course. It's particularly useful for bulk content creation or programmatic course setup. Note that while it offers extensive customization, some advanced features may depend on the Blackboard Learn version in use.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | No | The body text associated with this content. This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `title` | string | Yes | The title or name of this content. Typically shown as the main text to click in the course outline when accessing the content.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `subtype` | string | No | Optional assessment subtype for further differentiation. For example, a test can have the subtype "assignment" in Ultra, alongside AI conversations and knowledge checks, ensuring type-agnostic categorization.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `parentId` | string | No | The ID of the content"s parent.  Note that top-level contents do not have parents. The "parentId" field is a writable field as of the Bb Learn 3200.6.0 release.  Specifying a new value in PATCH requests allows the Content object to be moved from one parent to another.  |
| `position` | integer | No | The position of this content within its parent folder. Position values are zero-based (the first element has a position value of zero, not one). Default position is last in the list of child contents under the parent.  |
| `reviewable` | boolean | No | Indicates whether Review Status is enabled for this content. Content items with review status enabled can be marked as reviewed by students in classic courses and content items with review status enabled in Ultra are either in a Forced Sequence or content that should be counted towards the progress tracking feature as of 3900.19 This can be used to track performance and in Adaptive Release rules to control the release of other content. **Since**: 3700.15.0  |
| `description` | string | No | The short description of this content. This field is not used in Classic courses.  For Ultra courses this is used to show information directly on the course outline.  |
| `launchInNewWindow` | boolean | No | Indicates whether the content is going to open in a new window. **Since**: 3800.10.0  |
| `contentHandler__id` | string | No | The content handler"s ID. Publicly supported handlers:   \| ID                                 \| Documentation                   \| Since     \|  \|------------------------------------\|---------------------------------\|-----------\|  \| resource/x-bb-document             \| ContentItemTOPubV1              \|  3000.1.0 \|  \| resource/x-bb-externallink         \| ExternalLinkTOPubV1             \|  3000.1.0 \|  \| resource/x-bb-folder               \| ContentFolderTOPubV1            \|  3000.1.0 \|  \| resource/x-bb-courselink           \| CourseLinkTOPubV1               \|  3100.5.0 \|  \| resource/x-bb-forumlink            \| DiscussionLinkTOPubV1           \|  3100.6.0 \|  \| resource/x-bb-blti-link            \| BasicLTITOPubV1                 \|  3200.6.0 \|  \| resource/x-bb-file                 \| ContentFileTOPubV1              \|  3200.6.0 \|  \| resource/x-bb-asmt-test-link       \| TestLinkTOPubV1                 \|  3300.5.0 \|  \| resource/x-bb-assignment           \| AssignmentTOPubV1               \|  3400.9.0 \|  \| resource/x-bb-blti-bltiplacement-* \| BasicLTIPlacementContentTOPubV1 \|  3600.0.0 \|   For handlers that are not publicly supported yet, their ID will be shown here, and updates to common content attributes are allowed, but extended handler-specific attributes will not be visible.  |
| `allowChildCourseContent` | boolean | No | By default, child courses of a cross listed course can not have their contents modified.  The allowChildCourseContent parameter can be sent as true in order to bypass this validation.  |
| `availability__available` | string ("No" | "PartiallyVisible" | "Yes") | No | Whether the content is currently available to students.  Instructors can always access the content.  If set to "PartiallyVisible", the title will be available to students but the body will not.  Defaults to Yes.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \|  \| \| No \|  \| \| PartiallyVisible \|  \|   |
| `availability__allowGuests` | boolean | No | Whether this content is available to users with the "guest" role. Defaults to true.  |
| `availability__allowObservers` | boolean | No | Whether or not "observers" are allowed access to this Content. Defaults to true. **Since**: 3900.31.0  |
| `availability__adaptiveRelease__end` | string | No | The date when this content will no longer be available to students. |
| `availability__adaptiveRelease__start` | string | No | The date when this content will become available to students. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update content group association

**Slug:** `BLACKBOARD_CREATE_CONTENT_GROUP`

This endpoint updates the association between a specific content item and a group within a Blackboard Learn course. It is used to modify existing content-group relationships, enabling instructors or administrators to manage group-specific content access or visibility. The endpoint requires the course ID, content ID, and group ID to be specified in the URL path, with the content ID and group ID repeated in the request body for confirmation. This operation is particularly useful for customizing content delivery to different student groups or managing group-based learning activities within a course. Note that this endpoint only updates existing associations and cannot create new content or groups.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `groupId` | string | Yes | The ID of the association of content and group. |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The ID of the associated content. |
| `allowChildCourseContent` | boolean | No | By default, child courses of a cross listed course can not have their contents modified.  The allowChildCourseContent parameter can be sent as true in order to bypass this validation.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a new course

**Slug:** `BLACKBOARD_CREATE_COURSE`

Creates a new course in the Blackboard Learn system with specified attributes and settings. This endpoint allows for the detailed configuration of a course, including its basic information, availability, enrollment options, and localization settings. It supports both Classic and Ultra course views and provides flexibility in defining course duration, access control, and integration with external systems. Use this endpoint when setting up a new course or organization within Blackboard, ensuring all required parameters are provided and optional parameters are used as needed to fully customize the course setup.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the course. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `termId` | string | No | The ID of the term associated to this course. This may optionally be the term"s externalId using the syntax "externalId:spring.2016".  |
| `courseId` | string | Yes | The Course ID attribute, shown to users in the UI. |
| `externalId` | string | No | An optional externally-defined unique ID for the course. Defaults to the courseId. Formerly known as "batchUid".  |
| `locale__id` | string | No | The locale of this course. |
| `allowGuests` | boolean | No | Whether guests (users with the role guest) are allowed access to the course. Modifiable only for Classic course. Defaults to true for Classic Courses and false for Ultra Courses.  |
| `description` | string | No | The description of the course. |
| `ultraStatus` | string ("Classic" | "Ultra" | "UltraPreview" | "Undecided") | No | Whether the course is rendered using Classic or Ultra Course View.  \| Type      \| Description  \| --------- \| --------- \| \| Undecided \| The ultra status is not decided. \| \| Classic \| The course is decided as classic. \| \| Ultra \| The course is decided as ultra \| \| UltraPreview \| The course is currently in Ultra mode but during the preview state where it may still be reverted via a Restore to the classic state \|   |
| `dataSourceId` | string | No | The ID of the data source associated with this course. This may optionally be the data source"s externalId using the syntax "externalId:math101".  |
| `organization` | boolean | No | Whether this object represents an Organization. Defaults to false. |
| `locale__force` | boolean | No | Whether students are forced to use the course"s specified locale. |
| `allowObservers` | boolean | No | Whether observers are allowed access to the course. Modifiable only for Classic course. Defaults to false. **Since**: 3900.31.0  |
| `closedComplete` | boolean | No | This status does not affect availability of the course for viewing in any way. closedComplete is valid for both Ultra and Classic courses. If an Ultra course is in closedComplete mode, updates are not possible. For a Classic course in closedComplete mode, updates are still possible (through Web UI but not through REST i.e. closed is enforced for original courses when updated through REST the same way Ultra courses are blocked) but new notifications are not generated.  |
| `enrollment__end` | string | No | The date on which enrollment in this course ends. May only be set if enrollment.type is SelfEnrollment.  |
| `enrollment__type` | string ("EmailEnrollment" | "InstructorLed" | "SelfEnrollment") | No | Specifies the enrollment options for the course. Defaults to InstructorLed.  \| Type      \| Description  \| --------- \| --------- \| \| InstructorLed \| Enrollment tasks for the course can only performed by the instructor \| \| SelfEnrollment \| Instructors have the ability to enroll users, and students can also enroll themselves in the course \| \| EmailEnrollment \| Instructors have the ability to enroll users, and students can email requests to the instructor for enrollment \|   |
| `enrollment__start` | string | No | The date on which enrollments are allowed for the course. May only be set if enrollment.type is SelfEnrollment.  |
| `enrollment__accessCode` | string | No | The enrollment access code associated with this course. May only be set if enrollment.type is SelfEnrollment.  |
| `availability__available` | string ("Disabled" | "No" | "Term" | "Yes") | No | Whether the course is currently available to students. Instructors can always access the course if they have "Access unavailable course" entitlement. If set to "Term", the course"s parent term availability settings will be used.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may access the course. \| \| No \| Students may not access the course. \| \| Disabled \| Disabled by the SIS. Students may not access the course. @since 3100.0.0 \| \| Term \| Availability is inherited from the term settings. Requires a termId be set. \|   |
| `availability__duration__end` | string | No | The date this course ends. May only be set if availability.duration.type is DateRange.  |
| `availability__duration__type` | string ("Continuous" | "DateRange" | "FixedNumDays" | "Term") | No | The intended length of the course. Possible values are: - Continuous: The course is active on an ongoing basis. This is the default. - DateRange: The course will only be available between specific date ranges. - FixedNumDays: The course will only be available for a set number of days. - Term: The course"s parent term duration settings will be used.  \| Type      \| Description  \| --------- \| --------- \| \| Continuous \| Course is active on an ongoing basis. \| \| DateRange \| Course is only intended to be available between specific date ranges \| \| FixedNumDays \| Course is only available for a set number of days \| \| Term \| Course availablity is dictated by its associated term \|   |
| `availability__duration__start` | string | No | The date this course starts. May only be set if availability.duration.type is DateRange.  |
| `availability__duration__daysOfUse` | integer | No | The number of days this course can be used. May only be set if availability.duration.type is FixedNumDays.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create course meeting

**Slug:** `BLACKBOARD_CREATE_COURSE_MEETING`

Creates a new meeting for a specific course within the Blackboard learning management system. This endpoint allows you to schedule and define the details of a course meeting, including its title, description, start and end times, and an optional external link. Use this when you need to add a new meeting or event to a course's calendar or schedule. The created meeting will be associated with the specified course and visible to course participants. This tool is specifically for creating new meetings and cannot be used to update existing ones or retrieve meeting information.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `end` | string | Yes | The end time of meeting |
| `start` | string | Yes | The start time of meeting |
| `title` | string | Yes | The title of the meeting |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The primary ID of the course. |
| `description` | string | Yes | The description of the meeting |
| `externalLink` | string | No | The externalLink of course meeting |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create data source with external id

**Slug:** `BLACKBOARD_CREATE_DATA_SOURCE`

Creates a new data source in the Blackboard Learn system. This endpoint is used to establish a unique identifier for an external data source, which can then be referenced in other API calls or integrations. It's particularly useful when setting up integrations between Blackboard and external systems, such as Student Information Systems (SIS) or other educational tools. The created data source can be used for various purposes, including batch operations, data synchronization, or as a reference point for imported content. This endpoint should be used when initially setting up a new integration or when a new external system needs to be recognized within Blackboard. It's important to note that the externalId must be unique across all data sources in the Blackboard instance, and once created, it cannot be changed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `externalId` | string | Yes | An externally-defined unique ID for the data source. Formerly known as "batchUid".  |
| `description` | string | No | The description of the data source. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create discussion forum in course

**Slug:** `BLACKBOARD_CREATE_DISCUSSION`

Creates a new discussion forum within a specified course in the Blackboard Learning Management System. This endpoint allows instructors or course administrators to set up a discussion topic, define its availability, and optionally make it gradable. It's particularly useful for initiating course-related discussions, Q&amp;A sessions, or collaborative learning activities. The endpoint requires a course ID in the path and accepts JSON payload with discussion details. It should be used when setting up new discussion areas for a course, but not for posting individual messages within an existing discussion. Note that while you can set the initial topic message, many properties of the discussion are auto-generated and read-only.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | Yes | Title given to the discussion forum |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `gradable` | boolean | No | Indicates if the discussion allows grading |
| `available` | boolean | No | Indicates if the discussion is available |
| `topic__id` | string | No | The Id of the message. |
| `topic__body` | string | No | Body of the message, in BbML format. |
| `topic__isRead` | boolean | No | Whether the user in context has read the message. |
| `topic__status` | string ("Deleted" | "Draft" | "Published") | No | Status of the message.  \| Type      \| Description  \| --------- \| --------- \| \| Published \| Message is published in the discussion and visible for all users. \| \| Deleted \| Message is shown in the discussion as soft-deleted. \| \| Draft \| Message is stored as a draft and only visible for the author user. \|   |
| `topic__userId` | string | No | The Id of the user who created the message. |
| `topic__groupId` | string | No | The Id of the group, only set for group discussions. |
| `topic__editDate` | string | No | Last Date in which the message was edited. |
| `topic__parentId` | string | No | The Id of the parent message. |
| `topic__postDate` | string | No | Date in which the message was posted. |
| `topic__threadId` | string | No | The Id of the message thread. |
| `topic__givenName` | string | No | Given name of the user who created the message. |
| `topic__familyName` | string | No | Family name of the user who created the message. |
| `topic__createdDate` | string | No | Date in which the message was created. |
| `topic__discussionId` | string | No | The Id of the discussion. |
| `topic__modifiedDate` | string | No | Last Date in which the message was modified. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create lti domain configuration

**Slug:** `BLACKBOARD_CREATE_DOMAIN_CONFIG`

Creates or updates an LTI (Learning Tools Interoperability) domain configuration in Blackboard Learn. This endpoint allows administrators to set up and manage integrations with external learning tools, configuring various aspects such as user data sharing, security settings, and service permissions. It's used when setting up a new LTI tool or modifying an existing integration to control how the tool interacts with Blackboard and what data it can access. The configuration includes options for managing user privacy, tool authentication, and access to Blackboard services like membership and grading.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `key` | string | No | Key |
| `name` | string | No | The name of the domain configuration **Since**: 3900.23.0 |
| `secret` | string | No | Secret |
| `status` | string ("Approved" | "Excluded" | "NeedsApproval") | No | Enum that indicates if the set of domains associated with this config can or cannot be linked to.  \| Type      \| Description  \| --------- \| --------- \| \| Approved \|  \| \| Excluded \|  \| \| NeedsApproval \|   **Since**: 3300.9.0 \|   |
| `jwksUrl` | string | No | The JWKS URL of the tool, if specified. It is optional and can be null **Since**: 3800.17.0  |
| `clientId` | string | No | The client id associated with this configuration. Only applicable for LTI versions 1.3+, excluding 2.0 **Since**: 3600.0.0  |
| `sendName` | boolean | No | Whether the user"s name can be sent to the LTI tool provider. |
| `sendRole` | boolean | No | Whether the user"s role can be sent to the LTI tool provider. |
| `publicKey` | string | No | The public key of the tool, if specified. It is optional and can be null **Since**: 3800.17.0  |
| `sendEmail` | boolean | No | Whether the user"s email address can be sent to the LTI tool provider. |
| `description` | string | No | The description of the domain configuration **Since**: 3900.23.0 |
| `primaryDomain` | string | No | The primary domain name associated with this configuration. |
| `useSplashScreen` | boolean | No | Whether a splash screen is shown before launching the LTI link. Cannot be set to true if allowMembershipService is true.  |
| `customParameters` | object | No | The custom parameters for the given domain. |
| `sendUserDataType` | string ("Always" | "Never" | "Sslonly") | No | Enum indicating when user data can be sent to the LTI tool provider.  \| Type      \| Description  \| --------- \| --------- \| \| Never \|  \| \| Sslonly \|  \| \| Always \|   **Since**: 3300.9.0 \|   |
| `allowGradesService` | boolean | No | Whether the Tool is allowed to call the LTI Assignment and Grades service and manage line items and grades. **Since**: 3600.0.0  |
| `allowMembershipService` | boolean | No | Whether the Tool is allowed to call the LTI Names and Roles service and get the course memberships.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add course content attachment

**Slug:** `BLACKBOARD_CREATE_FILE_ATTACHMENT`

Adds an attachment to a specific content item within a Blackboard Learn course. This endpoint allows developers to programmatically upload and associate files with course materials, enhancing the content available to students. It should be used when integrating external systems with Blackboard Learn to automate the process of adding supplementary materials, documents, or resources to course content. The endpoint requires specifying both the course and the content item to which the attachment will be added, ensuring precise placement of materials within the course structure. Note that this operation likely has size limitations for attachments and may be subject to storage quotas set by the institution's Blackboard Learn administrator.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add new gradebook column for course

**Slug:** `BLACKBOARD_CREATE_GRADE_COLUMN`

Creates a new grade column in a course's gradebook within the Blackboard Learn platform. This endpoint allows instructors or administrators to set up various types of grade columns, including manual entry, calculated grades, and those based on student attempts. It supports features such as anonymous grading, external tool integration, and custom formulas for grade calculation. The endpoint is particularly useful when setting up a new assignment or assessment that requires a corresponding grade column in the course gradebook. It should be used to establish the grading structure for a course, but not for entering actual grades (which would be done through a separate endpoint). Note that some features may have version-specific availability, and certain settings (like includeInCalculations) may behave differently between Classic and Ultra courses.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the grade column. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `externalId` | string | No | The externalId for this grade column |
| `description` | string | No | The description of the grade column. |
| `displayName` | string | No | The display name of the grade column. Only applicable for Classic courses. Ultra courses will simply use the `name` field. **Since**: 3300.2.0  |
| `grading__due` | string | No | The date on which attempts are due for the grade column. |
| `externalGrade` | boolean | No | Whether this grade column is an external grade column. |
| `grading__type` | string ("Attempts" | "Calculated" | "Manual") | No | The type of Grading settings for this Grade Column.  \| Type      \| Description  \| --------- \| --------- \| \| Attempts \| Indicates score and grade values are determined based on user attempts \| \| Calculated \| Indicates score and grade values are determined by applying a calculated formula. \| \| Manual \| Indicates score and grade values are manually entered. \|   |
| `externalToolId` | string | No | The externalId for this grade column **Since**: 3500.2.0 |
| `score__possible` | integer | No | The points possible for this grade column. |
| `formula__aliases` | object | No | Aliases |
| `formula__formula` | string | No | Formula |
| `grading__schemaId` | string | No | The ID of the grade schema associated with this grade column. Mutable since 3400.2.0 **Since**: 3200.13.0  |
| `gradebookCategoryId` | string | No | The gradebook category ID for the grade column. **Since**: 3400.2.0 |
| `grading__scoringModel` | string ("Average" | "First" | "Highest" | "Last" | "Lowest") | No | The scoring model for the submitted grade column attempts.  \| Type      \| Description  \| --------- \| --------- \| \| Last \|  \| \| Highest \|  \| \| Lowest \|  \| \| First \|  \| \| Average \|  \|   |
| `includeInCalculations` | boolean | No | Indicates whether or not this column is included in gradebook calculations. Cannot be set for Ultra courses. Default: true **Since**: 3800.4.0  |
| `availability__available` | string ("No" | "Yes") | No | Whether this grade column is available to students  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may view the grade column. \| \| No \| Students may not view the grade column. \|   |
| `grading__attemptsAllowed` | integer | No | Number of attempts allowed for the grade column. |
| `showStatisticsToStudents` | boolean | No | Indicates whether or not column statistics are shown to students. Read-only for Ultra courses. Default: false **Since**: 3800.4.0  |
| `grading__rubricAssociations` | array | No | The list of Rubric Associations |
| `grading__anonymousGrading__type` | string ("AfterAllGraded" | "Date" | "None") | No | The type of AnonymousGrading settings for this Attempts based Grade Column.  \| Type      \| Description  \| --------- \| --------- \| \| None \| Indicates anonymous grading is not enabled. \| \| AfterAllGraded \| Indicates anonymized grades are released after all attempts have been graded. \| \| Date \| Indicates anonymized grades are released after a specified release date. \|   |
| `grading__anonymousGrading__releaseAfter` | string | No | Date after which grades are released from being anonymized, if AnonymousGrading type is "Date".  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Post grade notation to course gradebook

**Slug:** `BLACKBOARD_CREATE_GRADE_NOTATION`

Creates a new grade notation in the gradebook for a specific course in Blackboard. This endpoint allows instructors or administrators to add custom performance codes and their corresponding descriptions to the grading system. It's particularly useful for implementing non-standard grading schemes or providing additional context to traditional letter or number grades. The created grade notation can then be used when assigning grades to students, offering more nuanced feedback on their performance. This tool should be used when setting up or modifying the grading structure for a course, especially in cases where standard grading notations are insufficient to capture the full range of student performance or special grading circumstances.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | Yes | The performance code associated with the grade notation. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `description` | string | Yes | The description of the grade notation. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create course gradebook schema

**Slug:** `BLACKBOARD_CREATE_GRADE_SCHEMA`

Creates a new gradebook schema for a specific course in Blackboard Learn. This endpoint allows instructors or administrators to define custom grading structures tailored to their course needs. It supports various grading scales including percentage, score-based, tabular (letter grades), text-based, and complete/incomplete systems. The created schema can then be applied to assignments and other gradable items within the course. This tool is essential for setting up the grading framework at the beginning of a course or when implementing a new grading strategy. It should be used carefully as it forms the foundation for grade calculations and student grade representations throughout the course.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | Yes | The title of this grade schema. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `symbols` | array | No | The list of grade symbols for this grade schema. Only returned for Tabular scaleType schemas.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `scaleType` | string ("CompleteIncomplete" | "Percent" | "Score" | "Tabular" | "Text") | No | The scale type of this grade schema.  \| Type      \| Description  \| --------- \| --------- \| \| Percent \|  \| \| Score \|  \| \| Tabular \|  \| \| Text \|  \| \| CompleteIncomplete \|  \|   |
| `externalId` | string | No | The externalId associated with this grade schema. |
| `description` | string | No | The description of this grade schema. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create grading period in course gradebook

**Slug:** `BLACKBOARD_CREATE_GRADING_PERIOD`

Creates a new grading period within a specific course's gradebook in the Blackboard Learn system. This endpoint allows instructors or administrators to define and organize temporal segments for grade collection and management. It's particularly useful for structuring the academic year into distinct grading intervals, such as semesters, quarters, or specific assessment periods. The created grading period can be used to associate gradable items (columns) with specific timeframes, facilitating organized grade tracking and reporting. This endpoint should be used when setting up a new course structure or adjusting existing grading timelines. It's important to note that while the endpoint offers flexibility in date handling, careful consideration should be given to the dateMode parameter and its implications on start and end dates.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `end` | string | No | If start and end are set, and start is before end, these define temporal  coverage of grading period which may be used to associate GradableItems (Columns) by due date. End dates will be persisted as ending at  23:59:59 on the submitted day.  |
| `start` | string | No | If start and end are set, and start is before end, these define temporal  coverage of grading period which may be used to associate GradableItems (Columns) by due date. Start dates will be persisted as starting at  00:00:00 on the submitted day.  |
| `title` | string | Yes | The title of the grading period. Length is limited to 64 characters. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `dateMode` | string ("DoNotUseDates" | "UseDates") | No | Property may be set to DoNotUseDates to explicitly blank dates,  in which case startDate and endDate are ignored; otherwise set to  UseDates; in this case startDate and endDate must be included and valid.  \| Type      \| Description  \| --------- \| --------- \| \| DoNotUseDates \| Do not use dates \| \| UseDates \| Use dates \|   |
| `position` | integer | No | The relative position of the grading period to other grading periods when viewed in the grade book.  |
| `associate` | boolean | No | Associate |
| `description` | string | No | The description of the grading period. Length is limited to 1000 characters.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create course group in course

**Slug:** `BLACKBOARD_CREATE_GROUP`

Creates a new group within a specified course in the Blackboard learning management system. This endpoint allows instructors or administrators to set up and configure groups for collaborative work, discussions, or other course-related activities. The function provides extensive customization options for group availability, enrollment methods, and signup processes. It's particularly useful for organizing students into smaller teams for projects, facilitating peer-to-peer learning, or managing course sections. Note that while many parameters are optional, careful configuration is recommended to ensure the group serves its intended purpose within the course structure.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The title of the group. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `externalId` | string | No | An externally-defined unique ID for the group. Defaults to a random UUID if not provided during create.  |
| `description` | string | No | The description of the group. This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `enrollment__type` | string ("InstructorOnly" | "SelfEnrollment") | No | Whether the Group allows self enrollment or only enrolled by instructor. This can only be set on creation.  \| Type      \| Description  \| --------- \| --------- \| \| InstructorOnly \| Students are added to the Group by the instructor \| \| SelfEnrollment \| Students are added to the Group by self enrollment \|   |
| `enrollment__limit` | integer | No | The maximum allowed enrollment size for self enrolled groups. |
| `availability__available` | string ("No" | "SignupOnly" | "Yes") | No | Whether the Group is currently available to students.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may access the group. \| \| No \| Students may not access the group. \| \| SignupOnly \| Students may only signup and see the group listed, not yet access it. \|   |
| `enrollment__signupSheet__name` | string | No | The name of the signup sheet |
| `enrollment__signupSheet__description` | string | No | The description of the signup sheet This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `enrollment__signupSheet__showMembers` | boolean | No | A boolean indicating whether or not members can be seen by others prior to signing up.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update user in course group

**Slug:** `BLACKBOARD_CREATE_GROUP_MEMBERSHIP`

This endpoint updates a user's information within a specific group in a Blackboard course. It allows administrators or instructors to modify user details, roles, or permissions for a particular user in the context of a course group. Use this endpoint when you need to change a user's status, role, or other attributes within a group, such as updating their group membership type or adjusting their group-specific permissions. This operation is specifically for modifying existing user data and should not be used for adding new users to a group or creating new groups. The endpoint requires the course ID, group ID, and user ID to precisely target the user's information in the correct context.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Modify course content adaptive release group criteria

**Slug:** `BLACKBOARD_CREATE_GROUP_PREDICATE`

This endpoint updates the criteria for a specific group within an adaptive release rule for a particular content item in a Blackboard course. It allows instructors or course administrators to modify how and when course content is made available to different groups of students based on various conditions. Use this endpoint when you need to adjust the release criteria for course materials for a specific student group, such as changing date restrictions, grade requirements, or other access conditions. This operation is crucial for maintaining flexible and personalized learning paths within a course. Note that this endpoint only updates existing criteria and cannot be used to create new adaptive release rules or groups.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ruleId` | string | Yes | The rule ID. This should be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |
| `criterionId` | string | Yes | The adaptive release criterion ID. This should be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create group set

**Slug:** `BLACKBOARD_CREATE_GROUP_SET`

Creates a new group set within a specified course in the Blackboard Learn platform. This endpoint allows instructors or administrators to set up a structured group of students for collaborative work, discussions, or other course activities. The group set can be configured with various settings controlling its visibility, enrollment method, and description. Use this when you need to organize students into groups for project work, facilitate peer reviews, or create focused discussion spaces within a course. It's particularly useful for larger classes where multiple small groups are needed for effective collaboration and management.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The title of the group. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `externalId` | string | No | An externally-defined unique ID for the group. Defaults to a random UUID if not provided during create.  |
| `description` | string | No | The description of the group. This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `enrollment__type` | string ("InstructorOnly" | "SelfEnrollment") | No | Whether the Group allows self enrollment or only enrolled by instructor. This can only be set on creation.  \| Type      \| Description  \| --------- \| --------- \| \| InstructorOnly \| Students are added to the Group by the instructor \| \| SelfEnrollment \| Students are added to the Group by self enrollment \|   |
| `enrollment__limit` | integer | No | The maximum allowed enrollment size for self enrolled groups. |
| `availability__available` | string ("No" | "SignupOnly" | "Yes") | No | Whether the Group is currently available to students.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may access the group. \| \| No \| Students may not access the group. \| \| SignupOnly \| Students may only signup and see the group listed, not yet access it. \|   |
| `enrollment__signupSheet__name` | string | No | The name of the signup sheet |
| `enrollment__signupSheet__description` | string | No | The description of the signup sheet This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `enrollment__signupSheet__showMembers` | boolean | No | A boolean indicating whether or not members can be seen by others prior to signing up.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create group in course

**Slug:** `BLACKBOARD_CREATE_GROUP_SET_CHILD`

Creates a new group within a specified course group set in the Blackboard Learn platform. This endpoint allows instructors or administrators to set up groups with customizable settings for student collaboration and activities. It provides options for controlling group availability, enrollment methods, and detailed descriptions using BbML formatting. Use this endpoint when you need to create structured student groups within a course, whether for project work, discussions, or other collaborative activities. The created group can be configured for instructor-managed enrollment or student self-enrollment, with optional signup sheets and member visibility settings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The title of the group. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `externalId` | string | No | An externally-defined unique ID for the group. Defaults to a random UUID if not provided during create.  |
| `description` | string | No | The description of the group. This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `enrollment__type` | string ("InstructorOnly" | "SelfEnrollment") | No | Whether the Group allows self enrollment or only enrolled by instructor. This can only be set on creation.  \| Type      \| Description  \| --------- \| --------- \| \| InstructorOnly \| Students are added to the Group by the instructor \| \| SelfEnrollment \| Students are added to the Group by self enrollment \|   |
| `enrollment__limit` | integer | No | The maximum allowed enrollment size for self enrolled groups. |
| `availability__available` | string ("No" | "SignupOnly" | "Yes") | No | Whether the Group is currently available to students.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may access the group. \| \| No \| Students may not access the group. \| \| SignupOnly \| Students may only signup and see the group listed, not yet access it. \|   |
| `enrollment__signupSheet__name` | string | No | The name of the signup sheet |
| `enrollment__signupSheet__description` | string | No | The description of the signup sheet This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `enrollment__signupSheet__showMembers` | boolean | No | A boolean indicating whether or not members can be seen by others prior to signing up.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update course category details

**Slug:** `BLACKBOARD_CREATE_MEMBERSHIP`

This endpoint updates an existing course within a specific category in the Blackboard catalog. It allows administrators or authorized users to modify course details such as title, description, or other attributes associated with the course. The endpoint should be used when changes need to be made to a course that is already placed within a category in the catalog structure. It's important to note that this endpoint only updates existing courses and cannot be used to create new courses or move courses between categories. Proper authorization is likely required to perform this operation, as it involves modifying the course catalog.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `categoryId` | string | Yes | Categoryid |
| `categoryType` | string ("Course" | "Organization") | Yes | Categorytype |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Post course message with bbml support

**Slug:** `BLACKBOARD_CREATE_MESSAGE`

Creates a new message within a specific Blackboard course. This endpoint allows users to compose and send messages to course participants, supporting rich text formatting through BbML, file attachments, and flexible recipient management. It's ideal for course announcements, discussions, or direct communication between instructors and students. The endpoint should be used when there's a need to initiate or continue a conversation within the context of a particular course. It provides comprehensive options for message creation, including subject, body content with rich formatting, recipient lists (To, CC, BCC), and file attachments. However, it does not support scheduling messages for future delivery or sending to recipients outside the course context.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | No | The ID of the message |
| `body` | string | No | The body text of the message. This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `isRead` | boolean | No | Whether or not the message has been read |
| `ccUsers` | array | No | The cc participants of the message |
| `isReply` | boolean | No | Whether or not this message is a reply to another message |
| `subject` | string | No | The subject of the message. |
| `toUsers` | array | No | The to participants of the message |
| `bccUsers` | array | No | The bcc participants of the message |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `attachment__id` | string | No | The ID of file attachment |
| `attachment__fileName` | string | No | The fileName of the attachment |
| `attachment__mimeType` | string | No | The mime type of the attachment |
| `isExistingAttachment` | boolean | No | Whether or not the attachment is the existing attachment for the message |
| `attachment__fileLocation` | string | No | The location of the uploaded file |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Post discussion message reply

**Slug:** `BLACKBOARD_CREATE_MESSAGE_REPLY`

Creates a reply to a specific message within a Blackboard course discussion. This endpoint allows users to contribute to ongoing discussions by posting responses to existing messages. It supports both course-wide and group-specific discussions, with options to control the visibility and state of the reply. The content of the reply must be formatted in BbML (Blackboard Markup Language) for rich text support. Use this endpoint when a user wants to respond to a particular message in a discussion thread, either immediately publishing the reply or saving it as a draft for later review.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | Yes | Body of the message, in BbML format. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `status` | string ("Deleted" | "Draft" | "Published") | No | Status of the message.  \| Type      \| Description  \| --------- \| --------- \| \| Published \| Message is published in the discussion and visible for all users. \| \| Deleted \| Message is shown in the discussion as soft-deleted. \| \| Draft \| Message is stored as a draft and only visible for the author user. \|   |
| `groupId` | string | No | The Id of the group, only set for group discussions. |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `messageId` | string | Yes | The message ID.  This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `discussionId` | string | Yes | The discussion ID.  This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create institutional hierarchy node

**Slug:** `BLACKBOARD_CREATE_NODE`

Creates a new node in the institutional hierarchy of Blackboard. This endpoint allows for the addition of organizational elements such as departments, courses, or other structural units within an educational institution's Blackboard system. It is used to build and maintain the hierarchical structure that organizes content and permissions. The endpoint requires a JSON payload with node details and supports optional parameters for flexibility in node creation and positioning within the hierarchy.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | Yes | Node display name |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `parentId` | string | No | The ID of the Node parent in the database |
| `externalId` | string | No | Node unique identifier |
| `description` | string | No | Node description |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update course primary node association

**Slug:** `BLACKBOARD_CREATE_NODE_COURSE_ASSOCIATION`

This endpoint updates the association between a specific course and a node in the Blackboard institutional hierarchy. It allows you to set or change whether the specified node is the primary association for the given course. Use this endpoint when you need to modify the primary status of a course-node relationship, such as when restructuring your institution's course organization or correcting misallocations. The endpoint is particularly useful for managing courses that span multiple nodes or departments. Note that this operation only affects the 'primary' status of the association and does not create or delete associations between courses and nodes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `nodeId` | string | Yes | The node ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|      |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `isPrimary` | boolean | No | Whether or not this association represents the primary node association of the course  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update institutional hierarchy user node

**Slug:** `BLACKBOARD_CREATE_NODE_USER_ASSOCIATION`

Updates a user's information or association within a specific node of the institutional hierarchy in Blackboard. This endpoint is used to modify a user's relationship or details within a particular organizational unit, such as a department, school, or other institutional division. It allows for the management of user data in the context of the institution's structure, enabling administrators to keep user information accurate and up-to-date within the hierarchy. This tool should be used when there's a need to change a user's status, role, or other attributes specific to their position within a certain part of the institution. It's particularly useful for large educational organizations with complex hierarchical structures.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `nodeId` | string | Yes | The node ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|      |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update user observer

**Slug:** `BLACKBOARD_CREATE_OBSERVER`

Updates the observer relationship between a user and an observer in the Blackboard Learn platform. This endpoint is used to modify existing observer connections, such as changing the level of access or updating the relationship status between a student and a parent/guardian. It should be used when there's a need to adjust the monitoring permissions or details of an established observer relationship. The endpoint doesn't create new observer relationships; it only modifies existing ones. Note that this operation may have implications on privacy settings and data access within the Blackboard environment.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `observerId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:jsmith                     \|  \| userName   \| userName:jsmith                       \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|   **Since**: 3500.5.0  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create new lti placement

**Slug:** `BLACKBOARD_CREATE_PLACEMENT`

Creates a new LTI (Learning Tools Interoperability) placement in the Blackboard Learn system. This endpoint allows integration of external tools and services into the learning management system, enhancing the capabilities and user experience. It supports various types of placements, including content handlers, system tools, and course navigation elements. Use this endpoint when you need to add a new external tool or service to Blackboard Learn, specifying its type, location, and configuration settings. The created placement can be used for various purposes such as content delivery, student engagement, or administrative tasks, depending on the specified type.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `key` | string | No | Key |
| `url` | string | Yes | The URL of the tool provider. Not required to be unique, must be a complete and valid URL. Maximum length is 1024 characters, BAD_REQUEST error with message is returned if greater than 1024 characters or incomplete URL.  |
| `name` | string | Yes | The name of the placement. Not required to be unique. Maximum length of 50 characters, BAD_REQUEST error with message is returned if greater than 50 characters.  |
| `type` | string ("Administrator" | "Application" | "AssetProcessor" | "BaseNavigation" | "CloudDocument" | "ContentHandler" | "ContentItemMessage" | "CourseNavigation" | "OpenBadgeProvider" | "Proctoring" | "System" | "UltraUI") | Yes | The type of placement.  \| Type      \| Description  \| --------- \| --------- \| \| Application \| Application or Student Tool Placement \| \| ContentHandler \| Content Type placement \| \| ContentItemMessage \| Content-item Message placement (see IMSGlobal spec)  **Since**: 3300.5.0 \| \| System \| System-level Tools \| \| Administrator \| Administrator-level Tools  **Since**: 3400.1.0 \| \| UltraUI \| Ultra-UI Extensions  **Since**: 3700.6.0 \| \| BaseNavigation \| Base Navigation \| \| CourseNavigation \| Course Navigation \| \| Proctoring \| Proctoring  **Since**: 3900.10.0 \| \| CloudDocument \| Cloud Document Type Placement  **Since**: 3900.34.0 \| \| AssetProcessor \| Asset Processor Type Placement \| \| OpenBadgeProvider \| OpenBadge Provider Type Placement \|   |
| `handle` | string | Yes | The handle that uniquely identifies this placement. Required to be unique. Maximum length is 32 characters, BAD_REQUEST error with message is returned if greater than 32 characters.  |
| `secret` | string | No | Secret |
| `iconUrl` | string | No | The URL of the icon for this placement, if any. Not required to be unique, must be a complete and valid URL. Maximum length is 255 characters, BAD_REQUEST error with message is returned if greater than 255 characters or incomplete URL.  |
| `authorId` | string | No | Id of the creator of the placement **Deprecated**: since 3900.0 not used |
| `description` | string | No | The description of the placement. Not required to be unique. Maximum length is 1000 characters, BAD_REQUEST error with message is returned if greater than 1000 characters.  |
| `allowGrading` | boolean | No | Whether this placement can accept grades from the tool provider and a grade column can be created for it. This only applies to Enum[Type]#`ContentHandler` types. All others don"t support grading and will be set to false.  |
| `allowStudents` | boolean | No | Whether the course tool is visible by students, or only to non-students (e.g. instructors). Defaults to true, allowing students to see the tool.  |
| `customParameters` | object | No | Custom launch parameters for the tool. |
| `instructorCreated` | boolean | No | Whether an instructor created the placement or not (otherwise admin) **Deprecated**: since 3900.0 not used  |
| `launchInNewWindow` | boolean | No | Whether this placement link should be opened in a new window or not. |
| `availability__available` | string ("No" | "Yes") | No | Whether the placement is available within the system.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \|  \| \| No \|  \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Post pronouns details

**Slug:** `BLACKBOARD_CREATE_PRONOUN`

Creates a new pronoun entry in the Blackboard Learning Management System. This endpoint is used to add new pronouns to the system's user identity management, supporting inclusive and diverse user representation. It should be used when administrators or authorized users need to introduce new pronoun options for users to select from. The endpoint incorporates an approval workflow, allowing for review of new pronoun entries before they become available for general use. Note that this endpoint only creates the pronoun entry; it does not assign pronouns to specific users or modify existing user profiles.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the pronoun. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `status` | string ("Approved" | "Pending") | Yes | The status of the pronoun.  \| Type      \| Description  \| --------- \| --------- \| \| Pending \|  \| \| Approved \|  \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Post course assessment question

**Slug:** `BLACKBOARD_CREATE_QUESTION`

This endpoint creates a new question within an existing Blackboard assessment. It supports various question types and allows for customization of content, feedback, and scoring. Use it to build or modify assessments by adding new questions. Note that while many parameters are optional, the 'text' field is required. The question type determines its structure and behavior, but specific configurations may require additional documentation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `text` | string | Yes | The main text content for the question. It may include plain and formatted text, and all kinds of content supported by the full text editor.  |
| `title` | string | No | The title of the question. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `points` | integer | No | The point value for the question. |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `position` | integer | No | Position of the Question on the Assessment Canvas. |
| `assessmentId` | string | Yes | Assessmentid |
| `instructorNotes` | string | No | Text added to the question as a note for the instructor. It is not intended to be displayed to students.  |
| `questionHandler__type` | string ("AiChat" | "Calculated" | "EitherOr" | "Essay" | "FileResponse" | "FillInTheBlank" | "FillInTheBlankPlus" | "HotSpot" | "JumbledSentence" | "LikertOpinionScale" | "Matching" | "MultipleAnswer" | "MultipleChoice" | "Numeric" | "Ordering" | "PageBreak" | "Presentation" | "QuestionBlock" | "QuizBowl") | No | Type of Question supported.  \| Type      \| Description  \| --------- \| --------- \| \| Presentation \|   **Since**: 3300.9.0 \| \| EitherOr \| Read Only  **Since**: 3300.9.0 \| \| Essay \| Read Only  **Since**: 3300.9.0 \| \| MultipleAnswer \| Read Only  **Since**: 3400.4.0 \| \| Numeric \| Read Only  **Since**: 3400.4.0 \| \| MultipleChoice \| Read Only  **Since**: 3400.4.0 \| \| Ordering \| Read Only  **Since**: 3400.4.0 \| \| Matching \| Read Only  **Since**: 3400.4.0 \| \| FillInTheBlank \| Read Only  **Since**: 3400.4.0 \| \| Calculated \| Read Only  **Since**: 3400.4.0 \| \| FileResponse \| Read Only  **Since**: 3400.4.0 \| \| LikertOpinionScale \| Read Only  **Since**: 3400.4.0 \| \| QuizBowl \| Read Only  **Since**: 3400.4.0 \| \| HotSpot \| Read Only  **Since**: 3400.4.0 \| \| JumbledSentence \| Read Only  **Since**: 3400.4.0 \| \| FillInTheBlankPlus \| Read Only  **Since**: 3400.4.0 \| \| QuestionBlock \| Read Only  **Since**: 3700.2.0 \| \| PageBreak \| Read Only  **Since**: 3900.51.0 \| \| AiChat \| AI Chat question  **Since**: 3900.95.0 \|   |
| `correctResponseFeedback` | string | No | Feedback displayed to students when their submitted response is correct. |
| `incorrectResponseFeedback` | string | No | Feedback displayed to students when their submitted response is incorrect.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create course rubric with details

**Slug:** `BLACKBOARD_CREATE_RUBRIC`

Creates a new rubric for a specific course in Blackboard Learn. This endpoint allows instructors or course designers to define a structured evaluation tool with customizable criteria, performance levels, and scoring methods. The rubric can be used for various assessment types, including assignments, discussions, and projects. It supports different rubric types (Numeric, Percentage, Range-based) to accommodate diverse grading needs. The created rubric can include detailed descriptions for each performance level and criterion, ensuring clear expectations and consistent grading across evaluators. This tool is essential for setting up comprehensive and transparent assessment frameworks within Blackboard courses.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `rows` | array | No | Rubric Row Criteria list. |
| `cells` | array | No | Rubric Cells list. |
| `title` | string | Yes | Get the title for this rubric (Ex. "Sample Rubric") |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `columns` | array | No | Rubric Column Headers list. |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `rubricType` | string ("Nonnumeric" | "Numeric" | "NumericRange" | "Percentage" | "PercentageRange") | Yes | Get the rubric type, alas Numeric or Percentage type. (Ex. "Numeric", "Percentage", "Percentage Range", "Numeric Range")  \| Type      \| Description  \| --------- \| --------- \| \| Numeric \|  \| \| Nonnumeric \|  \| \| NumericRange \|  \| \| Percentage \|  \| \| PercentageRange \|  \|   |
| `description` | string | No | Get the description for this rubric (Ex. "A rubric for base evluation template")  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create rubric association in course

**Slug:** `BLACKBOARD_CREATE_RUBRIC_ASSOCIATION`

Creates a new association between a rubric and a specific course content item in the Blackboard learning management system. This endpoint allows instructors or course designers to link a rubric to elements such as assignments, discussions, or other gradable items within a course. It's used to establish grading criteria, set visibility options for students, and connect the rubric to the appropriate gradebook column or question. The association can be configured for grading purposes or as an informational guide, with flexible options for when and how students can view the rubric and its evaluation. This tool is essential for implementing consistent assessment strategies across course content and providing clear expectations to students.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | No | Get the Id from this association (Ex. "_2_1") |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `rubricId` | string | Yes | Get the Id from the rubric which holds this association (Ex. "_3_1") |
| `usedForGrading` | boolean | Yes | Tells if rubric is being used for grading content. (Ex. true) |
| `rubricVisibility` | string ("Disabled" | "VisibleAfterGrading" | "VisibleWithScores" | "VisibleWithoutScores") | No | States rubric"s information and evalution visibility for students. (Ex. "VisibleWithScores") Possible values are: - Disabled  - VisibleWithScores  - VisibleWithoutScores  - VisibleAfterGrading   \| Type      \| Description  \| --------- \| --------- \| \| Disabled \| Disabled: Implies that neither the rubric nor the rubric evaluation are visible to students. Default value for student visibility. \| \| VisibleWithScores \| VisibleWithScores: Implies that the rubric and the rubric evaluation are always visible to students. \| \| VisibleWithoutScores \| VisibleWithoutScores: Implies that the rubric is visible before and after grading. The rubric evaluation are not visible to students. \| \| VisibleAfterGrading \| VisibleAfterGrading: Implies that the rubric is only visible after grading. The rubric evaluation is visible once is available. \|   |
| `associationEntity__questionId` | string | No | Questionid |
| `associationEntity__gradebookColumnId` | string | No | Gradebookcolumnid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create rubric evaluation for course

**Slug:** `BLACKBOARD_CREATE_RUBRIC_EVALUATIONS`

Creates or updates a rubric evaluation for a specific course, rubric, and rubric association in the Blackboard Learn platform. This endpoint allows instructors or authorized users to submit detailed evaluations of student work using predefined rubrics. It supports various types of rubrics (Numeric, Numeric Range, Percentage, Percentage Range) and allows for granular scoring and feedback at the cell level. The evaluation can be associated with individual, group, or question attempts, providing flexibility for different assessment scenarios. Use this endpoint when you need to programmatically submit or modify rubric-based evaluations, such as grading assignments or providing structured feedback on assessments.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `cells` | array | No | List of the selected scores for this evaluation, each rubric cell evaluation should be related with a rubric definition cell and row. The selected score could vary depending on the rubric type, as shown in examples. For example, - Numeric Rubrics, if selected score is 100, then the fraction would be numerator = 100 and denominator = 1. - Numeric Range Rubrics, selected score is the percentage of the max row value in 0 to 1 normalization, So if 80 is the max row points and selected score is 40, the fraction would be numerator = 50 and denominator = 100. - Percentage Rubrics, expects the values in 1 to 100 percent format, if selected percent is 40, the fraction would be numerator = 40 and denominator = 1. - Percentage Range Rubrics, expects the values in 1 to 100 percent format, if selected percent is 60, the fraction would be numerator = 60 and denominator = 1.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `rubricId` | string | Yes | The Rubric ID. This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `rubricAssociationId` | string | Yes | The Rubric Association ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `evaluationEntity__attemptId` | string | No | Attemptid |
| `evaluationEntity__groupAttemptId` | string | No | Groupattemptid |
| `evaluationEntity__questionAttemptId` | string | No | Questionattemptid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add adaptive release rule to course content

**Slug:** `BLACKBOARD_CREATE_RULE`

Creates a new adaptive release rule for a specific content item within a Blackboard course. This endpoint allows instructors or course administrators to set up conditions for releasing course content to students based on various criteria. The rule is identified by a title and associated with a particular content item in a course. Use this when you need to control the visibility or accessibility of course materials based on specific conditions. Note that while this endpoint creates the rule, setting up the specific conditions for release would likely require additional API calls or configuration.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | Yes | Title given to the adaptive release rule |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create term with availability and description

**Slug:** `BLACKBOARD_CREATE_TERM`

Creates a new term in the Blackboard Learn system with the specified attributes. This endpoint allows administrators to define academic periods or sessions, setting up the structure for courses and student enrollments. It provides options for customizing term availability and duration, which is crucial for managing access to educational content over time. The created term can be associated with a specific data source, enabling integration with external systems. Use this endpoint when setting up a new academic year, semester, or any other defined study period in your institution's Blackboard environment.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the term. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `externalId` | string | Yes | An externally-defined unique ID for the term. Formerly known as "sourcedidId".  |
| `description` | string | No | The description of the term. This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `dataSourceId` | string | No | The ID of the data source associated with this term.  This may optionally be the data source"s externalId using the syntax "externalId:math101".  |
| `availability__available` | string ("No" | "Yes") | No | Whether the term and the courses it contains are available to students.  Instructors can always access their courses.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may access the term and the courses it contains. \| \| No \| Students may not access the term or the courses it contains. \|   |
| `availability__duration__end` | string | No | The date this term ends.  May only be set if availability.duration.type is DateRange.  |
| `availability__duration__type` | string ("Continuous" | "DateRange" | "FixedNumDays") | No | The intended length of the term.  Possible values are:  \| Type      \| Description  \| --------- \| --------- \| \| Continuous \| The term is active on an ongoing basis. This is the default. \| \| DateRange \| The term will only be available between specific date ranges. \| \| FixedNumDays \| The term will only be available for a set number of days. \|   |
| `availability__duration__start` | string | No | The date this term starts.  May only be set if availability.duration.type is DateRange.  |
| `availability__duration__daysOfUse` | integer | No | The number of days courses within this term can be used.  May only be set if availability.duration.type is FixedNumDays.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create new user profile

**Slug:** `BLACKBOARD_CREATE_USER`

Creates a new user account in the Blackboard Learn system with detailed profile information. This endpoint allows for the creation of user profiles with comprehensive data, including personal details, educational information, institutional and system roles, contact information, and localization preferences. It should be used when adding new users to the system, such as during student enrollment, faculty onboarding, or administrative staff addition. The endpoint requires at least the user's name, username, and password, but allows for extensive customization of the user profile with optional fields. It's important to note that some fields have specific formats or enumerated values that must be adhered to for successful user creation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `gender` | string ("Female" | "Male" | "Other" | "Unknown") | No | The gender of this user.  \| Type      \| Description  \| --------- \| --------- \| \| Female \| Female \| \| Male \| Male \| \| Other \| Other  **Since**: 3900.32.0 \| \| Unknown \| Gender is not known, or not specified. \|   |
| `password` | string | Yes | The user"s login password. |
| `pronouns` | string | No | The pronouns of this user. **Since**: 3900.27.0 |
| `userName` | string | Yes | The userName property, shown in the UI. |
| `birthDate` | string | No | The birth date of this user. Only the date portion of this value has significance, since a person"s birthdate represents a full day and not a moment in time. Take care to ignore the zeroed time portion when deserializing this value to ensure it"s not converted to the previous calendar day if your local time zone has a negative UTC offset.  |
| `studentId` | string | No | The user"s student ID name or number as defined by the school or institution.  |
| `externalId` | string | No | An optional externally-defined unique ID for the user.  Defaults to the userName. Formerly known as "batchUid".  |
| `job__title` | string | No | The user"s job title. |
| `locale__id` | string | No | The locale specified by the user.  This locale will be used anywhere the user is allowed to customize their locale; courses may force a specific locale, overriding the user"s locale preference.  |
| `name__given` | string | No | The given (first) name of this user. |
| `name__other` | string | No | The other name (nickname) of this user. |
| `name__title` | string | No | The title of this user.  Examples: Mr., Ms., Dr. |
| `dataSourceId` | string | No | The ID of the data source associated with this user.  This may optionally be the data source"s externalId using the syntax "externalId:math101".  |
| `job__company` | string | No | The company the user works for. |
| `name__family` | string | No | The family (last) name of this user. |
| `name__middle` | string | No | The middle name of this user. |
| `name__suffix` | string | No | The suffix of this user"s name.  Examples: Jr., III, PhD. |
| `address__city` | string | No | The city the user resides in. |
| `pronunciation` | string | No | Pronunciation text for user"s name **Since**: 3900.32.0 |
| `systemRoleIds` | array | No | The system roles (the administrative user roles in the UI) for this user.  The first role in this list is the user"s primary system role, while the remaining are secondary system roles.  |
| `address__state` | string | No | The state or province the user resides in. |
| `avatar__source` | string ("Default" | "System" | "User") | No | The source of the user"s avatar **Since**: 3800.13.0  \| Type      \| Description  \| --------- \| --------- \| \| Default \| The server default avatar \| \| User \| The user set his/her own avatar \| \| System \| A privileged user set the user"s avatar to something other than default \|   |
| `contact__email` | string | No | The user"s email address. |
| `educationLevel` | string ("Freshman" | "GraduateSchool" | "HighSchool" | "Junior" | "K8" | "PostGraduateSchool" | "Senior" | "Sophomore" | "Unknown") | No | The education level of this user.  \| Type      \| Description  \| --------- \| --------- \| \| K8 \| Kindergarten through 8th grade \| \| HighSchool \| Grades 9 through 12. \| \| Freshman \| College or university freshman. \| \| Sophomore \| College or university sophomore. \| \| Junior \| College or university junior. \| \| Senior \| College or university senior. \| \| GraduateSchool \| Graduate school student. \| \| PostGraduateSchool \| Post-graduate school student. \| \| Unknown \| Education Level is not known, or not specified. \|   |
| `job__department` | string | No | The department the user belongs to. |
| `address__country` | string | No | The country the user resides in. |
| `address__street1` | string | No | The street address of the user. |
| `address__street2` | string | No | An additional field to store the street address of the user. |
| `address__zipCode` | string | No | The zip code or postal code the user resides in. |
| `avatar__uploadId` | string | No | The upload id of the avatar image file, if referencing a newly-uploaded file **Since**: 3800.13.0  |
| `contact__webPage` | string | No | The URL of the user"s personal website. |
| `locale__calendar` | string ("Gregorian" | "GregorianHijri" | "Hijri" | "HijriGregorian") | No | The calendar type specified by the user.  \| Type      \| Description  \| --------- \| --------- \| \| Gregorian \| Gregorian \| \| GregorianHijri \| Gregorian & Hijri \| \| Hijri \| Hijri \| \| HijriGregorian \| Hijri & Gregorian \|   |
| `avatar__resourceId` | string | No | The resource file id of the user"s avatar, if referencing a Content Collection Resource **Since**: 3900.50.0  |
| `contact__homePhone` | string | No | The user"s home phone number. |
| `institutionRoleIds` | array | No | The primary and secondary institution roles assigned to this user. The primary institution role is the first item in the list, followed by all secondary institution roles sorted alphabetically. **Since**: 3300.3.0  |
| `contact__businessFax` | string | No | The user"s business fax number. |
| `contact__mobilePhone` | string | No | The user"s mobile phone number. |
| `contact__businessPhone` | string | No | The user"s business phone number. |
| `locale__firstDayOfWeek` | string ("Monday" | "Saturday" | "Sunday") | No | The user"s preferred first day of the week.  \| Type      \| Description  \| --------- \| --------- \| \| Sunday \| Sunday \| \| Monday \| Monday \| \| Saturday \| Saturday \|   |
| `availability__available` | string ("Disabled" | "No" | "Yes") | No | Whether the user is available within the system. Unavailable users cannot log in.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \|  \| \| No \|  \| \| Disabled \|   **Since**: 3100.0.0 \|   |
| `contact__institutionEmail` | string | No | The user"s institutional email address. **Since**: 3900.19.0 |
| `name__preferredDisplayName` | string ("Both" | "GivenName" | "OtherName") | No | The preferred display name of this user. **Since**: 3900.48.0  \| Type      \| Description  \| --------- \| --------- \| \| GivenName \| User requests displaying givenName when formatting names for display. This is the default behavior. \| \| OtherName \| User requests displaying otherName when formatting names for display. \| \| Both \| User requests displaying otherName and givenName when formatting names for display. \|   |
| `pronunciationAudio__uploadId` | string | No | Uploadid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete user criterion from course content rule

**Slug:** `BLACKBOARD_DELETE_ACL_USER_PREDICATE`

Removes a specific user from an adaptive release rule criterion for a particular content item within a course. This endpoint is used to modify the conditions under which course content is made available to individual students. It should be used when an instructor or administrator wants to exclude a user from a previously set adaptive release criterion. This action may be necessary when updating course accessibility or correcting mistakenly applied criteria. The endpoint does not provide information about the rule or criterion itself, nor does it return any data about the removed user. It's important to note that this operation is irreversible, and re-adding the user would require a separate API call.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ruleId` | string | Yes | The rule ID. This should be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |
| `criterionId` | string | Yes | The adaptive release criterion ID. This should be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete adaptive release rule criterion

**Slug:** `BLACKBOARD_DELETE_ADAPTIVE_RELEASE_RULE_CRITERION`

Deletes a specific criterion from an adaptive release rule for a content item within a Blackboard course. This endpoint allows instructors or course administrators to remove individual conditions that control when content becomes available to students. Use this when you need to modify an existing adaptive release rule by removing a particular criterion, such as a date restriction or grade requirement. The deletion is permanent and cannot be undone, so use with caution. This operation does not affect other criteria within the same rule or other rules applied to the content item.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ruleId` | string | Yes | The rule ID. This should be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |
| `criterionId` | string | Yes | The adaptive release criterion ID. This should be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete user course meetings

**Slug:** `BLACKBOARD_DELETE_ALL_ATTENDANCE_BY_USER_ID`

Deletes all meeting attendance records for a specific user within a particular course in the Blackboard system. This endpoint is used when an administrator or instructor needs to remove all attendance data for a student, which may be necessary for course transfers, data corrections, or privacy compliance. It should be used with caution as it permanently removes all attendance records for the specified user in the given course. This operation cannot be undone, so it's important to verify the necessity of this action before proceeding. The endpoint does not provide any information about the deleted records or return a list of affected meetings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete course meeting

**Slug:** `BLACKBOARD_DELETE_ALL_MEETINGS_IN_COURSE`

Deletes all meetings associated with a specific course in the Blackboard Learn platform. This endpoint should be used when an instructor or administrator needs to remove virtual sessions or scheduled meetings from a course, potentially at the end of a term or when restructuring the course schedule. It's important to note that this operation may be irreversible and could affect all meetings linked to the specified course. Use with caution, as it might impact student access to past or upcoming virtual sessions. The endpoint does not provide options for selective deletion of individual meetings, so it should only be used when intending to remove all meetings from the course.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete all records in meeting

**Slug:** `BLACKBOARD_DELETE_ALL_RECORDS_IN_MEETING`

Deletes all attendance records in the course meeting for a given meeting Id. The 'course.attendance.DELETE' entitlement is required to delete attendance records. **Since**: 3500.7.0

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `meetingId` | string | Yes | Meetingid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete announcement by id

**Slug:** `BLACKBOARD_DELETE_ANNOUNCEMENT`

Deletes a specific announcement from the Blackboard Learning Management System (LMS) using its unique identifier. This endpoint should be used when an instructor, administrator, or authorized user needs to permanently remove an announcement from a course or the system. It's particularly useful for managing outdated information or correcting mistakenly posted announcements. The deletion is irreversible, so users should exercise caution when invoking this endpoint. This tool does not provide a way to archive or recover deleted announcements, nor does it return the content of the deleted announcement.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `announcementId` | string | Yes | Announcementid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete gradebook attempt file

**Slug:** `BLACKBOARD_DELETE_ATTACHMENT`

Deletes a specific file associated with an attempt in a course's gradebook within the Blackboard Learn environment. This endpoint should be used when an instructor or administrator needs to remove a file that was incorrectly uploaded or is no longer relevant to a student's attempt. It permanently removes the file from the system, so it should be used with caution. This operation cannot be undone, and the file cannot be recovered once deleted. The endpoint does not provide any information about the deleted file or confirm its previous existence.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `attemptId` | string | Yes | Attemptid |
| `attemptFileId` | string | Yes | Attemptfileid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete attendance record

**Slug:** `BLACKBOARD_DELETE_ATTENDANCE_RECORD`

Delete attendance record for meeting.It will delete meeting attendance within a course meeting. The 'course.attendance.DELETE' entitlement is required to delete Attendance Record. **Since**: 3500.7.0

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `meetingId` | string | Yes | Meetingid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete calendar item by type and id

**Slug:** `BLACKBOARD_DELETE_CALENDAR_ITEM`

This endpoint deletes a specific calendar item from the Blackboard Learn system. It allows users to remove events from personal, course, organization, or institution calendars. The endpoint should be used when a calendar item needs to be permanently removed from the system, such as canceling an event or correcting erroneously created entries. It's important to note that this operation is irreversible, and once an item is deleted, it cannot be recovered through the API. Users should exercise caution when invoking this endpoint to avoid unintentional loss of calendar data. The endpoint requires precise identification of the calendar item through its type and unique ID, ensuring accurate removal of the intended event.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `deleteSeries` | boolean | No | delete the series calendar items or just one calendar item. true - delete the        series, false - delete one calendar item. Defaults to false.  |
| `calendarItemId` | string | Yes | Calendaritemid |
| `calendarItemType` | string ("Course" | "GradebookColumn" | "Institution" | "OfficeHours" | "Personal") | Yes | Calendaritemtype |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete category by type and id

**Slug:** `BLACKBOARD_DELETE_CATEGORY`

This endpoint deletes a specific category from the Blackboard catalog based on the provided category type and ID. It should be used when an administrator or authorized user needs to remove a category that is no longer needed or relevant. The operation is permanent and cannot be undone, so it should be used with caution. This endpoint is particularly useful for catalog maintenance, such as removing outdated course categories or reorganizing the catalog structure. It does not return any content upon successful deletion, typically responding with a 204 No Content status. Be aware that deleting a category may affect related items or sub-categories, depending on the Blackboard system's configuration.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `categoryId` | string | Yes | Categoryid |
| `categoryType` | string ("Course" | "Organization") | Yes | Categorytype |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete course content by id

**Slug:** `BLACKBOARD_DELETE_CONTENT`

Deletes a specific content item from a course in the Blackboard learning management system. This endpoint should be used when an administrator or authorized user needs to remove outdated, incorrect, or unnecessary learning materials from a course. It permanently removes the specified content, so it should be used with caution. This operation cannot be undone, and once content is deleted, it cannot be recovered through the API. The endpoint requires both a valid course ID and content ID to function correctly.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |
| `deleteGrades` | boolean | No | If true and there is a grade column associated with this content, that grade column will be marked as deleted.  All attempts and grades will also be removed. If false, the grade column will not be marked as deleted.  Attempts will not be deleted and grades will be converted to manually entered grades.  Defaults to false.  |
| `allowChildCourseContent` | boolean | No | By default, child courses of a cross listed course can not have their contents modified.  The allowChildCourseContent parameter can be sent as true in order to bypass this validation.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete course content group by id

**Slug:** `BLACKBOARD_DELETE_CONTENT_GROUP`

This endpoint deletes a specific group associated with a content item within a Blackboard course. It is used to remove group assignments or collaborations tied to particular course content. The operation is irreversible and should be used with caution, as it will permanently remove the group's association with the content item. This can affect student access and collaboration settings for the specified content. The endpoint should be used when reorganizing course structure, removing outdated group assignments, or cleaning up course content. It does not delete the content item itself or the course, only the group's association with the content. Note that this operation may impact students currently assigned to the group, potentially affecting their access to the content item.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | Contentid |
| `allowChildCourseContent` | boolean | No | By default, child courses of a cross listed course can not have their contents modified.  The allowChildCourseContent parameter can be sent as true in order to bypass this validation.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete course by id

**Slug:** `BLACKBOARD_DELETE_COURSE`

Deletes a specific course from the Blackboard learning management system. This endpoint permanently removes all course data, including content, assignments, and student records associated with the specified course. It should be used with caution, typically at the end of an academic term or when a course is no longer needed. Once a course is deleted, it cannot be recovered through the API. This operation is irreversible and should only be performed by users with appropriate permissions, such as system administrators or course managers.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `removeFiles` | boolean | No | Whether to delete course files.  Defaults to true. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete course meeting

**Slug:** `BLACKBOARD_DELETE_COURSE_MEETING`

This endpoint deletes a specific meeting within a course in the Blackboard learning management system. It should be used when an administrator or instructor needs to remove a scheduled meeting from a course, such as cancelling a virtual class session or removing an outdated meeting entry. The operation is irreversible, so it should be used with caution. This endpoint only performs the deletion and does not return any information about the deleted meeting or provide options for rescheduling. It's important to note that this action may affect student schedules and course planning, so proper communication with course participants is advised before deleting a meeting.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `meetingId` | string | Yes | Meetingid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete data source by id

**Slug:** `BLACKBOARD_DELETE_DATA_SOURCE`

Deletes a specific data source from the Blackboard Learn platform. This endpoint should be used when an administrator needs to permanently remove a data source, such as those related to users, courses, or enrollments, from the system. It's crucial to use this endpoint with caution as the deletion is irreversible and may impact associated data. This operation is particularly useful for cleaning up obsolete or erroneous data sources, but should not be used on active data sources that are still in use. Note that deleting a data source does not automatically remove the data that was previously associated with it.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `dataSourceId` | string | Yes | The data source ID.  This may be the primary ID, or the secondary ID prefixed with the ID type.   \| ID type    \| Example            \|  \|------------\|--------------------\|  \| primary    \| _123_1             \|  \| externalId \| externalId:math101 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete lti domain by id

**Slug:** `BLACKBOARD_DELETE_DOMAIN_CONFIG`

Deletes a specific LTI (Learning Tools Interoperability) domain from the Blackboard learning management system. This endpoint is used to remove an existing domain configuration, which may include associated LTI tool integrations and settings. It should be used when an institution needs to discontinue the use of a particular LTI domain, perhaps due to changes in tool usage, administrative restructuring, or cleanup of unused integrations. Caution should be exercised when using this endpoint, as deletion is permanent and may affect existing course content or tool accessibility that relies on the deleted domain.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `domainId` | string | Yes | Domainid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete course content attachment

**Slug:** `BLACKBOARD_DELETE_FILE_ATTACHMENT`

Deletes a specific attachment from a content item within a course in Blackboard Learn. This endpoint should be used when an instructor or authorized user needs to remove an attachment from course materials. It permanently removes the specified attachment from the content, and this action cannot be undone. The endpoint requires precise identification of the course, content item, and attachment using their respective IDs. It's important to note that this operation only removes the attachment and does not affect the content item itself or other attachments.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |
| `attachmentId` | string | Yes | Attachmentid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete gradebook column by id

**Slug:** `BLACKBOARD_DELETE_GRADE_COLUMN`

Deletes a specific gradebook column from a course in the Blackboard Learn system. This endpoint should be used when an instructor or administrator needs to permanently remove a column from the gradebook, such as when a graded item is no longer relevant or was created in error. It's important to note that this action is irreversible and will permanently delete all associated grade data for all students in the course. Use this endpoint with caution, as it may have significant implications for course grading and student records. This operation cannot be undone, so it's recommended to have a backup of the data before proceeding with the deletion.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `onlyIfEmpty` | boolean | No | Onlyifempty |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete course grade notation by id

**Slug:** `BLACKBOARD_DELETE_GRADE_NOTATION`

Deletes a specific grade notation from a course's gradebook in Blackboard Learn. This endpoint should be used when an instructor or administrator needs to remove an existing grade notation that is no longer relevant or was created in error. It permanently removes the specified grade notation from the system, so it should be used with caution. This operation cannot be undone, so it's important to verify the correct gradeNotationId before deletion. The endpoint does not return the deleted data; it typically only confirms the successful deletion or reports an error if the deletion fails.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `gradeNotationId` | string | Yes | Gradenotationid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete gradebook period by course id

**Slug:** `BLACKBOARD_DELETE_GRADING_PERIOD`

Deletes a specific gradebook period from a course in the Blackboard Learning Management System. This endpoint allows administrators or instructors to remove a grading period that is no longer needed or was created in error. It should be used when restructuring the gradebook's temporal organization or when cleaning up unused grading periods. This operation is permanent and cannot be undone, so it should be used with caution. The endpoint does not return the deleted data, only performs the deletion action.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `periodId` | string | Yes | Periodid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete course group by ids

**Slug:** `BLACKBOARD_DELETE_GROUP`

This endpoint deletes a specific group from a course in the Blackboard learning management system. It is used to remove a group that is no longer needed or has been created in error. The operation is permanent and cannot be undone, so it should be used with caution. This endpoint is particularly useful for course administrators or instructors who need to manage group structures within their courses. It should not be used to temporarily disable a group; instead, it permanently removes the group and all associated data from the course. Note that this action does not affect the individual user accounts of group members, only the group itself within the specified course.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete user from course group

**Slug:** `BLACKBOARD_DELETE_GROUP_MEMBERSHIP`

Removes a specific user from a particular group within a course in the Blackboard learning management system. This endpoint is used when an instructor or administrator needs to remove a student or participant from a group, perhaps due to course changes, group reorganization, or student withdrawal. It's important to note that this action only removes the user from the specified group, not from the entire course. Use this endpoint with caution, as it immediately revokes the user's access to group-specific content and collaborations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete course content adaptive release rule

**Slug:** `BLACKBOARD_DELETE_GROUP_PREDICATE`

Removes a specific group from a criterion within an adaptive release rule for a particular content item in a Blackboard course. This endpoint is used to modify the access conditions for course content by eliminating a group's inclusion in the release criteria. It should be used when an instructor or course administrator wants to adjust the visibility rules for content, specifically by removing a group's access under certain conditions. This operation is permanent and immediately affects the adaptive release settings for the specified content.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ruleId` | string | Yes | The rule ID. This should be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |
| `criterionId` | string | Yes | The adaptive release criterion ID. This should be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete group set in course

**Slug:** `BLACKBOARD_DELETE_GROUP_SET`

This endpoint deletes a specific group set within a course in the Blackboard learning management system. It permanently removes the entire group set, including all associated groups and their memberships, from the specified course. This operation should be used with caution as it cannot be undone and will affect all students assigned to groups within the set. The endpoint is particularly useful for instructors or administrators who need to restructure group assignments or remove outdated group configurations. It should not be used to temporarily disable group functionality, as deletion is permanent. Note that this operation does not affect the course structure itself or any other group sets within the course.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete course from category list

**Slug:** `BLACKBOARD_DELETE_MEMBERSHIP`

Removes a specific course from a designated category within the Blackboard Learning Management System (LMS) catalog. This endpoint is used when you need to disassociate a course from a particular category, which can be useful for reorganizing the course catalog, updating course classifications, or managing access control based on categories. It should be used cautiously as it permanently removes the course-category association. This operation does not delete the course itself from the system; it only removes the association between the course and the specified category. The endpoint requires precise identification of both the category (through categoryType and categoryId) and the course (through courseId) to ensure accurate removal of the correct association.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `categoryId` | string | Yes | Categoryid |
| `categoryType` | string ("Course" | "Organization") | Yes | Categorytype |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete course message by id

**Slug:** `BLACKBOARD_DELETE_MESSAGE`

This endpoint deletes a specific message within a course in the Blackboard learning management system. It should be used when an instructor or authorized user needs to remove a particular message from a course's communication thread. The deletion is permanent and cannot be undone, so it should be used with caution. This tool is particularly useful for managing course content, removing outdated or inappropriate messages, or maintaining a clean communication environment within the course. Note that this action may be subject to user permissions, and the ability to delete messages might be restricted to certain roles within the course.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `messageId` | string | Yes | Messageid |
| `folderName` | string | No | Specifies the folder name of the custom folder |
| `folderType` | string ("Custom" | "Delete" | "Inbox" | "Sent") | No | Specifies the folder type, The default type is inbox  \| Type      \| Description  \| --------- \| --------- \| \| Inbox \|  \| \| Sent \|  \| \| Delete \|  \| \| Custom \|  \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete institutional hierarchy node by nodeid

**Slug:** `BLACKBOARD_DELETE_NODE`

Deletes a specific node from the institutional hierarchy in Blackboard Learn. This endpoint should be used when an administrator needs to remove a node, such as a department, school, or program, from the institution's organizational structure. It permanently removes the specified node and its association within the hierarchy. Caution should be exercised when using this endpoint, as deleting a node may have cascading effects on courses, users, or other entities associated with that node. It's important to note that this operation cannot be undone, so it should only be used when you are certain that the node and its data are no longer needed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `nodeId` | string | Yes | The node ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|      |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete institution node admin

**Slug:** `BLACKBOARD_DELETE_NODE_ADMIN`

Removes an administrator's access from a specific node in the institutional hierarchy of Blackboard Learn. This endpoint should be used when you need to revoke administrative privileges for a user at a particular level of the institution's structure. It's particularly useful for managing access control and maintaining the security of the institutional hierarchy. The operation is permanent and immediate, so it should be used with caution. This endpoint does not delete the user account itself; it only removes the administrative role for the specified node. Note that this action may affect the user's ability to manage courses, users, or other resources associated with the given node and its sub-nodes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `nodeId` | string | Yes | The node ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|      |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete specific course node

**Slug:** `BLACKBOARD_DELETE_NODE_COURSE_ASSOCIATION`

Removes a specific course from a designated node in the institutional hierarchy of Blackboard Learn. This endpoint is used for managing the organizational structure of courses within an institution's Blackboard environment. It allows administrators to disassociate a course from a particular hierarchical node, which can be useful for reorganizing content, archiving old courses, or correcting misplaced courses. The operation is permanent and should be used with caution, as it may affect the visibility and accessibility of the course within the institutional structure. This endpoint does not delete the course itself from the system; it only removes the association between the course and the specified hierarchical node.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `nodeId` | string | Yes | The node ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|      |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete user from institutional node

**Slug:** `BLACKBOARD_DELETE_NODE_USER_ASSOCIATION`

This endpoint removes a specified user from a particular node within the Institutional Hierarchy of Blackboard Learn. It is used to disassociate a user (such as a student, faculty member, or staff) from a specific organizational unit (e.g., school, department, or program) in the institution's structure. This operation is typically performed when a user no longer needs access to or association with a particular part of the institution, such as when a student changes departments or a faculty member leaves a specific program. The endpoint does not delete the user from the system entirely, but only removes their association with the specified node. It's important to note that this action may affect the user's access rights and visibility within the Blackboard Learn environment related to the specific node.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `nodeId` | string | Yes | The node ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|      |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete user observer

**Slug:** `BLACKBOARD_DELETE_OBSERVER`

This endpoint removes a specific observer from a user's list of observers in the Blackboard learning management system. It is used to terminate the observer-user relationship, revoking the observer's ability to monitor or view the specified user's activities and information. The endpoint should be called when an institution or administrator needs to discontinue an observer's access to a particular user's data, such as when a parent's observing privileges for a student are revoked or when a teacher's monitoring of a student is no longer required. This operation is irreversible, and re-establishing the observer relationship would require creating a new connection. The endpoint does not provide any information about the observer or user; it simply performs the deletion of the relationship.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `observerId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:jsmith                     \|  \| userName   \| userName:jsmith                       \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|   **Since**: 3500.5.0  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete lt i placement by id

**Slug:** `BLACKBOARD_DELETE_PLACEMENT`

This endpoint deletes a specific Learning Tools Interoperability (LTI) placement from the Blackboard Learn platform. LTI placements define where and how external learning tools are integrated within the Blackboard user interface. Use this endpoint when you need to remove an LTI tool integration from a specific location in the Blackboard environment. This action is permanent and cannot be undone, so it should be used with caution. The deletion will remove the placement configuration but does not affect the LTI tool provider registration itself. Be aware that removing a placement may impact users who rely on the tool at that specific location within Blackboard.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `placementId` | string | Yes | Placementid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete pronoun by id

**Slug:** `BLACKBOARD_DELETE_PRONOUN`

Deletes a specific pronoun setting from the Blackboard learning management system. This endpoint is used to remove a user's pronoun preference from the system, identified by a unique pronounId. It should be used when a pronoun setting is no longer needed, such as when a user wants to change their pronoun preference or when an administrator needs to remove an incorrect or outdated setting. The operation is irreversible, so caution should be exercised when using this endpoint. It's important to note that this endpoint only deletes the pronoun setting and does not affect any other user data or settings in the system.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `pronounId` | string | Yes | Pronounid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete course assessment question

**Slug:** `BLACKBOARD_DELETE_QUESTION`

Deletes a specific question from an assessment within a Blackboard course. This endpoint allows instructors or course administrators to remove individual questions from existing assessments, which can be useful for updating or refining assessment content. The operation is permanent and cannot be undone, so it should be used with caution. This endpoint is particularly useful when modifying assessments after they've been created, such as removing outdated or incorrect questions. It should not be used to temporarily hide questions; instead, consider using other Blackboard features for that purpose. Note that deleting a question may affect the overall structure and scoring of the assessment, so it's important to review and adjust the assessment settings after using this endpoint.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `questionId` | string | Yes | Questionid |
| `assessmentId` | string | Yes | Assessmentid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete course rubric

**Slug:** `BLACKBOARD_DELETE_RUBRIC`

Deletes a specific rubric associated with a given course in the Blackboard Learn system. This endpoint should be used when an instructor or administrator needs to permanently remove a rubric from a course, such as when the rubric is no longer relevant or has been replaced. The operation is irreversible, so caution should be exercised before deletion. This endpoint does not return the deleted rubric data; it only performs the deletion operation. It's important to note that deleting a rubric may impact any assignments or assessments that were using it, so those should be updated accordingly after deletion.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `rubricId` | string | Yes | The Rubric ID. This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `forceDelete` | boolean | No | By default, used rubrics cannot be deleted. Use this flag if you want to force delete a rubric with all evaluations and associations.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete rubric association

**Slug:** `BLACKBOARD_DELETE_RUBRIC_ASSOCIATION`

Deletes a specific rubric association within a course in the Blackboard Learn platform. This endpoint removes the link between a rubric and its associated item (such as an assignment or assessment) in a given course. It should be used when an instructor or administrator needs to disassociate a rubric from a particular course item, perhaps due to changes in assessment criteria or course structure. This operation is permanent and cannot be undone, so it should be used with caution. The endpoint does not return any content upon successful deletion, indicating that the association has been removed from the system.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `rubricId` | string | Yes | The Rubric ID. This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `forceDelete` | boolean | No | By default, Rubric associations that were used to evaluate an activity or question cannot be deleted without user consent. Set this parameter to true if you want to delete an association with this condition. Any dependant gradebook grades will be considered as manual after deletion.  |
| `rubricAssociationId` | string | Yes | The Rubric Association ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete term by termid

**Slug:** `BLACKBOARD_DELETE_TERM`

The DeleteTerm endpoint removes a specific academic term from the Blackboard learning management system. It should be used when an administrator needs to permanently remove a term that is no longer needed, such as an outdated or erroneously created term. This operation is irreversible and will delete all associated data for the specified term, including course associations and enrollment information. It's crucial to use this endpoint with caution, as it may have far-reaching consequences on the institution's academic records and student data. Before deletion, ensure that all necessary data has been backed up or migrated if required.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `termId` | string | Yes | The term ID.  This may be the primary ID, or the secondary ID prefixed with the ID type.   \| ID type    \| Example                \|  \|------------\|------------------------\|  \| primary    \| _123_1                 \|  \| externalId \| externalId:spring.2016 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete user by id

**Slug:** `BLACKBOARD_DELETE_USER`

This endpoint permanently deletes a user account from the Blackboard Learn platform. It should be used when an administrator needs to remove a user's access and information from the system, such as when a student graduates or an employee leaves the institution. The deletion is irreversible, so it should be used with caution. Once deleted, all associated data, including course enrollments, submissions, and personal information, will be permanently removed. This endpoint does not provide a way to archive or temporarily deactivate a user; it only performs a complete deletion. It's crucial to verify the userId and ensure that any necessary data has been backed up before proceeding with the deletion.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete user from course meetings

**Slug:** `BLACKBOARD_DELETE_USER_ATTENDANCE`

This endpoint removes a user from a meeting within a specific course in the Blackboard learning management system. It should be used when an administrator or instructor needs to revoke a user's access to a particular course meeting, such as when a student drops a course or a teaching assistant's role changes. The operation is permanent and cannot be undone through this API, so it should be used with caution. This endpoint does not provide any information about the success of the operation or the current state of the meeting after the deletion.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete group in course

**Slug:** `BLACKBOARD_DEPRECATE_COURSE_GROUP_DELETE`

This endpoint deletes a specific group within a course in the Blackboard Learning Management System. It is used to remove a group that is no longer needed or to clean up the course structure. The operation is permanent and cannot be undone, so it should be used with caution. This endpoint is particularly useful for instructors or administrators who need to manage course organization, especially when restructuring group activities or at the end of a term. It does not provide any information about the deleted group or its members; it simply removes the group from the course.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get gradebook column details

**Slug:** `BLACKBOARD_DEPRECATED_GRADE_COLUMN_ACCESS`

Retrieves detailed information about a specific gradebook column for a particular course in the Blackboard learning management system. This endpoint allows educators and administrators to access the configuration and content of individual grading components within a course's gradebook. It should be used when detailed information about a specific grading column is needed, such as its name, points possible, visibility settings, or associated assignments. The endpoint does not modify any data and is suitable for read-only operations. It's important to note that this endpoint only provides information for a single column and does not return data about student grades or submissions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Download course content attachment

**Slug:** `BLACKBOARD_DOWNLOAD`

Downloads a specific attachment from a course's content in the Blackboard learning management system. This endpoint retrieves the file associated with the given attachmentId, which is linked to a particular content item (contentId) within a specific course (courseId). It's useful for programmatically accessing course materials, such as lecture slides, assignment documents, or supplementary resources. The endpoint returns the raw file data, allowing for direct download or further processing of the attachment content.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |
| `attachmentId` | string | Yes | Attachmentid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update user grade details by course

**Slug:** `BLACKBOARD_ENHANCE_GRADEBOOK_ENTRIES`

Updates a specific user's grade information within a course's gradebook column in the Blackboard learning management system. This endpoint allows instructors or authorized users to modify various aspects of a student's grade, including the textual representation, numerical score, private notes, student feedback, and exemption status. It's particularly useful for manual grade columns or when grades have been manually overridden in attempt-based columns. The endpoint provides flexibility in grading practices, enabling detailed feedback and grade management for individual students within a course.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `text` | string | No | The text representation of this grade. |
| `notes` | string | No | The instructor notes associated with this grade. This notes field is used for grades on manual grade columns.   That is, when column.grading.type = Manual.  It is also used when column.grading.type = Attempts and the grade has been manually overridden.  |
| `score` | integer | No | The score associated with this grade. |
| `exempt` | boolean | No | Whether the score associated with this grade is ignored when computing the course grade.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `feedback` | string | No | The instructor feedback associated with this grade.  This feedback is used for grades on manual grade columns.   That is, when column.grading.type = Manual.  It is also used when column.grading.type = Attempts and the grade has been manually overridden.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Enroll Course With Permissions

**Slug:** `BLACKBOARD_ENROLL_COURSE_WITH_PERMISSIONS`

Updates a user's enrollment details in a specific Blackboard Learn course. This endpoint allows for modifying various aspects of a user's course membership, including their role, availability status, and association with cross-listed courses. It's particularly useful for managing instructor assignments, adjusting student access, and organizing cross-listed course enrollments. The endpoint should be used when changes to a user's course enrollment are required, such as changing their role, updating their availability, or moving them between cross-listed courses. It does not provide functionality for initial course enrollment or complete removal of a user from a course.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `courseRoleId` | string ("BbFacilitator" | "CourseBuilder" | "Grader" | "Guest" | "Instructor" | "Student" | "TeachingAssistant") | No | The user"s role in the course. These roles are also valid for an organization, although they are named differently in the UI. Custom course roles may also be referenced by their IDs.  \| Type      \| Description  \| --------- \| --------- \| \| Instructor \| Has access to all areas in the Control Panel. This role is generally given to those developing, teaching, or facilitating the class. Instructors may access a course that is unavailable to students. This role is customizable and may have different capabilities from what is documented here. \| \| BbFacilitator \| The facilitator is an instructor like role. Facilitators are restricted versions of an instructor, in that they are able to deliver course instruction and administer all aspects of a pre-constructed course, but are not allowed to modify or alter the course. This role is customizable and may have different capabilities from what is documented here. \| \| TeachingAssistant \| The teaching assistant role is that of a co-teacher. Teaching assistants are able to administer all areas of a course. Their only limitations are those imposed by the instructor or Blackboard administrator at your school. This role is customizable and may have different capabilities from what is documented here. \| \| CourseBuilder \| Manages the course without having access to student grades. This role is customizable and may have different capabilities from what is documented here. \| \| Grader \| Assists the instructor in the creation, management, delivery, and grading of items. This role is customizable and may have different capabilities from what is documented here. \| \| Student \|  \| \| Guest \| Has no access to the Control Panel. Areas within the course are made available to guests, but typically they can only view course materials; they do not have access to tests or assessments, and do not have permission to post on discussion boards. This role"s behavior is immutable. \|   |
| `dataSourceId` | string | No | The ID of the data source associated with this course.  This may optionally be the data source"s externalId using the syntax "externalId:math101".  |
| `displayOrder` | integer | No | For primary instructor implementation, position or displayOrder cannot be negative, the minimum position is 1, with which is the primary instructor (aka. Leader instructor). Multiple primary instructor have the same displayOrder 1. This operation only takes effect when the course role is non-student and non-guest roles, otherwise it"s silently ignored, since <code>displayOrder</code> is for this design. All cases violating the above restrictions will be set as <code>null</code> All display orders don"t keep uniqueness, just save as-is.  |
| `childCourseId` | string | No | The primary ID of the child, cross-listed course, in which the user is directly enrolled. </p> This field is read only in Learn versions 3000.11.0 through 3400.0.0. As of 3400.1.0, this field is mutable.  </p> If this membership"s course is a parent course in a cross-listed set, the childCourseId can be updated to move the membership enrollment between child courses and the parent course in  the set.  Patching the childCourseId to "null" will move the membership to the parent course. **Since**: 3000.11.0  |
| `availability__available` | string ("Disabled" | "No" | "Yes") | No | null  \| Type      \| Description  \| --------- \| --------- \| \| Yes \|  \| \| No \|  \| \| Disabled \|   **Since**: 3100.0.0 \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch course category by id

**Slug:** `BLACKBOARD_FETCH_COURSE_CATEGORY_ASSOCIATIONS`

Retrieves a list of categories for a specific course within the Blackboard learning management system. This endpoint allows developers to access the organizational structure of a course, providing information about how content is categorized and arranged. It should be used when there's a need to understand or display the content structure of a Blackboard course, such as for content navigation or course mapping purposes. The endpoint focuses solely on category information and does not return the actual content within these categories. It's particularly useful for applications that need to mirror or interact with Blackboard's course organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>category</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve rubric evaluation by association

**Slug:** `BLACKBOARD_FETCH_COURSE_RUBRIC_ASSESSMENTS`

Retrieves the evaluations associated with a specific rubric for a particular course and rubric association in the Blackboard learning management system. This endpoint is designed for instructors, administrators, or authorized personnel to access and review assessment data based on predefined rubric criteria. It should be used when detailed evaluation information is needed for a specific course, rubric, and its application context (association). The endpoint provides a targeted view of assessment data, focusing solely on the evaluations tied to the specified parameters. It does not modify any data and is intended for read-only access to evaluation information.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "id(desc)" Supported fields are: - id **Since**: 3900.69.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `rubricId` | string | Yes | The Rubric ID. This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `submitted` | string | No | The submitted date value to use as search criteria. |
| `submittedCompare` | string | No | The "submittedCompare" value to use as a search criteria. |
| `rubricAssociationId` | string | Yes | The Rubric Association ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch rubric evaluation for group attempt column

**Slug:** `BLACKBOARD_FETCH_GROUP_ATTEMPT_RUBRIC_SCORES`

Retrieves the rubric evaluations for a specific group attempt within a gradebook column of a Blackboard course. This endpoint is designed to fetch detailed assessment data based on predefined rubric criteria for group assignments or projects. It should be used when instructors or authorized users need to access or review the structured feedback and scoring for a particular group's work. The tool is particularly useful for courses that incorporate collaborative assignments and utilize rubrics for standardized evaluation. It provides a comprehensive view of how a group's work was assessed across various rubric criteria, enabling thorough analysis of group performance and facilitating transparent grading practices. Note that this endpoint specifically deals with group attempts, so it may not be suitable for individual student assessments or non-rubric based evaluations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "id(desc)" Supported fields are: - id **Since**: 3900.69.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `submitted` | string | No | The submitted date value to use as search criteria. |
| `groupAttemptId` | string | Yes | Groupattemptid |
| `submittedCompare` | string | No | The "submittedCompare" value to use as a search criteria. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve user grades for course column

**Slug:** `BLACKBOARD_FILTER_GRADES_WITH_EXCLUSIONS_AND_SECURITY`

Retrieves the grades for all users associated with a specific gradebook column in a particular Blackboard course. This endpoint is useful for instructors or administrators who need to access and analyze grade data for a single assignment or grade item across all students in the course. It provides a comprehensive view of student performance for a specific graded component. The tool should be used when there's a need to review or export grades for a particular assignment, quiz, or other graded item. It does not modify any grade data and is intended for read-only operations. Note that the response will likely include sensitive student information, so proper authorization and data handling practices should be observed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `unsupportedSearchOverChildCourses` | boolean | No | Unsupportedsearchoverchildcourses |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get course meeting download url

**Slug:** `BLACKBOARD_GENERATE_ATTENDANCE_DATA_DOWNLOAD_URL`

Retrieves a download URL for meeting-related resources within a specific Blackboard course. This endpoint should be used when access to downloadable content associated with course meetings is required, such as meeting recordings, shared documents, or other meeting-specific materials. The tool returns a URL that can be used to download the meeting resources, allowing for easy access to important course-related content. It's important to note that this endpoint only provides the URL for downloading and does not actually transfer the file content. The specific type of meeting resources available may vary depending on the course configuration and meeting settings in Blackboard.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch learning session data

**Slug:** `BLACKBOARD_GET_ACTIVE_SESSIONS`

Retrieves a list of active sessions from the Blackboard Learn platform. This endpoint provides information about ongoing learning activities, such as class meetings, online discussions, or interactive modules. It can be used to monitor current engagement, track attendance, or gather data on session participation. The tool is particularly useful for administrators or instructors who need an overview of active learning sessions across the platform. Note that the specific details returned for each session may vary depending on the user's permissions and the session type. This endpoint does not create or modify sessions; it is for retrieval purposes only.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>user</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get course content adaptive release group criteria

**Slug:** `BLACKBOARD_GET_ADAPTIVE_RELEASE_ACL_GROUP_PREDICATES`

Retrieves the groups associated with a specific criterion of an adaptive release rule for a particular content item within a Blackboard course. This endpoint is used to get information about which groups are part of the conditions for releasing content based on the adaptive release feature. It's particularly useful when you need to review or audit the adaptive release settings for a course, especially the group-based criteria. The endpoint does not modify any data and is intended for read-only operations. It's important to note that this endpoint only retrieves group information for a single criterion and does not provide a comprehensive view of all adaptive release rules or criteria for the content item.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "groupId(desc)" Supported fields are: - groupId **Since**: 3900.32.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `ruleId` | string | Yes | The rule ID. This should be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |
| `criterionId` | string | Yes | The adaptive release criterion ID. This should be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch user criteria from course content rule

**Slug:** `BLACKBOARD_GET_ADAPTIVE_RELEASE_ACL_USER_PREDICATES`

Retrieves a list of users who meet a specific criterion within an adaptive release rule for a particular content item in a Blackboard Learn course. This endpoint is used to identify which users have satisfied the conditions set by the adaptive release criterion, allowing administrators or instructors to monitor and manage access to course content. It's particularly useful for tracking student progress, assessing the effectiveness of adaptive release strategies, and ensuring that content is being accessed as intended. The endpoint does not modify any data or grant access; it only provides information about which users currently meet the specified criterion.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "userId(desc)" Supported fields are: - userId **Since**: 3900.32.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `ruleId` | string | Yes | The rule ID. This should be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |
| `criterionId` | string | Yes | The adaptive release criterion ID. This should be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course content adaptive release rule criterion

**Slug:** `BLACKBOARD_GET_ADAPTIVE_RELEASE_RULE_CRITERION`

Retrieves detailed information about a specific criterion within an adaptive release rule for a particular content item in a Blackboard Learn course. This endpoint allows instructors or administrators to examine the conditions set for releasing content to students. It should be used when reviewing or troubleshooting adaptive release settings, or when preparing to modify existing criteria. The tool provides granular access to individual criterion details, enabling precise management of content availability. Note that this endpoint only retrieves information and does not modify any settings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ruleId` | string | Yes | The rule ID. This should be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |
| `criterionId` | string | Yes | The adaptive release criterion ID. This should be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get announcement by id

**Slug:** `BLACKBOARD_GET_ANNOUNCEMENT`

Retrieves a specific announcement from the Blackboard Learn platform using its unique identifier. This endpoint allows users to fetch detailed information about a single announcement, such as its title, content, publication date, and author. It's particularly useful when you need to display or process information about a known announcement. The endpoint should be used when you have the specific ID of an announcement and require its full details. Note that this endpoint only retrieves existing announcements and cannot be used to create, modify, or delete announcements.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `announcementId` | string | Yes | Announcementid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List announcements

**Slug:** `BLACKBOARD_GET_ANNOUNCEMENTS`

Retrieves a list of announcements from the Blackboard Learn platform. This endpoint allows users to fetch announcements, which are important messages or updates shared within courses or across the institution. It can be used to display recent announcements to students, instructors, or administrators, keeping them informed about course-related information, deadlines, or institutional news. The endpoint supports optional filtering by course and pagination of results. It's particularly useful for building dashboards, notification systems, or integrating Blackboard announcements into external applications. Note that the specific content and visibility of announcements may depend on the user's role and permissions within the Blackboard Learn system.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `title` | string | No | Search for announcements with a title like the provided value. **Since**: 3500.3.0  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `created` | string | No | Search for announcements with a created date relative to this value.  "createdCompare" may also be sent to control search behavior. **Since**: 3500.3.0  |
| `endDate` | string | No | Search announcements with end date relative to this value. "endAnnouncementsDateCompare" may also be sent to control search behavior. **Since**: 3900.92.0  |
| `modified` | string | No | Search for announcements with a modified date relative to this value.  "modifiedCompare" may also be sent to control search behavior. **Since**: 3500.3.0  |
| `startDate` | string | No | Search announcements with start date relative to this value. "startAnnouncementsDateCompare" may also be sent to control search behavior. **Since**: 3900.92.0  |
| `createdUntil` | string | No | Search announcements with created date less than or equal to this value. "createdCompare" needs to be set to "between" to perform the search correctly. **Since**: 3900.92.0  |
| `endDateUntil` | string | No | Search announcements with end date relative to this value. "endAnnouncementsDateCompare" needs to be set to "between" to perform the search correctly. **Since**: 3900.92.0  |
| `creatorUserId` | string | No | Search for announcements with creator user id equal to this value. **Since**: 3900.89.0.  |
| `modifiedUntil` | string | No | Search announcements with modified date less than or equal to this value. "modifiedCompare" needs to be set to "between" to perform the search correctly. **Since**: 3900.92.0  |
| `createdCompare` | string ("between" | "greaterOrEqual" | "lessThan") | No | Used alongside the "created" search parameter. Defaults to greaterOrEqual if not specified. "lessThan", "between" are also accepted values. **Since**: 3500.3.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \| \| between \|  \|   |
| `endDateCompare` | string ("between" | "greaterOrEqual" | "lessThan") | No | Used alongside the "endDate" search parameter. Defaults to greaterOrEqual if not specified. "lessThan", "between" are also accepted values. **Since**: 3900.92.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \| \| between \|  \|   |
| `startDateUntil` | string | No | Search announcements with start date relative to this value. "startAnnouncementsDateCompare" needs to be set to "between" to perform the search correctly. **Since**: 3900.92.0  |
| `creatorUsername` | string | No | Search for announcements with creator username equal to this value. **Since**: 3900.89.0.  |
| `modifiedCompare` | string ("between" | "greaterOrEqual" | "lessThan") | No | Used alongside the "modified" search parameter. Defaults to greaterOrEqual if not specified. "lessThan", "between" are also accepted values. **Since**: 3500.3.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \| \| between \|  \|   |
| `startDateCompare` | string ("between" | "greaterOrEqual" | "lessThan") | No | Used alongside the "startDate" search parameter. Defaults to greaterOrEqual if not specified. "lessThan", "between" are also accepted values. **Since**: 3900.92.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \| \| between \|  \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course attempt file

**Slug:** `BLACKBOARD_GET_ATTEMPT_FILE_META_DATA`

Retrieves a specific file associated with a student's attempt in a course's gradebook within the Blackboard Learn system. This endpoint allows authorized users, such as instructors or administrators, to access individual files submitted as part of a student's assignment or assessment attempt. It can be used to review submitted work, download attachments, or verify file contents for grading purposes. The endpoint requires precise identification of the course, attempt, and file, ensuring accurate and secure access to the requested gradebook data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `attemptId` | string | Yes | Attemptid |
| `attemptFileId` | string | Yes | Attemptfileid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch gradebook attempt files

**Slug:** `BLACKBOARD_GET_ATTEMPT_FILE_META_DATA_LIST`

Retrieves the files associated with a specific gradebook attempt for a given course in the Blackboard learning management system. This endpoint allows access to student-submitted files for a particular assignment or assessment attempt. It is useful for instructors or systems integrating with Blackboard to review submissions, facilitate grading processes, or archive student work. The endpoint should be used when there's a need to access the actual file content of student submissions, rather than just metadata about the attempt. Note that this endpoint only provides access to files and does not include other attempt details such as scores or feedback.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `attemptId` | string | Yes | Attemptid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve attempt receipt by id

**Slug:** `BLACKBOARD_GET_ATTEMPT_RECEIPT`

Retrieves detailed information about a specific attempt receipt in the Blackboard learning management system. This endpoint allows users to access data related to a student's attempt on an assessment, test, or other evaluated activity. It should be used when detailed information about a particular attempt is needed, such as for reviewing student performance, grading, or addressing disputes. The endpoint provides a snapshot of the attempt, which may include timestamps, scores, and other relevant metadata. It does not modify any data and is intended for read-only access to attempt information.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `attemptReceiptId` | string | Yes | Attemptreceiptid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get attendance record

**Slug:** `BLACKBOARD_GET_ATTENDANCE_RECORD`

Returns a Course Meeting Attendance information for the given meeting and user Id. The "course.attendance.VIEW" entitlement is required to view a Course Meeting Attendance. **Since**: 3500.7.0

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `meetingId` | string | Yes | Meetingid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get attendance records by meeting id

**Slug:** `BLACKBOARD_GET_ATTENDANCE_RECORDS_BY_MEETING_ID`

Returns a list of Course Meeting Attendance for a given meeting id. The "course.attendance.VIEW" entitlement is required to view a Course Meeting attendance. **Since**: 3500.7.0

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Sort |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `meetingId` | string | Yes | Meetingid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve user meetings in course

**Slug:** `BLACKBOARD_GET_ATTENDANCE_RECORDS_BY_USER_ID`

Retrieves detailed information about a specific user's participation or engagement in meetings for a particular course within the Blackboard learning management system. This endpoint is useful for instructors, administrators, or analytics tools to gather data on individual student involvement in course activities. It should be used when detailed user-level meeting data is required, such as for attendance tracking, participation analysis, or performance evaluation. The endpoint will not provide aggregate course data or information about users not associated with the specified course. It's important to note that the exact details returned may depend on the course settings and the user's role within the course.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Sort |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch calendar item by type and id

**Slug:** `BLACKBOARD_GET_CALENDAR_ITEM`

Retrieves detailed information about a specific calendar item from the Blackboard learning management system. This endpoint allows you to fetch data for a single calendar entry, such as an event, appointment, or assignment, based on its type and unique identifier. Use this when you need to access or display comprehensive information about a particular item in a user's or course's calendar. The endpoint is particularly useful for building integrations that sync calendar data or for displaying detailed event information in external applications. Note that this endpoint only retrieves existing calendar items and cannot be used to create, modify, or delete calendar entries.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `calendarItemId` | string | Yes | Calendaritemid |
| `calendarItemType` | string ("Course" | "GradebookColumn" | "Institution" | "OfficeHours" | "Personal") | Yes | Calendaritemtype |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get calendar items

**Slug:** `BLACKBOARD_GET_CALENDAR_ITEMS`

Retrieves calendar items from the Blackboard Learn platform. This endpoint allows users to fetch a list of calendar events, which may include course schedules, assignment deadlines, and institution-wide events. It provides access to the integrated calendar system within Blackboard Learn, enabling applications to synchronize with or display Blackboard calendar data. This tool is particularly useful for building applications that need to display or manage academic schedules, deadlines, and events from Blackboard. Note that the response may include various types of calendar items such as course events, office hours, and gradebook deadlines. The endpoint does not provide functionality for creating, updating, or deleting calendar items; it is read-only.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "title(desc),start" Supported fields are: - id - calendarId - title - start - end - modified **Since**: 3400.9.0  |
| `type` | string ("Course" | "GradebookColumn" | "Institution" | "OfficeHours" | "Personal") | No | Specifies only calendar items with the given type. **Since**: 3400.9.0  \| Type      \| Description  \| --------- \| --------- \| \| Course \|  \| \| GradebookColumn \| Read only. \| \| Institution \|  \| \| OfficeHours \|  \| \| Personal \|  \|   |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `since` | string | No | Specifies only calendar items after the "since" date (inclusive) are to be returned. Maximum of 16 weeks after the "since" date will be returned. ISO-8601 date-time format is expected: [yyyy-MM-dd\|yyyyMMdd][T(hh:mm[:ss[.sss]]\|hhmm[ss[.sss]])]?[Z\|[+-]hh:mm]] **Since**: 3400.9.0  |
| `until` | string | No | Specifies only calendar items before the "until" date (inclusive) are to be returned. Maximum of 16 weeks prior to the "until" date will be returned. ISO-8601 date-time format is expected: [yyyy-MM-dd\|yyyyMMdd][T(hh:mm[:ss[.sss]]\|hhmm[ss[.sss]])]?[Z\|[+-]hh:mm]] **Since**: 3400.9.0  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | No | Specifies only calendar items associated with "courseId" are to be returned. NOTE: This is the course.id, not the course.courseId **Since**: 3400.9.0  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get calendars

**Slug:** `BLACKBOARD_GET_CALENDARS`

Get the list of calendars. This endpoint will return all calendars viewable by the user. All users can request a list of calendars viewable to them. **Since**: 3400.9.0

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve category type details

**Slug:** `BLACKBOARD_GET_CATEGORIES`

Retrieves a list of categories from the Blackboard catalog based on the specified category type. This endpoint is used to fetch organized groups of resources or content within the Blackboard Learn platform, such as course categories, program categories, or departmental categories. It's particularly useful for applications that need to display or manage the structure of educational content within Blackboard. The endpoint should be used when you need to populate category listings, build navigation menus, or gather information about how content is organized in the Blackboard system. Note that this endpoint only provides category information and does not return the actual content within those categories.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "title(desc),start" Supported fields are: - id - categoryId - title - available - created **Since**: 3700.6.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `title` | string | No | Search for categories with titles that contain this value. **Since**: 3700.8.0  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `created` | string | No | Search for categories with a created date relative to this value. **Since**: 3700.8.0  |
| `available` | boolean | No | Search for categories with availability matching this value. **Since**: 3700.9.0  |
| `frontPage` | boolean | No | Search for categories with a front page indicator matching this value. **Since**: 3700.9.0  |
| `categoryId` | string | No | Search for categories with category IDs that contain this value. **Since**: 3700.8.0  |
| `categoryType` | string ("Course" | "Organization") | Yes | Categorytype |
| `dataSourceId` | string | No | Search for categories with a data source id matching this value. **Since**: 3700.9.0  |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "created" search parameter.  Supported values: - lessThan - greaterOrEqual Defaults to greaterOrEqual if not specified. **Since**: 3700.8.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch category details by id

**Slug:** `BLACKBOARD_GET_CATEGORY`

Retrieves detailed information about a specific category in the Blackboard catalog system. This endpoint allows users to access category data based on the category type and its unique identifier. It is useful for obtaining metadata, structure, or any other relevant information about a particular category within the educational content organization. The endpoint should be used when detailed information about a specific category is needed, such as when populating category details in a user interface or when synchronizing category information with external systems. It provides a focused view of a single category and does not return information about items within the category or related categories.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `categoryId` | string | Yes | Categoryid |
| `categoryType` | string ("Course" | "Organization") | Yes | Categorytype |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course child details

**Slug:** `BLACKBOARD_GET_CHILD`

Retrieves detailed information about a specific child course within a parent course in the Blackboard Learn platform. This endpoint is useful for accessing hierarchical course structures, allowing developers to fetch data about nested or sub-courses. Use this when you need to gather information about a particular child course, such as its name, description, or specific attributes related to its parent-child relationship. The endpoint requires both the parent course ID and the child course ID to uniquely identify the requested child course within the Blackboard Learn system.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>childCourse</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `childCourseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve catalog category children

**Slug:** `BLACKBOARD_GET_CHILD_CATEGORIES`

Retrieves the child categories of a specified parent category within the Blackboard catalog system. This endpoint allows users to navigate through the hierarchical structure of categories, which is crucial for organizing and accessing educational content. It should be used when exploring the category tree, building category-based navigation, or when needing to list subcategories of a specific parent category. The endpoint is particularly useful for applications that need to mirror or interact with Blackboard's content organization structure. Note that this endpoint only provides direct children of the specified parent category and does not recursively fetch all descendants.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "title(desc),start" Supported fields are: - id - categoryId - title - available - created **Since**: 3700.6.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `title` | string | No | Search for categories with titles that contain this value. **Since**: 3700.8.0  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `created` | string | No | Search for categories with a created date relative to this value. **Since**: 3700.8.0  |
| `parentId` | string | Yes | Parentid |
| `available` | boolean | No | Search for categories with availability matching this value. **Since**: 3700.9.0  |
| `frontPage` | boolean | No | Search for categories with a front page indicator matching this value. **Since**: 3700.9.0  |
| `categoryId` | string | No | Search for categories with category IDs that contain this value. **Since**: 3700.8.0  |
| `categoryType` | string ("Course" | "Organization") | Yes | Categorytype |
| `dataSourceId` | string | No | Search for categories with a data source id matching this value. **Since**: 3700.9.0  |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "created" search parameter.  Supported values: - lessThan - greaterOrEqual Defaults to greaterOrEqual if not specified. **Since**: 3700.8.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve children goals by id

**Slug:** `BLACKBOARD_GET_CHILDREN_GOALS`

Retrieves the child elements (sub-goals, tasks, or related items) of a specified goal in the Blackboard learning management system. This endpoint is used to fetch the hierarchical structure of educational objectives, allowing users to view and manage the breakdown of a parent goal into its component parts. It's particularly useful for educators and administrators who need to track the progress of complex, multi-layered learning objectives or course structures. The endpoint should be used when there's a need to understand the sub-components of a specific goal or to navigate through the goal hierarchy. It will not provide detailed information about the parent goal itself, only its immediate children.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "title(desc)" Supported fields are: - id - title **Since**: 3900.53.0  |
| `type` | string | No | Optional search criteria parameter to filter by goal type. **Since**: 3900.53.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `goalId` | string | Yes | The Goal ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:Goal_1                     \|    |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `goalSetId` | string | No | Optional search criteria parameter to filter by goal set id. **Since**: 3900.53.0  |
| `categoryId` | string | No | Optional search criteria parameter to filter by category id. **Since**: 3900.53.0  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve grade attempt by course and column id

**Slug:** `BLACKBOARD_GET_COLUMN_ATTEMPT`

Retrieves detailed information about a specific attempt for a gradebook column within a course in the Blackboard Learn system. This endpoint allows users to access individual submission data, such as scores, comments, or other relevant information associated with a student's attempt on a particular graded item. It is particularly useful for instructors or administrators who need to review or analyze individual student performances on assignments or assessments. The endpoint should be used when detailed information about a specific submission is required, rather than aggregate data for the entire column or course.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `attemptId` | string | Yes | Attemptid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve gradebook attempts

**Slug:** `BLACKBOARD_GET_COLUMN_ATTEMPTS`

Retrieves attempt data for a specific gradebook column within a course in the Blackboard Learn platform. This endpoint allows users to access detailed information about student attempts for a particular assessment or assignment. It's useful for analyzing student performance, tracking submission patterns, and gathering data for educational analytics. The endpoint should be used when detailed information about student interactions with a specific gradebook item is needed, but it won't provide an overview of the entire gradebook or course structure.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `userId` | string | No | Search for grade column attempts submitted by this user. This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:jsmith                     \|  \| userName   \| userName:jsmith                       \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|   **Since**: 3100.4.0  |
| `created` | string | No | Search for attempts with created date relative to this value. "createdCompare" may also be sent to control search behavior. **Since**: 3800.0.0  |
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `modified` | string | No | Search for attempts with modified date relative to this value. "modifiedCompare" may also be sent to control search behavior. **Since**: 3800.0.0  |
| `attemptDate` | string | No | Search for attempts with attempt date relative to this value. "attemptDateCompare" may also be sent to control search behavior. **Since**: 3800.0.0  |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "created" search parameter. Defaults to greaterOrEqual if not specified. **Since**: 3800.0.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `attemptStatuses` | string ("Abandoned" | "Canceled" | "Completed" | "InProgress" | "InProgressAgain" | "NeedsGrading" | "NeedsGradingAgain" | "NotAttempted" | "Suspended") | No | Search for grade column attempts with one of these statuses. **Since**: 3100.4.0  \| Type      \| Description  \| --------- \| --------- \| \| NotAttempted \| none of the students in a group has submitted an attempt; applies only to group assessments \| \| Abandoned \|   **Deprecated**: Since 9.1 SP8 unsupported status, undetermined behavior if used. \| \| InProgress \| attempt activity has commenced, but has not been submitted for grading \| \| Suspended \|   **Deprecated**: Since 9.1 SP8 unsupported status, undetermined behavior if used. \| \| Canceled \|   **Deprecated**: Since 9.1 SP8 unsupported status, undetermined behavior if used. \| \| NeedsGrading \| attempt has been submitted for grading, but has not been fully graded \| \| Completed \| a grade has been entered for the attempt \| \| InProgressAgain \| attempt has been graded, but more student activity occurred after the grade was entered; applies only to collaborative tools such as discussions \| \| NeedsGradingAgain \| additional student activity occurring after a grade was entered requires that the attempt be regraded; applies only to collaborative tools such as discussions \|   |
| `modifiedCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "modified" search parameter. Defaults to greaterOrEqual if not specified. **Since**: 3800.0.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `attemptDateCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "attemptDate" search parameter. Defaults to greaterOrEqual if not specified. **Since**: 3800.0.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve user gradebook column

**Slug:** `BLACKBOARD_GET_COLUMN_GRADE`

Retrieves a specific user's grade for a particular gradebook column in a Blackboard course. This endpoint is useful for accessing individual student performance data within a course, allowing for targeted grade retrieval and analysis. It should be used when detailed grade information for a single student on a specific assignment or gradebook entry is needed. The endpoint provides focused access to gradebook data, which is particularly valuable for generating individual student reports, conducting performance reviews, or integrating with external grade management systems.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `unsupportedSearchOverChildCourses` | boolean | No | Unsupportedsearchoverchildcourses |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get last changed grade column for user

**Slug:** `BLACKBOARD_GET_COLUMN_GRADE_LAST_CHANGED`

Retrieves information about the last changes made to a specific gradebook column for a particular course in Blackboard. This endpoint is useful for tracking recent modifications to grades, comments, or other gradebook data, enhancing transparency and accountability in the grading process. It provides details about the most recent updates, potentially including the user who made the change and the timestamp of the modification. This tool should be used when there's a need to monitor or audit recent activity in a specific gradebook column, such as verifying when the last grade was entered or identifying who made the most recent changes. It's particularly valuable for instructors and administrators who need to keep track of grading activities and ensure the accuracy and timeliness of gradebook entries.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `unsupportedSearchOverChildCourses` | boolean | No | Unsupportedsearchoverchildcourses |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List gradebook columns for users

**Slug:** `BLACKBOARD_GET_COLUMN_GRADES`

Retrieves user data associated with a specific gradebook column for a given course in Blackboard. This endpoint allows educators and administrators to access detailed information about students' performance or participation in a particular graded item or category. It should be used when there's a need to analyze or report on student data for a specific gradebook column, such as assignment scores or participation grades. The endpoint provides a focused view of user data, limited to the context of the specified course and gradebook column, and does not include overall course performance or data from other columns.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `changeIndex` | integer | No | Retrieve only items modified after the given change index. **Since**: 3300.4.0  |
| `lastRelevantDate` | string | No | Set the search criteria to the search value of the lastRelevantDate. **Since**: 3900.78.0  |
| `firstRelevantDate` | string | No | Set the search criteria to the search value of the firstRelevantDate. **Since**: 3900.78.0  |
| `includeUnpostedGrades` | boolean | No | If true, calculated columns exposed in the response will be processed such that any unposted grades are included in their calculations. If false, only posted grades will be included in calculations. Entitlements course.gradebook-grades.VIEW, course.gradebook.MODIFY and course.gradebook-grades.EXECUTE are required to use this parameter. **Since**: 3800.4.0  |
| `lastRelevantDateCompare` | string ("greaterOrEqual" | "lessThan") | No | Assign the compare value to the search criteria, and it works along with the lastRelevantDate. Supported values: - lessThan - greaterOrEqual Defaults to greaterOrEqual if not specified. **Since**: 3900.78.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `firstRelevantDateCompare` | string ("greaterOrEqual" | "lessThan") | No | Assign the compare value to the search criteria, and it works along with the firstRelevantDate. Supported values: - lessThan - greaterOrEqual Defaults to greaterOrEqual if not specified. **Since**: 3900.78.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `includeDisabledMemberships` | boolean | No | If false, only active course memberships will be exposed in the response. By default, the value is false. If true, users with disabled access to the course will also be included in the response. Entitlements course.gradebook-grades.VIEW, course.gradebook.MODIFY and course.gradebook-grades.EXECUTE are required to use this parameter.  |
| `unsupportedSearchOverChildCourses` | boolean | No | Unsupportedsearchoverchildcourses |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get course gradebook group attempts

**Slug:** `BLACKBOARD_GET_COLUMN_GROUP_ATTEMPTS`

Retrieves group attempts data for a specific gradebook column within a course in Blackboard Learn. This endpoint allows users to access detailed information about group submissions, including submission dates, grades, and potentially group member contributions for a particular grading item. It is particularly useful for instructors or administrators who need to analyze group performance or review the history of group submissions for a specific assignment or grading criteria. The endpoint supports both Ultra and Original Course Views, making it versatile across different Blackboard Learn interfaces. Use this when you need to gather comprehensive data about group work and collaborative assignments within a course's gradebook structure.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `status` | string ("Abandoned" | "Canceled" | "Completed" | "InProgress" | "InProgressAgain" | "NeedsGrading" | "NeedsGradingAgain" | "NotAttempted" | "Suspended") | No | Search for group column attempts in this status. Possible values are: - NOT_ATTEMPTED - IN_PROGRESS - NEEDS_GRADING - COMPLETED - IN_MORE_PROGRESS - NEEDS_MORE_GRADING **Since**: 3900.98.0  \| Type      \| Description  \| --------- \| --------- \| \| NotAttempted \| none of the students in a group has submitted an attempt; applies only to group assessments \| \| Abandoned \|   **Deprecated**: Since 9.1 SP8 unsupported status, undetermined behavior if used. \| \| InProgress \| attempt activity has commenced, but has not been submitted for grading \| \| Suspended \|   **Deprecated**: Since 9.1 SP8 unsupported status, undetermined behavior if used. \| \| Canceled \|   **Deprecated**: Since 9.1 SP8 unsupported status, undetermined behavior if used. \| \| NeedsGrading \| attempt has been submitted for grading, but has not been fully graded \| \| Completed \| a grade has been entered for the attempt \| \| InProgressAgain \| attempt has been graded, but more student activity occurred after the grade was entered; applies only to collaborative tools such as discussions \| \| NeedsGradingAgain \| additional student activity occurring after a grade was entered requires that the attempt be regraded; applies only to collaborative tools such as discussions \|   |
| `userId` | string | No | Search for group column attempts submitted by this user. **Since**: 3900.98.0  |
| `created` | string | No | Search for attempts with created date relative to this value. "createdCompare" may also be sent to control search behavior. **Since**: 3900.98.0  |
| `groupId` | string | No | Search for grade column group attempts submitted by this group. This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                                    \|  \|------------\|--------------------------------------------\|  \| primary    \| _123_1                                     \|  \| externalId \| externalId:915c7567d76d444abf1eed56aad3beb5\|   **Since**: 3100.10.0  |
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `modified` | string | No | Search for attempts with modified date relative to this value. "modifiedCompare" may also be sent to control search behavior. **Since**: 3900.98.0  |
| `attemptDate` | string | No | Search for attempts with attempt date relative to this value. "attemptDateCompare" may also be sent to control search behavior. **Since**: 3900.98.0  |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "created" search parameter. Defaults to greaterOrEqual if not specified. **Since**: 3900.98.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `attemptStatuses` | string ("Abandoned" | "Canceled" | "Completed" | "InProgress" | "InProgressAgain" | "NeedsGrading" | "NeedsGradingAgain" | "NotAttempted" | "Suspended") | No | Search for grade column attempts with one of these statuses. **Since**: 3100.4.0  \| Type      \| Description  \| --------- \| --------- \| \| NotAttempted \| none of the students in a group has submitted an attempt; applies only to group assessments \| \| Abandoned \|   **Deprecated**: Since 9.1 SP8 unsupported status, undetermined behavior if used. \| \| InProgress \| attempt activity has commenced, but has not been submitted for grading \| \| Suspended \|   **Deprecated**: Since 9.1 SP8 unsupported status, undetermined behavior if used. \| \| Canceled \|   **Deprecated**: Since 9.1 SP8 unsupported status, undetermined behavior if used. \| \| NeedsGrading \| attempt has been submitted for grading, but has not been fully graded \| \| Completed \| a grade has been entered for the attempt \| \| InProgressAgain \| attempt has been graded, but more student activity occurred after the grade was entered; applies only to collaborative tools such as discussions \| \| NeedsGradingAgain \| additional student activity occurring after a grade was entered requires that the attempt be regraded; applies only to collaborative tools such as discussions \|   |
| `modifiedCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "modified" search parameter. Defaults to greaterOrEqual if not specified. **Since**: 3900.98.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `attemptDateCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "attemptDate" search parameter. Defaults to greaterOrEqual if not specified. **Since**: 3900.98.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course content by ids

**Slug:** `BLACKBOARD_GET_CONTENT`

Retrieves specific content within a Blackboard course using the course ID and content ID. This endpoint allows users to access detailed information about a particular content item, such as a lecture, assignment, or resource, within the context of a specific course. It's useful for applications that need to display or process individual course materials. The endpoint should be used when detailed information about a specific piece of course content is required, rather than for retrieving a list of all content in a course. Note that this endpoint only provides information about the content and does not include user-specific data like submission status or grades.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>copyHistory</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |
| `includeInActivityTracking` | boolean | No | Includeinactivitytracking |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course content children

**Slug:** `BLACKBOARD_GET_CONTENT_CHILDREN`

Retrieves a list of child content items for a specific content within a Blackboard Learn course. This endpoint is used to navigate the hierarchical structure of course materials, allowing users to explore sub-items or nested content within a parent content item. It's particularly useful for building course content navigation systems or for analyzing the structure of course materials. The endpoint returns only direct children of the specified content, not deeper levels of the hierarchy. It should be used when you need to display or process the immediate sub-items of a given course content, but not for searching or retrieving specific content across the entire course.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `title` | string | No | Search for content title. Will return all Content items whose title contains the supplied search value. **Since**: 3900.10.0  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `created` | string | No | Search for contents with a created date relative to this value.  "createdCompare" may also be sent to control search behavior. **Since**: 3700.1.0  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `modified` | string | No | Search for contents with a modified date relative to this value.  "modifiedCompare" may also be sent to control search behavior. **Since**: 3700.4.0  |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |
| `recursive` | boolean | No | Search for child content recursively.  A value of "true" indicates that search results should include all content descendants within the hierarchy of the specified parent.  A value of "false" indicates results should be limited to immediate children only.  Not setting this field defaults to "false" behavior; only including immediate children. **Since**: 3100.2.0  |
| `reviewable` | boolean | No | Search contents by whether they are reviewable or not. **Since**: 3700.15.0  |
| `contentHandler` | string | No | Search for the specific content handler.  Not setting this field will return all content handlers. **Since**: 3400.5.0  |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "created" search parameter.  Supported values: - lessThan - greaterOrEqual Defaults to greaterOrEqual if not specified. **Since**: 3700.1.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `modifiedCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "modified" search parameter.  Supported values: - lessThan - greaterOrEqual Defaults to greaterOrEqual if not specified. **Since**: 3700.4.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `includeInActivityTracking` | boolean | No | Includeinactivitytracking |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve contentcollection resource

**Slug:** `BLACKBOARD_GET_CONTENT_COLLECTION_RESOURCE`

Retrieves a specific resource from a content collection in Blackboard Learn. This endpoint allows developers to access detailed information about a particular resource, such as a document, video, or other educational material, stored within Blackboard's content management system. It is particularly useful when you need to retrieve metadata or content details for a known resource, perhaps to display it in a custom interface or to verify its properties. The endpoint requires a valid resourceId to function correctly and will likely return comprehensive details about the resource, including its name, type, size, and associated metadata. However, it may not provide the actual content of the resource, depending on Blackboard's implementation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `resourceId` | string | Yes | The xythos resource ID, formatted either as a primary ID or a xythos ID. <pre class="markdown"> \| ID type    \| Example                                          \| \|------------\|--------------------------------------------------\| \| primary    \| _123_1                                           \| \| xid        \| xid-123_1-1                                      \| </pre> The home directory of a specified course is supported by the following syntax. <pre class="markdown"> \| ID type    \| Example                                          \| \|------------\|--------------------------------------------------\| \| primary    \| ~course:_123_1                                   \| \| secondary  \| ~course:courseId:theCourseId                     \| \| secondary  \| ~course:externalId:theExternalId                 \| \| secondary  \| ~course:uuid:theUuid                             \| </pre> Similarly, the home directory of a specified user is supported as follows. <pre class="markdown"> \| ID type    \| Example                                          \| \|------------\|--------------------------------------------------\| \| primary    \| ~user:_123_1                                     \| \| secondary  \| ~user:userName:theUserName                       \| \| secondary  \| ~user:externalId:theExternalId                   \| \| secondary  \| ~user:uuid:theUuid                               \| </pre> Resource IDs for home directory of the current user in context is supported as follows.   \| ID type    \| Example                                          \|  \|------------\|--------------------------------------------------\|  \| special    \| ~                                                \|  \| special    \| ~user:me                                         \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get course content group details

**Slug:** `BLACKBOARD_GET_CONTENT_GROUP`

Retrieves detailed information about a specific group within a content item of a course in the Blackboard Learn platform. This endpoint is used to access group-related data, such as group name, description, membership, and any associated settings or properties. It should be used when you need to fetch comprehensive information about a particular group in the context of a specific course and content item. The endpoint does not modify any data and is suitable for read-only operations. It's particularly useful for applications that need to display or process group information within the structure of Blackboard's course content organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | Contentid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course content groups

**Slug:** `BLACKBOARD_GET_CONTENT_GROUPS`

Retrieves the groups associated with a specific content item within a Blackboard course. This endpoint is useful for understanding the group structure or permissions related to particular course content. It should be used when you need to list all groups that have access to or are associated with a specific piece of content in a course. The endpoint does not modify any data and is intended for read-only operations. Note that it does not provide detailed information about the groups themselves, only their association with the specified content.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | Contentid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course contents

**Slug:** `BLACKBOARD_GET_CONTENTS`

Retrieves the contents of a specific course in the Blackboard Learn platform. This endpoint allows you to fetch all learning materials, resources, and content items associated with a given course. It should be used when you need to access or display the structure and components of a course, such as modules, assignments, documents, or other learning objects. The endpoint provides a comprehensive view of the course content, which can be useful for building course outlines, content management interfaces, or synchronizing course materials with external systems. Note that this endpoint only retrieves the content structure and metadata; it does not download the actual content files. To access specific content items, you may need to use additional API calls based on the information provided by this endpoint.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `title` | string | No | Search for content title. Will return all Content items whose title contains the supplied search value. **Since**: 3900.10.0  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `created` | string | No | Search for contents with a created date relative to this value.  "createdCompare" may also be sent to control search behavior. **Since**: 3700.1.0  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `modified` | string | No | Search for contents with a modified date relative to this value.  "modifiedCompare" may also be sent to control search behavior. **Since**: 3700.4.0  |
| `recursive` | boolean | No | Search for child content recursively.  A value of "true" indicates that search results should include all content descendants within the hierarchy of the specified parent.  A value of "false" indicates results should be limited to immediate children only.  Not setting this field defaults to "false" behavior; only including immediate children. **Since**: 3100.2.0  |
| `reviewable` | boolean | No | Search contents by whether they are reviewable or not. **Since**: 3700.15.0  |
| `contentHandler` | string | No | Search for the specific content handler.  Not setting this field will return all content handlers. **Since**: 3400.5.0  |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "created" search parameter.  Supported values: - lessThan - greaterOrEqual Defaults to greaterOrEqual if not specified. **Since**: 3700.1.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `modifiedCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "modified" search parameter.  Supported values: - lessThan - greaterOrEqual Defaults to greaterOrEqual if not specified. **Since**: 3700.4.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course details

**Slug:** `BLACKBOARD_GET_COURSE`

Retrieves detailed information about a specific course in the Blackboard Learn system. This endpoint is used to access course data such as title, description, availability, enrollment information, and other course-specific attributes. It's particularly useful for applications that need to display or process course information outside of the Blackboard Learn interface. The endpoint should be used when detailed information about a single course is required, rather than for bulk operations or listing multiple courses. Note that the exact fields returned may depend on the user's permissions and the course's configuration within Blackboard Learn.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List child courses for a given course

**Slug:** `BLACKBOARD_GET_COURSE_CHILDREN`

Retrieves a list of child courses or sub-courses associated with a specified parent course in the Blackboard Learn platform. This endpoint is useful for exploring the hierarchical structure of courses, such as main courses and their associated sections or modules. It should be used when you need to obtain information about the sub-components of a particular course. The endpoint does not provide detailed information about the child courses; it likely returns a list of basic details such as course IDs and names. It's important to note that this endpoint may not be applicable for courses without any child elements.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>childCourse</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Course Column Logs

**Slug:** `BLACKBOARD_GET_COURSE_COLUMN_LOGS`

Retrieves the log entries for a specific gradebook column within a Blackboard course. This endpoint provides a detailed history of all actions and changes made to the specified gradebook column, including grade modifications, updates to comments, and other relevant activities. It is particularly useful for auditing purposes, allowing educators and administrators to track and review the complete history of a gradebook column. The endpoint should be used when there's a need to investigate grading discrepancies, verify changes, or maintain a record of grading activities for compliance and transparency. Note that this endpoint only returns logs for a single gradebook column; to get a comprehensive view of all gradebook activities, you may need to make multiple calls for different columns.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "id(desc)" Supported fields are: - id - gradebookColumnId - logged **Since**: 3900.71.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `since` | string | No | Filters the fetched gradebook logs entries to only those logged after or on the specified date.  |
| `until` | string | No | Filters the fetched gradebook logs entries to only those logged prior to the specified date.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `user__userId` | string | No | Filters gradebook log entries by the User id from user object. E.g: user.userId=_123_1  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course alignments by id

**Slug:** `BLACKBOARD_GET_COURSE_GOAL_ALIGNMENTS`

Retrieves the course goal alignments for a specified course in Blackboard. This endpoint allows users to fetch detailed information about how course goals are linked to specific learning objectives within a particular course. It is essential for educators and administrators who need to understand or analyze the structure of course objectives and their relationships to broader educational goals. The endpoint should be used when reviewing course design, preparing for accreditation processes, or assessing curriculum coherence. It does not modify any alignments; it only provides a read-only view of the existing structure. The response likely includes a list of goals, associated objectives, and potentially metadata about these alignments.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "id(desc)" Supported fields are: - id - goalId **Since**: 3900.62.00  |
| `type` | string ("Assessment" | "Blog" | "ContentCollectionResource" | "CourseContent" | "Discussion" | "DiscussionThread" | "GradebookColumn" | "Other" | "Rubric" | "RubricRow") | No | Optional search criteria parameter to filter by type. **Since**: 3900.62.00  \| Type      \| Description  \| --------- \| --------- \| \| Blog \| Blog Content Type \| \| CourseContent \| Course Content Type \| \| ContentCollectionResource \| Content Collection Resourse Type \| \| Discussion \| Discussion Content Type \| \| DiscussionThread \| Message/Thread Content Type \| \| Assessment \| Assessment/Question Content Type \| \| GradebookColumn \| Gradebook Column Content Type \| \| RubricRow \| Rubric Row Content Type \| \| Rubric \| Rubric Content Type \| \| Other \| Other Content Type \|   |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `blogId` | string | No | Optional search criteria parameter to filter by blog id. **Since**: 3900.62.00  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `goalId` | string | No | Optional search criteria parameter to filter by goal id. **Since**: 3900.62.00  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `rubricId` | string | No | Optional search criteria parameter to filter by rubric id. **Since**: 3900.62.00  |
| `contentId` | string | No | Optional search criteria parameter to filter by course content id. **Since**: 3900.62.00  |
| `messageId` | string | No | Optional search criteria parameter to filter by message/thread id. **Since**: 3900.62.00  |
| `reference` | string | No | Optional search criteria parameter to filter by reference. **Since**: 3900.62.00  |
| `questionId` | string | No | Optional search criteria parameter to filter by assessment/question id. **Since**: 3900.62.00  |
| `resourceId` | string | No | Optional search criteria parameter to filter by resource id. **Since**: 3900.62.00  |
| `rubricRowId` | string | No | Optional search criteria parameter to filter by rubric row id. **Since**: 3900.62.00  |
| `discussionId` | string | No | Optional search criteria parameter to filter by discussion id. **Since**: 3900.62.00  |
| `gradebookColumnId` | string | No | Optional search criteria parameter to filter by gradebook column id. **Since**: 3900.62.00  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get course gradebook logs

**Slug:** `BLACKBOARD_GET_COURSE_GRADEBOOK_LOGS`

Retrieves the gradebook logs for a specific course in the Blackboard learning management system. This endpoint provides a historical record of all gradebook-related activities and changes within the specified course. It's particularly useful for instructors and administrators who need to audit grade modifications, track changes over time, or investigate discrepancies in student grades. The logs typically include information such as the date and time of changes, the user who made the changes, and the nature of the modifications (e.g., grade updates, column additions, or deletions). This tool should be used when detailed tracking of gradebook activities is required, but it does not provide real-time grade data or allow for grade modifications.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "id(desc)" Supported fields are: - id - gradebookColumnId - logged **Since**: 3900.71.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `since` | string | No | Filters the fetched gradebook logs entries to only those logged after or on the specified date.  |
| `until` | string | No | Filters the fetched gradebook logs entries to only those logged prior to the specified date.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `user__userId` | string | No | Filters gradebook log entries by the User id from user object. E.g: user.userId=_123_1  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get course meeting details

**Slug:** `BLACKBOARD_GET_COURSE_MEETING`

Retrieves detailed information about a specific meeting within a course in the Blackboard learning management system. This endpoint is used to fetch comprehensive data about a scheduled meeting, including its date, time, duration, participants, and any associated resources or links. It's particularly useful for applications that need to display or manage course-related events and schedules. The endpoint requires both the course ID and meeting ID to uniquely identify the requested meeting. It should be used when detailed information about a single meeting is needed, rather than for listing all meetings in a course.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `meetingId` | string | Yes | Meetingid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get course meetings

**Slug:** `BLACKBOARD_GET_COURSE_MEETINGS`

Retrieves a list of meetings associated with a specific course in the Blackboard learning management system. This endpoint is used to fetch details about scheduled meetings, such as virtual classroom sessions, office hours, or other course-related events. It provides educators and students with up-to-date information on upcoming or past meetings for a particular course. The endpoint should be used when you need to display or manage the meeting schedule for a course. It will not provide information about meetings across multiple courses or institution-wide events. The response likely includes meeting titles, dates, times, durations, and possibly attendance information, though the exact details are not specified in the schema.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Sort |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve users from course

**Slug:** `BLACKBOARD_GET_COURSE_MEMBERSHIPS`

Retrieves a list of users enrolled in a specific course within the Blackboard learning management system. This endpoint is used to access information about students, instructors, and other roles associated with a particular course. It's particularly useful for course management, generating class rosters, or analyzing course participation. The endpoint returns user details such as IDs, names, roles, and enrollment statuses, but does not provide access to sensitive information like grades or private user data. Use this when you need an overview of course membership or to verify enrollment status for specific users.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `role` | string | No | Search for memberships with a course role id that matches this value. **Since**: 3500.5.0  |
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "created(desc)" Supported fields are: - created - lastAccessed (Since 3300.9.0) **Since**: 3100.0.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>user</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `created` | string | No | Search for memberships with a created date relative to this value.  "createdCompare" may also be sent to control search behavior. **Since**: 3100.0.0  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `modified` | string | No | Search for memberships with a modified date relative to this value. "modifiedCompare" may also be sent to control search behavior. **Since**: 3800.9.0  |
| `dataSourceId` | string | No | Search for memberships with this dataSourceId.  This may optionally be the data source"s externalId using the syntax "externalId:math101". **Since**: 3100.0.0  |
| `lastAccessed` | string | No | Search for memberships with a last accessed date relative to this value.  "lastAccessedCompare" may also be sent to control search behavior. **Since**: 3300.9.0  |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "created" search parameter.  Supported values: - lessThan - greaterOrEqual Defaults to greaterOrEqual if not specified. **Since**: 3100.0.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `modifiedCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "modified" search parameter. Supported values: - lessThan - greaterOrEqual Defaults to greaterOrEqual if not specified. **Since**: 3800.9.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `lastAccessedCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "lastAccessed" search parameter.  Supported values: - lessThan - greaterOrEqual Defaults to greaterOrEqual if not specified. **Since**: 3300.9.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `availability__available` | string ("Disabled" | "No" | "Yes") | No | Search for users with availability.available properties that contain this value. **Since**: 3100.0.0  \| Type      \| Description  \| --------- \| --------- \| \| Yes \|  \| \| No \|  \| \| Disabled \|   **Since**: 3100.0.0 \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get course resource

**Slug:** `BLACKBOARD_GET_COURSE_RESOURCE`

Retrieves a specific resource from a particular course within the Blackboard learning management system. This endpoint is used to access detailed information about a single course resource, such as a document, assignment, or any other learning material. It should be used when you need to fetch the properties or content of a specific resource within a known course. The endpoint requires both the course ID and resource ID to be specified in the path. It's important to note that this endpoint only retrieves the resource information and does not modify or delete the resource. Access to the resource may be subject to user permissions within the Blackboard system.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `resourceId` | string | Yes | The xythos resource ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                                          \|  \|------------\|--------------------------------------------------\|  \| primary    \| _123_1                                           \|  \| xid        \| xid-123_1-1                                      \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get course resource children

**Slug:** `BLACKBOARD_GET_COURSE_RESOURCE_CHILDREN`

Retrieves a list of child resources associated with a specific resource within a Blackboard course. This endpoint is useful for exploring the hierarchical structure of course materials, such as folders, documents, or assignments nested within a parent resource. Use this when you need to display or process the contents of a particular course resource. The endpoint returns only direct child resources and does not provide details about the parent resource itself or any grandchild resources. It's particularly helpful for building course content navigation or for analyzing the structure of course materials.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `type` | string ("File" | "Folder") | No | Search for Resources whose Type matches the specified value.  Valid values are "File" and "Folder".  \| Type      \| Description  \| --------- \| --------- \| \| File \|  \| \| Folder \|  \|   |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `resourceId` | string | Yes | The xythos resource ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                                          \|  \|------------\|--------------------------------------------------\|  \| primary    \| _123_1                                           \|  \| xid        \| xid-123_1-1                                      \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course role by role id

**Slug:** `BLACKBOARD_GET_COURSE_ROLE`

Retrieves detailed information about a specific course role in Blackboard Learn using its unique identifier. This endpoint is used to fetch the properties, permissions, and settings associated with a particular role within a course. It's essential for understanding the access levels and capabilities assigned to different user types in the Blackboard learning environment. Use this endpoint when you need to review or verify the configuration of a course role, such as instructor, teaching assistant, or student. The returned data can be used for role management, troubleshooting access issues, or ensuring proper permissions are set for different user categories. Note that this endpoint only provides read access to role information and cannot be used to modify role settings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `roleId` | string | Yes | The course role ID.  This may be the primary ID, or the roleId. The suffix ":custom" will be appended to the roleId of a custom course role if that roleId conflicts with the roleId of a system generated course role.  For example, if a custom role roleId is specified as "Student" then the roleId will actually be "Student:custom" since there is already a system generated course role with the roleId of "Student".    \| ID type    \| Examples                                                   \|  \|------------\|------------------------------------------------------------\|  \| primary    \| _123_1                                                     \|  \| roleId     \| roleId:Student, roleId:MyCustomRole, roleId:Student:custom \|   **Since**: 3300.5.0  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch course roles information

**Slug:** `BLACKBOARD_GET_COURSE_ROLES`

Retrieves a list of available course roles in the Blackboard Learn system. This endpoint allows users to fetch all predefined roles that can be assigned to users within courses. It is useful for administrators and developers who need to understand the available role options when managing course memberships or setting up integrations. The endpoint does not create, modify, or delete roles; it only provides read access to the existing role definitions. Use this endpoint when you need to display role options, validate role assignments, or gather information about the roles structure in your Blackboard Learn instance.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "name.family(desc),created" **Since**: 3100.0.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `custom` | boolean | No | Search course roles by whether they are a custom or system generated course role. **Since**: 3300.5.0  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `roleId` | string | No | Search course roles using their roleId"s.  Any course role with a roleId that contains the given string will be returned.  The search is case insensitive. **Since**: 3300.5.0  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List courses

**Slug:** `BLACKBOARD_GET_COURSES`

Retrieves a list of courses from the Blackboard learning management system. This endpoint allows users to fetch information about multiple courses at once, providing an overview of the available courses within the institution's Blackboard environment. It's particularly useful for applications that need to display course catalogs, manage course enrollments, or synchronize course data with external systems. The endpoint returns course-related data, which may include course IDs, names, descriptions, and other relevant metadata. However, it's important to note that the exact details returned for each course are not specified in the given schema and may vary based on system configurations or user permissions. This tool should be used when you need to obtain a broad view of courses in the Blackboard system, such as for course discovery or administrative purposes. It may not provide in-depth details about individual courses, which might require separate, course-specific API calls.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Search for courses with name properties that contain this value. **Since**: 3100.0.0  |
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "name(desc),created" Supported fields are: - courseId - name - externalId - created - modified **Since**: 3400.8.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `termId` | string | No | Search for courses with this termId.  This may optionally be the term"s externalId using the syntax "externalId:spring2015". **Since**: 3100.0.0  |
| `created` | string | No | Search for courses with a created date relative to this value.  "createdCompare" may also be sent to control search behavior. **Since**: 3100.0.0  |
| `courseId` | string | No | Search for courses with courseId properties that contain this value. **Since**: 3100.0.0  |
| `modified` | string | No | Search for courses with a modified date relative to this value.  "modifiedCompare" may also be sent to control search behavior. **Since**: 3500.4.0  |
| `externalId` | string | No | Search for courses with externalId properties that contain this value. **Since**: 3100.0.0  |
| `allowGuests` | boolean | No | Search for courses which are configured to allow/disallow guest access, based on input.  Default: n/a (return courses regardless of guests allowed) **Since**: 3200.3.0  |
| `description` | string | No | Search for courses with description properties that contain this value. **Since**: 3100.0.0  |
| `dataSourceId` | string | No | Search for courses with this dataSourceId.  This may optionally be the data source"s externalId using the syntax "externalId:math101". **Since**: 3100.0.0  |
| `organization` | boolean | No | Search for courses by organization flag.  A value of "true" indicates that search results should be limited to only Organizations.  A value of "false" indicates results should be limited to Courses.  Not setting this field indicates that both Courses and Organizations should be returned. **Since**: 3100.0.0  |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "created" search parameter.  Defaults to greaterOrEqual if not specified. **Since**: 3100.0.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `modifiedCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "modified" search parameter. Defaults to greaterOrEqual if not specified. **Since**: 3500.4.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `availability__available` | string ("Disabled" | "No" | "Term" | "Yes") | No | Search for courses with availability.available properties that contain this value. **Since**: 3000.13.0  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may access the course. \| \| No \| Students may not access the course. \| \| Disabled \| Disabled by the SIS. Students may not access the course.  **Since**: 3100.0.0 \| \| Term \| Availability is inherited from the term settings. Requires a termId be set. \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course content release criteria

**Slug:** `BLACKBOARD_GET_CRITERIA`

Retrieves the criteria associated with a specific adaptive release rule for a particular content item within a Blackboard course. This endpoint allows instructors or administrators to view the conditions that must be met for students to access the content. It's useful for reviewing or auditing adaptive release settings without modifying them. The endpoint doesn't provide information about whether students have met the criteria, only the criteria themselves. Use this when you need to understand or verify the access conditions for specific course content.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "title(desc)" Supported fields are: - id **Since**: 3900.23.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `ruleId` | string | Yes | The rule ID. This should be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get cross list set by course id

**Slug:** `BLACKBOARD_GET_CROSS_LIST_SET`

Retrieves the cross-listed course set for a specified course in Blackboard Learn. This endpoint is used to obtain information about courses that are linked together, typically representing different sections of the same course that share content. It's particularly useful for administrators or instructors managing multiple sections of a course with shared materials. The endpoint returns details about the cross-listed courses, which may include their IDs, names, and other relevant information. Use this when you need to identify or manage courses that are part of a cross-listed set. Note that this endpoint only provides information about the cross-listed courses and does not modify any course data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve user sessions by user id

**Slug:** `BLACKBOARD_GET_CURRENT_ACTIVE_USER_BY_ID`

Retrieves the active or historical sessions for a specific user in the Blackboard Learn platform. This endpoint allows developers to access detailed information about a user's interaction with the system, including login times, duration, and potentially other session-related data. It is particularly useful for tracking user activity, analyzing engagement patterns, or implementing custom analytics for educational institutions. The endpoint should be used when there's a need to monitor or report on individual user activity within the Blackboard environment. It does not provide real-time session management capabilities, such as terminating active sessions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get data source by id

**Slug:** `BLACKBOARD_GET_DATA_SOURCE`

Retrieves detailed information about a specific data source within the Blackboard Learn platform. This endpoint allows you to access metadata and configuration details for a particular data source, which can be crucial for understanding the origin and nature of data within the Blackboard ecosystem. Use this endpoint when you need to verify data source information, troubleshoot data-related issues, or integrate external systems with Blackboard Learn. The tool provides a comprehensive view of a single data source but does not modify or create new data sources. It's particularly useful for administrators and developers working on data management and integration tasks within educational institutions using Blackboard.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `dataSourceId` | string | Yes | The data source ID.  This may be the primary ID, or the secondary ID prefixed with the ID type.   \| ID type    \| Example            \|  \|------------\|--------------------\|  \| primary    \| _123_1             \|  \| externalId \| externalId:math101 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch data source list

**Slug:** `BLACKBOARD_GET_DATA_SOURCES`

Retrieves a list of data sources available in the Blackboard learning management system. This endpoint provides information about various data sources that can be used for integrating external systems, reporting, or data analysis within the Blackboard platform. It should be used when you need to obtain an overview of all available data sources or when preparing to work with specific data sets in Blackboard. The endpoint does not modify any data and is safe for frequent calls, but be aware that the list of data sources may be extensive for large institutions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `externalId` | string | No | The "batchUid" value to use as search criteria. Currently only supports "contains" searches.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve coursediscussion details

**Slug:** `BLACKBOARD_GET_DISCUSSION`

Retrieves detailed information about a specific discussion thread within a course on the Blackboard Learn platform. This endpoint allows users to access the content, metadata, and other relevant details of a discussion, enabling them to view or analyze discussion activities without directly accessing the Blackboard user interface. It should be used when detailed information about a particular discussion is needed, such as for reporting, content management, or integration with other educational tools. The endpoint requires both the course ID and discussion ID to be specified, ensuring precise retrieval of the desired discussion data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `discussionId` | string | Yes | The discussion ID.  This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get discussion messages for course

**Slug:** `BLACKBOARD_GET_DISCUSSION_MESSAGES`

Retrieves all messages within a specific discussion for a given course in the Blackboard learning management system. This endpoint allows users to fetch the entire conversation thread, including all posts and replies, for a particular discussion topic. It's useful for displaying the full context of a discussion, enabling students and instructors to review past interactions, and facilitating asynchronous communication in online learning environments. The endpoint should be used when a comprehensive view of a discussion is needed, such as for moderation, grading, or catching up on missed conversations. It does not provide capabilities for posting new messages or editing existing ones; separate endpoints would be required for those actions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "createdDate(desc),givenName" Supported fields are: - id - discussionId - parentId - threadId - userId - groupId - givenName - familyName - status - body - createdDate - modifiedDate - isRead **Since**: 3900.19.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `edited` | string | No | Search for messages filtering by "edited". If editedCompare is not set, it will perform as "greaterOrEqual" by default. **Since**: 3900.25.0  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `isRead` | boolean | No | Search for read or unread messages. **Since**: 3900.25.0 |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `posted` | string | No | Search for messages filtering by "posted". If postedCompare is not set, it will perform as "greaterOrEqual" by default. **Since**: 3900.25.0  |
| `status` | string ("Deleted" | "Draft" | "Published") | No | Search for messages with status. **Since**: 3900.25.0  \| Type      \| Description  \| --------- \| --------- \| \| Published \| Message is published in the discussion and visible for all users. \| \| Deleted \| Message is shown in the discussion as soft-deleted. \| \| Draft \| Message is stored as a draft and only visible for the author user. \|   |
| `userId` | string | No | Search for messages made by this userId. **Since**: 3900.25.0 |
| `created` | string | No | Search for messages filtering by "created". If createdCompare is not set, it will perform as "greaterOrEqual" by default. **Since**: 3900.25.0  |
| `groupId` | string | No | Search for messages which are associated with this groupId. **Since**: 3900.19.0  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `modified` | string | No | Search for messages filtering by "modified". If modifiedCompare is not set, it will perform as "greaterOrEqual" by default. **Since**: 3900.25.0  |
| `discussionId` | string | Yes | The discussion ID.  This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `editedCompare` | string ("greaterOrEqual" | "lessThan") | No | Operation to be applied to "edited". When not specified, it will perform as "greaterOrEqual" by default if "edited" contains a valid date Must be one of the following: - greaterOrEqual - lessThan **Since**: 3900.25.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `postedCompare` | string ("greaterOrEqual" | "lessThan") | No | Operation to be applied to "posted". When not specified, it will perform as "greaterOrEqual" by default if "posted" contains a valid date Must be one of the following: - greaterOrEqual - lessThan **Since**: 3900.25.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Operation to be applied to "created". When not specified, it will perform as "greaterOrEqual" by default if "created" contains a valid date Must be one of the following: - greaterOrEqual - lessThan **Since**: 3900.25.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `modifiedCompare` | string ("greaterOrEqual" | "lessThan") | No | Operation to be applied to "modified". When not specified, it will perform as "greaterOrEqual" by default if "modified" contains a valid date Must be one of the following: - greaterOrEqual - lessThan **Since**: 3900.25.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get course discussion threads

**Slug:** `BLACKBOARD_GET_DISCUSSIONS`

Retrieves all discussions associated with a specific course in the Blackboard Learning Management System. This endpoint allows developers to access the discussion forums and threads for a particular course, enabling integration of course discussions into external applications or custom dashboards. It's particularly useful for building tools that aggregate or analyze student engagement in course discussions. The endpoint returns a collection of discussion objects, likely including details such as discussion titles, creation dates, and potentially the number of posts or participants. It should be used when you need a comprehensive view of all discussions within a course, but note that it may not include the actual content of individual posts or replies.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "title(desc),available" Supported fields are: - id - title - available - gradable - createdDate - modifiedDate - gradebookColumnId **Since**: 3900.19.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `title` | string | No | Search for forums with title properties that contain this value.  Search is case-insensitive. **Since**: 3900.25.0  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `gradable` | boolean | No | Search for forums which are configured to be gradable or not, based on input. **Since**: 3900.25.0  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve lti domain details by domainid

**Slug:** `BLACKBOARD_GET_DOMAIN_CONFIG`

Retrieves detailed information about a specific LTI (Learning Tools Interoperability) domain within the Blackboard Learn system. This endpoint is used to fetch configuration details, status, and other relevant information for a particular LTI domain integration. It's particularly useful for administrators and developers who need to manage or troubleshoot LTI tool integrations with Blackboard. The endpoint should be used when specific information about an LTI domain is required, such as verifying its configuration or checking its current status. It will not modify any domain settings; it's a read-only operation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `domainId` | string | Yes | Domainid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve lti domain listings

**Slug:** `BLACKBOARD_GET_DOMAIN_CONFIGS`

Retrieves a list of LTI (Learning Tools Interoperability) domains registered with the Blackboard Learn platform. This endpoint is used to obtain information about the external tools and platforms that have been integrated with Blackboard using the LTI specification. It provides essential data for managing and troubleshooting LTI integrations within the Blackboard Learn environment. The returned list of domains can be used to verify the correct configuration of LTI tools, ensure security by checking authorized domains, and audit the current integrations. This endpoint is particularly useful for administrators and developers working on LTI integrations with Blackboard Learn.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get course content attachment

**Slug:** `BLACKBOARD_GET_FILE_ATTACHMENT`

Retrieves detailed information about a specific attachment associated with a particular content item within a Blackboard course. This endpoint allows users to access metadata and potentially the content of an attachment, such as a document, image, or other file types, that has been added to course materials. It should be used when detailed information about a specific attachment is needed, such as for displaying file properties, preparing download links, or verifying attachment availability. The endpoint does not modify the attachment or course content; it is solely for retrieval purposes. Note that this endpoint requires precise identification of the course, content item, and attachment, making it useful for targeted access but not for broad queries or searches across multiple courses or content items.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |
| `attachmentId` | string | Yes | Attachmentid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get course content attachment

**Slug:** `BLACKBOARD_GET_FILE_ATTACHMENTS`

Retrieves the attachments associated with a specific content item within a Blackboard course. This endpoint allows users to access files, documents, or other resources that have been attached to a particular piece of course content. It's useful for applications that need to display or process course materials, such as displaying lecture slides, assignment instructions, or supplementary reading materials. The endpoint should be used when there's a need to access or download attachments related to a specific content item in a course. It will not provide the actual content itself, only the attachments linked to that content. This tool is particularly valuable for building integrations that enhance the learning experience by providing easy access to course resources.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course message folders

**Slug:** `BLACKBOARD_GET_FOLDERS`

Retrieves a list of message folders for a specific course in the Blackboard learning management system. This endpoint allows users to access the organizational structure of course messages, providing an overview of how communication is categorized within the course. It should be used when needing to understand the message folder hierarchy or before performing operations on specific message folders. The endpoint returns only the folder structure and does not include the actual messages within these folders. It's particularly useful for applications that need to display or manage course communication organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get goal alignments by goalid

**Slug:** `BLACKBOARD_GET_GOAL_ALIGNMENTS`

Retrieves the alignments associated with a specific educational goal in the Blackboard learning management system. This endpoint allows users to fetch the learning activities or assessments that are linked to a particular goal, enabling educators and administrators to understand how curriculum elements are mapped to educational objectives. It should be used when there's a need to review or analyze the alignment of course content with specific learning outcomes. The endpoint provides a comprehensive view of how a goal is integrated into the curriculum but does not modify any alignment data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "id(desc)" Supported fields are: - id - goalId **Since**: 3900.62.00  |
| `type` | string ("Assessment" | "Blog" | "ContentCollectionResource" | "CourseContent" | "Discussion" | "DiscussionThread" | "GradebookColumn" | "Other" | "Rubric" | "RubricRow") | No | Optional search criteria parameter to filter by type. **Since**: 3900.62.00  \| Type      \| Description  \| --------- \| --------- \| \| Blog \| Blog Content Type \| \| CourseContent \| Course Content Type \| \| ContentCollectionResource \| Content Collection Resourse Type \| \| Discussion \| Discussion Content Type \| \| DiscussionThread \| Message/Thread Content Type \| \| Assessment \| Assessment/Question Content Type \| \| GradebookColumn \| Gradebook Column Content Type \| \| RubricRow \| Rubric Row Content Type \| \| Rubric \| Rubric Content Type \| \| Other \| Other Content Type \|   |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `blogId` | string | No | Optional search criteria parameter to filter by blog id. **Since**: 3900.62.00  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `goalId` | string | Yes | The Goal ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:Goal_1                     \|    |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | No | Optional search criteria parameter to filter by course id. **Since**: 3900.62.00  |
| `rubricId` | string | No | Optional search criteria parameter to filter by rubric id. **Since**: 3900.62.00  |
| `contentId` | string | No | Optional search criteria parameter to filter by course content id. **Since**: 3900.62.00  |
| `messageId` | string | No | Optional search criteria parameter to filter by message/thread id. **Since**: 3900.62.00  |
| `reference` | string | No | Optional search criteria parameter to filter by reference. **Since**: 3900.62.00  |
| `questionId` | string | No | Optional search criteria parameter to filter by assessment/question id. **Since**: 3900.62.00  |
| `resourceId` | string | No | Optional search criteria parameter to filter by resource id. **Since**: 3900.62.00  |
| `rubricRowId` | string | No | Optional search criteria parameter to filter by rubric row id. **Since**: 3900.62.00  |
| `discussionId` | string | No | Optional search criteria parameter to filter by discussion id. **Since**: 3900.62.00  |
| `gradebookColumnId` | string | No | Optional search criteria parameter to filter by gradebook column id. **Since**: 3900.62.00  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve goal by id

**Slug:** `BLACKBOARD_GET_GOAL_BY_ID`

Retrieves detailed information about a specific learning goal within the Blackboard Learn platform. This endpoint allows educators and administrators to access comprehensive data about an individual goal, including its description, associated courses, and progress metrics. Use this when you need to review or analyze a particular learning objective. The tool returns only information about the requested goal and does not provide an overview of all goals or modify any goal data. It's particularly useful for tracking student progress, curriculum planning, and ensuring alignment with educational standards.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>category</li><li>goalSet</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `goalId` | string | Yes | The Goal ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:Goal_1                     \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get learning goals

**Slug:** `BLACKBOARD_GET_GOALS`

The GetGoals endpoint retrieves a list of educational goals within the Blackboard learning management system. It provides access to goal information that can be used to track student progress, align curriculum with objectives, or generate reports on learning outcomes. This endpoint is particularly useful for administrators, instructors, or integrated systems that need to assess or manage educational targets across courses or programs. The endpoint returns all available goals without requiring specific parameters, making it suitable for general goal overviews or as a first step in more detailed goal analysis. However, it may not provide granular filtering options in this version, so additional processing might be needed for specific use cases. While the endpoint is labeled as 'public', users should verify access rights as some implementations may still require authentication or have usage limitations to protect sensitive educational data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "title(desc)" Supported fields are: - id - title **Since**: 3900.53.0  |
| `type` | string | No | Optional search criteria parameter to filter by goal type. **Since**: 3900.53.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `goalSetId` | string | No | Optional search criteria parameter to filter by goal set id. **Since**: 3900.53.0  |
| `categoryId` | string | No | Optional search criteria parameter to filter by category id. **Since**: 3900.53.0  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve goal set by id

**Slug:** `BLACKBOARD_GET_GOAL_SET_BY_ID`

Retrieves detailed information about a specific goal set within the Blackboard Learning Management System. This endpoint allows educators and administrators to access comprehensive data about a particular collection of educational objectives or targets. It should be used when there's a need to review, analyze, or integrate goal set information into other educational processes or reports. The endpoint provides a snapshot of the goal set's current state and structure but does not allow for modifications. It's particularly useful for tracking progress, aligning curricula, or generating reports on educational objectives across courses or programs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `goalSetId` | string | Yes | The Goal Set ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get goal set category by id

**Slug:** `BLACKBOARD_GET_GOAL_SET_CATEGORY_BY_ID`

Retrieves detailed information about a specific goal category within a designated goal set in the Blackboard Learn platform. This endpoint allows users to access the properties and metadata of a particular goal category, which is useful for understanding the structure and organization of goals within a course or program. It should be used when detailed information about a specific goal category is needed, such as when displaying category details or preparing for goal management tasks. The endpoint does not modify any data and is intended for read-only operations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `goalSetId` | string | Yes | The Goal Set ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `goalSetCategoryId` | string | Yes | The Goal Set Category ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve goal sets

**Slug:** `BLACKBOARD_GET_GOAL_SETS`

Retrieves a list of goal sets from the Blackboard Learn platform. This endpoint allows users to fetch collections of goals, which are likely used for organizing and categorizing educational objectives within the system. It's part of the public API, making it suitable for integration with external applications or systems that need to access goal-related data. Use this endpoint when you need to obtain an overview of the goal sets available in the Blackboard environment. It's particularly useful for applications that manage or display educational objectives, track student progress, or provide insights into the structure of learning goals within an institution. Note that this endpoint returns goal sets, not individual goals. It may not provide detailed information about the specific goals within each set. Additionally, as it's a GET request without parameters, it might return all available goal sets, which could be a large dataset for extensive Blackboard implementations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "name(desc)" Supported fields are: - id **Since**: 3900.53.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch goal set category goals

**Slug:** `BLACKBOARD_GET_GOALS_FROM_SET_AND_CATEGORY`

This endpoint retrieves a list of goals associated with a specific category within a goal set in the Blackboard learning management system. It allows administrators and educators to access and review the goals that have been set for a particular category, enabling them to align course objectives with institutional goals. The endpoint is useful for goal management, curriculum planning, and ensuring educational alignment across courses and programs. It should be used when there's a need to review, assess, or report on the goals within a specific category of a goal set. Note that this endpoint only provides read access to the goals and does not allow for creation, modification, or deletion of goals.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "title(desc)" Supported fields are: - id - title **Since**: 3900.53.0  |
| `type` | string | No | Optional search criteria parameter to filter by goal type. **Since**: 3900.53.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `goalSetId` | string | Yes | The Goal Set ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `recursive` | boolean | No | Search for child goals recursively. A value of "true" return all top-level goals and any descendant goals. A value of "false", only top-level goals are returned and this is the default behavior. **Since**: 3900.53.0  |
| `categoryId` | string | No | Optional search criteria parameter to filter by category id. **Since**: 3900.53.0  |
| `goalSetCategoryId` | string | Yes | The Goal Set Category ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course gradebook categories

**Slug:** `BLACKBOARD_GET_GRADEBOOK_CATEGORIES`

Retrieves the list of gradebook categories for a specific course in the Blackboard learning management system. This endpoint allows users to fetch the organizational structure of a course's gradebook, including the categories used to group different types of assessments and assignments. It is particularly useful for understanding how grades are organized within a course, which can aid in grade calculations, reporting, and overall course management. The endpoint should be used when there's a need to view or analyze the grading structure of a particular course, but it will not provide actual grade data for students.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve gradebook category by id

**Slug:** `BLACKBOARD_GET_GRADEBOOK_CATEGORY`

Retrieves detailed information about a specific gradebook category within a course in the Blackboard learning management system. This endpoint allows users to access important data about how grades are organized and weighted within a course, which is crucial for understanding the grading structure. It should be used when needing to review or verify the setup of a particular grading category, such as its name, weight in the overall grade, and potentially associated grade items. This tool is particularly useful for instructors, teaching assistants, or administrators who need to audit or manage the grading system for a course. Note that this endpoint only provides information about the category itself and may not include the actual grades or student data associated with it.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `categoryId` | string | Yes | the ID of the category to return |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve gradebook column by course and column ids

**Slug:** `BLACKBOARD_GET_GRADE_COLUMN`

Retrieves detailed information about a specific gradebook column within a particular course in the Blackboard learning management system. This endpoint allows users to access the properties and settings of an individual grading column, such as its name, description, points possible, and grading type. It should be used when detailed information about a specific grading component is needed, for example, when reviewing or auditing the grading structure of a course. The endpoint provides read-only access and does not allow modification of the column data. It's particularly useful for instructors, teaching assistants, or administrators who need to verify or analyze the setup of their course gradebook without making changes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>rubricAssociations</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List course gradebook columns

**Slug:** `BLACKBOARD_GET_GRADE_COLUMNS`

Retrieves a list of gradebook columns for a specified course in the Blackboard Learn environment. This endpoint allows users to access detailed information about the structure and components of a course's gradebook. It should be used when there's a need to view or analyze the grading schema for a particular course, such as when integrating external grading tools or performing academic audits. The endpoint provides a comprehensive overview of how grades are organized within the course but does not include actual student grades or scores. It's particularly useful for understanding the weighting and categorization of different assignments and assessments within the course.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The "name" value to use as search criteria. Currently only supports "contains" searches. **Since**: 3900.11.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>rubricAssociations</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `created` | string | No | Search for grade columns with a created date relative to this value. "createdCompare" may also be sent to control search behavior. **Since**: 3900.76.0  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `modified` | string | No | Search for grade columns with a modified date relative to this value. "modifiedCompare" may also be sent to control search behavior. **Since**: 3900.76.0  |
| `contentId` | string | No | Search for grade columns associated with this content item. **Since**: 3000.11.0  |
| `displayName` | string | No | The "displayName" value to use as search criteria. Currently only supports "contains" searches. **Since**: 3300.2.0  |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "created" search parameter.  Supported values: - lessThan - greaterOrEqual Defaults to greaterOrEqual if not specified. **Since**: 3900.76.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `modifiedCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "modified" search parameter.  Supported values: - lessThan - greaterOrEqual Defaults to greaterOrEqual if not specified. **Since**: 3900.76.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `gradebookCategoryId` | array | No | Search for grade columns associated with the "gradebookCategoryId". comma-delimited list of the gradebook category ids. **Since**: 3900.11.0  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course grade notation

**Slug:** `BLACKBOARD_GET_GRADE_NOTATION`

Retrieves detailed information about a specific grade notation within a course's gradebook in the Blackboard Learning Management System. This endpoint allows users to fetch individual grade notation data, which may include the notation symbol, description, and associated grading rules. It should be used when precise information about a particular grade notation is needed, such as during grade reviews or when updating grading policies. The endpoint does not modify any data and is suitable for read-only operations. Note that it only returns data for a single grade notation; to retrieve multiple notations, separate API calls would be required for each.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `gradeNotationId` | string | Yes | Gradenotationid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List grade notations for course

**Slug:** `BLACKBOARD_GET_GRADE_NOTATIONS`

Retrieves the grade notations for a specific course's gradebook in the Blackboard learning management system. Grade notations are symbols or short texts used to represent specific grading statuses or conditions (e.g., 'A', 'B+', 'Incomplete', 'Withdrawn'). This endpoint should be used when you need to fetch the complete list of grade notations configured for a particular course, which can be useful for understanding the grading scheme or for integrating with other systems. It does not modify any data and is typically used for reporting or display purposes. Note that this endpoint only provides the notation definitions and does not return actual grades assigned to students.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get gradebook schema for course

**Slug:** `BLACKBOARD_GET_GRADE_SCHEMAS`

Retrieves the gradebook schemas for a specific course in the Blackboard learning management system. This endpoint allows developers to access the structure and format of the gradebook data for a given course, which is crucial for understanding how grades are organized and stored within Blackboard. It can be used when integrating external grading systems, developing custom grade reporting tools, or when needing to understand the grading structure of a particular course. The endpoint returns the schemas without actual grade data, focusing solely on the structural aspects of the gradebook.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get gradebook periods by course and period id

**Slug:** `BLACKBOARD_GET_GRADING_PERIOD`

Retrieves detailed information about a specific gradebook period within a course in the Blackboard learning management system. This endpoint allows users to access important data related to a particular grading period, such as its start and end dates, associated assignments, and any specific grading policies. It's particularly useful for instructors or administrators who need to review or manage the structure of their course's grading periods. The endpoint should be used when detailed information about a single gradebook period is required, rather than a list of all periods. Note that this endpoint does not modify any data; it's for retrieval purposes only.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `periodId` | string | Yes | Periodid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course gradebook periods

**Slug:** `BLACKBOARD_GET_GRADING_PERIODS`

Retrieves the gradebook periods for a specified course in the Blackboard learning management system. This endpoint allows users to fetch information about the temporal structure of grade entries and assessments within a particular course. It is useful for understanding how the course's grading is organized over time, which can be essential for course management, grade reporting, and student performance tracking. The endpoint should be used when there's a need to review or analyze the grading structure of a specific course, particularly for administrative or reporting purposes. It does not modify any data and is meant for read-only operations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties,  with an optional "(desc)" or "(asc)" suffix to request an ascending or descending sort for that property. e.g. "title(desc),description" Supported fields are: - id - title - position - dateMode - description **Since**: 3300.2.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course group by ids

**Slug:** `BLACKBOARD_GET_GROUP`

Retrieves detailed information about a specific group within a particular course in the Blackboard learning management system. This endpoint is used to access group data, which may include the group's name, description, membership, and other relevant details. It's particularly useful for instructors or administrators who need to manage or review group activities within a course. The endpoint should be used when specific group information is required, such as for displaying group details, verifying group settings, or preparing reports on group-based activities. It does not modify any data and is intended for read-only operations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve user from course group

**Slug:** `BLACKBOARD_GET_GROUP_MEMBERSHIP`

Retrieves detailed information about a specific user's membership or role within a group in a particular course on the Blackboard platform. This endpoint is used to access user-specific data in the context of their group participation within a course. It provides information such as the user's role in the group, join date, or any custom attributes related to their group membership. This endpoint should be used when you need to verify a user's status within a group or gather details about their group-related activities in a specific course. It does not modify any data and is purely for information retrieval purposes. Note that this endpoint only returns data for a single user in a single group and course context; it cannot be used to fetch multiple users or compare across different groups or courses simultaneously.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List course group users

**Slug:** `BLACKBOARD_GET_GROUP_MEMBERSHIPS`

Retrieves a list of users belonging to a specific group within a Blackboard Learn course. This endpoint is used to access user information for group-based activities, collaborative assignments, or administrative purposes. It provides details about the members of a particular group, which can be useful for instructors or administrators managing course activities. The endpoint should be used when you need to obtain user data for a specific group context, rather than for the entire course. It's important to note that this endpoint only provides user information within the scope of the specified group and course, and does not offer details about user activities or performance outside of this context.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>user</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch course groups by id

**Slug:** `BLACKBOARD_GET_GROUPS`

Retrieves a list of all groups associated with a specific course in the Blackboard learning management system. This endpoint is useful for obtaining information about the various student groups, project teams, or study circles within a particular course. It should be used when you need to access group data for course management, reporting, or to facilitate group-based activities and assignments. The endpoint provides a comprehensive view of the group structure within a course but does not modify any group information. Note that this endpoint only returns group data and does not include detailed information about individual group members or their activities.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The group "name" value to use as search criteria.  See also: nameCompare. **Since**: 3900.10.0  |
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "name(desc)" Supported fields are: - name - externalId **Since**: 3100.4.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `created` | string | No | Search for groups with created date relative to this value. "createdCompare" may also be sent to control search behavior. **Since**: 3800.8.0  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `modified` | string | No | Search for groups with modified date relative to this value. "modifiedCompare" may also be sent to control search behavior. **Since**: 3800.8.0  |
| `inGroupSet` | boolean | No | Indicates whether only groups in a GroupSet (or groups NOT in a GroupSet) should be included **Since**: 3900.10.0  |
| `nameCompare` | string ("contains" | "equals" | "notContains" | "notEquals" | "startsWith") | No | Used alongside the "name" search parameter. Defaults to StartsWith if not specified. **Since**: 3900.10.0  \| Type      \| Description  \| --------- \| --------- \| \| equals \|  \| \| notEquals \|  \| \| contains \|  \| \| notContains \|  \| \| startsWith \|  \|   |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "created" search parameter. Defaults to greaterOrEqual if not specified. **Since**: 3800.8.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `modifiedCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "modified" search parameter. Defaults to greaterOrEqual if not specified. **Since**: 3800.8.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `nonEmptyGroupSets` | boolean | No | Search group sets whose student count is greater than 0. **Since**: 3900.71.0  |
| `onlyAvailableGroupSets` | boolean | No | Search only group sets that are available. **Since**: 3900.71.0 |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course group information

**Slug:** `BLACKBOARD_GET_GROUP_SET`

Retrieves detailed information about a specific group set within a course in the Blackboard learning management system. This endpoint allows users to fetch the properties and configuration of a particular group set, which may include details such as the group set name, description, availability, and associated groups. It is useful for obtaining up-to-date information about how groups are organized within a course, which can be valuable for course management and student collaboration purposes. This endpoint should be used when detailed information about a specific group set is needed, rather than a list of all group sets in a course. It does not modify the group set or its associated groups; it only provides read access to the existing data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List course group sets

**Slug:** `BLACKBOARD_GET_GROUP_SET_CHILDREN`

Retrieves a list of groups within a specific group set for a given course in the Blackboard learning management system. This endpoint allows educators and administrators to access detailed information about the groups created within a particular group set, facilitating management of student collaborations and assignments. It should be used when there's a need to view or analyze the structure of groups within a course, such as for attendance tracking, assignment distribution, or organizing collaborative activities. This endpoint is particularly useful for applications that need to synchronize group data with external systems or generate reports on course organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The group "name" value to use as search criteria.  See also: nameCompare. **Since**: 3900.10.0  |
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "name(desc)" Supported fields are: - name - externalId **Since**: 3100.4.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `created` | string | No | Search for groups with created date relative to this value. "createdCompare" may also be sent to control search behavior. **Since**: 3800.8.0  |
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `modified` | string | No | Search for groups with modified date relative to this value. "modifiedCompare" may also be sent to control search behavior. **Since**: 3800.8.0  |
| `nameCompare` | string ("contains" | "equals" | "notContains" | "notEquals" | "startsWith") | No | Used alongside the "name" search parameter. Defaults to StartsWith if not specified. **Since**: 3900.10.0  \| Type      \| Description  \| --------- \| --------- \| \| equals \|  \| \| notEquals \|  \| \| contains \|  \| \| notContains \|  \| \| startsWith \|  \|   |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "created" search parameter. Defaults to greaterOrEqual if not specified. **Since**: 3800.8.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `modifiedCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "modified" search parameter. Defaults to greaterOrEqual if not specified. **Since**: 3800.8.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `nonEmptyGroupSets` | boolean | No | Search group sets whose student count is greater than 0. **Since**: 3900.71.0  |
| `onlyAvailableGroupSets` | boolean | No | Search only group sets that are available. **Since**: 3900.71.0 |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course group sets

**Slug:** `BLACKBOARD_GET_GROUP_SETS`

Retrieves all group sets associated with a specific course in the Blackboard learning management system. Group sets are collections of groups within a course that can be used for various collaborative activities, such as group projects, discussions, or assignments. This endpoint should be used when you need to obtain an overview of the group structure within a course, such as when preparing for group assignments or managing course organization. It provides a list of group sets, but does not include detailed information about individual groups within each set. This endpoint is particularly useful for instructors or administrators who need to manage or review the group organization of a course.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The group "name" value to use as search criteria.  See also: nameCompare. **Since**: 3900.10.0  |
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "name(desc)" Supported fields are: - name - externalId **Since**: 3100.4.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `created` | string | No | Search for groups with created date relative to this value. "createdCompare" may also be sent to control search behavior. **Since**: 3800.8.0  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `modified` | string | No | Search for groups with modified date relative to this value. "modifiedCompare" may also be sent to control search behavior. **Since**: 3800.8.0  |
| `nameCompare` | string ("contains" | "equals" | "notContains" | "notEquals" | "startsWith") | No | Used alongside the "name" search parameter. Defaults to StartsWith if not specified. **Since**: 3900.10.0  \| Type      \| Description  \| --------- \| --------- \| \| equals \|  \| \| notEquals \|  \| \| contains \|  \| \| notContains \|  \| \| startsWith \|  \|   |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "created" search parameter. Defaults to greaterOrEqual if not specified. **Since**: 3800.8.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `modifiedCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "modified" search parameter. Defaults to greaterOrEqual if not specified. **Since**: 3800.8.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `nonEmptyGroupSets` | boolean | No | Search group sets whose student count is greater than 0. **Since**: 3900.71.0  |
| `onlyAvailableGroupSets` | boolean | No | Search only group sets that are available. **Since**: 3900.71.0 |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get system info

**Slug:** `BLACKBOARD_GET_INFO`

Retrieves system information about the Blackboard Learn platform. This endpoint provides essential metadata about the current state of the Blackboard system, which can include details such as the platform version, configuration settings, and operational status. It is particularly useful for administrators, developers, and integration partners who need to understand the system's capabilities, ensure compatibility, or troubleshoot issues. The endpoint should be used when up-to-date information about the Blackboard system is required, such as during initial setup, maintenance, or when developing integrations. It's important to note that this endpoint likely provides high-level system information and may not include sensitive or user-specific data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieves institution role by id

**Slug:** `BLACKBOARD_GET_INSTITUTION_ROLE`

Retrieves detailed information about a specific institutional role in the Blackboard learning management system. This endpoint should be used when you need to access the properties, permissions, or settings associated with a particular role within an educational institution. It provides valuable data for role management, user access control, and system administration tasks. The endpoint is particularly useful for administrators or developers who need to verify role configurations or integrate role-based access control into their applications. Note that this endpoint only retrieves role information and cannot be used to modify or create new roles.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `roleId` | string | Yes | The institution role ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| roleId     \| roleId:STUDENT                        \|   **Since**: 3300.5.0  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List institution roles

**Slug:** `BLACKBOARD_GET_INSTITUTION_ROLES`

Retrieves a list of all institution roles defined within the Blackboard Learn environment. This endpoint is crucial for administrators and developers who need to understand and manage the various roles available in their institution's Blackboard system. It provides a comprehensive overview of the role structure, which is essential for user management, access control, and permission assignment across the platform. The endpoint should be used when setting up new user accounts, auditing existing roles, or integrating role-based access control in external applications. Note that this endpoint only retrieves role information and does not allow for creating, modifying, or deleting roles.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "roleId(desc)" Supported fields are: - roleId - custom **Since**: 3300.4.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `custom` | boolean | No | Search for institution roles by custom flag.  A value of "true" indicates that search results should be limited to only custom roles.  A value of "false" indicates results should be limited to built-in roles.  Not setting this field indicates that all institution roles should be returned. **Since**: 3300.4.0  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `roleId` | string | No | Search for institution roles with roleId properties that contain this value. **Since**: 3300.4.0  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve loginas sessions

**Slug:** `BLACKBOARD_GET_LOGIN_AS_SESSIONS`

Retrieves active login sessions for users in the Blackboard learning management system. This endpoint is used to monitor and manage current user sessions across the platform. It provides a list of all ongoing login sessions, which can be crucial for system administrators to track user activity, troubleshoot access issues, or enforce security policies. The tool should be used when there's a need to audit active user sessions or investigate potential unauthorized access. It does not provide historical session data or allow for direct session manipulation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | The column(s) to sort by. Format is: &lt;RestVO.propertyName&gt;(ASC&#124;DESC)... e.g. "title(DESC),createdDate(DESC)"  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get user course by id

**Slug:** `BLACKBOARD_GET_MEMBERSHIP`

Retrieves detailed information about a specific user within a particular course in the Blackboard learning management system. This endpoint is used to fetch user-specific data in the context of a given course, which may include enrollment status, role in the course, progress, or other relevant details. It should be used when you need to access or verify a user's information or status within a specific course. This endpoint is particularly useful for generating reports, checking user progress, or managing course-specific user data. Note that it only provides information for a single user-course combination and does not return data about the user across multiple courses or course-wide user lists.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>user</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get courses for category

**Slug:** `BLACKBOARD_GET_MEMBERSHIPS`

Retrieves a list of courses associated with a specific category in the Blackboard catalog. This endpoint allows users to fetch course information based on the category type and category ID, providing a way to browse or search for courses within a particular organizational structure. It's useful for applications that need to display course offerings for a given department, subject area, or other categorical groupings. The endpoint should be used when you need to present users with a filtered view of courses or when populating course selection interfaces tied to specific categories in the Blackboard system.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>course</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `categoryId` | string | Yes | Categoryid |
| `categoryType` | string ("Course" | "Organization") | Yes | Categorytype |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve participants of course message

**Slug:** `BLACKBOARD_GET_MESSAGE_PARTICIPANTS`

Retrieves a list of participants for a specific message within a Blackboard course. This endpoint allows users to access information about who is involved in a particular course message, which can be useful for tracking student engagement, managing communication, or analyzing participation patterns. It should be used when you need to know who has access to or has interacted with a specific message in a course. The endpoint does not provide the content of the message or detailed information about the participants beyond their identification within the system.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "PARTICIPATION_TYPE(desc),start" Supported fields are: - participationType **Since**: 3900.2.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>user</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `messageId` | string | Yes | Messageid |
| `participationType` | string | No | Search the participation type **Since**: 3800.20.0 |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve discussion message reply

**Slug:** `BLACKBOARD_GET_MESSAGE_REPLIES`

Retrieves all replies to a specific message within a discussion thread of a course in the Blackboard learning management system. This endpoint allows users to access the responses and interactions related to a particular message in a course discussion. It is useful for viewing the conversation thread, monitoring student engagement, or gathering information about a specific topic within the course discussion. The endpoint should be used when there's a need to review or analyze the replies to a particular message, such as for grading participation or facilitating further discussion. It does not provide information about other messages in the discussion or allow for creating or modifying replies; it is strictly for retrieving existing replies to the specified message.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "createdDate(desc),givenName" Supported fields are: - id - discussionId - parentId - threadId - userId - groupId - givenName - familyName - status - body - createdDate - modifiedDate - isRead **Since**: 3900.19.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `edited` | string | No | Search for messages filtering by "edited". If editedCompare is not set, it will perform as "greaterOrEqual" by default. **Since**: 3900.25.0  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `isRead` | boolean | No | Search for read or unread messages. **Since**: 3900.25.0 |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `posted` | string | No | Search for messages filtering by "posted". If postedCompare is not set, it will perform as "greaterOrEqual" by default. **Since**: 3900.25.0  |
| `status` | string ("Deleted" | "Draft" | "Published") | No | Search for messages with status. **Since**: 3900.25.0  \| Type      \| Description  \| --------- \| --------- \| \| Published \| Message is published in the discussion and visible for all users. \| \| Deleted \| Message is shown in the discussion as soft-deleted. \| \| Draft \| Message is stored as a draft and only visible for the author user. \|   |
| `userId` | string | No | Search for messages made by this userId. **Since**: 3900.25.0 |
| `created` | string | No | Search for messages filtering by "created". If createdCompare is not set, it will perform as "greaterOrEqual" by default. **Since**: 3900.25.0  |
| `groupId` | string | No | Search for messages which are associated with this groupId. **Since**: 3900.19.0  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `modified` | string | No | Search for messages filtering by "modified". If modifiedCompare is not set, it will perform as "greaterOrEqual" by default. **Since**: 3900.25.0  |
| `messageId` | string | Yes | The message ID.  This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `discussionId` | string | Yes | The discussion ID.  This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `editedCompare` | string ("greaterOrEqual" | "lessThan") | No | Operation to be applied to "edited". When not specified, it will perform as "greaterOrEqual" by default if "edited" contains a valid date Must be one of the following: - greaterOrEqual - lessThan **Since**: 3900.25.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `postedCompare` | string ("greaterOrEqual" | "lessThan") | No | Operation to be applied to "posted". When not specified, it will perform as "greaterOrEqual" by default if "posted" contains a valid date Must be one of the following: - greaterOrEqual - lessThan **Since**: 3900.25.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Operation to be applied to "created". When not specified, it will perform as "greaterOrEqual" by default if "created" contains a valid date Must be one of the following: - greaterOrEqual - lessThan **Since**: 3900.25.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `modifiedCompare` | string ("greaterOrEqual" | "lessThan") | No | Operation to be applied to "modified". When not specified, it will perform as "greaterOrEqual" by default if "modified" contains a valid date Must be one of the following: - greaterOrEqual - lessThan **Since**: 3900.25.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch messages for course id

**Slug:** `BLACKBOARD_GET_MESSAGES`

Retrieves all messages associated with a specific course in the Blackboard learning management system. This endpoint is used to access course-related communication, announcements, and notifications. It provides a comprehensive view of all messages within the context of a particular course, which can include instructor announcements, student discussions, and system notifications. This tool should be used when there's a need to gather all communication related to a specific course, such as for auditing purposes or to provide a complete message history to students or instructors. It does not allow for filtering or searching messages; all messages for the specified course are returned.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "isRead(desc),start" Supported fields are: - isRead - postedDate **Since**: 3900.2.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>sender</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `folderName` | string | No | Specifies the folder name of the custom folder |
| `folderType` | string ("Custom" | "Delete" | "Inbox" | "Sent") | No | Specifies the folder type, The default type is inbox  \| Type      \| Description  \| --------- \| --------- \| \| Inbox \|  \| \| Sent \|  \| \| Delete \|  \| \| Custom \|  \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get hierarchy node by node id

**Slug:** `BLACKBOARD_GET_NODE`

Retrieves detailed information about a specific node within the institutional hierarchy of Blackboard. This endpoint allows users to fetch data about a particular component or entity in the educational institution's structure. It should be used when specific information about a node, such as its attributes, relationships, or metadata, is needed. The endpoint is useful for applications that require navigation or display of the institutional hierarchy, or for integrations that need to synchronize node data with external systems. Note that this endpoint only provides information for a single node; to retrieve the entire hierarchy or multiple nodes, separate API calls may be necessary.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `nodeId` | string | Yes | The node ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|      |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve admin info by nodeid and userid

**Slug:** `BLACKBOARD_GET_NODE_ADMIN`

Retrieves the administrative status of a specific user for a particular node within the Blackboard institutional hierarchy. This endpoint allows you to check whether a user has administrative privileges for a given organizational unit, such as a department or course. Use this endpoint when you need to verify a user's administrative role or permissions within a specific part of the institution's structure. The endpoint provides information about the user's admin status but does not modify any permissions. It's particularly useful for access control, auditing, or displaying user roles in management interfaces.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>user</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `nodeId` | string | Yes | The node ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|      |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve node admins

**Slug:** `BLACKBOARD_GET_NODE_ADMINS`

Retrieves the list of administrators associated with a specific node in the Blackboard institutional hierarchy. This endpoint is used to fetch administrative information for a particular organizational unit, such as a department, school, or program within an educational institution. It provides insights into the management structure and helps in understanding who has administrative access to various parts of the institutional hierarchy. This tool is particularly useful for system administrators, IT staff, or institutional managers who need to review or manage administrative roles within the Blackboard system.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "title(desc)" Supported fields are: - userId **Since**: 3900.37.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>user</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `nodeId` | string | Yes | The node ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|      |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List child nodes by node id

**Slug:** `BLACKBOARD_GET_NODE_CHILDREN`

Retrieves the immediate child nodes of a specified parent node in the Blackboard Learn Institutional Hierarchy. This endpoint is used to navigate and explore the hierarchical structure of an educational institution, allowing administrators and authorized users to view the subordinate entities (such as departments, programs, or courses) under a given node. It's particularly useful for building user interfaces that display the institutional structure or for programmatically traversing the hierarchy. The endpoint returns only direct children and does not provide information about deeper levels of the hierarchy in a single call.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `nodeId` | string | Yes | The node ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|      |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `recursive` | boolean | No | Search Institutional Hierarchy Nodes recursively. If true, returns all descendant nodes of the specified Node. If false, only immediate children are returned (defualt: false) **Since**: 3800.14.0  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve courses for institutional node

**Slug:** `BLACKBOARD_GET_NODE_COURSE_ASSOCIATIONS`

Retrieves a list of courses associated with a specific node in the institutional hierarchy of Blackboard. This endpoint is used to fetch all courses linked to a particular organizational unit (such as a department, faculty, or program) within the educational institution's structure. It provides a way to navigate and explore the course offerings based on the hierarchical organization of the institution. The endpoint should be used when you need to list or enumerate courses for a specific segment of the institution, as defined by the hierarchy node. It does not provide detailed information about individual courses, only their association with the specified node.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>course</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `nodeId` | string | Yes | The node ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|      |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `course__organization` | boolean | No | Filters Hierarchy Node associations based on whether it is a Node-Course or a Node-Organization association. A value of "true" indicates that search results should be limited to Node-Organization associations. A value of "false" indicates results should be limited to Node-Course associations. Not setting this field indicates that both Node-Course and Node-Organization associations should be returned.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch institutional hierarchy nodes

**Slug:** `BLACKBOARD_GET_NODES`

Retrieves information about the nodes within the institutional hierarchy of a Blackboard learning environment. This endpoint allows users to fetch data representing the organizational structure of an educational institution, such as departments, schools, or other administrative units. It's particularly useful for understanding the layout and relationships of different entities within the institution's Blackboard setup. The endpoint should be used when needing to map out the institutional structure, populate organization charts, or when integrating systems that require knowledge of the institution's hierarchy. Note that this endpoint only provides structural information and may not include detailed data about each node's operations or members.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `recursive` | boolean | No | Search Institutional Hierarchy Nodes recursively. If true, returns all descendant nodes of the specified Node. If false, only immediate children are returned (defualt: false) **Since**: 3800.14.0  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course nodes

**Slug:** `BLACKBOARD_GET_NODES_FOR_COURSE`

Retrieves a list of nodes (modules or units) for a specific course in the Blackboard learning management system. This endpoint allows developers to access the structure and content organization of a course, enabling them to build applications that can navigate or display course content. It should be used when there's a need to understand the layout of a course, such as for creating a course outline or building a custom course navigation interface. The endpoint focuses solely on retrieving node information and does not modify any course data. Note that while this endpoint provides the structure of the course, it may not include the actual content of each node, which might require additional API calls.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>node</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get user nodes for user id

**Slug:** `BLACKBOARD_GET_NODES_FOR_USER`

Retrieves a list of nodes associated with a specific user in the Blackboard Learn platform. Nodes typically represent courses, organizations, or content areas that the user has access to. This endpoint is useful for obtaining an overview of a user's course enrollments or accessible content areas. It should be used when you need to list all the educational resources available to a particular user. The endpoint does not provide detailed information about the courses or content itself, only the basic node information and access levels.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>node</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve users in institutional node

**Slug:** `BLACKBOARD_GET_NODE_USER_ASSOCIATIONS`

Retrieves a list of users associated with a specific node in the Blackboard Learn institutional hierarchy. This endpoint allows administrators and authorized users to fetch user information within the context of the institution's organizational structure. It is particularly useful for managing user access, roles, and permissions at different levels of the institutional hierarchy. The endpoint should be used when there's a need to audit or review user assignments within a specific department, faculty, or sub-institution. It provides a comprehensive view of user associations but does not modify any user data. Note that the response may be paginated for large user sets, and additional API calls might be necessary to retrieve the complete list of users for nodes with a high number of associated accounts.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>user</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `nodeId` | string | Yes | The node ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|      |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve observees of user profile

**Slug:** `BLACKBOARD_GET_OBSERVEES`

Retrieves a list of observees associated with a specific user in the Blackboard learning management system. This endpoint is used to fetch information about individuals or entities that the specified user is authorized to observe or monitor within the system. It is particularly useful for scenarios where a user, such as a parent or guardian, needs to access data about students they are responsible for. The endpoint returns details about the observees, which may include their identifiers, names, and potentially other relevant information depending on the system's configuration and privacy settings. It should be used when there's a need to gather information about the relationship between a user and their observees in an educational context.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get user observers by id

**Slug:** `BLACKBOARD_GET_OBSERVERS`

Retrieves the list of observers associated with a specific user in the Blackboard learning management system. This endpoint is used to fetch information about individuals or entities that have been granted observer access to a particular user's activities and progress. It's particularly useful for administrators, instructors, or guardians who need to monitor a student's performance and engagement within the Blackboard platform. The endpoint returns details about each observer, which may include their roles, permissions, and relationship to the observed user. This tool should be used when there's a need to review or manage the observers for a given user, such as during student progress reviews or when updating access permissions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve lti placement by id

**Slug:** `BLACKBOARD_GET_PLACEMENT`

Retrieves detailed information about a specific LTI (Learning Tools Interoperability) placement within the Blackboard Learn platform. This endpoint allows developers and administrators to fetch the configuration, settings, and integration details for a particular LTI tool placement identified by its unique placementId. Use this endpoint when you need to inspect or verify the setup of an LTI tool within Blackboard courses or content areas. The returned data may include information such as the tool's name, description, launch URL, and custom parameters. This endpoint is particularly useful for troubleshooting LTI integrations or gathering information for reporting purposes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `placementId` | string | Yes | Placementid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch lti placements

**Slug:** `BLACKBOARD_GET_PLACEMENTS`

Retrieves a list of all available LTI (Learning Tools Interoperability) placements within the Blackboard Learn environment. This endpoint allows developers and administrators to obtain information about where external learning tools can be integrated within the Blackboard platform. It's particularly useful when setting up or managing LTI tool integrations, as it provides insight into the possible locations where these tools can be placed. The response likely includes details such as placement IDs, names, and descriptions, though specific return fields are not provided in the schema. Use this endpoint when you need to explore or verify LTI integration options in Blackboard.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Search for placements with name properties that contain this value. **Since**: 3200.12.0  |
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "name.family(desc),created" **Since**: 3100.0.0  |
| `type` | string ("Administrator" | "Application" | "AssetProcessor" | "BaseNavigation" | "CloudDocument" | "ContentHandler" | "ContentItemMessage" | "CourseNavigation" | "OpenBadgeProvider" | "Proctoring" | "System" | "UltraUI") | No | Search for placements with type properties that contain this value. **Since**: 3200.12.0  \| Type      \| Description  \| --------- \| --------- \| \| Application \| Application or Student Tool Placement \| \| ContentHandler \| Content Type placement \| \| ContentItemMessage \| Content-item Message placement (see IMSGlobal spec)  **Since**: 3300.5.0 \| \| System \| System-level Tools \| \| Administrator \| Administrator-level Tools  **Since**: 3400.1.0 \| \| UltraUI \| Ultra-UI Extensions  **Since**: 3700.6.0 \| \| BaseNavigation \| Base Navigation \| \| CourseNavigation \| Course Navigation \| \| Proctoring \| Proctoring  **Since**: 3900.10.0 \| \| CloudDocument \| Cloud Document Type Placement  **Since**: 3900.34.0 \| \| AssetProcessor \| Asset Processor Type Placement \| \| OpenBadgeProvider \| OpenBadge Provider Type Placement \|   |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `handle` | string | No | Search for placements with handle properties that contain this value. **Since**: 3200.12.0  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `authorId` | string | No | Search for placements with author ID properties that contain this value. **Since**: 3200.12.0 **Deprecated**: since 3900.0.0; Field was never used and has been removed  |
| `courseId` | string | No | Search for LTI placements that are available for this course. Note this only applies to Application, ContentHandler, and ContentItemMessage types currently **Since**: 3900.0.0  |
| `domainId` | string | No | Search for LTI placements that are associated to a specific domainId **Since**: 3900.46.0  |
| `availability__available` | string ("No" | "Yes") | No | Search for placements with a specific availability value **Since**: 3900.46.0  \| Type      \| Description  \| --------- \| --------- \| \| Yes \|  \| \| No \|  \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch privacy policies

**Slug:** `BLACKBOARD_GET_POLICIES`

Retrieves the current privacy policy for the Blackboard system. This endpoint provides access to the most up-to-date privacy policy information, which is crucial for understanding how user data is handled and protected within the Blackboard platform. It should be used when administrators, educators, or students need to review or reference the privacy policy, especially in situations involving data protection compliance or user rights inquiries. The endpoint returns the full text of the privacy policy, but does not provide version history or allow for policy modifications.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `locale` | string | No | the locale, otherwise it defaults to en_US |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve proctoring service by id

**Slug:** `BLACKBOARD_GET_PROCTORING_SERVICE`

Retrieves detailed information about a specific proctoring service integrated with Blackboard Learn. This endpoint allows users to fetch configuration details, availability status, and other relevant information for a particular online exam proctoring solution. It's particularly useful for administrators and instructors who need to verify or review the settings of a proctoring service before configuring exams. The endpoint should be used when specific details about a proctoring service are required, such as during exam setup or troubleshooting integration issues. Note that this endpoint only provides information about the service itself and does not include data about individual proctored exams or student sessions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `proctoringServiceId` | string | Yes | Proctoringserviceid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve proctoring services

**Slug:** `BLACKBOARD_GET_PROCTORING_SERVICES`

Retrieves a list of available proctoring services integrated with the Blackboard Learn platform. This endpoint is part of Blackboard's Proctoring Services Framework and is designed to support online examination security. It should be used when administrators or instructors need to view the proctoring options available for configuring secure assessments in the Ultra Course View. The endpoint provides information about the integrated third-party proctoring solutions but does not include details about individual exam configurations or student data. Note that the actual implementation of proctoring services may require additional setup and configuration within the Blackboard Learn environment.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `availability__available` | string ("No" | "Yes") | No | Search for proctoring services with availability.available properties that contain this value.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \|  \| \| No \|  \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve pronouns information

**Slug:** `BLACKBOARD_GET_PRONOUNS`

Retrieves the list of available pronouns in the Blackboard learning management system. This endpoint is used to fetch the predefined set of pronouns that users can choose from when setting up or updating their profile. It's particularly useful for applications that need to synchronize or display pronoun options consistent with the Blackboard system. The endpoint returns all currently supported pronouns, which can be used for user interface elements like dropdown menus or form fields. It should be called when initializing user profile forms or when updating the list of available pronouns in integrated systems. Note that this endpoint does not provide individual user's chosen pronouns, but rather the system-wide list of pronoun options.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve assessment question

**Slug:** `BLACKBOARD_GET_QUESTION_BY_ID`

Retrieves detailed information about a specific question within an assessment for a particular course in the Blackboard learning management system. This endpoint allows users to access question content, type, scoring information, and other relevant details. It should be used when detailed information about a single question is needed, such as for review, editing, or analysis purposes. The endpoint does not modify the question; it only provides read access to the existing data. Note that the response will not include student answers or performance data related to the question.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `questionId` | string | Yes | Questionid |
| `assessmentId` | string | Yes | Assessmentid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get assessment questions by course and assessment id

**Slug:** `BLACKBOARD_GET_QUESTIONS`

Retrieves a list of questions for a specific assessment within a Blackboard course. This endpoint allows users to access the questions associated with a particular assessment, such as a quiz, test, or assignment, in a given course. It's useful for instructors or administrators who need to review, analyze, or export assessment questions. The endpoint requires both a course identifier and an assessment identifier to pinpoint the exact set of questions to retrieve. It should be used when detailed information about assessment questions is needed, but it does not provide information about student responses or scores. Note that the accessibility of this data may depend on the user's permissions within the Blackboard system.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `assessmentId` | string | Yes | Assessmentid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get content collection resources children

**Slug:** `BLACKBOARD_GET_RESOURCE_CHILDREN`

Retrieves a list of child resources for a specified parent resource within the Blackboard content collection. This endpoint is used to navigate through the hierarchical structure of educational content, allowing users to explore sub-items or nested resources within a given parent resource. It's particularly useful for applications that need to display or manage the content structure of Blackboard courses or materials. The endpoint returns only direct children of the specified resource, not the entire subtree, making it suitable for building tree-like navigation or content exploration features. Note that this endpoint does not provide the actual content of the resources, only their metadata and structural information.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `size` | integer | No | Search by file "size". Can be used along "sizeCompare". If specified, no folders will be retrieved. **Since**: 3900.41.0  |
| `type` | string ("File" | "Folder") | No | Search for Resources whose Type matches the specified value.  Valid values are "File" and "Folder".  \| Type      \| Description  \| --------- \| --------- \| \| File \|  \| \| Folder \|  \|   |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `created` | string | No | Search by "created" date. Can be used along with "createdCompare". **Since**: 3900.41.0  |
| `modified` | string | No | Search by "modified" date. Can be used along with "modifiedCompare". **Since**: 3900.41.0  |
| `creatorId` | string | No | Search files by "creatorId" **Since**: 3900.41.0 |
| `resourceId` | string | Yes | The xythos resource ID, formatted either as a primary ID or a xythos ID. <pre class="markdown"> \| ID type    \| Example                                          \| \|------------\|--------------------------------------------------\| \| primary    \| _123_1                                           \| \| xid        \| xid-123_1-1                                      \| </pre> The home directory of a specified course is supported by the following syntax. <pre class="markdown"> \| ID type    \| Example                                          \| \|------------\|--------------------------------------------------\| \| primary    \| ~course:_123_1                                   \| \| secondary  \| ~course:courseId:theCourseId                     \| \| secondary  \| ~course:externalId:theExternalId                 \| \| secondary  \| ~course:uuid:theUuid                             \| </pre> Similarly, the home directory of a specified user is supported as follows. <pre class="markdown"> \| ID type    \| Example                                          \| \|------------\|--------------------------------------------------\| \| primary    \| ~user:_123_1                                     \| \| secondary  \| ~user:userName:theUserName                       \| \| secondary  \| ~user:externalId:theExternalId                   \| \| secondary  \| ~user:uuid:theUuid                               \| </pre> Resource IDs for home directory of the current user in context is supported as follows.   \| ID type    \| Example                                          \|  \|------------\|--------------------------------------------------\|  \| special    \| ~                                                \|  \| special    \| ~user:me                                         \|    |
| `sizeCompare` | string ("equals" | "greaterOrEqual" | "greaterThan" | "lessOrEqual" | "lessThan" | "notEquals") | No | Search operator to be applied to "size", When not specified, it will perform as "equals" by default if "size" is specified. Must be one of the following: - equals - optional - notEquals - greaterOrEqual - greaterThan - lessOrEqual - lessThan **Since**: 3900.41.0  \| Type      \| Description  \| --------- \| --------- \| \| equals \|  \| \| notEquals \|  \| \| greaterOrEqual \|  \| \| greaterThan \|  \| \| lessOrEqual \|  \| \| lessThan \|  \|   |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Search criteria to be applied to "created", When not specified, it will perform as "greaterOrEqual" by default if "created" contains a valid date. Must be one of the following: - greaterOrEqual - lessThan **Since**: 3900.41.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `modifiedCompare` | string ("greaterOrEqual" | "lessThan") | No | Search criteria to be applied to "modified", When not specified, it will perform as "greaterOrEqual" by default if "modified" contains a valid date. Must be one of the following: - greaterOrEqual - lessThan **Since**: 3900.41.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch content collection resources

**Slug:** `BLACKBOARD_GET_RESOURCES`

Retrieves a list of resources from a specified content collection within a Blackboard Learn course. This endpoint enables access to various educational materials in a course's content collection. It supports pagination and is useful for applications that need to display or manage course resources. Note that it only provides resource metadata, not the full content.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `size` | integer | No | Search by file "size". Can be used along "sizeCompare". If specified, no folders will be retrieved. **Since**: 3900.41.0  |
| `type` | string ("File" | "Folder") | No | Search for Resources whose Type matches the specified value.  Valid values are "File" and "Folder".  \| Type      \| Description  \| --------- \| --------- \| \| File \|  \| \| Folder \|  \|   |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `created` | string | No | Search by "created" date. Can be used along with "createdCompare". **Since**: 3900.41.0  |
| `modified` | string | No | Search by "modified" date. Can be used along with "modifiedCompare". **Since**: 3900.41.0  |
| `creatorId` | string | No | Search files by "creatorId" **Since**: 3900.41.0 |
| `sizeCompare` | string ("equals" | "greaterOrEqual" | "greaterThan" | "lessOrEqual" | "lessThan" | "notEquals") | No | Search operator to be applied to "size", When not specified, it will perform as "equals" by default if "size" is specified. Must be one of the following: - equals - optional - notEquals - greaterOrEqual - greaterThan - lessOrEqual - lessThan **Since**: 3900.41.0  \| Type      \| Description  \| --------- \| --------- \| \| equals \|  \| \| notEquals \|  \| \| greaterOrEqual \|  \| \| greaterThan \|  \| \| lessOrEqual \|  \| \| lessThan \|  \|   |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Search criteria to be applied to "created", When not specified, it will perform as "greaterOrEqual" by default if "created" contains a valid date. Must be one of the following: - greaterOrEqual - lessThan **Since**: 3900.41.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `modifiedCompare` | string ("greaterOrEqual" | "lessThan") | No | Search criteria to be applied to "modified", When not specified, it will perform as "greaterOrEqual" by default if "modified" contains a valid date. Must be one of the following: - greaterOrEqual - lessThan **Since**: 3900.41.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get review status of user in course content

**Slug:** `BLACKBOARD_GET_REVIEW_STATUS`

Retrieves the review status of a specific content item for a particular user within a Blackboard Learn course. This endpoint is useful for instructors or administrators to track whether a student has reviewed or interacted with a particular piece of course content. It can be used to monitor student engagement, ensure compliance with course requirements, or identify students who may need additional support. The endpoint does not modify any data and is intended for read-only operations. It's important to note that this endpoint only provides the review status and does not give detailed information about the user's interaction with the content.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get course performance content review status

**Slug:** `BLACKBOARD_GET_REVIEW_STATUS_BY_COURSE_ID`

Retrieves the content review status for a specific course in the Blackboard learning management system. This endpoint provides information about the current state of content reviews within the course, which may include details such as the number of items pending review, items that have been reviewed, or the overall progress of the review process. It is particularly useful for instructors, course designers, or administrators who need to monitor the quality assurance process of course materials. The tool should be used when there's a need to check the progress or status of content reviews for a particular course, especially in scenarios where courses undergo regular content audits or quality checks. It does not modify any course content or review status; it only retrieves the current state of reviews.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `userId` | string | No | Optional search criteria to filter by user id. **Since**: 3700.15.0 |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve rubric association for course

**Slug:** `BLACKBOARD_GET_RUBRIC_ASSOCIATION_BY_ID`

Retrieves detailed information about a specific rubric association within a Blackboard Learn course. This endpoint allows users to access the configuration and application details of a rubric to a particular assessment or assignment. It is particularly useful for understanding how grading criteria are applied to specific coursework, enabling instructors and administrators to review and manage assessment structures. The tool should be used when detailed information about rubric implementation for a specific assignment is needed, such as during course setup, grading processes, or when analyzing assessment methodologies. It does not modify any data and is solely for retrieval purposes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `rubricId` | string | Yes | The Rubric ID. This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `rubricAssociationId` | string | Yes | The Rubric Association ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course rubric associations

**Slug:** `BLACKBOARD_GET_RUBRIC_ASSOCIATIONS`

Retrieves the associations of a specific rubric within a given course in Blackboard Learn. This endpoint allows users to fetch information about how a particular rubric is linked to various course elements such as assignments, discussions, or other assessable items. It's useful for understanding the application of rubrics across different components of a course, aiding in consistent assessment practices. The endpoint requires both a course ID and a rubric ID to pinpoint the exact associations being queried. It does not create, modify, or delete associations; it only provides read access to existing rubric-course element relationships.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "name.family(desc),created" **Since**: 3100.0.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `rubricId` | string | Yes | The Rubric ID. This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get rubric associations for gradebook columns

**Slug:** `BLACKBOARD_GET_RUBRIC_ASSOCIATIONS_BY_COLUMN_ID`

Retrieves the rubric associations for a specific gradebook column within a Blackboard course. This endpoint allows users to access detailed information about how rubrics are connected to a particular grading column, which is crucial for understanding the assessment criteria and grading structure. It should be used when there's a need to review or analyze the rubric setup for a specific gradable item in a course. The tool is particularly useful for instructors, course designers, or administrators who need to ensure that the appropriate rubrics are linked to the correct gradebook columns. Note that this endpoint only provides information about existing associations and does not allow for creating, modifying, or deleting these associations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get course rubric by course id

**Slug:** `BLACKBOARD_GET_RUBRIC_BY_ID`

Retrieves a specific rubric for a given course in the Blackboard learning management system. This endpoint allows users to access detailed information about a rubric, including its criteria, scoring methods, and any associated metadata. It is particularly useful for instructors or administrators who need to review or integrate rubric data into other systems or workflows. The endpoint should be used when detailed rubric information is required for a known course and rubric combination, but it will not modify or create new rubrics.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>cells</li><li>columns</li><li>rows</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `rubricId` | string | Yes | The Rubric ID. This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve rubric evaluation details

**Slug:** `BLACKBOARD_GET_RUBRIC_EVALUATION_BY_ID`

Retrieves detailed information about a specific rubric evaluation within a Blackboard course. This endpoint allows users to access the assessment data, including scores and feedback, for a particular rubric evaluation associated with a course component. It is useful for instructors reviewing assessments, students viewing their feedback, or administrators analyzing evaluation data. The endpoint requires specific identifiers for the course, rubric, association, and evaluation to pinpoint the exact evaluation record. It should be used when detailed evaluation data is needed, but won't provide an overview of multiple evaluations or allow modifications to the evaluation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>cells</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `rubricId` | string | Yes | The Rubric ID. This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `rubricEvaluationId` | string | Yes | Rubricevaluationid |
| `rubricAssociationId` | string | Yes | The Rubric Association ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve rubric evaluation for attempt

**Slug:** `BLACKBOARD_GET_RUBRIC_EVALUATIONS`

Retrieves the rubric evaluations for a specific attempt on a gradebook item within a Blackboard course. This endpoint allows instructors or administrators to access detailed rubric-based assessment data for a particular student's submission. It is useful for reviewing grading decisions, providing feedback, or analyzing assessment outcomes. The tool should be used when detailed information about how a specific assignment attempt was evaluated against rubric criteria is needed. It does not modify any data and is intended for read-only access to evaluation information.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "id(desc)" Supported fields are: - id **Since**: 3900.69.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `attemptId` | string | Yes | Attemptid |
| `submitted` | string | No | The submitted date value to use as search criteria. |
| `submittedCompare` | string | No | The "submittedCompare" value to use as a search criteria. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch rubric list for course

**Slug:** `BLACKBOARD_GET_RUBRICS`

Retrieves all rubrics associated with a specific course in the Blackboard Learn platform. This endpoint allows users to access the grading criteria and assessment tools set up for a particular course. It's useful for instructors, teaching assistants, or administrators who need to review, analyze, or manage the rubrics used for assignments and assessments within a course. The endpoint returns a list of rubrics, including their titles, descriptions, and criteria, which are essential for maintaining consistent and transparent grading practices. It should be used when there's a need to programmatically access or audit the assessment structure of a course. Note that this endpoint only provides read access to rubrics and does not allow for creation, modification, or deletion of rubrics.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "title(desc),created" Supported fields are: - id - created - modified - title - description - rubricType  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `created` | string | No | Search for rubrics with a created date relative to this value.  "createdCompare" may also be sent to control search behavior.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `modified` | string | No | Search for rubrics with a modified date relative to this value.  "modifiedCompare" may also be sent to control search behavior.  |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "created" search parameter. Defaults to greaterOrEqual if not specified.  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `modifiedCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "modified" search parameter. Defaults to greaterOrEqual if not specified.  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course content adaptive release rules

**Slug:** `BLACKBOARD_GET_RULES`

Retrieves the adaptive release rules associated with a specific content item within a Blackboard course. This endpoint allows instructors or administrators to view the conditions under which the content becomes available to students. It should be used when there's a need to understand or audit the release criteria for a particular piece of course content. The tool returns details about the rules, which may include date, grade, membership, or review status criteria. It's particularly useful for managing complex content release strategies or troubleshooting student access issues. Note that this endpoint only provides information about existing rules and does not allow for creation or modification of rules.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "title(desc)" Supported fields are: - id - title **Since**: 3900.23.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get upload settings

**Slug:** `BLACKBOARD_GET_SETTINGS`

Retrieves the current upload settings for the Blackboard Learn platform. This endpoint allows administrators and authorized users to fetch the configuration parameters related to file uploads within the Blackboard system. It provides information about various aspects of file upload handling, such as maximum file size limits, allowed file types, storage configurations, and any other relevant upload-related settings. This tool should be used when there's a need to review or verify the current upload policies and constraints in place for the Blackboard instance. It does not modify any settings; it only returns the existing configuration.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve sis dataset log by id

**Slug:** `BLACKBOARD_GET_SIS_LOGS_BY_DATA_SET_UID`

Retrieves a specific Student Information System (SIS) dataset from the Blackboard Learn platform using its unique identifier. This endpoint is used to access detailed information about a particular SIS dataset, which may include student records, course enrollments, or other education-related data integrated into Blackboard. It's particularly useful for administrators and developers who need to audit, analyze, or synchronize SIS data with external systems. The endpoint should be used when specific dataset details are required, rather than for bulk data retrieval. Note that access to SIS datasets may be restricted based on user roles and permissions within the Blackboard system.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | : dataSetUid of the integration |
| `level` | string ("Debug" | "Error" | "Information" | "Warning") | No | : Logs can be filtered with level. Default level is Error. Logs will be pulled of that level and above          i.e. for level = Warning result set will have warning and error level log messages  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve system role by id

**Slug:** `BLACKBOARD_GET_SYSTEM_ROLE`

Retrieves detailed information about a specific system role in the Blackboard learning management system. This endpoint should be used when you need to access the properties, permissions, or other attributes associated with a particular role. It's useful for administrators or developers who need to understand or verify the capabilities assigned to different user types within Blackboard. The endpoint returns comprehensive data about the requested role, which may include its name, description, associated permissions, and any custom settings. However, it does not modify role information or provide a list of users assigned to the role.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `roleId` | string | Yes | The System Role ID.  This may be the primary ID, or the secondary roleId type. The suffix ":custom" will be appended to the roleId of a custom system role if that roleId conflicts with the roleId of a system generated role.  For example, if a custom role roleId is specified as "Guest" then the roleId will actually be "Guest:custom" since there is already a system generated role with the roleId of "Guest".   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| roleId     \| roleId:column1                        \|   **Since**: 3300.5.0  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List system roles

**Slug:** `BLACKBOARD_GET_SYSTEM_ROLES`

Retrieves a list of all system roles defined in the Blackboard Learn platform. This endpoint provides comprehensive information about the various roles that can be assigned to users within the system, including their associated permissions and access levels. It is particularly useful for administrators and developers who need to understand the role structure of the Blackboard Learn instance, manage user permissions, or integrate role-based access control in their applications. The endpoint should be used when a complete overview of the system's role hierarchy is required, but it should not be relied upon for real-time permission checks of individual users.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "roleId(desc)" Supported fields are: <ul - roleId - custom **Since**: 3300.5.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `custom` | boolean | No | Search for system roles by custom flag.  A value of "true" indicates that search results should be limited to only custom roles.  A value of "false" indicates results should be limited to built-in roles.  Not setting this field indicates that all system roles should be returned. **Since**: 3300.5.0  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `roleId` | string | No | Search for system roles with roleId **Since**: 3300.5.0 |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve task by id

**Slug:** `BLACKBOARD_GET_SYSTEM_TASK`

Retrieves detailed information about a specific system task in the Blackboard Learn platform. This endpoint allows developers to fetch the current status, details, and metadata of an individual task identified by its unique taskId. It should be used when monitoring or tracking the progress of system-level operations, such as batch processes, system updates, or administrative functions. The endpoint provides up-to-date information about the task but does not allow modification of the task itself. It's particularly useful for integrations that need to synchronize with Blackboard's system tasks or provide status updates to users.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `taskId` | string | Yes | Taskid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch course task details

**Slug:** `BLACKBOARD_GET_TASK`

Retrieves detailed information about a specific task within a course in the Blackboard Learn platform. This endpoint allows users to fetch comprehensive data about an individual assignment, activity, or any other task associated with a particular course. It should be used when detailed information about a single task is needed, such as viewing assignment instructions, due dates, or associated materials. The endpoint is particularly useful for building interfaces that display task details to students or instructors, or for integrating task information into external learning tools. Note that this endpoint only provides information about the task itself and does not include submission data or grades.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `taskId` | string | Yes | Taskid |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve term by id

**Slug:** `BLACKBOARD_GET_TERM`

Retrieves detailed information about a specific academic term in the Blackboard Learn system. This endpoint is used to fetch comprehensive data about a term, such as its name, start date, end date, and any associated metadata. It's particularly useful for applications that need to synchronize term information or display term details to users. The endpoint should be used when specific term information is required, rather than a list of all terms. Note that this endpoint only provides details for a single term; to get information about multiple terms, separate requests must be made for each termId.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `termId` | string | Yes | The term ID.  This may be the primary ID, or the secondary ID prefixed with the ID type.   \| ID type    \| Example                \|  \|------------\|------------------------\|  \| primary    \| _123_1                 \|  \| externalId \| externalId:spring.2016 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch terms list

**Slug:** `BLACKBOARD_GET_TERMS`

Retrieves a list of academic terms or information about specific terms in the Blackboard learning management system. This endpoint provides access to term definitions, including start and end dates, term names, and other relevant metadata. It's useful for applications that need to synchronize academic calendars, manage course schedules, or provide term-based information to users. The endpoint supports pagination and field selection, allowing for efficient data retrieval and reduced payload sizes when only specific term information is needed. It should be used when building integrations that require up-to-date term information or when displaying term-related data in external applications connected to Blackboard.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `externalId` | string | No | Search for term with externalId properties that contain this value. **Since**: 3100.6.0  |
| `dataSourceId` | string | No | Search for term with this dataSourceId. **Since**: 3100.6.0 |
| `availability__available` | string ("No" | "Yes") | No | Search for users with availability.available properties that contain this value. **Since**: 3100.6.0  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may access the term and the courses it contains. \| \| No \| Students may not access the term or the courses it contains. \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve toc items by course id

**Slug:** `BLACKBOARD_GET_TOC_ITEMS`

Retrieves the Table of Contents (TOC) items for a specified course in the Blackboard learning management system. This endpoint provides access to the structured organization of educational materials within a course, including modules, lessons, assignments, and other content types. It should be used when needing to display or analyze the content structure of a course, such as for building a course navigation interface or auditing course materials. The endpoint returns only the TOC structure and does not include the actual content of the items. It's particularly useful for applications that need to understand or replicate the course layout without accessing the full content details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch oauth2 tokeninfo

**Slug:** `BLACKBOARD_GET_TOKEN_INFO`

Retrieves detailed information about a specified OAuth2 token used for authentication in the Blackboard Learn API. This endpoint allows developers to verify the validity, scope, and associated details of an access token. It should be used when an application needs to check the current state or permissions of a token, such as during user session management or before making API calls. The endpoint does not refresh or modify the token; it only provides read-only information about the token's current state.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `access_token` | string | Yes | The application key and secret, encoded using RFC 2617 Basic authentication.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get institutional node tool information

**Slug:** `BLACKBOARD_GET_TOOLS`

Retrieves detailed information about a specific tool associated with a particular node in the Blackboard institutional hierarchy. This endpoint is used to fetch configuration, settings, or status details for a given tool type within a specific organizational unit (node) of an educational institution. It allows developers to access and potentially manage tool-specific data for various components of the Blackboard learning environment. This endpoint should be used when detailed information about a particular tool's implementation or settings within a specific context (e.g., a course or department) is needed. It does not modify any data and is primarily for information retrieval purposes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `nodeId` | string | Yes | The node ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|      |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `toolType` | string ("Content" | "Course" | "Organization") | Yes | Tooltype |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course resources by id

**Slug:** `BLACKBOARD_GET_TOP_LEVEL_COURSE_RESOURCES`

Retrieves a list of resources associated with a specific course in the Blackboard Learning Management System (LMS). This endpoint allows users to access educational materials, such as assignments, readings, and other study materials, that are linked to a particular course. It should be used when there's a need to fetch all available resources for a given course, which can be useful for building course content viewers, resource management tools, or for synchronizing course materials with external systems. The endpoint does not provide the actual content of the resources, but rather metadata and references to access them. It's important to note that the accessibility of resources may depend on the user's permissions within the Blackboard system.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `type` | string ("File" | "Folder") | No | Search for Resources whose Type matches the specified value.  Valid values are "File" and "Folder".  \| Type      \| Description  \| --------- \| --------- \| \| File \|  \| \| Folder \|  \|   |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch types of goal sets

**Slug:** `BLACKBOARD_GET_TYPES`

Retrieves a list of available goal set types in the Blackboard Learn system. This endpoint allows users to fetch information about the different categories or classifications of goal sets that can be created or managed within the learning management system. It is useful for understanding the structure and organization of educational objectives or learning outcomes in Blackboard. The endpoint should be used when planning to create new goal sets or when needing an overview of the existing goal set categories. It does not provide specific goals or content within these sets, only the types or categories available for organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "id(desc)" Supported fields are: - id  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve user by id

**Slug:** `BLACKBOARD_GET_USER`

Retrieves detailed information about a specific user in the Blackboard Learn system. This endpoint allows you to fetch user profile data, such as name, email, system role, and other relevant details associated with the user account. It should be used when you need to access or display information about a particular user, such as for user management tasks, profile displays, or data synchronization between systems. The endpoint returns only the publicly available information about the user and does not provide access to sensitive or private data. It's important to note that while this is a public API endpoint, the actual data returned may still be subject to user privacy settings and system-wide access controls.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve user avatar by userid

**Slug:** `BLACKBOARD_GET_USER_AVATAR`

Retrieves the avatar (profile picture) for a specified user in the Blackboard Learn platform. This endpoint allows you to fetch the current profile image associated with a user's account based on their unique user ID. It should be used when you need to display or access a user's avatar within your application or integration. The endpoint returns the image data directly, which can be used for rendering the avatar or storing it locally. Note that this endpoint only provides the avatar image and does not include any other user profile information. If the user has not set an avatar, the endpoint may return a default image or an appropriate error response.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve gradebook entry for user in course

**Slug:** `BLACKBOARD_GET_USER_GRADES`

Retrieves detailed gradebook information for a specific user within a particular course in the Blackboard learning management system. This endpoint allows educators, administrators, or authorized users to access individual student performance data, including grades, assignments, and other relevant gradebook entries. It should be used when detailed grade information for a single student in a specific course is required, such as for progress monitoring or generating individual reports. The endpoint does not provide aggregate data for multiple students or courses and cannot be used to modify gradebook entries.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `lastRelevantDate` | string | No | Search for grades with a lastRelevantDate date relative to this value. "lastRelevantDateCompare" may also be sent to control search behavior. **Since**: 3900.78.0  |
| `firstRelevantDate` | string | No | Search for grades with a firstRelevantDate date relative to this value. "firstRelevantDateCompare" may also be sent to control search behavior. **Since**: 3900.78.0  |
| `lastRelevantDateCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "lastRelevantDate" search parameter.  Supported values: - lessThan - greaterOrEqual Defaults to greaterOrEqual if not specified. **Since**: 3900.78.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `firstRelevantDateCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "firstRelevantDate" search parameter.  Supported values: - lessThan - greaterOrEqual Defaults to greaterOrEqual if not specified. **Since**: 3900.78.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve user courses by id

**Slug:** `BLACKBOARD_GET_USER_MEMBERSHIPS`

Retrieves a list of courses associated with a specific user in the Blackboard Learn platform. This endpoint is used to fetch all courses that a user is enrolled in or has access to, providing essential information for course management and user-specific content delivery. It's particularly useful for generating user dashboards, course listings, or when syncing course data with external systems. The endpoint returns course details but does not provide in-depth information about course content or student performance within those courses.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `role` | string | No | Search for memberships with a course role id that matches this value. **Since**: 3500.5.0  |
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "created(desc)" Supported fields are: - created - lastAccessed (Since 3300.9.0) **Since**: 3100.0.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `expand` | string | No | A comma-delimited list of fields to expand as part of the response. Expanded fields may cause additional load time. Supported fields are:<br><ul><li>course</li></ul>  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `created` | string | No | Search for memberships with a created date relative to this value.  "createdCompare" may also be sent to control search behavior. **Since**: 3100.0.0  |
| `modified` | string | No | Search for memberships with a modified date relative to this value. "modifiedCompare" may also be sent to control search behavior. **Since**: 3800.9.0  |
| `dataSourceId` | string | No | Search for memberships with this dataSourceId.  This may optionally be the data source"s externalId using the syntax "externalId:math101". **Since**: 3100.0.0  |
| `lastAccessed` | string | No | Search for memberships with a last accessed date relative to this value.  "lastAccessedCompare" may also be sent to control search behavior. **Since**: 3300.9.0  |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "created" search parameter.  Supported values: - lessThan - greaterOrEqual Defaults to greaterOrEqual if not specified. **Since**: 3100.0.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `modifiedCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "modified" search parameter. Supported values: - lessThan - greaterOrEqual Defaults to greaterOrEqual if not specified. **Since**: 3800.9.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `lastAccessedCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "lastAccessed" search parameter.  Supported values: - lessThan - greaterOrEqual Defaults to greaterOrEqual if not specified. **Since**: 3300.9.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `availability__available` | string ("Disabled" | "No" | "Yes") | No | Search for users with availability.available properties that contain this value. **Since**: 3100.0.0  \| Type      \| Description  \| --------- \| --------- \| \| Yes \|  \| \| No \|  \| \| Disabled \|   **Since**: 3100.0.0 \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get user pronunciation audio

**Slug:** `BLACKBOARD_GET_USER_PRONUNCIATION_AUDIO`

Retrieves the pronunciation audio associated with a specific user's profile in Blackboard Learn. This endpoint allows applications to access the audio file that contains the correct pronunciation of the user's name. It should be used when there's a need to play or display the audio pronunciation of a user's name, such as in user directory listings, class rosters, or personalized greetings. The audio file returned may be in a common audio format (e.g., MP3, WAV). If no pronunciation audio has been set for the user, the endpoint may return a 404 error or an empty response. This tool does not upload or modify the pronunciation audio; it is for retrieval purposes only.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve users list

**Slug:** `BLACKBOARD_GET_USERS`

The GetUsersEndpoint retrieves user information from the Blackboard Learn system. This endpoint allows you to fetch a list of users with their associated details, supporting various query parameters for filtering, sorting, and pagination. It's particularly useful for applications that need to synchronize user data, manage user accounts, or display user information within an educational context. The endpoint returns user data in a structured format, likely including fields such as user IDs, usernames, email addresses, and other relevant profile information. While it provides comprehensive user data, it does not modify user information - separate endpoints would be required for user creation, updates, or deletion. Use this endpoint when you need to access user data for reporting, user management, or integration purposes within your Blackboard-connected application.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "name.family(desc),created" Supported fields are: - userName - name.family - externalId - dataSourceId - created **Since**: 3100.0.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `created` | string | No | Search for users with a created date relative to this value.  "createdCompare" may also be sent to control search behavior. **Since**: 3000.11.0  |
| `modified` | string | No | Search for users with a modified date relative to this value.  "modifiedCompare" may also be sent to control search behavior. **Since**: 3700.1.0  |
| `userName` | string | No | Search for users with userName properties that contain this value. **Since**: 3000.11.0  |
| `lastLogin` | string | No | Search for users with a last login date relative to this value.  "lastLoginCompare" may also be sent to control search behavior. A user who has never logged in would have a null last login date.  This is not considered to be greater than, less than, or equal to a valid date. Such users will be filtered out any time this filter is used. **Since**: 3900.9.0  |
| `studentId` | string | No | Search for users with the specified studentId. **Since**: 3900.80.00 |
| `externalId` | string | No | Search for users with externalId properties that contain this value. **Since**: 3000.11.0  |
| `dataSourceId` | string | No | Search for users with this dataSourceId.  This may optionally be the data source"s externalId using the syntax "externalId:math101". **Since**: 3000.11.0  |
| `name__family` | string | No | Search for users with name.family properties that contain this value. **Since**: 3000.11.0  |
| `contact__email` | string | No | Search for users with the specified contact.email value. Only users with the entitlement "system.user.properties.MODIFY" are allowed to filter by this attribute, the query parameter is ignored otherwise. **Since**: 3900.80.00  |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "created" search parameter.  Supported values: - lessThan - greaterOrEqual Defaults to greaterOrEqual if not specified. **Since**: 3000.11.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `modifiedCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "modified" search parameter.  Supported values: - lessThan - greaterOrEqual Defaults to greaterOrEqual if not specified.  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `lastLoginCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "lastLoginDate" search parameter.  Supported values: - lessThan - greaterOrEqual Defaults to greaterOrEqual if not specified. **Since**: 3900.9.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `institutionRoleIds` | array | No | Search for users with the specified institutionRoleIds.  This may be a comma separated list of institution role ids. **Since**: 3900.61.0  |
| `availability__available` | string ("Disabled" | "No" | "Yes") | No | Search for users with availability.available properties that contain this value. **Since**: 3100.0.0  \| Type      \| Description  \| --------- \| --------- \| \| Yes \|  \| \| No \|  \| \| Disabled \|   **Since**: 3100.0.0 \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve system version information

**Slug:** `BLACKBOARD_GET_VERSION`

Retrieves the current version information of the Blackboard Learn system. This endpoint should be used when developers or administrators need to check the specific version of the Blackboard instance they are working with. It's particularly useful for ensuring compatibility with other tools or services that integrate with Blackboard, or for troubleshooting version-specific issues. The endpoint returns version details of the system, which may include the major, minor, and patch version numbers. It does not provide information about individual components or modules within the Blackboard system, focusing solely on the overall system version.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve user gradebook column

**Slug:** `BLACKBOARD_GRADE_ACCESS_WITH_RIGHTS_VALIDATION`

Retrieves a specific user's grade for a particular gradebook column in a Blackboard Learn course. This endpoint allows instructors or administrators to fetch individual grade entries, providing a targeted way to access student performance data. It's particularly useful for generating individual student reports, verifying grade entries, or integrating with external grading systems. The endpoint returns the grade value and potentially additional metadata such as submission date or feedback. It should be used when precise, individual grade information is needed, rather than for bulk grade retrieval across multiple students or columns.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `unsupportedSearchOverChildCourses` | boolean | No | Unsupportedsearchoverchildcourses |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List users in course group

**Slug:** `BLACKBOARD_GROUP_MEMBERSHIP_API_DETAILS`

Retrieves a list of users belonging to a specific group within a course in the Blackboard learning management system. This endpoint is useful for obtaining detailed information about group members, such as their names, roles, and other relevant data. It should be used when you need to access user information for a particular group in a course, for example, to manage group activities or assess group participation. The endpoint does not modify any data and is intended for read-only operations. It may not provide real-time updates if user information has changed very recently.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create new course with json input

**Slug:** `BLACKBOARD_INITIALIZE_EDUCATIONAL_ENTITY`

Creates a new course in the Blackboard Learn system with specified attributes and settings. This endpoint allows for the creation of both academic courses and organizational units, with extensive customization options for course properties, availability, enrollment methods, and localization. It should be used when setting up new courses or organizations within Blackboard, either manually or as part of an automated provisioning process. The endpoint provides flexibility in course setup, supporting both Ultra and Classic course views, various availability and enrollment options, and integration with external systems through data source and external ID fields. However, it's important to note that some settings are specific to either Ultra or Classic courses, and certain parameters may have interdependencies or require specific permissions to modify.</description> </invoke>

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the course. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `termId` | string | No | The ID of the term associated to this course. This may optionally be the term"s externalId using the syntax "externalId:spring.2016".  |
| `courseId` | string | Yes | The Course ID attribute, shown to users in the UI. |
| `externalId` | string | No | An optional externally-defined unique ID for the course. Defaults to the courseId. Formerly known as "batchUid".  |
| `locale__id` | string | No | The locale of this course. |
| `allowGuests` | boolean | No | Whether guests (users with the role guest) are allowed access to the course. Modifiable only for Classic course. Defaults to true for Classic Courses and false for Ultra Courses.  |
| `description` | string | No | The description of the course. |
| `ultraStatus` | string ("Classic" | "Ultra" | "UltraPreview" | "Undecided") | No | Whether the course is rendered using Classic or Ultra Course View.  \| Type      \| Description  \| --------- \| --------- \| \| Undecided \| The ultra status is not decided. \| \| Classic \| The course is decided as classic. \| \| Ultra \| The course is decided as ultra \| \| UltraPreview \| The course is currently in Ultra mode but during the preview state where it may still be reverted via a Restore to the classic state \|   |
| `dataSourceId` | string | No | The ID of the data source associated with this course. This may optionally be the data source"s externalId using the syntax "externalId:math101".  |
| `organization` | boolean | No | Whether this object represents an Organization. Defaults to false. |
| `locale__force` | boolean | No | Whether students are forced to use the course"s specified locale. |
| `allowObservers` | boolean | No | Whether observers are allowed access to the course. Modifiable only for Classic course. Defaults to false. **Since**: 3900.31.0  |
| `closedComplete` | boolean | No | This status does not affect availability of the course for viewing in any way. closedComplete is valid for both Ultra and Classic courses. If an Ultra course is in closedComplete mode, updates are not possible. For a Classic course in closedComplete mode, updates are still possible (through Web UI but not through REST i.e. closed is enforced for original courses when updated through REST the same way Ultra courses are blocked) but new notifications are not generated.  |
| `enrollment__end` | string | No | The date on which enrollment in this course ends. May only be set if enrollment.type is SelfEnrollment.  |
| `enrollment__type` | string ("EmailEnrollment" | "InstructorLed" | "SelfEnrollment") | No | Specifies the enrollment options for the course. Defaults to InstructorLed.  \| Type      \| Description  \| --------- \| --------- \| \| InstructorLed \| Enrollment tasks for the course can only performed by the instructor \| \| SelfEnrollment \| Instructors have the ability to enroll users, and students can also enroll themselves in the course \| \| EmailEnrollment \| Instructors have the ability to enroll users, and students can email requests to the instructor for enrollment \|   |
| `enrollment__start` | string | No | The date on which enrollments are allowed for the course. May only be set if enrollment.type is SelfEnrollment.  |
| `enrollment__accessCode` | string | No | The enrollment access code associated with this course. May only be set if enrollment.type is SelfEnrollment.  |
| `availability__available` | string ("Disabled" | "No" | "Term" | "Yes") | No | Whether the course is currently available to students. Instructors can always access the course if they have "Access unavailable course" entitlement. If set to "Term", the course"s parent term availability settings will be used.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may access the course. \| \| No \| Students may not access the course. \| \| Disabled \| Disabled by the SIS. Students may not access the course. @since 3100.0.0 \| \| Term \| Availability is inherited from the term settings. Requires a termId be set. \|   |
| `availability__duration__end` | string | No | The date this course ends. May only be set if availability.duration.type is DateRange.  |
| `availability__duration__type` | string ("Continuous" | "DateRange" | "FixedNumDays" | "Term") | No | The intended length of the course. Possible values are: - Continuous: The course is active on an ongoing basis. This is the default. - DateRange: The course will only be available between specific date ranges. - FixedNumDays: The course will only be available for a set number of days. - Term: The course"s parent term duration settings will be used.  \| Type      \| Description  \| --------- \| --------- \| \| Continuous \| Course is active on an ongoing basis. \| \| DateRange \| Course is only intended to be available between specific date ranges \| \| FixedNumDays \| Course is only available for a set number of days \| \| Term \| Course availablity is dictated by its associated term \|   |
| `availability__duration__start` | string | No | The date this course starts. May only be set if availability.duration.type is DateRange.  |
| `availability__duration__daysOfUse` | integer | No | The number of days this course can be used. May only be set if availability.duration.type is FixedNumDays.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update user in course group

**Slug:** `BLACKBOARD_INITIATE_GROUP_MEMBER_ADDITION`

Updates a user's information within a specific group of a course in Blackboard Learn. This endpoint allows for modifying user-related data or settings in the context of a particular course group. It should be used when changes need to be made to a user's status, role, or other attributes specific to their participation in a group within a course. The endpoint doesn't create new user entries or move users between groups; it's specifically for updating existing user information. Note that the actual data being updated is likely sent in the request body, which is not detailed in the provided schema. Ensure you have the necessary permissions to modify user data within the specified course and group before using this endpoint.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch goal set categories

**Slug:** `BLACKBOARD_LIST_GOAL_SET_CATEGORIES`

Retrieves the categories associated with a specific goal set in the Blackboard learning management system. This endpoint is used to fetch the organizational structure of educational objectives within a predefined set of goals. It should be used when needing to understand or display the categorization of learning objectives for a particular goal set, such as when building course structures or reporting on educational outcomes. The endpoint returns only the categories within the specified goal set and does not provide detailed information about the goals themselves. This tool is particularly useful for administrators and instructors who need to manage and organize educational goals across courses or programs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "id(desc)" Supported fields are: - id - name  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `goalSetId` | string | Yes | The Goal Set ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Gradebook Columns

**Slug:** `BLACKBOARD_LIST_GRADEBOOK_COLUMNS`

Retrieves all gradebook columns for a specified course in the Blackboard learning management system. This endpoint allows instructors or authorized users to access the structure and details of the gradebook for a particular course. It returns information about each column, such as column name, points possible, creation date, and last modified date. This tool is essential for understanding the current layout of a course's gradebook, preparing for grade entry, or auditing the grading structure. It should be used when a comprehensive view of the gradebook organization is needed. Note that this endpoint only provides metadata about the columns and does not include actual student grades or submissions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | No | Search for grade columns associated with this content item. **Since**: 3000.11.0  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get group details from course api

**Slug:** `BLACKBOARD_LOAD_COURSE_GROUP_DETAILS`

Retrieves detailed information about a specific group within a Blackboard course. This endpoint is used to fetch comprehensive data about a group, including its name, description, membership details, and other relevant attributes. It's particularly useful for applications that need to display or manage group information within the context of a course. The endpoint should be used when detailed group information is required, such as for group management interfaces or when populating group-specific views in an application integrated with Blackboard. It does not modify any group data and is intended for read-only operations. Note that this endpoint focuses on a single group and does not provide a list of all groups in a course or allow for group creation or modification.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve user in course group

**Slug:** `BLACKBOARD_LOAD_COURSE_GROUP_USER_INFO`

Retrieves detailed information about a specific user within a group in a Blackboard Learn course. This endpoint allows developers to access user data in the context of both the course and the group, providing insights into the user's role, permissions, and activities within that specific group and course. Use this endpoint when you need to fetch user-specific information related to their participation in a particular group within a course. It's particularly useful for generating reports, managing group activities, or personalizing user experiences within the course and group context. Note that this endpoint only provides information about the user in relation to the specified group and course; it does not return general user profile data or information about the user's participation in other courses or groups.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course list

**Slug:** `BLACKBOARD_MANAGE_COURSE_DATA_ACCESS`

Retrieves a list of courses from the Blackboard Learn environment. This endpoint is essential for applications that need to access and display course information within the Learning Management System (LMS). It allows developers to fetch course data for various purposes such as building course catalogs, managing enrollments, or syncing course information with external systems. The endpoint is part of the public v2 API, making it suitable for integration with third-party services. While it provides a comprehensive list of courses, it may not include detailed course content or student-specific information, which might require separate API calls.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Search for courses with name properties that contain this value. **Since**: 3100.0.0  |
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "name(desc),created" Supported fields are: - courseId - name - externalId - created - modified **Since**: 3400.8.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `termId` | string | No | Search for courses with this termId.  This may optionally be the term"s externalId using the syntax "externalId:spring2015". **Since**: 3100.0.0  |
| `created` | string | No | Search for courses with a created date relative to this value.  "createdCompare" may also be sent to control search behavior. **Since**: 3100.0.0  |
| `courseId` | string | No | Search for courses with courseId properties that contain this value. **Since**: 3100.0.0  |
| `modified` | string | No | Search for courses with a modified date relative to this value.  "modifiedCompare" may also be sent to control search behavior. **Since**: 3500.4.0  |
| `externalId` | string | No | Search for courses with externalId properties that contain this value. **Since**: 3100.0.0  |
| `allowGuests` | boolean | No | Search for courses which are configured to allow/disallow guest access, based on input.  Default: n/a (return courses regardless of guests allowed) **Since**: 3200.3.0  |
| `description` | string | No | Search for courses with description properties that contain this value. **Since**: 3100.0.0  |
| `dataSourceId` | string | No | Search for courses with this dataSourceId.  This may optionally be the data source"s externalId using the syntax "externalId:math101". **Since**: 3100.0.0  |
| `organization` | boolean | No | Search for courses by organization flag.  A value of "true" indicates that search results should be limited to only Organizations.  A value of "false" indicates results should be limited to Courses.  Not setting this field indicates that both Courses and Organizations should be returned. **Since**: 3100.0.0  |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "created" search parameter.  Defaults to greaterOrEqual if not specified. **Since**: 3100.0.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `modifiedCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "modified" search parameter. Defaults to greaterOrEqual if not specified. **Since**: 3500.4.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `availability__available` | string ("Disabled" | "No" | "Term" | "Yes") | No | Search for courses with availability.available properties that contain this value. **Since**: 3000.13.0  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may access the course. \| \| No \| Students may not access the course. \| \| Disabled \| Disabled by the SIS. Students may not access the course.  **Since**: 3100.0.0 \| \| Term \| Availability is inherited from the term settings. Requires a termId be set. \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add course gradebook column

**Slug:** `BLACKBOARD_MANUAL_GRADE_COLUMN_CREATION`

Creates a new grade column in a Blackboard course's gradebook. This endpoint allows instructors or administrators to add a new column for recording and managing student grades within a specific course. It provides extensive customization options for grading methods, score calculations, student visibility, and anonymous grading. Use this endpoint when setting up a new assignment, exam, or other gradable item in a course. It's particularly useful for configuring complex grading scenarios or when integrating external grading systems with Blackboard.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The name of the grade column. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `externalId` | string | No | The externalId for this grade column |
| `description` | string | No | The description of the grade column. |
| `grading__due` | string | No | The date on which attempts are due for the grade column. |
| `externalGrade` | boolean | No | Whether this grade column is an external grade column. |
| `grading__type` | string ("Attempts" | "Calculated" | "Manual") | No | The type of Grading settings for this Grade Column.  \| Type      \| Description  \| --------- \| --------- \| \| Attempts \| Indicates score and grade values are determined based on user attempts \| \| Calculated \| Indicates score and grade values are determined by applying a calculated formula. \| \| Manual \| Indicates score and grade values are manually entered. \|   |
| `score__possible` | integer | No | The points possible for this grade column. |
| `score__decimalPlaces` | integer | No | Decimal place precision used to display scores for this grade column. **Deprecated**: since 3200.10.0; no alternative exists since this field never fully functioned as described.  |
| `grading__scoringModel` | string ("Average" | "First" | "Highest" | "Last" | "Lowest") | No | The scoring model for the submitted grade column attempts.  \| Type      \| Description  \| --------- \| --------- \| \| Last \|  \| \| Highest \|  \| \| Lowest \|  \| \| First \|  \| \| Average \|  \|   |
| `availability__available` | string ("No" | "Yes") | No | Whether this grade column is available to students  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may view the grade column. \| \| No \| Students may not view the grade column. \|   |
| `grading__attemptsAllowed` | integer | No | Number of attempts allowed for the grade column. |
| `grading__anonymousGrading__type` | string ("AfterAllGraded" | "Date" | "None") | No | The type of AnonymousGrading settings for this Attempts based Grade Column.  \| Type      \| Description  \| --------- \| --------- \| \| None \| Indicates anonymous grading is not enabled. \| \| AfterAllGraded \| Indicates anonymized grades are released after all attempts have been graded. \| \| Date \| Indicates anonymized grades are released after a specified release date. \|   |
| `grading__anonymousGrading__releaseAfter` | string | No | Date after which grades are released from being anonymized, if AnonymousGrading type is "Date".  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Patch gradebook column

**Slug:** `BLACKBOARD_MANUAL_GRADE_COLUMN_MODIFICATION`

This endpoint allows for updating specific properties of an existing grade column within a course's gradebook in the Blackboard Learn platform. It provides granular control over various aspects of the grade column, including its metadata, scoring configuration, visibility to students, and grading settings. The PATCH operation supports partial updates, meaning you can modify individual properties without affecting others. This is particularly useful for adjusting grade column settings throughout the academic term, such as changing due dates, modifying scoring models, or updating anonymous grading configurations. Note that this endpoint does not create new grade columns or delete existing ones; it is specifically for modifying properties of an already existing grade column identified by the courseId and columnId.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The name of the grade column. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `externalId` | string | No | The externalId for this grade column |
| `description` | string | No | The description of the grade column. |
| `grading__due` | string | No | The date on which attempts are due for the grade column. |
| `externalGrade` | boolean | No | Whether this grade column is an external grade column. |
| `score__possible` | integer | No | The points possible for this grade column. |
| `score__decimalPlaces` | integer | No | Decimal place precision used to display scores for this grade column. **Deprecated**: since 3200.10.0; no alternative exists since this field never fully functioned as described.  |
| `grading__scoringModel` | string ("Average" | "First" | "Highest" | "Last" | "Lowest") | No | The scoring model for the submitted grade column attempts.  \| Type      \| Description  \| --------- \| --------- \| \| Last \|  \| \| Highest \|  \| \| Lowest \|  \| \| First \|  \| \| Average \|  \|   |
| `availability__available` | string ("No" | "Yes") | No | Whether this grade column is available to students  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may view the grade column. \| \| No \| Students may not view the grade column. \|   |
| `grading__attemptsAllowed` | integer | No | Number of attempts allowed for the grade column. |
| `grading__anonymousGrading__type` | string ("AfterAllGraded" | "Date" | "None") | No | The type of AnonymousGrading settings for this Attempts based Grade Column.  \| Type      \| Description  \| --------- \| --------- \| \| None \| Indicates anonymous grading is not enabled. \| \| AfterAllGraded \| Indicates anonymized grades are released after all attempts have been graded. \| \| Date \| Indicates anonymized grades are released after a specified release date. \|   |
| `grading__anonymousGrading__releaseAfter` | string | No | Date after which grades are released from being anonymized, if AnonymousGrading type is "Date".  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Modify announcement details

**Slug:** `BLACKBOARD_MODIFY_COURSE_ANNOUNCEMENT_ACCESS`

This endpoint allows you to update an existing course announcement in the Blackboard Learn platform. It can modify the announcement's title, body content, draft status, and availability settings. The body content supports rich text formatting using BbML (Blackboard Markup Language), enabling the creation of visually appealing and structured announcements. Use this endpoint when you need to edit or refine an announcement's content, change its visibility, or update its publication status. It's particularly useful for correcting errors, adding new information, or adjusting the timing of announcement visibility to students.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | No | The message body of the Announcement. This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `draft` | boolean | No | An indication of whether or not the Announcement is in draft status. |
| `title` | string | No | The title of this Announcement. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `announcementId` | string | Yes | Announcementid |
| `availability__duration__end` | string | No | The date this Announcement stops being Available. |
| `availability__duration__type` | string ("Permanent" | "Restricted") | No | Indicates whether this Course Announcement is always displayed (Permanent) or if it is shown only between the Start and End dates (Restricted).  \| Type      \| Description  \| --------- \| --------- \| \| Permanent \| The Announcement will always be displayed. \| \| Restricted \| The Announcement will start being displayed on Duration.Start and stop being displayed on Duration.End \|   |
| `availability__duration__start` | string | No | The date this Announcement starts being Available. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Patch hierarchy node tool settings

**Slug:** `BLACKBOARD_PATCH_TOOL`

This endpoint allows you to update the settings of a specific tool within a node of Blackboard's institutional hierarchy. It provides granular control over tool availability and configuration for different user types (regular, guest, and observer). Use this endpoint when you need to modify existing tool settings, such as enabling/disabling a tool, locking its configuration, or adjusting its applicability for different user roles. This is particularly useful for managing tool access across various levels of an institution's structure, ensuring appropriate permissions and visibility for different user categories.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `nodeId` | string | Yes | The node ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|      |
| `toolId` | string | Yes | Toolid |
| `toolType` | string ("Content" | "Course" | "Organization") | Yes | Tooltype |
| `toolSettings__locked` | boolean | No | Whether the tool is locked. |
| `guestSettings__locked` | boolean | No | Whether the tool is locked. |
| `toolSettings__available` | boolean | No | Whether the tool is available. |
| `guestSettings__available` | boolean | No | Whether the tool is available. |
| `observerSettings__locked` | boolean | No | Whether the tool is locked. |
| `toolSettings__applicable` | boolean | No | Whether the available and locked settings are applicable. |
| `guestSettings__applicable` | boolean | No | Whether the available and locked settings are applicable. |
| `observerSettings__available` | boolean | No | Whether the tool is available. |
| `observerSettings__applicable` | boolean | No | Whether the available and locked settings are applicable. |
| `updateExistingOriginalCourses` | boolean | No | Scope of updated Tool Settings. By default if the parameter is not present or is set as false, the updated settings will be applied to new Original courses and all Ultra courses (new and existing). If present and value is true, the updated settings will be applied to all new and existing courses (Original and Ultra). **Since**: 3900.16.0  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Post discussion message in course

**Slug:** `BLACKBOARD_POST_ULTRA_COURSE_DISCUSSION_REPLY`

Posts a new message to a specific discussion within a Blackboard Learn course. This endpoint allows users to contribute to course discussions by adding new messages, supporting both general course discussions and group-specific discussions. It provides options for setting the message status, enabling features like draft saving and soft deletion. The endpoint is essential for facilitating student engagement and collaborative learning through structured, asynchronous communication within the Blackboard platform.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | Yes | Body of the message, in BbML format. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `status` | string ("Deleted" | "Draft" | "Published") | No | Status of the message.  \| Type      \| Description  \| --------- \| --------- \| \| Published \| Message is published in the discussion and visible for all users. \| \| Deleted \| Message is shown in the discussion as soft-deleted. \| \| Draft \| Message is stored as a draft and only visible for the author user. \|   |
| `groupId` | string | No | The Id of the group, only set for group discussions. |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `discussionId` | string | Yes | The discussion ID.  This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete child course association

**Slug:** `BLACKBOARD_REMOVE_CHILD_COURSE`

Deletes a specified child course from a parent course in the Blackboard learning management system. This endpoint is used to remove a sub-course or section from the main course structure, helping to organize and manage course hierarchies. It should be used when restructuring courses, removing outdated sections, or cleaning up course catalogs. This operation is permanent and cannot be undone, so it should be used with caution. The endpoint requires both the parent course ID and the child course ID to ensure precise deletion of the correct course relationship.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `childCourseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `separationStyle` | string ("completeSeparation" | "enrollmentsInBoth") | No | The method by which the courses will be separated.  Default: CompleteSeparation **Since**: 3900.4.0  \| Type      \| Description  \| --------- \| --------- \| \| completeSeparation \| Re-enable the child course with enrollments and remove all the child enrollments from the master course. \| \| enrollmentsInBoth \| Re-enable the child course with enrollments but leave all the child enrollments in the master course as well, marking them as unavailable. \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete user from course group

**Slug:** `BLACKBOARD_REMOVE_COURSE_GROUP`

This endpoint removes a specific user from a designated group within a course in Blackboard Learn. It is used when an administrator or instructor needs to adjust group membership, such as when a student changes project teams or is no longer part of a specific study group. The operation is final and will immediately revoke the user's access to group-specific resources and activities. It should be used cautiously, as removing a user from a group may affect their ability to participate in group-related coursework. This endpoint does not remove the user from the course itself, only from the specified group within the course.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete course announcement by id

**Slug:** `BLACKBOARD_REMOVE_COURSE_NOTICE`

This endpoint deletes a specific announcement within a course in the Blackboard Learn platform. It allows administrators or authorized users to remove outdated, incorrect, or unnecessary announcements from a course, helping to maintain clear and relevant communication. The operation is irreversible, so it should be used with caution. This tool is particularly useful for content clean-up, managing course information, and ensuring that students only see current and applicable announcements.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `announcementId` | string | Yes | Announcementid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete gradebook column in course

**Slug:** `BLACKBOARD_REMOVE_SPECIFIC_GRADE_FIELD`

Deletes a specific gradebook column from a course in Blackboard Learn. This endpoint allows instructors or administrators to remove a column from the gradebook, which may be necessary for course restructuring or correcting errors in grade calculations. It should be used with caution as the deletion is permanent and may affect overall grade calculations. This operation is available in both Ultra and Original experiences of Blackboard Learn. Note that this action cannot be undone, and all associated grade data for the column will be permanently removed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `onlyIfEmpty` | boolean | No | Onlyifempty |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete discussion message by id

**Slug:** `BLACKBOARD_REMOVE_ULTRA_COURSE_DISCUSSION_POST`

This endpoint allows for the deletion of a specific message within a discussion thread in a Blackboard course. It should be used when an instructor or authorized user needs to remove inappropriate, outdated, or incorrect content from a course discussion. The operation is irreversible, so it should be used with caution. This endpoint only deletes the specified message and does not affect other messages in the discussion or the discussion thread itself. It's important to note that deleting a parent message may have implications for its child messages or the structure of the discussion thread, depending on how Blackboard handles such deletions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `messageId` | string | Yes | The message ID.  This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `discussionId` | string | Yes | The discussion ID.  This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `deleteReplies` | boolean | No | Whether the DELETE request should delete the replies or not. If true, the message and its replies are hard-deleted. Otherwise, the message is soft-deleted. If the message doesn"t have replies, it is hard-deleted in any case. **Since**: 3900.27.0  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Obtain oauth2 token via post

**Slug:** `BLACKBOARD_REQUEST_TOKEN`

Obtains an OAuth2 token for authenticating and authorizing requests to the Blackboard API. This endpoint is essential for securing access to Blackboard's resources and should be used before making any API calls that require authentication. The token obtained from this endpoint is typically valid for a limited time and should be refreshed periodically. This endpoint supports both client credentials flow for server-to-server interactions and authorization code flow for user-centric operations. It's important to note that the token should be kept secure and not exposed to end-users or in client-side code.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | No | The authorization code granted by an end user for use by an application in Oauth2 Authorization Code Workflow  |
| `grant_type` | string ("authorization_code" | "client_credentials" | "refresh_token") | No | The Grant Type. Acceptable values include: "client_credentials", "authorization_code" (since 3200.7.0), or "refresh_token" (since 3200.7.0).  |
| `redirect_uri` | string | No | The redirectUri to send the end user to once an access token response is made in Oauth2 Authorization Code Workflow **Since**: 3200.7.0  |
| `code_verifier` | string | No | The code_verifier to be passed along with authorization code if PKCE standard was used to grant the authorization code. **Since**: 3700.4.0  |
| `refresh_token` | string | No | The refresh token granted for use by an application in Oauth2 Refresh Token Workflow **Since**: 3200.7.0  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Download course gradebook attempt file

**Slug:** `BLACKBOARD_RETRIEVE_STUDENT_SUBMISSION_FILE`

This endpoint allows for downloading a specific file associated with a student's attempt on an assignment within a Blackboard course. It retrieves the file content based on the provided course, attempt, and file identifiers. This tool should be used when access to the actual file submitted by a student is required, such as for grading, review, or archival purposes. It's particularly useful for assignments that involve file submissions like essays, projects, or any document-based work. The endpoint does not provide metadata about the file or attempt; it solely focuses on file retrieval.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `attemptId` | string | Yes | Attemptid |
| `attemptFileId` | string | Yes | Attemptfileid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update discussion message status

**Slug:** `BLACKBOARD_REVISE_ULTRA_COURSE_DISCUSSION_POST`

Updates a specific message within a course discussion on the Blackboard platform. This endpoint allows for modifying the status and/or content of an existing message. It can be used to publish drafts, soft-delete messages, or update the body text of a message. The update is partial, meaning you can modify either the status, the body, or both without affecting the other fields. This endpoint is particularly useful for moderating discussions, editing messages for clarity, or managing the visibility of messages within a course context. Note that updating a message's status may affect its visibility to other users in the discussion.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | No | Body of the message, in BbML format. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `status` | string ("Deleted" | "Draft" | "Published") | No | Status of the message.  \| Type      \| Description  \| --------- \| --------- \| \| Published \| Message is published in the discussion and visible for all users. \| \| Deleted \| Message is shown in the discussion as soft-deleted. \| \| Draft \| Message is stored as a draft and only visible for the author user. \|   |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `messageId` | string | Yes | The message ID.  This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `discussionId` | string | Yes | The discussion ID.  This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve course gradebook column attempts

**Slug:** `BLACKBOARD_ROLE_BASED_GRADE_ATTEMPT_VISIBILITY`

Retrieves attempt data for a specific gradebook column within a Blackboard course. This endpoint allows instructors and administrators to access detailed information about student attempts on assignments, tests, or other graded activities associated with the specified gradebook column. It is particularly useful for tracking student progress, analyzing performance trends, and gathering data for assessment purposes. The endpoint should be used when detailed information about individual student attempts is needed, such as for grading, providing feedback, or generating reports. It does not modify any data and is intended for read-only access to attempt information.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `userId` | string | No | Search for grade column attempts submitted by this user. This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:jsmith                     \|  \| userName   \| userName:jsmith                       \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|   **Since**: 3100.4.0  |
| `created` | string | No | Search for attempts with created date relative to this value. "createdCompare" may also be sent to control search behavior. **Since**: 3800.0.0  |
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `modified` | string | No | Search for attempts with modified date relative to this value. "modifiedCompare" may also be sent to control search behavior. **Since**: 3800.0.0  |
| `attemptDate` | string | No | Search for attempts with attempt date relative to this value. "attemptDateCompare" may also be sent to control search behavior. **Since**: 3800.0.0  |
| `createdCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "created" search parameter. Defaults to greaterOrEqual if not specified. **Since**: 3800.0.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `attemptStatuses` | string ("Abandoned" | "Canceled" | "Completed" | "InProgress" | "InProgressAgain" | "NeedsGrading" | "NeedsGradingAgain" | "NotAttempted" | "Suspended") | No | Search for grade column attempts with one of these statuses. **Since**: 3100.4.0  \| Type      \| Description  \| --------- \| --------- \| \| NotAttempted \| none of the students in a group has submitted an attempt; applies only to group assessments \| \| Abandoned \|   **Deprecated**: Since 9.1 SP8 unsupported status, undetermined behavior if used. \| \| InProgress \| attempt activity has commenced, but has not been submitted for grading \| \| Suspended \|   **Deprecated**: Since 9.1 SP8 unsupported status, undetermined behavior if used. \| \| Canceled \|   **Deprecated**: Since 9.1 SP8 unsupported status, undetermined behavior if used. \| \| NeedsGrading \| attempt has been submitted for grading, but has not been fully graded \| \| Completed \| a grade has been entered for the attempt \| \| InProgressAgain \| attempt has been graded, but more student activity occurred after the grade was entered; applies only to collaborative tools such as discussions \| \| NeedsGradingAgain \| additional student activity occurring after a grade was entered requires that the attempt be regraded; applies only to collaborative tools such as discussions \|   |
| `modifiedCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "modified" search parameter. Defaults to greaterOrEqual if not specified. **Since**: 3800.0.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |
| `attemptDateCompare` | string ("greaterOrEqual" | "lessThan") | No | Used alongside the "attemptDate" search parameter. Defaults to greaterOrEqual if not specified. **Since**: 3800.0.0  \| Type      \| Description  \| --------- \| --------- \| \| lessThan \|  \| \| greaterOrEqual \|  \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get course gradebook attempt

**Slug:** `BLACKBOARD_SECURE_GRADE_ATTEMPT_VERSION`

Retrieves detailed information about a specific attempt for a gradebook column in a Blackboard course. This endpoint allows instructors or authorized users to access individual student attempt data, including scores, submission dates, and potentially feedback. It's particularly useful for tracking student progress, reviewing specific submissions, or addressing grade inquiries. The endpoint should be used when detailed information about a single attempt is needed, rather than for bulk data retrieval or when an overview of all attempts is required.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `attemptId` | string | Yes | Attemptid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update admin node roles

**Slug:** `BLACKBOARD_SET_NODE_ADMIN_ASSOCIATION`

Updates the roles of an administrative user for a specific node within the institutional hierarchy of Blackboard. This endpoint allows you to modify the permissions and responsibilities of an admin user by assigning or changing their roles for a particular node. It is used when you need to adjust an admin's access or capabilities within a specific part of the institution's structure. The endpoint requires the node ID, user ID, and a list of roles to be assigned. It's important to note that this operation replaces the existing roles for the user at the specified node, so all desired roles should be included in the request.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `nodeId` | string | Yes | The node ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|      |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `nodeRoles` | array | Yes | List of roles the Admin User has within the Node. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete course by courseid

**Slug:** `BLACKBOARD_SYNCHRONOUS_COURSE_OR_ORG_REMOVAL`

The DeleteCourse endpoint permanently removes a specific course from the Blackboard Learn platform. This operation deletes all associated course content, assignments, and student data for the specified course. It should be used with extreme caution, typically only when a course is no longer needed and all necessary data has been backed up. This action is irreversible, so it's crucial to verify the courseId before execution. The endpoint is part of the v2 API, indicating it's a more recent version of the Blackboard Learn REST API.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `removeFiles` | boolean | No | Whether to delete course files.  Defaults to true. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Patch adaptiverelease criterion

**Slug:** `BLACKBOARD_UPDATE_ADAPTIVE_RELEASE_RULE_CRITERION`

Updates a specific criterion within an adaptive release rule for a course content item in Blackboard Learn. This endpoint allows instructors or administrators to modify the conditions under which course materials become available to students. It can be used to adjust release criteria based on dates, grades, user progress, or other factors supported by Blackboard's adaptive release feature. The endpoint should be used when fine-tuning content visibility rules or correcting existing criteria. It's important to note that this operation only modifies the specified criterion and does not affect other criteria within the same rule or other rules for the content item. Proper understanding of the adaptive release feature and careful consideration of the impact on student access is recommended before making changes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ruleId` | string | Yes | The rule ID. This should be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |
| `criterionId` | string | Yes | The adaptive release criterion ID. This should be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Modify system announcement details

**Slug:** `BLACKBOARD_UPDATE_ANNOUNCEMENT`

This endpoint allows you to update an existing System Announcement in Blackboard. It provides the ability to modify the announcement's title, content (using BbML formatting), availability settings, and display options. Use this endpoint when you need to change the content or visibility of a specific announcement, such as extending its duration, updating its message, or adjusting where it appears in the Blackboard interface. The update is partial, meaning you only need to include the fields you want to change. Be cautious when updating availability settings, as changes may immediately affect the announcement's visibility to users.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | No | The message body of the System Announcement. This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `title` | string | No | The title of this System Announcement. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `showAtLogin` | boolean | No | Whether this System Announcement should be displayed on the login page. |
| `showInCourses` | boolean | No | Whether this System Announcement should be displayed on courses. |
| `announcementId` | string | Yes | Announcementid |
| `availability__duration__end` | string | No | The date this Announcement stops being Available. |
| `availability__duration__type` | string ("Permanent" | "Restricted") | No | Indicates whether this System Announcement is always displayed (Permanent) or if it is shown only between the Start and End dates (Restricted).  \| Type      \| Description  \| --------- \| --------- \| \| Permanent \| The Announcement will always be displayed. \| \| Restricted \| The Announcement will start being displayed on Duration.Start and stop being displayed on Duration.End \|   |
| `availability__duration__start` | string | No | The date this Announcement starts being Available. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update attendance record

**Slug:** `BLACKBOARD_UPDATE_ATTENDANCE_RECORD`

Update the Course Meeting Attendance data for the given Course/Organization. The "course.attendance.MODIFY" entitlement is required to update a Course Meeting Attendance. The "course.attendance.VIEW" entitlement is required to view a Course Meeting attendance. **Since**: 3500.7.0

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `status` | string ("Absent" | "Excused" | "Late" | "Present") | No | The attendance status of the user.  \| Type      \| Description  \| --------- \| --------- \| \| Absent \|  \| \| Late \|  \| \| Present \|  \| \| Excused \|  \|   |
| `userId` | string | Yes | The learn external id of the user. |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `meetingId` | string | Yes | The primary id of the meeting. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update attendance records

**Slug:** `BLACKBOARD_UPDATE_ATTENDANCE_RECORDS`

Creates or updates attendance records for the meeting for all users in the course. User required both of the entitlements below. If the user does not have the required entitlements,no records are created or modified. Entitlement | User Access ------------|----------- course.attendance.CREATE | Create Course/Organization Course Meeting Attendance course.attendance.MODIFY | Update Course/Organization Meeting Attendance **Since**: 3500.7.0

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `status` | string ("Absent" | "Excused" | "Late" | "Present") | Yes | The attendance status of the user.  \| Type      \| Description  \| --------- \| --------- \| \| Absent \|  \| \| Late \|  \| \| Present \|  \| \| Excused \|  \|   |
| `userId` | string | Yes | The learn external id of the user. |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `meetingId` | string | Yes | The primary id of the meeting. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Patch calendar item by type and id

**Slug:** `BLACKBOARD_UPDATE_CALENDAR_ITEM`

This endpoint allows you to update an existing calendar item in the Blackboard system. It can be used to modify various aspects of an event, assignment, or other calendar entries, including basic details, recurrence settings, and LTI (Learning Tools Interoperability) integration. The endpoint is particularly useful for making changes to scheduled items, adjusting dates, updating descriptions, or linking to external learning resources. It supports both one-time and recurring events, with detailed options for setting recurrence patterns. Note that some properties, such as dynamicCalendarItemProps, are read-only and cannot be modified through this endpoint.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `end` | string | No | End date of the calendar item either in the past if the calendar item is for an event that"s already end OR in the future if it"s for an event to end in the future. This is always set and should occur after the start date.  |
| `start` | string | No | Start date of the calendar item either in the past if the calendar item is for an event that"s already started OR in the future if it"s for an event to start in the future. This is always set and should occur before the end date.  |
| `title` | string | No | Title of the calendar item. Title length cannot exceed 255 characters. |
| `location` | string | No | Location of the calendar item and it cannot exceed 1024 characters. |
| `description` | string | No | Description of the calendar item. |
| `updateSeries` | boolean | No | update the series calendar items or just one calendar item. true - update the        entire series, false - update a single calendar item. Defaults to false. When updating an entire series the full recurrence        object must be populated just as if creating a new calendar series. If updating a single calendar entry the recurrence        must not be specified.  |
| `calendarItemId` | string | Yes | Calendaritemid |
| `disableResizing` | boolean | No | Whether resizing of the calendar item should NOT be allowed. |
| `calendarItemType` | string ("Course" | "GradebookColumn" | "Institution" | "OfficeHours" | "Personal") | Yes | Calendaritemtype |
| `recurrence__count` | integer | No | Recurrence count indicating how many times the calendar item should be repeated. Either this count OR the "until" date is/"should be" set. When creating a calendar item, "until" date will be used if both "until" date and the count are set.  |
| `recurrence__until` | string | No | The date the calendar item should be repeated until. Either this "until" date OR the count is/"should be" set. When creating a calendar item, "until" date will be used if both "until" date and the count are set.  |
| `recurrence__interval` | integer | No | Interval between recurrences depends on the repeating type. For example, if the calendar times should be repeated every three weeks, you need set interval to 3 as well as frequency to "Weekly". Minimum and Maximum allowed Intervals are 1 and 100 respectively.  |
| `recurrence__weekDays` | array | No | This property is used in conjunction with the "Weekly" frequency and it indicates the days of the week the calendar item should be repeated on.  |
| `recurrence__frequency` | string ("Daily" | "Monthly" | "Weekly") | No | Frequency of the calendar item repeated.  \| Type      \| Description  \| --------- \| --------- \| \| Monthly \|  \| \| Weekly \|  \| \| Daily \|  \|   |
| `recurrence__repeatDay` | string ("Friday" | "Monday" | "Saturday" | "Sunday" | "Thursday" | "Tuesday" | "Wednesday") | No | For monthly recurring event, repeat by day of week.  \| Type      \| Description  \| --------- \| --------- \| \| Sunday \|  \| \| Monday \|  \| \| Tuesday \|  \| \| Wednesday \|  \| \| Thursday \|  \| \| Friday \|  \| \| Saturday \|  \|   |
| `ltiLaunchDeepLink__url` | string | No | URL to launch of the Learning Tools Interoperability link |
| `ltiLaunchDeepLink__uuid` | string | No | Unique Id of the Learning Tools Interoperability link |
| `recurrence__originalEnd` | string | No | The original end date for the calendar item. |
| `ltiLaunchDeepLink__title` | string | No | Title of the Learning Tools Interoperability link |
| `recurrence__repeatBroken` | boolean | No | Calendar item that"s repeated is part of a recurring series of calendar events but the item has been changed since its original creation. In other words, the calendar item has been modified to no longer align with the recurring series (day/time changed for example) of events. This can only be true if the calendar item is repeatable.  |
| `recurrence__monthPosition` | integer | No | This property is used in conjunction with the "Monthly" frequency and it indicates that the calendar item is/"should be" repeated on nth occurrence of "repeatDay" in the month. Valid values for "monthPosition" are integers in the range of -1 and 4 inclusive: -1 for the last occurrence, 1 for the first occurrence, 2 for the second occurrence, and so on. 0 is not used.  |
| `recurrence__originalStart` | string | No | The original start date for the calendar item. |
| `recurrence__monthRepeatDay` | integer | No | This property is used in conjunction with the "Monthly" frequency and it indicates on which day of the month the calendar item is/"should be" repeated on. The valid values are valid month days, that is, 1 to 31. Either this OR both "monthPosition" and "repeatDay" should be set to create a recurring calendar item with "Monthly" frequency.  |
| `dynamicCalendarItemProps__gradable` | boolean | No | The dynamic calendar item can be graded and the current user (in context) has permission/entitlement to grade attempts for the object represented by this calendar item.  |
| `ltiLaunchDeepLink__placementHandle` | string | No | Placement handle Id of the Learning Tools Interoperability link |
| `dynamicCalendarItemProps__eventType` | string | No | Returns a human readable string describing the type of calendar item represented (e.g. assignment, test, etc.).  |
| `ltiLaunchDeepLink__customParameters` | object | No | Custom parameters of the Learning Tools Interoperability link |
| `dynamicCalendarItemProps__categoryId` | string | No | Returns the gradeableItem categoryId value .it is only set if the calendar event is dynamically created based on a single grade book column  |
| `dynamicCalendarItemProps__attemptable` | boolean | No | The dynamic calendar item can be attempted (can have attempts made against it) and the current user (in context) has permission/entitlement to grade attempts for the object represented by this calendar item.  |
| `dynamicCalendarItemProps__dateRangeLimited` | boolean | No | The dynamic calendar item is only visible during a specific windows of time.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update category details by type

**Slug:** `BLACKBOARD_UPDATE_CATEGORY`

Updates specific details of a category in the Blackboard catalog system. This endpoint allows modification of various category attributes such as title, description, front page visibility, availability, access restrictions, and associated institution roles. It's used to manage and organize the catalog structure, controlling how categories are presented and accessed within the Blackboard learning environment. The endpoint requires specifying both the category type and ID in the URL path to target the correct category for updates. It's particularly useful for administrators or content managers who need to refine category settings or adjust access permissions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | No | The title of category |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `available` | boolean | No | Boolean indicating whether or not the category is available |
| `frontPage` | boolean | No | Boolean indicating whether or not the category should appear on the catalog front page  |
| `categoryId` | string | Yes | Categoryid |
| `restricted` | boolean | No | Boolean indicating whether or not category is available to all roles, or restricted to a specific set of roles.  |
| `description` | string | No | The description of the category |
| `categoryType` | string ("Course" | "Organization") | Yes | Categorytype |
| `institutionRoleIds` | array | No | The roles for which this category is available, if category is set to restricted. Not populated for lists of categories, only for individual category  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update attempt status in gradebook

**Slug:** `BLACKBOARD_UPDATE_COLUMN_ATTEMPT`

This endpoint allows for updating specific attributes of a gradebook attempt for a particular course, column, and attempt ID. It is used to modify various aspects of a student's submission, including its status, score, feedback, and grading properties. The PATCH operation enables partial updates, allowing instructors to change only the necessary fields without affecting others. This tool is particularly useful for managing the grading process, providing feedback to students, and handling special grading scenarios such as exemptions or multiple attempts. It should be used when there's a need to update any information related to a specific gradebook entry, but not for creating new attempts or retrieving attempt information. Note that some status values are deprecated, and changing the reconciliationMode requires also providing a new score.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `text` | string | No | The text grade associated with this attempt. |
| `notes` | string | No | The instructor notes associated with this attempt. |
| `score` | integer | No | The score associated with this attempt. |
| `exempt` | boolean | No | Whether the score associated with this attempt is ignored when computing the user"s grade for the associated grade column.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `status` | string ("Abandoned" | "Canceled" | "Completed" | "InProgress" | "InProgressAgain" | "NeedsGrading" | "NeedsGradingAgain" | "NotAttempted" | "Suspended") | No | The status of this attempt.  \| Type      \| Description  \| --------- \| --------- \| \| NotAttempted \| none of the students in a group has submitted an attempt; applies only to group assessments \| \| Abandoned \|   **Deprecated**: Since 9.1 SP8 unsupported status, undetermined behavior if used. \| \| InProgress \| attempt activity has commenced, but has not been submitted for grading \| \| Suspended \|   **Deprecated**: Since 9.1 SP8 unsupported status, undetermined behavior if used. \| \| Canceled \|   **Deprecated**: Since 9.1 SP8 unsupported status, undetermined behavior if used. \| \| NeedsGrading \| attempt has been submitted for grading, but has not been fully graded \| \| Completed \| a grade has been entered for the attempt \| \| InProgressAgain \| attempt has been graded, but more student activity occurred after the grade was entered; applies only to collaborative tools such as discussions \| \| NeedsGradingAgain \| additional student activity occurring after a grade was entered requires that the attempt be regraded; applies only to collaborative tools such as discussions \|   |
| `columnId` | string | Yes | Columnid |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `feedback` | string | No | The instructor feedback associated with this attempt. |
| `attemptId` | string | Yes | Attemptid |
| `studentComments` | string | No | The student comments associated with this attempt. |
| `studentSubmission` | string | No | The student submission text associated with this attempt. |
| `reconciliationMode` | string ("Average" | "Custom" | "Highest" | "Lowest") | No | The reconciliation mode to use when reconciling the attempt grade.  When modifying reconciliationMode, score is also required.  A new score will not be calculated based on the reconciliationMode **Since**: 3700.2.0  \| Type      \| Description  \| --------- \| --------- \| \| Average \|  \| \| Highest \|  \| \| Lowest \|  \| \| Custom \|  \|   |
| `attemptReceipt__receiptId` | string | No | The ID of the receipt. |
| `groupAttemptStudentComments` | string | No | The group attempt student comments associated with this attempt. |
| `attemptReceipt__submissionDate` | string | No | The date the associated attempt was submitted. |
| `attemptReceipt__submissionTotalSize` | integer | No | The total size of the submission in bytes **Since**: 3900.37.0 |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Patch grade information for user

**Slug:** `BLACKBOARD_UPDATE_COLUMN_GRADE`

The UpdateGrade endpoint allows instructors to modify various aspects of a student's grade for a specific course and gradebook column in the Blackboard Learning Management System. This PATCH operation enables overriding grades, adding instructor notes and feedback, marking grades as exempt from course grade calculations, and associating predefined grade notations. It's particularly useful for handling manual grade entries, overriding automatically calculated grades, and managing special grading circumstances. The endpoint should be used when there's a need to adjust individual student grades outside of the standard grading process, provide detailed feedback, or apply special grading considerations. It's important to note that this endpoint modifies existing grade entries and does not create new ones; it should not be used for initial grade submissions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `text` | string | No | The overridden text representation of this grade. This field is only used for overriding the grade via text value  |
| `notes` | string | No | The instructor notes associated with this grade. This notes field is used for grades on manual grade columns.   That is, when column.grading.type = Manual.  It is also used when column.grading.type = Attempts and the grade has been manually overridden.  |
| `score` | integer | No | The overridden score of this grade. This field is only used for overriding the grade  |
| `exempt` | boolean | No | Whether the score associated with this grade is ignored when computing the course grade.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `feedback` | string | No | The instructor feedback associated with this grade.  This feedback is used for grades on manual grade columns.   That is, when column.grading.type = Manual.  It is also used when column.grading.type = Attempts and the grade has been manually overridden.  |
| `gradeNotationId` | string | No | The Id of a Grade Notation which can be optionally associated with this Grade. If a Grade Notation is specified for this Grade, then the DisplayGrade"s Text attribute will contain the Grade Notation"s Description.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Patch course content

**Slug:** `BLACKBOARD_UPDATE_CONTENT`

This endpoint allows you to update existing content within a specific Blackboard Learn course. It provides extensive control over content properties, including title, body, description, position, availability, and more. Use this endpoint when you need to modify course content attributes, reorganize content structure, or adjust content visibility and access settings. The endpoint is particularly useful for content management tasks such as updating content details, moving content between folders, setting adaptive release rules, or changing content types. Note that while you can update various aspects of the content, you cannot create new content or delete existing content using this endpoint. Be aware of the specific content handler types supported and their respective documentation when dealing with specialized content types.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | No | The body text associated with this content. This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `title` | string | No | The title or name of this content. Typically shown as the main text to click in the course outline when accessing the content.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `subtype` | string | No | Optional assessment subtype for further differentiation. For example, a test can have the subtype "assignment" in Ultra, alongside AI conversations and knowledge checks, ensuring type-agnostic categorization.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `parentId` | string | No | The ID of the content"s parent.  Note that top-level contents do not have parents. The "parentId" field is a writable field as of the Bb Learn 3200.6.0 release.  Specifying a new value in PATCH requests allows the Content object to be moved from one parent to another.  |
| `position` | integer | No | The position of this content within its parent folder. Position values are zero-based (the first element has a position value of zero, not one). Default position is last in the list of child contents under the parent.  |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |
| `reviewable` | boolean | No | Indicates whether Review Status is enabled for this content. Content items with review status enabled can be marked as reviewed by students in classic courses and content items with review status enabled in Ultra are either in a Forced Sequence or content that should be counted towards the progress tracking feature as of 3900.19 This can be used to track performance and in Adaptive Release rules to control the release of other content. **Since**: 3700.15.0  |
| `description` | string | No | The short description of this content. This field is not used in Classic courses.  For Ultra courses this is used to show information directly on the course outline.  |
| `launchInNewWindow` | boolean | No | Indicates whether the content is going to open in a new window. **Since**: 3800.10.0  |
| `contentHandler__id` | string | No | The content handler"s ID. Publicly supported handlers:   \| ID                                 \| Documentation                   \| Since     \|  \|------------------------------------\|---------------------------------\|-----------\|  \| resource/x-bb-document             \| ContentItemTOPubV1              \|  3000.1.0 \|  \| resource/x-bb-externallink         \| ExternalLinkTOPubV1             \|  3000.1.0 \|  \| resource/x-bb-folder               \| ContentFolderTOPubV1            \|  3000.1.0 \|  \| resource/x-bb-courselink           \| CourseLinkTOPubV1               \|  3100.5.0 \|  \| resource/x-bb-forumlink            \| DiscussionLinkTOPubV1           \|  3100.6.0 \|  \| resource/x-bb-blti-link            \| BasicLTITOPubV1                 \|  3200.6.0 \|  \| resource/x-bb-file                 \| ContentFileTOPubV1              \|  3200.6.0 \|  \| resource/x-bb-asmt-test-link       \| TestLinkTOPubV1                 \|  3300.5.0 \|  \| resource/x-bb-assignment           \| AssignmentTOPubV1               \|  3400.9.0 \|  \| resource/x-bb-blti-bltiplacement-* \| BasicLTIPlacementContentTOPubV1 \|  3600.0.0 \|   For handlers that are not publicly supported yet, their ID will be shown here, and updates to common content attributes are allowed, but extended handler-specific attributes will not be visible.  |
| `allowChildCourseContent` | boolean | No | By default, child courses of a cross listed course can not have their contents modified.  The allowChildCourseContent parameter can be sent as true in order to bypass this validation.  |
| `availability__available` | string ("No" | "PartiallyVisible" | "Yes") | No | Whether the content is currently available to students.  Instructors can always access the content.  If set to "PartiallyVisible", the title will be available to students but the body will not.  Defaults to Yes.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \|  \| \| No \|  \| \| PartiallyVisible \|  \|   |
| `availability__allowGuests` | boolean | No | Whether this content is available to users with the "guest" role. Defaults to true.  |
| `availability__allowObservers` | boolean | No | Whether or not "observers" are allowed access to this Content. Defaults to true. **Since**: 3900.31.0  |
| `availability__adaptiveRelease__end` | string | No | The date when this content will no longer be available to students. |
| `availability__adaptiveRelease__start` | string | No | The date when this content will become available to students. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Patch course details by id

**Slug:** `BLACKBOARD_UPDATE_COURSE`

Updates an existing course in Blackboard Learn with the provided information. This endpoint allows modification of various course attributes including basic details, availability settings, enrollment options, and localization preferences. It's particularly useful for administrators or instructors who need to adjust course settings after initial creation, such as changing the course name, updating its availability, or modifying enrollment options. The endpoint supports partial updates, meaning only the fields that need to be changed should be included in the request body. Note that some settings, like allowing guests or observers, are only modifiable for Classic courses, while others apply to both Classic and Ultra courses. Care should be taken when using the 'closedComplete' status, as it can limit further updates, especially for Ultra courses.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The name of the course. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `termId` | string | No | The ID of the term associated to this course. This may optionally be the term"s externalId using the syntax "externalId:spring.2016".  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `externalId` | string | No | An optional externally-defined unique ID for the course. Defaults to the courseId. Formerly known as "batchUid".  |
| `locale__id` | string | No | The locale of this course. |
| `allowGuests` | boolean | No | Whether guests (users with the role guest) are allowed access to the course. Modifiable only for Classic course. Defaults to true for Classic Courses and false for Ultra Courses.  |
| `description` | string | No | The description of the course. |
| `dataSourceId` | string | No | The ID of the data source associated with this course. This may optionally be the data source"s externalId using the syntax "externalId:math101".  |
| `locale__force` | boolean | No | Whether students are forced to use the course"s specified locale. |
| `allowObservers` | boolean | No | Whether observers are allowed access to the course. Modifiable only for Classic course. Defaults to false. **Since**: 3900.31.0  |
| `closedComplete` | boolean | No | This status does not affect availability of the course for viewing in any way. closedComplete is valid for both Ultra and Classic courses. If an Ultra course is in closedComplete mode, updates are not possible. For a Classic course in closedComplete mode, updates are still possible (through Web UI but not through REST i.e. closed is enforced for original courses when updated through REST the same way Ultra courses are blocked) but new notifications are not generated.  |
| `enrollment__end` | string | No | The date on which enrollment in this course ends. May only be set if enrollment.type is SelfEnrollment.  |
| `enrollment__type` | string ("EmailEnrollment" | "InstructorLed" | "SelfEnrollment") | No | Specifies the enrollment options for the course. Defaults to InstructorLed.  \| Type      \| Description  \| --------- \| --------- \| \| InstructorLed \| Enrollment tasks for the course can only performed by the instructor \| \| SelfEnrollment \| Instructors have the ability to enroll users, and students can also enroll themselves in the course \| \| EmailEnrollment \| Instructors have the ability to enroll users, and students can email requests to the instructor for enrollment \|   |
| `enrollment__start` | string | No | The date on which enrollments are allowed for the course. May only be set if enrollment.type is SelfEnrollment.  |
| `enrollment__accessCode` | string | No | The enrollment access code associated with this course. May only be set if enrollment.type is SelfEnrollment.  |
| `availability__available` | string ("Disabled" | "No" | "Term" | "Yes") | No | Whether the course is currently available to students. Instructors can always access the course if they have "Access unavailable course" entitlement. If set to "Term", the course"s parent term availability settings will be used.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may access the course. \| \| No \| Students may not access the course. \| \| Disabled \| Disabled by the SIS. Students may not access the course. @since 3100.0.0 \| \| Term \| Availability is inherited from the term settings. Requires a termId be set. \|   |
| `availability__duration__end` | string | No | The date this course ends. May only be set if availability.duration.type is DateRange.  |
| `availability__duration__type` | string ("Continuous" | "DateRange" | "FixedNumDays" | "Term") | No | The intended length of the course. Possible values are: - Continuous: The course is active on an ongoing basis. This is the default. - DateRange: The course will only be available between specific date ranges. - FixedNumDays: The course will only be available for a set number of days. - Term: The course"s parent term duration settings will be used.  \| Type      \| Description  \| --------- \| --------- \| \| Continuous \| Course is active on an ongoing basis. \| \| DateRange \| Course is only intended to be available between specific date ranges \| \| FixedNumDays \| Course is only available for a set number of days \| \| Term \| Course availablity is dictated by its associated term \|   |
| `availability__duration__start` | string | No | The date this course starts. May only be set if availability.duration.type is DateRange.  |
| `availability__duration__daysOfUse` | integer | No | The number of days this course can be used. May only be set if availability.duration.type is FixedNumDays.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Patch course meeting details

**Slug:** `BLACKBOARD_UPDATE_COURSE_MEETING`

This endpoint allows you to update the details of a specific meeting within a course in the Blackboard learning management system. It uses a PATCH request to modify one or more attributes of an existing meeting, such as its title, description, start and end times, or associated external link. This tool is particularly useful for making changes to scheduled meetings, correcting information, or updating virtual meeting links without having to recreate the entire meeting entry. When using this endpoint, you can selectively update only the fields that need to be changed, leaving other attributes untouched. Note that you must have appropriate permissions within the Blackboard system to modify course meetings, and changes made through this API will be reflected in the course's meeting schedule visible to students and instructors.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `end` | string | No | The end time of meeting |
| `start` | string | No | The start time of meeting |
| `title` | string | No | The title of the meeting |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The primary ID of the course. |
| `meetingId` | string | Yes | Meetingid |
| `description` | string | No | The description of the meeting |
| `externalLink` | string | No | The externalLink of course meeting |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Patch data source by external id

**Slug:** `BLACKBOARD_UPDATE_DATA_SOURCE`

This endpoint allows for updating specific attributes of an existing data source in the Blackboard system. It uses the PATCH method to apply partial modifications to a data source identified by its unique dataSourceId. The primary use case is to update the external ID or description of a data source, enabling better synchronization with external systems and improved documentation within Blackboard. This endpoint should be used when there's a need to modify data source metadata without changing its core functionality or relationships within the system. It's particularly useful for maintaining accurate and up-to-date information about data sources used in educational institutions integrated with Blackboard.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `externalId` | string | No | An externally-defined unique ID for the data source. Formerly known as "batchUid".  |
| `description` | string | No | The description of the data source. |
| `dataSourceId` | string | Yes | The data source ID.  This may be the primary ID, or the secondary ID prefixed with the ID type.   \| ID type    \| Example            \|  \|------------\|--------------------\|  \| primary    \| _123_1             \|  \| externalId \| externalId:math101 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update course discussion details

**Slug:** `BLACKBOARD_UPDATE_DISCUSSION`

Updates a specific discussion forum within a Blackboard Learn course. This endpoint allows for partial updates to discussion properties such as title, availability, grading options, and the main topic content. It is used when modifying existing discussions without creating a new one or altering read-only metadata. The endpoint supports BbML formatting for rich text content in the topic body. Note that this operation only affects the discussion settings and main topic; it does not modify individual replies or nested messages within the discussion thread.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | No | Title given to the discussion forum |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `gradable` | boolean | No | Indicates if the discussion allows grading |
| `available` | boolean | No | Indicates if the discussion is available |
| `topic__id` | string | No | The Id of the message. |
| `topic__body` | string | No | Body of the message, in BbML format. |
| `discussionId` | string | Yes | The discussion ID.  This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `topic__isRead` | boolean | No | Whether the user in context has read the message. |
| `topic__status` | string ("Deleted" | "Draft" | "Published") | No | Status of the message.  \| Type      \| Description  \| --------- \| --------- \| \| Published \| Message is published in the discussion and visible for all users. \| \| Deleted \| Message is shown in the discussion as soft-deleted. \| \| Draft \| Message is stored as a draft and only visible for the author user. \|   |
| `topic__userId` | string | No | The Id of the user who created the message. |
| `topic__groupId` | string | No | The Id of the group, only set for group discussions. |
| `topic__editDate` | string | No | Last Date in which the message was edited. |
| `topic__parentId` | string | No | The Id of the parent message. |
| `topic__postDate` | string | No | Date in which the message was posted. |
| `topic__threadId` | string | No | The Id of the message thread. |
| `topic__givenName` | string | No | Given name of the user who created the message. |
| `topic__familyName` | string | No | Family name of the user who created the message. |
| `topic__createdDate` | string | No | Date in which the message was created. |
| `topic__discussionId` | string | No | The Id of the discussion. |
| `topic__modifiedDate` | string | No | Last Date in which the message was modified. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update lti domain configuration

**Slug:** `BLACKBOARD_UPDATE_DOMAIN_CONFIG`

This endpoint allows updating an existing LTI (Learning Tools Interoperability) domain configuration in the Blackboard Learn platform. It is used to modify various settings related to LTI tool integration, including domain information, security settings, user data sharing preferences, and service permissions. The endpoint is particularly useful when changes need to be made to an existing LTI tool configuration, such as updating the primary domain, modifying data sharing settings, or adjusting service permissions. It provides fine-grained control over how the LTI tool interacts with Blackboard Learn and what data it can access. This endpoint should be used carefully, as changes to these settings can significantly impact the functionality and security of the LTI integration.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `key` | string | No | Key |
| `name` | string | No | The name of the domain configuration **Since**: 3900.23.0 |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `secret` | string | No | Secret |
| `status` | string ("Approved" | "Excluded" | "NeedsApproval") | No | Enum that indicates if the set of domains associated with this config can or cannot be linked to.  \| Type      \| Description  \| --------- \| --------- \| \| Approved \|  \| \| Excluded \|  \| \| NeedsApproval \|   **Since**: 3300.9.0 \|   |
| `jwksUrl` | string | No | The JWKS URL of the tool, if specified. It is optional and can be null **Since**: 3800.17.0  |
| `clientId` | string | No | The client id associated with this configuration. Only applicable for LTI versions 1.3+, excluding 2.0 **Since**: 3600.0.0  |
| `domainId` | string | Yes | Domainid |
| `sendName` | boolean | No | Whether the user"s name can be sent to the LTI tool provider. |
| `sendRole` | boolean | No | Whether the user"s role can be sent to the LTI tool provider. |
| `publicKey` | string | No | The public key of the tool, if specified. It is optional and can be null **Since**: 3800.17.0  |
| `sendEmail` | boolean | No | Whether the user"s email address can be sent to the LTI tool provider. |
| `description` | string | No | The description of the domain configuration **Since**: 3900.23.0 |
| `primaryDomain` | string | No | The primary domain name associated with this configuration. |
| `useSplashScreen` | boolean | No | Whether a splash screen is shown before launching the LTI link. Cannot be set to true if allowMembershipService is true.  |
| `customParameters` | object | No | The custom parameters for the given domain. |
| `sendUserDataType` | string ("Always" | "Never" | "Sslonly") | No | Enum indicating when user data can be sent to the LTI tool provider.  \| Type      \| Description  \| --------- \| --------- \| \| Never \|  \| \| Sslonly \|  \| \| Always \|   **Since**: 3300.9.0 \|   |
| `allowGradesService` | boolean | No | Whether the Tool is allowed to call the LTI Assignment and Grades service and manage line items and grades. **Since**: 3600.0.0  |
| `allowMembershipService` | boolean | No | Whether the Tool is allowed to call the LTI Names and Roles service and get the course memberships.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update gradebook column

**Slug:** `BLACKBOARD_UPDATE_GRADE_COLUMN`

This endpoint updates a specific grade column in a course's gradebook. It allows modification of column details, scoring settings, availability, grading options, and rubric associations. Use it to adjust existing columns for changes in course structure or grading policies. Note that some fields are version-specific or limited by course type (Classic vs Ultra).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The name of the grade column. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `columnId` | string | Yes | The grade column ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.  The ID may also be the keyword "finalGrade", which indicates that the course"s final grade column is specified.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:column1                    \|  \| finalGrade \| finalGrade                            \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `externalId` | string | No | The externalId for this grade column |
| `description` | string | No | The description of the grade column. |
| `displayName` | string | No | The display name of the grade column. Only applicable for Classic courses. Ultra courses will simply use the `name` field. **Since**: 3300.2.0  |
| `grading__due` | string | No | The date on which attempts are due for the grade column. |
| `externalGrade` | boolean | No | Whether this grade column is an external grade column. |
| `externalToolId` | string | No | The externalId for this grade column **Since**: 3500.2.0 |
| `score__possible` | integer | No | The points possible for this grade column. |
| `formula__aliases` | object | No | Aliases |
| `formula__formula` | string | No | Formula |
| `grading__schemaId` | string | No | The ID of the grade schema associated with this grade column. Mutable since 3400.2.0 **Since**: 3200.13.0  |
| `gradebookCategoryId` | string | No | The gradebook category ID for the grade column. **Since**: 3400.2.0 |
| `grading__scoringModel` | string ("Average" | "First" | "Highest" | "Last" | "Lowest") | No | The scoring model for the submitted grade column attempts.  \| Type      \| Description  \| --------- \| --------- \| \| Last \|  \| \| Highest \|  \| \| Lowest \|  \| \| First \|  \| \| Average \|  \|   |
| `includeInCalculations` | boolean | No | Indicates whether or not this column is included in gradebook calculations. Cannot be set for Ultra courses. Default: true **Since**: 3800.4.0  |
| `availability__available` | string ("No" | "Yes") | No | Whether this grade column is available to students  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may view the grade column. \| \| No \| Students may not view the grade column. \|   |
| `grading__attemptsAllowed` | integer | No | Number of attempts allowed for the grade column. |
| `showStatisticsToStudents` | boolean | No | Indicates whether or not column statistics are shown to students. Read-only for Ultra courses. Default: false **Since**: 3800.4.0  |
| `grading__rubricAssociations` | array | No | The list of Rubric Associations |
| `grading__anonymousGrading__type` | string ("AfterAllGraded" | "Date" | "None") | No | The type of AnonymousGrading settings for this Attempts based Grade Column.  \| Type      \| Description  \| --------- \| --------- \| \| None \| Indicates anonymous grading is not enabled. \| \| AfterAllGraded \| Indicates anonymized grades are released after all attempts have been graded. \| \| Date \| Indicates anonymized grades are released after a specified release date. \|   |
| `grading__anonymousGrading__releaseAfter` | string | No | Date after which grades are released from being anonymized, if AnonymousGrading type is "Date".  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Patch grade notation for course

**Slug:** `BLACKBOARD_UPDATE_GRADE_NOTATION`

This endpoint allows you to update an existing grade notation for a specific course in the Blackboard learning management system. It's used to modify the performance code and/or description associated with a grade notation in the course's gradebook. This tool is particularly useful for administrators or instructors who need to adjust grading scales or clarify the meaning of certain grade notations. The update is performed by specifying the course ID and grade notation ID in the path, and providing the new code and/or description in the request body. Note that this endpoint only updates existing grade notations and cannot be used to create new ones or delete existing notations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | No | The performance code associated with the grade notation. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `description` | string | No | The description of the grade notation. |
| `gradeNotationId` | string | Yes | Gradenotationid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update grading period info

**Slug:** `BLACKBOARD_UPDATE_GRADING_PERIOD`

Updates a specific grading period within a course's gradebook in the Blackboard Learn system. This endpoint allows for modification of various attributes of an existing grading period, including its title, description, position in the gradebook, date settings, and temporal coverage. It's used when course instructors or administrators need to adjust grading period details after initial creation, such as extending deadlines or reorganizing the gradebook structure. The endpoint provides flexibility in updating individual fields without requiring all parameters to be specified. It's particularly useful for managing the chronological structure of a course and associating gradable items with specific time frames.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `end` | string | No | If start and end are set, and start is before end, these define temporal  coverage of grading period which may be used to associate GradableItems (Columns) by due date. End dates will be persisted as ending at  23:59:59 on the submitted day.  |
| `start` | string | No | If start and end are set, and start is before end, these define temporal  coverage of grading period which may be used to associate GradableItems (Columns) by due date. Start dates will be persisted as starting at  00:00:00 on the submitted day.  |
| `title` | string | No | The title of the grading period. Length is limited to 64 characters. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `dateMode` | string ("DoNotUseDates" | "UseDates") | No | Property may be set to DoNotUseDates to explicitly blank dates,  in which case startDate and endDate are ignored; otherwise set to  UseDates; in this case startDate and endDate must be included and valid.  \| Type      \| Description  \| --------- \| --------- \| \| DoNotUseDates \| Do not use dates \| \| UseDates \| Use dates \|   |
| `periodId` | string | Yes | Periodid |
| `position` | integer | No | The relative position of the grading period to other grading periods when viewed in the grade book.  |
| `associate` | boolean | No | Associate |
| `description` | string | No | The description of the grading period. Length is limited to 1000 characters.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update course group information

**Slug:** `BLACKBOARD_UPDATE_GROUP`

Updates an existing group within a specified course in the Blackboard Learn system. This endpoint allows for modification of various group properties including its external ID, name, description, availability status, and enrollment settings. It's particularly useful for adjusting group configurations after initial creation, such as changing visibility, updating enrollment limits, or modifying the signup process. The endpoint supports rich text formatting through BbML for descriptions, enabling detailed and well-formatted group information. Use this when you need to alter any aspect of an existing group's setup or presentation to students within a course.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The title of the group. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `externalId` | string | No | An externally-defined unique ID for the group. Defaults to a random UUID if not provided during create.  |
| `description` | string | No | The description of the group. This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `enrollment__limit` | integer | No | The maximum allowed enrollment size for self enrolled groups. |
| `availability__available` | string ("No" | "SignupOnly" | "Yes") | No | Whether the Group is currently available to students.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may access the group. \| \| No \| Students may not access the group. \| \| SignupOnly \| Students may only signup and see the group listed, not yet access it. \|   |
| `enrollment__signupSheet__name` | string | No | The name of the signup sheet |
| `enrollment__signupSheet__description` | string | No | The description of the signup sheet This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `enrollment__signupSheet__showMembers` | boolean | No | A boolean indicating whether or not members can be seen by others prior to signing up.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update course group details

**Slug:** `BLACKBOARD_UPDATE_GROUP_SET`

Updates the properties of an existing group within a specific course in the Blackboard Learn platform. This endpoint allows for modifying various aspects of a group, including its name, description, availability to students, and enrollment settings. It's particularly useful for instructors or administrators who need to adjust group configurations after initial creation, such as changing access permissions, updating descriptive information, or modifying enrollment limits. The endpoint supports rich text formatting through BbML in description fields, enabling the creation of detailed, well-formatted group information. When using this endpoint, be aware that changes may immediately affect student access and group visibility within the course.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The title of the group. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `groupId` | string | Yes | The group ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|    |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `externalId` | string | No | An externally-defined unique ID for the group. Defaults to a random UUID if not provided during create.  |
| `description` | string | No | The description of the group. This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `enrollment__limit` | integer | No | The maximum allowed enrollment size for self enrolled groups. |
| `availability__available` | string ("No" | "SignupOnly" | "Yes") | No | Whether the Group is currently available to students.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may access the group. \| \| No \| Students may not access the group. \| \| SignupOnly \| Students may only signup and see the group listed, not yet access it. \|   |
| `enrollment__signupSheet__name` | string | No | The name of the signup sheet |
| `enrollment__signupSheet__description` | string | No | The description of the signup sheet This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `enrollment__signupSheet__showMembers` | boolean | No | A boolean indicating whether or not members can be seen by others prior to signing up.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Modify user enrollment in course

**Slug:** `BLACKBOARD_UPDATE_MEMBERSHIP`

Updates a user's membership details within a specific Blackboard course. This endpoint allows for modifying various aspects of a user's enrollment, including their role, availability, and position within the course hierarchy. It's particularly useful for managing cross-listed courses, updating user roles, and adjusting instructor display orders. The endpoint should be used when changes to a user's course membership are required, such as promoting a teaching assistant to an instructor or updating a user's availability status. It does not provide functionality for adding or removing users from a course.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `courseRoleId` | string ("BbFacilitator" | "CourseBuilder" | "Grader" | "Guest" | "Instructor" | "Student" | "TeachingAssistant") | No | The user"s role in the course. These roles are also valid for an organization, although they are named differently in the UI. Custom course roles may also be referenced by their IDs.  \| Type      \| Description  \| --------- \| --------- \| \| Instructor \| Has access to all areas in the Control Panel. This role is generally given to those developing, teaching, or facilitating the class. Instructors may access a course that is unavailable to students. This role is customizable and may have different capabilities from what is documented here. \| \| BbFacilitator \| The facilitator is an instructor like role. Facilitators are restricted versions of an instructor, in that they are able to deliver course instruction and administer all aspects of a pre-constructed course, but are not allowed to modify or alter the course. This role is customizable and may have different capabilities from what is documented here. \| \| TeachingAssistant \| The teaching assistant role is that of a co-teacher. Teaching assistants are able to administer all areas of a course. Their only limitations are those imposed by the instructor or Blackboard administrator at your school. This role is customizable and may have different capabilities from what is documented here. \| \| CourseBuilder \| Manages the course without having access to student grades. This role is customizable and may have different capabilities from what is documented here. \| \| Grader \| Assists the instructor in the creation, management, delivery, and grading of items. This role is customizable and may have different capabilities from what is documented here. \| \| Student \|  \| \| Guest \| Has no access to the Control Panel. Areas within the course are made available to guests, but typically they can only view course materials; they do not have access to tests or assessments, and do not have permission to post on discussion boards. This role"s behavior is immutable. \|   |
| `dataSourceId` | string | No | The ID of the data source associated with this course.  This may optionally be the data source"s externalId using the syntax "externalId:math101".  |
| `displayOrder` | integer | No | For primary instructor implementation, position or displayOrder cannot be negative, the minimum position is 1, with which is the primary instructor (aka. Leader instructor). Multiple primary instructor have the same displayOrder 1. This operation only takes effect when the course role is non-student and non-guest roles, otherwise it"s silently ignored, since <code>displayOrder</code> is for this design. All cases violating the above restrictions will be set as <code>null</code> All display orders don"t keep uniqueness, just save as-is.  |
| `childCourseId` | string | No | The primary ID of the child, cross-listed course, in which the user is directly enrolled. </p> This field is read only in Learn versions 3000.11.0 through 3400.0.0. As of 3400.1.0, this field is mutable.  </p> If this membership"s course is a parent course in a cross-listed set, the childCourseId can be updated to move the membership enrollment between child courses and the parent course in  the set.  Patching the childCourseId to "null" will move the membership to the parent course. **Since**: 3000.11.0  |
| `availability__available` | string ("Disabled" | "No" | "Yes") | No | null  \| Type      \| Description  \| --------- \| --------- \| \| Yes \|  \| \| No \|  \| \| Disabled \|   **Since**: 3100.0.0 \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update course message read status

**Slug:** `BLACKBOARD_UPDATE_MESSAGE`

Updates the read status of a specific message within a Blackboard course. This endpoint allows you to mark a message as read or unread, which can be useful for tracking user engagement or managing message statuses. Use this when you need to update the read status of a particular message, such as when a user views a message or wants to mark it as unread for later attention. The endpoint only modifies the read status and does not affect other properties of the message or return the updated message content.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `isRead` | boolean | No | Whether or not the message has been read |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `messageId` | string | Yes | Messageid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update institution node by id

**Slug:** `BLACKBOARD_UPDATE_NODE`

This endpoint allows for updating specific properties of a node within the institutional hierarchy of Blackboard. It is used to modify existing nodes, enabling administrators to keep the institutional structure up-to-date. The endpoint supports partial updates, meaning only the provided fields will be modified. It's particularly useful for renaming nodes, updating descriptions, changing external identifiers, or restructuring the hierarchy by updating parent relationships. However, it cannot be used to create new nodes or delete existing ones. Care should be taken when modifying the parentId to ensure the integrity of the hierarchical structure is maintained.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `title` | string | No | Node display name |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `nodeId` | string | Yes | The node ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|      |
| `parentId` | string | No | The ID of the Node parent in the database |
| `externalId` | string | No | Node unique identifier |
| `description` | string | No | Node description |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update course primary node status

**Slug:** `BLACKBOARD_UPDATE_NODE_COURSE_ASSOCIATION`

Updates the association between a course and a node in the Blackboard Learn institutional hierarchy. This endpoint allows you to modify the primary status of a course-node association. Use this when you need to change whether a specific node is the primary association for a course, which can affect how the course is organized and displayed within the institutional hierarchy. This operation is particularly useful for managing course placements in complex institutional structures with multiple hierarchical levels. Note that this endpoint only modifies the 'isPrimary' status and does not create or delete associations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `nodeId` | string | Yes | The node ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:breakfastClub              \|      |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `isPrimary` | boolean | No | Whether or not this association represents the primary node association of the course  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update lti placement details

**Slug:** `BLACKBOARD_UPDATE_PLACEMENT`

This endpoint allows you to update an existing LTI (Learning Tools Interoperability) placement in the Blackboard learning management system. It provides granular control over various aspects of the placement, including its name, description, icon, URL, visibility settings, grading capabilities, and custom launch parameters. Use this endpoint when you need to modify the properties of an existing LTI integration, such as changing its availability, updating its display information, or adjusting its behavior within courses. The endpoint is particularly useful for administrators or instructors who need to fine-tune the integration of external learning tools with Blackboard.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `key` | string | No | Key |
| `url` | string | No | The URL of the tool provider. Not required to be unique, must be a complete and valid URL. Maximum length is 1024 characters, BAD_REQUEST error with message is returned if greater than 1024 characters or incomplete URL.  |
| `name` | string | No | The name of the placement. Not required to be unique. Maximum length of 50 characters, BAD_REQUEST error with message is returned if greater than 50 characters.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `secret` | string | No | Secret |
| `iconUrl` | string | No | The URL of the icon for this placement, if any. Not required to be unique, must be a complete and valid URL. Maximum length is 255 characters, BAD_REQUEST error with message is returned if greater than 255 characters or incomplete URL.  |
| `authorId` | string | No | Id of the creator of the placement **Deprecated**: since 3900.0 not used |
| `description` | string | No | The description of the placement. Not required to be unique. Maximum length is 1000 characters, BAD_REQUEST error with message is returned if greater than 1000 characters.  |
| `placementId` | string | Yes | Placementid |
| `allowGrading` | boolean | No | Whether this placement can accept grades from the tool provider and a grade column can be created for it. This only applies to Enum[Type]#`ContentHandler` types. All others don"t support grading and will be set to false.  |
| `allowStudents` | boolean | No | Whether the course tool is visible by students, or only to non-students (e.g. instructors). Defaults to true, allowing students to see the tool.  |
| `customParameters` | object | No | Custom launch parameters for the tool. |
| `instructorCreated` | boolean | No | Whether an instructor created the placement or not (otherwise admin) **Deprecated**: since 3900.0 not used  |
| `launchInNewWindow` | boolean | No | Whether this placement link should be opened in a new window or not. |
| `availability__available` | string ("No" | "Yes") | No | Whether the placement is available within the system.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \|  \| \| No \|  \|   |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update pronoun status by id

**Slug:** `BLACKBOARD_UPDATE_PRONOUN`

Updates the information for a specific pronoun in the Blackboard system. This endpoint allows modification of an existing pronoun's name and status, identified by the pronoun ID in the URL path. It's used to manage the list of available pronouns that users can select for their profiles, supporting inclusive identity representation. The endpoint should be used when administrators need to edit pronoun details or change approval statuses. Note that this operation only updates the specified fields and does not affect other pronoun attributes not included in the request.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The name of the pronoun. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `status` | string ("Approved" | "Pending") | No | The status of the pronoun.  \| Type      \| Description  \| --------- \| --------- \| \| Pending \|  \| \| Approved \|  \|   |
| `pronounId` | string | Yes | Pronounid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Modify assessment question

**Slug:** `BLACKBOARD_UPDATE_QUESTION`

This endpoint allows you to update an existing question within a specific assessment in a Blackboard course. It provides the ability to modify various aspects of the question, including its title, content, scoring, feedback, and positioning within the assessment. This tool is particularly useful for refining assessment questions after initial creation, adjusting difficulty levels, or incorporating new information into existing questions. It supports a wide range of question types, from simple multiple-choice to complex AI-driven chat questions, making it versatile for different educational needs. When using this endpoint, ensure that the updates maintain the integrity and educational objectives of the assessment.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `text` | string | No | The main text content for the question. It may include plain and formatted text, and all kinds of content supported by the full text editor.  |
| `title` | string | No | The title of the question. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `points` | integer | No | The point value for the question. |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `position` | integer | No | Position of the Question on the Assessment Canvas. |
| `questionId` | string | Yes | Questionid |
| `assessmentId` | string | Yes | Assessmentid |
| `instructorNotes` | string | No | Text added to the question as a note for the instructor. It is not intended to be displayed to students.  |
| `questionHandler__type` | string ("AiChat" | "Calculated" | "EitherOr" | "Essay" | "FileResponse" | "FillInTheBlank" | "FillInTheBlankPlus" | "HotSpot" | "JumbledSentence" | "LikertOpinionScale" | "Matching" | "MultipleAnswer" | "MultipleChoice" | "Numeric" | "Ordering" | "PageBreak" | "Presentation" | "QuestionBlock" | "QuizBowl") | No | Type of Question supported.  \| Type      \| Description  \| --------- \| --------- \| \| Presentation \|   **Since**: 3300.9.0 \| \| EitherOr \| Read Only  **Since**: 3300.9.0 \| \| Essay \| Read Only  **Since**: 3300.9.0 \| \| MultipleAnswer \| Read Only  **Since**: 3400.4.0 \| \| Numeric \| Read Only  **Since**: 3400.4.0 \| \| MultipleChoice \| Read Only  **Since**: 3400.4.0 \| \| Ordering \| Read Only  **Since**: 3400.4.0 \| \| Matching \| Read Only  **Since**: 3400.4.0 \| \| FillInTheBlank \| Read Only  **Since**: 3400.4.0 \| \| Calculated \| Read Only  **Since**: 3400.4.0 \| \| FileResponse \| Read Only  **Since**: 3400.4.0 \| \| LikertOpinionScale \| Read Only  **Since**: 3400.4.0 \| \| QuizBowl \| Read Only  **Since**: 3400.4.0 \| \| HotSpot \| Read Only  **Since**: 3400.4.0 \| \| JumbledSentence \| Read Only  **Since**: 3400.4.0 \| \| FillInTheBlankPlus \| Read Only  **Since**: 3400.4.0 \| \| QuestionBlock \| Read Only  **Since**: 3700.2.0 \| \| PageBreak \| Read Only  **Since**: 3900.51.0 \| \| AiChat \| AI Chat question  **Since**: 3900.95.0 \|   |
| `correctResponseFeedback` | string | No | Feedback displayed to students when their submitted response is correct. |
| `incorrectResponseFeedback` | string | No | Feedback displayed to students when their submitted response is incorrect.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Patch course content review status

**Slug:** `BLACKBOARD_UPDATE_REVIEW_STATUS`

Updates the review status of a specific content item for a particular user within a Blackboard Learn course. This endpoint allows for marking course materials as reviewed or not reviewed, which can be useful for tracking student progress or ensuring compliance with course requirements. It should be used when a user has completed reviewing a piece of content or when their review status needs to be reset. This operation is particularly useful for self-paced learning scenarios or when instructors need to monitor student engagement with course materials. The endpoint is available from Blackboard Learn API version 3700.16.0 onwards.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `reviewed` | boolean | No | The current status of the content"s "reviewed" attribute. **Since**: 3700.16.0  |
| `contentId` | string | Yes | The Content ID.  This may be the primary ID, or any of the following keywords: interactive, indirect, root.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| keyword    \| root                                  \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Patch course rubric details

**Slug:** `BLACKBOARD_UPDATE_RUBRIC`

Updates a specific rubric within a Blackboard Learn course. This endpoint allows for modification of various aspects of an existing rubric, including its title, description, type, and detailed grading criteria. It's used to refine assessment tools, adjust grading scales, or modify evaluation criteria without creating an entirely new rubric. The update can encompass changes to the rubric's structure (columns and rows) as well as the specific grading details in each cell. This functionality is particularly useful for instructors who need to fine-tune their assessment methods based on course progression or student feedback. Note that this endpoint modifies an existing rubric; it cannot be used to create a new one or to delete a rubric entirely.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `rows` | array | No | Rubric Row Criteria list. |
| `cells` | array | No | Rubric Cells list. |
| `title` | string | No | Get the title for this rubric (Ex. "Sample Rubric") |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `columns` | array | No | Rubric Column Headers list. |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `rubricId` | string | Yes | The Rubric ID. This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `rubricType` | string ("Nonnumeric" | "Numeric" | "NumericRange" | "Percentage" | "PercentageRange") | No | Get the rubric type, alas Numeric or Percentage type. (Ex. "Numeric", "Percentage", "Percentage Range", "Numeric Range")  \| Type      \| Description  \| --------- \| --------- \| \| Numeric \|  \| \| Nonnumeric \|  \| \| NumericRange \|  \| \| Percentage \|  \| \| PercentageRange \|  \|   |
| `description` | string | No | Get the description for this rubric (Ex. "A rubric for base evluation template")  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update rubric association settings

**Slug:** `BLACKBOARD_UPDATE_RUBRIC_ASSOCIATION`

Updates the properties of a rubric association within a specific Blackboard course. This endpoint allows for modifying various aspects of how a rubric is associated with course content, including its visibility to students and its use in grading. It can be used to adjust rubric settings after initial setup, enabling instructors to fine-tune their assessment strategies. The endpoint is particularly useful for changing rubric visibility or toggling whether the rubric is used for grading without creating a new association. Note that this endpoint updates an existing association; it cannot create new associations or completely remove existing ones.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | No | Get the Id from this association (Ex. "_2_1") |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `rubricId` | string | Yes | Get the Id from the rubric which holds this association (Ex. "_3_1") |
| `usedForGrading` | boolean | No | Tells if rubric is being used for grading content. (Ex. true) |
| `rubricVisibility` | string ("Disabled" | "VisibleAfterGrading" | "VisibleWithScores" | "VisibleWithoutScores") | No | States rubric"s information and evalution visibility for students. (Ex. "VisibleWithScores") Possible values are: - Disabled  - VisibleWithScores  - VisibleWithoutScores  - VisibleAfterGrading   \| Type      \| Description  \| --------- \| --------- \| \| Disabled \| Disabled: Implies that neither the rubric nor the rubric evaluation are visible to students. Default value for student visibility. \| \| VisibleWithScores \| VisibleWithScores: Implies that the rubric and the rubric evaluation are always visible to students. \| \| VisibleWithoutScores \| VisibleWithoutScores: Implies that the rubric is visible before and after grading. The rubric evaluation are not visible to students. \| \| VisibleAfterGrading \| VisibleAfterGrading: Implies that the rubric is only visible after grading. The rubric evaluation is visible once is available. \|   |
| `rubricAssociationId` | string | Yes | The Rubric Association ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `associationEntity__questionId` | string | No | Questionid |
| `associationEntity__gradebookColumnId` | string | No | Gradebookcolumnid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update rubric evaluation

**Slug:** `BLACKBOARD_UPDATE_RUBRIC_EVALUATION`

Updates a specific rubric evaluation for a course in the Blackboard Learning Management System. This endpoint allows for modifying the scores and feedback for individual criteria within a rubric that has been associated with a course item (such as an assignment or discussion). It is used when an instructor needs to adjust their evaluation of a student's work using a predefined rubric. The update can include changes to scores for different rubric cells and detailed feedback using Blackboard's rich text format (BbML). This endpoint is particularly useful for refining assessments, providing more detailed feedback, or correcting errors in previous evaluations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `cells` | array | No | List of the selected scores for this evaluation, each rubric cell evaluation should be related with a rubric definition cell and row. The selected score could vary depending on the rubric type, as shown in examples. For example, - Numeric Rubrics, if selected score is 100, then the fraction would be numerator = 100 and denominator = 1. - Numeric Range Rubrics, selected score is the percentage of the max row value in 0 to 1 normalization, So if 80 is the max row points and selected score is 40, the fraction would be numerator = 50 and denominator = 100. - Percentage Rubrics, expects the values in 1 to 100 percent format, if selected percent is 40, the fraction would be numerator = 40 and denominator = 1. - Percentage Range Rubrics, expects the values in 1 to 100 percent format, if selected percent is 60, the fraction would be numerator = 60 and denominator = 1.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `rubricId` | string | Yes | The Rubric ID. This may be the primary ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `rubricEvaluationId` | string | Yes | Rubricevaluationid |
| `rubricAssociationId` | string | Yes | The Rubric Association ID.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|    |
| `evaluationEntity__attemptId` | string | No | Attemptid |
| `evaluationEntity__groupAttemptId` | string | No | Groupattemptid |
| `evaluationEntity__questionAttemptId` | string | No | Questionattemptid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Patch term details by termid

**Slug:** `BLACKBOARD_UPDATE_TERM`

Updates an existing term in the Blackboard Learn platform. This endpoint allows modification of various term properties, including its external ID, name, description, availability settings, and duration. It's particularly useful for adjusting term dates, changing access settings, or updating term information after initial creation. The endpoint supports partial updates, meaning you only need to include the fields you want to modify. Note that some settings, like duration type, may require additional fields to be updated simultaneously for consistency.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The name of the term. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `termId` | string | Yes | The term ID.  This may be the primary ID, or the secondary ID prefixed with the ID type.   \| ID type    \| Example                \|  \|------------\|------------------------\|  \| primary    \| _123_1                 \|  \| externalId \| externalId:spring.2016 \|    |
| `externalId` | string | No | An externally-defined unique ID for the term. Formerly known as "sourcedidId".  |
| `description` | string | No | The description of the term. This field supports BbML; see <a target="_blank" href="https://docs.anthology.com/docs/rest-apis/learn/advanced/bbml.html">here</a> for more information.  |
| `dataSourceId` | string | No | The ID of the data source associated with this term.  This may optionally be the data source"s externalId using the syntax "externalId:math101".  |
| `availability__available` | string ("No" | "Yes") | No | Whether the term and the courses it contains are available to students.  Instructors can always access their courses.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \| Students may access the term and the courses it contains. \| \| No \| Students may not access the term or the courses it contains. \|   |
| `availability__duration__end` | string | No | The date this term ends.  May only be set if availability.duration.type is DateRange.  |
| `availability__duration__type` | string ("Continuous" | "DateRange" | "FixedNumDays") | No | The intended length of the term.  Possible values are:  \| Type      \| Description  \| --------- \| --------- \| \| Continuous \| The term is active on an ongoing basis. This is the default. \| \| DateRange \| The term will only be available between specific date ranges. \| \| FixedNumDays \| The term will only be available for a set number of days. \|   |
| `availability__duration__start` | string | No | The date this term starts.  May only be set if availability.duration.type is DateRange.  |
| `availability__duration__daysOfUse` | integer | No | The number of days courses within this term can be used.  May only be set if availability.duration.type is FixedNumDays.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update course toc item

**Slug:** `BLACKBOARD_UPDATE_TOC_ITEM`

Updates the visibility settings for a specific Table of Contents (TOC) item within a Blackboard course. This endpoint allows you to modify guest and observer access permissions for a particular TOC item. Use this when you need to change who can view certain course content, such as during course setup or when adjusting access throughout the semester. The endpoint only updates visibility settings and does not modify other properties of the TOC item. Note that this operation may affect course accessibility and should be used carefully to ensure compliance with institutional policies.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `tocId` | string | Yes | Id of the TOC to be modified. |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |
| `allowGuests` | boolean | No | Whether or not Guests can view this ToC. |
| `allowObservers` | boolean | No | Whether or not Observers can view this ToC. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update user information

**Slug:** `BLACKBOARD_UPDATE_USER`

Updates a user's profile in the Blackboard learning management system. This endpoint allows for partial or complete updates to various aspects of a user's account, including personal information, contact details, system roles, and preferences. It's particularly useful for synchronizing user data with external systems, managing user accounts, or allowing users to update their own information. The endpoint supports granular updates, meaning you can modify specific fields without affecting others. Be cautious when updating sensitive information like passwords or system roles, as these changes can significantly impact the user's access and experience within the Blackboard system.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `gender` | string ("Female" | "Male" | "Other" | "Unknown") | No | The gender of this user.  \| Type      \| Description  \| --------- \| --------- \| \| Female \| Female \| \| Male \| Male \| \| Other \| Other  **Since**: 3900.32.0 \| \| Unknown \| Gender is not known, or not specified. \|   |
| `userId` | string | Yes | The user ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>primary</td> <td>_123_1</td>         </tr>         <tr>           <td>externalId</td> <td>externalId:jsmith</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>uuid</td> <td>uuid:915c7567d76d444abf1eed56aad3beb5</td>         </tr>       </tbody>   </table> </div> The following id prefixes require that the caller have the system.user.properties.MODIFY entitlement to use and will fail with a security error if attempted to be used without that.   <div style="overflow-x:auto;">   <table>     <tr>       <th>ID type</th>       <th>Example</th>     </tr>       <tbody>         <tr>           <td>institutionEmail</td> <td>institutionEmail:name@example.com</td>         </tr>         <tr>           <td>email</td> <td>email:name@example.com</td>         </tr>         <tr>           <td>userName</td> <td>userName:jsmith</td>         </tr>         <tr>           <td>studentId</td> <td>studentId:123456 </td>         </tr>       </tbody>   </table> </div>  |
| `password` | string | No | The user"s login password. |
| `pronouns` | string | No | The pronouns of this user. **Since**: 3900.27.0 |
| `userName` | string | No | The userName property, shown in the UI. |
| `birthDate` | string | No | The birth date of this user. Only the date portion of this value has significance, since a person"s birthdate represents a full day and not a moment in time. Take care to ignore the zeroed time portion when deserializing this value to ensure it"s not converted to the previous calendar day if your local time zone has a negative UTC offset.  |
| `studentId` | string | No | The user"s student ID name or number as defined by the school or institution.  |
| `externalId` | string | No | An optional externally-defined unique ID for the user.  Defaults to the userName. Formerly known as "batchUid".  |
| `job__title` | string | No | The user"s job title. |
| `locale__id` | string | No | The locale specified by the user.  This locale will be used anywhere the user is allowed to customize their locale; courses may force a specific locale, overriding the user"s locale preference.  |
| `name__given` | string | No | The given (first) name of this user. |
| `name__other` | string | No | The other name (nickname) of this user. |
| `name__title` | string | No | The title of this user.  Examples: Mr., Ms., Dr. |
| `dataSourceId` | string | No | The ID of the data source associated with this user.  This may optionally be the data source"s externalId using the syntax "externalId:math101".  |
| `job__company` | string | No | The company the user works for. |
| `name__family` | string | No | The family (last) name of this user. |
| `name__middle` | string | No | The middle name of this user. |
| `name__suffix` | string | No | The suffix of this user"s name.  Examples: Jr., III, PhD. |
| `address__city` | string | No | The city the user resides in. |
| `pronunciation` | string | No | Pronunciation text for user"s name **Since**: 3900.32.0 |
| `systemRoleIds` | array | No | The system roles (the administrative user roles in the UI) for this user.  The first role in this list is the user"s primary system role, while the remaining are secondary system roles.  |
| `address__state` | string | No | The state or province the user resides in. |
| `avatar__source` | string ("Default" | "System" | "User") | No | The source of the user"s avatar **Since**: 3800.13.0  \| Type      \| Description  \| --------- \| --------- \| \| Default \| The server default avatar \| \| User \| The user set his/her own avatar \| \| System \| A privileged user set the user"s avatar to something other than default \|   |
| `contact__email` | string | No | The user"s email address. |
| `educationLevel` | string ("Freshman" | "GraduateSchool" | "HighSchool" | "Junior" | "K8" | "PostGraduateSchool" | "Senior" | "Sophomore" | "Unknown") | No | The education level of this user.  \| Type      \| Description  \| --------- \| --------- \| \| K8 \| Kindergarten through 8th grade \| \| HighSchool \| Grades 9 through 12. \| \| Freshman \| College or university freshman. \| \| Sophomore \| College or university sophomore. \| \| Junior \| College or university junior. \| \| Senior \| College or university senior. \| \| GraduateSchool \| Graduate school student. \| \| PostGraduateSchool \| Post-graduate school student. \| \| Unknown \| Education Level is not known, or not specified. \|   |
| `job__department` | string | No | The department the user belongs to. |
| `address__country` | string | No | The country the user resides in. |
| `address__street1` | string | No | The street address of the user. |
| `address__street2` | string | No | An additional field to store the street address of the user. |
| `address__zipCode` | string | No | The zip code or postal code the user resides in. |
| `avatar__uploadId` | string | No | The upload id of the avatar image file, if referencing a newly-uploaded file **Since**: 3800.13.0  |
| `contact__webPage` | string | No | The URL of the user"s personal website. |
| `locale__calendar` | string ("Gregorian" | "GregorianHijri" | "Hijri" | "HijriGregorian") | No | The calendar type specified by the user.  \| Type      \| Description  \| --------- \| --------- \| \| Gregorian \| Gregorian \| \| GregorianHijri \| Gregorian & Hijri \| \| Hijri \| Hijri \| \| HijriGregorian \| Hijri & Gregorian \|   |
| `avatar__resourceId` | string | No | The resource file id of the user"s avatar, if referencing a Content Collection Resource **Since**: 3900.50.0  |
| `contact__homePhone` | string | No | The user"s home phone number. |
| `institutionRoleIds` | array | No | The primary and secondary institution roles assigned to this user. The primary institution role is the first item in the list, followed by all secondary institution roles sorted alphabetically. **Since**: 3300.3.0  |
| `contact__businessFax` | string | No | The user"s business fax number. |
| `contact__mobilePhone` | string | No | The user"s mobile phone number. |
| `contact__businessPhone` | string | No | The user"s business phone number. |
| `locale__firstDayOfWeek` | string ("Monday" | "Saturday" | "Sunday") | No | The user"s preferred first day of the week.  \| Type      \| Description  \| --------- \| --------- \| \| Sunday \| Sunday \| \| Monday \| Monday \| \| Saturday \| Saturday \|   |
| `availability__available` | string ("Disabled" | "No" | "Yes") | No | Whether the user is available within the system. Unavailable users cannot log in.  \| Type      \| Description  \| --------- \| --------- \| \| Yes \|  \| \| No \|  \| \| Disabled \|   **Since**: 3100.0.0 \|   |
| `contact__institutionEmail` | string | No | The user"s institutional email address. **Since**: 3900.19.0 |
| `name__preferredDisplayName` | string ("Both" | "GivenName" | "OtherName") | No | The preferred display name of this user. **Since**: 3900.48.0  \| Type      \| Description  \| --------- \| --------- \| \| GivenName \| User requests displaying givenName when formatting names for display. This is the default behavior. \| \| OtherName \| User requests displaying otherName when formatting names for display. \| \| Both \| User requests displaying otherName and givenName when formatting names for display. \|   |
| `pronunciationAudio__uploadId` | string | No | Uploadid |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create new uploads

**Slug:** `BLACKBOARD_UPLOAD`

Uploads a file to the Blackboard Learn platform. This endpoint allows users to add various types of educational content, such as documents, images, or multimedia files, to courses or other areas within Blackboard. It should be used when new materials need to be added to the platform or existing content needs to be updated. The endpoint handles the file transfer process, but does not automatically associate the uploaded file with any specific course or content area; additional API calls may be required for such organization. Note that file size limits and supported file types may vary depending on the specific Blackboard Learn instance configuration.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get course groups

**Slug:** `BLACKBOARD_VIEW_COURSE_GROUP_ACCESSIBILITIES`

Retrieves a list of all groups associated with a specific course in the Blackboard learning management system. This endpoint allows educators and administrators to access information about the various student groups created within a particular course. It is useful for managing course structure, facilitating group assignments, and organizing collaborative activities. The endpoint returns details about each group, which may include group names, descriptions, and member counts. It should be used when there's a need to review or manage the group structure of a course. Note that this endpoint only provides group information and does not allow for the modification of groups or their memberships.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string | No | Properties to sort by. This is a comma-delimited list of JSON properties, with an optional "(desc)" suffix to request a descending sort for that property. e.g. "name(desc)" Supported fields are: - name - externalId **Since**: 3100.4.0  |
| `limit` | integer | No | The maximum number of results to be returned. There may be less if the query returned less than the maximum.  |
| `fields` | string | No | A comma-delimited list of fields to include in the response. If not specified, all fields will be returned.  |
| `offset` | integer | No | The number of rows to skip before beginning to return rows. An offset of 0 is the same as omitting the offset parameter.  |
| `courseId` | string | Yes | The course or organization ID.  This may be the primary ID, or any of the secondary IDs prefixed with the ID type.   \| ID type    \| Example                               \|  \|------------\|---------------------------------------\|  \| primary    \| _123_1                                \|  \| externalId \| externalId:math101                    \|  \| courseId   \| courseId:math101                      \|  \| uuid       \| uuid:915c7567d76d444abf1eed56aad3beb5 \|    |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
