mirror of https://github.com/halo-dev/halo
3508 lines
94 KiB
JSON
3508 lines
94 KiB
JSON
{
|
||
"openapi": "3.0.1",
|
||
"info": {
|
||
"title": "Halo",
|
||
"version": "2.21.0-SNAPSHOT"
|
||
},
|
||
"servers": [
|
||
{
|
||
"url": "http://localhost:8091",
|
||
"description": "Generated server url"
|
||
}
|
||
],
|
||
"security": [
|
||
{
|
||
"basicAuth": [],
|
||
"bearerAuth": []
|
||
}
|
||
],
|
||
"paths": {
|
||
"/apis/api.content.halo.run/v1alpha1/categories": {
|
||
"get": {
|
||
"description": "Lists categories.",
|
||
"operationId": "queryCategories",
|
||
"parameters": [
|
||
{
|
||
"description": "Page number. Default is 0.",
|
||
"in": "query",
|
||
"name": "page",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"description": "Size number. Default is 0.",
|
||
"in": "query",
|
||
"name": "size",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"description": "Label selector. e.g.: hidden!\u003dtrue",
|
||
"in": "query",
|
||
"name": "labelSelector",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"description": "Field selector. e.g.: metadata.name\u003d\u003dhalo",
|
||
"in": "query",
|
||
"name": "fieldSelector",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.",
|
||
"in": "query",
|
||
"name": "sort",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CategoryVoList"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"CategoryV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.content.halo.run/v1alpha1/categories/{name}": {
|
||
"get": {
|
||
"description": "Gets category by name.",
|
||
"operationId": "queryCategoryByName",
|
||
"parameters": [
|
||
{
|
||
"description": "Category name",
|
||
"in": "path",
|
||
"name": "name",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CategoryVo"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"CategoryV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.content.halo.run/v1alpha1/categories/{name}/posts": {
|
||
"get": {
|
||
"description": "Lists posts by category name.",
|
||
"operationId": "queryPostsByCategoryName",
|
||
"parameters": [
|
||
{
|
||
"description": "Category name",
|
||
"in": "path",
|
||
"name": "name",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"description": "Page number. Default is 0.",
|
||
"in": "query",
|
||
"name": "page",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"description": "Size number. Default is 0.",
|
||
"in": "query",
|
||
"name": "size",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"description": "Label selector. e.g.: hidden!\u003dtrue",
|
||
"in": "query",
|
||
"name": "labelSelector",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"description": "Field selector. e.g.: metadata.name\u003d\u003dhalo",
|
||
"in": "query",
|
||
"name": "fieldSelector",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.",
|
||
"in": "query",
|
||
"name": "sort",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ListedPostVoList"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"CategoryV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.content.halo.run/v1alpha1/posts": {
|
||
"get": {
|
||
"description": "Lists posts.",
|
||
"operationId": "queryPosts",
|
||
"parameters": [
|
||
{
|
||
"description": "Page number. Default is 0.",
|
||
"in": "query",
|
||
"name": "page",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"description": "Size number. Default is 0.",
|
||
"in": "query",
|
||
"name": "size",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"description": "Label selector. e.g.: hidden!\u003dtrue",
|
||
"in": "query",
|
||
"name": "labelSelector",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"description": "Field selector. e.g.: metadata.name\u003d\u003dhalo",
|
||
"in": "query",
|
||
"name": "fieldSelector",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.",
|
||
"in": "query",
|
||
"name": "sort",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ListedPostVoList"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"PostV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.content.halo.run/v1alpha1/posts/{name}": {
|
||
"get": {
|
||
"description": "Gets a post by name.",
|
||
"operationId": "queryPostByName",
|
||
"parameters": [
|
||
{
|
||
"description": "Post name",
|
||
"in": "path",
|
||
"name": "name",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PostVo"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"PostV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.content.halo.run/v1alpha1/posts/{name}/navigation": {
|
||
"get": {
|
||
"description": "Gets a post navigation by name.",
|
||
"operationId": "queryPostNavigationByName",
|
||
"parameters": [
|
||
{
|
||
"description": "Post name",
|
||
"in": "path",
|
||
"name": "name",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/NavigationPostVo"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"PostV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.content.halo.run/v1alpha1/singlepages": {
|
||
"get": {
|
||
"description": "Lists single pages",
|
||
"operationId": "querySinglePages",
|
||
"parameters": [
|
||
{
|
||
"description": "Page number. Default is 0.",
|
||
"in": "query",
|
||
"name": "page",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"description": "Size number. Default is 0.",
|
||
"in": "query",
|
||
"name": "size",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"description": "Label selector. e.g.: hidden!\u003dtrue",
|
||
"in": "query",
|
||
"name": "labelSelector",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"description": "Field selector. e.g.: metadata.name\u003d\u003dhalo",
|
||
"in": "query",
|
||
"name": "fieldSelector",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.",
|
||
"in": "query",
|
||
"name": "sort",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ListedSinglePageVoList"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"SinglePageV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.content.halo.run/v1alpha1/singlepages/{name}": {
|
||
"get": {
|
||
"description": "Gets single page by name",
|
||
"operationId": "querySinglePageByName",
|
||
"parameters": [
|
||
{
|
||
"description": "SinglePage name",
|
||
"in": "path",
|
||
"name": "name",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SinglePageVo"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"SinglePageV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.content.halo.run/v1alpha1/tags": {
|
||
"get": {
|
||
"description": "Lists tags",
|
||
"operationId": "queryTags",
|
||
"parameters": [
|
||
{
|
||
"description": "Page number. Default is 0.",
|
||
"in": "query",
|
||
"name": "page",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"description": "Size number. Default is 0.",
|
||
"in": "query",
|
||
"name": "size",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"description": "Label selector. e.g.: hidden!\u003dtrue",
|
||
"in": "query",
|
||
"name": "labelSelector",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"description": "Field selector. e.g.: metadata.name\u003d\u003dhalo",
|
||
"in": "query",
|
||
"name": "fieldSelector",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.",
|
||
"in": "query",
|
||
"name": "sort",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TagVoList"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"TagV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.content.halo.run/v1alpha1/tags/{name}": {
|
||
"get": {
|
||
"description": "Gets tag by name",
|
||
"operationId": "queryTagByName",
|
||
"parameters": [
|
||
{
|
||
"description": "Tag name",
|
||
"in": "path",
|
||
"name": "name",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TagVo"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"TagV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.content.halo.run/v1alpha1/tags/{name}/posts": {
|
||
"get": {
|
||
"description": "Lists posts by tag name",
|
||
"operationId": "queryPostsByTagName",
|
||
"parameters": [
|
||
{
|
||
"description": "Tag name",
|
||
"in": "path",
|
||
"name": "name",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"description": "Page number. Default is 0.",
|
||
"in": "query",
|
||
"name": "page",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"description": "Size number. Default is 0.",
|
||
"in": "query",
|
||
"name": "size",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"description": "Label selector. e.g.: hidden!\u003dtrue",
|
||
"in": "query",
|
||
"name": "labelSelector",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"description": "Field selector. e.g.: metadata.name\u003d\u003dhalo",
|
||
"in": "query",
|
||
"name": "fieldSelector",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.",
|
||
"in": "query",
|
||
"name": "sort",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ListedPostVo"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"TagV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.halo.run/v1alpha1/comments": {
|
||
"get": {
|
||
"description": "List comments.",
|
||
"operationId": "ListComments_1",
|
||
"parameters": [
|
||
{
|
||
"description": "Page number. Default is 0.",
|
||
"in": "query",
|
||
"name": "page",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"description": "Size number. Default is 0.",
|
||
"in": "query",
|
||
"name": "size",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"description": "Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.",
|
||
"in": "query",
|
||
"name": "sort",
|
||
"schema": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"description": "The comment subject group.",
|
||
"in": "query",
|
||
"name": "group",
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"description": "The comment subject version.",
|
||
"in": "query",
|
||
"name": "version",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"description": "The comment subject kind.",
|
||
"in": "query",
|
||
"name": "kind",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"description": "The comment subject name.",
|
||
"in": "query",
|
||
"name": "name",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"description": "Whether to include replies. Default is false.",
|
||
"in": "query",
|
||
"name": "withReplies",
|
||
"schema": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
{
|
||
"description": "Reply size of the comment, default is 10, only works when withReplies is true.",
|
||
"in": "query",
|
||
"name": "replySize",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CommentWithReplyVoList"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"CommentV1alpha1Public"
|
||
]
|
||
},
|
||
"post": {
|
||
"description": "Create a comment.",
|
||
"operationId": "CreateComment_1",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CommentRequest"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/Comment"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"CommentV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.halo.run/v1alpha1/comments/{name}": {
|
||
"get": {
|
||
"description": "Get a comment.",
|
||
"operationId": "GetComment",
|
||
"parameters": [
|
||
{
|
||
"in": "path",
|
||
"name": "name",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CommentVoList"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"CommentV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.halo.run/v1alpha1/comments/{name}/reply": {
|
||
"get": {
|
||
"description": "List comment replies.",
|
||
"operationId": "ListCommentReplies",
|
||
"parameters": [
|
||
{
|
||
"in": "path",
|
||
"name": "name",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"description": "Page number. Default is 0.",
|
||
"in": "query",
|
||
"name": "page",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
{
|
||
"description": "Size number. Default is 0.",
|
||
"in": "query",
|
||
"name": "size",
|
||
"schema": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplyVoList"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"CommentV1alpha1Public"
|
||
]
|
||
},
|
||
"post": {
|
||
"description": "Create a reply.",
|
||
"operationId": "CreateReply_1",
|
||
"parameters": [
|
||
{
|
||
"in": "path",
|
||
"name": "name",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ReplyRequest"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/Reply"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"CommentV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.halo.run/v1alpha1/indices/-/search": {
|
||
"post": {
|
||
"description": "Search indices.",
|
||
"operationId": "IndicesSearch",
|
||
"requestBody": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SearchOption"
|
||
}
|
||
}
|
||
},
|
||
"description": "Please note that the \"filterPublished\", \"filterExposed\" and \"filterRecycled\" fields are ignored in this endpoint."
|
||
},
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SearchResult"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"IndexV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.halo.run/v1alpha1/menus/-": {
|
||
"get": {
|
||
"description": "Gets primary menu.",
|
||
"operationId": "queryPrimaryMenu",
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MenuVo"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"MenuV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.halo.run/v1alpha1/menus/{name}": {
|
||
"get": {
|
||
"description": "Gets menu by name.",
|
||
"operationId": "queryMenuByName",
|
||
"parameters": [
|
||
{
|
||
"description": "Menu name",
|
||
"in": "path",
|
||
"name": "name",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/MenuVo"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"MenuV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.halo.run/v1alpha1/stats/-": {
|
||
"get": {
|
||
"description": "Gets site stats",
|
||
"operationId": "queryStats",
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/SiteStatsVo"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"SystemV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.halo.run/v1alpha1/trackers/counter": {
|
||
"post": {
|
||
"description": "Count an extension resource visits.",
|
||
"operationId": "count",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CounterRequest"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"default": {
|
||
"content": {},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"MetricsV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.halo.run/v1alpha1/trackers/downvote": {
|
||
"post": {
|
||
"description": "Downvote an extension resource.",
|
||
"operationId": "downvote",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/VoteRequest"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"default": {
|
||
"content": {},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"MetricsV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.halo.run/v1alpha1/trackers/upvote": {
|
||
"post": {
|
||
"description": "Upvote an extension resource.",
|
||
"operationId": "upvote",
|
||
"requestBody": {
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/VoteRequest"
|
||
}
|
||
}
|
||
},
|
||
"required": true
|
||
},
|
||
"responses": {
|
||
"default": {
|
||
"content": {},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"MetricsV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.notification.halo.run/v1alpha1/subscriptions/{name}/unsubscribe": {
|
||
"get": {
|
||
"description": "Unsubscribe a subscription",
|
||
"operationId": "Unsubscribe",
|
||
"parameters": [
|
||
{
|
||
"description": "Subscription name",
|
||
"in": "path",
|
||
"name": "name",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"description": "Unsubscribe token",
|
||
"in": "query",
|
||
"name": "token",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"NotificationV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.plugin.halo.run/v1alpha1/plugins/{name}/available": {
|
||
"get": {
|
||
"description": "Gets plugin available by name.",
|
||
"operationId": "queryPluginAvailableByName",
|
||
"parameters": [
|
||
{
|
||
"description": "Plugin name",
|
||
"in": "path",
|
||
"name": "name",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"type": "boolean"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"PluginV1alpha1Public"
|
||
]
|
||
}
|
||
},
|
||
"/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri": {
|
||
"get": {
|
||
"description": "Get thumbnail by URI",
|
||
"operationId": "GetThumbnailByUri",
|
||
"parameters": [
|
||
{
|
||
"description": "The URI of the image",
|
||
"in": "query",
|
||
"name": "uri",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
{
|
||
"description": "The size of the thumbnail,available values are s,m,l,xl",
|
||
"in": "query",
|
||
"name": "size",
|
||
"required": true,
|
||
"schema": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
],
|
||
"responses": {
|
||
"default": {
|
||
"content": {
|
||
"*/*": {
|
||
"schema": {
|
||
"type": "string",
|
||
"format": "binary"
|
||
}
|
||
}
|
||
},
|
||
"description": "default response"
|
||
}
|
||
},
|
||
"tags": [
|
||
"ThumbnailV1alpha1Public"
|
||
]
|
||
}
|
||
}
|
||
},
|
||
"components": {
|
||
"schemas": {
|
||
"AddOperation": {
|
||
"required": [
|
||
"op",
|
||
"path",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"op": {
|
||
"type": "string",
|
||
"enum": [
|
||
"add"
|
||
]
|
||
},
|
||
"path": {
|
||
"pattern": "^(/[^/~]*(~[01][^/~]*)*)*$",
|
||
"type": "string",
|
||
"description": "A JSON Pointer path pointing to the location to move/copy from.",
|
||
"example": "/a/b/c"
|
||
},
|
||
"value": {
|
||
"description": "Value can be any JSON value"
|
||
}
|
||
}
|
||
},
|
||
"CategorySpec": {
|
||
"required": [
|
||
"displayName",
|
||
"priority",
|
||
"slug"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"children": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"cover": {
|
||
"type": "string"
|
||
},
|
||
"description": {
|
||
"type": "string"
|
||
},
|
||
"displayName": {
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"hideFromList": {
|
||
"type": "boolean",
|
||
"description": "\u003cp\u003eWhether to hide the category from the category list.\u003c/p\u003e\n \u003cp\u003eWhen set to true, the category including its subcategories and related posts will\n not be displayed in the category list, but it can still be accessed by permalink.\u003c/p\u003e\n \u003cp\u003eLimitation: It only takes effect on the theme-side categorized list and it only\n allows to be set to true on the first level(root node) of categories.\u003c/p\u003e"
|
||
},
|
||
"postTemplate": {
|
||
"maxLength": 255,
|
||
"type": "string",
|
||
"description": "\u003cp\u003eUsed to specify the template for the posts associated with the category.\u003c/p\u003e\n \u003cp\u003eThe priority is not as high as that of the post.\u003c/p\u003e\n \u003cp\u003eIf the post also specifies a template, the post\u0027s template will prevail.\u003c/p\u003e"
|
||
},
|
||
"preventParentPostCascadeQuery": {
|
||
"type": "boolean",
|
||
"description": "\u003cp\u003eif a category is queried for related posts, the default behavior is to\n query all posts under the category including its subcategories, but if this field is\n set to true, cascade query behavior will be terminated here.\u003c/p\u003e\n \u003cp\u003eFor example, if a category has subcategories A and B, and A has subcategories C and\n D and C marked this field as true, when querying posts under A category,all posts under A\n and B will be queried, but C and D will not be queried.\u003c/p\u003e"
|
||
},
|
||
"priority": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 0
|
||
},
|
||
"slug": {
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"template": {
|
||
"maxLength": 255,
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"CategoryStatus": {
|
||
"type": "object",
|
||
"properties": {
|
||
"permalink": {
|
||
"type": "string"
|
||
},
|
||
"postCount": {
|
||
"type": "integer",
|
||
"description": "包括当前和其下所有层级的文章数量 (depth\u003dmax).",
|
||
"format": "int32"
|
||
},
|
||
"visiblePostCount": {
|
||
"type": "integer",
|
||
"description": "包括当前和其下所有层级的已发布且公开的文章数量 (depth\u003dmax).",
|
||
"format": "int32"
|
||
}
|
||
}
|
||
},
|
||
"CategoryVo": {
|
||
"required": [
|
||
"metadata"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"metadata": {
|
||
"$ref": "#/components/schemas/Metadata"
|
||
},
|
||
"postCount": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"spec": {
|
||
"$ref": "#/components/schemas/CategorySpec"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/CategoryStatus"
|
||
}
|
||
},
|
||
"description": "A value object for {@link Category Category}."
|
||
},
|
||
"CategoryVoList": {
|
||
"required": [
|
||
"first",
|
||
"hasNext",
|
||
"hasPrevious",
|
||
"items",
|
||
"last",
|
||
"page",
|
||
"size",
|
||
"total",
|
||
"totalPages"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"first": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page is the first page."
|
||
},
|
||
"hasNext": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page has previous page."
|
||
},
|
||
"hasPrevious": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page has previous page."
|
||
},
|
||
"items": {
|
||
"type": "array",
|
||
"description": "A chunk of items.",
|
||
"items": {
|
||
"$ref": "#/components/schemas/CategoryVo"
|
||
}
|
||
},
|
||
"last": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page is the last page."
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "Page number, starts from 1. If not set or equal to 0, it means no pagination.",
|
||
"format": "int32"
|
||
},
|
||
"size": {
|
||
"type": "integer",
|
||
"description": "Size of each page. If not set or equal to 0, it means no pagination.",
|
||
"format": "int32"
|
||
},
|
||
"total": {
|
||
"type": "integer",
|
||
"description": "Total elements.",
|
||
"format": "int64"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "Indicates total pages.",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
},
|
||
"Comment": {
|
||
"required": [
|
||
"apiVersion",
|
||
"kind",
|
||
"metadata",
|
||
"spec"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"apiVersion": {
|
||
"type": "string"
|
||
},
|
||
"kind": {
|
||
"type": "string"
|
||
},
|
||
"metadata": {
|
||
"$ref": "#/components/schemas/Metadata"
|
||
},
|
||
"spec": {
|
||
"$ref": "#/components/schemas/CommentSpec"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/CommentStatus"
|
||
}
|
||
}
|
||
},
|
||
"CommentEmailOwner": {
|
||
"type": "object",
|
||
"properties": {
|
||
"avatar": {
|
||
"type": "string",
|
||
"description": "avatar for comment owner"
|
||
},
|
||
"displayName": {
|
||
"type": "string",
|
||
"description": "display name for comment owner"
|
||
},
|
||
"email": {
|
||
"type": "string",
|
||
"description": "email for comment owner"
|
||
},
|
||
"website": {
|
||
"type": "string",
|
||
"description": "website for comment owner"
|
||
}
|
||
},
|
||
"description": "\u003cp\u003eThe creator info of the comment.\u003c/p\u003e\n This {@link CommentEmailOwner CommentEmailOwner} is only applicable to the user who is allowed to comment\n without logging in."
|
||
},
|
||
"CommentOwner": {
|
||
"required": [
|
||
"kind",
|
||
"name"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"annotations": {
|
||
"type": "object",
|
||
"additionalProperties": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"displayName": {
|
||
"type": "string"
|
||
},
|
||
"kind": {
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"name": {
|
||
"maxLength": 64,
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"CommentRequest": {
|
||
"required": [
|
||
"content",
|
||
"raw",
|
||
"subjectRef"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"allowNotification": {
|
||
"type": "boolean",
|
||
"default": false
|
||
},
|
||
"content": {
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"hidden": {
|
||
"type": "boolean",
|
||
"default": false
|
||
},
|
||
"owner": {
|
||
"$ref": "#/components/schemas/CommentEmailOwner"
|
||
},
|
||
"raw": {
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"subjectRef": {
|
||
"$ref": "#/components/schemas/Ref"
|
||
}
|
||
},
|
||
"description": "Request parameter object for {@link Comment Comment}."
|
||
},
|
||
"CommentSpec": {
|
||
"required": [
|
||
"allowNotification",
|
||
"approved",
|
||
"content",
|
||
"hidden",
|
||
"owner",
|
||
"priority",
|
||
"raw",
|
||
"subjectRef",
|
||
"top"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"allowNotification": {
|
||
"type": "boolean",
|
||
"default": true
|
||
},
|
||
"approved": {
|
||
"type": "boolean",
|
||
"default": false
|
||
},
|
||
"approvedTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"content": {
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"creationTime": {
|
||
"type": "string",
|
||
"description": "The user-defined creation time default is \u003ccode\u003emetadata.creationTimestamp\u003c/code\u003e.",
|
||
"format": "date-time"
|
||
},
|
||
"hidden": {
|
||
"type": "boolean",
|
||
"default": false
|
||
},
|
||
"ipAddress": {
|
||
"type": "string"
|
||
},
|
||
"lastReadTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"owner": {
|
||
"$ref": "#/components/schemas/CommentOwner"
|
||
},
|
||
"priority": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 0
|
||
},
|
||
"raw": {
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"subjectRef": {
|
||
"$ref": "#/components/schemas/Ref"
|
||
},
|
||
"top": {
|
||
"type": "boolean",
|
||
"default": false
|
||
},
|
||
"userAgent": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"CommentStatsVo": {
|
||
"type": "object",
|
||
"properties": {
|
||
"upvote": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"description": "comment stats value object."
|
||
},
|
||
"CommentStatus": {
|
||
"type": "object",
|
||
"properties": {
|
||
"hasNewReply": {
|
||
"type": "boolean"
|
||
},
|
||
"lastReplyTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"observedVersion": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"replyCount": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"unreadReplyCount": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"visibleReplyCount": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
}
|
||
},
|
||
"CommentVo": {
|
||
"required": [
|
||
"metadata",
|
||
"owner",
|
||
"spec",
|
||
"stats"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"metadata": {
|
||
"$ref": "#/components/schemas/Metadata"
|
||
},
|
||
"owner": {
|
||
"$ref": "#/components/schemas/OwnerInfo"
|
||
},
|
||
"spec": {
|
||
"$ref": "#/components/schemas/CommentSpec"
|
||
},
|
||
"stats": {
|
||
"$ref": "#/components/schemas/CommentStatsVo"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/CommentStatus"
|
||
}
|
||
},
|
||
"description": "A chunk of items."
|
||
},
|
||
"CommentVoList": {
|
||
"required": [
|
||
"first",
|
||
"hasNext",
|
||
"hasPrevious",
|
||
"items",
|
||
"last",
|
||
"page",
|
||
"size",
|
||
"total",
|
||
"totalPages"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"first": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page is the first page."
|
||
},
|
||
"hasNext": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page has previous page."
|
||
},
|
||
"hasPrevious": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page has previous page."
|
||
},
|
||
"items": {
|
||
"type": "array",
|
||
"description": "A chunk of items.",
|
||
"items": {
|
||
"$ref": "#/components/schemas/CommentVo"
|
||
}
|
||
},
|
||
"last": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page is the last page."
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "Page number, starts from 1. If not set or equal to 0, it means no pagination.",
|
||
"format": "int32"
|
||
},
|
||
"size": {
|
||
"type": "integer",
|
||
"description": "Size of each page. If not set or equal to 0, it means no pagination.",
|
||
"format": "int32"
|
||
},
|
||
"total": {
|
||
"type": "integer",
|
||
"description": "Total elements.",
|
||
"format": "int64"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "Indicates total pages.",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
},
|
||
"CommentWithReplyVo": {
|
||
"required": [
|
||
"metadata",
|
||
"owner",
|
||
"spec",
|
||
"stats"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"metadata": {
|
||
"$ref": "#/components/schemas/Metadata"
|
||
},
|
||
"owner": {
|
||
"$ref": "#/components/schemas/OwnerInfo"
|
||
},
|
||
"replies": {
|
||
"$ref": "#/components/schemas/ListResultReplyVo"
|
||
},
|
||
"spec": {
|
||
"$ref": "#/components/schemas/CommentSpec"
|
||
},
|
||
"stats": {
|
||
"$ref": "#/components/schemas/CommentStatsVo"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/CommentStatus"
|
||
}
|
||
},
|
||
"description": "A chunk of items."
|
||
},
|
||
"CommentWithReplyVoList": {
|
||
"required": [
|
||
"first",
|
||
"hasNext",
|
||
"hasPrevious",
|
||
"items",
|
||
"last",
|
||
"page",
|
||
"size",
|
||
"total",
|
||
"totalPages"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"first": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page is the first page."
|
||
},
|
||
"hasNext": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page has previous page."
|
||
},
|
||
"hasPrevious": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page has previous page."
|
||
},
|
||
"items": {
|
||
"type": "array",
|
||
"description": "A chunk of items.",
|
||
"items": {
|
||
"$ref": "#/components/schemas/CommentWithReplyVo"
|
||
}
|
||
},
|
||
"last": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page is the last page."
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "Page number, starts from 1. If not set or equal to 0, it means no pagination.",
|
||
"format": "int32"
|
||
},
|
||
"size": {
|
||
"type": "integer",
|
||
"description": "Size of each page. If not set or equal to 0, it means no pagination.",
|
||
"format": "int32"
|
||
},
|
||
"total": {
|
||
"type": "integer",
|
||
"description": "Total elements.",
|
||
"format": "int64"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "Indicates total pages.",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
},
|
||
"Condition": {
|
||
"required": [
|
||
"lastTransitionTime",
|
||
"status",
|
||
"type"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"lastTransitionTime": {
|
||
"type": "string",
|
||
"description": "Last time the condition transitioned from one status to another.",
|
||
"format": "date-time"
|
||
},
|
||
"message": {
|
||
"maxLength": 32768,
|
||
"type": "string",
|
||
"description": "Human-readable message indicating details about last transition.\n This may be an empty string."
|
||
},
|
||
"reason": {
|
||
"maxLength": 1024,
|
||
"pattern": "^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$",
|
||
"type": "string",
|
||
"description": "Unique, one-word, CamelCase reason for the condition\u0027s last transition."
|
||
},
|
||
"status": {
|
||
"type": "string",
|
||
"description": "Status is the status of the condition. Can be True, False, Unknown.",
|
||
"enum": [
|
||
"TRUE",
|
||
"FALSE",
|
||
"UNKNOWN"
|
||
]
|
||
},
|
||
"type": {
|
||
"maxLength": 316,
|
||
"pattern": "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$",
|
||
"type": "string",
|
||
"description": "type of condition in CamelCase or in foo.example.com/CamelCase.\n example: Ready, Initialized.\n maxLength: 316."
|
||
}
|
||
},
|
||
"description": "EqualsAndHashCode 排除了lastTransitionTime否则失败时,lastTransitionTime 会被更新\n 导致 equals 为 false,一直被加入队列."
|
||
},
|
||
"ContentVo": {
|
||
"type": "object",
|
||
"properties": {
|
||
"content": {
|
||
"type": "string"
|
||
},
|
||
"raw": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"description": "A value object for Content from {@link Snapshot Snapshot}."
|
||
},
|
||
"ContributorVo": {
|
||
"required": [
|
||
"metadata"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"avatar": {
|
||
"type": "string"
|
||
},
|
||
"bio": {
|
||
"type": "string"
|
||
},
|
||
"displayName": {
|
||
"type": "string"
|
||
},
|
||
"metadata": {
|
||
"$ref": "#/components/schemas/Metadata"
|
||
},
|
||
"name": {
|
||
"type": "string"
|
||
},
|
||
"permalink": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"description": "A value object for {@link run.halo.app.core.extension.User run.halo.app.core.extension.User}."
|
||
},
|
||
"CopyOperation": {
|
||
"required": [
|
||
"op",
|
||
"from",
|
||
"path"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"from": {
|
||
"pattern": "^(/[^/~]*(~[01][^/~]*)*)*$",
|
||
"type": "string",
|
||
"description": "A JSON Pointer path pointing to the location to move/copy from.",
|
||
"example": "/a/b/c"
|
||
},
|
||
"op": {
|
||
"type": "string",
|
||
"enum": [
|
||
"copy"
|
||
]
|
||
},
|
||
"path": {
|
||
"pattern": "^(/[^/~]*(~[01][^/~]*)*)*$",
|
||
"type": "string",
|
||
"description": "A JSON Pointer path pointing to the location to move/copy from.",
|
||
"example": "/a/b/c"
|
||
}
|
||
}
|
||
},
|
||
"CounterRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"group": {
|
||
"type": "string"
|
||
},
|
||
"hostname": {
|
||
"type": "string"
|
||
},
|
||
"language": {
|
||
"type": "string"
|
||
},
|
||
"name": {
|
||
"type": "string"
|
||
},
|
||
"plural": {
|
||
"type": "string"
|
||
},
|
||
"referrer": {
|
||
"type": "string"
|
||
},
|
||
"screen": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"Excerpt": {
|
||
"required": [
|
||
"autoGenerate"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"autoGenerate": {
|
||
"type": "boolean",
|
||
"default": true
|
||
},
|
||
"raw": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"HaloDocument": {
|
||
"required": [
|
||
"content",
|
||
"id",
|
||
"metadataName",
|
||
"ownerName",
|
||
"permalink",
|
||
"title",
|
||
"type"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"annotations": {
|
||
"type": "object",
|
||
"additionalProperties": {
|
||
"type": "string"
|
||
},
|
||
"description": "Custom metadata. Make sure the map is serializable."
|
||
},
|
||
"categories": {
|
||
"type": "array",
|
||
"description": "Document categories. The item in the list is the category metadata name.",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"content": {
|
||
"minLength": 1,
|
||
"type": "string",
|
||
"description": "Document content. Safety content, without HTML tag."
|
||
},
|
||
"creationTimestamp": {
|
||
"type": "string",
|
||
"description": "Document creation timestamp.",
|
||
"format": "date-time"
|
||
},
|
||
"description": {
|
||
"type": "string",
|
||
"description": "Document description."
|
||
},
|
||
"exposed": {
|
||
"type": "boolean",
|
||
"description": "Whether the document is exposed to the public."
|
||
},
|
||
"id": {
|
||
"minLength": 1,
|
||
"type": "string",
|
||
"description": "Document ID. It should be unique globally."
|
||
},
|
||
"metadataName": {
|
||
"minLength": 1,
|
||
"type": "string",
|
||
"description": "Metadata name of the corresponding extension."
|
||
},
|
||
"ownerName": {
|
||
"minLength": 1,
|
||
"type": "string",
|
||
"description": "Document owner metadata name."
|
||
},
|
||
"permalink": {
|
||
"minLength": 1,
|
||
"type": "string",
|
||
"description": "Document permalink."
|
||
},
|
||
"published": {
|
||
"type": "boolean",
|
||
"description": "Whether the document is published."
|
||
},
|
||
"recycled": {
|
||
"type": "boolean",
|
||
"description": "Whether the document is recycled."
|
||
},
|
||
"tags": {
|
||
"type": "array",
|
||
"description": "Document tags. The item in the list is the tag metadata name.",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"title": {
|
||
"minLength": 1,
|
||
"type": "string",
|
||
"description": "Document title."
|
||
},
|
||
"type": {
|
||
"minLength": 1,
|
||
"type": "string",
|
||
"description": "Document type. e.g.: post.content.halo.run, singlepage.content.halo.run, moment.moment\n .halo.run, doc.doc.halo.run."
|
||
},
|
||
"updateTimestamp": {
|
||
"type": "string",
|
||
"description": "Document update timestamp.",
|
||
"format": "date-time"
|
||
}
|
||
},
|
||
"description": "Document for search."
|
||
},
|
||
"JsonPatch": {
|
||
"minItems": 1,
|
||
"uniqueItems": true,
|
||
"type": "array",
|
||
"description": "JSON schema for JSONPatch operations",
|
||
"items": {
|
||
"oneOf": [
|
||
{
|
||
"$ref": "#/components/schemas/AddOperation"
|
||
},
|
||
{
|
||
"$ref": "#/components/schemas/ReplaceOperation"
|
||
},
|
||
{
|
||
"$ref": "#/components/schemas/TestOperation"
|
||
},
|
||
{
|
||
"$ref": "#/components/schemas/RemoveOperation"
|
||
},
|
||
{
|
||
"$ref": "#/components/schemas/MoveOperation"
|
||
},
|
||
{
|
||
"$ref": "#/components/schemas/CopyOperation"
|
||
}
|
||
]
|
||
}
|
||
},
|
||
"ListResultReplyVo": {
|
||
"required": [
|
||
"first",
|
||
"hasNext",
|
||
"hasPrevious",
|
||
"items",
|
||
"last",
|
||
"page",
|
||
"size",
|
||
"total",
|
||
"totalPages"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"first": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page is the first page."
|
||
},
|
||
"hasNext": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page has previous page."
|
||
},
|
||
"hasPrevious": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page has previous page."
|
||
},
|
||
"items": {
|
||
"type": "array",
|
||
"description": "A chunk of items.",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ReplyVo"
|
||
}
|
||
},
|
||
"last": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page is the last page."
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "Page number, starts from 1. If not set or equal to 0, it means no pagination.",
|
||
"format": "int32"
|
||
},
|
||
"size": {
|
||
"type": "integer",
|
||
"description": "Size of each page. If not set or equal to 0, it means no pagination.",
|
||
"format": "int32"
|
||
},
|
||
"total": {
|
||
"type": "integer",
|
||
"description": "Total elements.",
|
||
"format": "int64"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "Indicates total pages.",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
},
|
||
"ListedPostVo": {
|
||
"required": [
|
||
"metadata"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"categories": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/CategoryVo"
|
||
}
|
||
},
|
||
"contributors": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ContributorVo"
|
||
}
|
||
},
|
||
"metadata": {
|
||
"$ref": "#/components/schemas/Metadata"
|
||
},
|
||
"owner": {
|
||
"$ref": "#/components/schemas/ContributorVo"
|
||
},
|
||
"spec": {
|
||
"$ref": "#/components/schemas/PostSpec"
|
||
},
|
||
"stats": {
|
||
"$ref": "#/components/schemas/StatsVo"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/PostStatus"
|
||
},
|
||
"tags": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/TagVo"
|
||
}
|
||
}
|
||
},
|
||
"description": "A value object for {@link Post Post}."
|
||
},
|
||
"ListedPostVoList": {
|
||
"required": [
|
||
"first",
|
||
"hasNext",
|
||
"hasPrevious",
|
||
"items",
|
||
"last",
|
||
"page",
|
||
"size",
|
||
"total",
|
||
"totalPages"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"first": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page is the first page."
|
||
},
|
||
"hasNext": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page has previous page."
|
||
},
|
||
"hasPrevious": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page has previous page."
|
||
},
|
||
"items": {
|
||
"type": "array",
|
||
"description": "A chunk of items.",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ListedPostVo"
|
||
}
|
||
},
|
||
"last": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page is the last page."
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "Page number, starts from 1. If not set or equal to 0, it means no pagination.",
|
||
"format": "int32"
|
||
},
|
||
"size": {
|
||
"type": "integer",
|
||
"description": "Size of each page. If not set or equal to 0, it means no pagination.",
|
||
"format": "int32"
|
||
},
|
||
"total": {
|
||
"type": "integer",
|
||
"description": "Total elements.",
|
||
"format": "int64"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "Indicates total pages.",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
},
|
||
"ListedSinglePageVo": {
|
||
"required": [
|
||
"metadata"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"contributors": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ContributorVo"
|
||
}
|
||
},
|
||
"metadata": {
|
||
"$ref": "#/components/schemas/Metadata"
|
||
},
|
||
"owner": {
|
||
"$ref": "#/components/schemas/ContributorVo"
|
||
},
|
||
"spec": {
|
||
"$ref": "#/components/schemas/SinglePageSpec"
|
||
},
|
||
"stats": {
|
||
"$ref": "#/components/schemas/StatsVo"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/SinglePageStatus"
|
||
}
|
||
},
|
||
"description": "A chunk of items."
|
||
},
|
||
"ListedSinglePageVoList": {
|
||
"required": [
|
||
"first",
|
||
"hasNext",
|
||
"hasPrevious",
|
||
"items",
|
||
"last",
|
||
"page",
|
||
"size",
|
||
"total",
|
||
"totalPages"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"first": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page is the first page."
|
||
},
|
||
"hasNext": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page has previous page."
|
||
},
|
||
"hasPrevious": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page has previous page."
|
||
},
|
||
"items": {
|
||
"type": "array",
|
||
"description": "A chunk of items.",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ListedSinglePageVo"
|
||
}
|
||
},
|
||
"last": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page is the last page."
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "Page number, starts from 1. If not set or equal to 0, it means no pagination.",
|
||
"format": "int32"
|
||
},
|
||
"size": {
|
||
"type": "integer",
|
||
"description": "Size of each page. If not set or equal to 0, it means no pagination.",
|
||
"format": "int32"
|
||
},
|
||
"total": {
|
||
"type": "integer",
|
||
"description": "Total elements.",
|
||
"format": "int64"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "Indicates total pages.",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
},
|
||
"MenuItemSpec": {
|
||
"type": "object",
|
||
"properties": {
|
||
"children": {
|
||
"uniqueItems": true,
|
||
"type": "array",
|
||
"description": "Children of this menu item",
|
||
"items": {
|
||
"type": "string",
|
||
"description": "The name of menu item child"
|
||
}
|
||
},
|
||
"displayName": {
|
||
"type": "string",
|
||
"description": "The display name of menu item."
|
||
},
|
||
"href": {
|
||
"type": "string",
|
||
"description": "The href of this menu item."
|
||
},
|
||
"priority": {
|
||
"type": "integer",
|
||
"description": "The priority is for ordering.",
|
||
"format": "int32"
|
||
},
|
||
"target": {
|
||
"type": "string",
|
||
"description": "The \u003ca\u003e target attribute of this menu item.",
|
||
"enum": [
|
||
"_blank",
|
||
"_self",
|
||
"_parent",
|
||
"_top"
|
||
]
|
||
},
|
||
"targetRef": {
|
||
"$ref": "#/components/schemas/Ref"
|
||
}
|
||
}
|
||
},
|
||
"MenuItemStatus": {
|
||
"type": "object",
|
||
"properties": {
|
||
"displayName": {
|
||
"type": "string",
|
||
"description": "Calculated Display name of menu item."
|
||
},
|
||
"href": {
|
||
"type": "string",
|
||
"description": "Calculated href of manu item."
|
||
}
|
||
}
|
||
},
|
||
"MenuItemVo": {
|
||
"required": [
|
||
"metadata"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"displayName": {
|
||
"type": "string",
|
||
"description": "Gets menu item\u0027s display name."
|
||
},
|
||
"metadata": {
|
||
"$ref": "#/components/schemas/Metadata"
|
||
},
|
||
"parentName": {
|
||
"type": "string"
|
||
},
|
||
"spec": {
|
||
"$ref": "#/components/schemas/MenuItemSpec"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/MenuItemStatus"
|
||
}
|
||
},
|
||
"description": "A value object for {@link MenuItem MenuItem}."
|
||
},
|
||
"MenuSpec": {
|
||
"required": [
|
||
"displayName"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"displayName": {
|
||
"type": "string",
|
||
"description": "The display name of the menu."
|
||
},
|
||
"menuItems": {
|
||
"uniqueItems": true,
|
||
"type": "array",
|
||
"description": "Menu items of this menu.",
|
||
"items": {
|
||
"type": "string",
|
||
"description": "Name of menu item."
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"MenuVo": {
|
||
"required": [
|
||
"metadata"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"menuItems": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/MenuItemVo"
|
||
}
|
||
},
|
||
"metadata": {
|
||
"$ref": "#/components/schemas/Metadata"
|
||
},
|
||
"spec": {
|
||
"$ref": "#/components/schemas/MenuSpec"
|
||
}
|
||
},
|
||
"description": "A value object for {@link Menu Menu}."
|
||
},
|
||
"Metadata": {
|
||
"required": [
|
||
"name"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"annotations": {
|
||
"type": "object",
|
||
"additionalProperties": {
|
||
"type": "string"
|
||
},
|
||
"description": "Annotations are like key-value format."
|
||
},
|
||
"creationTimestamp": {
|
||
"type": "string",
|
||
"description": "Creation timestamp of the Extension.",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"deletionTimestamp": {
|
||
"type": "string",
|
||
"description": "Deletion timestamp of the Extension.",
|
||
"format": "date-time",
|
||
"nullable": true
|
||
},
|
||
"finalizers": {
|
||
"uniqueItems": true,
|
||
"type": "array",
|
||
"nullable": true,
|
||
"items": {
|
||
"type": "string",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"generateName": {
|
||
"type": "string",
|
||
"description": "The name field will be generated automatically according to the given generateName field"
|
||
},
|
||
"labels": {
|
||
"type": "object",
|
||
"additionalProperties": {
|
||
"type": "string"
|
||
},
|
||
"description": "Labels are like key-value format."
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"description": "Metadata name"
|
||
},
|
||
"version": {
|
||
"type": "integer",
|
||
"description": "Current version of the Extension. It will be bumped up every update.",
|
||
"format": "int64",
|
||
"nullable": true
|
||
}
|
||
},
|
||
"description": "Metadata of Extension."
|
||
},
|
||
"MoveOperation": {
|
||
"required": [
|
||
"op",
|
||
"from",
|
||
"path"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"from": {
|
||
"pattern": "^(/[^/~]*(~[01][^/~]*)*)*$",
|
||
"type": "string",
|
||
"description": "A JSON Pointer path pointing to the location to move/copy from.",
|
||
"example": "/a/b/c"
|
||
},
|
||
"op": {
|
||
"type": "string",
|
||
"enum": [
|
||
"move"
|
||
]
|
||
},
|
||
"path": {
|
||
"pattern": "^(/[^/~]*(~[01][^/~]*)*)*$",
|
||
"type": "string",
|
||
"description": "A JSON Pointer path pointing to the location to move/copy from.",
|
||
"example": "/a/b/c"
|
||
}
|
||
}
|
||
},
|
||
"NavigationPostVo": {
|
||
"type": "object",
|
||
"properties": {
|
||
"current": {
|
||
"$ref": "#/components/schemas/PostVo"
|
||
},
|
||
"next": {
|
||
"$ref": "#/components/schemas/PostVo"
|
||
},
|
||
"previous": {
|
||
"$ref": "#/components/schemas/PostVo"
|
||
}
|
||
},
|
||
"description": "Post navigation vo to hold previous and next item."
|
||
},
|
||
"OwnerInfo": {
|
||
"type": "object",
|
||
"properties": {
|
||
"avatar": {
|
||
"type": "string"
|
||
},
|
||
"displayName": {
|
||
"type": "string"
|
||
},
|
||
"email": {
|
||
"type": "string"
|
||
},
|
||
"kind": {
|
||
"type": "string"
|
||
},
|
||
"name": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"description": "Comment owner info."
|
||
},
|
||
"PostSpec": {
|
||
"required": [
|
||
"allowComment",
|
||
"deleted",
|
||
"excerpt",
|
||
"pinned",
|
||
"priority",
|
||
"publish",
|
||
"slug",
|
||
"title",
|
||
"visible"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"allowComment": {
|
||
"type": "boolean",
|
||
"default": true
|
||
},
|
||
"baseSnapshot": {
|
||
"type": "string"
|
||
},
|
||
"categories": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"cover": {
|
||
"type": "string"
|
||
},
|
||
"deleted": {
|
||
"type": "boolean",
|
||
"default": false
|
||
},
|
||
"excerpt": {
|
||
"$ref": "#/components/schemas/Excerpt"
|
||
},
|
||
"headSnapshot": {
|
||
"type": "string"
|
||
},
|
||
"htmlMetas": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "object",
|
||
"additionalProperties": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"owner": {
|
||
"type": "string"
|
||
},
|
||
"pinned": {
|
||
"type": "boolean",
|
||
"default": false
|
||
},
|
||
"priority": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 0
|
||
},
|
||
"publish": {
|
||
"type": "boolean",
|
||
"default": false
|
||
},
|
||
"publishTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"releaseSnapshot": {
|
||
"type": "string",
|
||
"description": "文章引用到的已发布的内容,用于主题端显示."
|
||
},
|
||
"slug": {
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"tags": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"template": {
|
||
"type": "string"
|
||
},
|
||
"title": {
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"visible": {
|
||
"type": "string",
|
||
"enum": [
|
||
"PUBLIC",
|
||
"INTERNAL",
|
||
"PRIVATE"
|
||
],
|
||
"default": "PUBLIC"
|
||
}
|
||
}
|
||
},
|
||
"PostStatus": {
|
||
"type": "object",
|
||
"properties": {
|
||
"commentsCount": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"conditions": {
|
||
"type": "array",
|
||
"properties": {
|
||
"empty": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"items": {
|
||
"$ref": "#/components/schemas/Condition"
|
||
}
|
||
},
|
||
"contributors": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"excerpt": {
|
||
"type": "string"
|
||
},
|
||
"hideFromList": {
|
||
"type": "boolean",
|
||
"description": "see {@link Category.CategorySpec#isHideFromList Category.CategorySpec#isHideFromList()}."
|
||
},
|
||
"inProgress": {
|
||
"type": "boolean"
|
||
},
|
||
"lastModifyTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"observedVersion": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"permalink": {
|
||
"type": "string"
|
||
},
|
||
"phase": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"PostVo": {
|
||
"required": [
|
||
"metadata"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"categories": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/CategoryVo"
|
||
}
|
||
},
|
||
"content": {
|
||
"$ref": "#/components/schemas/ContentVo"
|
||
},
|
||
"contributors": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ContributorVo"
|
||
}
|
||
},
|
||
"metadata": {
|
||
"$ref": "#/components/schemas/Metadata"
|
||
},
|
||
"owner": {
|
||
"$ref": "#/components/schemas/ContributorVo"
|
||
},
|
||
"spec": {
|
||
"$ref": "#/components/schemas/PostSpec"
|
||
},
|
||
"stats": {
|
||
"$ref": "#/components/schemas/StatsVo"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/PostStatus"
|
||
},
|
||
"tags": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/TagVo"
|
||
}
|
||
}
|
||
},
|
||
"description": "A value object for {@link Post Post}."
|
||
},
|
||
"Ref": {
|
||
"required": [
|
||
"name"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"group": {
|
||
"type": "string",
|
||
"description": "Extension group"
|
||
},
|
||
"kind": {
|
||
"type": "string",
|
||
"description": "Extension kind"
|
||
},
|
||
"name": {
|
||
"type": "string",
|
||
"description": "Extension name. This field is mandatory"
|
||
},
|
||
"version": {
|
||
"type": "string",
|
||
"description": "Extension version"
|
||
}
|
||
},
|
||
"description": "Extension reference object. The name is mandatory"
|
||
},
|
||
"RemoveOperation": {
|
||
"required": [
|
||
"op",
|
||
"path"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"op": {
|
||
"type": "string",
|
||
"enum": [
|
||
"remove"
|
||
]
|
||
},
|
||
"path": {
|
||
"pattern": "^(/[^/~]*(~[01][^/~]*)*)*$",
|
||
"type": "string",
|
||
"description": "A JSON Pointer path pointing to the location to move/copy from.",
|
||
"example": "/a/b/c"
|
||
}
|
||
}
|
||
},
|
||
"ReplaceOperation": {
|
||
"required": [
|
||
"op",
|
||
"path",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"op": {
|
||
"type": "string",
|
||
"enum": [
|
||
"replace"
|
||
]
|
||
},
|
||
"path": {
|
||
"pattern": "^(/[^/~]*(~[01][^/~]*)*)*$",
|
||
"type": "string",
|
||
"description": "A JSON Pointer path pointing to the location to move/copy from.",
|
||
"example": "/a/b/c"
|
||
},
|
||
"value": {
|
||
"description": "Value can be any JSON value"
|
||
}
|
||
}
|
||
},
|
||
"Reply": {
|
||
"required": [
|
||
"apiVersion",
|
||
"kind",
|
||
"metadata",
|
||
"spec",
|
||
"status"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"apiVersion": {
|
||
"type": "string"
|
||
},
|
||
"kind": {
|
||
"type": "string"
|
||
},
|
||
"metadata": {
|
||
"$ref": "#/components/schemas/Metadata"
|
||
},
|
||
"spec": {
|
||
"$ref": "#/components/schemas/ReplySpec"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/ReplyStatus"
|
||
}
|
||
}
|
||
},
|
||
"ReplyRequest": {
|
||
"required": [
|
||
"content",
|
||
"raw"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"allowNotification": {
|
||
"type": "boolean",
|
||
"default": false
|
||
},
|
||
"content": {
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"hidden": {
|
||
"type": "boolean",
|
||
"default": false
|
||
},
|
||
"owner": {
|
||
"$ref": "#/components/schemas/CommentEmailOwner"
|
||
},
|
||
"quoteReply": {
|
||
"type": "string"
|
||
},
|
||
"raw": {
|
||
"minLength": 1,
|
||
"type": "string"
|
||
}
|
||
},
|
||
"description": "A request parameter object for {@link Reply Reply}."
|
||
},
|
||
"ReplySpec": {
|
||
"required": [
|
||
"allowNotification",
|
||
"approved",
|
||
"commentName",
|
||
"content",
|
||
"hidden",
|
||
"owner",
|
||
"priority",
|
||
"raw",
|
||
"top"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"allowNotification": {
|
||
"type": "boolean",
|
||
"default": true
|
||
},
|
||
"approved": {
|
||
"type": "boolean",
|
||
"default": false
|
||
},
|
||
"approvedTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"commentName": {
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"content": {
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"creationTime": {
|
||
"type": "string",
|
||
"description": "The user-defined creation time default is \u003ccode\u003emetadata.creationTimestamp\u003c/code\u003e.",
|
||
"format": "date-time"
|
||
},
|
||
"hidden": {
|
||
"type": "boolean",
|
||
"default": false
|
||
},
|
||
"ipAddress": {
|
||
"type": "string"
|
||
},
|
||
"owner": {
|
||
"$ref": "#/components/schemas/CommentOwner"
|
||
},
|
||
"priority": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 0
|
||
},
|
||
"quoteReply": {
|
||
"type": "string"
|
||
},
|
||
"raw": {
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"top": {
|
||
"type": "boolean",
|
||
"default": false
|
||
},
|
||
"userAgent": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"ReplyStatus": {
|
||
"type": "object",
|
||
"properties": {
|
||
"observedVersion": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
},
|
||
"ReplyVo": {
|
||
"required": [
|
||
"metadata",
|
||
"owner",
|
||
"spec",
|
||
"stats"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"metadata": {
|
||
"$ref": "#/components/schemas/Metadata"
|
||
},
|
||
"owner": {
|
||
"$ref": "#/components/schemas/OwnerInfo"
|
||
},
|
||
"spec": {
|
||
"$ref": "#/components/schemas/ReplySpec"
|
||
},
|
||
"stats": {
|
||
"$ref": "#/components/schemas/CommentStatsVo"
|
||
}
|
||
},
|
||
"description": "A chunk of items."
|
||
},
|
||
"ReplyVoList": {
|
||
"required": [
|
||
"first",
|
||
"hasNext",
|
||
"hasPrevious",
|
||
"items",
|
||
"last",
|
||
"page",
|
||
"size",
|
||
"total",
|
||
"totalPages"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"first": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page is the first page."
|
||
},
|
||
"hasNext": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page has previous page."
|
||
},
|
||
"hasPrevious": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page has previous page."
|
||
},
|
||
"items": {
|
||
"type": "array",
|
||
"description": "A chunk of items.",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ReplyVo"
|
||
}
|
||
},
|
||
"last": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page is the last page."
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "Page number, starts from 1. If not set or equal to 0, it means no pagination.",
|
||
"format": "int32"
|
||
},
|
||
"size": {
|
||
"type": "integer",
|
||
"description": "Size of each page. If not set or equal to 0, it means no pagination.",
|
||
"format": "int32"
|
||
},
|
||
"total": {
|
||
"type": "integer",
|
||
"description": "Total elements.",
|
||
"format": "int64"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "Indicates total pages.",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
},
|
||
"SearchOption": {
|
||
"required": [
|
||
"keyword"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"annotations": {
|
||
"type": "object",
|
||
"additionalProperties": {
|
||
"type": "string"
|
||
},
|
||
"description": "Additional annotations for extending search option by other search engines."
|
||
},
|
||
"filterExposed": {
|
||
"type": "boolean",
|
||
"description": "Whether to filter exposed content. If null, it will not filter."
|
||
},
|
||
"filterPublished": {
|
||
"type": "boolean",
|
||
"description": "Whether to filter published content. If null, it will not filter."
|
||
},
|
||
"filterRecycled": {
|
||
"type": "boolean",
|
||
"description": "Whether to filter recycled content. If null, it will not filter."
|
||
},
|
||
"highlightPostTag": {
|
||
"type": "string",
|
||
"description": "Post HTML tag of highlighted fragment."
|
||
},
|
||
"highlightPreTag": {
|
||
"type": "string",
|
||
"description": "Pre HTML tag of highlighted fragment."
|
||
},
|
||
"includeCategoryNames": {
|
||
"type": "array",
|
||
"description": "Category names to include(and). If null, it will include all categories.",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"includeOwnerNames": {
|
||
"type": "array",
|
||
"description": "Owner names to include(or). If null, it will include all owners.",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"includeTagNames": {
|
||
"type": "array",
|
||
"description": "Tag names to include(and). If null, it will include all tags.",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"includeTypes": {
|
||
"type": "array",
|
||
"description": "Types to include(or). If null, it will include all types.",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"keyword": {
|
||
"minLength": 1,
|
||
"type": "string",
|
||
"description": "Search keyword."
|
||
},
|
||
"limit": {
|
||
"maximum": 1000,
|
||
"minimum": 1,
|
||
"type": "integer",
|
||
"description": "Limit of result.",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"description": "Search option. It is used to control search behavior."
|
||
},
|
||
"SearchResult": {
|
||
"type": "object",
|
||
"properties": {
|
||
"hits": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/HaloDocument"
|
||
}
|
||
},
|
||
"keyword": {
|
||
"type": "string"
|
||
},
|
||
"limit": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"processingTimeMillis": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"total": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
},
|
||
"SinglePageSpec": {
|
||
"required": [
|
||
"allowComment",
|
||
"deleted",
|
||
"excerpt",
|
||
"pinned",
|
||
"priority",
|
||
"publish",
|
||
"slug",
|
||
"title",
|
||
"visible"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"allowComment": {
|
||
"type": "boolean",
|
||
"default": true
|
||
},
|
||
"baseSnapshot": {
|
||
"type": "string"
|
||
},
|
||
"cover": {
|
||
"type": "string"
|
||
},
|
||
"deleted": {
|
||
"type": "boolean",
|
||
"default": false
|
||
},
|
||
"excerpt": {
|
||
"$ref": "#/components/schemas/Excerpt"
|
||
},
|
||
"headSnapshot": {
|
||
"type": "string"
|
||
},
|
||
"htmlMetas": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "object",
|
||
"additionalProperties": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"owner": {
|
||
"type": "string"
|
||
},
|
||
"pinned": {
|
||
"type": "boolean",
|
||
"default": false
|
||
},
|
||
"priority": {
|
||
"type": "integer",
|
||
"format": "int32",
|
||
"default": 0
|
||
},
|
||
"publish": {
|
||
"type": "boolean",
|
||
"default": false
|
||
},
|
||
"publishTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"releaseSnapshot": {
|
||
"type": "string",
|
||
"description": "引用到的已发布的内容,用于主题端显示."
|
||
},
|
||
"slug": {
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"template": {
|
||
"type": "string"
|
||
},
|
||
"title": {
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"visible": {
|
||
"type": "string",
|
||
"enum": [
|
||
"PUBLIC",
|
||
"INTERNAL",
|
||
"PRIVATE"
|
||
],
|
||
"default": "PUBLIC"
|
||
}
|
||
}
|
||
},
|
||
"SinglePageStatus": {
|
||
"type": "object",
|
||
"properties": {
|
||
"commentsCount": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"conditions": {
|
||
"type": "array",
|
||
"properties": {
|
||
"empty": {
|
||
"type": "boolean"
|
||
}
|
||
},
|
||
"items": {
|
||
"$ref": "#/components/schemas/Condition"
|
||
}
|
||
},
|
||
"contributors": {
|
||
"type": "array",
|
||
"items": {
|
||
"type": "string"
|
||
}
|
||
},
|
||
"excerpt": {
|
||
"type": "string"
|
||
},
|
||
"hideFromList": {
|
||
"type": "boolean",
|
||
"description": "see {@link Category.CategorySpec#isHideFromList Category.CategorySpec#isHideFromList()}."
|
||
},
|
||
"inProgress": {
|
||
"type": "boolean"
|
||
},
|
||
"lastModifyTime": {
|
||
"type": "string",
|
||
"format": "date-time"
|
||
},
|
||
"observedVersion": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"permalink": {
|
||
"type": "string"
|
||
},
|
||
"phase": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"SinglePageVo": {
|
||
"required": [
|
||
"metadata"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"content": {
|
||
"$ref": "#/components/schemas/ContentVo"
|
||
},
|
||
"contributors": {
|
||
"type": "array",
|
||
"items": {
|
||
"$ref": "#/components/schemas/ContributorVo"
|
||
}
|
||
},
|
||
"metadata": {
|
||
"$ref": "#/components/schemas/Metadata"
|
||
},
|
||
"owner": {
|
||
"$ref": "#/components/schemas/ContributorVo"
|
||
},
|
||
"spec": {
|
||
"$ref": "#/components/schemas/SinglePageSpec"
|
||
},
|
||
"stats": {
|
||
"$ref": "#/components/schemas/StatsVo"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/SinglePageStatus"
|
||
}
|
||
},
|
||
"description": "A value object for {@link SinglePage SinglePage}."
|
||
},
|
||
"SiteStatsVo": {
|
||
"type": "object",
|
||
"properties": {
|
||
"category": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"comment": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"post": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"upvote": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"visit": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"description": "A value object for site stats."
|
||
},
|
||
"StatsVo": {
|
||
"type": "object",
|
||
"properties": {
|
||
"comment": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"upvote": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"visit": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
},
|
||
"description": "Stats value object."
|
||
},
|
||
"TagSpec": {
|
||
"required": [
|
||
"displayName",
|
||
"slug"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"color": {
|
||
"pattern": "^#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$",
|
||
"type": "string",
|
||
"description": "Color regex explanation.\n \u003cpre\u003e\n ^ # start of the line\n # # start with a number sign `#`\n ( # start of (group 1)\n [a-fA-F0-9]{6} # support z-f, A-F and 0-9, with a length of 6\n | # or\n [a-fA-F0-9]{3} # support z-f, A-F and 0-9, with a length of 3\n ) # end of (group 1)\n $ # end of the line\n \u003c/pre\u003e"
|
||
},
|
||
"cover": {
|
||
"type": "string"
|
||
},
|
||
"displayName": {
|
||
"minLength": 1,
|
||
"type": "string"
|
||
},
|
||
"slug": {
|
||
"minLength": 1,
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"TagStatus": {
|
||
"type": "object",
|
||
"properties": {
|
||
"observedVersion": {
|
||
"type": "integer",
|
||
"format": "int64"
|
||
},
|
||
"permalink": {
|
||
"type": "string"
|
||
},
|
||
"postCount": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"visiblePostCount": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
}
|
||
}
|
||
},
|
||
"TagVo": {
|
||
"required": [
|
||
"metadata"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"metadata": {
|
||
"$ref": "#/components/schemas/Metadata"
|
||
},
|
||
"postCount": {
|
||
"type": "integer",
|
||
"format": "int32"
|
||
},
|
||
"spec": {
|
||
"$ref": "#/components/schemas/TagSpec"
|
||
},
|
||
"status": {
|
||
"$ref": "#/components/schemas/TagStatus"
|
||
}
|
||
},
|
||
"description": "A value object for {@link Tag Tag}."
|
||
},
|
||
"TagVoList": {
|
||
"required": [
|
||
"first",
|
||
"hasNext",
|
||
"hasPrevious",
|
||
"items",
|
||
"last",
|
||
"page",
|
||
"size",
|
||
"total",
|
||
"totalPages"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"first": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page is the first page."
|
||
},
|
||
"hasNext": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page has previous page."
|
||
},
|
||
"hasPrevious": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page has previous page."
|
||
},
|
||
"items": {
|
||
"type": "array",
|
||
"description": "A chunk of items.",
|
||
"items": {
|
||
"$ref": "#/components/schemas/TagVo"
|
||
}
|
||
},
|
||
"last": {
|
||
"type": "boolean",
|
||
"description": "Indicates whether current page is the last page."
|
||
},
|
||
"page": {
|
||
"type": "integer",
|
||
"description": "Page number, starts from 1. If not set or equal to 0, it means no pagination.",
|
||
"format": "int32"
|
||
},
|
||
"size": {
|
||
"type": "integer",
|
||
"description": "Size of each page. If not set or equal to 0, it means no pagination.",
|
||
"format": "int32"
|
||
},
|
||
"total": {
|
||
"type": "integer",
|
||
"description": "Total elements.",
|
||
"format": "int64"
|
||
},
|
||
"totalPages": {
|
||
"type": "integer",
|
||
"description": "Indicates total pages.",
|
||
"format": "int64"
|
||
}
|
||
}
|
||
},
|
||
"TestOperation": {
|
||
"required": [
|
||
"op",
|
||
"path",
|
||
"value"
|
||
],
|
||
"type": "object",
|
||
"properties": {
|
||
"op": {
|
||
"type": "string",
|
||
"enum": [
|
||
"test"
|
||
]
|
||
},
|
||
"path": {
|
||
"pattern": "^(/[^/~]*(~[01][^/~]*)*)*$",
|
||
"type": "string",
|
||
"description": "A JSON Pointer path pointing to the location to move/copy from.",
|
||
"example": "/a/b/c"
|
||
},
|
||
"value": {
|
||
"description": "Value can be any JSON value"
|
||
}
|
||
}
|
||
},
|
||
"VoteRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"group": {
|
||
"type": "string"
|
||
},
|
||
"name": {
|
||
"type": "string"
|
||
},
|
||
"plural": {
|
||
"type": "string"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"securitySchemes": {
|
||
"basicAuth": {
|
||
"scheme": "basic",
|
||
"type": "http"
|
||
},
|
||
"bearerAuth": {
|
||
"bearerFormat": "JWT",
|
||
"scheme": "bearer",
|
||
"type": "http"
|
||
}
|
||
}
|
||
}
|
||
} |