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

# Generar un esborrany de plantilla de cas amb l'API d'IA

> Genera una proposta de plantilla de cas de Didit amb IA sense desar-la. Revisa'n les etapes i tipus de cas; desa després la configuració escollida.

L'API de blueprint per crear esborranys amb IA de Didit converteix una descripció de política en una proposta de política de revisió no desada.
Autentica't amb `x-api-key` i el permís `write:cases` per a l'aplicació.

## Generar i revisar una proposta

Envia un `prompt` no buit de com a màxim 4000 caràcters. La resposta és `200` amb un objecte `draft`, no una plantilla desada ni un UUID.

```json theme={null}
{"prompt": "Draft an AML review policy with triage and evidence review stages."}
```

La proposta pot contenir `name`, `description`, `applies_to`, `content_config`, `require_resolution_note`, `assignment_method`, `max_active_cases` i `default_deadline_hours`. Els camps poden no aparèixer, de manera que has de revisar la resposta abans d'utilitzar-la. La proposta de nivell superior no inclou les llistes d'assignats, la configuració d'aprovació ni les referències d'encaminament.

Selecciona tu mateix els assignats, els equips, les aprovacions i l'encaminament abans de desar. Si una etapa generada conté `worked_by`, es valida a l'aplicació com a UUID d'un equip de revisió actiu; no tractis una proposta com a assignació aprovada.

Utilitza [Crear plantilla de cas](https://docs.didit.me/ca/management-api/case-blueprints/create.md) després de revisar-la, incloent-hi el `name` obligatori i un `assignee_pool` no buit. Generar una proposta no desa un esborrany de política, no publica una política ni canvia els casos existents. El [cicle de vida de l'esborrany desat i de la publicació](https://docs.didit.me/ca/console/case-management/blueprints.md#desa-i-publica-els-canvis-de-política) és independent.

## Errors

| Status | Meaning |
| - | - |
| `400` | Falta el prompt, està en blanc o és massa llarg |
| `401` / `403` | Falta autenticació o permís |
| `404` | No s'ha trobat l'aplicació |
| `503` | La generació ha fallat o ha retornat una proposta que no ha superat la validació; torna-ho a intentar més tard |

Una fallada de generació retorna:

```json theme={null}
{"detail": "A blueprint draft could not be generated. Please try again."}
```

## Relacionats

* [Llistar plantilles de casos](https://docs.didit.me/ca/management-api/case-blueprints/list.md)
* [Configuració de plantilles i polítiques de revisió](https://docs.didit.me/ca/console/case-management/blueprints.md)


## OpenAPI

````yaml ca/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/blueprints/ai-draft/
openapi: 3.0.0
info:
  version: 3.0.0
  title: Didit Verification API
  description: API de verificació d'identitat. Autentica't amb la capçalera x-api-key.
servers:
  - url: https://verification.didit.me
security: []
tags: []
paths:
  /v3/organization/{organization_id}/application/{application_id}/cases/blueprints/ai-draft/:
    post:
      tags:
        - Case Blueprints
      summary: Esborrany de plantilla de cas amb IA
      description: >-
        Genera una proposta de blueprint sense desar. Requereix write:cases.
        Retorna un objecte d'esborrany, no un UUID de blueprint; no es crea cap
        blueprint ni cap esborrany de política desat. Revisa la proposta, tria
        els assignats i els equips, aprovacions o enrutament que calguin, i
        després crea o actualitza un blueprint per separat. Un contingut generat
        no vàlid o un error de generació retorna 503. Consulta [esborranys de
        blueprint amb IA](/ca/management-api/case-blueprints/ai-draft).
      operationId: draft_case_blueprint
      parameters:
        - name: organization_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: UUID de l'organització.
        - name: application_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: UUID de l'aplicació.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CaseBlueprintAiDraftRequest'
            example:
              prompt: >-
                Draft an AML review policy with triage and evidence review
                stages.
      responses:
        '200':
          description: Proposta no desada. No s'ha canviat cap estat.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CaseBlueprintAiDraftResponse'
              example:
                draft:
                  name: AML review
                  applies_to:
                    - AML
                  require_resolution_note: true
                  content_config:
                    stages:
                      items:
                        - key: triage
                          label: Triage
                          sla_hours: 24
        '400':
          description: falta el prompt, està en blanc o té més de 4000 caràcters.
        '401':
          description: Cal autenticació.
        '403':
          description: Cal el permís write:cases.
        '404':
          description: No s'ha trobat l'aplicació.
        '503':
          description: >-
            La generació ha fallat o ha produït una proposta no vàlida. Torna-ho
            a provar més tard.
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    type: string
              example:
                detail: A blueprint draft could not be generated. Please try again.
      security:
        - ApiKeyAuth: []
      x-codeSamples: []
components:
  schemas:
    CaseBlueprintAiDraftRequest:
      type: object
      required:
        - prompt
      properties:
        prompt:
          type: string
          minLength: 1
          maxLength: 4000
          description: Descripció no buida de la política de revisió que es proposa.
          example: Draft an AML review policy with triage and evidence review stages.
    CaseBlueprintAiDraftResponse:
      type: object
      required:
        - draft
      properties:
        draft:
          $ref: '#/components/schemas/CaseBlueprintAiDraft'
    CaseBlueprintAiDraft:
      type: object
      additionalProperties: false
      description: >-
        Proposta no desada i validada. Els camps són opcionals; revisa el
        resultat i selecciona les persones assignades, els equips i l'enrutament
        abans de desar.
      properties:
        name:
          type: string
          maxLength: 24
          description: Màxim 24 caràcters, p. ex. "Investigació AML".
        description:
          type: string
          nullable: true
        content_config:
          $ref: '#/components/schemas/CaseContentConfig'
        require_resolution_note:
          type: boolean
        assignment_method:
          type: string
          enum:
            - MANUAL
            - AUTOMATIC
        max_active_cases:
          type: integer
          nullable: true
          minimum: 1
          description: >-
            Llindar del mode automàtic: «menys de N casos assignats d'aquest
            model».
        default_deadline_hours:
          type: integer
          nullable: true
          minimum: 1
          maximum: 8760
          description: >-
            Data límit predeterminada per als casos oberts recentment. Les dates
            límit dels casos existents no es modifiquen.
        applies_to:
          $ref: '#/components/schemas/CaseBlueprintAppliesTo'
    CaseContentConfig:
      type: object
      description: >-
        Seccions de contingut del cas i etapes de revisió opcionals. Es rebutgen
        les seccions o claus desconegudes. Els casos conserven la instantània de
        la política acceptada en obrir-los; les edicions posteriors de la
        plantilla no la reescriuen.
      properties:
        checklist:
          type: object
          properties:
            enabled:
              type: boolean
            optional:
              type: boolean
              description: >-
                Quan és cert, es pot resoldre un cas amb elements de la llista
                de verificació incomplets.
            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
        stages:
          type: object
          additionalProperties: false
          description: >-
            Fases de revisió ordenades. Si s'omet o els elements estan buits,
            s'usen les fases predeterminades Triatge, Revisió de proves i
            Decisió.
          properties:
            items:
              type: array
              maxItems: 10
              items:
                $ref: '#/components/schemas/CaseBlueprintStage'
              description: >-
                Com a màxim deu etapes amb claus diferents. Resoldre un cas és
                un canvi d'estat, no una etapa.
    CaseBlueprintAppliesTo:
      type: array
      maxItems: 6
      items:
        type: string
        enum:
          - GENERAL
          - VERIFICATION_REVIEW
          - BUSINESS_REVIEW
          - AML
          - TRANSACTION_MONITORING
          - DUPLICATES
      description: >-
        Tipus de cas que descriu aquesta plantilla. Opcional en crear i
        actualitzar; les plantilles noves tenen per defecte una llista buida.
        S'emmagatzema a la instantània de la política de cas acceptada.
      example:
        - AML
    CaseBlueprintStage:
      type: object
      additionalProperties: false
      required:
        - label
      properties:
        key:
          type: string
          pattern: ^[a-z0-9_]{1,64}$
          description: >-
            Únic dins de la política. Omet-lo per derivar-lo de l'etiqueta. La
            clau resolta està reservada.
          example: triage
        label:
          type: string
          minLength: 1
          maxLength: 64
          description: Etiqueta de fase no buida.
          example: Triage
        sla_hours:
          type: integer
          minimum: 1
          maximum: 8760
          nullable: true
          description: SLA de l'etapa en hores, o null si no hi ha SLA.
          example: 24
        worked_by:
          type: string
          format: uuid
          nullable: true
          description: >-
            UUID opcional de l'equip de revisió. Un valor no nul ha
            d'identificar un equip actiu en aquesta aplicació. Omet-lo o usa
            null si no hi ha equip per a la fase.
          example: a0000000-0000-4000-8000-000000000001
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        La clau d'API de la teva aplicació, des de Developers -> API keys a la
        Business Console. La clau primària té accés complet. Una clau amb nom
        pot tenir l'abast limitat: cap, lectura o escriptura per recurs,
        limitada a determinats fluxos de treball o a sessions aprovades, a una
        llista d'adreces IP i a una data de caducitat. 401 significa que la clau
        és incorrecta, revocada o caducada; 403 significa que no s'ha enviat cap
        clau, que la clau no té accés a aquest recurs o acció, o que la
        sol·licitud prové d'una adreça fora de la seva llista d'IP; 404 en una
        ruta de sessió significa que la sessió està fora dels fluxos de treball
        o estats de la clau. Una clau sense accés a fitxers multimèdia rep els
        URL d'imatge, vídeo i PDF com a null, i una clau sense permís
        d'escriptura de sessions rep els enllaços de sessió i els tokens com a
        null. Consulta https://docs.didit.me/console/api-keys.

````

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