Monitoring Tests are compliance tests used to determine whether a person, system, process, or organization is adhering to standards set by compliance controls within a framework. The help docs have more information.
Find Monitoring Tests matching the provided filters
🔒 Requires Monitoring: List Monitors permission.
Successful
Malformed data and/or validation errors
Invalid Authorization
You are not allowed to perform this action
Not Found
You must accept the Drata terms and conditions to use the API
Internal server error
{- "data": [
- {
- "id": 1,
- "name": "A Version Control System is being Used",
- "description": "Inspected Drata's version control system...",
- "checkResultStatus": "PASSED",
- "checkStatus": "ENABLED",
- "testSource": "DRATA",
- "draft": false,
- "testId": 1,
- "parentTestId": null,
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z",
- "lastPassedAt": "2025-07-01T16:45:55.246Z",
- "failedSince": "2025-07-01T16:45:55.246Z",
- "monitorInstances": [
- {
- "id": 1,
- "checkResultStatus": "PASSED",
- "collectionDescription": "Curl call to the website",
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z",
- "checkTypes": [
- "INFRASTRUCTURE"
]
}
], - "disabledByUser": {
- "id": 1,
- "firstName": "Sally",
- "lastName": "Smith",
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z"
}, - "controls": [
- {
- "id": 1,
- "code": "AC-1",
- "name": "Access Control",
- "description": "Drata has implemented tools to monitor Drata's databases and notify appropriate personnel of any events or incidents based on\n predetermined criteria. Incidents are escalated per policy.",
- "isReady": true,
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z"
}
]
}
], - "pagination": {
- "cursor": "string",
- "totalCount": 0
}
}Create a custom Monitoring Test over Custom Connection data. The test is created as a draft: run, publish, and map it to controls in the Drata app. Validate the recipe first with the validate endpoint.
🔒 Requires Monitoring: Create Custom Monitor permission.
💎 Requires your account have the Custom Connections and Tests feature. Contact your Account Manager for help upgrading.
| connectionIds | Array of numbers <= 300 items IDs of the Custom Connections in this workspace the test runs against, from |
| name required | string <= 191 characters Name of the custom Monitoring Test |
| description | string <= 30000 characters Plain-language explanation of what the Monitoring Test checks, saved as the description of the evidence it collects. The Monitoring Test |
required | object The test logic. Validate it first with |
Created
Malformed data and/or validation errors
Invalid Authorization
You must upgrade your plan to use this feature
You are not allowed to perform this action
Not Found
The account has reached its custom test limit
You must accept the Drata terms and conditions to use the API
Internal server error
{- "connectionIds": [
- 1
], - "name": "Active employees have a department",
- "description": "Every active employee record must be assigned to a department.",
- "recipe": {
- "assertion": "nofail",
- "allConnections": true,
- "providers": [
- {
- "provider": "HR System",
- "resources": [
- {
- "resource": "Employees",
- "evaluator": {
- "all": [
- {
- "fact": "department",
- "operator": "notEqual",
- "value": ""
}, - {
- "fact": "isActive",
- "operator": "equal",
- "value": true
}
]
}, - "filteringCriteria": {
- "mode": "inclusion",
- "evaluator": {
- "all": [
- {
- "fact": "isActive",
- "operator": "equal",
- "value": true
}
]
}
}
}
]
}
]
}
}{- "id": 1,
- "name": "A Version Control System is being Used",
- "description": "Inspected Drata's version control system...",
- "checkResultStatus": "PASSED",
- "checkStatus": "ENABLED",
- "testSource": "DRATA",
- "draft": false,
- "testId": 1,
- "parentTestId": null,
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z",
- "lastPassedAt": "2025-07-01T16:45:55.246Z",
- "failedSince": "2025-07-01T16:45:55.246Z",
- "monitorInstances": [
- {
- "id": 1,
- "checkResultStatus": "PASSED",
- "collectionDescription": "Curl call to the website",
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z",
- "checkTypes": [
- "INFRASTRUCTURE"
]
}
], - "disabledByUser": {
- "id": 1,
- "firstName": "Sally",
- "lastName": "Smith",
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z"
}, - "controls": [
- {
- "id": 1,
- "code": "AC-1",
- "name": "Access Control",
- "description": "Drata has implemented tools to monitor Drata's databases and notify appropriate personnel of any events or incidents based on\n predetermined criteria. Incidents are escalated per policy.",
- "isReady": true,
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z"
}
]
}Get a specific Monitoring Test by Test ID
🔒 Requires Monitoring: Get Monitor permission.
| cursor | string This parameter is used to paginate through results. No value is needed for the first request. If there are additional results, the response will contain a |
| size | number [ 1 .. 500 ] Default: 50 Number of results to return |
| sort | string (SortTypeLimitedEnum) Which field to sort by |
| sortDir | string (SortDirectionEnum) The direction to sort the data |
| expand[] | Array of strings (MonitorExpandEnum) List of subcollections and sub-objects to expand |
Successful
Malformed data and/or validation errors
Invalid Authorization
You are not allowed to perform this action
Not Found
You must accept the Drata terms and conditions to use the API
Internal server error
{- "id": 1,
- "name": "A Version Control System is being Used",
- "description": "Inspected Drata's version control system...",
- "checkResultStatus": "PASSED",
- "checkStatus": "ENABLED",
- "testSource": "DRATA",
- "draft": false,
- "testId": 1,
- "parentTestId": null,
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z",
- "lastPassedAt": "2025-07-01T16:45:55.246Z",
- "failedSince": "2025-07-01T16:45:55.246Z",
- "monitorInstances": [
- {
- "id": 1,
- "checkResultStatus": "PASSED",
- "collectionDescription": "Curl call to the website",
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z",
- "checkTypes": [
- "INFRASTRUCTURE"
]
}
], - "disabledByUser": {
- "id": 1,
- "firstName": "Sally",
- "lastName": "Smith",
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z"
}, - "controls": [
- {
- "id": 1,
- "code": "AC-1",
- "name": "Access Control",
- "description": "Drata has implemented tools to monitor Drata's databases and notify appropriate personnel of any events or incidents based on\n predetermined criteria. Incidents are escalated per policy.",
- "isReady": true,
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z"
}
]
}Update a Monitoring Test's name, description, and/or enabled state.
🔒 Requires Monitoring: Update Monitor permission.
| name | string <= 191 characters Updated name for the Monitoring Test. |
| enabled | boolean Enable or disable the Monitoring Test. When set to false, downstream monitor instances stop running and a disable message of "Disabled via Public API" is recorded. |
| description | string or null <= 30000 characters Updated description for the Monitoring Test. Pass null to clear. |
Successful
No Content
Malformed data and/or validation errors
Invalid Authorization
You are not allowed to perform this action
Not Found
There is a conflict in the business rules with this request
You must accept the Drata terms and conditions to use the API
Internal server error
{- "name": "Cloud Data Storage Exposure",
- "enabled": true,
- "description": "string"
}{- "id": 1,
- "name": "A Version Control System is being Used",
- "description": "Inspected Drata's version control system...",
- "checkResultStatus": "PASSED",
- "checkStatus": "ENABLED",
- "testSource": "DRATA",
- "draft": false,
- "testId": 1,
- "parentTestId": null,
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z",
- "lastPassedAt": "2025-07-01T16:45:55.246Z",
- "failedSince": "2025-07-01T16:45:55.246Z",
- "monitorInstances": [
- {
- "id": 1,
- "checkResultStatus": "PASSED",
- "collectionDescription": "Curl call to the website",
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z",
- "checkTypes": [
- "INFRASTRUCTURE"
]
}
], - "disabledByUser": {
- "id": 1,
- "firstName": "Sally",
- "lastName": "Smith",
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z"
}, - "controls": [
- {
- "id": 1,
- "code": "AC-1",
- "name": "Access Control",
- "description": "Drata has implemented tools to monitor Drata's databases and notify appropriate personnel of any events or incidents based on\n predetermined criteria. Incidents are escalated per policy.",
- "isReady": true,
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z"
}
]
}Check custom test logic (a recipe) against the Custom Connection data sources in this workspace without saving anything. Returns every error with its location; fix them and validate again until isValid is true, then create or update the test. Responds 200 whether or not the recipe is valid. API keys need the Create Custom Monitor permission to call this endpoint; OAuth clients need the create:monitor-test scope.
🔒 Requires Monitoring: Create Custom Monitor permission.
💎 Requires your account have the Custom Connections and Tests feature. Contact your Account Manager for help upgrading.
Successful
Malformed data and/or validation errors
Invalid Authorization
You must upgrade your plan to use this feature
You are not allowed to perform this action
You must accept the Drata terms and conditions to use the API
Internal server error
{- "recipe": {
- "assertion": "nofail",
- "allConnections": true,
- "providers": [
- {
- "provider": "HR System",
- "resources": [
- {
- "resource": "Employees",
- "evaluator": {
- "all": [
- {
- "fact": "department",
- "operator": "notEqual",
- "value": ""
}, - {
- "fact": "isActive",
- "operator": "equal",
- "value": true
}
]
}, - "filteringCriteria": {
- "mode": "inclusion",
- "evaluator": {
- "all": [
- {
- "fact": "isActive",
- "operator": "equal",
- "value": true
}
]
}
}
}
]
}
]
}
}{- "isValid": false,
- "errors": [
- {
- "type": "invalidOperator",
- "message": "Operator equal is not supported for fact department",
- "location": "/providers/0/resources/0/evaluator/all/1/operator",
- "provider": "HR System",
- "resource": "Employees"
}
]
}Replace the test logic (recipe) of a custom Monitoring Test draft. Published tests cannot be edited here: create a draft of the test in the Drata app first.
🔒 Requires Monitoring: Update Monitor permission.
💎 Requires your account have the Custom Connections and Tests feature. Contact your Account Manager for help upgrading.
| connectionIds | Array of numbers <= 300 items IDs of the Custom Connections in this workspace the test runs against, from |
required | object The replacement test logic. Validate it first with |
Successful
Malformed data and/or validation errors
Invalid Authorization
You must upgrade your plan to use this feature
You are not allowed to perform this action
Not Found
The test is not a custom test, or it is published rather than a draft
You must accept the Drata terms and conditions to use the API
Internal server error
{- "connectionIds": [
- 1
], - "recipe": {
- "assertion": "nofail",
- "allConnections": true,
- "providers": [
- {
- "provider": "HR System",
- "resources": [
- {
- "resource": "Employees",
- "evaluator": {
- "all": [
- {
- "fact": "department",
- "operator": "notEqual",
- "value": ""
}, - {
- "fact": "isActive",
- "operator": "equal",
- "value": true
}
]
}, - "filteringCriteria": {
- "mode": "inclusion",
- "evaluator": {
- "all": [
- {
- "fact": "isActive",
- "operator": "equal",
- "value": true
}
]
}
}
}
]
}
]
}
}{- "id": 1,
- "name": "A Version Control System is being Used",
- "description": "Inspected Drata's version control system...",
- "checkResultStatus": "PASSED",
- "checkStatus": "ENABLED",
- "testSource": "DRATA",
- "draft": false,
- "testId": 1,
- "parentTestId": null,
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z",
- "lastPassedAt": "2025-07-01T16:45:55.246Z",
- "failedSince": "2025-07-01T16:45:55.246Z",
- "monitorInstances": [
- {
- "id": 1,
- "checkResultStatus": "PASSED",
- "collectionDescription": "Curl call to the website",
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z",
- "checkTypes": [
- "INFRASTRUCTURE"
]
}
], - "disabledByUser": {
- "id": 1,
- "firstName": "Sally",
- "lastName": "Smith",
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z"
}, - "controls": [
- {
- "id": 1,
- "code": "AC-1",
- "name": "Access Control",
- "description": "Drata has implemented tools to monitor Drata's databases and notify appropriate personnel of any events or incidents based on\n predetermined criteria. Incidents are escalated per policy.",
- "isReady": true,
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z"
}
]
}Find Monitor Exclusions for a specific Monitoring Test
🔒 Requires Monitoring: Get Monitor permission.
| cursor | string This parameter is used to paginate through results. No value is needed for the first request. If there are additional results, the response will contain a |
| size | number [ 1 .. 500 ] Default: 50 Number of results to return |
| sort | string (SortTypeLimitedEnum) Which field to sort by |
| sortDir | string (SortDirectionEnum) The direction to sort the data |
| includeTotalCount | boolean Include total count of all matching records in response. Only honored on first page (when cursor is null). Example: includeTotalCount=false |
| expand[] | Array of strings (MonitorExclusionExpandEnum) List of subcollections and sub-objects to expand |
| targetId | string <= 30000 characters Filter exclusions by target resource ID Example: targetId=sg-0a1b2c3d4e5f67890 |
Successful
Malformed data and/or validation errors
Invalid Authorization
You are not allowed to perform this action
Not Found
You must accept the Drata terms and conditions to use the API
Internal server error
{- "data": [
- {
- "id": 1,
- "targetId": "sg-0a1b2c3d4e5f67890",
- "targetName": "Production Security Group - Web Servers",
- "exclusionReason": "Legacy system scheduled for decommission in Q2 2024 - approved by security team",
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z",
- "connection": {
- "id": "1",
- "clientType": "GOOGLE",
- "clientId": "drata.com",
- "clientAlias": "My-connection-alias-1",
- "state": "ACTIVE",
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z",
- "connectedAt": "2025-07-01T16:45:55.246Z",
- "failedAt": "2025-07-01T16:45:55.246Z",
- "deletedAt": "2025-07-01T16:45:55.246Z"
}, - "exclusionDesignator": {
- "id": 1,
- "firstName": "Sally",
- "lastName": "Smith",
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z"
}
}
], - "pagination": {
- "cursor": "string",
- "totalCount": 0
}
}Exclude failures of a Monitoring Test, with a reason. Pass the id and connectionId of each failure from List Monitoring Test Failures. Each item is reported in request order with its own statusCode and outcome. Returns 201 when every failure is excluded, and 207 when some are excluded and others are not. When none is excluded, returns 500 if any exclusion could not be saved, 422 if any failure is not a current failure of the test, or 409 otherwise, still with every item. Exclusions apply from the next test run. Returns 400 for codebase Monitoring Tests, and for tests that use Compliance Check Exclusions instead.
🔒 Requires Monitoring: Exclude Monitoring Test Failures permission.
| reason required | string <= 30000 characters Reason for the exclusion, applied to every failure in the request. |
required | Array of objects (MonitorExclusionTargetRequestPublicV2Dto) [ 1 .. 300 ] items Failures to exclude. Each item is reported with its own outcome, so one that is not a current failure, is already excluded, or repeats an earlier item does not fail the batch as long as another failure is excluded. |
Created
Multi-Status
Malformed data and/or validation errors
Invalid Authorization
You are not allowed to perform this action
Not Found
There is a conflict in the business rules with this request
You must accept the Drata terms and conditions to use the API
Unprocessable Entity
Internal server error
{- "reason": "Hosts the public website, so public access is intended.",
- "exclusions": [
- {
- "id": "sg-0a1b2c3d4e5f67890",
- "connectionId": 1
}
]
}{- "data": [
- {
- "error": {
- "message": "The failure is already excluded."
}, - "statusCode": 201,
- "outcome": "EXCLUDED",
- "data": {
- "id": "sg-0a1b2c3d4e5f67890",
- "connectionId": 1,
- "exclusionIds": [
- 10
]
}
}
]
}Delete Monitoring Test Exclusions by ID, so their failures count against the test again from the next test run. Each ID is reported in request order with its own statusCode and outcome. Returns 200 when every ID is deleted, 207 when some are deleted and others are not, and 422 with every item when none is deleted. Returns 400 for codebase Monitoring Tests, and for tests that use Compliance Check Exclusions instead.
🔒 Requires Monitoring: Re-include Monitoring Test Exclusions permission.
| exclusionIds required | Array of numbers [ 1 .. 300 ] items IDs of the exclusions to delete, from List Monitoring Test Exclusions, or from List Monitoring Test Codebase Exclusions for a codebase test. Each is reported with its own outcome, so an ID that is not an exclusion on this test, or repeats an earlier ID, does not fail the batch as long as another ID is deleted. |
Successful
Multi-Status
Malformed data and/or validation errors
Invalid Authorization
You are not allowed to perform this action
Not Found
You must accept the Drata terms and conditions to use the API
Unprocessable Entity
Internal server error
{- "exclusionIds": [
- 1,
- 2
]
}{- "data": [
- {
- "error": {
- "message": "The failure is already excluded."
}, - "statusCode": 200,
- "outcome": "DELETED",
- "data": {
- "exclusionId": 10
}
}
]
}List the Codebase Exclusions of a codebase Monitoring Test. Returns 400 for Monitoring Tests that are not codebase tests, and 404 for a Monitoring Test that is not in the workspace.
🔒 Requires Monitoring: Get Monitor permission.
| cursor | string This parameter is used to paginate through results. No value is needed for the first request. If there are additional results, the response will contain a |
| size | number [ 1 .. 500 ] Default: 50 Number of results to return |
| sort | string (SortTypeLimitedEnum) Which field to sort by |
| sortDir | string (SortDirectionEnum) The direction to sort the data |
| includeTotalCount | boolean Include total count of all matching records in response. Only honored on first page (when cursor is null). Example: includeTotalCount=false |
| expand[] | Array of strings (MonitorCodebaseExclusionExpandEnum) List of subcollections and sub-objects to expand |
| repositoryName | string <= 191 characters Filter Codebase Exclusions by the exact name of a Code Repository, as returned in the Example: repositoryName=example-org/example-repo |
Successful
Malformed data and/or validation errors
Invalid Authorization
You are not allowed to perform this action
Not Found
You must accept the Drata terms and conditions to use the API
Internal server error
{- "data": [
- {
- "id": 1,
- "findingId": "8000|example-config-id|a1b2c3d4|example-org/example-repo|main.tf|example_bucket|aws_s3_bucket|2",
- "repositoryName": "example-org/example-repo",
- "reason": "Bucket is intentionally public to serve static website assets",
- "exclusionDesignatorId": 1,
- "exclusionDesignator": {
- "id": 1,
- "firstName": "Sally",
- "lastName": "Smith",
- "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z"
}, - "createdAt": "2025-07-01T16:45:55.246Z",
- "updatedAt": "2025-07-01T16:45:55.246Z"
}
], - "pagination": {
- "cursor": "string",
- "totalCount": 0
}
}Exclude Findings of a codebase Monitoring Test, with a reason. Pass the findingId of each failure from List Monitoring Test Failures. Each Finding is reported in request order with its own statusCode and outcome. Returns 201 when every Finding is excluded, and 207 when some are excluded and others are not. When none is excluded, returns 500 if any exclusion could not be saved, 422 if any Finding is not a current failure of the test or has no Code Repository, or 409 otherwise, still with every item. Returns 400 for Monitoring Tests that are not codebase tests. Codebase Exclusions are scoped to the testId, account-wide.
🔒 Requires Monitoring: Exclude Monitoring Test Failures permission.
| reason required | string <= 30000 characters Reason for the exclusion, applied to every Finding in the request. |
| findingIds required | Array of strings [ 1 .. 300 ] items The |
Created
Multi-Status
Malformed data and/or validation errors
Invalid Authorization
You are not allowed to perform this action
Not Found
There is a conflict in the business rules with this request
You must accept the Drata terms and conditions to use the API
Unprocessable Entity
Internal server error
{- "reason": "The bucket hosts the public website, so public access is intended.",
- "findingIds": [
- "1|example-config-id|a1b2c3d4|example-org/example-repo|main.tf|example_bucket|aws_s3_bucket|2"
]
}{- "data": [
- {
- "error": {
- "message": "The failure is already excluded."
}, - "statusCode": 201,
- "outcome": "EXCLUDED",
- "data": {
- "findingId": "1|example-config-id|a1b2c3d4|example-org/example-repo|main.tf|example_bucket|aws_s3_bucket|2",
- "exclusionIds": [
- 10
]
}
}
]
}Delete Codebase Exclusions by ID, so their Findings count against the test again from the next test run. Each ID is reported in request order with its own statusCode and outcome. Returns 200 when every ID is deleted, 207 when some are deleted and others are not, and 422 with every item when none is deleted. Returns 400 for Monitoring Tests that are not codebase tests. Codebase Exclusions are scoped to the testId, account-wide.
🔒 Requires Monitoring: Re-include Monitoring Test Exclusions permission.
| exclusionIds required | Array of numbers [ 1 .. 300 ] items IDs of the exclusions to delete, from List Monitoring Test Exclusions, or from List Monitoring Test Codebase Exclusions for a codebase test. Each is reported with its own outcome, so an ID that is not an exclusion on this test, or repeats an earlier ID, does not fail the batch as long as another ID is deleted. |
Successful
Multi-Status
Malformed data and/or validation errors
Invalid Authorization
You are not allowed to perform this action
Not Found
You must accept the Drata terms and conditions to use the API
Unprocessable Entity
Internal server error
{- "exclusionIds": [
- 1,
- 2
]
}{- "data": [
- {
- "error": {
- "message": "The failure is already excluded."
}, - "statusCode": 200,
- "outcome": "DELETED",
- "data": {
- "exclusionId": 10
}
}
]
}Find Monitoring Test Failures for a specific Monitoring Test. By default, excludes failures that have been manually excluded unless includeExclusions is set to true. Each item carries a status of OPEN when it is still counted against the test, or EXCLUDED when it is not.
🔒 Requires Monitoring: Get Monitor permission.
| cursor | string This parameter is used to paginate through results. No value is needed for the first request. If there are additional results, the response will contain a |
| size | number [ 1 .. 500 ] Default: 50 Number of results to return |
| sort | string (SortTypeLimitedEnum) Which field to sort by |
| sortDir | string (SortDirectionEnum) The direction to sort the data |
| includeTotalCount | boolean Include total count of all matching records in response. Only honored on first page (when cursor is null). Example: includeTotalCount=false |
| includeExclusions | boolean Default: false Include excluded Monitor Test failures in the results. Excluded findings are returned with Example: includeExclusions=false |
| expand[] | Array of strings (MonitorTestFailureExpandEnum) List of subcollections and sub-objects to expand. Pass |
Successful
Malformed data and/or validation errors
Invalid Authorization
You are not allowed to perform this action
Not Found
You must accept the Drata terms and conditions to use the API
Internal server error
{- "data": [
- {
- "id": "sg-0a1b2c3d4e5f67890",
- "status": "OPEN",
- "providerName": "Amazon Web Services",
- "resourceName": "example-web-server-sg",
- "accountName": "Example Production Account",
- "clientId": "123456789012",
- "connectionId": 1,
- "subscriptionId": "aaaaaaaa-bbbb-0000-cccc-dddddddddddd",
- "resourceArn": "arn:aws:ec2:us-east-1:123456789012:security-group/sg-0a1b2c3d4e5f67890",
- "organizationalUnitId": "ou-root-123456789",
- "region": "us-east-1",
- "resourceType": "Microsoft.Network/loadBalancers",
- "tags": {
- "cost-center": "cc-example-001",
- "system.id": "example-system-id",
- "environment": "production"
}, - "cause": [
- { }
], - "findingId": "8000|example-config-id|a1b2c3d4|example-org/example-repo|main.tf|example_bucket|aws_s3_bucket|2",
- "repositoryName": "example-org/example-repo"
}
], - "pagination": {
- "cursor": "string",
- "totalCount": 0
}, - "lastCheck": "2025-07-01T16:45:55.246Z"
}Find resources that are currently passing a specific Monitoring Test. Returns an empty page for tests that do not emit passing-resource data (see the Drata documentation for the per-test passing-data status).
🔒 Requires Monitoring: Get Monitor permission.
| cursor | string This parameter is used to paginate through results. No value is needed for the first request. If there are additional results, the response will contain a |
| size | number [ 1 .. 500 ] Default: 50 Number of results to return |
| sort | string (SortTypeLimitedEnum) Which field to sort by |
| sortDir | string (SortDirectionEnum) The direction to sort the data |
| includeTotalCount | boolean Include total count of all matching records in response. Only honored on first page (when cursor is null). Example: includeTotalCount=false |
| expand[] | Array of strings (MonitorTestPassExpandEnum) List of subcollections and sub-objects to expand. Pass |
Successful
Malformed data and/or validation errors
Invalid Authorization
You are not allowed to perform this action
Not Found
You must accept the Drata terms and conditions to use the API
Internal server error
{- "data": [
- {
- "id": "sg-0a1b2c3d4e5f67890",
- "providerName": "Amazon Web Services",
- "resourceName": "example-web-server-sg",
- "accountName": "Example Production Account",
- "clientId": "123456789012",
- "subscriptionId": "aaaaaaaa-bbbb-0000-cccc-dddddddddddd",
- "resourceArn": "arn:aws:ec2:us-east-1:123456789012:security-group/sg-0a1b2c3d4e5f67890",
- "organizationalUnitId": "ou-root-123456789",
- "region": "us-east-1",
- "resourceType": "Microsoft.Network/loadBalancers",
- "tags": {
- "cost-center": "cc-example-001",
- "system.id": "example-system-id",
- "environment": "production"
}, - "cause": [
- { }
]
}
], - "pagination": {
- "cursor": "string",
- "totalCount": 0
}, - "lastCheck": "2025-07-01T16:45:55.246Z"
}Run a Monitoring Test immediately instead of waiting for its schedule. The run is asynchronous: a 200 means the run was accepted, not that it passed. Poll the Get Monitoring Test endpoint until checkStatus leaves TESTING to read the result. Returns 409 if a run for this test is already in flight, and 429 if the test was re-run within the cooldown window that follows a completed run.
🔒 Requires Monitoring: Trigger Monitor Test permission.
Successful
Malformed data and/or validation errors
Invalid Authorization
You are not allowed to perform this action
Not Found
There is a conflict in the business rules with this request
You must accept the Drata terms and conditions to use the API
The test was re-run within the cooldown window. Retry after the window elapses.
Internal server error
{- "testId": 1,
- "checkStatus": "TESTING"
}