> ## 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.

# Actualizar flujo de trabajo por API: editar flujo KYC

> Actualiza un flujo KYC o KYB de Didit por API: renómbralo, reemplaza funciones ordenadas o ajusta umbrales. Pago por llamada, sin contratos.



Prompt de la API para actualizar un flujo
        Copiar el prompt al portapapeles



      
      

\<pre>

\`Update a simple Didit workflow through the Management API.

Endpoint:
PATCH https://verification.didit.me/v3/workflows/{settings_uuid}/

Authentication:
Use the x-api-key header with my Didit API key.

Requirements:
\- Use PATCH and include only the fields I want to change.
\- To rename the workflow, send workflow_label only.
\- To change workflow checks, send the full desired features array. This replaces the previous feature order and config.
\- Do not send workflow_graph, branches, actions, webhooks, or conditional logic.
\- Send features in the exact execution order.
\- Use uppercase feature values such as OCR, LIVENESS, FACE_MATCH, AML, QUESTIONNAIRE, EMAIL_VERIFICATION, PHONE_VERIFICATION, or PROOF_OF_ADDRESS.
\- Configure each feature with the fields from /management-api/workflows/feature-configs.
\- For an OCR feature, omit config.documents_allowed or send an empty object to allow every supported document type. Send config.documents_allowed only to restrict the allowed documents.
\- Keep dependency order valid. For example, put OCR before FACE_MATCH.
\- If the workflow includes QUESTIONNAIRE, use the latest questionnaire_id as config.questionnaire_uuid.

Example metadata update body:
\{
"workflow_label": "Premium KYC"
}

Example full feature replacement body:
\{
"features": [
\{
  "feature": "OCR",
  "config": {
    "documents_allowed": {
      "USA": {
        "DL": {
          "enabled": 1,
          "sides": 2
        }
      }
    }
  }
},
\{
  "feature": "AML",
  "config": {
    "aml_score_review_threshold": 70,
    "aml_score_approve_threshold": 30
  }
}
]
}

Build the API call, handle validation errors, and return the updated workflow response.`

\</pre>



      
      

Pegar en

Usa `PATCH` para actualizaciones parciales. Para cambiar el nombre de un flujo de verificación (workflow), envía solo `workflow_label`.```json theme={null}
{
  "workflow_label": "Premium KYC"
}
```Para cambiar las comprobaciones del flujo, envía el array `features` completo tal como lo quieres. Esto reemplaza el orden y la configuración anteriores de las funciones.```json theme={null}
{
  "features": [
    {
      "feature": "OCR",
      "config": {
        "documents_allowed": {
          "USA": {
            "DL": {
              "enabled": 1,
              "sides": 2
            }
          }
        }
      }
    },
    {
      "feature": "AML",
      "config": {
        "aml_score_review_threshold": 70,
        "aml_score_approve_threshold": 30
      }
    }
  ]
}
```La API v3 mantiene los flujos simples: una única ruta lineal y un único paso de estado final. Aquí no se aceptan ramas, nodos de acción ni nodos de webhook.## Referencia de configuración de funcionesCuando envías `features` en un `PATCH`, el array reemplaza el orden y la configuración anteriores de las funciones. Vuelve a incluir toda la configuración obligatoria.El objeto `config` exacto depende de la función. Consulta la lista completa de campos, los valores predeterminados, los ajustes obligatorios, los rangos de valores y los ejemplos en [Configuración de funciones del flujo](https://docs.didit.me/es/management-api/workflows/feature-configs.md).Para `OCR`, omite `config.documents_allowed`, envía `null` o envía `{}` para permitir todos los tipos de documento admitidos. Inclúyelo solo cuando quieras restringir el flujo a países o tipos de documento concretos. Para `QUESTIONNAIRE`, `config.questionnaire_uuid` es obligatorio.## Actualizar la configuración del flujoPuedes modificar ajustes a nivel de sesión sin tocar la lista de funciones. Envía solo los campos que quieras cambiar.| Campo | Tipo | Descripción |
| - | - | - |
| `is_white_label_enabled` | boolean | Activa la personalización de marca blanca para las sesiones creadas con este flujo. |
| `is_desktop_allowed` | boolean | Permite que el flujo de verificación se ejecute en navegadores de escritorio. |
| `max_retry_attempts` | integer (0–10) | Número máximo de reintentos permitidos tras una verificación rechazada. `0` bloquea al usuario tras el primer rechazo. |
| `retry_window_days` | integer (1–365) o `null` | Ventana móvil en días que se usa para contar los reintentos (`null` = límite sin límite temporal). |
| `session_expiration_time` | integer (3600–2419200) | Segundos antes de que expire una sesión sin terminar. Mínimo 1 hora, máximo 4 semanas. |```json theme={null}
{
  "is_white_label_enabled": true,
  "is_desktop_allowed": true,
  "max_retry_attempts": 5,
  "retry_window_days": 14,
  "session_expiration_time": 86400
}
```Usa el `uuid` del flujo que devuelve el endpoint de listado, creación u obtención como `settings_uuid` en esta URL.


## OpenAPI

````yaml es/openapi-25.json PATCH /v3/workflows/{settings_uuid}/
openapi: 3.0.0
info:
  version: 3.0.0
  title: Didit Verification API
  description: API de verificación de identidad. Autentícate con el encabezado x-api-key.
servers:
  - url: https://verification.didit.me
security: []
tags: []
paths:
  /v3/workflows/{settings_uuid}/:
    patch:
      tags:
        - Workflows
      summary: Actualizar flujo
      description: >-
        Actualiza un flujo de verificación (workflow). El versionado depende del
        campo `status` que envíes y del estado actual de la versión: (1) sin
        `status` en una versión **publicada** → la versión publicada se
        actualiza en el mismo lugar (mismo `uuid`, misma `version`); (2) sin
        `status` en un **borrador** → el borrador se actualiza y se publica de
        inmediato; (3) `status: "published"` en una versión **publicada** → se
        crea y se devuelve una NUEVA versión publicada bajo el mismo
        `workflow_id` (nuevo `uuid`, `version` + 1), y se elimina cualquier
        borrador existente del grupo; (4) `status: "draft"` mantiene un borrador
        como borrador (guardado automático), pero se rechaza con 400 en una
        versión publicada (`"Cannot revert a published version to draft."`). El
        cuerpo acepta la misma lista estricta de campos permitidos que la
        creación: las claves desconocidas se rechazan con 400.
      operationId: update_workflow
      parameters:
        - name: settings_uuid
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: UUID por versión del flujo que se va a actualizar.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SimpleWorkflowUpdateRequest'
            examples:
              Replace features:
                summary: Envía el orden completo deseado de las funciones
                value:
                  features:
                    - feature: OCR
                    - feature: AML
              Rename:
                summary: Cambiar el nombre de un flujo de verificación (workflow)
                value:
                  workflow_label: Premium KYC
              Set as default:
                summary: Establecer este flujo como el predeterminado de la aplicación
                value:
                  is_default: true
              Update config:
                summary: Cambiar la configuración de funciones
                value:
                  features:
                    - feature: OCR
                    - feature: LIVENESS
                      config:
                        face_liveness_method: passive
              Publish a draft:
                summary: Promover un borrador a publicado
                value:
                  status: published
      responses:
        '200':
          description: >-
            Flujo actualizado. El cuerpo es la configuración COMPLETA de la
            versión resultante (con la misma forma `VerificationSettings` sin
            procesar que `GET /v3/workflows/{settings_uuid}/`). Cuando la
            actualización crea una versión nueva (al enviar `status:
            "published"` sobre una fila publicada), los valores de `uuid` y
            `version` devueltos son distintos de los que modificaste: usa el
            `uuid` devuelto en las llamadas posteriores.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkflowDetail'
        '400':
          description: >-
            Error de validación: una clave de primer nivel fuera de la lista de
            claves aceptadas, una función desconocida, un orden no válido, un
            umbral fuera de rango, una referencia a un cuestionario inexistente,
            una función `SIGNATURE` que se publicaría sin ningún documento que
            firmar, una nueva función `SIGNATURE` con `signature_level: "aes"`
            cuando la firma avanzada (AES) no está disponible
            (`aes_not_available`, consulta `signature_availability` en el flujo;
            un paso que ya almacena `aes` lo conserva), o `status: "draft"`
            enviado para una versión publicada (`"Cannot revert a published
            version to draft."`). El cuerpo de la respuesta es un error de
            validación de DRF indexado por nombre de campo.
        '403':
          description: Falta la clave de API o no es válida.
          content:
            application/json:
              examples:
                Invalid token:
                  value:
                    detail: You do not have permission to perform this action.
        '404':
          description: >-
            No existe ningún flujo con este `settings_uuid` para la aplicación
            autenticada.
        '415':
          description: >-
            Tipo de contenido no admitido. Define `Content-Type:
            application/json`.
        '429':
          description: Límite de solicitudes superado. Reintenta con retroceso exponencial.
        '500':
          description: Error inesperado del servidor. Se puede reintentar sin riesgo.
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: cURL
          source: >-
            curl -X PATCH
            'https://verification.didit.me/v3/workflows/a1b2c3d4-5678-90ab-cdef-111111111111/'
            \
              -H 'x-api-key: YOUR_API_KEY' \
              -H 'Content-Type: application/json' \
              -d '{"workflow_label": "Premium KYC"}'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY.
            client = Didit()

            result = client.workflows.update(
                "11111111-2222-3333-4444-555555555555",
                features=[{
                    "feature": "OCR",
                }, {
                    "feature": "AML",
                }],
            )
            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.workflows.update("11111111-2222-3333-4444-555555555555", {
              features: [{
                feature: "OCR",
              }, {
                feature: "AML",
              }],
            });

            console.log(result);
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\nresult, err := client.Workflows.Update(ctx, \"11111111-2222-3333-4444-555555555555\", didit.SimpleWorkflowUpdateRequest{\n\tFeatures: didit.Some([]didit.SimpleWorkflowFeature{{\n\t\tFeature: \"OCR\",\n\t}, {\n\t\tFeature: \"AML\",\n\t}}),\n})\nif err != nil {\n\tlog.Fatal(err)\n}\nfmt.Printf(\"%+v\\n\", result)"
        - lang: java
          label: Java
          source: >-
            import java.util.List;

            import me.didit.Didit;

            import me.didit.types.SimpleWorkflowFeature;

            import me.didit.types.SimpleWorkflowUpdateRequest;


            // Reads DIDIT_API_KEY.

            Didit client = new Didit();


            var result =
            client.workflows().update("11111111-2222-3333-4444-555555555555",
            SimpleWorkflowUpdateRequest.builder()
                    .features(List.of(
                            SimpleWorkflowFeature.builder()
                                    .feature(SimpleWorkflowFeature.Feature.of("OCR"))
                                    .build(),
                            SimpleWorkflowFeature.builder()
                                    .feature(SimpleWorkflowFeature.Feature.of("AML"))
                                    .build()))
                    .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->workflows->update('11111111-2222-3333-4444-555555555555', [
                'features' => [[
                    'feature' => 'OCR',
                ], [
                    'feature' => 'AML',
                ]],
            ]);

            print_r($result->toArray());
        - lang: ruby
          label: Ruby
          source: |-
            require "didit"

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

            result = didit.workflows.update(
              "11111111-2222-3333-4444-555555555555",
              features: [{
                feature: "OCR",
              }, {
                feature: "AML",
              }]
            )
            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.Workflows.UpdateAsync("11111111-2222-3333-4444-555555555555",
            new SimpleWorkflowUpdateRequest

            {
                Features = new SimpleWorkflowFeature[]
                {
                    new()
                    {
                        Feature = "OCR",
                    },
                    new()
                    {
                        Feature = "AML",
                    },
                },
            });

            Console.WriteLine(JsonSerializer.Serialize(result));
components:
  schemas:
    SimpleWorkflowUpdateRequest:
      type: object
      description: >-
        Actualiza los metadatos del flujo o reemplaza la lista lineal completa
        de funciones. Lista ESTRICTA de campos permitidos: cualquier clave que
        no figure aquí se rechaza con un 400.
      properties:
        workflow_label:
          type: string
          maxLength: 50
          description: Nombre visible del flujo de verificación (máx. 50 caracteres).
        is_default:
          type: boolean
          description: >-
            Establece este flujo de verificación (workflow) como predeterminado
            para las nuevas sesiones.
        status:
          type: string
          enum:
            - draft
            - published
          description: >-
            Controla el versionado. Omítelo para actualizar la versión actual
            sin crear una nueva (los borradores se publican automáticamente).
            `published` en una versión ya publicada crea y devuelve una versión
            NUEVA. `draft` solo es válido mientras la versión siga siendo un
            borrador.
        features:
          type: array
          minItems: 1
          description: >-
            Si se proporciona, sustituye por completo el orden y la
            configuración de las funciones.
          items:
            $ref: '#/components/schemas/SimpleWorkflowFeature'
        is_white_label_enabled:
          type: boolean
          description: >-
            Activa la personalización de marca blanca para las sesiones creadas
            con este flujo de verificación (workflow).
        is_desktop_allowed:
          type: boolean
          description: >-
            Permite que el flujo de verificación se ejecute en navegadores de
            escritorio.
        max_retry_attempts:
          type: integer
          minimum: 0
          maximum: 10
          description: >-
            Número máximo de reintentos permitidos tras una verificación
            rechazada. `0` bloquea al usuario tras el primer rechazo.
        retry_window_days:
          type: integer
          minimum: 1
          maximum: 365
          nullable: true
          description: >-
            Ventana móvil en días que se usa para contar los reintentos. `null`
            aplica un límite sobre todo el historial.
        face_liveness_max_attempts:
          type: integer
          minimum: 1
          maximum: 3
          description: >-
            Número máximo de envíos de prueba de vida por sesión. Este valor
            también se copia en los nodos de prueba de vida y de estimación de
            edad generados en el flujo, salvo que la configuración a nivel de
            función lo sobrescriba.
        face_match_max_attempts:
          type: integer
          minimum: 1
          maximum: 3
          description: >-
            Número máximo de envíos de coincidencia facial por sesión. Este
            valor también se copia en los nodos de coincidencia facial generados
            en el flujo, salvo que la configuración a nivel de función lo
            sobrescriba.
        session_expiration_time:
          type: integer
          minimum: 3600
          maximum: 2419200
          description: >-
            Segundos antes de que expire una sesión sin finalizar. Mínimo 1 hora
            (3600), máximo 4 semanas (2419200).
    WorkflowDetail:
      type: object
      description: >-
        Los campos siguientes están tipados; el objeto también incluye todas las
        demás columnas de la configuración del flujo (activación de funciones,
        umbrales, acciones ante advertencias, documentos permitidos, callbacks)
        como propiedades adicionales. Los campos que no se aplican al
        `workflow_type` son `null`.
      properties:
        uuid:
          type: string
          format: uuid
          description: >-
            Identificador por versión (`settings_uuid`). Cada versión de un
            flujo tiene el suyo.
        workflow_id:
          type: string
          format: uuid
          description: >-
            Identificador estable compartido por todas las versiones del flujo.
            Las sesiones creadas con él usan la última versión publicada.
        workflow_label:
          type: string
          description: Nombre visible del flujo.
        workflow_type:
          type: string
          nullable: true
          enum:
            - kyc
            - kyb
            - adaptive_age_verification
            - biometric_authentication
            - address_verification
            - questionnaire_verification
            - email_verification
            - phone_verification
            - null
          description: >-
            Plantilla del flujo. `null` en los flujos de grafo creados sin
            plantilla.
        is_default:
          type: boolean
          description: Si este es el flujo predeterminado de la aplicación.
        is_archived:
          type: boolean
          description: Los flujos archivados no pueden iniciar nuevas sesiones.
        version:
          type: integer
          description: Número de versión dentro del flujo.
        status:
          type: string
          enum:
            - draft
            - published
          description: >-
            Las versiones en borrador son editables; las versiones publicadas
            son inmutables y se usan para las nuevas sesiones.
        published_at:
          type: string
          format: date-time
          nullable: true
          description: Cuándo se publicó esta versión. `null` para los borradores.
        is_simple_workflow:
          type: boolean
          description: '`true` cuando el flujo no tiene un `workflow_graph` personalizado.'
        is_editable:
          type: boolean
          description: '`true` solo para las versiones `draft`.'
        workflow_url:
          type: string
          format: uri
          description: URL pública que inicia una sesión con este flujo.
        workflow_graph:
          type: object
          nullable: true
          additionalProperties: true
          description: >-
            Estructura de grafo del flujo de verificación (workflow) (nodos y
            aristas). `null` para flujos simples.
        features:
          type: string
          description: >-
            Funciones habilitadas unidas con `" + "`, por ejemplo `"OCR +
            LIVENESS"`.
        total_price:
          type: number
          nullable: true
          description: Precio por sesión; en los flujos de tipo grafo, la ruta más cara.
        min_price:
          type: number
          nullable: true
          description: Precio de la ruta más económica del flujo.
        max_price:
          type: number
          nullable: true
          description: Precio de la ruta más cara del flujo.
        special_add_on_prices:
          type: object
          nullable: true
          additionalProperties: true
          description: >-
            Precios de complementos específicos de la organización, o `null` si
            no hay ninguno configurado.
        max_retry_attempts:
          type: integer
          description: Reintentos permitidos tras una verificación rechazada.
        retry_window_days:
          type: integer
          nullable: true
          description: Días durante los que se permiten los reintentos.
        session_expiration_time:
          type: integer
          description: Segundos antes de que expire una sesión sin finalizar.
        questionnaire:
          type: object
          nullable: true
          additionalProperties: true
          description: El cuestionario asociado al flujo, o `null`.
        kyb_role_settings:
          type: array
          items:
            type: object
            additionalProperties: true
          description: >-
            Configuración de verificación por rol para las personas clave de
            KYB.
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
        signature_availability:
          type: object
          description: >-
            Qué niveles de Firma electrónica pueden firmar en este momento.
            Consúltalo antes de definir `signature_level`. Se devuelve en los
            flujos `kyc`, `kyb` y de grafo.
          properties:
            simple:
              type: boolean
              description: Simple siempre está disponible.
            aes:
              type: boolean
              description: >-
                Indica si Avanzada (AES) ya puede firmar. Mientras sea `false`,
                guardar un nuevo paso con `signature_level: "aes"` se rechaza
                con `aes_not_available`.
            qes:
              type: boolean
              description: >-
                Indica si Cualificada (QES) ya puede firmar. Es `false` hasta
                que se conecte un proveedor cualificado.
        is_bank_verification_enabled:
          type: boolean
          description: >-
            Indica si un flujo de verificación (workflow) simple de KYC o KYB
            ejecuta la verificación bancaria. Se ejecuta después de los pasos de
            contacto (y de la verificación de ubicación) y antes de la
            validación de base de datos, el análisis AML y el análisis de IP. La
            verificación bancaria aún no está disponible de forma general: se
            rechaza su activación donde no esté habilitada.
        bank_verification_config:
          type: object
          additionalProperties: true
          description: >-
            Configuración de verificación bancaria de un flujo simple, con las
            mismas claves que admite un nodo `BANK_VERIFICATION` (por ejemplo,
            `bank_countries` y `bank_method_order`). Las claves desconocidas se
            descartan. Todas las claves son opcionales y una clave ausente
            mantiene su valor predeterminado, por lo que `{}` significa todos
            los valores predeterminados. Consulta [Configuración de verificación
            bancaria](/es/management-api/workflows/feature-configs#verificación-bancaria).
          example: {}
        is_geolocation_enabled:
          type: boolean
          description: >-
            Indica si un flujo de verificación (workflow) simple de KYC ejecuta
            la verificación de ubicación. Se ejecuta después de los pasos de
            contacto y antes de la verificación bancaria y la validación de base
            de datos. Los flujos de empresas (KYB) no pueden ejecutarla.
        geolocation_config:
          type: object
          additionalProperties: true
          description: >-
            Configuración de verificación de ubicación de un flujo simple, con
            las mismas claves que admite un nodo `GEOLOCATION` (por ejemplo,
            `is_geolocation_geofencing_enabled` y `geolocation_max_attempts`).
            Las claves desconocidas se descartan. Todas las claves son
            opcionales y una clave ausente conserva su valor predeterminado, por
            lo que `{}` significa todos los valores predeterminados.
          example: {}
      additionalProperties: true
    SimpleWorkflowFeature:
      type: object
      required:
        - feature
      properties:
        feature:
          type: string
          description: >-
            Función que se va a ejecutar. Usa los valores en mayúsculas que se
            muestran aquí.
          enum:
            - OCR
            - NFC
            - LIVENESS
            - FACE_MATCH
            - PROOF_OF_ADDRESS
            - QUESTIONNAIRE
            - DOCUMENT_AI
            - PHONE_VERIFICATION
            - EMAIL_VERIFICATION
            - DATABASE_VALIDATION
            - AML
            - IP_ANALYSIS
            - AGE_ESTIMATION
            - KYB_REGISTRY
            - KYB_DOCUMENTS
            - KYB_KEY_PEOPLE
            - SIGNATURE
        config:
          type: object
          description: >-
            Configuración específica de la función. Para `QUESTIONNAIRE`,
            incluye `questionnaire_uuid` con el `questionnaire_id` que devuelve
            el endpoint de creación de cuestionarios. Para `SIGNATURE`, un flujo
            que pasa a producción necesita un documento para firmar: establece
            `signature_documents_source` en `session` o `both` para que cada
            sesión pueda aportar el suyo, o envía `status: "draft"` y añade los
            documentos antes de publicar. `signature_level: "aes"` se rechaza
            con `aes_not_available` mientras `signature_availability.aes` sea
            `false` en el flujo. Para `OCR`, `methods` selecciona qué métodos de
            verificación de identidad puede usar cada país (captura de
            documento, consulta sin documento contra una fuente gubernamental u
            otra fuente oficial, y wallets de identidad digital); si lo omites,
            todos los países usan solo captura de documento. Para `SIGNATURE`,
            consulta la [configuración de firma
            electrónica](/es/management-api/workflows/feature-configs#firma-electrónica):
            por ahora `signature_level` acepta `simple` (el valor
            predeterminado, sin necesidad de verificación de identidad, correo
            electrónico ni teléfono) y `aes`, y los documentos del flujo y sus
            campos se gestionan en la consola, así que a través de la API envía
            los documentos y campos por sesión con `signature_documents_source:
            "session"`.
          additionalProperties: true
        label:
          type: string
          description: Etiqueta interna opcional para este nodo del flujo.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        La clave de API de tu aplicación, que encontrarás en Developers -> API
        keys en la Business Console. La clave principal tiene acceso completo.
        Una clave con nombre puede tener un alcance limitado: ninguno, lectura o
        escritura por recurso, limitada a algunos flujos o a sesiones aprobadas,
        a una lista de direcciones IP y a una fecha de caducidad. 401 significa
        que la clave es incorrecta, se revocó o expiró; 403 significa que no se
        envió ninguna clave, que la clave no tiene acceso a este recurso o
        acción, o que la solicitud provino de una dirección fuera de su lista de
        IP; 404 en una ruta de sesión significa que la sesión está fuera de los
        flujos o estados de la clave. Una clave sin acceso a contenido
        multimedia recibe las URL de imágenes, videos y PDF como null, y una
        clave sin permiso de escritura en sesiones recibe los enlaces y tokens
        de sesión como null. Consulta https://docs.didit.me/console/api-keys.

````

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