List decisions
const url = 'https://api-staging.asqary.com/v1/decisions?risk_level=high%2Ccritical&recommended_action=manual_review%2Cblock&limit=25';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://api-staging.asqary.com/v1/decisions?risk_level=high%2Ccritical&recommended_action=manual_review%2Cblock&limit=25' \ --header 'Authorization: Bearer <token>'Newest first, keyset-paginated. Requires risk:read.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Query Parameters
Section titled “Query Parameters”Example
high,criticalComma-separated risk levels.
Example
manual_review,blockComma-separated actions.
Only decisions where this rule contributed.
HMAC-SHA256 of the identifier under your identifier key, lowercase hex.
Defaults to 30 days before to.
Defaults to now.
next_cursor from the previous page.
Header Parameters
Section titled “Header Parameters”Your own request ID (1–128 of letters, digits and . _ : -), echoed back and stored.
Responses
Section titled “Responses”A page of decisions
object
object
HMAC-SHA256 of the identifier under your identifier key, lowercase hex.
object
Example
{ "decisions": [ { "risk_level": "low", "recommended_action": "approve", "feedback_label": "fraud", "environment": "live" } ]}Missing, invalid, expired or revoked API key.
object
Invalid_request, unauthorized, key_expired, key_revoked, forbidden, ip_not_allowed, quota_exceeded, not_found, method_not_allowed, conflict, policy_in_use, policy_active, policy_archived, idempotency_key_reused, validation_failed, rule_not_available, backtest_invalid_rows, backtest_too_large, rate_limited, internal_error
object
object
Example generated
{ "error_code": "example", "message": "example", "retryable": true, "request_id": "example", "details": {}}Missing scope or role, IP not allowed, or monthly quota exceeded (quota_exceeded).
object
Invalid_request, unauthorized, key_expired, key_revoked, forbidden, ip_not_allowed, quota_exceeded, not_found, method_not_allowed, conflict, policy_in_use, policy_active, policy_archived, idempotency_key_reused, validation_failed, rule_not_available, backtest_invalid_rows, backtest_too_large, rate_limited, internal_error
object
object
Example generated
{ "error_code": "example", "message": "example", "retryable": true, "request_id": "example", "details": {}}validation_failed (details: field errors), rule_not_available, or backtest_invalid_rows.
object
Invalid_request, unauthorized, key_expired, key_revoked, forbidden, ip_not_allowed, quota_exceeded, not_found, method_not_allowed, conflict, policy_in_use, policy_active, policy_archived, idempotency_key_reused, validation_failed, rule_not_available, backtest_invalid_rows, backtest_too_large, rate_limited, internal_error
object
object
Example generated
{ "error_code": "example", "message": "example", "retryable": true, "request_id": "example", "details": {}}Too many requests (rate_limited); retry after Retry-After seconds.
object
Invalid_request, unauthorized, key_expired, key_revoked, forbidden, ip_not_allowed, quota_exceeded, not_found, method_not_allowed, conflict, policy_in_use, policy_active, policy_archived, idempotency_key_reused, validation_failed, rule_not_available, backtest_invalid_rows, backtest_too_large, rate_limited, internal_error
object
object
Example generated
{ "error_code": "example", "message": "example", "retryable": true, "request_id": "example", "details": {}}Headers
Section titled “Headers”Seconds to wait before retrying.