/projects/{id}/qualifications
An unknown id is a 400 that changes nothing, naming the bad ids. Rejecting rather than silently dropping is deliberate: a stored id the bank does not contain vanishes from every read, leaving the caller believing their project asks a question it does not.
The response is the resulting selection read back through the same path a GET uses, so the caller sees bank order and sees immediately if something it sent has since left the bank.
https://dashboard.a2bsample.com/api/developer/playground/client/projects/{projectId}/qualificationsAuthorizationandX-Api-Tokenas headers./projects/{id}/qualificationshttps://dashboard.a2bsample.com/api/developer/playground/client/projects/{projectId}/qualificationsmissing projectId
Send a request to see the response.
Example request
Request
Headers4
AuthorizationstringrequiredThe secret half. A client token starts clt_ — the four-character prefix says which table to resolve it in, so the row it matches is the caller. A vnd_… token on this prefix is a 403, not a 404.
X-Api-TokenstringrequiredThe identity half — this client's own 40-hex apiToken, the value GET /api/developer/me echoes back. Compared in constant time against the bearer token's own row, so a bearer token lifted on its own is not enough to call the playground.
Content-TypestringrequiredRequest media type.
AcceptstringoptionalResponse media type.
Path parameters1
projectIdstring<uuid>requiredProject identifier. Ownership-checked in the service, never trusted from the URL.
Body1
qualificationIdsarray<string<uuid>>requiredWhat this list holds is what the project asks afterwards. [] is meaningful — it clears the selection so the project asks nothing; it does not mean "ask the whole bank". An absent or null list is a 400. Order is not stored; reads always come back in bank order.
Request body
Responses
The resulting selection, in bank order.
successboolean- Whether the call succeeded.
messagestringqualificationsarray<object>totalinteger