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

# Aggiorna caso API

> Modifica titolo, priorità, scadenza, tag o team di un caso con Didit. Cambiano solo i campi inviati, le modifiche chiave vanno in cronologia.



Prompt API per l'aggiornamento di un caso
        Copia il prompt negli appunti



      
      

\<pre>

\`Update a case's title, priority, due date, tags or owning review team through the Management API.

Endpoint:
PATCH https://verification.didit.me/v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/

Authentication:
Use the x-api-key header with my Didit API key.
Cases endpoints need a full-access API key: a key with restricted access gets 403.

Request body (partial: send only the fields to change, omitted fields keep their value):
\{"priority": "HIGH", "due_at": "2026-11-01T00:00:00Z", "team": "<review-team-uuid>"}
\- title - string, at most 255 characters.
\- priority - LOW | MEDIUM | HIGH.
\- due_at - ISO 8601 datetime, or null to clear the deadline.
\- tags - array of strings. Replaces the whole tag list, so send every tag the case should keep.
\- team - uuid of an active review team of this application, or null to clear the team.

Getting a team uuid:
GET https://verification.didit.me/v3/organization/{organization_id}/application/{application_id}/cases/teams/ (same full-access key; a console member token needs list:cases) returns results[] with uuid, name and is_active. Only a team with is_active true is accepted.

Behavior:
\- Logs PRIORITY_CHANGED, DUE_DATE_CHANGED, TAG_ADDED, TAG_REMOVED and TEAM_CHANGED events on the case when the value changes.
\- A title change is saved without a timeline event.
\- A TEAM_CHANGED event records the previous and new team as {uuid, name} in its metadata.
\- Changing the team does not reassign the case.

Example call:
curl -X PATCH "https://verification.didit.me/v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/" \
-H "x-api-key: YOUR_API_KEY" -H "Content-Type: application/json" \
-d '{"team": "<review-team-uuid>"}'

Response 200: the updated CaseDetail, the same shape as get case, including team {uuid, name} or null.

Failure modes:
\- 400: a field failed validation, keyed by field. Example: {"team": ["Choose an active team of this application."]} when the team is inactive, deleted, or belongs to another application.
\- 401/403: auth/permission errors. A key with restricted access gets 403 {"detail": "This API key has no access to this endpoint."} (cases need a full-access key). A console member token needs write:cases.
\- 404: case not found in this application.

For the full integration shape, see /integration/integration-prompt.`

\</pre>



      
      

Incolla in

Modifica il titolo, la priorità, la data di scadenza, i tag o il team di revisione responsabile di un caso.
Invia solo i campi che vuoi modificare; i campi omessi mantengono il loro valore.
`tags` sostituisce l'intero elenco dei tag, quindi invia tutti i tag che il caso deve conservare.## Cambia il team responsabileImposta `team` sull'uuid di un team di revisione attivo di questa applicazione, oppure su `null` per rimuoverlo.
Per trovare l'uuid di un team, chiama `GET /v3/organization/{organization_id}/application/{application_id}/cases/teams/` e leggi `results[].uuid`.
Un team inattivo, eliminato o appartenente a un'altra applicazione restituisce `400` con `{"team": ["Choose an active team of this application."]}`.
Ogni modifica aggiunge un evento `TEAM_CHANGED` alla timeline del caso, con il team precedente e quello nuovo.
Cambiare il team non modifica la persona a cui il caso è assegnato.## Eventi della timelineUna modifica alla priorità, alla data di scadenza, ai tag o al team aggiunge alla timeline del caso un evento `PRIORITY_CHANGED`, `DUE_DATE_CHANGED`, `TAG_ADDED`, `TAG_REMOVED` o `TEAM_CHANGED`.
Una modifica del titolo viene salvata senza evento nella timeline.
Inviare un campo con il suo valore attuale non aggiunge alcun evento.## AccessoGli endpoint dei casi richiedono una [chiave API](https://docs.didit.me/it/console/api-keys.md) con accesso completo.
Una chiave con accesso limitato riceve `403`.
Un token di membro della console richiede `write:cases`.## Correlati- [Recupera un caso](https://docs.didit.me/it/management-api/cases/get.md)
- [Elenca i casi](https://docs.didit.me/it/management-api/cases/list.md)
- [Assegnazione e team di revisione (Console)](https://docs.didit.me/it/console/case-management/assignment.md#team)


## OpenAPI

````yaml it/openapi-25.json PATCH /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/
openapi: 3.0.0
info:
  version: 3.0.0
  title: Didit Verification API
  description: API di verifica dell'identità. Autenticati con l'intestazione x-api-key.
servers:
  - url: https://verification.didit.me
security: []
tags: []
paths:
  /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/:
    patch:
      tags:
        - Cases
      summary: Aggiorna il caso
      description: >-
        Aggiorna il titolo, la priorità, la data di scadenza, i tag o il team di
        revisione assegnatario del caso. Invia solo i campi che desideri
        modificare; i campi omessi mantengono il loro valore. `tags` sostituisce
        l'intero elenco di tag. `team` accetta lo uuid di un team di revisione
        attivo di questa applicazione (elencali con `GET .../cases/teams/`),
        oppure null per rimuovere il team. Richiede una chiave API con accesso
        completo o `write:cases` per un membro della console: una chiave con
        accesso limitato riceve 403. Registra gli eventi PRIORITY_CHANGED,
        DUE_DATE_CHANGED, TAG_ADDED, TAG_REMOVED e TEAM_CHANGED a seconda dei
        casi; una modifica del titolo viene salvata senza un evento nella
        cronologia. Restituisce il caso aggiornato.
      operationId: update_case
      parameters:
        - name: organization_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: UUID dell'organizzazione.
        - name: application_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: UUID dell'applicazione.
        - name: case_uuid
          in: path
          required: true
          schema:
            type: string
            format: uuid
            example: c1a5e000-0000-4000-8000-000000000001
          description: UUID del caso.
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              properties:
                title:
                  type: string
                  maxLength: 255
                  description: Nuovo titolo del caso.
                priority:
                  type: string
                  enum:
                    - LOW
                    - MEDIUM
                    - HIGH
                due_at:
                  type: string
                  format: date-time
                  nullable: true
                  description: Nuova scadenza. Invia null per rimuoverla.
                tags:
                  type: array
                  items:
                    type: string
                  description: L'elenco completo dei tag. Sostituisce i tag attuali.
                team:
                  type: string
                  format: uuid
                  nullable: true
                  description: >-
                    UUID del team di revisione assegnatario del caso. Deve
                    essere un team attivo di questa applicazione. Invia null per
                    rimuovere l'assegnazione del team.
            examples:
              Change priority and deadline:
                value:
                  priority: HIGH
                  due_at: '2026-11-01T00:00:00Z'
              Move the case to a team:
                value:
                  team: 3fa85f64-5717-4562-b3fc-2c963f66afa6
              Clear the team:
                value:
                  team: null
      responses:
        '200':
          description: Caso aggiornato.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CaseDetail'
        '400':
          description: >-
            La validazione di un campo non è riuscita. Il body è indicizzato per
            nome del campo. `team` viene rifiutato se non è un team di revisione
            attivo di questa applicazione.
          content:
            application/json:
              schema:
                type: object
                additionalProperties:
                  type: array
                  items:
                    type: string
              examples:
                Team not active in this application:
                  value:
                    team:
                      - Choose an active team of this application.
                Invalid priority:
                  value:
                    priority:
                      - '"URGENT" is not a valid choice.'
        '403':
          description: >-
            La chiave API appartiene a un'altra applicazione, oppure è una
            chiave con accesso limitato: gli endpoint Cases richiedono una
            chiave con accesso completo. Un token di un membro della console
            richiede `write:cases`.
          content:
            application/json:
              examples:
                Restricted API Key:
                  summary: Chiave API con accesso limitato
                  value:
                    detail: This API key has no access to this endpoint.
                Missing Privilege:
                  summary: >-
                    Membro della console senza write:cases, o chiave di un'altra
                    applicazione
                  value:
                    detail: You do not have permission to perform this action.
        '404':
          description: Caso non trovato in questa applicazione.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              example:
                detail: No Case matches the given query.
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: >-
            curl -X PATCH
            'https://verification.didit.me/v3/organization/11111111-2222-3333-4444-555555555555/application/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/cases/c1a5e000-0000-4000-8000-000000000001/'
            \
              -H 'x-api-key: YOUR_API_KEY' \
              -H 'Content-Type: application/json' \
              -d '{"priority": "HIGH", "due_at": "2026-08-01T00:00:00Z"}'
        - lang: curl
          label: curl (change team)
          source: >-
            curl -X PATCH
            'https://verification.didit.me/v3/organization/11111111-2222-3333-4444-555555555555/application/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/cases/c1a5e000-0000-4000-8000-000000000001/'
            \
              -H 'x-api-key: YOUR_API_KEY' \
              -H 'Content-Type: application/json' \
              -d '{"team": "3fa85f64-5717-4562-b3fc-2c963f66afa6"}'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
            # and DIDIT_APPLICATION_ID.
            client = Didit()

            result = client.cases.update(
                "c1a5e000-0000-4000-8000-000000000001",
                priority="HIGH",
                due_at="2026-11-01T00:00:00Z",
            )
            print(result)
        - lang: javascript
          label: Node.js
          source: >-
            import Didit from "@didit-protocol/sdk-node";


            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID

            // and DIDIT_APPLICATION_ID.

            const didit = new Didit();


            const result = await
            didit.cases.update("c1a5e000-0000-4000-8000-000000000001", {
              priority: "HIGH",
              due_at: "2026-11-01T00:00:00Z",
            });

            console.log(result);
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID\n// and DIDIT_APPLICATION_ID.\nclient := didit.NewClient()\n\nresult, err := client.Cases.Update(ctx, \"c1a5e000-0000-4000-8000-000000000001\", didit.CasesUpdateParams{\n\tPriority: didit.Some(didit.CasesUpdateParamsPriority(\"HIGH\")),\n\tDueAt:    didit.Time(time.Date(2026, 11, 1, 0, 0, 0, 0, time.UTC)),\n})\nif err != nil {\n\tlog.Fatal(err)\n}\nfmt.Printf(\"%+v\\n\", result)"
        - lang: java
          label: Java
          source: >-
            import java.time.OffsetDateTime;

            import me.didit.Didit;

            import me.didit.types.CasesUpdateParams;


            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID

            // and DIDIT_APPLICATION_ID.

            Didit client = new Didit();


            var result =
            client.cases().update("c1a5e000-0000-4000-8000-000000000001",
            CasesUpdateParams.builder()
                    .priority(CasesUpdateParams.Priority.of("HIGH"))
                    .dueAt(OffsetDateTime.parse("2026-11-01T00:00:00Z"))
                    .build());
            System.out.println(result);
        - lang: php
          label: PHP
          source: >-
            <?php


            require 'vendor/autoload.php';


            use Didit\DiditClient;


            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID

            // and DIDIT_APPLICATION_ID.

            $didit = new DiditClient();


            $result =
            $didit->cases->update('c1a5e000-0000-4000-8000-000000000001', [
                'priority' => 'HIGH',
                'due_at' => '2026-11-01T00:00:00Z',
            ]);

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

            # Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
            # and DIDIT_APPLICATION_ID.
            didit = Didit::Client.new

            result = didit.cases.update(
              "c1a5e000-0000-4000-8000-000000000001",
              priority: "HIGH",
              due_at: "2026-11-01T00:00:00Z"
            )
            puts result.to_h
        - lang: csharp
          label: .NET
          source: >-
            using System;

            using System.Text.Json;

            using Didit;


            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID

            // and DIDIT_APPLICATION_ID.

            using var client = new DiditClient();


            var result = await
            client.Cases.UpdateAsync("c1a5e000-0000-4000-8000-000000000001", new
            CasesUpdateParams

            {
                Priority = new CasesUpdateParamsPriority("HIGH"),
                DueAt = DateTimeOffset.Parse("2026-11-01T00:00:00Z"),
            });

            Console.WriteLine(JsonSerializer.Serialize(result));
components:
  schemas:
    CaseDetail:
      type: object
      properties:
        uuid:
          type: string
          format: uuid
        case_number:
          type: string
          nullable: true
        title:
          type: string
        status:
          type: string
          enum:
            - OPEN
            - AWAITING_USER
            - RESOLVED
        resolution:
          type: string
          enum:
            - FALSE_POSITIVE
            - VALID_THREAT
            - INCONCLUSIVE
            - REQUIREMENTS_NOT_MET
            - REQUIREMENTS_SATISFIED
          nullable: true
        resolution_notes:
          type: string
          nullable: true
        priority:
          type: string
          enum:
            - LOW
            - MEDIUM
            - HIGH
        source:
          type: string
          enum:
            - MANUAL
            - AML_SCREENING
            - TRANSACTION_RULE
            - WORKFLOW_BUILDER
        tags:
          type: array
          items:
            type: string
        subject:
          $ref: '#/components/schemas/CaseSubject'
        assigned_to:
          $ref: '#/components/schemas/CaseAssignee'
        assigned_at:
          type: string
          format: date-time
          nullable: true
        team:
          $ref: '#/components/schemas/CaseTeamSummary'
        due_at:
          type: string
          format: date-time
          nullable: true
        resolved_at:
          type: string
          format: date-time
          nullable: true
        resolved_by_email:
          type: string
          nullable: true
        pending_resolution:
          type: object
          nullable: true
          description: >-
            Impostato solo mentre una risoluzione a 4 occhi è predisposta sul
            blueprint checker, in attesa di approvazione o rifiuto
            dell'approvazione.
          properties:
            resolution:
              type: string
              enum:
                - FALSE_POSITIVE
                - VALID_THREAT
                - INCONCLUSIVE
                - REQUIREMENTS_NOT_MET
                - REQUIREMENTS_SATISFIED
            resolution_notes:
              type: string
              nullable: true
            maker_email:
              type: string
              format: email
              nullable: true
              description: >-
                Email del responsabile che ha inviato la risoluzione. Null se
                inviata tramite chiave API: tale risoluzione non ha un autore
                registrato, pertanto approve e reject-approval restituiscono 403
                per ogni chiamante.
            maker_name:
              type: string
              nullable: true
            maker_user_id:
              type: string
              format: uuid
              nullable: true
              description: >-
                UUID utente membro del responsabile che ha inviato la
                risoluzione. Null quando è stata inviata tramite una chiave API.
                Tale membro non può essere designato come `checker`.
            maker_blueprint_id:
              type: string
              format: uuid
            staged_at:
              type: string
              format: date-time
        checker:
          $ref: '#/components/schemas/CaseChecker'
        metadata:
          type: object
        blueprint:
          $ref: '#/components/schemas/CaseBlueprintDetail'
        notes:
          type: array
          items:
            $ref: '#/components/schemas/CaseNote'
          description: Le 50 note più recenti.
        events:
          type: array
          items:
            $ref: '#/components/schemas/CaseEvent'
          description: I 100 eventi più recenti.
        links:
          type: array
          items:
            $ref: '#/components/schemas/CaseLink'
        links_count:
          type: integer
        notes_count:
          type: integer
        checklist_items:
          type: array
          items:
            $ref: '#/components/schemas/CaseChecklistItem'
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
    CaseSubject:
      type: object
      nullable: true
      description: L'unico utente o azienda a cui è associato il caso.
      properties:
        type:
          type: string
          enum:
            - user
            - business
        uuid:
          type: string
          format: uuid
        name:
          type: string
        external_id:
          type: string
          nullable: true
          description: Il vendor_data del soggetto.
        country:
          type: string
          nullable: true
          description: >-
            Codice paese a tre lettere del soggetto (ISO 3166-1 alpha-3), oppure
            null se non noto. Per un'azienda, il paese di costituzione. Per una
            persona, il paese di emissione di un documento d'identità
            proveniente dalle sue verifiche; per una persona con documenti
            provenienti da diversi paesi ne viene mostrato uno e possono
            comparire codici documento ICAO come `XXA`.
          example: ESP
        portrait:
          type: string
          format: uri
          nullable: true
          description: >-
            URL firmato di breve durata dell'immagine del ritratto della
            persona. Sempre null per un'azienda e null per una persona senza
            ritratto. L'URL scade, quindi scarica l'immagine quando leggi il
            caso invece di memorizzare l'URL.
    CaseAssignee:
      type: object
      nullable: true
      properties:
        uuid:
          type: string
          format: uuid
        full_name:
          type: string
        email:
          type: string
          format: email
    CaseTeamSummary:
      type: object
      nullable: true
      description: >-
        Il team di revisione assegnatario del caso, oppure null se non è
        assegnato ad alcun team. L'instradamento lo imposta quando una regola di
        instradamento assegna il caso a uno dei suoi team. Modificalo o
        cancellalo con `PATCH .../cases/{case_uuid}/` (`team`).
      properties:
        uuid:
          type: string
          format: uuid
        name:
          type: string
    CaseChecker:
      type: object
      nullable: true
      description: >-
        Il membro designato per approvare o rifiutare la risoluzione in sospeso.
        Impostato solo mentre una risoluzione a quattro occhi attende un
        verificatore designato. Null quando non c'è nulla in sospeso, mentre la
        risoluzione in sospeso attende nella coda dei verificatori e una volta
        che la risoluzione è approvata, rifiutata o restituita per una nuova
        revisione a seguito della modifica delle prove.
      properties:
        member_uuid:
          type: string
          format: uuid
          description: >-
            L'uuid utente del membro: il valore che passi come `checker` quando
            risolvi il caso.
        name:
          type: string
          nullable: true
          description: Il nome completo del membro, o null se non noto.
        email:
          type: string
          format: email
    CaseBlueprintDetail:
      type: object
      properties:
        uuid:
          type: string
          format: uuid
        name:
          type: string
          maxLength: 24
        description:
          type: string
          nullable: true
        assignment_method:
          type: string
          enum:
            - MANUAL
            - AUTOMATIC
        assignee_pool:
          type: array
          items:
            type: string
            format: uuid
        max_active_cases:
          type: integer
          nullable: true
        escalation_enabled:
          type: boolean
        transfer_enabled:
          type: boolean
        require_resolution_note:
          type: boolean
        is_active:
          type: boolean
        preset_key:
          type: string
          nullable: true
        created_at:
          type: string
          format: date-time
        escalation_blueprint:
          type: string
          format: uuid
          nullable: true
        escalation_blueprint_name:
          type: string
          nullable: true
        four_eyes_checker_blueprint:
          type: string
          format: uuid
          nullable: true
        four_eyes_checker_blueprint_name:
          type: string
          nullable: true
        content_config:
          type: object
          description: >-
            Le sei sezioni attivabili/disattivabili che determinano quali schede
            e campi compaiono nella pagina del caso. Le sezioni o chiavi
            sconosciute vengono rifiutate.
          properties:
            checklist:
              type: object
              properties:
                enabled:
                  type: boolean
                optional:
                  type: boolean
                  description: >-
                    Se true, un caso può essere risolto anche con elementi della
                    checklist incompleti.
                items:
                  type: array
                  items:
                    type: object
                    properties:
                      label:
                        type: string
                        maxLength: 255
                      order:
                        type: integer
            aml_control:
              type: object
              properties:
                enabled:
                  type: boolean
                financial:
                  type: boolean
                identity:
                  type: boolean
            identity:
              type: object
              properties:
                enabled:
                  type: boolean
                personal_information:
                  type: boolean
                applicant_tags:
                  type: boolean
                contact_information:
                  type: boolean
                risk_overview:
                  type: boolean
                poi_documents:
                  type: boolean
                poa_documents:
                  type: boolean
            verifications:
              type: object
              properties:
                enabled:
                  type: boolean
                summary:
                  type: boolean
            reporting:
              type: object
              properties:
                enabled:
                  type: boolean
                fiu_reports:
                  type: boolean
            financial:
              type: object
              properties:
                enabled:
                  type: boolean
                payment_methods:
                  type: boolean
                transactions:
                  type: boolean
        creation_sources:
          type: array
          description: Connettori che attualmente instradano nuovi casi in questo modello.
          items:
            type: object
            properties:
              kind:
                type: string
                enum:
                  - aml
                  - rule
                  - workflow
              id:
                type: string
              name:
                type: string
        receives_escalation_from:
          type: array
          description: Altri blueprint il cui target di escalation punta a questo.
          items:
            type: object
            properties:
              id:
                type: string
              name:
                type: string
        updated_at:
          type: string
          format: date-time
        version:
          type: integer
          readOnly: true
        default_deadline_hours:
          type: integer
          nullable: true
          minimum: 1
          maximum: 8760
    CaseNote:
      type: object
      properties:
        uuid:
          type: string
          format: uuid
        comment:
          type: string
        actor_email:
          type: string
          format: email
          nullable: true
        actor_name:
          type: string
          nullable: true
        mentioned_emails:
          type: array
          items:
            type: string
            format: email
        is_internal:
          type: boolean
        attachments:
          type: array
          items:
            type: object
            properties:
              s3_key:
                type: string
              filename:
                type: string
              file_size:
                type: integer
              url:
                type: string
                format: uri
        tags:
          type: array
          items:
            type: string
        created_at:
          type: string
          format: date-time
    CaseEvent:
      type: object
      properties:
        uuid:
          type: string
          format: uuid
        event_type:
          type: string
          enum:
            - CREATED
            - STATUS_CHANGED
            - ASSIGNED
            - UNASSIGNED
            - RESOLVED
            - REOPENED
            - LINK_ADDED
            - LINK_REMOVED
            - NOTE_ADDED
            - NOTE_PINNED
            - NOTE_UNPINNED
            - PRIORITY_CHANGED
            - DUE_DATE_CHANGED
            - TAG_ADDED
            - TAG_REMOVED
            - ESCALATED
            - TRANSFERRED
            - CHECKLIST_COMPLETED
            - REPORT_CREATED
            - REPORT_FINALIZED
            - SUBMITTED_FOR_APPROVAL
            - APPROVAL_GRANTED
            - APPROVAL_REJECTED
            - ENTITY_ACTION
            - APPROVAL_INVALIDATED
            - CUSTOMER_REQUEST
            - STAGE_CHANGED
            - TEAM_CHANGED
            - CHECKER_ASSIGNED
            - CHECKER_UNASSIGNED
        actor_email:
          type: string
          format: email
          nullable: true
        actor_name:
          type: string
          nullable: true
        previous_status:
          type: string
          enum:
            - OPEN
            - AWAITING_USER
            - RESOLVED
          nullable: true
        new_status:
          type: string
          enum:
            - OPEN
            - AWAITING_USER
            - RESOLVED
          nullable: true
        metadata:
          type: object
        created_at:
          type: string
          format: date-time
    CaseLink:
      type: object
      properties:
        uuid:
          type: string
          format: uuid
        linked_entity_type:
          type: string
          enum:
            - session
            - business_session
            - transaction
          nullable: true
        linked_entity_uuid:
          type: string
          format: uuid
          nullable: true
        linked_entity_summary:
          type: object
          nullable: true
          description: >-
            session_id/session_number/status per i link session e
            business_session; uuid/txn_id/status per i link transaction.
        created_at:
          type: string
          format: date-time
    CaseChecklistItem:
      type: object
      properties:
        uuid:
          type: string
          format: uuid
        label:
          type: string
          maxLength: 255
        is_completed:
          type: boolean
        completed_by:
          type: string
          format: email
          nullable: true
        completed_at:
          type: string
          format: date-time
          nullable: true
        order:
          type: integer
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        La chiave API della tua applicazione, da Developers -> API keys nella
        Business Console. La chiave primaria ha accesso completo. Una chiave con
        nome può avere un ambito definito: nessuno, lettura o scrittura per
        risorsa, limitata ad alcuni workflow o a sessioni approvate, a un elenco
        di indirizzi IP e a una data di scadenza. 401 indica che la chiave è
        errata, revocata o scaduta; 403 indica che non è stata inviata alcuna
        chiave, che la chiave non ha accesso a questa risorsa o azione, oppure
        che la richiesta proviene da un indirizzo non incluso nel suo elenco IP;
        404 su una route di sessione indica che la sessione non rientra nei
        workflow o negli stati previsti dalla chiave. Una chiave senza accesso
        ai media riceve gli URL di immagini, video e PDF come null, e una chiave
        senza permessi di scrittura sulle sessioni riceve link e token di
        sessione come null. Consulta https://docs.didit.me/console/api-keys.

````

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