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

# Creare il blueprint di livello Enterprise

> Crea l'unico blueprint di livello Enterprise.

Restituisce 409 se esiste già un blueprint per questa enterprise.

<h2 id="permissions">
  Autorizzazioni
</h2>

Richiede un [utente di servizio](/it/api-reference/v3/service-users/members-service-users) o un [token di accesso personale](/it/api-reference/personal-access-tokens) con l'autorizzazione `ManageAccountSnapshots` a livello Enterprise.

<h2 id="behavior">
  Comportamento
</h2>

Crea il blueprint del livello Enterprise. Un blueprint definisce la configurazione dichiarativa dell'ambiente per le sessioni di Devin. La modifica di un blueprint non attiva automaticamente una build: è necessario chiamare esplicitamente l'endpoint builds.


## OpenAPI

````yaml it/v3-openapi.yaml POST /v3beta1/enterprise/snapshot-setup/blueprints
openapi: 3.1.0
info:
  description: API Devin v3 con autenticazione utente di servizio e RBAC
  title: Devin API v3
  version: 3.0.0
servers: []
security:
  - bearerAuth: []
paths:
  /v3beta1/enterprise/snapshot-setup/blueprints:
    post:
      tags:
        - snapshot_setup
      summary: Creare il blueprint di livello Enterprise
      description: |-
        Crea l'unico blueprint di livello Enterprise.

        Restituisce 409 se esiste già un blueprint per questa enterprise.
      operationId: >-
        create_enterprise_blueprint_endpoint_v3beta1_enterprise_snapshot_setup_blueprints_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateEnterpriseBlueprintBody'
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Blueprint'
          description: Risposta riuscita
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Non autorizzato
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Accesso negato
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Non trovato
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Conflitto
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Contenuto non elaborabile
        '429':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Troppe richieste
components:
  schemas:
    CreateEnterpriseBlueprintBody:
      properties:
        contents:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            Corpo YAML per il nuovo blueprint. Ometterlo per creare un blueprint
            vuoto.
          title: Contents
      title: CreateEnterpriseBlueprintBody
      type: object
    Blueprint:
      description: >-
        Forma pubblica della risorsa ``Blueprint``.


        Note: l'enum ``type`` potrebbe estendersi in futuro; i client DEVONO
        gestire correttamente

        i valori sconosciuti. Il contenuto YAML viene recuperato separatamente
        tramite

        ``GET /blueprints/{id}/contents``.
      properties:
        blueprint_id:
          title: Blueprint Id
          type: string
        created_at:
          title: Created At
          type: integer
        repo_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Repo Name
        source:
          anyOf:
            - enum:
                - git
                - database
              type: string
            - type: 'null'
          description: >-
            Dove viene creato il file YAML: 'git' (sincronizzato da
            .devin/blueprint.yaml nel repository) o 'database' (modificato
            tramite API/interfaccia utente). Sempre null per i blueprint a
            livello enterprise e org.
          title: Source
        type:
          enum:
            - enterprise
            - org
            - repo
          title: Type
          type: string
        updated_at:
          title: Updated At
          type: integer
      required:
        - blueprint_id
        - type
        - repo_name
        - created_at
        - updated_at
      title: Blueprint
      type: object
    ProblemDetail:
      description: >-
        Corpo dell'errore application/problem+json RFC 9457 per l'API v3.


        detail è mantenuto dal corpo legacy {"detail": ...} per
        retrocompatibilità; gli

        altri membri sono aggiuntivi. errors contiene gli errori di validazione
        a livello di campo

        (solo 422).
      properties:
        detail:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            Una spiegazione leggibile dall'utente, specifica per questa
            occorrenza.
          title: Detail
        error_code:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            Codice elaborabile automaticamente che indica il rifiuto di
            un'azione bloccata (ad es. "user_frozen", "migrated_session").
          title: Error Code
        errors:
          anyOf:
            - items:
                additionalProperties: true
                type: object
              type: array
            - type: 'null'
          description: Errori di convalida a livello di campo (solo per le risposte 422).
          title: Errors
        instance:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            Un riferimento URI (il percorso della richiesta) per questa
            occorrenza.
          title: Instance
        status:
          description: Il codice di stato HTTP.
          title: Status
          type: integer
        title:
          description: Un breve riepilogo del tipo di problema, leggibile dall'utente.
          title: Title
          type: string
        type:
          default: about:blank
          description: Un riferimento URI che identifica il tipo di problema.
          title: Type
          type: string
      required:
        - title
        - status
      title: ProblemDetail
      type: object
  securitySchemes:
    bearerAuth:
      description: 'Credenziale dell''utente del servizio (prefisso: cog_)'
      scheme: bearer
      type: http

````

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