{
  "id": "actions",
  "title": "Actions requests",
  "url": "https://redis.io/docs/latest/operate/rs/8.0/references/rest-api/requests/actions/",
  "summary": "Actions requests",
  "content": "\n| Method | Path | Description |\n|--------|------|-------------|\n| [GET](#get-all-actions) | `/v1/actions` | Get all actions |\n| [GET](#get-all-actions-v2) | `/v2/actions` | Get all actions |\n| [GET](#get-action) | `/v1/actions/{uid}` | Get a single action |\n| [GET](#get-action-v2) | `/v2/actions/{uid}` | Get a single action |\n\n## Get all actions v1 {#get-all-actions}\n\n```\nGET /v1/actions\n```\n\nGet the status of all running, pending, or completed actions on all clusters, nodes, and databases. This API tracks long-lived API requests that return either a `task_id` or an `action_uid`.\n\nThis API does not return any information about other actions, such as import, export, and backup. To get info about these actions, use [`GET /v2/actions`](#get-all-actions-v2).\n\n#### Required permissions\n\n| Permission name |\n|-----------------|\n| [view_status_of_cluster_action](https://redis.io/docs/latest/operate/rs/references/rest-api/permissions#view_status_of_cluster_action) |\n\n### Request {#get-all-request}\n\n#### Example HTTP request\n\n```\nGET /v1/actions\n```\n\n### Response {#get-all-response}\n\nReturns a JSON array of [action objects](https://redis.io/docs/latest/operate/rs/references/rest-api/objects/action), which represent tasks, and an array of [state-machine objects](https://redis.io/docs/latest/operate/rs/references/rest-api/objects/state-machine).\n\n| Field | Type/Value | Description |\n|-------|------------|-------------|\n| action_uid | string | The action's globally unique identifier |\n| name | string | Name of the running or failed state machine |\n| progress | float (range: 0-100) | Percent of completed steps for the action |\n| status | \"pending\"\u003cbr /\u003e\"active\"\u003cbr /\u003e\"completed\"\u003cbr /\u003e\"failed\" | The action's status |\n| node_uid | string | UID of the node where the operation runs (optional) |\n| object_name | string | The object that the action runs on (optional) |\n| state | string | The current state of the state machine (optional)  |\n| pending_ops | JSON object | List of operations that are waiting to run (optional)\u003cbr /\u003e\"pending_ops\": {\u003cbr /\u003e  \"3\": {\u003cbr /\u003e    \"heartbeat\": integer,\u003cbr /\u003e    \"snapshot\": { ... },\u003cbr /\u003e    \"last_sample_time\": integer,\u003cbr /\u003e    \"op_name\": string,\u003cbr /\u003e    \"status_code\": string,\u003cbr /\u003e    \"status_description\": string,\u003cbr /\u003e    \"progress\": float\u003cbr /\u003e  }\u003cbr /\u003e}\u003cbr /\u003e`pending_ops` is a map where the key is the `shard_id`, and the value is a map that can include the following optional fields:\u003cbr /\u003e**heartbeat**: The time, in seconds since the Unix epoch, since the last change in the progress of the operation.\u003cbr /\u003e**snapshot**: A map of properties stored by the operation that are needed to run.\u003cbr /\u003e**last_sample_time**: The time, in seconds since the Unix epoch, when the last snapshot of the operation was taken.\u003cbr /\u003e**op_name**: The name of the operation from the state machine that is running.\u003cbr /\u003e**status_code**: The code for the operation's current status.\u003cbr /\u003e**status_description**: The operation's current status.\u003cbr /\u003e**progress**: The operation's progress in percentage (1 to 100). |\n\nRegardless of an action’s source, each action in the response contains the following attributes: `name`, `action_uid`, `status`, and `progress`.\n\n#### Example JSON body\n\n```json\n{\n  \"actions\": [\n    {\n      \"action_uid\": \"159ca2f8-7bf3-4cda-97e8-4eb560665c28\",\n      \"name\": \"retry_bdb\",\n      \"node_uid\": \"2\",\n      \"progress\": \"100\",\n      \"status\": \"completed\",\n      \"task_id\": \"159ca2f8-7bf3-4cda-97e8-4eb560665c28\"\n    },\n    {\n      \"action_uid\": \"661697c5-c747-41bd-ab81-ffc8fd13c494\",\n      \"name\": \"retry_bdb\",\n      \"node_uid\": \"1\",\n      \"progress\": \"100\",\n      \"status\": \"completed\",\n      \"task_id\": \"661697c5-c747-41bd-ab81-ffc8fd13c494\"\n    }\n  ],\n  \"state-machines\": [\n    {\n      \"action_uid\": \"a10586b1-60bc-428e-9bc6-392eb5f0d8ae\",\n      \"heartbeat\": 1650378874,\n      \"name\": \"SMCreateBDB\",\n      \"object_name\": \"bdb:1\",\n      \"progress\": 100,\n      \"status\": \"completed\"\n    }\n  ]\n}\n```\n\n### Status codes {#get-all-status-codes}\n\n| Code | Description |\n|------|-------------|\n| [200 OK](https://www.rfc-editor.org/rfc/rfc9110.html#name-200-ok) | No error, response provides info about an ongoing action |\n| [404 Not Found](https://www.rfc-editor.org/rfc/rfc9110.html#name-404-not-found) | Action does not exist (for example, not currently running and no available status of last run).|\n\n## Get all actions v2 {#get-all-actions-v2}\n\n```\nGET /v2/actions\n```\n\nGet the status of all currently running, pending, or completed actions from tasks, state-machines, and other actions, including import, export, and backup. This API tracks long-lived API requests that return either a `task_id` or an `action_uid`.\n\n#### Required permissions\n\n| Permission name |\n|-----------------|\n| [view_status_of_cluster_action](https://redis.io/docs/latest/operate/rs/references/rest-api/permissions#view_status_of_cluster_action) |\n\n### Request {#get-all-request-v2}\n\n#### Example HTTP request\n\n```\nGET /v2/actions\n```\n\n### Response {#get-all-response-v2}\n\nReturns a JSON array of v2 [action objects](https://redis.io/docs/latest/operate/rs/references/rest-api/objects/action).\n\nThe v2 action object includes the following fields:\n\n| Field | Type/Value | Description |\n|-------|------------|-------------|\n| action_uid | string | The action's globally unique identifier |\n| action_type | \"task\"\u003cbr /\u003e\"state-machine\"\u003cbr /\u003e\"other\" | The action's type |\n| creation_time | integer | The action's creation time. Unix timestamp in seconds. |\n| name | string | Name of the running or failed state machine |\n| progress | float (range: 0-100) | Percent of completed steps for the action |\n| status | \"queued\"\u003cbr /\u003e\"running\"\u003cbr /\u003e\"completed\"\u003cbr /\u003e\"failed\" | The action's status |\n| additional_info | JSON object | A dictionary that can include additional information about the action; only included in the response if it contains at least one key-value pair |\n\nThe `additional_info` object can contain any of the following fields:\n\n| Field | Type/Value | Description |\n|-------|------------|-------------|\n| description | string | Short description of the action |\n| error | string | A message that describes what error occurred if the action failed |\n| object_type | string | The type of object that was processed in the action, such as BDB or node |\n| object_uid | string | The unique ID of the object processed in the action |\n| pending_ops | JSON object | List of operations that are waiting to run (optional)\u003cbr /\u003e\"pending_ops\": {\u003cbr /\u003e  \"3\": {\u003cbr /\u003e    \"heartbeat\": integer,\u003cbr /\u003e    \"snapshot\": { ... },\u003cbr /\u003e    \"last_sample_time\": integer,\u003cbr /\u003e    \"op_name\": string,\u003cbr /\u003e    \"status_code\": string,\u003cbr /\u003e    \"status_description\": string,\u003cbr /\u003e    \"progress\": float\u003cbr /\u003e  }\u003cbr /\u003e}\u003cbr /\u003e`pending_ops` is a map where the key is the `shard_id`, and the value is a map that can include the following optional fields:\u003cbr /\u003e**heartbeat**: The time, in seconds since the Unix epoch, since the last change in the progress of the operation.\u003cbr /\u003e**snapshot**: A map of properties stored by the operation that are needed to run.\u003cbr /\u003e**last_sample_time**: **last_sample_time**: The time, in seconds since the Unix epoch, when the last snapshot of the operation was taken.\u003cbr /\u003e**op_name**: The name of the operation from the state machine that is running.\u003cbr /\u003e**status_code**: The code for the operation's current status.\u003cbr /\u003e**status_description**: The operation's current status.\u003cbr /\u003e**progress**: The operation's progress in percentage (1 to 100). |\n\nRegardless of an action’s source, each action in the response contains the following attributes: `name`, `action_uid`, `creation_time`, `status`, and `progress`.\n\n#### Example JSON body\n\n```json\n[\n    {\n        \"action_type\": \"task\",\n        \"action_uid\": \"6155403f-c26f-40ab-8afc-23ed663973f6\",\n        \"additional_info\": {\n            \"object_type\": \"node\",\n            \"object_uid\": \"1\"\n        },\n        \"creation_time\": 1742595918,\n        \"name\": \"retry_bdb\",\n        \"progress\": 100.0,\n        \"status\": \"completed\"\n    },\n    // Additional task objects\n]\n```\n\n### Status codes {#get-all-status-codes-v2}\n\n| Code | Description |\n|------|-------------|\n| [200 OK](https://www.rfc-editor.org/rfc/rfc9110.html#name-200-ok) | No error, response provides info about an ongoing action |\n\n## Get a specific action v1 {#get-action}\n\n```\nGET /v1/actions/{uid}\n```\n\nGet the status of a specific action.\n\nThis API does not return any information about other actions, such as import, export, and backup. To get info about these actions, use [`GET /v2/actions/\u003cuid\u003e`](#get-action-v2).\n\n#### Required permissions\n\n| Permission name |\n|-----------------|\n| [view_status_of_cluster_action](https://redis.io/docs/latest/operate/rs/references/rest-api/permissions#view_status_of_cluster_action) |\n\n### Request {#get-request}\n\n#### Example HTTP request\n\n```\nGET /v1/actions/{uid}\n```\n\n#### URL parameters\n\n| Field | Type | Description |\n|-------|------|-------------|\n| uid | string | The action_uid to check |\n\n### Response {#get-response}\n\nReturns an [action object](https://redis.io/docs/latest/operate/rs/references/rest-api/objects/action).\n\n| Field | Type/Value | Description |\n|-------|------------|-------------|\n| action_uid | string | The action's globally unique identifier |\n| name | string | Name of the running or failed state machine |\n| progress | float (range: 0-100) | Percent of completed steps for the action |\n| status | \"pending\"\u003cbr /\u003e\"active\"\u003cbr /\u003e\"completed\"\u003cbr /\u003e\"failed\" | The action's status |\n| node_uid | string | UID of the node where the operation runs (optional) |\n| object_name | string | The object that the action runs on (optional) |\n| state | string | The current state of the state machine (optional)  |\n| pending_ops | JSON object | List of operations that are waiting to run (optional)\u003cbr /\u003e\"pending_ops\": {\u003cbr /\u003e  \"3\": {\u003cbr /\u003e    \"heartbeat\": integer,\u003cbr /\u003e    \"snapshot\": { ... },\u003cbr /\u003e    \"last_sample_time\": integer,\u003cbr /\u003e    \"op_name\": string,\u003cbr /\u003e    \"status_code\": string,\u003cbr /\u003e    \"status_description\": string,\u003cbr /\u003e    \"progress\": float\u003cbr /\u003e  }\u003cbr /\u003e}\u003cbr /\u003e`pending_ops` is a map where the key is the `shard_id`, and the value is a map that can include the following optional fields:\u003cbr /\u003e**heartbeat**: The time, in seconds since the Unix epoch, since the last change in the progress of the operation.\u003cbr /\u003e**snapshot**: A map of properties stored by the operation that are needed to run.\u003cbr /\u003e**last_sample_time**: The time, in seconds since the Unix epoch, when the last snapshot of the operation was taken.\u003cbr /\u003e**op_name**: The name of the operation from the state machine that is running.\u003cbr /\u003e**status_code**: The code for the operation's current status.\u003cbr /\u003e**status_description**: The operation's current status.\u003cbr /\u003e**progress**: The operation's progress in percentage (1 to 100). |\n\nRegardless of an action’s source, each action contains the following attributes: `name`, `action_uid`, `status`, and `progress`.\n\n#### Example JSON body\n\n```json\n{\n  \"action_uid\": \"159ca2f8-7bf3-4cda-97e8-4eb560665c28\",\n  \"name\": \"retry_bdb\",\n  \"node_uid\": \"2\",\n  \"progress\": \"100\",\n  \"status\": \"completed\",\n  \"task_id\": \"159ca2f8-7bf3-4cda-97e8-4eb560665c28\"\n}\n```\n\n### Status codes {#get-status-codes}\n\n| Code | Description |\n|------|-------------|\n| [200 OK](https://www.rfc-editor.org/rfc/rfc9110.html#name-200-ok) | No error, response provides info about an ongoing action |\n| [404 Not Found](https://www.rfc-editor.org/rfc/rfc9110.html#name-404-not-found) | Action does not exist (that is, not currently running and no available status of last run) |\n\n## Get a specific action v2 {#get-action-v2}\n\n```\nGET /v2/actions/{uid}\n```\n\nGet the status of a specific action. This API can also return information about actions like import, export, and backup.\n\n#### Required permissions\n\n| Permission name |\n|-----------------|\n| [view_status_of_cluster_action](https://redis.io/docs/latest/operate/rs/references/rest-api/permissions#view_status_of_cluster_action) |\n\n### Request {#get-request-v2}\n\n#### Example HTTP request\n\n```\nGET /v2/actions/{uid}\n```\n\n#### URL parameters\n\n| Field | Type | Description |\n|-------|------|-------------|\n| uid | string | The action_uid to check |\n\n### Response {#get-response-v2}\n\nReturns a v2 [action object](https://redis.io/docs/latest/operate/rs/references/rest-api/objects/action).\n\nThe v2 action object includes the following fields:\n\n| Field | Type/Value | Description |\n|-------|------------|-------------|\n| action_uid | string | The action's globally unique identifier |\n| action_type | \"task\"\u003cbr /\u003e\"state-machine\"\u003cbr /\u003e\"other\" | The action's type |\n| creation_time | integer | The action's creation time. Unix timestamp in seconds. |\n| name | string | Name of the running or failed state machine |\n| progress | float (range: 0-100) | Percent of completed steps for the action |\n| status | \"queued\"\u003cbr /\u003e\"running\"\u003cbr /\u003e\"completed\"\u003cbr /\u003e\"failed\" | The action's status |\n| additional_info | JSON object | A dictionary that can include additional information about the action; only included in the response if it contains at least one key-value pair |\n\nThe `additional_info` object can contain any of the following fields:\n\n| Field | Type/Value | Description |\n|-------|------------|-------------|\n| description | string | Short description of the action |\n| error | string | A message that describes what error occurred if the action failed |\n| object_type | string | The type of object that was processed in the action, such as BDB or node |\n| object_uid | string | The unique ID of the object processed in the action |\n| pending_ops | JSON object | List of operations that are waiting to run (optional)\u003cbr /\u003e\"pending_ops\": {\u003cbr /\u003e  \"3\": {\u003cbr /\u003e    \"heartbeat\": integer,\u003cbr /\u003e    \"snapshot\": { ... },\u003cbr /\u003e    \"last_sample_time\": integer,\u003cbr /\u003e    \"op_name\": string,\u003cbr /\u003e    \"status_code\": string,\u003cbr /\u003e    \"status_description\": string,\u003cbr /\u003e    \"progress\": float\u003cbr /\u003e  }\u003cbr /\u003e}\u003cbr /\u003e`pending_ops` is a map where the key is the `shard_id`, and the value is a map that can include the following optional fields:\u003cbr /\u003e**heartbeat**: The time, in seconds since the Unix epoch, since the last change in the progress of the operation.\u003cbr /\u003e**snapshot**: A map of properties stored by the operation that are needed to run.\u003cbr /\u003e**last_sample_time**: The time, in seconds since the Unix epoch, when the last snapshot of the operation was taken.\u003cbr /\u003e**op_name**: The name of the operation from the state machine that is running.\u003cbr /\u003e**status_code**: The code for the operation's current status.\u003cbr /\u003e**status_description**: The operation's current status.\u003cbr /\u003e**progress**: The operation's progress in percentage (1 to 100). |\n\nRegardless of an action’s source, each action contains the following attributes: `name`, `action_uid`, `creation_time`, `status`, and `progress`.\n\n#### Example JSON body\n\n```json\n{\n    \"action_type\": \"task\",\n    \"action_uid\": \"6155403f-c26f-40ab-8afc-23ed663973f6\",\n    \"additional_info\": {\n        \"object_type\": \"node\",\n        \"object_uid\": \"1\"\n    },\n    \"creation_time\": 1742595918,\n    \"name\": \"retry_bdb\",\n    \"progress\": 100.0,\n    \"status\": \"completed\"\n}\n```\n\n### Status codes {#get-status-codes-v2}\n\n| Code | Description |\n|------|-------------|\n| [200 OK](https://www.rfc-editor.org/rfc/rfc9110.html#name-200-ok) | No error, response provides info about an ongoing action |\n| [404 Not Found](https://www.rfc-editor.org/rfc/rfc9110.html#name-404-not-found) | Action does not exist (that is, not currently running and no available status of last run) |\n",
  "tags": ["docs","operate","rs"],
  "last_updated": "2026-07-23T12:05:56-05:00",
  "children": [{"id":"bdb","summary":"Database actions requests","title":"Database actions requests","url":"https://redis.io/docs/latest/operate/rs/8.0/references/rest-api/requests/actions/bdb/"}]
}
