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

# Create the enterprise-tier blueprint

> Create the single enterprise-tier blueprint.

Returns 409 if a blueprint already exists for this enterprise.

## Permissions

Requires a service user with the `ManageAccountSnapshots` permission at the enterprise level.

## Behavior

Creates the enterprise-tier blueprint. A blueprint defines the declarative environment configuration for Devin sessions. Mutating a blueprint does not auto-trigger a build — you must explicitly call the builds endpoint.


## OpenAPI

````yaml /v3-openapi.yaml POST /v3beta1/enterprise/snapshot-setup/blueprints
openapi: 3.1.0
info:
  description: Devin v3 API with Service User authentication and RBAC
  title: Devin API v3
  version: 3.0.0
servers: []
security:
  - bearerAuth: []
paths:
  /v3beta1/enterprise/snapshot-setup/blueprints:
    post:
      tags:
        - snapshot_setup
      summary: Create the enterprise-tier blueprint
      description: |-
        Create the single enterprise-tier blueprint.

        Returns 409 if a blueprint already exists for this 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: Successful Response
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
          description: Validation Error
components:
  schemas:
    CreateEnterpriseBlueprintBody:
      properties:
        contents:
          anyOf:
            - type: string
            - type: 'null'
          description: YAML body for the new blueprint. Omit to create an empty blueprint.
          title: Contents
      title: CreateEnterpriseBlueprintBody
      type: object
    Blueprint:
      description: |-
        Public ``Blueprint`` resource shape.

        Note: the ``type`` enum may grow in the future; clients MUST gracefully
        handle unknown values.  YAML contents are fetched separately via
        ``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
        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
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          title: Detail
          type: array
      title: HTTPValidationError
      type: object
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          title: Location
          type: array
        msg:
          title: Message
          type: string
        type:
          title: Error Type
          type: string
      required:
        - loc
        - msg
        - type
      title: ValidationError
      type: object
  securitySchemes:
    bearerAuth:
      description: 'Service User credential (prefix: cog_)'
      scheme: bearer
      type: http

````