709 lines
18 KiB
Markdown
709 lines
18 KiB
Markdown
![]() |
# 模板模块 API 文档
|
|||
|
|
|||
|
## 简介
|
|||
|
|
|||
|
模板模块(template)提供了一系列API,用于管理和使用各种消息、内容模板,支持按分类、平台、任务类型等维度管理模板。所有接口均需要身份验证,使用CustomTokenAuthentication进行认证。
|
|||
|
|
|||
|
本文档详细说明了模板模块中所有接口的使用方法、请求参数和响应结果。
|
|||
|
|
|||
|
## 目录
|
|||
|
|
|||
|
- [模板管理](#模板管理)
|
|||
|
- [模板分类管理](#模板分类管理)
|
|||
|
|
|||
|
## 模板管理
|
|||
|
|
|||
|
模板模块使用REST风格的API,通过TemplateViewSet提供了以下功能:
|
|||
|
|
|||
|
### 1. 获取模板列表
|
|||
|
|
|||
|
**接口说明**:获取所有模板的列表
|
|||
|
|
|||
|
**请求地址**:`GET /template/`
|
|||
|
|
|||
|
**查询参数**:
|
|||
|
|
|||
|
| 参数名 | 类型 | 必填 | 说明 |
|
|||
|
|-------|------|-----|------|
|
|||
|
| page | int | 否 | 分页页码,默认1 |
|
|||
|
| page_size | int | 否 | 每页显示数量,默认10,最大100 |
|
|||
|
| title | string | 否 | 按标题内容过滤(模糊匹配) |
|
|||
|
| content | string | 否 | 按正文内容过滤(模糊匹配) |
|
|||
|
| mission | string | 否 | 按任务类型过滤 |
|
|||
|
| platform | string | 否 | 按平台过滤 |
|
|||
|
| collaboration_type | string | 否 | 按合作模式过滤 |
|
|||
|
| service | string | 否 | 按服务类型过滤 |
|
|||
|
| category | int | 否 | 按分类ID过滤 |
|
|||
|
| category_name | string | 否 | 按分类名称过滤(模糊匹配) |
|
|||
|
| is_public | boolean | 否 | 按是否公开过滤 |
|
|||
|
| created_after | datetime | 否 | 按创建日期过滤(早于指定日期) |
|
|||
|
| created_before | datetime | 否 | 按创建日期过滤(晚于指定日期) |
|
|||
|
| search | string | 否 | 搜索标题和内容 |
|
|||
|
| ordering | string | 否 | 排序字段,例如:-created_at表示按创建时间降序排序 |
|
|||
|
|
|||
|
**响应结果**:
|
|||
|
|
|||
|
```json
|
|||
|
{
|
|||
|
"code": 200,
|
|||
|
"message": "获取模板列表成功",
|
|||
|
"data": {
|
|||
|
"count": 100,
|
|||
|
"next": "http://example.com/template/?page=2",
|
|||
|
"previous": null,
|
|||
|
"results": [
|
|||
|
{
|
|||
|
"id": 1,
|
|||
|
"title": "模板标题",
|
|||
|
"preview": "模板内容预览...",
|
|||
|
"category_name": "分类名称",
|
|||
|
"mission": "initial_contact",
|
|||
|
"mission_display": "初步联系",
|
|||
|
"platform": "tiktok",
|
|||
|
"platform_display": "TikTok",
|
|||
|
"service": "text",
|
|||
|
"service_display": "文本",
|
|||
|
"collaboration_type": "paid_promotion",
|
|||
|
"collaboration_type_display": "付费推广",
|
|||
|
"is_public": true,
|
|||
|
"created_at": "2023-01-01T00:00:00Z",
|
|||
|
"updated_at": "2023-01-01T00:00:00Z"
|
|||
|
}
|
|||
|
],
|
|||
|
"total_pages": 10,
|
|||
|
"current_page": 1
|
|||
|
}
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
### 2. 获取模板详情
|
|||
|
|
|||
|
**接口说明**:获取单个模板的详细信息
|
|||
|
|
|||
|
**请求地址**:`GET /template/{id}/`
|
|||
|
|
|||
|
**路径参数**:
|
|||
|
|
|||
|
| 参数名 | 类型 | 必填 | 说明 |
|
|||
|
|-------|------|-----|------|
|
|||
|
| id | int | 是 | 模板ID |
|
|||
|
|
|||
|
**响应结果**:
|
|||
|
|
|||
|
```json
|
|||
|
{
|
|||
|
"code": 200,
|
|||
|
"message": "获取模板详情成功",
|
|||
|
"data": {
|
|||
|
"id": 1,
|
|||
|
"title": "模板标题",
|
|||
|
"content": "模板完整内容...",
|
|||
|
"preview": "模板内容预览...",
|
|||
|
"category": {
|
|||
|
"id": 1,
|
|||
|
"name": "分类名称",
|
|||
|
"description": "分类描述",
|
|||
|
"created_at": "2023-01-01T00:00:00Z",
|
|||
|
"updated_at": "2023-01-01T00:00:00Z"
|
|||
|
},
|
|||
|
"mission": "initial_contact",
|
|||
|
"mission_display": "初步联系",
|
|||
|
"platform": "tiktok",
|
|||
|
"platform_display": "TikTok",
|
|||
|
"service": "text",
|
|||
|
"service_display": "文本",
|
|||
|
"collaboration_type": "paid_promotion",
|
|||
|
"collaboration_type_display": "付费推广",
|
|||
|
"is_public": true,
|
|||
|
"created_at": "2023-01-01T00:00:00Z",
|
|||
|
"updated_at": "2023-01-01T00:00:00Z"
|
|||
|
}
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
### 3. 创建模板
|
|||
|
|
|||
|
**接口说明**:创建新的模板
|
|||
|
|
|||
|
**请求地址**:`POST /template/`
|
|||
|
|
|||
|
**请求参数**:
|
|||
|
|
|||
|
```json
|
|||
|
{
|
|||
|
"title": "模板标题",
|
|||
|
"content": "模板完整内容...",
|
|||
|
"category": 1,
|
|||
|
"mission": "initial_contact",
|
|||
|
"platform": "tiktok",
|
|||
|
"service": "text",
|
|||
|
"collaboration_type": "paid_promotion",
|
|||
|
"is_public": true
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
**参数说明**:
|
|||
|
|
|||
|
| 参数名 | 类型 | 必填 | 说明 |
|
|||
|
|-------|------|-----|------|
|
|||
|
| title | string | 是 | 模板标题 |
|
|||
|
| content | string | 是 | 模板内容 |
|
|||
|
| category | int | 是 | 分类ID |
|
|||
|
| mission | string | 否 | 任务类型,默认"initial_contact",可选值: initial_contact(初步联系), follow_up(跟进), negotiation(谈判), closing(成交), other(其他) |
|
|||
|
| platform | string | 否 | 平台,默认"tiktok",可选值: tiktok, instagram, youtube, facebook, twitter, other |
|
|||
|
| service | string | 否 | 服务类型,默认"text",可选值: voice(声优-交谈), text(文本), video(视频), image(图片), other(其他) |
|
|||
|
| collaboration_type | string | 否 | 合作模式,默认"paid_promotion",可选值: paid_promotion(付费推广), affiliate(联盟营销), sponsored_content(赞助内容), brand_ambassador(品牌大使), other(其他) |
|
|||
|
| is_public | boolean | 否 | 是否公开,默认true |
|
|||
|
|
|||
|
**响应结果**:
|
|||
|
|
|||
|
```json
|
|||
|
{
|
|||
|
"code": 201,
|
|||
|
"message": "模板创建成功",
|
|||
|
"data": {
|
|||
|
"id": 1,
|
|||
|
"title": "模板标题",
|
|||
|
"content": "模板完整内容...",
|
|||
|
"category": 1,
|
|||
|
"mission": "initial_contact",
|
|||
|
"platform": "tiktok",
|
|||
|
"service": "text",
|
|||
|
"collaboration_type": "paid_promotion",
|
|||
|
"is_public": true
|
|||
|
}
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
### 4. 更新模板
|
|||
|
|
|||
|
**接口说明**:更新已有的模板
|
|||
|
|
|||
|
**请求地址**:`PUT /template/{id}/` 或 `PATCH /template/{id}/`
|
|||
|
|
|||
|
**路径参数**:
|
|||
|
|
|||
|
| 参数名 | 类型 | 必填 | 说明 |
|
|||
|
|-------|------|-----|------|
|
|||
|
| id | int | 是 | 模板ID |
|
|||
|
|
|||
|
**请求参数**:
|
|||
|
- PUT请求需要提供完整的模板信息
|
|||
|
- PATCH请求可以只提供需要更新的字段
|
|||
|
|
|||
|
```json
|
|||
|
{
|
|||
|
"title": "更新后的模板标题",
|
|||
|
"content": "更新后的模板内容...",
|
|||
|
"category": 2,
|
|||
|
"mission": "follow_up",
|
|||
|
"platform": "instagram",
|
|||
|
"service": "voice",
|
|||
|
"collaboration_type": "affiliate",
|
|||
|
"is_public": false
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
**响应结果**:
|
|||
|
|
|||
|
```json
|
|||
|
{
|
|||
|
"code": 200,
|
|||
|
"message": "模板更新成功",
|
|||
|
"data": {
|
|||
|
"id": 1,
|
|||
|
"title": "更新后的模板标题",
|
|||
|
"content": "更新后的模板内容...",
|
|||
|
"category": 2,
|
|||
|
"mission": "follow_up",
|
|||
|
"platform": "instagram",
|
|||
|
"service": "voice",
|
|||
|
"collaboration_type": "affiliate",
|
|||
|
"is_public": false
|
|||
|
}
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
### 5. 删除模板
|
|||
|
|
|||
|
**接口说明**:删除指定的模板
|
|||
|
|
|||
|
**请求地址**:`DELETE /template/{id}/`
|
|||
|
|
|||
|
**路径参数**:
|
|||
|
|
|||
|
| 参数名 | 类型 | 必填 | 说明 |
|
|||
|
|-------|------|-----|------|
|
|||
|
| id | int | 是 | 模板ID |
|
|||
|
|
|||
|
**响应结果**:
|
|||
|
|
|||
|
```json
|
|||
|
{
|
|||
|
"code": 200,
|
|||
|
"message": "模板删除成功",
|
|||
|
"data": null
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
### 6. 获取我的模板
|
|||
|
|
|||
|
**接口说明**:获取当前用户有权限查看的所有模板
|
|||
|
|
|||
|
**请求地址**:`GET /template/mine/`
|
|||
|
|
|||
|
**查询参数**:
|
|||
|
|
|||
|
| 参数名 | 类型 | 必填 | 说明 |
|
|||
|
|-------|------|-----|------|
|
|||
|
| page | int | 否 | 分页页码,默认1 |
|
|||
|
| page_size | int | 否 | 每页显示数量,默认10,最大100 |
|
|||
|
|
|||
|
**响应结果**:
|
|||
|
|
|||
|
```json
|
|||
|
{
|
|||
|
"code": 200,
|
|||
|
"message": "获取模板成功",
|
|||
|
"data": {
|
|||
|
"count": 50,
|
|||
|
"next": "http://example.com/template/mine/?page=2",
|
|||
|
"previous": null,
|
|||
|
"results": [
|
|||
|
{
|
|||
|
"id": 1,
|
|||
|
"title": "模板标题",
|
|||
|
"preview": "模板内容预览...",
|
|||
|
"category_name": "分类名称",
|
|||
|
"mission": "initial_contact",
|
|||
|
"mission_display": "初步联系",
|
|||
|
"platform": "tiktok",
|
|||
|
"platform_display": "TikTok",
|
|||
|
"service": "text",
|
|||
|
"service_display": "文本",
|
|||
|
"collaboration_type": "paid_promotion",
|
|||
|
"collaboration_type_display": "付费推广",
|
|||
|
"is_public": true,
|
|||
|
"created_at": "2023-01-01T00:00:00Z",
|
|||
|
"updated_at": "2023-01-01T00:00:00Z"
|
|||
|
}
|
|||
|
],
|
|||
|
"total_pages": 5,
|
|||
|
"current_page": 1
|
|||
|
}
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
### 7. 获取公开模板
|
|||
|
|
|||
|
**接口说明**:获取所有公开的模板
|
|||
|
|
|||
|
**请求地址**:`GET /template/public/`
|
|||
|
|
|||
|
**查询参数**:
|
|||
|
|
|||
|
| 参数名 | 类型 | 必填 | 说明 |
|
|||
|
|-------|------|-----|------|
|
|||
|
| page | int | 否 | 分页页码,默认1 |
|
|||
|
| page_size | int | 否 | 每页显示数量,默认10,最大100 |
|
|||
|
|
|||
|
**响应结果**:
|
|||
|
|
|||
|
```json
|
|||
|
{
|
|||
|
"code": 200,
|
|||
|
"message": "获取公开模板成功",
|
|||
|
"data": {
|
|||
|
"count": 30,
|
|||
|
"next": "http://example.com/template/public/?page=2",
|
|||
|
"previous": null,
|
|||
|
"results": [
|
|||
|
{
|
|||
|
"id": 1,
|
|||
|
"title": "模板标题",
|
|||
|
"preview": "模板内容预览...",
|
|||
|
"category_name": "分类名称",
|
|||
|
"mission": "initial_contact",
|
|||
|
"mission_display": "初步联系",
|
|||
|
"platform": "tiktok",
|
|||
|
"platform_display": "TikTok",
|
|||
|
"service": "text",
|
|||
|
"service_display": "文本",
|
|||
|
"collaboration_type": "paid_promotion",
|
|||
|
"collaboration_type_display": "付费推广",
|
|||
|
"is_public": true,
|
|||
|
"created_at": "2023-01-01T00:00:00Z",
|
|||
|
"updated_at": "2023-01-01T00:00:00Z"
|
|||
|
}
|
|||
|
],
|
|||
|
"total_pages": 3,
|
|||
|
"current_page": 1
|
|||
|
}
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
### 8. 按任务类型获取模板
|
|||
|
|
|||
|
**接口说明**:按任务类型筛选模板
|
|||
|
|
|||
|
**请求地址**:`GET /template/by_mission/`
|
|||
|
|
|||
|
**查询参数**:
|
|||
|
|
|||
|
| 参数名 | 类型 | 必填 | 说明 |
|
|||
|
|-------|------|-----|------|
|
|||
|
| mission | string | 是 | 任务类型,可选值: initial_contact(初步联系), follow_up(跟进), negotiation(谈判), closing(成交), other(其他) |
|
|||
|
| page | int | 否 | 分页页码,默认1 |
|
|||
|
| page_size | int | 否 | 每页显示数量,默认10,最大100 |
|
|||
|
|
|||
|
**响应结果**:
|
|||
|
|
|||
|
```json
|
|||
|
{
|
|||
|
"code": 200,
|
|||
|
"message": "按任务类型获取模板成功",
|
|||
|
"data": {
|
|||
|
"count": 20,
|
|||
|
"next": "http://example.com/template/by_mission/?mission=initial_contact&page=2",
|
|||
|
"previous": null,
|
|||
|
"results": [
|
|||
|
{
|
|||
|
"id": 1,
|
|||
|
"title": "初步联系模板",
|
|||
|
"preview": "模板内容预览...",
|
|||
|
"category_name": "分类名称",
|
|||
|
"mission": "initial_contact",
|
|||
|
"mission_display": "初步联系",
|
|||
|
"platform": "tiktok",
|
|||
|
"platform_display": "TikTok",
|
|||
|
"service": "text",
|
|||
|
"service_display": "文本",
|
|||
|
"collaboration_type": "paid_promotion",
|
|||
|
"collaboration_type_display": "付费推广",
|
|||
|
"is_public": true,
|
|||
|
"created_at": "2023-01-01T00:00:00Z",
|
|||
|
"updated_at": "2023-01-01T00:00:00Z"
|
|||
|
}
|
|||
|
],
|
|||
|
"total_pages": 2,
|
|||
|
"current_page": 1
|
|||
|
}
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
### 9. 按平台获取模板
|
|||
|
|
|||
|
**接口说明**:按平台筛选模板
|
|||
|
|
|||
|
**请求地址**:`GET /template/by_platform/`
|
|||
|
|
|||
|
**查询参数**:
|
|||
|
|
|||
|
| 参数名 | 类型 | 必填 | 说明 |
|
|||
|
|-------|------|-----|------|
|
|||
|
| platform | string | 是 | 平台,可选值: tiktok, instagram, youtube, facebook, twitter, other |
|
|||
|
| page | int | 否 | 分页页码,默认1 |
|
|||
|
| page_size | int | 否 | 每页显示数量,默认10,最大100 |
|
|||
|
|
|||
|
**响应结果**:
|
|||
|
|
|||
|
```json
|
|||
|
{
|
|||
|
"code": 200,
|
|||
|
"message": "按平台获取模板成功",
|
|||
|
"data": {
|
|||
|
"count": 15,
|
|||
|
"next": "http://example.com/template/by_platform/?platform=tiktok&page=2",
|
|||
|
"previous": null,
|
|||
|
"results": [
|
|||
|
{
|
|||
|
"id": 1,
|
|||
|
"title": "TikTok模板",
|
|||
|
"preview": "模板内容预览...",
|
|||
|
"category_name": "分类名称",
|
|||
|
"mission": "initial_contact",
|
|||
|
"mission_display": "初步联系",
|
|||
|
"platform": "tiktok",
|
|||
|
"platform_display": "TikTok",
|
|||
|
"service": "text",
|
|||
|
"service_display": "文本",
|
|||
|
"collaboration_type": "paid_promotion",
|
|||
|
"collaboration_type_display": "付费推广",
|
|||
|
"is_public": true,
|
|||
|
"created_at": "2023-01-01T00:00:00Z",
|
|||
|
"updated_at": "2023-01-01T00:00:00Z"
|
|||
|
}
|
|||
|
],
|
|||
|
"total_pages": 2,
|
|||
|
"current_page": 1
|
|||
|
}
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
### 10. 按合作方式获取模板
|
|||
|
|
|||
|
**接口说明**:按合作方式筛选模板
|
|||
|
|
|||
|
**请求地址**:`GET /template/by_collaboration/`
|
|||
|
|
|||
|
**查询参数**:
|
|||
|
|
|||
|
| 参数名 | 类型 | 必填 | 说明 |
|
|||
|
|-------|------|-----|------|
|
|||
|
| collaboration | string | 是 | 合作模式,可选值: paid_promotion(付费推广), affiliate(联盟营销), sponsored_content(赞助内容), brand_ambassador(品牌大使), other(其他) |
|
|||
|
| page | int | 否 | 分页页码,默认1 |
|
|||
|
| page_size | int | 否 | 每页显示数量,默认10,最大100 |
|
|||
|
|
|||
|
**响应结果**:
|
|||
|
|
|||
|
```json
|
|||
|
{
|
|||
|
"code": 200,
|
|||
|
"message": "按合作方式获取模板成功",
|
|||
|
"data": {
|
|||
|
"count": 25,
|
|||
|
"next": "http://example.com/template/by_collaboration/?collaboration=paid_promotion&page=2",
|
|||
|
"previous": null,
|
|||
|
"results": [
|
|||
|
{
|
|||
|
"id": 1,
|
|||
|
"title": "付费推广模板",
|
|||
|
"preview": "模板内容预览...",
|
|||
|
"category_name": "分类名称",
|
|||
|
"mission": "initial_contact",
|
|||
|
"mission_display": "初步联系",
|
|||
|
"platform": "tiktok",
|
|||
|
"platform_display": "TikTok",
|
|||
|
"service": "text",
|
|||
|
"service_display": "文本",
|
|||
|
"collaboration_type": "paid_promotion",
|
|||
|
"collaboration_type_display": "付费推广",
|
|||
|
"is_public": true,
|
|||
|
"created_at": "2023-01-01T00:00:00Z",
|
|||
|
"updated_at": "2023-01-01T00:00:00Z"
|
|||
|
}
|
|||
|
],
|
|||
|
"total_pages": 3,
|
|||
|
"current_page": 1
|
|||
|
}
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
### 11. 按服务类型获取模板
|
|||
|
|
|||
|
**接口说明**:按服务类型筛选模板
|
|||
|
|
|||
|
**请求地址**:`GET /template/by_service/`
|
|||
|
|
|||
|
**查询参数**:
|
|||
|
|
|||
|
| 参数名 | 类型 | 必填 | 说明 |
|
|||
|
|-------|------|-----|------|
|
|||
|
| service | string | 是 | 服务类型,可选值: voice(声优-交谈), text(文本), video(视频), image(图片), other(其他) |
|
|||
|
| page | int | 否 | 分页页码,默认1 |
|
|||
|
| page_size | int | 否 | 每页显示数量,默认10,最大100 |
|
|||
|
|
|||
|
**响应结果**:
|
|||
|
|
|||
|
```json
|
|||
|
{
|
|||
|
"code": 200,
|
|||
|
"message": "按服务类型获取模板成功",
|
|||
|
"data": {
|
|||
|
"count": 18,
|
|||
|
"next": "http://example.com/template/by_service/?service=text&page=2",
|
|||
|
"previous": null,
|
|||
|
"results": [
|
|||
|
{
|
|||
|
"id": 1,
|
|||
|
"title": "文本模板",
|
|||
|
"preview": "模板内容预览...",
|
|||
|
"category_name": "分类名称",
|
|||
|
"mission": "initial_contact",
|
|||
|
"mission_display": "初步联系",
|
|||
|
"platform": "tiktok",
|
|||
|
"platform_display": "TikTok",
|
|||
|
"service": "text",
|
|||
|
"service_display": "文本",
|
|||
|
"collaboration_type": "paid_promotion",
|
|||
|
"collaboration_type_display": "付费推广",
|
|||
|
"is_public": true,
|
|||
|
"created_at": "2023-01-01T00:00:00Z",
|
|||
|
"updated_at": "2023-01-01T00:00:00Z"
|
|||
|
}
|
|||
|
],
|
|||
|
"total_pages": 2,
|
|||
|
"current_page": 1
|
|||
|
}
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
## 模板分类管理
|
|||
|
|
|||
|
模板分类管理使用REST风格的API,通过TemplateCategoryViewSet提供了以下功能:
|
|||
|
|
|||
|
### 1. 获取分类列表
|
|||
|
|
|||
|
**接口说明**:获取所有模板分类的列表
|
|||
|
|
|||
|
**请求地址**:`GET /template/categories/`
|
|||
|
|
|||
|
**查询参数**:
|
|||
|
|
|||
|
| 参数名 | 类型 | 必填 | 说明 |
|
|||
|
|-------|------|-----|------|
|
|||
|
| page | int | 否 | 分页页码,默认1 |
|
|||
|
| page_size | int | 否 | 每页显示数量,默认10,最大100 |
|
|||
|
|
|||
|
**响应结果**:
|
|||
|
|
|||
|
```json
|
|||
|
{
|
|||
|
"code": 200,
|
|||
|
"message": "获取模板分类列表成功",
|
|||
|
"data": {
|
|||
|
"count": 8,
|
|||
|
"next": null,
|
|||
|
"previous": null,
|
|||
|
"results": [
|
|||
|
{
|
|||
|
"id": 1,
|
|||
|
"name": "分类名称",
|
|||
|
"description": "分类描述",
|
|||
|
"created_at": "2023-01-01T00:00:00Z",
|
|||
|
"updated_at": "2023-01-01T00:00:00Z"
|
|||
|
}
|
|||
|
],
|
|||
|
"total_pages": 1,
|
|||
|
"current_page": 1
|
|||
|
}
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
### 2. 获取分类详情
|
|||
|
|
|||
|
**接口说明**:获取单个模板分类的详细信息
|
|||
|
|
|||
|
**请求地址**:`GET /template/categories/{id}/`
|
|||
|
|
|||
|
**路径参数**:
|
|||
|
|
|||
|
| 参数名 | 类型 | 必填 | 说明 |
|
|||
|
|-------|------|-----|------|
|
|||
|
| id | int | 是 | 分类ID |
|
|||
|
|
|||
|
**响应结果**:
|
|||
|
|
|||
|
```json
|
|||
|
{
|
|||
|
"code": 200,
|
|||
|
"message": "获取模板分类详情成功",
|
|||
|
"data": {
|
|||
|
"id": 1,
|
|||
|
"name": "分类名称",
|
|||
|
"description": "分类描述",
|
|||
|
"created_at": "2023-01-01T00:00:00Z",
|
|||
|
"updated_at": "2023-01-01T00:00:00Z"
|
|||
|
}
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
### 3. 创建分类
|
|||
|
|
|||
|
**接口说明**:创建新的模板分类
|
|||
|
|
|||
|
**请求地址**:`POST /template/categories/`
|
|||
|
|
|||
|
**请求参数**:
|
|||
|
|
|||
|
```json
|
|||
|
{
|
|||
|
"name": "新分类名称",
|
|||
|
"description": "新分类描述"
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
**参数说明**:
|
|||
|
|
|||
|
| 参数名 | 类型 | 必填 | 说明 |
|
|||
|
|-------|------|-----|------|
|
|||
|
| name | string | 是 | 分类名称 |
|
|||
|
| description | string | 否 | 分类描述 |
|
|||
|
|
|||
|
**响应结果**:
|
|||
|
|
|||
|
```json
|
|||
|
{
|
|||
|
"code": 201,
|
|||
|
"message": "模板分类创建成功",
|
|||
|
"data": {
|
|||
|
"id": 2,
|
|||
|
"name": "新分类名称",
|
|||
|
"description": "新分类描述",
|
|||
|
"created_at": "2023-01-02T00:00:00Z",
|
|||
|
"updated_at": "2023-01-02T00:00:00Z"
|
|||
|
}
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
### 4. 更新分类
|
|||
|
|
|||
|
**接口说明**:更新已有的模板分类
|
|||
|
|
|||
|
**请求地址**:`PUT /template/categories/{id}/` 或 `PATCH /template/categories/{id}/`
|
|||
|
|
|||
|
**路径参数**:
|
|||
|
|
|||
|
| 参数名 | 类型 | 必填 | 说明 |
|
|||
|
|-------|------|-----|------|
|
|||
|
| id | int | 是 | 分类ID |
|
|||
|
|
|||
|
**请求参数**:
|
|||
|
- PUT请求需要提供完整的分类信息
|
|||
|
- PATCH请求可以只提供需要更新的字段
|
|||
|
|
|||
|
```json
|
|||
|
{
|
|||
|
"name": "更新后的分类名称",
|
|||
|
"description": "更新后的分类描述"
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
**响应结果**:
|
|||
|
|
|||
|
```json
|
|||
|
{
|
|||
|
"code": 200,
|
|||
|
"message": "模板分类更新成功",
|
|||
|
"data": {
|
|||
|
"id": 2,
|
|||
|
"name": "更新后的分类名称",
|
|||
|
"description": "更新后的分类描述",
|
|||
|
"created_at": "2023-01-02T00:00:00Z",
|
|||
|
"updated_at": "2023-01-03T00:00:00Z"
|
|||
|
}
|
|||
|
}
|
|||
|
```
|
|||
|
|
|||
|
### 5. 删除分类
|
|||
|
|
|||
|
**接口说明**:删除指定的模板分类
|
|||
|
|
|||
|
**请求地址**:`DELETE /template/categories/{id}/`
|
|||
|
|
|||
|
**路径参数**:
|
|||
|
|
|||
|
| 参数名 | 类型 | 必填 | 说明 |
|
|||
|
|-------|------|-----|------|
|
|||
|
| id | int | 是 | 分类ID |
|
|||
|
|
|||
|
**响应结果**:
|
|||
|
|
|||
|
```json
|
|||
|
{
|
|||
|
"code": 200,
|
|||
|
"message": "模板分类删除成功",
|
|||
|
"data": null
|
|||
|
}
|
|||
|
```
|