# Cyrisma Documentation - [Introduction](https://docs.cyrisma.com/api/partner-api.md): Overview of the Cyrisma New Partner API - [Authentication](https://docs.cyrisma.com/api/partner-api/authentication.md): Create an API key and obtain access tokens for the Cyrisma New Partner API - [Conventions](https://docs.cyrisma.com/api/partner-api/conventions.md): Pagination, filters, expansions, time windows, and errors in the Cyrisma New Partner API - [Exchange an API key for an access token](https://docs.cyrisma.com/api-reference/auth/exchange-an-api-key-for-an-access-token.md): Exchanges an API key for a bearer token, valid for one hour by default. The token is for the API key's own tenant, and gives access to that tenant and every tenant beneath it. - [Get a tenant](https://docs.cyrisma.com/api-reference/msp-administration/get-a-tenant.md): Returns the full details of one tenant. Needs `pulse.read`. - [Update a tenant's details](https://docs.cyrisma.com/api-reference/msp-administration/update-a-tenants-details.md): Changes a tenant's details and returns the updated tenant. Send only the fields to change. Needs `pulse.write`. - [Get a tenant's authentication policy](https://docs.cyrisma.com/api-reference/msp-administration/get-a-tenants-authentication-policy.md): Returns how users of a tenant sign in: MFA requirement, allowed MFA methods and SSO. **Needs a signed-in user's token.** API-key tokens from `POST /v1/auth/client-token` are rejected. The user needs `pulse.write` and an admin role. - [Set a tenant's authentication policy](https://docs.cyrisma.com/api-reference/msp-administration/set-a-tenants-authentication-policy.md): Replaces a tenant's sign-in policy. It applies to that tenant only, not the tenants beneath it. **Needs a signed-in user's token.** API-key tokens from `POST /v1/auth/client-token` are rejected. The user needs `pulse.write` and an admin role. - [List countries](https://docs.cyrisma.com/api-reference/msp-administration/list-countries.md): Lists every country, ordered by name. Send a country's `id` as `country_id`. Needs `pulse.read`; returns 401 (no body) otherwise. - [List industries](https://docs.cyrisma.com/api-reference/msp-administration/list-industries.md): Lists the industries a tenant can have. Send an industry's `id` as `industry_id`. Needs `pulse.read`; returns 401 (no body) otherwise. - [List currencies](https://docs.cyrisma.com/api-reference/msp-administration/list-currencies.md): Lists the currencies prices can be shown in, ordered by code. Send a currency's `code` as `display_currency_code`. Needs `pulse.read`; returns 401 (no body) otherwise. - [List tenant types](https://docs.cyrisma.com/api-reference/msp-administration/list-tenant-types.md): Lists the tenant types. Send a type's `id` as `tenant_type_id` when you provision a tenant. Needs `pulse.read`; returns 401 (no body) otherwise. - [Provision a tenant](https://docs.cyrisma.com/api-reference/msp-administration/provision-a-tenant.md): Creates a tenant and queues the job that deploys it. The tenant starts in status `provisioning` and becomes `active` when the job reaches `deployed`. Needs `pulse.write`. - [Get a provisioning job's status](https://docs.cyrisma.com/api-reference/msp-administration/get-a-provisioning-jobs-status.md): Returns the current state of a create or decommission job. Poll it until `status` is `deployed`, `decommissioned` or `failed`. Needs `pulse.write`. - [Decommission a tenant](https://docs.cyrisma.com/api-reference/msp-administration/decommission-a-tenant.md): Queues the removal of a tenant. The tenant is disabled at once, and becomes `deleted` when the job reaches `decommissioned`; poll **Get a provisioning job's status** with `job_id`. Needs `pulse.write`. The request body is required: send `{}` if you have nothing to put in it. - [Suspend a tenant](https://docs.cyrisma.com/api-reference/msp-administration/suspend-a-tenant.md): Suspends an active tenant: its users and API keys can no longer get new tokens until it is reactivated. Takes effect immediately. Set `include_descendants` to suspend every active tenant beneath it too. Needs `pulse.write`. - [Reactivate a suspended tenant](https://docs.cyrisma.com/api-reference/msp-administration/reactivate-a-suspended-tenant.md): Reactivates a suspended tenant. Takes effect immediately. Set `include_descendants` to reactivate every suspended tenant beneath it too. Needs `pulse.write`. - [List technicians who can be assigned to a tenant](https://docs.cyrisma.com/api-reference/msp-administration/list-technicians-who-can-be-assigned-to-a-tenant.md): Lists the users who can be assigned as technician to a tenant you are about to provision: enabled users with write access to `parent_tenant_id` that also covers the tenants beneath it. Needs `pulse.write`. - [List tenants](https://docs.cyrisma.com/api-reference/msp-administration/list-tenants.md): Lists a tenant and every tenant beneath it, ordered by name. Needs `pulse.read`. - [List technicians](https://docs.cyrisma.com/api-reference/msp-administration/list-technicians.md): Lists the users who can be assigned as technician to an existing tenant: enabled users with write access to the tenant, either on the tenant itself or inherited from a tenant above it. Ordered by name. Needs `pulse.read`. - [List users](https://docs.cyrisma.com/api-reference/msp-administration/list-users.md): Lists the users with access to a tenant or any tenant beneath it, ordered by email unless `sort` is given. A user with access to several tenants appears once per tenant. Needs `pulse.read`. - [Create a user](https://docs.cyrisma.com/api-reference/msp-administration/create-a-user.md): Creates a user and gives them a role on one tenant. Returns 201 with the new user. **Needs a signed-in user's token.** API-key tokens from `POST /v1/auth/client-token` are rejected. The user needs `pulse.write` and an admin role. - [Get a user](https://docs.cyrisma.com/api-reference/msp-administration/get-a-user.md): Returns one user and their first access grant within `tenant_id` and the tenants beneath it. Needs `pulse.read`. - [Disable a user](https://docs.cyrisma.com/api-reference/msp-administration/disable-a-user.md): Disables a user: they lose access to every tenant and can no longer sign in. The user is not deleted. Returns 204. **Needs a signed-in user's token.** API-key tokens from `POST /v1/auth/client-token` are rejected. The user needs `pulse.write` and an admin role. - [Update a user](https://docs.cyrisma.com/api-reference/msp-administration/update-a-user.md): Changes a user's name, email, password, role, tenant or whether they can sign in, and returns the updated user. **Needs a signed-in user's token.** API-key tokens from `POST /v1/auth/client-token` are rejected. The user needs `pulse.write` and an admin role. - [Reset a user's multi-factor enrollment](https://docs.cyrisma.com/api-reference/msp-administration/reset-a-users-multi-factor-enrollment.md): Removes all of a user's MFA methods and recovery codes, for example after they lose their phone. Returns 204. **Needs a signed-in user's token.** API-key tokens from `POST /v1/auth/client-token` are rejected. The user needs `pulse.write` and an admin role. - [List assignable user roles](https://docs.cyrisma.com/api-reference/msp-administration/list-assignable-user-roles.md): Lists the roles you can give a user. Send a role's `key` as `role` when you create or update a user. Needs `pulse.read`; returns 401 (no body) otherwise. - [Get vulnerability state for authorized partner tenants.](https://docs.cyrisma.com/api-reference/reporting/get-vulnerability-state-for-authorized-partner-tenants.md): This endpoint returns an aggregated vulnerability posture snapshot: open finding counts by severity, affected asset/tenant counts, KEV and exploitable finding counts, patchable root cause count, and a lifecycle series, across the authorized partner's tenant scope. - [List vulnerability events for authorized partner tenants.](https://docs.cyrisma.com/api-reference/reporting/list-vulnerability-events-for-authorized-partner-tenants.md): This endpoint returns a cursor-paginated list of live vulnerability detection events across the authorized partner's tenant scope, within a bounded time window. - [List CVEs for authorized partner tenants.](https://docs.cyrisma.com/api-reference/reporting/list-cves-for-authorized-partner-tenants.md): This endpoint returns a cursor-paginated list of CVEs observed across the authorized partner's tenant scope. - [Get a single CVE for authorized partner tenants.](https://docs.cyrisma.com/api-reference/reporting/get-a-single-cve-for-authorized-partner-tenants.md): This endpoint returns the details of a single CVE, scoped to the authorized partner's tenants. - [List assets affected by a CVE for authorized partner tenants.](https://docs.cyrisma.com/api-reference/reporting/list-assets-affected-by-a-cve-for-authorized-partner-tenants.md): This endpoint returns a cursor-paginated list of assets affected by a specific CVE, scoped to the authorized partner's tenants. - [List vulnerability root causes for authorized partner tenants.](https://docs.cyrisma.com/api-reference/reporting/list-vulnerability-root-causes-for-authorized-partner-tenants.md): This endpoint returns a cursor-paginated list of vulnerability root causes observed across the authorized partner's tenant scope. - [Get a single vulnerability root cause for authorized partner tenants.](https://docs.cyrisma.com/api-reference/reporting/get-a-single-vulnerability-root-cause-for-authorized-partner-tenants.md): This endpoint returns the details of a single vulnerability root cause, scoped to the authorized partner's tenants. - [List assets affected by a vulnerability root cause for authorized partner tenants.](https://docs.cyrisma.com/api-reference/reporting/list-assets-affected-by-a-vulnerability-root-cause-for-authorized-partner-tenants.md): This endpoint returns a cursor-paginated list of assets affected by a specific vulnerability root cause, scoped to the authorized partner's tenants. - [List assets for authorized partner tenants.](https://docs.cyrisma.com/api-reference/reporting/list-assets-for-authorized-partner-tenants.md): This endpoint returns a cursor-paginated list of assets across the authorized partner's tenant scope. - [Get vulnerability trend series for authorized partner tenants.](https://docs.cyrisma.com/api-reference/reporting/get-vulnerability-trend-series-for-authorized-partner-tenants.md): This endpoint returns a per-tenant vulnerability trend series, one data point per day over the requested range, for the authorized partner's tenant scope. - [Get vulnerability rollups for authorized partner tenants.](https://docs.cyrisma.com/api-reference/reporting/get-vulnerability-rollups-for-authorized-partner-tenants.md): This endpoint returns per-tenant vulnerability rollups, grouped and ranked by the requested dimension, over a bounded date range for the authorized partner's tenant scope. - [Get current posture grades for authorized partner tenants.](https://docs.cyrisma.com/api-reference/reporting/get-current-posture-grades-for-authorized-partner-tenants.md): This endpoint returns each tenant's current score (0-100) and letter grade (`A+` to `F`) for overall risk, vulnerability, and secure baseline, for the authorized partner's tenant scope. - [Get the overall dashboard for authorized partner tenants.](https://docs.cyrisma.com/api-reference/reporting/get-the-overall-dashboard-for-authorized-partner-tenants.md): This endpoint returns one row per tenant in the authorized partner's tenant scope: where the tenant sits in the hierarchy, its industry and tags, its asset and finding counts, and its current scores and grades. - [List secure-baseline posture by asset for authorized partner tenants.](https://docs.cyrisma.com/api-reference/reporting/list-secure-baseline-posture-by-asset-for-authorized-partner-tenants.md): This endpoint returns a cursor-paginated list of secure-baseline posture by asset (score, grade, and benchmark pass/fail counts) across the authorized partner's tenant scope, lowest score first. - [Get endpoint usage history for authorized partner tenants.](https://docs.cyrisma.com/api-reference/reporting/get-endpoint-usage-history-for-authorized-partner-tenants.md): This endpoint returns endpoint usage history, bucketed by day or month, over a bounded date range for the authorized partner's tenant scope. - [Export vulnerability events for authorized partner tenants.](https://docs.cyrisma.com/api-reference/reporting/export-vulnerability-events-for-authorized-partner-tenants.md): This endpoint returns a single-page export of live vulnerability detection events, within a bounded time window, for the authorized partner's tenant scope. The response is returned with a `Content-Disposition: attachment` header naming a timestamped export file. - [List the tenants in the authorized partner scope.](https://docs.cyrisma.com/api-reference/reporting/list-the-tenants-in-the-authorized-partner-scope.md): Returns every tenant the calling machine client is authorized for, as a flat list ordered by position in the hierarchy. - [Get one tenant and its sub-tenants from the authorized partner scope.](https://docs.cyrisma.com/api-reference/reporting/get-one-tenant-and-its-sub-tenants-from-the-authorized-partner-scope.md): Returns `tenantId` plus every tenant beneath it in the hierarchy, narrowed from the caller's full authorized scope. - [Getting Started](https://docs.cyrisma.com/api-reference/getting-started.md): Get started with the Cyrisma Partner API - [Authentication](https://docs.cyrisma.com/api-reference/authentication.md): Learn how to authenticate with the Cyrisma Partner API - [Overall risk dashboard for instance](https://docs.cyrisma.com/api-reference/dashboards/overall-risk-dashboard-for-instance.md): Returns overall risk dashboard data for the instance associated with the access token. The overall risk dashboard includes metrics such as total risk score, risk grade, and breakdown of risks by category. In the output, the respective grades are represented by scan type. There is Current and P… - [Data scan dashboard for instance](https://docs.cyrisma.com/api-reference/dashboards/data-scan-dashboard-for-instance.md): Returns data scan dashboard data for the instance associated with the access token. The data scan dashboard includes metrics such as total data risk score, data risk grade, and breakdown of data risks by category. Required headers: - `Authorization: access_token {token}` - [Vulnerability scan dashboard for instance](https://docs.cyrisma.com/api-reference/dashboards/vulnerability-scan-dashboard-for-instance.md): Returns vulnerability scan dashboard data for the instance associated with the access token. The vulnerability scan dashboard includes metrics such as total vulnerability risk score, vulnerability risk grade, and breakdown of vulnerabilities by profile. Required headers: - `Authorization: a… - [Secure Baseline scan dashboard for instance](https://docs.cyrisma.com/api-reference/dashboards/secure-baseline-scan-dashboard-for-instance.md): Returns secure baseline scan dashboard data for the instance associated with the access token. The secure baseline scan dashboard includes metrics such as total baseline risk score, baseline risk grade, and breakdown of baseline risks by profile. Required headers: - `Authorization: access_t… - [CVE information for instance](https://docs.cyrisma.com/api-reference/dashboards/cve-information-for-instance.md): Returns CVE information for the instance associated with the access token. The CVE information includes details such as CVE ID, description, severity, affected assets, and remediation steps. Required headers: - `Authorization: access_token {token}` - [Get Instances Endpoint](https://docs.cyrisma.com/api-reference/instances/get-instances-endpoint.md): This will retrieve the entire existing provisioned structure of organizations and instances within the CYRISMA platform. Required headers: - `Authorization: access_token {token}` - [Get Instances Endpoint](https://docs.cyrisma.com/api-reference/instances/get-instances-endpoint-1.md): This will retrieve the entire existing provisioned structure of organizations and instances within the CYRISMA platform. Required headers: - `Authorization: access_token {token}` - [Create Instance User Endpoint](https://docs.cyrisma.com/api-reference/instances/create-instance-user-endpoint.md): This endpoint will create a new user under a specific subordinate instance within your partner account. Required headers: - `Authorization: access_token {token}` - [Create Instances Endpoint](https://docs.cyrisma.com/api-reference/instances/create-instances-endpoint.md): This endpoint will provision a new instance under your partner account. It is important to understand the hierarchy of the organizations set up under the CYRISMA Web platform. Instances can be created under existing organizations or sub organizations, or new sub organizations can be created.… - [Suspend Instance Endpoint](https://docs.cyrisma.com/api-reference/instances/suspend-instance-endpoint.md): This endpoint will suspend an instance under your partner account. **Notes:** - Suspended instances are NOT visible within the MSP web interface. - Suspended instances are not shown in the API “Get All” request. - To restore a suspended instance or organization, the instanceID is required,… - [Reactivate Instance Endpoint](https://docs.cyrisma.com/api-reference/instances/reactivate-instance-endpoint.md): This endpoint will reactivate a suspended instance under your partner account. Required headers: - `Authorization: access_token {token}` - [Convert Consulting To Standard Endpoint](https://docs.cyrisma.com/api-reference/instances/convert-consulting-to-standard-endpoint.md): This endpoint will convert a consulting instance to a standard instance under your partner account. **Note:** - Conversion from Consulting to Managed is a one way operation. Managed instances cannot be converted back to consulting. Required headers: - `Authorization: access_token {token… - [Convert Consulting To Standard Endpoint](https://docs.cyrisma.com/api-reference/instances/convert-consulting-to-standard-endpoint-1.md): This endpoint will convert a consulting instance to a standard instance under your partner account. Required headers: - `Authorization: access_token {token}` - [Partner Login Endpoint](https://docs.cyrisma.com/api-reference/login/partner-login-endpoint.md): Endpoint for partners to login and receive an access token. The 'grant_type' key indicates this is a password request in compliance with OAuth 2.0 principles. The access token is important and is used to continue all future interaction with the API. The optional refresh token is used to r… - [Reset Password Endpoint](https://docs.cyrisma.com/api-reference/login/reset-password-endpoint.md): First-time API use should always begin with password reset. Please reset the original temporary password so that only YOUR authorized applications have access to the API. **NOTE:** This password is your API secret password and is only returned here **one time**. Cyrisma only stores an encrypted… - [Completed scans for instance](https://docs.cyrisma.com/api-reference/scans/completed-scans-for-instance.md): Returns completed scans for the instance associated with the access token. Each completed scan returned by the API includes information such as scan ID, target name, scan status, start and end times, and summary of findings. Required headers: - `Authorization: access_token {token}` - [Data scans for instance](https://docs.cyrisma.com/api-reference/scans/data-scans-for-instance.md): Returns data scans for the instance associated with the access token. Each data scan returned by the API includes information such as scan ID, target name, scan status, start and end times, and summary of findings. Required headers: - `Authorization: access_token {token}` - [Vulnerability scans for instance](https://docs.cyrisma.com/api-reference/scans/vulnerability-scans-for-instance.md): Returns vulnerability scans for the instance associated with the access token. Each vulnerability scan returned by the API includes information such as scan ID, target name, scan status, start and end times, and summary of findings. Required headers: - `Authorization: access_token {token}` - [Secure Baseline scans for instance](https://docs.cyrisma.com/api-reference/scans/secure-baseline-scans-for-instance.md): Returns secure baseline scans for the instance associated with the access token. Each secure baseline scan returned by the API includes information such as scan ID, target name, scan status, start and end times, and summary of findings. Required headers: - `Authorization: access_token {toke… - [Vulnerability for scan Id](https://docs.cyrisma.com/api-reference/scans/vulnerability-for-scan-id.md): Returns asets with asset vulnerabilities. Each asset returned by the API may include three collections: **vulnerabilities**, **openPorts**, and **flaws**. These collections are populated based on the **scan type**, as follows: - Internal Authenticated (scan type 5), Internal Unauthenticated (sca… - [Get User Endpoint](https://docs.cyrisma.com/api-reference/users/get-user-endpoint.md): This endpoint will retrieve information about a single user under your partner account. **Note:** - Users MUST be added to instance_ids that are organizations. You cannot add a user to an instance_id that is a standard, trial or consulting instance. Required headers: - `Authorization:… - [Get Users Endpoint](https://docs.cyrisma.com/api-reference/users/get-users-endpoint.md): This endpoint will retrieve a list of users under your partner account. Required headers: - `Authorization: access_token {token}` - [Disable User Endpoint](https://docs.cyrisma.com/api-reference/users/disable-user-endpoint.md): This endpoint will disable a user under your partner account. Required headers: - `Authorization: access_token {token}` - [Assets list with vulnerability counts](https://docs.cyrisma.com/api-reference/vulnerability-assets/assets-list-with-vulnerability-counts.md): Returns a list of assets and their vulnerability totals (critical/high/medium/low/info), along with basic asset metadata. Required headers: - `Authorization: access_token {token}` - [Internal Authenticated scan details for an asset](https://docs.cyrisma.com/api-reference/vulnerability-assets/internal-authenticated-scan-details-for-an-asset.md): Returns **Internal Authenticated** vulnerability details for a single asset based on asset id. Use this endpoint when you already know the asset id and want detailed counts and list of **root cause**s, **CVE**s and **open ports** for the asset. Required headers: - `Authorization: access_tok… - [Internal Unauthenticated/External - IP Addresses scan details for an asset](https://docs.cyrisma.com/api-reference/vulnerability-assets/internal-unauthenticatedexternal--ip-addresses-scan-details-for-an-asset.md): Returns **Internal Unauthenticated** or **External IP Address** vulnerability details for a device identified by IP address, based asset IP address. Use this endpoint when you already know the asset ip and want detailed counts and list of **CVE**s and **open ports** for the asset. Required hea… - [Web Application scan findings for an asset](https://docs.cyrisma.com/api-reference/vulnerability-assets/web-application-scan-findings-for-an-asset.md): Returns **web application** vulnerability findings (for example: URL-based issues) for a specific asset. Use this endpoint when you already know the asset id and want detailed counts and list of **findings** for the asset. Required headers: - `Authorization: access_token {token}` ## OpenAPI Specs - [openapi](/api-reference/openapi.json) - [provisioning](/api/partner-api/provisioning.json) - [reporting](/api/partner-api/reporting.json) - [openapi](/openapi.json) This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.