Passer au contenu

Créer un nouveau compte utilisateur de tableau de bord

post

/scim/v2/Users

Utilisez cet endpoint pour créer un nouveau compte utilisateur de tableau de bord en précisant l’adresse e-mail, le prénom et le nom de famille, ainsi que les autorisations (pour définir les autorisations au niveau de l’entreprise, de l’espace de travail et de l’équipe).

Conditions préalables

Pour utiliser cet endpoint, vous aurez besoin d’un jeton SCIM. Utilisez l’origine de votre service comme en-tête X-Request-Origin. Pour plus d’informations, consultez la section Provisionnement automatisé des utilisateurs.

Limite de débit

Cet endpoint a une limite de débit de 20 000 requêtes par jour et par entreprise. Cette limite de débit est partagée avec les endpoints PUT, GET et DELETE /scim/v2/Users/, comme indiqué dans Limites de débit de l’API.

Corps de la requête

Content-Type: application/json
X-Request-Origin: YOUR-REQUEST-ORIGIN-HERE
Authorization: Bearer YOUR-SCIM-TOKEN-KEY
{
    "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
    "userName": "[email protected]",
    "name": {
        "givenName": "Test",
        "familyName": "User"
    },
    "department": "finance",
    "permissions": {
        "companyPermissions": ["manage_company_settings"],
        "roles": [
            {
                "roleName": "Test Role"
            },
            {
                "roleId": "1f16c016-8e44-48f3-9fd7-2b8d5d70d9bd"
            }
        ],
        "appGroup": [
            {
                "appGroupName": "Test Workspace",
                "appGroupPermissions": ["view_campaigns","view_canvases"],
                "team": [
                    {
                         "teamName": "Test Team",
                         "teamPermissions": ["edit_campaigns","launch_campaigns","edit_canvases","launch_canvases"]
                    }
                ]
            },
            {
                "appGroupName": "Other Test Workspace",
                "appGroupPermissionSets": [
                    {
                        "appGroupPermissionSetName":  "Test Permission Set"
                    }
                ]
            }
        ]
    }
}

Paramètres de requête

Paramètre Obligatoire Type de données Description
schemas Obligatoire Tableau de chaînes de caractères Nom du schéma SCIM 2.0 attendu pour l’objet utilisateur.
userName Obligatoire Chaîne de caractères L’adresse e-mail de l’utilisateur.
name Obligatoire Objet JSON Cet objet contient le prénom et le nom de famille de l’utilisateur.
department Facultatif Chaîne de caractères Chaîne de département valide, issue de la documentation sur les chaînes de département. Omettez ce paramètre ou transmettez une chaîne vide si la valeur est inconnue.
permissions Facultatif Objet JSON Objet d’autorisations tel que décrit dans la documentation de l’objet d’autorisations. S’il est omis ou vide, Braze attribue à l’utilisateur l’ensemble d’autorisations par défaut sur l’espace de travail par défaut configuré dans SCIM Provisioning. L’ensemble par défaut ne comprend que des autorisations de consultation.

Exemple de requête

curl --location --request POST 'https://rest.iad-01.braze.com/scim/v2/Users' \
--header 'Content-Type: application/json' \
--header 'X-Request-Origin: YOUR-REQUEST-ORIGIN-HERE' \
--header 'Authorization: Bearer YOUR-SCIM–TOKEN-HERE' \
--data raw '{
    "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
    "userName": "[email protected]",
    "name": {
        "givenName": "Test",
        "familyName": "User"
    },
    "department": "finance",
    "permissions": {
        "companyPermissions": ["manage_company_settings"],
        "roles": [
            {
                "roleName": "Test Role"
            },
            {
                "roleId": "1f16c016-8e44-48f3-9fd7-2b8d5d70d9bd"
            }
        ],
        "appGroup": [
            {
                "appGroupName": "Test Workspace",
                "appGroupPermissions": ["view_campaigns","view_canvases"],
                "team": [
                    {
                         "teamName": "Test Team",
                         "teamPermissions": ["edit_campaigns","launch_campaigns","edit_canvases","launch_canvases"]
                    }
                ]
            }
        ]
    }
}'

Réponse

{
    "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
    "id": "dfa245b7-24195aec-887bb3ad-602b3340",
    "userName": "[email protected]",
    "name": {
        "givenName": "Test",
        "familyName": "User"
    },
    "department": "finance",
    "lastSignInAt": "NA",
    "createdAt": "NA",
    "permissions": {
        "companyPermissions": ["manage_company_settings"],
        "roles": [
            {
                "roleName": "Test Role",
                "roleId": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
                "appGroup": [
                    {
                        "appGroupId": "a1b2c3d4-e5f6-4a1b-8c2d-3e4f5a6b7c8d",
                        "appGroupName": "Some Workspace",
                        "appGroupPermissions": ["view_campaigns","view_canvases"],
                        "team": [
                            {
                                "teamId": "1f16c016-8e44-48f3-9fd7-2b8d5d70d9bd",
                                "teamName": "Some Team",
                                "teamPermissions": ["edit_campaigns","launch_campaigns","edit_canvases","launch_canvases"]
                            }
                        ]
                    }
                ]
            },
            {
                "roleName": "Another Test Role",
                "roleId": "b2c3d4e5-f6a7-4b1c-9d2e-4f5a6b7c8d9e",
                "appGroup": [
                    {
                        "appGroupId": "c3d4e5f6-a7b8-4c1d-8e2f-5a6b7c8d9e0f",
                        "appGroupName": "Production Workspace",
                        "appGroupPermissionSets": [
                            {
                                "appGroupPermissionSetName": "A Permission Set",
                                "appGroupPermissionSetId": "d4e5f6a7-b8c9-4d1e-9f2a-6b7c8d9e0f1a",
                                "permissions": ["view_campaigns","edit_campaigns","view_content_blocks"]
                            }
                        ]
                    }
                ]
            }
        ],
        "appGroup": [
            {
                "appGroupId": "a1b2c3d4-e5f6-4a1b-8c2d-3e4f5a6b7c8d",
                "appGroupName": "Test Workspace",
                "appGroupPermissions": ["view_campaigns","view_canvases"],
                "team": [
                    {
                         "teamId": "1f16c016-8e44-48f3-9fd7-2b8d5d70d9bd",
                         "teamName": "Test Team",
                         "teamPermissions": ["edit_campaigns","launch_campaigns","edit_canvases","launch_canvases"]
                    }
                ]
            },
            {
                "appGroupName": "Other Test Workspace",
                "appGroupPermissionSets": [
                    {
                        "appGroupPermissionSetName":  "Test Permission Set"
                    }
                ]
            }
        ]
    }
}

Paramètres de réponse

Paramètre Type de données Description
schemas Tableau de chaînes de caractères Nom du schéma SCIM 2.0 attendu pour l’objet utilisateur.
userName Chaîne de caractères L’adresse e-mail de l’utilisateur.
name Objet JSON Cet objet contient le prénom et le nom de famille de l’utilisateur.
department Chaîne de caractères Chaîne de département valide, issue de la documentation sur les chaînes de département.
permissions Objet JSON Objet d’autorisations tel que décrit dans la documentation de l’objet d’autorisations.
id Chaîne de caractères ID généré par Braze, utilisé pour rechercher et gérer les comptes utilisateurs.
createdAt Chaîne de caractères Date de création du compte utilisateur, en UTC. Renvoie NA si la valeur n’est pas définie.
lastSignInAt Chaîne de caractères Date de la dernière connexion réussie, en UTC. Renvoie NA si l’utilisateur ne s’est jamais connecté. Format : YYYY Mon DD, H:MM AM/PM.

États d’erreur

Si un utilisateur possédant ce userName ou cette adresse e-mail existe déjà dans Braze, l’endpoint renvoie la réponse suivante :

HTTP/1.1 409 Conflict
Date: Tue, 10 Sep 2019 02:22:30 GMT
Content-Type: text/json;charset=UTF-8

{
  "schemas": ["urn:ietf:params:scim:api:messages:2.0:Error"],
  "detail": "User already exists in the database.",
  "status": 409
}
New Stuff!