> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# API de mise à jour d'utilisateur : entité vendeur

> Mettez à jour nom, métadonnées et tags d'un utilisateur vendeur Didit. Champs d'identité vérifiés immuables. Facturation à l'appel.



Prompt de mise à jour de l'utilisateur
        Copier le prompt dans le presse-papiers



      
      

\<pre>

\`Goal: Partial-update a Didit User entity by vendor_data.

Endpoint: PATCH https://verification.didit.me/v3/users/{vendor_data}/
Auth header: x-api-key: <DIDIT_API_KEY>
Content-Type: application/json

Path param:
\- vendor_data (string, REQUIRED) — free-form string, NOT a UUID. URL-encode.

Request body (PARTIAL — only included fields are touched; auto-derived counters and session history are left alone):
\- full_name (string, max 512, nullable)
\- display_name (string, nullable)
\- date_of_birth (string YYYY-MM-DD, nullable)
\- status (enum) — "ACTIVE" | "FLAGGED" | "BLOCKED" (VendorUserStatusChoices). Setting "BLOCKED" auto-adds vendor_data to the system blocklist; flipping away removes it.
\- metadata (object, nullable) — REPLACES existing metadata wholesale; merge client-side if you only want to add keys.
\- approved_emails (object<string, boolean>)
\- approved_phones (object<string, boolean>)
\- issuing_states (object<ISO3, int>)
\- reason (string, optional, max 1000): why the status changed. Recorded as the comment of the STATUS_CHANGED entry in the user's activity (comments[].comment), only when this update actually changes status. Webhooks do not carry it.

curl:
curl -X PATCH 'https://verification.didit.me/v3/users/user-abc-123/' \
-H 'x-api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"display_name": "Jane S.", "status": "FLAGGED", "reason": "Address does not match the billing country"}'

Response 200: full updated UserDetailItem (same shape as GET). See /reference/data-models.

Side effects:
\- Writes to the user's comments activity log (actor derived from the API key): a STATUS_CHANGED entry with reason when status changes, and a PROFILE_UPDATED entry when display_name, full_name, date_of_birth or metadata change.
\- last_activity_at bumped to now().
\- Concurrent updates: last-write-wins per field.
\- Re-sending an unchanged body is safe (no extra audit row).

Failure modes:
\- 400 — validation. Examples:
\{ "status": ["Invalid status. Valid options are: ACTIVE, FLAGGED, BLOCKED"] }
\{ "metadata": ["Metadata must be a JSON object."] }
date_of_birth must be YYYY-MM-DD.
\{ "reason": ["Ensure this field has no more than 1000 characters."] }
\- 401 — missing/invalid x-api-key. { "detail": "Authentication credentials were not provided." }
\- 403 — the API key is revoked or is not valid for this application. { "detail": "You do not have permission to perform this action." }
\- 403: a scoped API key without users write. { "detail": "This API key has no write access to people." }
\- 404 — vendor_data not found. { "detail": "Not found." }
\- 429 — rate-limited.

Notes:
\- vendor_data in the URL itself cannot be changed via this endpoint — create new + delete old to rekey.
\- For status-only flips, prefer the dedicated PATCH /v3/users/{vendor_data}/update-status/.
\- Overriding fields populated by a verified session is allowed but flagged in the audit log.

For end-to-end Didit integration, paste in the full prompt at /integration/integration-prompt.`

\</pre>



      
      

Coller dans

## Vue d'ensembleMet à jour les champs modifiables d'une [entité utilisateur](https://docs.didit.me/fr/entities/users/overview.md). Les champs transmis depuis les sessions de Vérification des utilisateurs (KYC) vérifiées (`full_name`, `date_of_birth`, `portrait_image`, compteurs agrégés, `features`) sont en lecture seule.## Quand l'utiliser- **Mettez à jour vos propres métadonnées** : déplacez un utilisateur vers un autre niveau, modifiez les tags, enregistrez une note interne.
- **Renommer** : définissez un meilleur `display_name` pour les vues de la console destinées à un usage interne.
- **Remplacer les données vérifiées** (avec précaution) : les remplacements manuels sont autorisés, mais ils sont consignés dans le journal d'audit.## Remarques- Le `vendor_data` présent dans l'URL ne peut pas être modifié via cet endpoint. Si vous devez changer de clé, créez un nouvel utilisateur puis supprimez l'ancien.
- Émet un webhook `user.data.updated` contenant un tableau `changed_fields`, afin que les consommateurs puissent synchroniser les données efficacement.
- Un changement de `status` effectué ici fonctionne comme [Mettre à jour le statut de l'utilisateur](https://docs.didit.me/fr/management-api/users/update-status.md).
  Il est enregistré dans l'activité de la personne, avec le `reason` facultatif (jusqu'à 1000 caractères) comme commentaire, et `BLOCKED` ajoute le `vendor_data` à la liste de blocage du système.
  L'événement webhook `user.status.updated` ne contient pas `reason`.
- Si vous envoyez un PATCH sur un champ actuellement géré par une session vérifiée, le remplacement sera accepté mais signalé dans le [journal d'audit](https://docs.didit.me/fr/console/audit-logs.md).## AutorisationsLa clé secrète principale et les [clés API](https://docs.didit.me/fr/console/api-keys.md) à accès complet peuvent toujours appeler cet endpoint.
Une clé à accès personnalisé a besoin de l'autorisation d'écriture **Personnes** (`users`).
Une clé limitée à certains workflows ou à des sessions approuvées ne peut pas accéder à cet endpoint.Les [rôles et autorisations](https://docs.didit.me/fr/console/roles-permissions.md) de la console déterminent ce qu'un membre de l'équipe peut faire dans la console.
Ils ne sont pas évalués pour les requêtes envoyées avec une clé API.## Voir aussi- [Opérations sur les utilisateurs](https://docs.didit.me/fr/entities/users/operations.md)
- [Modèle de données](https://docs.didit.me/fr/entities/users/data-model.md)
- [Mettre à jour le statut](https://docs.didit.me/fr/management-api/users/update-status.md)


## OpenAPI

````yaml fr/openapi-25.json PATCH /v3/users/{vendor_data}/
openapi: 3.0.0
info:
  version: 3.0.0
  title: Didit Verification API
  description: API de vérification d'identité. Authentifiez-vous avec l'en-tête x-api-key.
servers:
  - url: https://verification.didit.me
security: []
tags: []
paths:
  /v3/users/{vendor_data}/:
    patch:
      tags:
        - Users
      summary: Mettre à jour l'utilisateur
      description: >-
        Mise à jour partielle d'un utilisateur : `display_name`, `full_name`,
        `date_of_birth`, `status`, `metadata`,
        `approved_emails`/`approved_phones`/`issuing_states`. `metadata` est
        entièrement remplacé. Modifier `status` ici fonctionne comme [Update
        User Status](#patch-/v3/users/-vendor_data-/update-status/) : cela
        enregistre une activité `STATUS_CHANGED` avec le `reason` facultatif, et
        `BLOCKED` ajoute le `vendor_data` à la liste de blocage du système
        (quitter l'état `BLOCKED` retire cette entrée). Les modifications
        apportées à `display_name`, `full_name`, `date_of_birth` ou `metadata`
        sont enregistrées en tant qu'activité `PROFILE_UPDATED`.
      operationId: update_user
      parameters:
        - name: vendor_data
          in: path
          required: true
          schema:
            type: string
          description: >-
            Votre identifiant unique pour l'utilisateur (chaîne libre, PAS un
            UUID).
          example: user-abc-123
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                full_name:
                  type: string
                  nullable: true
                  maxLength: 512
                  description: Nom complet de l'utilisateur
                display_name:
                  type: string
                  nullable: true
                  description: Nom d'affichage personnalisé pour cet utilisateur
                date_of_birth:
                  type: string
                  format: date
                  nullable: true
                  description: Date de naissance au format YYYY-MM-DD
                status:
                  type: string
                  enum:
                    - ACTIVE
                    - FLAGGED
                    - BLOCKED
                  description: >-
                    Statut du cycle de vie de l'utilisateur. Une modification
                    est enregistrée sous forme d'activité `STATUS_CHANGED`, et
                    `BLOCKED` ajoute les `vendor_data` à la liste de blocage du
                    système (quitter `BLOCKED` supprime cette entrée).
                metadata:
                  type: object
                  nullable: true
                  description: >-
                    Objet JSON arbitraire que vous associez à l'utilisateur.
                    **Remplace complètement** les métadonnées existantes lors de
                    la mise à jour — fusionnez côté client si vous souhaitez
                    uniquement ajouter des clés.
                approved_emails:
                  type: array
                  items:
                    type: string
                  description: >-
                    Adresses e-mail vérifiées pour cet utilisateur, par ex.
                    `["john@example.com"]`. Remplace entièrement la liste
                    enregistrée.
                approved_phones:
                  type: array
                  items:
                    type: string
                  description: >-
                    Numéros de téléphone vérifiés pour cet utilisateur. Remplace
                    entièrement la liste enregistrée.
                issuing_states:
                  type: array
                  items:
                    type: string
                  description: >-
                    Pays de délivrance (ISO 3166-1 alpha-3), par ex. `["USA"]`.
                    Remplace intégralement la liste stockée.
                reason:
                  type: string
                  nullable: true
                  maxLength: 1000
                  description: >-
                    Raison pour laquelle le statut a changé. Enregistrée sur
                    l'entrée de changement de statut de l'activité de
                    l'utilisateur (`comments[].comment`, et **Activité** dans la
                    Business Console), uniquement lorsque le statut change
                    réellement. Les webhooks ne la transmettent pas.
            examples:
              Rename:
                summary: Définir le nom d'affichage
                value:
                  display_name: Jane S.
              Override status:
                summary: Signaler l'utilisateur pour examen
                value:
                  status: FLAGGED
              Add metadata:
                summary: Remplacer le JSON des métadonnées
                value:
                  metadata:
                    tier: premium
                    risk_level: low
              Fix extracted DOB:
                summary: Champs de profil extraits corrects
                value:
                  full_name: Jane Elizabeth Smith
                  date_of_birth: '1985-11-22'
              Flag with reason:
                summary: Signaler l'utilisateur et enregistrer le motif
                value:
                  status: FLAGGED
                  reason: Address does not match the billing country
      responses:
        '200':
          description: >-
            Utilisateur mis à jour. L'enregistrement utilisateur mis à jour
            complet (même structure que Obtenir l'utilisateur) est renvoyé.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserDetailItem'
              examples:
                Updated:
                  value:
                    didit_internal_id: f4e5e1f2-94a9-4f86-8c16-2b7d9b4db418
                    vendor_data: user-abc-123
                    display_name: Jane S.
                    full_name: Jane Elizabeth Smith
                    date_of_birth: '1985-11-22'
                    effective_name: Jane S.
                    status: FLAGGED
                    metadata:
                      tier: premium
                    portrait_image_url: https://<media-host>/...
                    session_count: 3
                    approved_count: 2
                    declined_count: 0
                    in_review_count: 1
                    issuing_states:
                      - USA
                    approved_emails:
                      - john@example.com
                    approved_phones:
                      - '+14155551234'
                    features:
                      ID_VERIFICATION: Approved
                      LIVENESS: Approved
                      FACE_MATCH: Approved
                      AML: Approved
                    features_list:
                      - feature: ID_VERIFICATION
                        status: Approved
                      - feature: LIVENESS
                        status: Approved
                      - feature: FACE_MATCH
                        status: Approved
                      - feature: AML
                        status: Approved
                    last_session_at: '2025-06-15T10:30:00Z'
                    last_activity_at: '2025-06-15T10:30:00Z'
                    first_session_at: '2025-06-01T08:00:00Z'
                    tags:
                      - uuid: 9a8b7c6d-5e4f-4a3b-8c2d-1e0f9a8b7c6d
                        tag:
                          uuid: e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b
                          name: VIP
                          color: '#2567FF'
                          description: null
                          source: custom
                          created_at: '2025-05-01T09:00:00Z'
                          updated_at: '2025-05-01T09:00:00Z'
                        added_by_email: analyst@acme.com
                        added_by_name: Jane Analyst
                        created_at: '2025-06-02T11:00:00Z'
                    comments: []
                    created_at: '2025-06-01T08:00:00Z'
                    updated_at: '2025-06-15T10:30:00Z'
        '400':
          description: >-
            Corps non valide — généralement un `status` inconnu ou une
            `date_of_birth` qui n'est pas au format `YYYY-MM-DD`.
          content:
            application/json:
              examples:
                Bad status:
                  value:
                    status:
                      - '"INVALID" is not a valid choice.'
                Bad date_of_birth:
                  value:
                    date_of_birth:
                      - >-
                        Date has wrong format. Use one of these formats instead:
                        YYYY-MM-DD.
                Reason too long:
                  value:
                    reason:
                      - Ensure this field has no more than 1000 characters.
        '401':
          description: >-
            Aucun identifiant fourni. Les requêtes vers les chemins
            `/v3/users/*` sans en-tête `x-api-key` (ou token `Authorization:
            Bearer`) sont rejetées par le middleware d'authentification avant
            d'atteindre l'API.
          content:
            application/json:
              examples:
                Missing credentials:
                  value:
                    detail: >-
                      You must be authenticated with a valid access token to
                      access this endpoint.
        '403':
          description: >-
            La clé ne peut pas mettre à jour les utilisateurs pour cette
            application. Une clé manquante renvoie `403` ; une clé erronée,
            révoquée ou expirée renvoie `401`.
          content:
            application/json:
              examples:
                Forbidden:
                  value:
                    detail: You do not have permission to perform this action.
        '404':
          description: >-
            Aucun utilisateur avec le `vendor_data` fourni n'existe pour cette
            application.
          content:
            application/json:
              examples:
                Not found:
                  value:
                    detail: Not found.
        '429':
          description: >-
            Limite de débit dépassée ; réduisez la cadence et réessayez après
            l'intervalle indiqué dans `Retry-After`.
          content:
            application/json:
              examples:
                Rate limited:
                  value:
                    detail: Request was throttled. Expected available in 30 seconds.
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: >-
            curl -X PATCH 'https://verification.didit.me/v3/users/user-abc-123/'
            \
              -H 'x-api-key: YOUR_API_KEY' \
              -H 'Content-Type: application/json' \
              -d '{"display_name": "Jane S.", "status": "FLAGGED"}'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY.
            client = Didit()

            result = client.users.update(
                "user-abc-123",
                display_name="Jane S.",
            )
            print(result)
        - lang: javascript
          label: Node.js
          source: |-
            import Didit from "@didit-protocol/sdk-node";

            // Reads DIDIT_API_KEY.
            const didit = new Didit();

            const result = await didit.users.update("user-abc-123", {
              display_name: "Jane S.",
            });
            console.log(result);
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\nresult, err := client.Users.Update(ctx, \"user-abc-123\", didit.UsersUpdateParams{\n\tDisplayName: didit.String(\"Jane S.\"),\n})\nif err != nil {\n\tlog.Fatal(err)\n}\nfmt.Printf(\"%+v\\n\", result)"
        - lang: java
          label: Java
          source: >-
            import me.didit.Didit;

            import me.didit.types.UsersUpdateParams;


            // Reads DIDIT_API_KEY.

            Didit client = new Didit();


            var result = client.users().update("user-abc-123",
            UsersUpdateParams.builder()
                    .displayName("Jane S.")
                    .build());
            System.out.println(result);
        - lang: php
          label: PHP
          source: |-
            <?php

            require 'vendor/autoload.php';

            use Didit\DiditClient;

            // Reads DIDIT_API_KEY.
            $didit = new DiditClient();

            $result = $didit->users->update('user-abc-123', [
                'display_name' => 'Jane S.',
            ]);
            print_r($result->toArray());
        - lang: ruby
          label: Ruby
          source: |-
            require "didit"

            # Reads DIDIT_API_KEY.
            didit = Didit::Client.new

            result = didit.users.update(
              "user-abc-123",
              display_name: "Jane S."
            )
            puts result.to_h
        - lang: csharp
          label: .NET
          source: >-
            using System;

            using System.Text.Json;

            using Didit;


            // Reads DIDIT_API_KEY.

            using var client = new DiditClient();


            var result = await client.Users.UpdateAsync("user-abc-123", new
            UsersUpdateParams

            {
                DisplayName = "Jane S.",
            });

            Console.WriteLine(JsonSerializer.Serialize(result));
components:
  schemas:
    UserDetailItem:
      type: object
      description: >-
        Détails complets de l'utilisateur. Étend UserListItem avec les
        métadonnées, les commentaires et updated_at.
      allOf:
        - $ref: '#/components/schemas/UserListItem'
        - type: object
          properties:
            metadata:
              type: object
              description: >-
                JSON de métadonnées personnalisées que vous avez associé à cet
                utilisateur. La valeur par défaut est `{}`.
            tags:
              type: array
              description: >-
                Attributions de tags. REMARQUE : sur les réponses détaillées,
                chaque entrée est un objet de *liaison* de tag (`{uuid, tag:
                {...}, added_by_email, added_by_name, created_at}`),
                contrairement au format plat `{uuid, name, color}` utilisé sur
                les réponses de liste.
              items:
                type: object
                properties:
                  uuid:
                    type: string
                    format: uuid
                    description: UUID de l'attribution du tag (et non le tag lui-même).
                  tag:
                    type: object
                    properties:
                      uuid:
                        type: string
                        format: uuid
                      name:
                        type: string
                      color:
                        type: string
                      description:
                        type: string
                        nullable: true
                      source:
                        type: string
                        enum:
                          - didit
                          - custom
                      created_at:
                        type: string
                        format: date-time
                      updated_at:
                        type: string
                        format: date-time
                  added_by_email:
                    type: string
                    nullable: true
                  added_by_name:
                    type: string
                    nullable: true
                  created_at:
                    type: string
                    format: date-time
            comments:
              type: array
              items:
                type: object
                properties:
                  uuid:
                    type: string
                    format: uuid
                  comment_type:
                    type: string
                    enum:
                      - COMMENT
                      - STATUS_CHANGED
                      - METADATA_UPDATED
                      - TAG_ADDED
                      - TAG_REMOVED
                      - PROFILE_UPDATED
                  comment:
                    type: string
                    nullable: true
                  actor_email:
                    type: string
                    nullable: true
                  actor_name:
                    type: string
                    nullable: true
                  previous_status:
                    type: string
                    nullable: true
                    enum:
                      - ACTIVE
                      - FLAGGED
                      - BLOCKED
                      - null
                  new_status:
                    type: string
                    nullable: true
                    enum:
                      - ACTIVE
                      - FLAGGED
                      - BLOCKED
                      - null
                  previous_value:
                    type: object
                    nullable: true
                    description: >-
                      Valeurs précédentes des champs pour les entrées
                      PROFILE_UPDATED.
                  new_value:
                    type: object
                    nullable: true
                    description: >-
                      Nouvelles valeurs de champ pour les entrées
                      PROFILE_UPDATED.
                  changed_fields:
                    type: array
                    items:
                      type: string
                    description: Noms des champs modifiés par une entrée PROFILE_UPDATED.
                  metadata:
                    type: object
                    nullable: true
                  mentioned_emails:
                    type: array
                    items:
                      type: string
                  created_at:
                    type: string
                    format: date-time
              description: >-
                Journal d'activité et commentaires pour cet utilisateur
                (changements de statut, modifications de profil, notes
                manuelles).
            updated_at:
              type: string
              format: date-time
    UserListItem:
      type: object
      description: Un utilisateur vérifié.
      properties:
        didit_internal_id:
          type: string
          format: uuid
          description: UUID interne stable de Didit pour cet utilisateur.
        vendor_data:
          type: string
          nullable: true
          description: >-
            Votre identifiant unique pour cet utilisateur (transmis lors de la
            création des sessions). Peut être nul si aucun identifiant
            fournisseur n'a été fourni.
        display_name:
          type: string
          nullable: true
          description: Nom d'affichage personnalisé défini par vous
        full_name:
          type: string
          nullable: true
          description: Nom complet extrait des documents vérifiés
        date_of_birth:
          type: string
          format: date
          nullable: true
        effective_name:
          type: string
          nullable: true
          description: >-
            Meilleur nom disponible : display_name s'il est défini, sinon
            full_name
        status:
          type: string
          enum:
            - ACTIVE
            - FLAGGED
            - BLOCKED
          description: >-
            Statut de cycle de vie de l'enregistrement utilisateur (PAS un
            statut de session). `ACTIVE` est la valeur par défaut, `FLAGGED`
            signale l'utilisateur pour un examen manuel, `BLOCKED` empêche de
            nouvelles sessions pour ce `vendor_data`.
        portrait_image_url:
          type: string
          nullable: true
          description: >-
            URL pré-signée de la photo de portrait de l'utilisateur (expire
            après quelques heures)
        session_count:
          type: integer
          description: Nombre total de sessions de vérification pour cet utilisateur
        approved_count:
          type: integer
          description: Nombre de sessions approuvées
        declined_count:
          type: integer
          description: Nombre de sessions refusées
        in_review_count:
          type: integer
          description: Nombre de sessions en cours d'examen
        issuing_states:
          type: array
          items:
            type: string
          description: >-
            Codes ISO 3166-1 alpha-3 des pays de délivrance observés sur les
            documents d'identité approuvés de cet utilisateur, par ex. `["USA",
            "ESP"]`. Tableau vide s'il n'y en a aucun.
        approved_emails:
          type: array
          items:
            type: string
          description: >-
            Adresses e-mail vérifiées collectées à partir des sessions
            approuvées de cet utilisateur, par ex. `["john@example.com"]`.
        approved_phones:
          type: array
          items:
            type: string
          description: >-
            Numéros de téléphone vérifiés collectés à partir des sessions
            approuvées de cet utilisateur, par ex. `["+14155551234"]`.
        features:
          type: object
          description: "Statut agrégé par fonctionnalité sur l'ensemble des sessions de cet utilisateur. Clés possibles\_: `ID_VERIFICATION`, `NFC`, `LIVENESS`, `FACE_MATCH`, `POA`, `QUESTIONNAIRE`, `EMAIL_VERIFICATION`, `PHONE`, `AML`, `IP_ANALYSIS`, `AGE_ESTIMATION`, `DATABASE_VALIDATION`. Valeurs possibles\_: `Approved`, `Declined`, `In Review`, `Not Finished`, `Resub Requested`."
        features_list:
          type: array
          items:
            type: object
            properties:
              feature:
                type: string
              status:
                type: string
          description: >-
            Mêmes données que `features`, sous la forme d'un tableau ordonné
            d'objets `{feature, status}`.
        last_session_at:
          type: string
          format: date-time
          nullable: true
          description: Horodatage de la session la plus récente
        first_session_at:
          type: string
          format: date-time
          nullable: true
          description: Horodatage de la première session
        last_activity_at:
          type: string
          format: date-time
          nullable: true
          description: >-
            Horodatage de l'activité la plus récente sur cet utilisateur
            (session, transaction, changement de statut, modification des
            données, etc.).
        tags:
          type: array
          items:
            type: object
            properties:
              uuid:
                type: string
                format: uuid
              name:
                type: string
              color:
                type: string
          description: Tags attribués à cet utilisateur
        created_at:
          type: string
          format: date-time
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        La clé API de votre application, issue de Développeurs -> Clés API dans
        la Business Console. La clé principale dispose d'un accès complet. Une
        clé nommée peut être restreinte : aucun, lecture ou écriture par
        ressource, limitée à certains workflows ou aux sessions approuvées, à
        une liste d'adresses IP et à une date d'expiration. 401 signifie que la
        clé est incorrecte, révoquée ou expirée ; 403 signifie qu'aucune clé n'a
        été envoyée, que la clé n'a pas accès à cette ressource ou action, ou
        que la requête provient d'une adresse hors de sa liste d'IP ; 404 sur
        une route de session signifie que la session est hors des workflows ou
        des statuts de la clé. Une clé sans accès aux médias reçoit les URL
        d'images, de vidéos et de PDF à null, et une clé sans accès en écriture
        aux sessions reçoit les liens et tokens de session à null. Voir
        https://docs.didit.me/console/api-keys.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.