- route definition
- Url: /api/v1/faqs
- Method: GET
- Request:
FAQListRequest - Response:
FAQListResponse
- request definition
type FAQListRequest struct {
Page int `form:"page,optional,default=1"`
PageSize int `form:"pageSize,optional,default=20"`
Category string `form:"category,optional"`
Keyword string `form:"keyword,optional"`
Visible *bool `form:"visible,optional"`
}
- response definition
type FAQListResponse struct {
Items []FAQ `json:"items"`
Total int64 `json:"total"`
Page int `json:"page"`
Size int `json:"pageSize"`
}
- route definition
- Url: /api/v1/faqs
- Method: POST
- Request:
FAQCreateRequest - Response:
FAQDetailResponse
- request definition
type FAQCreateRequest struct {
Question string `json:"question"`
Answer string `json:"answer"`
Category string `json:"category"`
Tags []string `json:"tags,optional"`
Visible bool `json:"visible,optional,default=true"`
Sort int `json:"sort,optional,default=0"`
}
- response definition
type FAQDetailResponse struct {
Id int64 `json:"id"`
Question string `json:"question"`
Answer string `json:"answer"`
Category string `json:"category"`
Tags []string `json:"tags"`
Visible bool `json:"visible"`
Sort int `json:"sort"`
Views int `json:"views"`
CreatedAt string `json:"createdAt"`
UpdatedAt string `json:"updatedAt"`
}
type FAQ struct {
Id int64 `json:"id"`
Question string `json:"question"`
Answer string `json:"answer"`
Category string `json:"category"`
Tags []string `json:"tags"`
Visible bool `json:"visible"`
Sort int `json:"sort"`
Views int `json:"views"`
CreatedAt string `json:"createdAt"`
UpdatedAt string `json:"updatedAt"`
}
- route definition
- Url: /api/v1/faqs/:id
- Method: PUT
- Request:
FAQUpdateRequest - Response:
FAQDetailResponse
- request definition
type FAQUpdateRequest struct {
ID string `path:"id"`
Question string `json:"question,optional"`
Answer string `json:"answer,optional"`
Category string `json:"category,optional"`
Tags []string `json:"tags,optional"`
Visible *bool `json:"visible,optional"`
Sort *int `json:"sort,optional"`
}
- response definition
type FAQDetailResponse struct {
Id int64 `json:"id"`
Question string `json:"question"`
Answer string `json:"answer"`
Category string `json:"category"`
Tags []string `json:"tags"`
Visible bool `json:"visible"`
Sort int `json:"sort"`
Views int `json:"views"`
CreatedAt string `json:"createdAt"`
UpdatedAt string `json:"updatedAt"`
}
type FAQ struct {
Id int64 `json:"id"`
Question string `json:"question"`
Answer string `json:"answer"`
Category string `json:"category"`
Tags []string `json:"tags"`
Visible bool `json:"visible"`
Sort int `json:"sort"`
Views int `json:"views"`
CreatedAt string `json:"createdAt"`
UpdatedAt string `json:"updatedAt"`
}
- route definition
- Url: /api/v1/faqs/:id
- Method: DELETE
- Request:
FAQDeleteRequest - Response:
-
- request definition
type FAQDeleteRequest struct {
ID string `path:"id"`
}
- response definition
- route definition
- Url: /api/v1/faqs/categories
- Method: GET
- Request:
FAQCategoriesRequest - Response:
FAQCategoriesResponse
- request definition
type FAQCategoriesRequest struct {
}
- response definition
type FAQCategoriesResponse struct {
Items []FAQCategory `json:"items"`
}