Groups endpoints
Manage translation key groups within a project.
Overview
Groups are a virtual concept — they are derived from the group_name column on translation keys. There is no separate groups table. A group exists as long as it has at least one non-deleted key.
GET /v1/groups
List all groups that have at least one active key.
Request
GET https://sapi.i18nme.com/v1/groups| Header | Required | Description |
|---|---|---|
X-API-Key | ✅ | Your project API key |
Response
200 OK
{
"project_id": "3fa85f64-...",
"groups": ["Default", "common", "nav", "auth"],
"count": 4
}POST /v1/groups
Validate and reserve a group name.
A group is implicitly created when the first key with that name is added. This endpoint lets you validate the name format and confirm it does not already exist before creating keys in that group.
Request
POST https://sapi.i18nme.com/v1/groups
Content-Type: application/json| Header | Required | Description |
|---|---|---|
X-API-Key | ✅ | Your project API key |
{
"name": "marketing"
}Group names must be 1–200 characters and may only contain letters, digits, spaces, hyphens (-), underscores (_), or periods (.).
Response
201 Created
{
"project_id": "3fa85f64-...",
"name": "marketing",
"created": true
}409 Conflict — a group with this name already exists.
PATCH /v1/groups/
Rename an existing group. Updates the group_name on every key in the group atomically.
Request
PATCH https://sapi.i18nme.com/v1/groups/{group_name}
Content-Type: application/json| Parameter | In | Required | Description |
|---|---|---|---|
group_name | path | ✅ | Current group name |
{
"new_name": "brand"
}Response
200 OK
{
"project_id": "3fa85f64-...",
"old_name": "marketing",
"new_name": "brand",
"keys_updated": 12
}404 Not Found — source group does not exist.
409 Conflict — target name is already in use.
DELETE /v1/groups/
Soft-delete all translation keys in the group. The keys are marked with deleted_at and are no longer served by any GET endpoint.
Destructive operation
All keys in the group will be soft-deleted. This cannot be undone via the API. Use the portal to restore deleted keys if needed.
Request
DELETE https://sapi.i18nme.com/v1/groups/{group_name}| Parameter | In | Required | Description |
|---|---|---|---|
group_name | path | ✅ | Group to delete |
Response
204 No Content — all keys in the group were soft-deleted; no response body.
404 Not Found — group does not exist or is already deleted.
Examples
curl https://sapi.i18nme.com/v1/groups \
-H "X-API-Key: key_live_XXXX"curl -X POST https://sapi.i18nme.com/v1/groups \
-H "X-API-Key: key_live_XXXX" \
-H "Content-Type: application/json" \
-d '{"name": "marketing"}'curl -X PATCH https://sapi.i18nme.com/v1/groups/marketing \
-H "X-API-Key: key_live_XXXX" \
-H "Content-Type: application/json" \
-d '{"new_name": "brand"}'curl -X DELETE https://sapi.i18nme.com/v1/groups/marketing \
-H "X-API-Key: key_live_XXXX"