# Integration Action Log API

API for managing integration action logs

**Version:** 1.0.0

## Overview

### Base URLs

- **Production server**: `https://sv.api.repzo.me`

- **Staging server**: `https://staging.sv.api.repzo.me`

### API Categories

- **Integration Action Log**: Operations related to integration action log management

## Authentication

This API uses the following authentication methods:

- **ApiKeyAuth**

## Endpoints

### `/integration-action-log`

#### GET /integration-action-log

**Summary:** Get all integration action log records

**Description:** Retrieve a list of all integration action log records with optional filtering and pagination

**Tags:** Integration Action Log

##### Parameters

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

| `limit` | query | integer | No | Maximum number of records to return |

| `offset` | query | integer | No | Number of records to skip for pagination |

| `sort` | query | string | No | Field to sort by |

| `order` | query | string | No | Sort order (asc or desc) |

| `filter` | query | string | No | Filter conditions in JSON format |

| `search` | query | string | No | Search term for text fields |

##### Responses

**200** - List of integration action log records retrieved successfully

Content-Type: `application/json`

**400** - Bad request

**401** - Unauthorized

**500** - Internal server error

---

#### POST /integration-action-log

**Summary:** Create a new integration action log record

**Description:** Create a new integration action log record with the provided data

**Tags:** Integration Action Log

##### Request Body

**Content Types:**

- `application/json`

##### Responses

**201** - Integration action log record created successfully

Content-Type: `application/json`

**400** - Bad request

**401** - Unauthorized

**500** - Internal server error

---

### `/integration-action-log/{id}`

#### GET /integration-action-log/{id}

**Summary:** Get integration action log record by ID

**Description:** Retrieve a specific integration action log record by its ID

**Tags:** Integration Action Log

##### Parameters

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

| `id` | path | string | Yes | Integration action log record ID |

##### Responses

**200** - Integration action log record retrieved successfully

Content-Type: `application/json`

**404** - Integration action log record not found

**401** - Unauthorized

**500** - Internal server error

---

#### PUT /integration-action-log/{id}

**Summary:** Update integration action log record

**Description:** Update an existing integration action log record with new data

**Tags:** Integration Action Log

##### Parameters

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

| `id` | path | string | Yes | Integration action log record ID |

##### Request Body

**Content Types:**

- `application/json`

##### Responses

**200** - Integration action log record updated successfully

Content-Type: `application/json`

**400** - Bad request

**404** - Integration action log record not found

**401** - Unauthorized

**500** - Internal server error

---

#### DELETE /integration-action-log/{id}

**Summary:** Delete integration action log record

**Description:** Delete an existing integration action log record

**Tags:** Integration Action Log

##### Parameters

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

| `id` | path | string | Yes | Integration action log record ID |

##### Responses

**200** - Integration action log record deleted successfully

Content-Type: `application/json`

**404** - Integration action log record not found

**401** - Unauthorized

**500** - Internal server error

---

## Data Models

### IntegrationActionLog

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

| `_id` | string | No | Unique identifier for the integration action log record |

| `integrationId` | string | Yes | Integration identifier |

| `actionType` | string | Yes | Type of action performed |

| `entityType` | string | Yes | Type of entity affected |

| `entityId` | string | No | ID of the affected entity |

| `status` | string | Yes | Status of the action |

| `payload` | object | No | Action payload data |

| `response` | object | No | Response data from the action |

| `errorMessage` | string | No | Error message if action failed |

| `retryCount` | integer | No | Number of retry attempts |

| `executionTime` | number | No | Execution time in milliseconds |

| `metadata` | object | No | Additional metadata |

| `createdAt` | string | No | Record creation timestamp |

| `updatedAt` | string | No | Record last update timestamp |

### IntegrationActionLogInput

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

| `integrationId` | string | Yes | Integration identifier |

| `actionType` | string | Yes | Type of action performed |

| `entityType` | string | Yes | Type of entity affected |

| `entityId` | string | No | ID of the affected entity |

| `status` | string | Yes | Status of the action |

| `payload` | object | No | Action payload data |

| `response` | object | No | Response data from the action |

| `errorMessage` | string | No | Error message if action failed |

| `retryCount` | integer | No | Number of retry attempts |

| `executionTime` | number | No | Execution time in milliseconds |

| `metadata` | object | No | Additional metadata |

## TypeScript Usage

See [integration-action-log-examples.md](./integration-action-log-examples.md) for detailed TypeScript usage examples.
