# Monitor Task Campaign Analysis

## API Information

- **API Name**: Monitor Task Campaign Analysis
- **Request Method**: POST
- **API URL**: `open-api/v1/monitor/data`
- **Endpoint Path**: `/v3/api/ad-monitor-task/ad-deep-analysis`
- **Description**:
    - Get ad deep delivery analysis data for monitor task
    - Support deep analysis by day or time slot
    - Provide detailed analysis report for ad delivery
    - Usage Note: `Free`

**Request Headers:**

- Content-Type: application/json
- Accept: application/json

## Request Parameters

### Request Structure

| Parameter | Type   | Description                       | Example                                | Required | Default |
| --------- | ------ | --------------------------------- | -------------------------------------- | -------- | ------- |
| key       | string | User's external API request key   | "your_api_key_here"                   | Yes      |         |
| uri       | string | Endpoint path                     | "/v3/api/ad-monitor-task/ad-deep-analysis" | Yes      |         |
| params    | object | Request parameters object         | See parameter list                     | Yes      |         |

### Request Body Parameters (params object)

| Parameter | Type     | Required | Description                             |
|-----------|----------|----------|-----------------------------------------|
| task_id   | string   | true     | Task ID                                 |
| dimension | integer  | true     | Analysis dimension, 1:by day, 2:by time slot |

### Request Example

```bash
curl -X POST "https://www.pipispy.com/open-api/v1/monitor/data" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
    "key": "your_api_key_here",
    "uri": "/v3/api/ad-monitor-task/ad-deep-analysis",
    "params": {
      "task_id": "68fa2e36789edb5700215e03",
      "dimension": 1
    }
  }'
```

## Response Parameters

### Response Structure

```json
{
  "code": 200,
  "message": "success",
  "data": {},
  "version": "v1",
  "timestamp": null,
  "sign": null,
  "remaining_credits": 9980,
  "consumed_credits": 0,
  "fail": false,
  "success": true
}
```

### Response Field Description

| Field Name | Type    | Description                     |
| ---------- | ------- | ------------------------------- |
| code       | Integer | Response status code, 200 means success |
| message    | String  | Response message                |
| data       | Object  | Response data                   |
| version    | String  | API version                     |
| timestamp  | String  | Response timestamp              |
| sign       | String  | Response signature              |
| remaining_credits | Long    | Current remaining available credits after this request |
| consumed_credits  | Long    | Credits consumed by this request                       |
| success    | Boolean | Request success status          |
| fail       | Boolean | Request failure status          |

### Response Data Information Fields

| Field Name         | Type      | Description                                           |
|--------------------|-----------|-------------------------------------------------------|
| dimension          | integer   | Analysis dimension (1:by day, 2:by time slot)        |
| time1              | string    | Monday/6-9 hour                                       |
| time1_ad_count     | integer   | Ad total count                                        |
| time1_proportion    | integer   | Ad proportion (percentage)                            |
| time2              | string    | Tuesday/9-12 hour                                     |
| time2_ad_count     | integer   | Ad total count                                        |
| time2_proportion    | integer   | Ad proportion (percentage)                            |
| time3              | string    | Wednesday/12-15 hour                                  |
| time3_ad_count     | integer   | Ad total count                                        |
| time3_proportion    | integer   | Ad proportion (percentage)                            |
| time4              | string    | Thursday/15-18 hour                                   |
| time4_ad_count     | integer   | Ad total count                                        |
| time4_proportion    | integer   | Ad proportion (percentage)                            |
| time5              | string    | Friday/18-21 hour                                     |
| time5_ad_count     | integer   | Ad total count                                        |
| time5_proportion    | integer   | Ad proportion (percentage)                            |
| time6              | string    | Saturday/21-23 hour                                   |
| time6_ad_count     | integer   | Ad total count                                        |
| time6_proportion    | integer   | Ad proportion (percentage)                            |
| time7              | string    | Sunday/23-6 hour                                      |
| time7_ad_count     | integer   | Ad total count                                        |
| time7_proportion    | integer   | Ad proportion (percentage)                            |

## Response Example

```json
{
  "code": 200,
  "message": "success",
  "data": {
    "time1_proportion": 21.02,
    "time3_proportion": 18.95,
    "time4_ad_count": 1634,
    "time7_ad_count": 1354,
    "time3_ad_count": 2726,
    "time5_proportion": 14.0,
    "time6_ad_count": 682,
    "time2_ad_count": 2950,
    "time1": "Monday",
    "time2": "Tuesday",
    "time7_proportion": 9.41,
    "time2_proportion": 20.51,
    "time3": "Wednesday",
    "time5_ad_count": 2014,
    "time4": "Thursday",
    "time4_proportion": 11.36,
    "time6_proportion": 4.74,
    "time5": "Friday",
    "time1_ad_count": 3023,
    "dimension": 2,
    "time6": "Saturday",
    "time7": "Sunday"
  },
  "version": "v1",
  "timestamp": null,
  "sign": null,
  "remaining_credits": 9980,
  "consumed_credits": 0,
  "fail": false,
  "success": true
}
```

## Error Codes

| Error Code | Description           |
| ---------- | --------------------- |
| 200        | Success               |
| 400        | Invalid request parameters |
| 500        | Internal server error |
