Update a workspace

Rename a workspace or change its timezone and default language with an organisation key. Omitted fields keep their value.

PATCH /v3/organisation/workspaces/{id}

Body parameters

ParameterTypeRequiredDescription
namestringOptionalNew name, 1–80 characters.
timezonestring or nullOptionalIANA timezone; null clears it.
default_languagestring or nullOptionalDefault content language; null clears it.

Response (200)

json
{
  "id": "9d2f6c1e-4b3a-4e7d-8a1f-0c5b7e9d2a64",
  "name": "Acme EU (renamed)",
  "slug": "acme-eu",
  "status": "active",
  "home": false,
  "plan": "professional",
  "timezone": "Europe/Athens",
  "default_language": "en",
  "created_at": "2026-10-29T10:00:00Z"
}

Responses

StatusDescription
200OK. The workspace after the change.
400Validation error.
401Missing or invalid organisation key — workspace keys (afn_live_ / afn_test_) are refused here by design.
403insufficient_scope — the key lacks workspaces:write — or ip_not_allowed.
404No workspace with this id in your organisation (ids of other organisations are never revealed).

Code examples

cURL
curl -X PATCH https://api.wemail.io/v3/organisation/workspaces/9d2f6c1e-4b3a-4e7d-8a1f-0c5b7e9d2a64 \
  -H "Authorization: Bearer afn_org_…" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Acme EU (renamed)",
    "timezone": "Europe/Athens"
  }'
Node.js
const res = await fetch("https://api.wemail.io/v3/organisation/workspaces/9d2f6c1e-4b3a-4e7d-8a1f-0c5b7e9d2a64", {
  method: "PATCH",
  headers: { Authorization: "Bearer " + process.env.WEMAIL_ORG_KEY, "Content-Type": "application/json" },
  body: JSON.stringify({"name": "Acme EU (renamed)", "timezone": "Europe/Athens"}),
});
console.log(await res.json());
Python
import os, requests

res = requests.patch(
    "https://api.wemail.io/v3/organisation/workspaces/9d2f6c1e-4b3a-4e7d-8a1f-0c5b7e9d2a64",
    headers={"Authorization": "Bearer " + os.environ["WEMAIL_ORG_KEY"]},
    json={"name": "Acme EU (renamed)", "timezone": "Europe/Athens"},
)
print(res.json())
ResponseExample response
{
  "id": "9d2f6c1e-4b3a-4e7d-8a1f-0c5b7e9d2a64",
  "name": "Acme EU (renamed)",
  "slug": "acme-eu",
  "status": "active",
  "home": false,
  "plan": "professional",
  "timezone": "Europe/Athens",
  "default_language": "en",
  "created_at": "2026-10-29T10:00:00Z"
}