---
title: "Create Or update Tenant (saveTenant)"
method: POST
path: "/api/tenant"
tags: ["tenant-controller"]
---

# Create Or update Tenant (saveTenant)

`POST /api/tenant`

Create or update the Tenant. When creating tenant, platform generates Tenant Id as [time-based UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier#Version_1_(date-time_and_MAC_address)). Default Rule Chain and Device profile are also generated for the new tenants automatically. The newly created Tenant Id will be present in the response. Specify existing Tenant Id id to update the Tenant. Referencing non-existing Tenant Id will cause 'Not Found' error.Remove 'id', 'tenantId' from the request body example (below) to create new Tenant entity.

Available for users with 'SYS_ADMIN' authority.

## Request body

- Tenant — A JSON value representing the tenant.
  - `id` TenantId
    - `id` string, uuid, required — ID of the entity, time-based UUID v1
    - `entityType` 'TENANT', required — string
  - `createdTime` integer — Timestamp of the tenant creation, in milliseconds
  - `country` string — Country
  - `state` string — State
  - `city` string — City
  - `address` string — Address Line 1
  - `address2` string — Address Line 2
  - `zip` string — Zip code
  - `phone` string — Phone number
  - `email` string — Email
  - `title` string, required — Title of the tenant
  - `region` string — Geo region of the tenant
  - `tenantProfileId` TenantProfileId
    - `id` string, uuid, required — ID of the entity, time-based UUID v1
    - `entityType` 'TENANT_PROFILE', required — string
  - `version` integer
  - `name` string — Name of the tenant. Read-only, duplicated from title for backward compatibility
  - `additionalInfo` unknown

## Response `200`

OK

- Tenant — A JSON value representing the tenant.
  - `id` TenantId
    - `id` string, uuid, required — ID of the entity, time-based UUID v1
    - `entityType` 'TENANT', required — string
  - `createdTime` integer — Timestamp of the tenant creation, in milliseconds
  - `country` string — Country
  - `state` string — State
  - `city` string — City
  - `address` string — Address Line 1
  - `address2` string — Address Line 2
  - `zip` string — Zip code
  - `phone` string — Phone number
  - `email` string — Email
  - `title` string, required — Title of the tenant
  - `region` string — Geo region of the tenant
  - `tenantProfileId` TenantProfileId
    - `id` string, uuid, required — ID of the entity, time-based UUID v1
    - `entityType` 'TENANT_PROFILE', required — string
  - `version` integer
  - `name` string — Name of the tenant. Read-only, duplicated from title for backward compatibility
  - `additionalInfo` unknown

---

[API](https://skmtc.net/thingsboard/apis/thingsboard-rest-api.md) · [All operations](https://skmtc.net/thingsboard/apis/thingsboard-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/thingsboard/thingsboard-rest-api/revisions/40169ccdec5c/schema)
