REST API
Delete several terms
POST
Deletes up to 500 terms of one set in one call, with their images. This permanently removes each term's flashcard review history. The set keeps at least one term: a call that would delete them all deletes nothing; delete the set instead. Nothing is deleted when a termId isn't the set's.
Required scopes: sets:delete
header
AuthorizationBearer <token>setId*stringStudy set id, scoped to the key's user.
Match
^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$Format
uuidIdempotency-Key?stringA client-generated key (1 to 255 visible ASCII characters) that makes this POST safe to retry. A retry with the same key and body replays the original response; the same key with a different body returns 409 idempotency_conflict. Stored for 24 hours.
Match
^[\x21-\x7E]{1,255}$Length
1 <= length <= 255application/json- body
termIds*array<>1-500 ids of this set's terms.
Items
1 <= items <= 500OK
application/json- response
data*curl -X POST 'https://workroad.app/api/v1/sets/497f6eca-6276-4993-bfeb-53cbbbba6f08/terms/delete' \ -H 'Authorization: Bearer $WORKROAD_API_KEY' \ -H 'Content-Type: application/json' \ -d '{ "termIds": [ "9b14b0fc-df3a-498f-8682-731209211a87" ]}'Example Response
{ "data": { "termIds": [ "2a1b0c9d-8e7f-4a6b-9c5d-4e3f2a1b0c9d" ], "deleted": true }}