2024-06-25 04:31:25 +00:00
{
"openapi" : "3.0.1" ,
"info" : {
"title" : "Halo" ,
2024-09-02 09:41:37 +00:00
"version" : "2.20.0-SNAPSHOT"
2024-06-25 04:31:25 +00:00
} ,
"servers" : [
{
"url" : "http://localhost:8091" ,
"description" : "Generated server url"
}
] ,
"security" : [
{
"basicAuth" : [ ] ,
"bearerAuth" : [ ]
}
] ,
"paths" : {
"/apis/uc.api.content.halo.run/v1alpha1/attachments" : {
"post" : {
"description" : "Create attachment for the given post." ,
"operationId" : "CreateAttachmentForPost" ,
"parameters" : [
{
"description" : "Wait for permalink." ,
"in" : "query" ,
"name" : "waitForPermalink" ,
"schema" : {
"type" : "boolean"
}
}
] ,
"requestBody" : {
"content" : {
"multipart/form-data" : {
"schema" : {
"$ref" : "#/components/schemas/PostAttachmentRequest"
}
}
}
} ,
"responses" : {
"default" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/Attachment"
}
}
} ,
"description" : "default response"
}
} ,
"tags" : [
"AttachmentV1alpha1Uc"
]
}
} ,
2024-08-26 06:31:14 +00:00
"/apis/uc.api.content.halo.run/v1alpha1/attachments/-/upload-from-url" : {
"post" : {
"description" : "Upload attachment from the given URL." ,
"operationId" : "ExternalTransferAttachment" ,
"parameters" : [
{
"description" : "Wait for permalink." ,
"in" : "query" ,
"name" : "waitForPermalink" ,
"schema" : {
"type" : "boolean"
}
}
] ,
"requestBody" : {
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/UploadFromUrlRequest"
}
}
} ,
"required" : true
} ,
"responses" : {
"default" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/Attachment"
}
}
} ,
"description" : "default response"
}
} ,
"tags" : [
"AttachmentV1alpha1Uc"
]
}
} ,
2024-06-25 04:31:25 +00:00
"/apis/uc.api.content.halo.run/v1alpha1/posts" : {
"get" : {
"description" : "List posts owned by the current user." ,
"operationId" : "ListMyPosts" ,
"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"
}
}
} ,
{
"description" : "Posts filtered by publish phase." ,
"in" : "query" ,
"name" : "publishPhase" ,
"schema" : {
"type" : "string" ,
"enum" : [
"DRAFT" ,
"PENDING_APPROVAL" ,
"PUBLISHED" ,
"FAILED"
]
}
} ,
{
"description" : "Posts filtered by keyword." ,
"in" : "query" ,
"name" : "keyword" ,
"schema" : {
"type" : "string"
}
} ,
{
"description" : "Posts filtered by category including sub-categories." ,
"in" : "query" ,
"name" : "categoryWithChildren" ,
"schema" : {
"type" : "string"
}
}
] ,
"responses" : {
"default" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/ListedPostList"
}
}
} ,
"description" : "default response"
}
} ,
"tags" : [
"PostV1alpha1Uc"
]
} ,
"post" : {
"description" : "Create my post. If you want to create a post with content, please set\n annotation: \"content.halo.run/content-json\" into annotations and refer\n to Content for corresponding data type.\n" ,
"operationId" : "CreateMyPost" ,
"requestBody" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/Post"
}
}
}
} ,
"responses" : {
"default" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/Post"
}
}
} ,
"description" : "default response"
}
} ,
"tags" : [
"PostV1alpha1Uc"
]
}
} ,
"/apis/uc.api.content.halo.run/v1alpha1/posts/{name}" : {
"get" : {
"description" : "Get post that belongs to the current user." ,
"operationId" : "GetMyPost" ,
"parameters" : [
{
"description" : "Post name" ,
"in" : "path" ,
"name" : "name" ,
"required" : true ,
"schema" : {
"type" : "string"
}
}
] ,
"responses" : {
"default" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/Post"
}
}
} ,
"description" : "default response"
}
} ,
"tags" : [
"PostV1alpha1Uc"
]
} ,
"put" : {
"description" : "Update my post." ,
"operationId" : "UpdateMyPost" ,
"parameters" : [
{
"description" : "Post name" ,
"in" : "path" ,
"name" : "name" ,
"required" : true ,
"schema" : {
"type" : "string"
}
}
] ,
"requestBody" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/Post"
}
}
}
} ,
"responses" : {
"default" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/Post"
}
}
} ,
"description" : "default response"
}
} ,
"tags" : [
"PostV1alpha1Uc"
]
}
} ,
"/apis/uc.api.content.halo.run/v1alpha1/posts/{name}/draft" : {
"get" : {
"description" : "Get my post draft." ,
"operationId" : "GetMyPostDraft" ,
"parameters" : [
{
"description" : "Post name" ,
"in" : "path" ,
"name" : "name" ,
"required" : true ,
"schema" : {
"type" : "string"
}
} ,
{
"description" : "Should include patched content and raw or not." ,
"in" : "query" ,
"name" : "patched" ,
"schema" : {
"type" : "boolean"
}
}
] ,
"responses" : {
"default" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/Snapshot"
}
}
} ,
"description" : "default response"
}
} ,
"tags" : [
"PostV1alpha1Uc"
]
} ,
"put" : {
"description" : "Update draft of my post. Please make sure set annotation:\n\"content.halo.run/content-json\" into annotations and refer to\nContent for corresponding data type.\n" ,
"operationId" : "UpdateMyPostDraft" ,
"parameters" : [
{
"description" : "Post name" ,
"in" : "path" ,
"name" : "name" ,
"required" : true ,
"schema" : {
"type" : "string"
}
}
] ,
"requestBody" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/Snapshot"
}
}
}
} ,
"responses" : {
"default" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/Snapshot"
}
}
} ,
"description" : "default response"
}
} ,
"tags" : [
"PostV1alpha1Uc"
]
}
} ,
"/apis/uc.api.content.halo.run/v1alpha1/posts/{name}/publish" : {
"put" : {
"description" : "Publish my post." ,
"operationId" : "PublishMyPost" ,
"parameters" : [
{
"description" : "Post name" ,
"in" : "path" ,
"name" : "name" ,
"required" : true ,
"schema" : {
"type" : "string"
}
}
] ,
"responses" : {
"default" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/Post"
}
}
} ,
"description" : "default response"
}
} ,
"tags" : [
"PostV1alpha1Uc"
]
}
} ,
"/apis/uc.api.content.halo.run/v1alpha1/posts/{name}/unpublish" : {
"put" : {
"description" : "Unpublish my post." ,
"operationId" : "UnpublishMyPost" ,
"parameters" : [
{
"description" : "Post name" ,
"in" : "path" ,
"name" : "name" ,
"required" : true ,
"schema" : {
"type" : "string"
}
}
] ,
"responses" : {
"default" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/Post"
}
}
} ,
"description" : "default response"
}
} ,
"tags" : [
"PostV1alpha1Uc"
]
}
} ,
"/apis/uc.api.content.halo.run/v1alpha1/snapshots/{name}" : {
"get" : {
"description" : "Get snapshot for one post." ,
"operationId" : "GetSnapshotForPost" ,
"parameters" : [
{
"description" : "Snapshot name." ,
"in" : "path" ,
"name" : "name" ,
"required" : true ,
"schema" : {
"type" : "string"
}
} ,
{
"description" : "Post name." ,
"in" : "query" ,
"name" : "postName" ,
"required" : true ,
"schema" : {
"type" : "string"
}
} ,
{
"description" : "Should include patched content and raw or not." ,
"in" : "query" ,
"name" : "patched" ,
"schema" : {
"type" : "boolean"
}
}
] ,
"responses" : {
"default" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/Snapshot"
}
}
} ,
"description" : "default response"
}
} ,
"tags" : [
"SnapshotV1alpha1Uc"
]
}
} ,
"/apis/uc.api.security.halo.run/v1alpha1/authentications/two-factor/settings" : {
"get" : {
"description" : "Get Two-factor authentication settings." ,
"operationId" : "GetTwoFactorAuthenticationSettings" ,
"responses" : {
"default" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/TwoFactorAuthSettings"
}
}
} ,
"description" : "default response"
}
} ,
"tags" : [
"TwoFactorAuthV1alpha1Uc"
]
}
} ,
"/apis/uc.api.security.halo.run/v1alpha1/authentications/two-factor/settings/disabled" : {
"put" : {
"description" : "Disable Two-factor authentication" ,
"operationId" : "DisableTwoFactor" ,
"requestBody" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/PasswordRequest"
}
}
}
} ,
"responses" : {
"default" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/TwoFactorAuthSettings"
}
}
} ,
"description" : "default response"
}
} ,
"tags" : [
"TwoFactorAuthV1alpha1Uc"
]
}
} ,
"/apis/uc.api.security.halo.run/v1alpha1/authentications/two-factor/settings/enabled" : {
"put" : {
"description" : "Enable Two-factor authentication" ,
"operationId" : "EnableTwoFactor" ,
"requestBody" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/PasswordRequest"
}
}
}
} ,
"responses" : {
"default" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/TwoFactorAuthSettings"
}
}
} ,
"description" : "default response"
}
} ,
"tags" : [
"TwoFactorAuthV1alpha1Uc"
]
}
} ,
"/apis/uc.api.security.halo.run/v1alpha1/authentications/two-factor/totp" : {
"post" : {
"description" : "Configure a TOTP" ,
"operationId" : "ConfigurerTotp" ,
"requestBody" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/TotpRequest"
}
}
}
} ,
"responses" : {
"default" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/TwoFactorAuthSettings"
}
}
} ,
"description" : "default response"
}
} ,
"tags" : [
"TwoFactorAuthV1alpha1Uc"
]
}
} ,
"/apis/uc.api.security.halo.run/v1alpha1/authentications/two-factor/totp/-" : {
"delete" : {
"operationId" : "DeleteTotp" ,
"requestBody" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/PasswordRequest"
}
}
}
} ,
"responses" : {
"default" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/TwoFactorAuthSettings"
}
}
} ,
"description" : "default response"
}
} ,
"tags" : [
"TwoFactorAuthV1alpha1Uc"
]
}
} ,
"/apis/uc.api.security.halo.run/v1alpha1/authentications/two-factor/totp/auth-link" : {
"get" : {
"description" : "Get TOTP auth link, including secret" ,
"operationId" : "GetTotpAuthLink" ,
"responses" : {
"default" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/TotpAuthLinkResponse"
}
}
} ,
"description" : "default response"
}
} ,
"tags" : [
"TwoFactorAuthV1alpha1Uc"
]
}
} ,
2024-06-26 10:52:32 +00:00
"/apis/uc.api.security.halo.run/v1alpha1/devices" : {
"get" : {
"description" : "List all user devices" ,
"operationId" : "ListDevices" ,
"responses" : {
"default" : {
"content" : {
"*/*" : {
"schema" : {
"type" : "array" ,
"items" : {
"$ref" : "#/components/schemas/UserDevice"
}
}
}
} ,
"description" : "default response"
}
} ,
"tags" : [
"DeviceV1alpha1Uc"
]
}
} ,
"/apis/uc.api.security.halo.run/v1alpha1/devices/{deviceId}" : {
"delete" : {
"description" : "Revoke a own device" ,
"operationId" : "RevokeDevice" ,
"parameters" : [
{
"description" : "Device ID" ,
"in" : "path" ,
"name" : "deviceId" ,
"required" : true ,
"schema" : {
"type" : "string"
}
}
] ,
"responses" : {
"204 NO_CONTENT" : {
"description" : "default response"
}
} ,
"tags" : [
"DeviceV1alpha1Uc"
]
}
} ,
2024-06-25 04:31:25 +00:00
"/apis/uc.api.security.halo.run/v1alpha1/personalaccesstokens" : {
"get" : {
"description" : "Obtain PAT list." ,
"operationId" : "ObtainPats" ,
"responses" : {
"default" : {
"content" : {
"*/*" : {
"schema" : {
"type" : "array" ,
"items" : {
"$ref" : "#/components/schemas/PersonalAccessToken"
}
}
}
} ,
"description" : "default response"
}
} ,
"tags" : [
"PersonalAccessTokenV1alpha1Uc"
]
} ,
"post" : {
"description" : "Generate a PAT." ,
"operationId" : "GeneratePat" ,
"requestBody" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/PersonalAccessToken"
}
}
} ,
"required" : true
} ,
"responses" : {
"default" : {
"content" : {
"*/*" : {
"schema" : {
"$ref" : "#/components/schemas/PersonalAccessToken"
}
}
} ,
"description" : "default response"
}
} ,
"tags" : [
"PersonalAccessTokenV1alpha1Uc"
]
}
} ,
"/apis/uc.api.security.halo.run/v1alpha1/personalaccesstokens/{name}" : {
"delete" : {
"description" : "Delete a PAT" ,
"operationId" : "DeletePat" ,
"parameters" : [
{
"in" : "path" ,
"name" : "name" ,
"required" : true ,
"schema" : {
"type" : "string"
}
}
] ,
"responses" : { } ,
"tags" : [
"PersonalAccessTokenV1alpha1Uc"
]
} ,
"get" : {
"description" : "Obtain a PAT." ,
"operationId" : "ObtainPat" ,
"parameters" : [
{
"in" : "path" ,
"name" : "name" ,
"required" : true ,
"schema" : {
"type" : "string"
}
}
] ,
"responses" : { } ,
"tags" : [
"PersonalAccessTokenV1alpha1Uc"
]
}
} ,
"/apis/uc.api.security.halo.run/v1alpha1/personalaccesstokens/{name}/actions/restoration" : {
"put" : {
"description" : "Restore a PAT." ,
"operationId" : "RestorePat" ,
"parameters" : [
{
"in" : "path" ,
"name" : "name" ,
"required" : true ,
"schema" : {
"type" : "string"
}
}
] ,
"responses" : { } ,
"tags" : [
"PersonalAccessTokenV1alpha1Uc"
]
}
} ,
"/apis/uc.api.security.halo.run/v1alpha1/personalaccesstokens/{name}/actions/revocation" : {
"put" : {
"description" : "Revoke a PAT" ,
"operationId" : "RevokePat" ,
"parameters" : [
{
"in" : "path" ,
"name" : "name" ,
"required" : true ,
"schema" : {
"type" : "string"
}
}
] ,
"responses" : { } ,
"tags" : [
"PersonalAccessTokenV1alpha1Uc"
]
}
}
} ,
"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"
}
}
} ,
"Attachment" : {
"required" : [
"apiVersion" ,
"kind" ,
"metadata" ,
"spec"
] ,
"type" : "object" ,
"properties" : {
"apiVersion" : {
"type" : "string"
} ,
"kind" : {
"type" : "string"
} ,
"metadata" : {
"$ref" : "#/components/schemas/Metadata"
} ,
"spec" : {
"$ref" : "#/components/schemas/AttachmentSpec"
} ,
"status" : {
"$ref" : "#/components/schemas/AttachmentStatus"
}
}
} ,
"AttachmentSpec" : {
"type" : "object" ,
"properties" : {
"displayName" : {
"type" : "string" ,
"description" : "Display name of attachment"
} ,
"groupName" : {
"type" : "string" ,
"description" : "Group name"
} ,
"mediaType" : {
"type" : "string" ,
"description" : "Media type of attachment"
} ,
"ownerName" : {
"type" : "string" ,
"description" : "Name of User who uploads the attachment"
} ,
"policyName" : {
"type" : "string" ,
"description" : "Policy name"
} ,
"size" : {
"minimum" : 0 ,
"type" : "integer" ,
"description" : "Size of attachment. Unit is Byte" ,
"format" : "int64"
} ,
"tags" : {
"uniqueItems" : true ,
"type" : "array" ,
"description" : "Tags of attachment" ,
"items" : {
"type" : "string" ,
"description" : "Tag name"
}
}
}
} ,
"AttachmentStatus" : {
"type" : "object" ,
"properties" : {
"permalink" : {
"type" : "string" ,
"description" : "Permalink of attachment.\nIf it is in local storage, the public URL will be set.\nIf it is in s3 storage, the Object URL will be set.\n"
2024-08-26 10:27:14 +00:00
} ,
"thumbnails" : {
"type" : "object" ,
"additionalProperties" : {
"type" : "string"
}
2024-06-25 04:31:25 +00:00
}
}
} ,
"Category" : {
"required" : [
"apiVersion" ,
"kind" ,
"metadata" ,
"spec"
] ,
"type" : "object" ,
"properties" : {
"apiVersion" : {
"type" : "string"
} ,
"kind" : {
"type" : "string"
} ,
"metadata" : {
"$ref" : "#/components/schemas/Metadata"
} ,
"spec" : {
"$ref" : "#/components/schemas/CategorySpec"
} ,
"status" : {
"$ref" : "#/components/schemas/CategoryStatus"
}
}
} ,
"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"
} ,
2024-06-26 15:22:51 +00:00
"hideFromList" : {
"type" : "boolean"
} ,
2024-06-25 04:31:25 +00:00
"postTemplate" : {
"maxLength" : 255 ,
"type" : "string"
} ,
"preventParentPostCascadeQuery" : {
"type" : "boolean"
} ,
"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" ,
"format" : "int32"
} ,
"visiblePostCount" : {
"type" : "integer" ,
"format" : "int32"
}
}
} ,
"Condition" : {
"required" : [
"lastTransitionTime" ,
"status" ,
"type"
] ,
"type" : "object" ,
"properties" : {
"lastTransitionTime" : {
"type" : "string" ,
"format" : "date-time"
} ,
"message" : {
"maxLength" : 32768 ,
"type" : "string"
} ,
"reason" : {
"maxLength" : 1024 ,
"pattern" : "^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$" ,
"type" : "string"
} ,
"status" : {
"type" : "string" ,
"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"
}
}
} ,
"Contributor" : {
"type" : "object" ,
"properties" : {
"avatar" : {
"type" : "string"
} ,
"displayName" : {
"type" : "string"
} ,
"name" : {
"type" : "string"
}
}
} ,
"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"
}
}
} ,
2024-06-26 10:52:32 +00:00
"Device" : {
"required" : [
"apiVersion" ,
"kind" ,
"metadata" ,
"spec" ,
"status"
] ,
"type" : "object" ,
"properties" : {
"apiVersion" : {
"type" : "string"
} ,
"kind" : {
"type" : "string"
} ,
"metadata" : {
"$ref" : "#/components/schemas/Metadata"
} ,
"spec" : {
"$ref" : "#/components/schemas/DeviceSpec"
} ,
"status" : {
"$ref" : "#/components/schemas/DeviceStatus"
}
}
} ,
"DeviceSpec" : {
"required" : [
"ipAddress" ,
"principalName" ,
"sessionId"
] ,
"type" : "object" ,
"properties" : {
"ipAddress" : {
"maxLength" : 129 ,
"type" : "string"
} ,
"lastAccessedTime" : {
"type" : "string" ,
"format" : "date-time"
} ,
"lastAuthenticatedTime" : {
"type" : "string" ,
"format" : "date-time"
} ,
"principalName" : {
"minLength" : 1 ,
"type" : "string"
} ,
"rememberMeSeriesId" : {
"type" : "string"
} ,
"sessionId" : {
"minLength" : 1 ,
"type" : "string"
} ,
"userAgent" : {
"maxLength" : 500 ,
"type" : "string"
}
}
} ,
"DeviceStatus" : {
"type" : "object" ,
"properties" : {
"browser" : {
"type" : "string"
} ,
"os" : {
"type" : "string"
}
}
} ,
2024-06-25 04:31:25 +00:00
"Excerpt" : {
"required" : [
"autoGenerate"
] ,
"type" : "object" ,
"properties" : {
"autoGenerate" : {
"type" : "boolean" ,
"default" : true
} ,
"raw" : {
"type" : "string"
}
}
} ,
"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"
}
]
}
} ,
"ListedPost" : {
"required" : [
"categories" ,
"contributors" ,
"owner" ,
"post" ,
"stats" ,
"tags"
] ,
"type" : "object" ,
"properties" : {
"categories" : {
"type" : "array" ,
"items" : {
"$ref" : "#/components/schemas/Category"
}
} ,
"contributors" : {
"type" : "array" ,
"items" : {
"$ref" : "#/components/schemas/Contributor"
}
} ,
"owner" : {
"$ref" : "#/components/schemas/Contributor"
} ,
"post" : {
"$ref" : "#/components/schemas/Post"
} ,
"stats" : {
"$ref" : "#/components/schemas/Stats"
} ,
"tags" : {
"type" : "array" ,
"items" : {
"$ref" : "#/components/schemas/Tag"
}
}
} ,
"description" : "A chunk of items."
} ,
"ListedPostList" : {
"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/ListedPost"
}
} ,
"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"
}
}
} ,
"Metadata" : {
"required" : [
"name"
] ,
"type" : "object" ,
"properties" : {
"annotations" : {
"type" : "object" ,
"additionalProperties" : {
"type" : "string"
}
} ,
"creationTimestamp" : {
"type" : "string" ,
"format" : "date-time" ,
"nullable" : true
} ,
"deletionTimestamp" : {
"type" : "string" ,
"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"
}
} ,
"name" : {
"type" : "string" ,
"description" : "Metadata name"
} ,
"version" : {
"type" : "integer" ,
"format" : "int64" ,
"nullable" : true
}
}
} ,
"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"
}
}
} ,
"PasswordRequest" : {
"required" : [
"password"
] ,
"type" : "object" ,
"properties" : {
"password" : {
"type" : "string"
}
}
} ,
"PatSpec" : {
"required" : [
"name" ,
"tokenId" ,
"username"
] ,
"type" : "object" ,
"properties" : {
"description" : {
"type" : "string"
} ,
"expiresAt" : {
"type" : "string" ,
"format" : "date-time"
} ,
"lastUsed" : {
"type" : "string" ,
"format" : "date-time"
} ,
"name" : {
"type" : "string"
} ,
"revoked" : {
"type" : "boolean"
} ,
"revokesAt" : {
"type" : "string" ,
"format" : "date-time"
} ,
"roles" : {
"type" : "array" ,
"items" : {
"type" : "string"
}
} ,
"scopes" : {
"type" : "array" ,
"items" : {
"type" : "string"
}
} ,
"tokenId" : {
"type" : "string"
} ,
"username" : {
"type" : "string"
}
}
} ,
"PersonalAccessToken" : {
"required" : [
"apiVersion" ,
"kind" ,
"metadata"
] ,
"type" : "object" ,
"properties" : {
"apiVersion" : {
"type" : "string"
} ,
"kind" : {
"type" : "string"
} ,
"metadata" : {
"$ref" : "#/components/schemas/Metadata"
} ,
"spec" : {
"$ref" : "#/components/schemas/PatSpec"
}
}
} ,
"Post" : {
"required" : [
"apiVersion" ,
"kind" ,
"metadata" ,
"spec"
] ,
"type" : "object" ,
"properties" : {
"apiVersion" : {
"type" : "string"
} ,
"kind" : {
"type" : "string"
} ,
"metadata" : {
"$ref" : "#/components/schemas/Metadata"
} ,
"spec" : {
"$ref" : "#/components/schemas/PostSpec"
} ,
"status" : {
"$ref" : "#/components/schemas/PostStatus"
}
}
} ,
"PostAttachmentRequest" : {
"required" : [
"file"
] ,
"type" : "object" ,
"properties" : {
"file" : {
"type" : "string" ,
"format" : "binary"
} ,
"postName" : {
"type" : "string" ,
"description" : "Post name."
} ,
"singlePageName" : {
"type" : "string" ,
"description" : "Single page name."
}
}
} ,
"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"
} ,
"slug" : {
"minLength" : 1 ,
"type" : "string"
} ,
"tags" : {
"type" : "array" ,
"items" : {
"type" : "string"
}
} ,
"template" : {
"type" : "string"
} ,
"title" : {
"minLength" : 1 ,
"type" : "string"
} ,
"visible" : {
"type" : "string" ,
2024-07-25 07:07:37 +00:00
"default" : "PUBLIC" ,
2024-06-25 04:31:25 +00:00
"enum" : [
"PUBLIC" ,
"INTERNAL" ,
"PRIVATE"
2024-07-25 07:07:37 +00:00
]
2024-06-25 04:31:25 +00:00
}
}
} ,
"PostStatus" : {
"required" : [
"phase"
] ,
"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"
} ,
2024-06-26 15:22:51 +00:00
"hideFromList" : {
"type" : "boolean"
} ,
2024-06-25 04:31:25 +00:00
"inProgress" : {
"type" : "boolean"
} ,
"lastModifyTime" : {
"type" : "string" ,
"format" : "date-time"
} ,
"observedVersion" : {
"type" : "integer" ,
"format" : "int64"
} ,
"permalink" : {
"type" : "string"
} ,
"phase" : {
"type" : "string"
}
}
} ,
"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"
}
}
} ,
"SnapShotSpec" : {
"required" : [
"owner" ,
"rawType" ,
"subjectRef"
] ,
"type" : "object" ,
"properties" : {
"contentPatch" : {
"type" : "string"
} ,
"contributors" : {
"uniqueItems" : true ,
"type" : "array" ,
"items" : {
"type" : "string"
}
} ,
"lastModifyTime" : {
"type" : "string" ,
"format" : "date-time"
} ,
"owner" : {
"minLength" : 1 ,
"type" : "string"
} ,
"parentSnapshotName" : {
"type" : "string"
} ,
"rawPatch" : {
"type" : "string"
} ,
"rawType" : {
"maxLength" : 50 ,
"minLength" : 1 ,
"type" : "string"
} ,
"subjectRef" : {
"$ref" : "#/components/schemas/Ref"
}
}
} ,
"Snapshot" : {
"required" : [
"apiVersion" ,
"kind" ,
"metadata" ,
"spec"
] ,
"type" : "object" ,
"properties" : {
"apiVersion" : {
"type" : "string"
} ,
"kind" : {
"type" : "string"
} ,
"metadata" : {
"$ref" : "#/components/schemas/Metadata"
} ,
"spec" : {
"$ref" : "#/components/schemas/SnapShotSpec"
}
}
} ,
"Stats" : {
"type" : "object" ,
"properties" : {
"approvedComment" : {
"type" : "integer" ,
"format" : "int32"
} ,
"totalComment" : {
"type" : "integer" ,
"format" : "int32"
} ,
"upvote" : {
"type" : "integer" ,
"format" : "int32"
} ,
"visit" : {
"type" : "integer" ,
"format" : "int32"
}
}
} ,
"Tag" : {
"required" : [
"apiVersion" ,
"kind" ,
"metadata" ,
"spec"
] ,
"type" : "object" ,
"properties" : {
"apiVersion" : {
"type" : "string"
} ,
"kind" : {
"type" : "string"
} ,
"metadata" : {
"$ref" : "#/components/schemas/Metadata"
} ,
"spec" : {
"$ref" : "#/components/schemas/TagSpec"
} ,
"status" : {
"$ref" : "#/components/schemas/TagStatus"
}
}
} ,
"TagSpec" : {
"required" : [
"displayName" ,
"slug"
] ,
"type" : "object" ,
"properties" : {
"color" : {
"pattern" : "^#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$" ,
"type" : "string"
} ,
"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"
}
}
} ,
"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"
}
}
} ,
"TotpAuthLinkResponse" : {
"type" : "object" ,
"properties" : {
"authLink" : {
"type" : "string" ,
"format" : "uri"
} ,
"rawSecret" : {
"type" : "string"
}
}
} ,
"TotpRequest" : {
"required" : [
"code" ,
"password" ,
"secret"
] ,
"type" : "object" ,
"properties" : {
"code" : {
"type" : "string"
} ,
"password" : {
"type" : "string"
} ,
"secret" : {
"type" : "string"
}
}
} ,
"TwoFactorAuthSettings" : {
"type" : "object" ,
"properties" : {
"available" : {
"type" : "boolean"
} ,
"emailVerified" : {
"type" : "boolean"
} ,
"enabled" : {
"type" : "boolean"
} ,
"totpConfigured" : {
"type" : "boolean"
}
}
2024-06-26 10:52:32 +00:00
} ,
2024-08-26 06:31:14 +00:00
"UploadFromUrlRequest" : {
"required" : [
"url"
] ,
"type" : "object" ,
"properties" : {
"filename" : {
"type" : "string"
} ,
"url" : {
"type" : "string" ,
"format" : "url"
}
}
} ,
2024-06-26 10:52:32 +00:00
"UserDevice" : {
"required" : [
"active" ,
"currentDevice" ,
"device"
] ,
"type" : "object" ,
"properties" : {
"active" : {
"type" : "boolean"
} ,
"currentDevice" : {
"type" : "boolean"
} ,
"device" : {
"$ref" : "#/components/schemas/Device"
}
}
2024-06-25 04:31:25 +00:00
}
} ,
"securitySchemes" : {
"basicAuth" : {
"scheme" : "basic" ,
"type" : "http"
} ,
"bearerAuth" : {
"bearerFormat" : "JWT" ,
"scheme" : "bearer" ,
"type" : "http"
}
}
}
}