/clients/{clientId}/activities/{activityId}Delete or archive an activityRemoves an activity, with semantics that depend on its source (the source/operation matrix):
- Manual activities are hard-deleted — the row and its messages
are removed permanently; a subsequent GET returns 404 not_found.
- External-source activities (
gmail,outlook,fireflies) are
archived — archivedAt is stamped and the row is retained but hidden from list responses unless includeArchived=true.
Both outcomes return 204 No Content.
Parameters
clientIdstring · uuidpathrequiredClient UUID.
activityIdstring · uuidpathrequiredActivity UUID.
Responses
Headers
X-RateLimit-LimitThe request cap for the tighter of the per-organization / per-endpoint windows that applied to this request.
X-RateLimit-RemainingRequests remaining in the current window.
X-RateLimit-ResetUnix timestamp (seconds) when the current window resets.
errorobjectrequiredShow child attributes
codestringrequiredMachine-readable error category.
detailsobjectOptional per-code context (field names, retry windows, …).
messagestringrequiredHuman-readable description — intended for operator logs, not end-user display.
{
"error": {
"code": "unauthorized",
"message": "Authentication required"
}
}errorobjectrequiredShow child attributes
codestringrequiredMachine-readable error category.
detailsobjectOptional per-code context (field names, retry windows, …).
messagestringrequiredHuman-readable description — intended for operator logs, not end-user display.
{
"error": {
"code": "not_found",
"message": "client not found"
}
}Headers
Retry-AfterSeconds the client should wait before retrying.
errorobjectrequiredShow child attributes
codestringrequiredMachine-readable error category.
detailsobjectOptional per-code context (field names, retry windows, …).
messagestringrequiredHuman-readable description — intended for operator logs, not end-user display.
{
"error": {
"code": "rate_limited",
"details": {
"retry_after_seconds": 30
},
"message": "Rate limit exceeded"
}
}