Leave a family group
curl --request DELETE \
--url https://web-api.soxai.site/api/groups/{group_id}/members/me \
--header 'Authorization: Bearer <token>'import requests
url = "https://web-api.soxai.site/api/groups/{group_id}/members/me"
headers = {"Authorization": "Bearer <token>"}
response = requests.delete(url, headers=headers)
print(response.text)const options = {method: 'DELETE', headers: {Authorization: 'Bearer <token>'}};
fetch('https://web-api.soxai.site/api/groups/{group_id}/members/me', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"left": true,
"groupStatus": "active",
"delegatedTo": "user456"
}{
"error": "http-error",
"error_msg": "Invalid authentication credentials. <reason>"
}{
"error": "forbidden",
"error_msg": "Not enough permission"
}{
"error": "unprocessable-entity",
"error_msg": "body.<field>: <validation message>"
}{
"error": "rate-limited",
"error_msg": "Rate limit exceeded. Retry after <n> seconds."
}{
"error": "internal-server-error",
"error_msg": "Failed to fetch data: <error_message>"
}Family Groups
Leave a family group
Remove the caller’s own membership from a group.
A group is never left without an admin: when the last admin leaves, the longest-standing
remaining member is promoted automatically and the response names them in delegatedTo. A
group whose last member leaves is dissolved.
Parameters
group_id(path, required) - the group to leave.
Response
200{"left": true, "groupStatus": "active" | "dissolved", "delegatedTo": ...}.delegatedTois present only when leaving promoted somebody.
Errors
- None. A group that does not exist is not a
404here: leaving is decided from the caller’s own membership record, which is absent either way, so both cases are the403below.
Authorization
- Scheme:
Authorization: Bearer <idToken>orsoxai-api-key: <api key>. - Authority inside a group comes from the caller’s own membership record, never from a SOXAI
role: an
Admin,PartnerAdminorOrgAdminclaim grants nothing here. - Required: an active member of the group. A caller who is not one receives
403 not a member of this group, whether or not the group exists.
DELETE
/
api
/
groups
/
{group_id}
/
members
/
me
Leave a family group
curl --request DELETE \
--url https://web-api.soxai.site/api/groups/{group_id}/members/me \
--header 'Authorization: Bearer <token>'import requests
url = "https://web-api.soxai.site/api/groups/{group_id}/members/me"
headers = {"Authorization": "Bearer <token>"}
response = requests.delete(url, headers=headers)
print(response.text)const options = {method: 'DELETE', headers: {Authorization: 'Bearer <token>'}};
fetch('https://web-api.soxai.site/api/groups/{group_id}/members/me', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"left": true,
"groupStatus": "active",
"delegatedTo": "user456"
}{
"error": "http-error",
"error_msg": "Invalid authentication credentials. <reason>"
}{
"error": "forbidden",
"error_msg": "Not enough permission"
}{
"error": "unprocessable-entity",
"error_msg": "body.<field>: <validation message>"
}{
"error": "rate-limited",
"error_msg": "Rate limit exceeded. Retry after <n> seconds."
}{
"error": "internal-server-error",
"error_msg": "Failed to fetch data: <error_message>"
}Authorizations
HTTPBearerSoxaiApiKey
Response
The caller has left. groupStatus reports whether the group survived, and delegatedTo is present only when leaving promoted somebody.