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

# 获取列表

> Queries for historic process instances that fulfill the given parameters.
The size of the result set can be retrieved by using the
[Get Process Instance Count](https://docs.camunda.org/manual/7.22/reference/rest/history/process-instance/get-process-instance-query-count/) method.



## OpenAPI

````yaml GET /history/process-instance
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:
  /history/process-instance:
    get:
      tags:
        - Historic Process Instance
      summary: Get List
      description: >-
        Queries for historic process instances that fulfill the given
        parameters.

        The size of the result set can be retrieved by using the

        [Get Process Instance
        Count](https://docs.camunda.org/manual/7.22/reference/rest/history/process-instance/get-process-instance-query-count/)
        method.
      operationId: getHistoricProcessInstances
      parameters:
        - name: sortBy
          in: query
          schema:
            enum:
              - instanceId
              - definitionId
              - definitionKey
              - definitionName
              - definitionVersion
              - businessKey
              - startTime
              - endTime
              - duration
              - tenantId
            type: string
          description: |-
            Sort the results lexicographically by a given criterion.
            Must be used in conjunction with the sortOrder parameter.
        - name: sortOrder
          in: query
          schema:
            enum:
              - asc
              - desc
            type: string
          description: >-
            Sort the results in a given order. Values may be asc for ascending
            order or desc for descending order.

            Must be used in conjunction with the sortBy parameter.
        - name: firstResult
          in: query
          schema:
            type: integer
          description: >-
            Pagination of results. Specifies the index of the first result to
            return.
        - name: maxResults
          in: query
          schema:
            type: integer
          description: >-
            Pagination of results. Specifies the maximum number of results to
            return.

            Will return less results if there are no more results left.
        - name: processInstanceId
          in: query
          schema:
            type: string
          description: Filter by process instance id.
        - name: processInstanceIds
          in: query
          schema:
            type: string
          description: >-
            Filter by process instance ids. Filter by a comma-separated list of
            `Strings`.
        - name: processDefinitionId
          in: query
          schema:
            type: string
          description: Filter by the process definition the instances run on.
        - name: processDefinitionKey
          in: query
          schema:
            type: string
          description: Filter by the key of the process definition the instances run on.
        - name: processDefinitionKeyIn
          in: query
          schema:
            type: string
          description: >-
            Filter by a list of process definition keys. A process instance must
            have one of the given process definition keys. Filter by a
            comma-separated list of `Strings`.
        - name: processDefinitionName
          in: query
          schema:
            type: string
          description: Filter by the name of the process definition the instances run on.
        - name: processDefinitionNameLike
          in: query
          schema:
            type: string
          description: >-
            Filter by process definition names that the parameter is a substring
            of.
        - name: processDefinitionKeyNotIn
          in: query
          schema:
            type: string
          description: >-
            Exclude instances that belong to a set of process definitions.
            Filter by a comma-separated list of `Strings`.
        - name: processInstanceBusinessKey
          in: query
          schema:
            type: string
          description: Filter by process instance business key.
        - name: processInstanceBusinessKeyIn
          in: query
          schema:
            type: string
          description: >-
            Filter by a list of business keys. A process instance must have one
            of the given business keys. Filter by a comma-separated list of
            `Strings`
        - name: processInstanceBusinessKeyLike
          in: query
          schema:
            type: string
          description: >-
            Filter by process instance business key that the parameter is a
            substring of.
        - name: rootProcessInstances
          in: query
          schema:
            type: boolean
          description: >-
            Restrict the query to all process instances that are top level
            process instances.
        - name: finished
          in: query
          schema:
            type: boolean
          description: >-
            Only include finished process instances. This flag includes all
            process instances

            that are completed or terminated. Value may only be `true`, as
            `false` is the default behavior.
        - name: unfinished
          in: query
          schema:
            type: boolean
          description: >-
            Only include unfinished process instances. Value may only be `true`,
            as `false` is the default behavior.
        - name: withIncidents
          in: query
          schema:
            type: boolean
          description: >-
            Only include process instances which have an incident. Value may
            only be `true`, as `false` is the default behavior.
        - name: withRootIncidents
          in: query
          schema:
            type: boolean
          description: >-
            Only include process instances which have a root incident. Value may
            only be `true`, as `false` is the default behavior.
        - name: incidentIdIn
          in: query
          schema:
            type: string
          description: >-
            Restrict to instances that have an incident with one of the given
            ids. Filter by a comma-separated list of `Strings`
        - name: incidentType
          in: query
          schema:
            type: string
          description: >-
            Filter by the incident type. See the [User
            Guide](https://docs.camunda.org/manual/7.22/user-guide/process-engine/incidents/#incident-types)
            for a list of incident types.
        - name: incidentStatus
          in: query
          schema:
            enum:
              - open
              - resolved
            type: string
          description: >-
            Only include process instances which have an incident in status
            either open or resolved. To get all process instances, use the query
            parameter withIncidents.
        - name: incidentMessage
          in: query
          schema:
            type: string
          description: Filter by the incident message. Exact match.
        - name: incidentMessageLike
          in: query
          schema:
            type: string
          description: Filter by the incident message that the parameter is a substring of.
        - name: startedBefore
          in: query
          schema:
            type: string
            format: date-time
          description: >-
            Restrict to instances that were started before the given 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`.
        - name: startedAfter
          in: query
          schema:
            type: string
            format: date-time
          description: >-
            Restrict to instances that were started after the given 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`.
        - name: finishedBefore
          in: query
          schema:
            type: string
            format: date-time
          description: >-
            Restrict to instances that were finished before the given 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`.
        - name: finishedAfter
          in: query
          schema:
            type: string
            format: date-time
          description: >-
            Restrict to instances that were finished after the given 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`.
        - name: executedActivityAfter
          in: query
          schema:
            type: string
            format: date-time
          description: >-
            Restrict to instances that executed an activity after the given date
            (inclusive).

            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`.
        - name: executedActivityBefore
          in: query
          schema:
            type: string
            format: date-time
          description: >-
            Restrict to instances that executed an activity before the given
            date (inclusive).

            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`.
        - name: executedJobAfter
          in: query
          schema:
            type: string
            format: date-time
          description: >-
            Restrict to instances that executed an job after the given date
            (inclusive).

            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`.
        - name: executedJobBefore
          in: query
          schema:
            type: string
            format: date-time
          description: >-
            Restrict to instances that executed an job before the given date
            (inclusive).

            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`.
        - name: startedBy
          in: query
          schema:
            type: string
          description: Only include process instances that were started by the given user.
        - name: superProcessInstanceId
          in: query
          schema:
            type: string
          description: >-
            Restrict query to all process instances that are sub process
            instances of the given process instance. Takes a process instance
            id.
        - name: subProcessInstanceId
          in: query
          schema:
            type: string
          description: >-
            Restrict query to one process instance that has a sub process
            instance with the given id.
        - name: superCaseInstanceId
          in: query
          schema:
            type: string
          description: >-
            Restrict query to all process instances that are sub process
            instances of the given case instance. Takes a case instance id.
        - name: subCaseInstanceId
          in: query
          schema:
            type: string
          description: >-
            Restrict query to one process instance that has a sub case instance
            with the given id.
        - name: caseInstanceId
          in: query
          schema:
            type: string
          description: >-
            Restrict query to all process instances that are sub process
            instances of the given case instance. Takes a case instance id.
        - name: tenantIdIn
          in: query
          schema:
            type: string
          description: >-
            Filter by a list of tenant ids. A process instance must have one of
            the given tenant ids. Filter by a comma-separated list of `Strings`
        - name: withoutTenantId
          in: query
          schema:
            type: boolean
          description: >-
            Only include historic process instances which belong to no tenant.
            Value may only be `true`, as `false` is the default behavior.
        - name: activityIdIn
          in: query
          schema:
            type: string
          description: >-
            Restrict to instances with an active activity with one of the given
            ids. In contrast to the `activeActivityIdIn` filter, it can query
            for async and incident activities. Filter by a comma-separated list
            of `Strings`
        - name: executedActivityIdIn
          in: query
          schema:
            type: string
          description: >-
            Restrict to instances that executed an activity with one of given
            ids. Filter by a comma-separated list of `Strings`
        - name: activeActivityIdIn
          in: query
          schema:
            type: string
          description: >-
            Restrict to instances that have an active activity with one of given
            ids. Filter by a comma-separated list of `Strings`
        - name: active
          in: query
          schema:
            type: boolean
          description: Restrict to instances that are active.
        - name: suspended
          in: query
          schema:
            type: boolean
          description: Restrict to instances that are suspended.
        - name: completed
          in: query
          schema:
            type: boolean
          description: Restrict to instances that are completed.
        - name: externallyTerminated
          in: query
          schema:
            type: boolean
          description: Restrict to instances that are externallyTerminated.
        - name: internallyTerminated
          in: query
          schema:
            type: boolean
          description: Restrict to instances that are internallyTerminated.
        - name: variables
          in: query
          schema:
            type: string
          description: >
            Only include process instances that have/had variables with certain
            values.

            Variable filtering expressions are comma-separated and are
            structured as follows:

            A valid parameter value has the form `key_operator_value`. `key` is
            the variable name, `operator` is the comparison operator to be used
            and `value` the variable value.


            **Note:** Values are always treated as String objects on server
            side.


            Valid operator values are: `eq` - equal to; `neq` - not equal to;
            `gt` - greater than; `gteq` - greater than or equal to; `lt` - lower
            than; `lteq` - lower than or equal to; `like`.


            Key and value may not contain underscore or comma characters.
        - name: variableNamesIgnoreCase
          in: query
          schema:
            type: boolean
          description: >-
            Match all variable names provided in variables case-insensitively.
            If set to `true` variableName and variablename are treated as equal.
        - name: variableValuesIgnoreCase
          in: query
          schema:
            type: boolean
          description: >-
            Match all variable values provided in variables case-insensitively.
            If set to `true` variableValue and variablevalue are treated as
            equal.
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/HistoricProcessInstanceDto'
              examples:
                example-1:
                  summary: Status 200 response
                  description: >-
                    Response for GET
                    `/history/process-instance?finishedAfter=2013-01-01T00:00:00.000%2b0200&finishedBefore=2013-04-01T23:59:59.000%2b0200&executedActivityAfter=2013-03-23T13:42:44.000%2b0200`
                  value:
                    - id: 7c80cc8f-ef95-11e6-b6e6-34f39ab71d4e
                      businessKey: null
                      processDefinitionId: invoice:1:7bf79f13-ef95-11e6-b6e6-34f39ab71d4e
                      processDefinitionKey: invoice
                      processDefinitionName: Invoice Receipt
                      processDefinitionVersion: 1
                      startTime: 2017-02-10T14:33:19.000+0200
                      endTime: null
                      removalTime: null
                      durationInMillis: null
                      startUserId: null
                      startActivityId: StartEvent_1
                      deleteReason: null
                      rootProcessInstanceId: f8259e5d-ab9d-11e8-8449-e4a7a094a9d6
                      superProcessInstanceId: null
                      superCaseInstanceId: null
                      caseInstanceId: null
                      tenantId: null
                      state: ACTIVE
                      restartedProcessInstanceId: 2bef365d-3406-11ef-bd73-0a0027000003
          description: Request successful.
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExceptionDto'
          description: >-
            Bad Request

            Returned if some of the query parameters are invalid, for example if
            a sortOrder parameter is supplied, but no sortBy.

            See the
            [Introduction](https://docs.camunda.org/manual/7.22/reference/rest/overview/#error-handling)
            for the error response format.
components:
  schemas:
    HistoricProcessInstanceDto:
      type: object
      properties:
        id:
          type: string
          nullable: true
          description: The id of the process instance.
        rootProcessInstanceId:
          type: string
          nullable: true
          description: >-
            The process instance id of the root process instance that initiated
            the process.
        superProcessInstanceId:
          type: string
          nullable: true
          description: The id of the parent process instance, if it exists.
        superCaseInstanceId:
          type: string
          nullable: true
          description: The id of the parent case instance, if it exists.
        caseInstanceId:
          type: string
          nullable: true
          description: The id of the parent case instance, if it exists.
        processDefinitionName:
          type: string
          nullable: true
          description: >-
            The name of the process definition that this process instance
            belongs to.
        processDefinitionKey:
          type: string
          nullable: true
          description: >-
            The key of the process definition that this process instance belongs
            to.
        processDefinitionVersion:
          type: integer
          format: int32
          nullable: true
          description: >-
            The version of the process definition that this process instance
            belongs to.
        processDefinitionId:
          type: string
          nullable: true
          description: >-
            The id of the process definition that this process instance belongs
            to.
        businessKey:
          type: string
          nullable: true
          description: The business key of the process instance.
        startTime:
          type: string
          format: date-time
          nullable: true
          description: >-
            The time the instance was started. Default
            [format](https://docs.camunda.org/manual/7.22/reference/rest/overview/date-format/)
            `yyyy-MM-dd'T'HH:mm:ss.SSSZ`.
        endTime:
          type: string
          format: date-time
          nullable: true
          description: >-
            The time the instance ended. Default
            [format](https://docs.camunda.org/manual/7.22/reference/rest/overview/date-format/)
            `yyyy-MM-dd'T'HH:mm:ss.SSSZ`.
        removalTime:
          type: string
          format: date-time
          nullable: true
          description: >-
            The time after which the instance should be removed by the History
            Cleanup job. Default
            [format](https://docs.camunda.org/manual/7.22/reference/rest/overview/date-format/)
            `yyyy-MM-dd'T'HH:mm:ss.SSSZ`.
        durationInMillis:
          type: integer
          format: int64
          nullable: true
          description: The time the instance took to finish (in milliseconds).
        startUserId:
          type: string
          nullable: true
          description: The id of the user who started the process instance.
        startActivityId:
          type: string
          nullable: true
          description: >-
            The id of the initial activity that was executed (e.g., a start
            event).
        deleteReason:
          type: string
          nullable: true
          description: >-
            The provided delete reason in case the process instance was canceled
            during execution.
        tenantId:
          type: string
          nullable: true
          description: The tenant id of the process instance.
        state:
          type: string
          nullable: true
          enum:
            - ACTIVE
            - SUSPENDED
            - COMPLETED
            - EXTERNALLY_TERMINATED
            - INTERNALLY_TERMINATED
          description: >-
            Last state of the process instance, possible values are:


            `ACTIVE` - running process instance


            `SUSPENDED` - suspended process instances


            `COMPLETED` - completed through normal end event


            `EXTERNALLY_TERMINATED` - terminated externally, for instance
            through REST API


            `INTERNALLY_TERMINATED` - terminated internally, for instance by
            terminating boundary event
        restartedProcessInstanceId:
          type: string
          nullable: true
          description: The id of the original process instance which was restarted.
    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).
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic

````