> ## Documentation Index
> Fetch the complete documentation index at: https://docs.reportify.cn/llms.txt
> Use this file to discover all available pages before exploring further.

# List Followings

> List all followings (companies/topics/channels) unified + paginated; filter by follow_type/follow_sub_type.

## 说明

**URL**: `/v1/followings`
**方法**: `GET`\
**描述**: 统一关注列表，返回当前用户关注的公司、话题、渠道等，支持分页并可按 `follow_type` / `follow_sub_type` 过滤。

### 请求参数

| 参数名               | 类型  | 必填 | 描述                          |
| ----------------- | --- | -- | --------------------------- |
| follow\_type      | int | 否  | 关注类型：`1` 公司，`2` 话题，`3` 渠道。  |
| follow\_sub\_type | int | 否  | 关注子类型：`1` 机构，`2` 媒体，`3` 社交。 |
| page\_num         | int | 否  | 页码，从 1 开始，默认 `1`。           |
| page\_size        | int | 否  | 每页数量，默认 `20`。               |

### 响应参数

| 参数名                 | 类型    | 描述                          |
| ------------------- | ----- | --------------------------- |
| total\_count        | int   | 关注总数。                       |
| total\_page         | int   | 总页数。                        |
| page\_num           | int   | 当前页码。                       |
| page\_size          | int   | 每页数量。                       |
| items               | array | 关注列表。                       |
|   follow\_id        | str   | 关注 ID。                      |
|   follow\_type      | int   | 关注类型：`1` 公司，`2` 话题，`3` 渠道。  |
|   follow\_sub\_type | int   | 关注子类型：`1` 机构，`2` 媒体，`3` 社交。 |
|   follow\_value     | str   | 关注对象的取值（如股票代码、话题内容等）。       |
|   name              | str   | 名称。                         |
|   logo              | str   | 图标 URL。                     |
|   title             | str   | 标题。                         |
|   followed\_at      | int   | 关注时间戳（毫秒）。                  |

### 请求示例

**cURL**

```bash theme={null}
curl -X GET "https://api.reportify.cn/v1/followings?follow_type=1&page_num=1&page_size=20" \
-H "Authorization: Bearer YOUR_API_KEY"
```

**Python**

```python theme={null}
import requests

url = "https://api.reportify.cn/v1/followings"
headers = {
    "Authorization": "Bearer YOUR_API_KEY"
}

params = {
    "follow_type": 1,
    "page_num": 1,
    "page_size": 20
}

response = requests.get(url, headers=headers, params=params)
print(response.json())
```

### 响应示例

```json theme={null}
{
  "total_count": 2,
  "total_page": 1,
  "page_num": 1,
  "page_size": 20,
  "items": [
    {
      "follow_id": "1001",
      "follow_type": 1,
      "follow_sub_type": 0,
      "follow_value": "00700",
      "name": "腾讯控股",
      "logo": "https://static.reportify.cn/logo/00700.png",
      "title": "",
      "followed_at": 1720000000000
    },
    {
      "follow_id": "2002",
      "follow_type": 2,
      "follow_sub_type": 0,
      "follow_value": "AI 芯片行业趋势",
      "name": "AI 芯片行业趋势",
      "logo": "",
      "title": "AI 芯片行业趋势",
      "followed_at": 1720000100000
    }
  ]
}
```

### 错误响应

| 状态码 | 描述        |
| --- | --------- |
| 422 | 请求参数验证失败。 |


## OpenAPI

````yaml GET /v1/followings
openapi: 3.1.0
info:
  title: Reportify API
  version: 1.0.0
  description: API documentation for Reportify's document management and search services.
servers:
  - url: https://api.reportify.cn
    description: Production server
security:
  - BearerAuth: []
paths:
  /v1/followings:
    get:
      tags:
        - openapi-followings
      summary: List Followings
      description: >-
        List all followings (companies/topics/channels) unified + paginated;
        filter by follow_type/follow_sub_type.
      operationId: list_followings_reportify_api_v1_followings_get
      parameters:
        - description: 1 company, 2 topic, 3 channel
          required: false
          schema:
            type: integer
            title: Follow Type
            description: 1 company, 2 topic, 3 channel
          name: follow_type
          in: query
        - description: 1 institution, 2 media, 3 social
          required: false
          schema:
            type: integer
            title: Follow Sub Type
            description: 1 institution, 2 media, 3 social
          name: follow_sub_type
          in: query
        - required: false
          schema:
            type: integer
            title: Page Num
            default: 1
          name: page_num
          in: query
        - required: false
          schema:
            type: integer
            title: Page Size
            default: 20
          name: page_size
          in: query
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OAIFollowingsResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - BearerAuth: []
components:
  schemas:
    OAIFollowingsResponse:
      properties:
        total_count:
          type: integer
          title: Total Count
          default: 0
        total_page:
          type: integer
          title: Total Page
          default: 0
        page_num:
          type: integer
          title: Page Num
          default: 1
        page_size:
          type: integer
          title: Page Size
          default: 20
        items:
          type: array
          items:
            $ref: '#/components/schemas/OAIFollowingItem'
          title: Items
      type: object
      title: OAIFollowingsResponse
      description: Paginated list of followings
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    OAIFollowingItem:
      properties:
        follow_id:
          type: string
          title: Follow Id
        follow_type:
          type: integer
          title: Follow Type
          description: 1 company, 2 topic, 3 channel
        follow_sub_type:
          type: integer
          title: Follow Sub Type
          description: 1 institution, 2 media, 3 social
        follow_value:
          type: string
          title: Follow Value
        name:
          type: string
          title: Name
        logo:
          type: string
          title: Logo
        title:
          type: string
          title: Title
        followed_at:
          type: integer
          title: Followed At
      type: object
      required:
        - follow_id
        - follow_type
      title: OAIFollowingItem
      description: A unified following item (company/topic/channel)
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Enter your Bearer token

````