List supplier questionnaires
GET /supplier-assessment-templates
Scope supplier_template:read Plan Growth+
List the questionnaires of the organization, newest change first: the built-in questionnaire (always the first row of an unfiltered first page) and every authored version, drafts included. A row carries no sections; read one questionnaire to get its content. Requires the supplier_template:read scope.
Example
curl "https://api.autociso.io/api/v1/supplier-assessment-templates" \
-H "Authorization: Bearer <your-api-token>"import requests
response = requests.get(
"https://api.autociso.io/api/v1/supplier-assessment-templates",
headers={"Authorization": "Bearer <your-api-token>"},
)
print(response.json())const response = await fetch("https://api.autociso.io/api/v1/supplier-assessment-templates", {
method: "GET",
headers: { "Authorization": "Bearer <your-api-token>" },
});
console.log(await response.json());Response 200
{
"data": [
{
"templateId": "satpl_builtin_supplier_security_privacy_v1",
"templateKey": "supplier_security_privacy",
"version": 1,
"titleKey": "supplier.template.builtin.title",
"title": {
"en": "Supplier security and privacy"
},
"source": "builtin",
"status": "published",
"active": true,
"isDefault": true,
"questionCount": 62,
"updatedAt": "2026-09-01T09:00:00Z",
"permissions": {
"canEdit": false,
"canSubmit": false,
"canWithdraw": false,
"canReject": false,
"canPublish": null,
"canSetDefault": false,
"canArchive": false,
"canDelete": false,
"publishBlockedReason": null
}
}
],
"meta": {
"total": 1,
"limit": 25
}
}Query parameters
limitintegerPage size. Default 25, maximum 500.offsetintegerZero-based offset.sort[status]string"asc" | "desc"sort[updatedAt]stringDefault order is updatedAt descending."asc" | "desc"filter[status][eq]stringdraft and submitted are open (editable or awaiting approval); published is the live version; archived is retired."draft" | "submitted" | "published" | "archived"filter[status][ne]stringdraft and submitted are open (editable or awaiting approval); published is the live version; archived is retired."draft" | "submitted" | "published" | "archived"filter[status][in]array of string"draft" | "submitted" | "published" | "archived"filter[source][eq]string"builtin" | "authored"filter[templateKey][eq]stringAll versions of one questionnaire.filter[isDefault][eq]booleanfilter[updatedAt][gt]string (date-time)filter[updatedAt][gte]string (date-time)filter[updatedAt][lt]string (date-time)filter[updatedAt][lte]string (date-time)
Returns
The data field of the standard { data, error, meta } envelope:
An array of object:
templateIdstring requiredtemplateKeystring requiredversioninteger requiredtitleKeystring requireddescriptionKeystringtitleobjectText per locale.enis required;ruandhefall back toenwhen blank. At most 500 characters per locale (2000 for a description); HTML is rejected.enstring requiredrustringhestring
descriptionobjectText per locale.enis required;ruandhefall back toenwhen blank. At most 500 characters per locale (2000 for a description); HTML is rejected.enstring requiredrustringhestring
sourcestring"builtin" | "authored"statusstringdraft and submitted are open (editable or awaiting approval); published is the live version; archived is retired."draft" | "submitted" | "published" | "archived"activeboolean requiredisDefaultbooleanquestionCountintegerupdatedAtstring (date-time) requiredupdatedBystringpermissionsobject requiredWhat the caller may do with this version right now.canEditboolean requiredcanSubmitboolean requiredcanWithdrawboolean requiredcanRejectboolean requiredcanPublishboolean or null requiredcanSetDefaultboolean requiredcanArchiveboolean requiredcanDeleteboolean requiredpublishBlockedReasonstring or null required
The meta field:
totalinteger requiredlimitintegeroffsetinteger
Errors
| Status | Code | Retry | Meaning |
|---|---|---|---|
| 400 | VALIDATION_FAILED |
no | Unknown or malformed query parameter. code VALIDATION_FAILED. |
| 401 | INVALID_TOKEN |
no | Missing (UNAUTHORIZED) or invalid, expired or revoked (INVALID_TOKEN) token. |
| 402 | FEATURE_GATED |
no | The tenant plan does not include supply chain security. code FEATURE_GATED; args.feature, args.minTier, args.minTierName. |
| 403 | INSUFFICIENT_SCOPE |
no | The token lacks the required scope (INSUFFICIENT_SCOPE), or the request is refused (FORBIDDEN, INSUFFICIENT_ROLE for a draft the caller may not read). |
| 429 | RATE_LIMITED |
yes | Too many failed authentication attempts from this address. code RATE_LIMITED; wait Retry-After seconds. |
| 500 | DB_ERROR |
no | Unexpected server error. code DB_ERROR; quote error.id to support. |
| 503 | BILLING_UNAVAILABLE |
yes | Billing is temporarily unavailable, so the plan could not be checked. code BILLING_UNAVAILABLE. Retry later. |
Last reviewed: 2026-10-13
Was this page helpful?