# Repzo API - Approvals

OpenAPI specification for Repzo Approvals endpoints.

**Version:** 1.0.0

## Overview

### Base URLs

- \*\*\*\*: `https://sv.api.repzo.me`

## Authentication

No authentication required.

## Endpoints

### `/approvals`

#### GET /approvals

**Summary:** Find approvals

##### Parameters

| Name | Location | Type | Required | Description |
| ---- | -------- | ---- | -------- | ----------- |

| `params` | query | object | No | Query parameters for filtering approvals |

##### Responses

**200** - A list of approvals

Content-Type: `application/json`

---

#### POST /approvals

**Summary:** Create an approval

##### Request Body

**Content Types:**

- `application/json`

##### Responses

**201** - Approval created

Content-Type: `application/json`

---

### `/approvals/{id}`

#### GET /approvals/{id}

**Summary:** Get an approval by ID

##### Parameters

| Name | Location | Type | Required | Description |
| ---- | -------- | ---- | -------- | ----------- |

| `id` | path | string | Yes | No description |

##### Responses

**200** - Approval details

Content-Type: `application/json`

---

#### PUT /approvals/{id}

**Summary:** Update an approval

##### Parameters

| Name | Location | Type | Required | Description |
| ---- | -------- | ---- | -------- | ----------- |

| `id` | path | string | Yes | No description |

##### Request Body

**Content Types:**

- `application/json`

##### Responses

**200** - Approval updated

Content-Type: `application/json`

---

#### DELETE /approvals/{id}

**Summary:** Remove an approval

##### Parameters

| Name | Location | Type | Required | Description |
| ---- | -------- | ---- | -------- | ----------- |

| `id` | path | string | Yes | No description |

##### Responses

**200** - Approval removed

Content-Type: `application/json`

---

## Data Models

### ApprovalFindResult

| Property | Type | Required | Description |
| -------- | ---- | -------- | ----------- |

| `data` | array | No | No description |

| `meta` | object | No | No description |

### ApprovalCreateBody

| Property | Type | Required | Description |
| -------- | ---- | -------- | ----------- |

| `approvalRequest` | string | No | No description |

| `approver` | string | No | No description |

| `decision` | string | No | No description |

| `comments` | string | No | No description |

| `signedAt` | string | No | No description |

### ApprovalCreateResult

| Property | Type | Required | Description |
| -------- | ---- | -------- | ----------- |

| `data` | object | No | No description |

### ApprovalGetResult

| Property | Type | Required | Description |
| -------- | ---- | -------- | ----------- |

| `data` | object | No | No description |

### ApprovalUpdateBody

| Property | Type | Required | Description |
| -------- | ---- | -------- | ----------- |

| `decision` | string | No | No description |

| `comments` | string | No | No description |

| `signedAt` | string | No | No description |

### ApprovalUpdateResult

| Property | Type | Required | Description |
| -------- | ---- | -------- | ----------- |

| `data` | object | No | No description |

### ApprovalRemoveResult

| Property | Type | Required | Description |
| -------- | ---- | -------- | ----------- |

| `success` | boolean | No | No description |

### Approval

| Property | Type | Required | Description |
| -------- | ---- | -------- | ----------- |

| `_id` | string | No | No description |

| `approvalRequest` | string | No | No description |

| `approver` | string | No | No description |

| `decision` | string | No | No description |

| `comments` | string | No | No description |

| `signedAt` | string | No | No description |

| `createdAt` | string | No | No description |

| `updatedAt` | string | No | No description |

## TypeScript Usage

See [approvals-examples.md](./approvals-examples.md) for detailed TypeScript usage examples.
