v4

latestOpenAPI 3.1.02026-08-02261331761.5 KB
Tenants

Add User To Tenant

Create and add user to a tenant.

post/v2/facts/{proj_id}/{env_id}/tenants/{tenant_id}/users

Path parameters

tenant_idstring required

Either the unique id of the tenant, or the URL-friendly key of the tenant (i.e: the "slug").

Either the unique id of the tenant, or the URL-friendly key of the tenant (i.e: the "slug").

proj_idstring required

Either the unique id of the project, or the URL-friendly key of the project (i.e: the "slug").

Either the unique id of the project, or the URL-friendly key of the project (i.e: the "slug").

env_idstring required

Either the unique id of the environment, or the URL-friendly key of the environment (i.e: the "slug").

Either the unique id of the environment, or the URL-friendly key of the environment (i.e: the "slug").

Request body

keystring required

A unique id by which Permit will identify the user for permission checks.

emailstring email

The email of the user. If synced, will be unique inside the environment.

first_namestring

First name of the user.

last_namestring

Last name of the user.

attributesobject

Arbitrary user attributes that will be used to enforce attribute-based access control policies.

Example request

{
  "key": "user|892179821739812389327",
  "email": "jane@coolcompany.com",
  "first_name": "Jane",
  "last_name": "Doe",
  "attributes": {
    "department": "marketing",
    "age": 30,
    "subscription": {
      "tier": "pro",
      "expired": false
    }
  },
  "role_assignments": [
    {
      "role": "admin",
      "tenant": "stripe-inc"
    },
    {
      "role": "viewer",
      "tenant": "othercompany.com"
    }
  ]
}

Response

Successful Response

keystring required

A unique id by which Permit will identify the user for permission checks.

idstring uuid required

Unique id of the user

organization_idstring uuid required

Unique id of the organization that the user belongs to.

project_idstring uuid required

Unique id of the project that the user belongs to.

environment_idstring uuid required

Unique id of the environment that the user belongs to.

created_atstring date-time required

Date and time when the user was created (ISO_8601 format).

updated_atstring date-time required

Date and time when the user was last updated/modified (ISO_8601 format).

emailstring email

The email of the user. If synced, will be unique inside the environment.

first_namestring

First name of the user.

last_namestring

Last name of the user.

attributesobject

Arbitrary user attributes that will be used to enforce attribute-based access control policies.

Example response

{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
  "project_id": "405d8375-3514-403b-8c43-83ae74cfe0e9",
  "environment_id": "40ef0e48-a11f-4963-a229-e396c9f7e7c4",
  "key": "user|892179821739812389327",
  "email": "jane@coolcompany.com",
  "created_at": "2019-08-24T14:15:22Z",
  "updated_at": "2019-08-24T14:15:22Z",
  "first_name": "Jane",
  "last_name": "Doe",
  "attributes": {
    "department": "marketing",
    "age": 30,
    "subscription": {
      "tier": "pro",
      "expired": false
    }
  },
  "associated_tenants": [
    {
      "tenant": "stripe-inc",
      "roles": [
        "admin"
      ],
      "status": "active"
    },
    {
      "tenant": "othercompany.com",
      "roles": [
        "viewer"
      ],
      "status": "pending"
    }
  ],
  "roles": [
    {
      "role": "admin",
      "tenant": "stripe-inc"
    },
    {
      "role": "viewer",
      "tenant": "othercompany.com"
    }
  ]
}