curl --request POST \
    --url https://api.buster.so/api/v1/users \
    --header 'Content-Type: application/json' \
    --header 'api-key: <YOUR-API-KEY>' \
    --data '{
        "external_id": "buster@buster.so",
        "data_source_id": "b37532f2-8927-4881-9a4a-c4c48327ab1e"
        "access_variables": {
            "id": "778feab4-ef36-4283-9313-3d286836a4ca",
            "team_id": "75229e3b-35b4-4f39-9aba-3ab44d2ea3ff",
            "role": "admin"
        },
        "name": "Buster Bluth",
        "group": "Bluth Banana Company"
    }'
{
	"id": "a06ab2b4-211c-4a78-aab0-07ddc96c83d7",
	"external_id": "buster@buster.so",
	"data_source_id": "c9be733b-d714-4707-8063-52385d122388",
	"data_source_external_id": "buster_customer_facing",
	"access_variables": {
		"id": "778feab4-ef36-4283-9313-3d286836a4ca",
		"team_id": "75229e3b-35b4-4f39-9aba-3ab44d2ea3ff",
		"role": "admin"
	},
	"name": "Buster Bluth",
	"group": "Bluth Banana Company"
}

Access is provisioned on a data source level - NOT on a project level. If a user visits a project where they do not have data source access, they will be unable to use the project.

Body parameters

external_id
string
required

The identifier that you would like to reference the user with. This can be an email address, a username, or any other unique identifier that you would like to use.

external_data_source_id
string

This is the external identifier of the data source you would like to associate the user with. If you do not provide this, the user will not have access to any data sources.

access_variables
json

For multi-tenant data sources, these are the variables that will be injected into row level policies.

name
string

You can optionally provide a name for the user. This is used for search within the Buster admin UI.

group
string

You can optionally provide a group identifier for the user. This is used for search within the Buster admin UI.