List a control's framework mappings
GET
/controls/{id}/mappings
const url = 'https://api.vendorica.com/v1/controls/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/mappings';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.vendorica.com/v1/controls/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/mappings \ --header 'Authorization: Bearer <token>'Which framework citations this control satisfies — the join that lets a caller answer “what covers DORA Art. 5?” from their own side. Each row names the framework by CODE as well as id, because the code is what every other surface and deep link carries while the id is a per-environment uuid. A control in another organization is a 404, never a 403.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”id
required
string format: uuid
Responses
Section titled “Responses”Success
Media typeapplication/json
object
success
required
boolean
data
required
Array<object>
object
id
required
string format: uuid
controlId
required
string format: uuid
frameworkId
required
string format: uuid
frameworkCode
required
string
frameworkName
required
string
citationId
required
string | null format: uuid
citationArticleRef
required
string | null
citationTitle
required
string | null
mappingSource
required
string
confirmedAt
required
string | null format: date-time
createdAt
required
string format: date-time
timestamp
required
string format: date-time
requestId
string
message
string
Example
{ "success": true, "data": [ { "id": "2cd2fdb5-4725-4715-85e1-47a217a3ca52", "controlId": "0689eba0-ed1d-4006-8b20-d7df1fb3cdc1", "frameworkId": "4abef7fb-a3a0-4cfb-8d72-5a6817045804", "frameworkCode": "string", "frameworkName": "string", "citationId": "d1fe2056-e70c-443c-884b-4f2d078d9d8b", "citationArticleRef": "string", "citationTitle": "string", "mappingSource": "string", "confirmedAt": "2026-08-19T09:41:12.004Z", "createdAt": "2026-08-19T09:41:12.004Z" } ], "timestamp": "2026-08-19T09:41:12.004Z", "requestId": "req_01J5X8ZC3K4T7Q9M2W6B0N1V4H", "message": "string"}Validation error
Media typeapplication/json
object
success
required
boolean
error
required
string
code
required
string
details
timestamp
required
string format: date-time
requestId
string
Example
{ "success": false, "error": "Bad request", "code": "BAD_REQUEST", "timestamp": "2026-08-19T09:41:12.004Z", "requestId": "req_01J5X8ZC3K4T7Q9M2W6B0N1V4H"}Unauthorized
Media typeapplication/json
object
success
required
boolean
error
required
string
code
required
string
details
timestamp
required
string format: date-time
requestId
string
Example
{ "success": false, "error": "Unauthorized", "code": "UNAUTHORIZED", "timestamp": "2026-08-19T09:41:12.004Z", "requestId": "req_01J5X8ZC3K4T7Q9M2W6B0N1V4H"}Forbidden — missing scope
Media typeapplication/json
object
success
required
boolean
error
required
string
code
required
string
details
timestamp
required
string format: date-time
requestId
string
Example
{ "success": false, "error": "Forbidden", "code": "FORBIDDEN", "timestamp": "2026-08-19T09:41:12.004Z", "requestId": "req_01J5X8ZC3K4T7Q9M2W6B0N1V4H"}Not found
Media typeapplication/json
object
success
required
boolean
error
required
string
code
required
string
details
timestamp
required
string format: date-time
requestId
string
Example
{ "success": false, "error": "Resource not found", "code": "NOT_FOUND", "timestamp": "2026-08-19T09:41:12.004Z", "requestId": "req_01J5X8ZC3K4T7Q9M2W6B0N1V4H"}Rate limit exceeded
Media typeapplication/json
object
success
required
boolean
error
required
string
code
required
string
details
timestamp
required
string format: date-time
requestId
string
Example
{ "success": false, "error": "Too many requests", "code": "TOO_MANY_REQUESTS", "timestamp": "2026-08-19T09:41:12.004Z", "requestId": "req_01J5X8ZC3K4T7Q9M2W6B0N1V4H"}