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

# 创建

> Creates a deployment.

**Security Consideration**

Deployments can contain custom code in form of scripts or EL expressions to customize process behavior.
This may be abused for remote execution of arbitrary code.



## OpenAPI

````yaml POST /deployment/create
openapi: 3.0.2
info:
  title: ORION Platform REST API
  description: OpenApi Spec for ORION Camunda Platform REST API.
  version: 7.22.6-ee
  license:
    name: Apache License 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
servers:
  - url: http://{host}:{port}/{contextPath}
    description: The API server for the default process engine
    variables:
      host:
        default: localhost
      port:
        default: '8080'
      contextPath:
        default: engine-rest
  - url: http://{host}:{port}/{contextPath}/engine/{engineName}
    description: The API server for a named process engine
    variables:
      host:
        default: localhost
      port:
        default: '8080'
      contextPath:
        default: engine-rest
      engineName:
        default: default
  - url: '{url}'
    description: The API server with a custom url
    variables:
      url:
        default: ''
security:
  - basicAuth: []
tags:
  - name: Authorization
  - name: Batch
  - name: Condition
  - name: Decision Definition
  - name: Decision Requirements Definition
  - name: Deployment
  - name: Engine
  - name: Event Subscription
  - name: Execution
  - name: External Task
  - name: Filter
  - name: Group
  - name: Historic Activity Instance
  - name: Historic Batch
  - name: Historic Decision Definition
  - name: Historic Decision Instance
  - name: Historic Decision Requirements Definition
  - name: Historic Detail
  - name: Historic External Task Log
  - name: Historic Identity Link Log
  - name: Historic Incident
  - name: Historic Job Log
  - name: Historic Process Definition
  - name: Historic Process Instance
  - name: Historic Task Instance
  - name: Historic User Operation Log
  - name: Historic Variable Instance
  - name: History Cleanup
  - name: Identity
  - name: Incident
  - name: Job
  - name: Job Definition
  - name: Message
  - name: Metrics
  - name: Migration
  - name: Modification
  - name: Process Definition
  - name: Process Instance
  - name: Signal
  - name: Schema Log
  - name: Task
  - name: Task Attachment
  - name: Task Comment
  - name: Task Identity Link
  - name: Task Local Variable
  - name: Task Variable
  - name: Telemetry
  - name: Tenant
  - name: User
  - name: Variable Instance
  - name: Version
externalDocs:
  description: Find out more about ORION Rest API
  url: https://docs.eorion.com
paths:
  /deployment/create:
    post:
      tags:
        - Deployment
      summary: Create
      description: >-
        Creates a deployment.


        **Security Consideration**


        Deployments can contain custom code in form of scripts or EL expressions
        to customize process behavior.

        This may be abused for remote execution of arbitrary code.
      operationId: createDeployment
      requestBody:
        content:
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/MultiFormDeploymentDto'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeploymentWithDefinitionsDto'
              examples:
                example-1:
                  summary: POST `/deployment/create`
                  value:
                    links:
                      - method: GET
                        href: >-
                          http://localhost:38080/rest-test/deployment/aDeploymentId
                        rel: self
                    id: aDeploymentId
                    name: aName
                    source: process application
                    deploymentTime: 2013-01-23T13:59:43.000+0200
                    tenantId: null
                    deployedProcessDefinitions:
                      aProcDefId:
                        id: aProcDefId
                        key: aKey
                        category: aCategory
                        description: aDescription
                        name: aName
                        version: 42
                        resource: aResourceName
                        deploymentId: aDeploymentId
                        diagram: aResourceName.png
                        suspended: true
                        tenantId: null
                        versionTag: null
                    deployedCaseDefinitions: null
                    deployedDecisionDefinitions: null
                    deployedDecisionRequirementsDefinitions: null
          description: Request successful.
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ParseExceptionDto'
              examples:
                example-1:
                  summary: GET /deployment?name=deploymentName
                  value:
                    type: ParseException
                    message: >-
                      ENGINE-09005 Could not parse BPMN process. Errors:
                      Exclusive Gateway 'ExclusiveGateway_1' has outgoing
                      sequence flow 'SequenceFlow_0' without condition which is
                      not the default flow.
                    details:
                      invoice.bpmn:
                        errors:
                          - message: >-
                              Exclusive Gateway 'ExclusiveGateway_1' has
                              outgoing sequence flow 'SequenceFlow_0' without
                              condition which is not the default flow.
                            line: 77
                            column: 15
                            mainBpmnElementId: ExclusiveGateway_1
                            bpmnElementIds:
                              - ExclusiveGateway_1
                              - SequenceFlow_0
                        warnings:
                          - message: >-
                              It is not recommended to use a cancelling boundary
                              timer event with a time cycle.
                            line: 87
                            column: 20
                            mainBpmnElementId: BoundaryEvent_1
                            bpmnElementIds:
                              - BoundaryEvent_1
          description: >-
            Bad Request. In case one of the bpmn resources cannot be parsed.


            See the
            [Introduction](https://docs.camunda.org/manual/7.22/reference/rest/overview/#parse-exceptions)
            for

            the error response format.
components:
  schemas:
    MultiFormDeploymentDto:
      type: object
      properties:
        tenant-id:
          type: string
          nullable: true
          description: The tenant id for the deployment to be created.
        deployment-source:
          type: string
          nullable: true
          description: The source for the deployment to be created.
        deploy-changed-only:
          type: boolean
          nullable: true
          default: false
          description: >-
            A flag indicating whether the process engine should perform
            duplicate checking on a per-resource basis.

            If set to true, only those resources that have actually changed are
            deployed.

            Checks are made against resources included previous deployments of
            the same name and source and only against the latest versions of
            those resources.

            If set to true, the option enable-duplicate-filtering is overridden
            and set to true.
        enable-duplicate-filtering:
          type: boolean
          nullable: true
          default: false
          description: >-
            A flag indicating whether the process engine should perform
            duplicate checking for the deployment or not.

            This allows you to check if a deployment with the same name and the
            same resouces already exists and

            if true, not create a new deployment but instead return the existing
            deployment. The default value is false.
        deployment-name:
          type: string
          nullable: true
          description: The name for the deployment to be created.
        deployment-activation-time:
          type: string
          format: date-time
          nullable: true
          description: >-
            Sets the date on which the process definitions contained in this
            deployment will be activated. This means that all process

            definitions will be deployed as usual, but they will be suspended
            from the start until the given activation date.

            By
            [default](https://docs.camunda.org/manual/7.22/reference/rest/overview/date-format/),

            the date must have the format `yyyy-MM-dd'T'HH:mm:ss.SSSZ`, e.g.,
            `2013-01-23T14:42:45.000+0200`.
        data:
          type: string
          format: binary
          nullable: true
          description: >-
            The binary data to create the deployment resource.

            It is possible to have more than one form part with different form
            part names for the binary data to create a deployment.
    DeploymentWithDefinitionsDto:
      allOf:
        - type: object
          properties:
            deployedProcessDefinitions:
              type: object
              nullable: true
              additionalProperties:
                $ref: '#/components/schemas/ProcessDefinitionDto'
              description: >-
                A JSON Object containing a property for each of the process
                definitions,

                which are successfully deployed with that deployment.

                The key is the process definition id, the value is a JSON Object
                corresponding to the process definition.
            deployedDecisionDefinitions:
              type: object
              nullable: true
              additionalProperties:
                $ref: '#/components/schemas/DecisionDefinitionDto'
              description: >-
                A JSON Object containing a property for each of the decision
                definitions,

                which are successfully deployed with that deployment.

                The key is the decision definition id, the value is a JSON
                Object corresponding to the decision definition.
            deployedDecisionRequirementsDefinitions:
              type: object
              nullable: true
              additionalProperties:
                $ref: '#/components/schemas/DecisionRequirementsDefinitionDto'
              description: >-
                A JSON Object containing a property for each of the decision
                requirements definitions,

                which are successfully deployed with that deployment.

                The key is the decision requirements definition id, the value is
                a JSON Object corresponding to the decision requirements
                definition.
            deployedCaseDefinitions:
              type: object
              nullable: true
              additionalProperties:
                $ref: '#/components/schemas/CaseDefinitionDto'
              description: >-
                A JSON Object containing a property for each of the case
                definitions,

                which are successfully deployed with that deployment.

                The key is the case definition id, the value is a JSON Object
                corresponding to the case definition.
        - $ref: '#/components/schemas/DeploymentDto'
    ParseExceptionDto:
      allOf:
        - type: object
          properties:
            details:
              type: object
              nullable: true
              additionalProperties:
                $ref: '#/components/schemas/ResourceReportDto'
              description: >-
                A JSON Object containing list of errors and warnings occurred
                during deployment.
        - $ref: '#/components/schemas/ExceptionDto'
    ProcessDefinitionDto:
      type: object
      properties:
        id:
          type: string
          nullable: true
          description: The id of the process definition
        key:
          type: string
          nullable: true
          description: >-
            The key of the process definition, i.e., the id of the BPMN 2.0 XML
            process definition.
        category:
          type: string
          nullable: true
          description: The category of the process definition.
        description:
          type: string
          nullable: true
          description: The description of the process definition.
        name:
          type: string
          nullable: true
          description: The name of the process definition.
        version:
          type: integer
          format: int32
          nullable: true
          description: >-
            The version of the process definition that the engine assigned to
            it.
        resource:
          type: string
          nullable: true
          description: The file name of the process definition.
        deploymentId:
          type: string
          nullable: true
          description: The deployment id of the process definition.
        diagram:
          type: string
          nullable: true
          description: The file name of the process definition diagram, if it exists.
        suspended:
          type: boolean
          nullable: true
          description: A flag indicating whether the definition is suspended or not.
        tenantId:
          type: string
          nullable: true
          description: The tenant id of the process definition.
        versionTag:
          type: string
          nullable: true
          description: The version tag of the process definition.
        historyTimeToLive:
          type: integer
          format: int32
          nullable: true
          minimum: 0
          description: >-
            History time to live value of the process definition.

            Is used within [History
            cleanup](https://docs.camunda.org/manual/7.22/user-guide/process-engine/history/#history-cleanup).
        startableInTasklist:
          type: boolean
          nullable: true
          description: >-
            A flag indicating whether the process definition is startable in
            Tasklist or not.
    DecisionDefinitionDto:
      type: object
      properties:
        id:
          type: string
          nullable: true
          description: The id of the decision definition
        key:
          type: string
          nullable: true
          description: >-
            The key of the decision definition, i.e., the id of the DMN 1.0 XML
            decision definition.
        category:
          type: string
          nullable: true
          description: The category of the decision definition.
        name:
          type: string
          nullable: true
          description: The name of the decision definition.
        version:
          type: integer
          format: int32
          nullable: true
          description: >-
            The version of the decision definition that the engine assigned to
            it.
        resource:
          type: string
          nullable: true
          description: The file name of the decision definition.
        deploymentId:
          type: string
          nullable: true
          description: The deployment id of the decision definition.
        tenantId:
          type: string
          nullable: true
          description: The tenant id of the decision definition.
        decisionRequirementsDefinitionId:
          type: string
          nullable: true
          description: >-
            The id of the decision requirements definition this decision
            definition belongs to.
        decisionRequirementsDefinitionKey:
          type: string
          nullable: true
          description: >-
            The key of the decision requirements definition this decision
            definition belongs to.
        historyTimeToLive:
          type: integer
          format: int32
          nullable: true
          minimum: 0
          description: >-
            History time to live value of the decision definition.

            Is used within [History
            cleanup](https://docs.camunda.org/manual/7.22/user-guide/process-engine/history/#history-cleanup).
        versionTag:
          type: string
          nullable: true
          description: The version tag of the decision definition.
    DecisionRequirementsDefinitionDto:
      type: object
      properties:
        id:
          type: string
          nullable: true
          description: The id of the decision requirements definition
        key:
          type: string
          nullable: true
          description: >-
            The key of the decision requirements definition, i.e., the id of the
            DMN 1.0 XML decision definition.
        name:
          type: string
          nullable: true
          description: The name of the decision requirements definition.
        category:
          type: string
          nullable: true
          description: The category of the decision requirements definition.
        version:
          type: integer
          format: int32
          nullable: true
          description: >-
            The version of the decision requirements definition that the engine
            assigned to it.
        resource:
          type: string
          nullable: true
          description: The file name of the decision requirements definition.
        deploymentId:
          type: string
          nullable: true
          description: The deployment id of the decision requirements definition.
        tenantId:
          type: string
          nullable: true
          description: The tenant id of the decisionrequirements definition.
    CaseDefinitionDto:
      type: object
      properties:
        id:
          type: string
          nullable: true
          description: The id of the case definition
        key:
          type: string
          nullable: true
          description: >-
            The key of the case definition, i.e., the id of the CMMN 2.0 XML
            case definition.
        category:
          type: string
          nullable: true
          description: The category of the case definition.
        name:
          type: string
          nullable: true
          description: The name of the case definition.
        version:
          type: integer
          format: int32
          nullable: true
          description: The version of the case definition that the engine assigned to it.
        resource:
          type: string
          nullable: true
          description: The file name of the case definition.
        deploymentId:
          type: string
          nullable: true
          description: The deployment id of the case definition.
        tenantId:
          type: string
          nullable: true
          description: The tenant id of the case definition.
        historyTimeToLive:
          type: integer
          format: int32
          nullable: true
          minimum: 0
          description: >-
            History time to live value of the case definition.

            Is used within [History
            cleanup](https://docs.camunda.org/manual/7.22/user-guide/process-engine/history/#history-cleanup).
    DeploymentDto:
      allOf:
        - type: object
          properties:
            id:
              type: string
              nullable: true
              description: The id of the deployment.
            tenantId:
              type: string
              nullable: true
              description: The tenant id of the deployment.
            deploymentTime:
              type: string
              format: date-time
              nullable: true
              description: The time when the deployment was created.
            source:
              type: string
              nullable: true
              description: The source of the deployment.
            name:
              type: string
              nullable: true
              description: The name of the deployment.
        - $ref: '#/components/schemas/LinkableDto'
    ResourceReportDto:
      type: object
      properties:
        errors:
          type: array
          nullable: true
          items:
            $ref: '#/components/schemas/ProblemDto'
          description: A list of errors occurred during parsing.
        warnings:
          type: array
          nullable: true
          items:
            $ref: '#/components/schemas/ProblemDto'
          description: A list of warnings occurred during parsing.
    ExceptionDto:
      title: ExceptionDto
      type: object
      properties:
        type:
          type: string
          nullable: true
          description: An exception class indicating the occurred error.
        message:
          type: string
          nullable: true
          description: A detailed message of the error.
        code:
          type: number
          description: >-
            The code allows your client application to identify the error in an
            automated fashion.

            You can look up the meaning of all built-in codes and learn how to
            add custom codes

            in the [User
            Guide](https://docs.camunda.org/manual/7.22/user-guide/process-engine/error-handling/#exception-codes).
    LinkableDto:
      type: object
      properties:
        links:
          type: array
          nullable: true
          items:
            $ref: '#/components/schemas/AtomLink'
          description: >-
            The links associated to this resource, with `method`, `href` and
            `rel`.
    ProblemDto:
      type: object
      properties:
        message:
          type: string
          nullable: true
          description: The message of the problem.
        line:
          type: integer
          format: int32
          nullable: true
          description: The line where the problem occurred.
        column:
          type: integer
          format: int32
          nullable: true
          description: The column where the problem occurred.
        mainElementId:
          type: string
          nullable: true
          description: The main element id where the problem occurred.
        elementIds:
          type: array
          nullable: true
          items:
            type: string
          description: A list of element id affected by the problem.
    AtomLink:
      type: object
      properties:
        rel:
          type: string
          nullable: true
          description: The relation of the link to the object that belongs to.
        href:
          type: string
          nullable: true
          description: The url of the link.
        method:
          type: string
          nullable: true
          description: The http method.
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic

````