# Resume a parked run

Decides a run that parked on an approval. A run parked in `human` mode refuses a machine decision; omit `action` to read the decision a person already recorded in the dashboard.

POST `/v1/connectors/runs/{runId}/resume`

## Authorization

`Authorization` Bearer token · header required

`Authorization: Bearer <token>` with an API key (`sfa_` prefix), an OAuth access token, a session token, or a Space machine credential (`sfm_` prefix).

or

`Authorization` OAuth2 access token · header required

OAuth 2.0 with Spacefast scopes. People use the authorization code flow; machines use client credentials.

**Scopes:** `connectors:execute`

## Path parameters

`runId` string required

min length 1

## Query parameters

`team` string

min length 1 · max length 255

## Request body

required `application/json`

`action` string

Omit to leave it waiting for a person. A run parked in `human` mode refuses a machine decision.

Allowed: `accept` `decline` `cancel`

`content` object

Values the paused call asked for, when the approval collected any.

## Responses

### 200 Response for status 200

`$schema` string <uri>

Canonical JSON Schema URL for this response body. The server also sends it in the `Link: rel="describedby"` response header.

`data` object required

One execution. A tool call and a code program are the same resource.

Show properties Hide properties

One of:

object

`id` string required

Run id (`cxr_`).

`input` object required

What the run was asked to do, without echoing arguments that may carry customer data.

Show properties Hide properties

`kind` string required

`tool` is one call; `code` is a program that may make many. Same endpoint, same id space, same resume.

Allowed: `tool` `code`

`address` string | any required

Tool address for a `tool` run; null for a `code` program.

Show properties Hide properties

Any of:

string

`string`

any

`any`

`digest` string required

Content digest of the submitted input, so a retry can be recognized without replaying it.

`usage` object required

What this run has spent. Budgets are enforced against these numbers.

Show properties Hide properties

`toolCalls` integer required

Tool calls made so far.

min -9007199254740991 · max 9007199254740991

`egressBytes` integer required

Bytes read from third-party APIs so far.

min -9007199254740991 · max 9007199254740991

`durationMs` integer required

Wall-clock time spent executing so far.

min -9007199254740991 · max 9007199254740991

`createdAt` string <date-time> required

matches ^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?(?:Z))$

`status` string required

Still executing. Poll the run, or submit the next one with a longer `waitMs`.

object

`id` string required

Run id (`cxr_`).

`input` object required

What the run was asked to do, without echoing arguments that may carry customer data.

Show properties Hide properties

`kind` string required

`tool` is one call; `code` is a program that may make many. Same endpoint, same id space, same resume.

Allowed: `tool` `code`

`address` string | any required

Tool address for a `tool` run; null for a `code` program.

Show properties Hide properties

Any of:

string

`string`

any

`any`

`digest` string required

Content digest of the submitted input, so a retry can be recognized without replaying it.

`usage` object required

What this run has spent. Budgets are enforced against these numbers.

Show properties Hide properties

`toolCalls` integer required

Tool calls made so far.

min -9007199254740991 · max 9007199254740991

`egressBytes` integer required

Bytes read from third-party APIs so far.

min -9007199254740991 · max 9007199254740991

`durationMs` integer required

Wall-clock time spent executing so far.

min -9007199254740991 · max 9007199254740991

`createdAt` string <date-time> required

`status` string required

Parked on a decision.

`approval` object required

A run waiting on a decision. Durable — any replica can resume it.

Show properties Hide properties

`decisionId` string | any required

Grant-decision id (`gdc_`) backing this approval when the credential is grant-backed; null for session/API-key pauses (resume with the run id).

Show properties Hide properties

Any of:

string

`string`

any

`any`

`address` string required

Tool the run is waiting to call.

`preview` object required

The arguments it would send, with secret-shaped values masked.

`reason` string required

Why it parked: a policy rule, or the tool's own annotation.

Allowed: `policy_require_approval` `annotation_requires_approval`

`matchedPattern` string | any required

Policy pattern that parked it; null when the tool asked for itself.

Show properties Hide properties

Any of:

string

`string`

any

`any`

`approvalUrl` string <uri> required

Dashboard page where a person approves or denies.

`expiresAt` string <date-time> required

After this the run expires and cannot be resumed.

object

`id` string required

Run id (`cxr_`).

`input` object required

What the run was asked to do, without echoing arguments that may carry customer data.

Show properties Hide properties

`kind` string required

`tool` is one call; `code` is a program that may make many. Same endpoint, same id space, same resume.

Allowed: `tool` `code`

`address` string | any required

Tool address for a `tool` run; null for a `code` program.

Show properties Hide properties

Any of:

string

`string`

any

`any`

`digest` string required

Content digest of the submitted input, so a retry can be recognized without replaying it.

`usage` object required

What this run has spent. Budgets are enforced against these numbers.

Show properties Hide properties

`toolCalls` integer required

Tool calls made so far.

min -9007199254740991 · max 9007199254740991

`egressBytes` integer required

Bytes read from third-party APIs so far.

min -9007199254740991 · max 9007199254740991

`durationMs` integer required

Wall-clock time spent executing so far.

min -9007199254740991 · max 9007199254740991

`createdAt` string <date-time> required

`status` string required

`completedAt` string <date-time> required

`result` any required

Whatever the tool or program returned.

object

`id` string required

Run id (`cxr_`).

`input` object required

What the run was asked to do, without echoing arguments that may carry customer data.

Show properties Hide properties

`kind` string required

`tool` is one call; `code` is a program that may make many. Same endpoint, same id space, same resume.

Allowed: `tool` `code`

`address` string | any required

Tool address for a `tool` run; null for a `code` program.

Show properties Hide properties

Any of:

string

`string`

any

`any`

`digest` string required

Content digest of the submitted input, so a retry can be recognized without replaying it.

`usage` object required

What this run has spent. Budgets are enforced against these numbers.

Show properties Hide properties

`toolCalls` integer required

Tool calls made so far.

min -9007199254740991 · max 9007199254740991

`egressBytes` integer required

Bytes read from third-party APIs so far.

min -9007199254740991 · max 9007199254740991

`durationMs` integer required

Wall-clock time spent executing so far.

min -9007199254740991 · max 9007199254740991

`createdAt` string <date-time> required

`status` string required

`completedAt` string <date-time> required

default Problem details (RFC 9457). Any 4xx/5xx response is one `application/problem+json` document.

`$schema` string <uri>

Canonical JSON Schema URL for this response body. The server also sends it in the `Link: rel="describedby"` response header.

`type` string required

URL of the documentation page for this error. Derived from `code`.

`title` string required

Human-readable name of the error type. Derived from `code`.

`status` integer required

HTTP status of the response, repeated in the body.

min -9007199254740991 · max 9007199254740991

`detail` string required

What went wrong in this request.

`code` string required

Stable snake_case error code. Match on this, not on `detail`.

`pointer` string

RFC 6901 JSON Pointer to the request field or batch entry that failed, for example `/files/37/path`. Present on validation failures.

`details` object

Machine-readable context keyed by the error code.

`suggestions` string[]

Recovery steps safe to show to a person.

`next` string[]

Commands or API requests to run next, usable as written.

`requestId` string required

ID of this request, from the `X-Request-Id` header or generated. Quote it when contacting support.

## Try it

### Server

Base URL https://api.spacefast.com Custom base URL Overrides the selected server when set.

## Authorization

Bearer token Remember on this device Include my values in samples

## Parameters

`runId` path* `team` query

## Body

application/json

### Request body

Send

### Request

### cURL

```bash
curl -X POST "https://api.spacefast.com/v1/connectors/runs/string/resume"  \
  -H "Authorization: Bearer YOUR_TOKEN"  \
  -H "Content-Type: application/json"  \
  -d '{
  "action": "accept",
  "content": {
    "property1": null,
    "property2": null
  }
}'
```

### JavaScript

```javascript
const response = await fetch("https://api.spacefast.com/v1/connectors/runs/string/resume", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_TOKEN",
    "Content-Type": "application/json"
  },
  body: "{\n  \"action\": \"accept\",\n  \"content\": {\n    \"property1\": null,\n    \"property2\": null\n  }\n}"
});
```

### Python

```python
import requests

response = requests.post(
    "https://api.spacefast.com/v1/connectors/runs/string/resume",
    headers={
        "Authorization": "Bearer YOUR_TOKEN",
        "Content-Type": "application/json"
    },
    data="{\n  \"action\": \"accept\",\n  \"content\": {\n    \"property1\": null,\n    \"property2\": null\n  }\n}",
)
```

### Response

### 200 default

```json
{
  "$schema": "http://example.com",
  "data": {
    "id": "string",
    "input": {
      "kind": "tool",
      "address": "string",
      "digest": "string"
    },
    "usage": {
      "toolCalls": -9007199254740991,
      "egressBytes": -9007199254740991,
      "durationMs": -9007199254740991
    },
    "createdAt": "2019-08-24T14:15:22Z",
    "status": "running"
  }
}
```

### Error

```json
{
  "$schema": "http://example.com",
  "type": "string",
  "title": "string",
  "status": -9007199254740991,
  "detail": "string",
  "code": "string",
  "pointer": "string",
  "details": {
    "property1": null,
    "property2": null
  },
  "suggestions": [
    "string"
  ],
  "next": [
    "string"
  ],
  "requestId": "string"
}
```
