# App 开发者列表接口

## 接口信息

- **接口名称**: 获取 App 开发者列表
- **请求方法**: POST
- **接口地址**: `/open-api/v1/data`
- **接口路径**: `/v3/api/open/app-dev/list`
- **接口描述**: 根据过滤条件获取 App 开发者列表信息，支持分页
- **价格说明**: 获取一条数据结果消耗1 credit

**请求头:**

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

## 请求参数

### 请求结构

| 参数名 | 类型   | 描述                        | 示例                        | 必填 | 默认值 |
| ------ | ------ | --------------------------- | --------------------------- | ---- | ------ |
| key    | string | 用户申请的外部 api 请求 key | "your_api_key_here"         | 是   |        |
| uri    | string | 接口路径                    | "/v3/api/open/app-dev/list" | 是   |        |
| params | object | 接口入参对象                | 见参数列表                  | 是   |        |

### 参数列表 (params 对象)

#### 必填参数

| 参数名       | 类型    | 描述                                                                                        | 示例       | 必填 | 默认值 |
| ------------ | ------- |-------------------------------------------------------------------------------------------| ---------- | ---- | ------ |
| current_page | integer | 当前页码（必填）                                                                                  | 1          | 是   |        |
| page_size    | integer | 每页数量（必填）                                                                                  | 20         | 是   |        |
| plat_type    | integer | 平台类型（必填）：0-全部，1-TikTok，2-Facebook                                                         | 1          | 是   |        |
| sort         | integer | 排序字段（必填）：0-总广告数，1-广告播放，2-总点赞数，4-总投放天数，7-总开始时间，8-总结束时间，9-App 数量，10-总安装数，11-月安装数，12-月收入额（USD） | 1          | 是   |        |
| time         | long    | 时间范围（必填）：0-近7天，1-近30天，2-近90天，4-昨天，3-全部时间                                                   | 1640995200 | 是   |        |

#### 可选参数（按字母顺序）

| 参数名                            | 类型    | 描述                                                                   | 示例                 | 必填 | 默认值 |
| --------------------------------- | ------- |----------------------------------------------------------------------| -------------------- | ---- | ------ |
| app_category                      | array   | App 分类列表，支持格式：["id6003", "id6023"] 或 ["6003", "6023"]，系统会自动处理"id"前缀  | ["id6003", "id6023"] | 否   |        |
| app_comment_count_max             | long    | App 评论数最大值                                                           | 100000               | 否   |        |
| app_comment_count_min             | long    | App 评论数最小值                                                           | 1000                 | 否   |        |
| app_count_max                     | long    | App 数量最大值                                                            | 100                  | 否   |        |
| app_count_min                     | long    | App 数量最小值                                                            | 1                    | 否   |        |
| app_download_count_max            | long    | 总安装数，App 下载数最大值                                                      | 1000000              | 否   |        |
| app_download_count_min            | long    | 总安装数，App 下载数最小值                                                           | 1000                 | 否   |        |
| app_system                        | string  | App 系统：ios-苹果，android-安卓                                             | "ios"                | 否   |        |
| app_type                          | string  | App 类型：app-应用，game-游戏                                                | "app"                | 否   |        |
| cpm_max                           | double  | CPM 最大值                                                              | 10.0                 | 否   |        |
| cpm_min                           | double  | CPM 最小值                                                              | 1.0                  | 否   |        |
| digg_count_max                    | long    | 点赞数最大值                                                               | 100000               | 否   |        |
| digg_count_min                    | long    | 点赞数最小值                                                               | 1000                 | 否   |        |
| digg_rate_max                     | double  | 点赞率最大值（范围：0.0-1.0）                                                   | 1.0                  | 否   |        |
| digg_rate_min                     | double  | 点赞率最小值（范围：0.0-1.0）                                                   | 0.1                  | 否   |        |
| end_time_end                      | long    | 结束时间结束（时间戳，对应最近发现时间范围）                                               | 1643673600           | 否   |        |
| end_time_start                    | long    | 结束时间开始（时间戳，对应最近发现时间范围）                                               | 1640995200           | 否   |        |
| goods_source_max                  | long    | 商品来源最大值（注意：此字段实际对应数据量字段）                                             | 1000                 | 否   |        |
| goods_source_min                  | long    | 商品来源最小值（注意：此字段实际对应数据量字段）                                             | 10                   | 否   |        |
| keyword                           | string  | 搜索关键词，根据 searchType 的不同，搜索方式不同：1-同时搜索开发者名称和应用名称，2-仅搜索应用名称，3-仅搜索开发者名称 | "MercadoLibre"       | 否   |        |
| last_month_app_download_count_max | long    | 月安装数, 上个月 App 下载数最大值                                                 | 50000                | 否   |        |
| last_month_app_download_count_min | long    | 月安装数, 上个月 App 下载数最小值                                                 | 1000                 | 否   |        |
| last_month_revenue_max            | long    | 月收入额(USD), 上个月收入最大值（注意：系统会自动乘以 100 进行处理）                             | 100000               | 否   |        |
| last_month_revenue_min            | long    | 月收入额(USD), 上个月收入最小值（注意：系统会自动乘以 100 进行处理）                             | 1000                 | 否   |        |
| play_count_max                    | long    | 播放数最大值                                                               | 10000000             | 否   |        |
| play_count_min                    | long    | 播放数最小值                                                               | 1000000              | 否   |        |
| popular_person_count_max          | long    | 红人数量最大值                                                              | 100                  | 否   |        |
| popular_person_count_min          | long    | 红人数量最小值                                                              | 1                    | 否   |        |
| put_day_max                       | long    | 投放天数最大值                                                              | 30                   | 否   |        |
| put_day_min                       | long    | 投放天数最小值                                                              | 1                    | 否   |        |
| region                            | array   | 国家/地区，支持多个地区代码，例如：["BR", "TW", "MX"]                                 | ["BR", "TW", "MX"]   | 否   |        |
| search_type                       | integer | 搜索类型：1-关键词（同时匹配APP名称、开发者名称），2-APP名称，3-开发者名称                          | 1                    | 否   | 1      |
| sort_type                         | string  | 排序方式：asc-升序，desc-降序                                                  | "desc"               | 否   | "desc" |
| start_time_end                    | long    | 广告开始时间结束（时间戳，对应首次发现时间范围）                                             | 1643673600           | 否   |        |
| start_time_start                  | long    | 广告开始时间开始（时间戳，对应首次发现时间范围）                                             | 1640995200           | 否   |        |

### 请求示例

```bash
curl -X POST "https://www.pipispy.com/open-api/v1/data" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
    "key": "your_api_key_here",
    "uri": "/v3/api/open/app-dev/list",
    "params": {
      "current_page": 1,
      "page_size": 20,
      "plat_type": 1,
      "sort": 1,
      "time": 1640995200,
      "keyword": "MercadoLibre",
      "region": ["BR", "TW", "MX"],
      "app_type": "app",
      "app_system": "ios"
    }
  }'
```

## 响应参数

### 响应体结构

```json
{
  "code": 200,
  "message": "success",
  "data": {
    "data": [
      // App开发者列表项
    ],
    "page": {
      // 分页信息
    }
  }
}
```

### 响应字段说明

#### 标准响应字段

| 字段名 | 类型 | 描述 |
| ------ | ---- | ---- |
| remaining_credits | Long    | 当前请求后的剩余可用积分 |
| consumed_credits  | Long    | 本次请求消耗的积分 |

##### 主要响应字段

| 字段名   | 类型          | 描述           |
| -------- | ------------- | -------------- |
| **data** | array[object] | App 开发者列表 |
| **page** | object        | 分页信息       |

##### 数据项字段

| 字段名                        | 类型    | 描述                                         |
| ----------------------------- | ------- | -------------------------------------------- |
| id                            | string  | App 开发者唯一标识 ID                        |
| name                          | string  | App 开发者名称                               |
| icon                          | string  | App 开发者图标 URL                           |
| ad_platform_list              | array   | 广告平台列表（例如：["tiktok", "facebook"]） |
| app_system                    | array   | App 系统列表（例如：["ios", "android"]）     |
| app_store                     | array   | 应用商店列表（例如：["apple", "google"]）    |
| app_count                     | long    | App 数量                                     |
| app_download_count            | long    | 总 App 下载数                                |
| app_comment_count             | long    | 总 App 评论数                                |
| rate_score                    | double  | App 评分                                     |
| rate_count                    | long    | 评分数量                                     |
| revenue                       | object  | 收入信息对象                                 |
| found_time                    | long    | 首次发现时间 (时间戳)                        |
| last_found_time               | long    | 最近发现时间 (时间戳)                        |
| last_month_app_download_count | long    | 上个月 App 下载数                            |
| region                        | array   | 目标地区列表                                 |
| is_collection                 | boolean | 是否已收藏                                   |
| goods_source_count            | long    | 商品来源数量（数据量）                       |
| popular_person_count          | long    | 红人数量                                     |
| put_day_change                | long    | 投放天数变化                                 |
| play_change                   | long    | 播放数变化                                   |
| digg_change                   | long    | 点赞数变化                                   |
| latest_data                   | array   | 最新数据数组，包含平台、URL 和数量信息       |

##### 收入对象字段

| 字段名   | 类型   | 描述                       |
| -------- | ------ | -------------------------- |
| unit     | string | 计量单位（例如："cent"）   |
| currency | string | 货币代码（例如："USD"）    |
| type     | string | 值类型（例如："currency"） |
| value    | long   | 收入值                     |

##### 最新数据对象字段

| 字段名   | 类型    | 描述       |
| -------- | ------- | ---------- |
| platform | integer | 平台标识符 |
| url      | string  | 图片 URL   |
| count    | long    | 数量值     |

##### 分页对象字段

| 字段名       | 类型    | 描述         |
| ------------ | ------- | ------------ |
| total_count  | number  | 总数量       |
| page_count   | number  | 总页数       |
| current_page | number  | 当前页码     |
| page_size    | number  | 每页数据量   |
| is_next      | boolean | 是否有下一页 |

### 响应示例

```json
{
  "code": 200,
  "message": "success",
  "data": {
    "data": [
      {
        "id": "1754094607",
        "name": "NETSTORY PTE. LTD.",
        "icon": "https://cdn-app.pipispy.com/801cee19685e5bef313e17e836c2df70.jpg",
        "ad_platform_list": ["tiktok"],
        "app_system": ["ios"],
        "app_store": ["apple"],
        "app_count": 1,
        "app_download_count": 0,
        "app_comment_count": 61883,
        "rate_score": 4.6,
        "rate_count": 61883,
        "revenue": {
          "unit": "cent",
          "currency": "USD",
          "type": "currency",
          "value": 1100000000
        },
        "found_time": 1751558400,
        "last_found_time": 1752076800,
        "last_month_app_download_count": 0,
        "region": [
          "DE",
          "TW",
          "RU",
          "PT",
          "JP",
          "FR",
          "HU",
          "SA",
          "BR",
          "SC",
          "SG",
          "ID",
          "GB",
          "CA",
          "US",
          "AE",
          "CH",
          "KR",
          "MX",
          "IT",
          "MY",
          "ES",
          "AT",
          "AU",
          "TH",
          "CZ",
          "VN",
          "PH",
          "TR",
          "NL"
        ],
        "is_collection": false,
        "goods_source_count": 4098,
        "popular_person_count": 1,
        "put_day_change": 7,
        "play_change": 3062405,
        "digg_change": 34776,
        "latest_data": [
          {
            "platform": 1,
            "url": "https://cdn-video.pipispy.com/cover_ada1b5dae0c90e5c4849.jpg",
            "count": 855
          },
          {
            "platform": 1,
            "url": "https://cdn-video.pipispy.com/cover_52a1eb83b3133814a76b.jpg",
            "count": 1122
          },
          {
            "platform": 1,
            "url": "https://cdn-video.pipispy.com/cover_fc6b7355ef13c217a26c.jpg",
            "count": 973
          }
        ]
      }
    ],
    "page": {
      "total_count": 10000,
      "page_count": 500,
      "current_page": 1,
      "page_size": 20,
      "is_next": true
    }
  },
  "version": "v1",
  "timestamp": null,
  "sign": null,
  "remaining_credits": 9980,
  "consumed_credits": 20,
  "success": true,
  "fail": false
}
```

## 错误码说明

| 错误码 | 描述                  |
| ------ | --------------------- |
| 200    | 成功                  |
| 400    | 请求参数错误          |
| 401    | 未授权 - API 密钥无效 |
| 500    | 服务器内部错误        |
