# Get an approval

Returns one approval’s action terms, rationale, requested scopes, grant, and current state. Only the user who owns the requesting grant can read it; anyone else gets a 404.

## GET `/v1/approvals/{approvalId}`

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

### Path parameters

`approvalId` string required

min length 1

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

Show properties Hide properties

- `id` string required
- `kind` string required  
  Allowed: `confirmation` `elevation`
- `purposeCode` string required
- `rationale` string required
- `requestedScopes` string[] required
- `resource` object required
- `quote` object | any required

Show properties Hide properties

Any of:

- object
- `object`
- any
- `any`
- `status` string required  
  Allowed: `pending` `approved` `executing` `completed` `denied` `expired`
- `grant` object required

Show properties Hide properties

- `id` string required
- `name` string required
- `baselineScopes` string[] required
- `authorizationLevel` string required  
  Allowed: `user` `team`
- `teamScope` object required

Show properties Hide properties

One of:

- object
- `object`
- object
- `teamIds` string[] required
- object
- `object`
- `result` object | any required

Show properties Hide properties

Any of:

- object
- `object`
- any
- `any`
- `expiresAt` 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))$

- `createdAt` string <date-time> required

- `decidedAt` string <date-time> | any required

Show properties Hide properties

Any of:

- string <date-time>
- `string<date-time>`
- any
- `any`

defaultError. Every 4xx and 5xx response is one RFC 9457 problem document served as \`application/problem+json\`.

`$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

`approvalId` path*

### Send

#### Request

**cURL**
```bash
curl -X GET "https://api.spacefast.com/v1/approvals/string" \
  -H "Authorization: Bearer YOUR_TOKEN"
```

**JavaScript**
```javascript
const response = await fetch("https://api.spacefast.com/v1/approvals/string", {
  method: "GET",
  headers: {
    "Authorization": "Bearer YOUR_TOKEN"
  }
});
```

**Python**
```python
import requests

response = requests.get(
    "https://api.spacefast.com/v1/approvals/string",
    headers={
        "Authorization": "Bearer YOUR_TOKEN"
    },
)
```

### Response

#### 200 default
```json
{
  "$schema": "http://example.com",
  "data": {
    "id": "string",
    "kind": "confirmation",
    "purposeCode": "string",
    "rationale": "string",
    "requestedScopes": [
      "string"
    ],
    "resource": {
      "property1": null,
      "property2": null
    },
    "quote": {
      "property1": null,
      "property2": null
    },
    "status": "pending",
    "grant": {
      "id": "string",
      "name": "string",
      "baselineScopes": [
        "string"
      ],
      "authorizationLevel": "user",
      "teamScope": {}
    },
    "result": {
      "property1": null,
      "property2": null
    },
    "expiresAt": "2019-08-24T14:15:22Z",
    "createdAt": "2019-08-24T14:15:22Z",
    "decidedAt": "2019-08-24T14:15:22Z"
  }
}
```

#### Error Response
```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"
}
```
