**Source URL:** https://limited.veevavault.dev/medical/vault-api/api-reference/23.3/workflows/retrieve-workflows.md

# Retrieve Workflows



Retrieve all current, cancelled, and completed workflow instances for a specific object record or all workflows available to a particular workflow participant.

<Endpoint path="/api/{version}/objects/objectworkflows" method="GET"></Endpoint>

## Headers {#headers}

<FieldTable>
| Name | Description |
| --- | --- |
| `Accept` | `application/json` (default) or `application/xml` |
</FieldTable>

## Query Parameters {#query-parameters}

<FieldTable>
| Name | Description |
| --- | --- |
| `object__v`, `record_id__v` | To retrieve all workflows configured on an object, include the Vault object `name__v` and object record `id` field values as `object__v={name__v}&record_id__v={id}`. These two parameters are required when the `participant` parameter is not used. |
| `participant` | To retrieve all workflows available to a particular user, include the user `id` field value as `participant={id}`. To retrieve your own workflows, set this value to `participant=me()`. This parameter is required when the `object__v` and `record_id__v` parameters are not used. |
| `status__v` | To retrieve all workflows with specific statuses, include one or more status `name__v` field values. For example: `status__v=active__v`, `status__v=active__v,completed__v`. Workflows with `status__v=active__v` are in progress for the indicated object record. Valid statuses include:`active__v``completed__v``cancelled__v` |
| `offset` | This parameter is used to paginate the results. It specifies the amount of offset from the first record returned. Vault returns 200 records per page by default. If you are viewing the first 200 results (page 1) and want to see the next page, set this to `offset=201`. |
| `page_size` | This parameter is used to paginate the results. It specifies the size number of records to display per page. Vault returns 200 records per page by default. You can set this value lower or as high as 1000 records per page. For example: `page_size=1000`. |
| `loc` | When localized (translated) strings are available, retrieve them by including `loc=true`. |
</FieldTable>

## Request {#request}

<CodeExample title="">
```
curl -X GET -H "Authorization: {SESSION_ID}" \
https://myvault.veevavault.com/api/v14.0/objects/objectworkflows?object__v=product__v&record_id__v=00P07551

```
</CodeExample>

## Response {#response}

<CodeExample title="">
```
{
  "responseStatus": "SUCCESS",
  "responseDetails": {
    "total": 2,
    "offset": 0,
    "page_size": 200,
    "object": {
      "name": "objectworkflows",
      "label": "Object Workflow",
      "url": "/api/v14.0/objects/objectworkflows?object__v=product__v&record_id__v=00P07551",
      "label_plural": "Object Workflows"
    }
  },
  "data": [
    {
      "id": 4602,
      "label__v": "Product Workflow",
      "status__v": [
        "active__v"
      ],
      "object__v": "product__v",
      "record_id__v": "00P07551",
      "initiator__v": 52212,
      "started_date__v": "2023-04-03T16:09:28.000Z"
    },
    {
      "id": 3901,
      "label__v": "Product Workflow",
      "status__v": [
        "cancelled__v"
      ],
      "object__v": "product__v",
      "record_id__v": "00P07551",
      "initiator__v": 46916,
      "started_date__v": "2022-05-17T17:22:18.000Z",
      "cancelled_date__v": "2022-05-17T17:24:08.000Z"
    }
  ]
}

```
</CodeExample>

## Response Details {#response-details}

On SUCCESS, the response lists all workflows matching the query parameters. Each workflow may include the following fields:

* `id` - The workflow ID.

* `label__v` - The workflow label as seen in the UI.

* `status__v` - The current status of the workflow.

* `object__v` - The name of the object using the workflow.

* `record_id__v` - The ID of the object record using the workflow.

* `initiator__v` - The ID of the user who started the workflow. This is the workflow owner.

* `started_date__v` - The date and time when the workflow was started.

* `completed_date__v` - The date and time when the workflow was completed.

* `cancelled_date__v` - The date and time when the workflow was cancelled.



---

**Previous:** [Workflows](/medical/vault-api/api-reference/23.3/workflows)  
**Next:** [Retrieve Workflow Details](/medical/vault-api/api-reference/23.3/workflows/retrieve-workflow-details)