# Tool catalog

> All 396 tools of the Cademí MCP, by resource, with access and permission.

Every tool of the Cademí MCP: 5 composite tools that answer a whole question in one call, and 391 tools that each run one operation of API 3.4.7. Access shows how a client treats the tool: read-only tools only read, write tools change data, and destructive tools remove or revoke something. Clients that support approval ask you before a tool changes data.

## Composite tools

Each one calls several operations. See [Tools](https://cademi.dev/mcp/tools.md) for what each one returns and the permissions it needs.

| Tool | What it does | Access |
|---|---|---|
| `instance_overview` | Get the connected instance overview | Read-only |
| `product_context` | Get a product overview | Read-only |
| `product_structure` | Get the full structure of a product | Read-only |
| `student_access_context` | Diagnose a student’s access to a product | Read-only |
| `student_context` | Get a student’s full context | Read-only |

## Account

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `account_domains_certificate_get` | Retrieve a domain certificate | Read-only | `domains.read` |
| `account_domains_get` | Retrieve a domain | Read-only | `domains.read` |
| `account_domains_list` | List domains | Read-only | `domains.read` |
| `account_get` | Retrieve the account | Read-only | `account.read` |
| `account_replicas_get` | Retrieve a replica | Read-only | `replicas.read` |
| `account_replicas_list` | List replicas | Read-only | `replicas.read` |
| `account_usage` | Retrieve account usage | Read-only | `usage.read` |

## Administrators

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `administrators_create` | Create an administrator | Write | `administrators.create` |
| `administrators_delete` | Delete an administrator | Destructive | `administrators.delete` |
| `administrators_get` | Retrieve an administrator | Read-only | `administrators.read` |
| `administrators_invitation_emails_create` | Resend the access email | Write | `administrators.send_access` |
| `administrators_list` | List administrators | Read-only | `administrators.read` |
| `administrators_permissions_get` | Retrieve administrator permissions | Read-only | `administrators.read` |
| `administrators_permissions_update` | Update administrator permissions | Destructive | `administrators.manage_permissions` |
| `administrators_update` | Update an administrator | Write | `administrators.update` |

## Audit

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `audit_entries_get` | Retrieve an audit entry | Read-only | `audit.read` |
| `audit_entries_list` | List audit entries | Read-only | `audit.read` |

## Banners

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `banners_copies_create` | Duplicate a banner | Write | `banners.create` |
| `banners_create` | Create a banner | Write | `banners.create` |
| `banners_delete` | Delete a banner | Destructive | `banners.delete` |
| `banners_get` | Retrieve a banner | Read-only | `banners.read` |
| `banners_list` | List banners | Read-only | `banners.read` |
| `banners_order_update` | Reorder banners | Destructive | `banners.update` |
| `banners_update` | Update a banner | Write | `banners.update` |

## Capabilities

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `capabilities_get` | Retrieve credential capabilities | Read-only |  |

## Certificates

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `certificates_create` | Issue a certificate | Write | `certificates.create` |
| `certificates_delete` | Delete a certificate | Destructive | `certificates.delete` |
| `certificates_get` | Retrieve a certificate | Read-only | `certificates.read` |
| `certificates_list` | List a user's certificates | Read-only | `certificates.read` |
| `certificates_template_get` | Retrieve a certificate template | Read-only | `certificates.read` |
| `certificates_template_previews_create` | Preview a certificate template | Write | `certificates.preview` |
| `certificates_template_update` | Replace a certificate template | Destructive | `certificates.update` |
| `certificates_update` | Revoke a certificate | Destructive | `certificates.revoke` |

## Comments

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `comments_delete` | Delete a comment | Destructive | `comments.delete` |
| `comments_get` | Retrieve a comment | Read-only | `comments.read` |
| `comments_list` | List comments for moderation | Read-only | `comments.read` |
| `comments_replies_create` | Create a comment reply | Write | `comments.update` |
| `comments_replies_delete` | Delete a comment reply | Destructive | `comments.delete` |
| `comments_replies_list` | List comment replies | Read-only | `comments.read` |
| `comments_replies_update` | Update a comment reply | Write | `comments.update` |
| `comments_update` | Update a comment | Write | `comments.update` |

## Configuration

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `configuration_applications_create` | Apply a configuration plan | Write | `configuration.apply` |
| `configuration_plans_create` | Create a configuration plan | Write | `configuration.plan` |
| `configuration_validations_create` | Validate a configuration manifest | Write | `configuration.validate` |

## Credentials

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `credentials_current` | Retrieve the current credential | Read-only |  |
| `credentials_current_policies` | Retrieve the current credential's policies | Read-only |  |
| `credentials_delete` | Delete a credential | Destructive | `credentials.manage` |
| `credentials_get` | Retrieve a credential | Read-only | `credentials.read` |
| `credentials_list` | List credentials | Read-only | `credentials.read` |
| `credentials_permission_catalog_get` | Retrieve the permission catalog | Read-only |  |
| `credentials_policies_create` | Add a credential policy | Write | `credentials.policies.manage` |
| `credentials_policies_delete` | Remove a credential policy | Destructive | `credentials.policies.manage` |
| `credentials_policies_get` | Retrieve a credential policy | Read-only | `credentials.read` |
| `credentials_policies_list` | List credential policies | Read-only | `credentials.read` |
| `credentials_policies_update` | Update a credential policy | Write | `credentials.policies.manage` |
| `credentials_policy_templates_list` | List policy templates | Read-only |  |
| `credentials_update` | Update a credential | Write | `credentials.manage` |

## Custom

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `custom_code_create` | Create a custom code block | Write | `custom_code.write` |
| `custom_code_delete` | Delete a custom code block | Destructive | `custom_code.write` |
| `custom_code_get` | Retrieve a custom code block | Read-only | `custom_code.read` |
| `custom_code_list` | List custom code blocks | Read-only | `custom_code.read` |
| `custom_code_update` | Update a custom code block | Write | `custom_code.write` |
| `custom_fields_create` | Create a custom field | Write | `custom_fields.create` |
| `custom_fields_delete` | Delete a custom field | Destructive | `custom_fields.delete` |
| `custom_fields_get` | Retrieve a custom field | Read-only | `custom_fields.read` |
| `custom_fields_list` | List custom fields | Read-only | `custom_fields.read` |
| `custom_fields_update` | Update a custom field | Write | `custom_fields.update` |

## Deliveries

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `deliveries_copies_create` | Duplicate a delivery | Write | `deliveries.create` |
| `deliveries_create` | Create a delivery | Write | `deliveries.create` |
| `deliveries_get` | Retrieve a delivery | Read-only | `deliveries.read` |
| `deliveries_list` | List deliveries | Read-only | `deliveries.read` |
| `deliveries_products_list` | List delivery products | Read-only | `deliveries.read` |
| `deliveries_products_update` | Replace delivery products | Destructive | `deliveries.update` |
| `deliveries_rules_list` | List delivery release schedules | Read-only | `deliveries.read` |
| `deliveries_rules_update` | Replace delivery release schedules | Destructive | `deliveries.update` |
| `deliveries_tags_applications_create` | Apply delivery tags to existing users | Write | `deliveries.update` |
| `deliveries_tags_list` | List delivery tags | Read-only | `deliveries.read` |
| `deliveries_tags_update` | Replace delivery tags | Destructive | `deliveries.update` |
| `deliveries_update` | Update a delivery | Write | `deliveries.update` |

## Departments

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `departments_create` | Create a department | Write | `departments.create` |
| `departments_delete` | Delete a department | Destructive | `departments.delete` |
| `departments_get` | Retrieve a department | Read-only | `departments.read` |
| `departments_list` | List departments | Read-only | `departments.read` |
| `departments_update` | Update a department | Write | `departments.update` |

## Diamonds

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `diamonds_create` | Create a Diamond | Write | `deliveries.create`, `diamonds.create`, `products.create` |
| `diamonds_delete` | Delete a Diamond | Destructive | `diamonds.delete` |
| `diamonds_get` | Retrieve a Diamond | Read-only | `diamonds.read` |
| `diamonds_list` | List Diamonds | Read-only | `diamonds.read` |
| `diamonds_memberships_create` | Create a membership | Write | `diamonds.manage_memberships`, `enrollments.create` |
| `diamonds_memberships_get` | Retrieve a membership | Read-only | `diamonds.read` |
| `diamonds_memberships_list` | List memberships | Read-only | `diamonds.read` |
| `diamonds_memberships_processing_attempts_create` | Create a processing attempt | Write | `diamonds.reprocess` |
| `diamonds_memberships_processing_attempts_get` | Retrieve a processing attempt | Read-only | `diamonds.read` |
| `diamonds_memberships_processing_attempts_list` | List processing attempts | Read-only | `diamonds.read` |
| `diamonds_memberships_update` | Update a membership stage | Write | `diamonds.manage_memberships` |
| `diamonds_stages_list` | List stages | Read-only | `diamonds.read` |
| `diamonds_stages_update` | Update a stage | Write | `diamonds.update` |
| `diamonds_triggers_create` | Ensure a stage trigger | Write | `diamonds.manage_triggers` |
| `diamonds_triggers_get` | Retrieve a trigger | Read-only | `diamonds.read` |
| `diamonds_triggers_list` | List triggers | Read-only | `diamonds.read` |
| `diamonds_triggers_update` | Update a trigger | Write | `diamonds.manage_triggers` |
| `diamonds_update` | Update a Diamond | Write | `diamonds.update` |

## Enrollments

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `enrollments_list` | List enrollments | Read-only | `enrollments.read` |

## Event

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `event_streams_create` | Create an event stream | Write | `event_streams.manage` |
| `event_streams_delete` | Revoke an event stream | Destructive | `event_streams.manage` |
| `event_streams_get` | Retrieve an event stream | Read-only | `event_streams.read` |
| `event_streams_list` | List event streams | Read-only | `event_streams.read` |

## Events

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `events_get` | Retrieve an event | Read-only | `events.read` |
| `events_list` | List events | Read-only | `events.read` |

## Exams

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `exams_answer_key_get` | Retrieve an exam answer key | Read-only | `exams.read_answer_key` |
| `exams_attempts_answers_get` | Retrieve the answers for an exam attempt | Read-only | `exams.attempts.read_answers` |
| `exams_attempts_get` | Retrieve an exam attempt | Read-only | `exams.attempts.read` |
| `exams_attempts_list` | List exam attempts | Read-only | `exams.attempts.read` |
| `exams_attempts_update` | Reopen an exam attempt | Write | `exams.attempts.reopen` |
| `exams_create` | Create an exam | Write | `exams.create` |
| `exams_delete` | Delete an exam | Destructive | `exams.delete` |
| `exams_get` | Retrieve an exam | Read-only | `exams.read` |
| `exams_list` | List exams | Read-only | `exams.read` |
| `exams_questions_create` | Create an exam question | Write | `exams.update` |
| `exams_questions_delete` | Delete an exam question | Destructive | `exams.update` |
| `exams_questions_get` | Retrieve an exam question | Read-only | `exams.read` |
| `exams_questions_list` | List exam questions | Read-only | `exams.read` |
| `exams_questions_order_update` | Reorder exam questions | Destructive | `exams.update` |
| `exams_questions_update` | Update an exam question | Write | `exams.update` |
| `exams_results_delete` | Delete an exam result | Destructive | `exams.results.delete` |
| `exams_results_get` | Retrieve an exam result | Read-only | `exams.attempts.read` |
| `exams_results_list` | List exam results | Read-only | `exams.attempts.read` |
| `exams_update` | Update an exam | Write | `exams.update` |

## Exports

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `exports_create` | Create an export | Write | `exports.create` |
| `exports_delete` | Delete an export | Destructive | `exports.delete` |
| `exports_get` | Retrieve an export | Read-only | `exports.read` |
| `exports_list` | List exports | Read-only | `exports.read` |

## Faqs

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `faqs_create` | Create an FAQ entry | Write | `faqs.create` |
| `faqs_delete` | Delete an FAQ entry | Destructive | `faqs.delete` |
| `faqs_get` | Retrieve an FAQ entry | Read-only | `faqs.read` |
| `faqs_list` | List FAQ entries | Read-only | `faqs.read` |
| `faqs_order_update` | Reorder FAQ entries | Destructive | `faqs.update` |
| `faqs_update` | Update an FAQ entry | Write | `faqs.update` |

## Files

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `files_delete` | Delete a file | Destructive | `files.write` |
| `files_download_links_create` | Create a download link | Write | `files.read` |
| `files_get` | Retrieve a file | Read-only | `files.read` |
| `files_list` | List files | Read-only | `files.read` |

## Gateways

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `gateways_get` | Retrieve a gateway | Read-only | `gateways.read` |
| `gateways_list` | List gateways | Read-only | `gateways.read` |

## Imports

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `imports_analyses_create` | Analyze an import | Write | `imports.analyze` |
| `imports_create` | Create an import | Destructive | `imports.create` |
| `imports_delete` | Delete an import | Destructive | `imports.delete` |
| `imports_get` | Retrieve an import | Read-only | `imports.read` |
| `imports_list` | List imports | Read-only | `imports.read` |
| `imports_processing_attempts_create` | Create a processing attempt | Write | `imports.process` |
| `imports_processing_attempts_get` | Retrieve a processing attempt | Read-only | `imports.read` |
| `imports_processing_attempts_list` | List processing attempts | Read-only | `imports.read` |
| `imports_rows_list` | List import rows | Read-only | `imports.read` |
| `imports_update` | Update an import | Write | `imports.update` |

## Legal

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `legal_terms_acceptances_get` | Retrieve a legal term acceptance | Read-only | `legal_terms.read` |
| `legal_terms_acceptances_list` | List legal term acceptances | Read-only | `legal_terms.read` |
| `legal_terms_create` | Create a legal term | Write | `legal_terms.create` |
| `legal_terms_get` | Retrieve a legal term | Read-only | `legal_terms.read` |
| `legal_terms_list` | List legal terms | Read-only | `legal_terms.read` |
| `legal_terms_update` | Update a legal term | Write | `legal_terms.update` |

## Lessons

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `lessons_attachments_delete` | Remove an attachment | Destructive | `lessons.update` |
| `lessons_attachments_list` | List lesson attachments | Read-only | `lessons.read` |
| `lessons_attachments_update` | Add or update an attachment | Destructive | `lessons.update` |
| `lessons_connection_delete` | Disconnect a lesson | Destructive | `lessons.connect` |
| `lessons_connection_get` | Retrieve a lesson connection | Read-only | `lessons.read` |
| `lessons_connection_update` | Connect a lesson | Destructive | `lessons.connect` |
| `lessons_content_get` | Retrieve lesson content | Read-only | `lessons.read` |
| `lessons_content_update` | Replace lesson content | Destructive | `lessons.update` |
| `lessons_copies_create` | Duplicate a lesson | Write | `lessons.create` |
| `lessons_create` | Create a lesson | Write | `lessons.create` |
| `lessons_delete` | Delete a lesson | Destructive | `lessons.delete` |
| `lessons_get` | Retrieve a lesson | Read-only | `lessons.read` |
| `lessons_list` | List lessons | Read-only | `lessons.read` |
| `lessons_taxonomy_terms_list` | List lesson taxonomy terms | Read-only | `lessons.read` |
| `lessons_taxonomy_terms_update` | Replace lesson taxonomy terms | Destructive | `lessons.update` |
| `lessons_update` | Update a lesson | Write | `lessons.update` |

## Menu

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `menu_items_create` | Create a menu item | Write | `menu_items.create` |
| `menu_items_delete` | Delete a menu item | Destructive | `menu_items.delete` |
| `menu_items_get` | Retrieve a menu item | Read-only | `menu_items.read` |
| `menu_items_list` | List menu items | Read-only | `menu_items.read` |
| `menu_items_order_update` | Reorder menu items | Destructive | `menu_items.update` |
| `menu_items_update` | Update a menu item | Write | `menu_items.update` |

## Menus

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `menus_get` | Retrieve a menu | Read-only | `menu_items.read` |
| `menus_list` | List menus | Read-only | `menu_items.read` |

## Modules

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `modules_content_list` | List module contents | Read-only | `modules.read` |
| `modules_content_order_update` | Reorder module contents | Destructive | `modules.update` |
| `modules_copies_create` | Duplicate a module | Write | `modules.create` |
| `modules_create` | Create a module | Write | `modules.create` |
| `modules_delete` | Delete a module | Destructive | `modules.delete` |
| `modules_get` | Retrieve a module | Read-only | `modules.read` |
| `modules_list` | List modules | Read-only | `modules.read` |
| `modules_publications_create` | Publish a module | Write | `modules.publish` |
| `modules_update` | Update a module | Write | `modules.update` |

## Operations

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `operations_attempts_create` | Resume an operation | Write | `operations.manage` |
| `operations_attempts_get` | Retrieve an operation attempt | Read-only | `operations.read` |
| `operations_attempts_list` | List operation attempts | Read-only | `operations.read` |
| `operations_batches_create` | Create a batch operation | Write | `operations.manage` |
| `operations_get` | Retrieve an operation | Read-only | `operations.read` |
| `operations_items` | List operation items | Read-only | `operations.read` |
| `operations_list` | List operations | Read-only | `operations.read` |
| `operations_update` | Cancel an operation | Destructive | `operations.manage` |

## Products

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `products_access_schedules_create` | Create an access schedule | Write | `access_schedules.create` |
| `products_access_schedules_delete` | Delete an access schedule | Destructive | `access_schedules.delete` |
| `products_access_schedules_get` | Retrieve an access schedule | Read-only | `access_schedules.read` |
| `products_access_schedules_list` | List access schedules | Read-only | `access_schedules.read` |
| `products_access_schedules_rules_create` | Create a release rule | Write | `access_schedules.update` |
| `products_access_schedules_rules_delete` | Delete a release rule | Destructive | `access_schedules.delete` |
| `products_access_schedules_rules_get` | Retrieve a release rule | Read-only | `access_schedules.read` |
| `products_access_schedules_rules_list` | List release rules | Read-only | `access_schedules.read` |
| `products_access_schedules_rules_update` | Update a release rule | Write | `access_schedules.update` |
| `products_access_schedules_update` | Update an access schedule | Write | `access_schedules.update` |
| `products_comments_list` | List product comments | Read-only | `comments.read` |
| `products_content_list` | List product content | Read-only | `products.read` |
| `products_content_order_update` | Reorder product content | Destructive | `products.update` |
| `products_copies_create` | Copy a product | Write | `products.create` |
| `products_create` | Create a product | Write | `products.create` |
| `products_delete` | Delete a product | Destructive | `products.delete` |
| `products_get` | Retrieve a product | Read-only | `products.read` |
| `products_list` | List products | Read-only | `products.read` |
| `products_order_update` | Reorder showcase products | Destructive | `products.update`, `showcases.update` |
| `products_publications_create` | Publish a product | Write | `products.publish` |
| `products_questions_list` | List questions for a product | Read-only | `questions.read` |
| `products_update` | Update a product | Write | `products.update` |

## Questions

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `questions_delete` | Delete a question | Destructive | `questions.delete` |
| `questions_get` | Retrieve a question | Read-only | `questions.read` |
| `questions_list` | List questions across all products | Read-only | `questions.read` |
| `questions_replies_create` | Create a reply | Write | `questions.update` |
| `questions_replies_delete` | Delete a reply | Destructive | `questions.update` |
| `questions_replies_get` | Retrieve a reply | Read-only | `questions.read` |
| `questions_replies_list` | List replies to a question | Read-only | `questions.read` |
| `questions_replies_update` | Update a reply | Write | `questions.update` |
| `questions_update` | Update a question | Write | `questions.update` |

## Rankings

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `rankings_list` | Retrieve the points ranking | Read-only | `rankings.read` |

## Reports

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `reports_activity_list` | List recent user activity | Read-only | `reports.read` |
| `reports_certificates_list` | List certificate issuance by product | Read-only | `reports.read` |
| `reports_email_bounces_list` | List email bounces | Read-only | `reports.read` |
| `reports_email_bounces_update` | Ignore an email bounce | Write | `email_bounces.ignore` |
| `reports_exams_list` | List exam performance | Read-only | `reports.read` |
| `reports_exports_get` | Retrieve export metrics | Read-only | `reports.read` |
| `reports_lessons_list` | List lesson performance for a product | Read-only | `reports.read` |
| `reports_list` | List available reports | Read-only | `reports.read` |
| `reports_products_list` | List product performance | Read-only | `reports.read` |
| `reports_rankings_list` | Retrieve the points ranking | Read-only | `rankings.read`, `reports.read` |
| `reports_support_get` | Retrieve support metrics | Read-only | `reports.read` |
| `reports_users_get` | Retrieve the users report | Read-only | `reports.read` |

## Requests

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `requests_get` | Retrieve a request | Read-only | `audit.read` |
| `requests_list` | List requests | Read-only | `audit.read` |

## Sales

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `sales_events_get` | Retrieve a sales event | Read-only | `sales_events.read` |
| `sales_events_list` | List sales events | Read-only | `sales_events.read` |
| `sales_events_processing_attempts_create` | Create a processing attempt | Write | `sales_events.reprocess` |
| `sales_events_processing_attempts_get` | Retrieve a processing attempt | Read-only | `sales_events.read` |
| `sales_events_processing_attempts_list` | List processing attempts | Read-only | `sales_events.read` |
| `sales_transactions_get` | Retrieve a sales transaction | Read-only | `sales_events.read` |
| `sales_transactions_list` | List sales transactions | Read-only | `sales_events.read` |

## Sandbox

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `sandbox_get` | Retrieve the sandbox | Read-only | `sandbox.read` |
| `sandbox_resets_create` | Reset the sandbox | Destructive | `sandbox.manage` |
| `sandbox_test_scenarios_get` | Retrieve a test scenario | Read-only | `sandbox.read` |
| `sandbox_test_scenarios_list` | List test scenarios | Read-only | `sandbox.read` |
| `sandbox_test_scenarios_runs_create` | Run a test scenario | Write | `sandbox.manage` |

## Scores

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `scores_list` | List point entries | Read-only | `scores.read` |

## Settings

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `settings_admin_area_get` | Retrieve admin area settings | Read-only | `settings.read` |
| `settings_admin_area_update` | Update admin area settings | Write | `settings.update` |
| `settings_app_get` | Retrieve app settings | Read-only | `settings.read` |
| `settings_app_update` | Update app settings | Write | `settings.update` |
| `settings_authentication_get` | Retrieve authentication settings | Read-only | `settings.read` |
| `settings_authentication_update` | Update authentication settings | Write | `settings.update_security` |
| `settings_branding_get` | Retrieve branding settings | Read-only | `settings.read` |
| `settings_branding_update` | Update branding settings | Write | `settings.update` |
| `settings_emails_get` | Retrieve email settings | Read-only | `settings.read` |
| `settings_emails_templates_get` | Retrieve an email template | Read-only | `settings.read` |
| `settings_emails_templates_list` | List email templates | Read-only | `settings.read` |
| `settings_emails_templates_previews_create` | Preview an email template | Write | `settings.read` |
| `settings_emails_templates_test_messages_create` | Send a test email | Write | `settings.send_test_email` |
| `settings_emails_templates_update` | Update an email template | Write | `settings.update_emails` |
| `settings_emails_update` | Update email settings | Write | `settings.update_emails` |
| `settings_embedded_pages_get` | Retrieve embedded page settings | Read-only | `settings.read` |
| `settings_embedded_pages_update` | Update embedded page settings | Write | `settings.update` |
| `settings_gamification_get` | Retrieve gamification settings | Read-only | `gamification.read` |
| `settings_gamification_update` | Update gamification settings | Write | `gamification.update` |
| `settings_platform_get` | Retrieve platform settings | Read-only | `settings.read` |
| `settings_platform_update` | Update platform settings | Write | `settings.update` |
| `settings_registration_get` | Retrieve registration settings | Read-only | `settings.read` |
| `settings_registration_update` | Update registration settings | Write | `settings.update_registration` |
| `settings_security_get` | Retrieve security settings | Read-only | `settings.read` |
| `settings_security_update` | Update security settings | Write | `settings.update_security` |
| `settings_sharing_get` | Retrieve sharing settings | Read-only | `settings.read` |
| `settings_sharing_update` | Update sharing settings | Write | `settings.update` |
| `settings_support_comments_get` | Retrieve comment settings | Read-only | `settings.read` |
| `settings_support_comments_update` | Update comment settings | Write | `settings.update_support` |
| `settings_support_faq_get` | Retrieve FAQ settings | Read-only | `settings.read` |
| `settings_support_faq_update` | Update FAQ settings | Write | `settings.update_support` |
| `settings_support_get` | Retrieve support settings | Read-only | `settings.read` |
| `settings_support_questions_get` | Retrieve question settings | Read-only | `settings.read` |
| `settings_support_questions_update` | Update question settings | Write | `settings.update_support` |
| `settings_support_update` | Update support settings | Write | `settings.update_support` |
| `settings_user_profile_get` | Retrieve user profile settings | Read-only | `settings.read` |
| `settings_user_profile_update` | Update user profile settings | Write | `settings.update_registration` |

## Showcases

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `showcases_copies_create` | Duplicate a showcase | Write | `showcases.create` |
| `showcases_create` | Create a showcase | Write | `showcases.create` |
| `showcases_delete` | Delete a showcase | Destructive | `showcases.delete` |
| `showcases_get` | Retrieve a showcase | Read-only | `showcases.read` |
| `showcases_list` | List showcases | Read-only | `showcases.read` |
| `showcases_order_update` | Reorder showcases | Destructive | `showcases.update` |
| `showcases_products_list` | List showcase products | Read-only | `products.read`, `showcases.read` |
| `showcases_update` | Update a showcase | Write | `showcases.update` |

## Tags

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `tags_create` | Create a tag | Write | `tags.create` |
| `tags_delete` | Delete a tag | Destructive | `tags.delete` |
| `tags_get` | Retrieve a tag | Read-only | `tags.read` |
| `tags_list` | List tags | Read-only | `tags.read` |
| `tags_update` | Update a tag | Write | `tags.update` |

## Taxonomies

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `taxonomies_create` | Create a taxonomy | Write | `taxonomies.create` |
| `taxonomies_delete` | Delete a taxonomy | Destructive | `taxonomies.delete` |
| `taxonomies_get` | Retrieve a taxonomy | Read-only | `taxonomies.read` |
| `taxonomies_list` | List taxonomies | Read-only | `taxonomies.read` |
| `taxonomies_terms_create` | Create a taxonomy term | Write | `taxonomies.update` |
| `taxonomies_terms_delete` | Delete a taxonomy term | Destructive | `taxonomies.update` |
| `taxonomies_terms_get` | Retrieve a taxonomy term | Read-only | `taxonomies.read` |
| `taxonomies_terms_list` | List taxonomy terms | Read-only | `taxonomies.read` |
| `taxonomies_terms_update` | Update a taxonomy term | Write | `taxonomies.update` |
| `taxonomies_update` | Update a taxonomy | Write | `taxonomies.update` |

## Tickets

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `tickets_create` | Create a ticket | Write | `tickets.create` |
| `tickets_get` | Retrieve a ticket | Read-only | `tickets.read` |
| `tickets_list` | List tickets | Read-only | `tickets.read` |
| `tickets_replies_create` | Create a ticket reply | Write | `tickets.update` |
| `tickets_replies_delete` | Delete a ticket reply | Destructive | `tickets.update` |
| `tickets_replies_get` | Retrieve a ticket reply | Read-only | `tickets.read` |
| `tickets_replies_list` | List ticket replies | Read-only | `tickets.read` |
| `tickets_replies_update` | Update a ticket reply | Write | `tickets.update` |
| `tickets_update` | Update a ticket | Write | `tickets.update` |

## Uploads

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `uploads_completions_create` | Complete an upload | Write | `files.write` |
| `uploads_create` | Create an upload | Write | `files.write` |
| `uploads_get` | Retrieve an upload | Read-only | `files.read` |
| `uploads_parts_create` | Create upload part URLs | Write | `files.write` |
| `uploads_parts_list` | List upload parts | Read-only | `files.read` |
| `uploads_update` | Cancel an upload | Destructive | `files.write` |

## Users

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `users_access_emails_create` | Send an access email | Write | `users.send_access` |
| `users_access_update` | Update access duration for all products | Destructive | `enrollments.manage_access` |
| `users_activity_list` | List user activity | Read-only | `users.read` |
| `users_attribution_get` | Retrieve user attribution | Read-only | `users.read` |
| `users_attribution_update` | Update user attribution | Destructive | `users.update` |
| `users_avatar_delete` | Delete a user avatar | Destructive | `users.update` |
| `users_avatar_update` | Update a user avatar | Destructive | `users.update` |
| `users_create` | Create a user | Write | `users.create` |
| `users_custom_fields_delete` | Delete a custom field value | Destructive | `users.update` |
| `users_custom_fields_list` | List user custom field values | Read-only | `users.read` |
| `users_custom_fields_update` | Update user custom field values | Destructive | `users.update` |
| `users_delete` | Delete a user | Destructive | `users.delete` |
| `users_enrollments_create` | Create an enrollment | Write | `enrollments.create` |
| `users_enrollments_get` | Retrieve an enrollment | Read-only | `enrollments.read` |
| `users_enrollments_list` | List a user's enrollments | Read-only | `enrollments.read` |
| `users_enrollments_update` | Update an enrollment | Destructive | `enrollments.update` |
| `users_get` | Retrieve a user | Read-only | `users.read` |
| `users_list` | List users | Read-only | `users.read` |
| `users_notes_create` | Create a user note | Write | `users.update` |
| `users_notes_delete` | Delete a user note | Destructive | `users.update` |
| `users_notes_get` | Retrieve a user note | Read-only | `users.read` |
| `users_notes_list` | List user notes | Read-only | `users.read` |
| `users_notes_update` | Update a user note | Write | `users.update` |
| `users_password_reset_emails_create` | Send a password reset email | Destructive | `users.send_access` |
| `users_products_access_calendar_get` | Retrieve a release calendar | Read-only | `enrollments.read` |
| `users_products_access_get` | Retrieve product access | Read-only | `enrollments.read` |
| `users_products_access_update` | Update product access | Destructive | `enrollments.manage_access` |
| `users_products_list` | List product access | Read-only | `enrollments.read` |
| `users_products_progress_adjustments_create` | Create a progress adjustment | Write | `progress.adjust` |
| `users_products_progress_adjustments_get` | Retrieve a progress adjustment | Read-only | `progress.read` |
| `users_products_progress_adjustments_list` | List progress adjustments | Read-only | `progress.read` |
| `users_products_progress_get` | Retrieve product progress | Read-only | `progress.read` |
| `users_products_progress_lessons_list` | List lesson progress | Read-only | `progress.read` |
| `users_progress_list` | List user progress | Read-only | `progress.read` |
| `users_score_adjustments_create` | Create a points adjustment | Write | `scores.adjust` |
| `users_scores_get` | Retrieve a point entry | Read-only | `scores.read` |
| `users_scores_list` | List point entries | Read-only | `scores.read` |
| `users_tags_create` | Assign a tag | Write | `users.update` |
| `users_tags_delete` | Remove a tag | Destructive | `users.update` |
| `users_tags_list` | List user tags | Read-only | `users.read` |
| `users_tags_update` | Replace user tags | Destructive | `users.update` |
| `users_term_acceptances_list` | List a user's legal term acceptances | Read-only | `legal_terms.read` |
| `users_update` | Update a user | Write | `users.update` |

## Webhooks

| Tool | What it does | Access | Permission |
|---|---|---|---|
| `webhooks_create` | Create a webhook endpoint | Write | `webhooks.create` |
| `webhooks_delete` | Delete a webhook endpoint | Destructive | `webhooks.delete` |
| `webhooks_deliveries_attempts_create` | Resend a webhook delivery | Write | `webhooks.replay` |
| `webhooks_deliveries_attempts_get` | Retrieve a delivery attempt | Read-only | `webhooks.deliveries.read` |
| `webhooks_deliveries_attempts_list` | List delivery attempts | Read-only | `webhooks.deliveries.read` |
| `webhooks_deliveries_get` | Retrieve a webhook delivery | Read-only | `webhooks.deliveries.read` |
| `webhooks_deliveries_list` | List deliveries for a webhook endpoint | Read-only | `webhooks.deliveries.read` |
| `webhooks_deliveries_list_all` | List all webhook deliveries | Read-only | `webhooks.deliveries.read` |
| `webhooks_get` | Retrieve a webhook endpoint | Read-only | `webhooks.read` |
| `webhooks_list` | List webhook endpoints | Read-only | `webhooks.read` |
| `webhooks_replays_create` | Replay webhook events | Write | `webhooks.replay` |
| `webhooks_secret_rotations_create` | Rotate a webhook signing secret | Destructive | `webhooks.rotate_secret` |
| `webhooks_update` | Update a webhook endpoint | Write | `webhooks.update` |

## Operations without a tool

4 API operations have no tool on purpose: `credentials.create`, `credentials.secret_rotations.create`, `event_streams.events.get`, `openapi.get`. They return credential secrets, a live event stream or the raw API contract, which do not fit in a conversation. Use the [CLI](https://cademi.dev/cli/overview.md) or the [API](https://cademi.dev/api.md) for them.
