mirror of https://github.com/Squidex/squidex.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
23838 lines
642 KiB
23838 lines
642 KiB
{
|
|
"x-generator": "NSwag v14.1.0.0 (NJsonSchema v11.0.2.0 (Newtonsoft.Json v13.0.0.0))",
|
|
"openapi": "3.0.0",
|
|
"info": {
|
|
"title": "Squidex API",
|
|
"version": "1.0.0.0",
|
|
"x-logo": {
|
|
"url": "https://localhost:5001/images/logo-white.png",
|
|
"backgroundStyle": "",
|
|
"backgroundColor": "#3f83df"
|
|
}
|
|
},
|
|
"servers": [
|
|
{
|
|
"url": "https://localhost:5001"
|
|
}
|
|
],
|
|
"paths": {
|
|
"/api/user-management": {
|
|
"get": {
|
|
"tags": [
|
|
"UserManagement"
|
|
],
|
|
"summary": "Get users by query.",
|
|
"operationId": "UserManagement_GetUsers",
|
|
"parameters": [
|
|
{
|
|
"name": "query",
|
|
"in": "query",
|
|
"description": "Optional query to search by email address or username.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "skip",
|
|
"in": "query",
|
|
"description": "The number of users to skip.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32",
|
|
"default": 0
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "take",
|
|
"in": "query",
|
|
"description": "The number of users to return.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32",
|
|
"default": 10
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Users returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UsersDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.admin.users.read"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"UserManagement"
|
|
],
|
|
"summary": "Create a new user.",
|
|
"operationId": "UserManagement_PostUser",
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The user object that needs to be added.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CreateUserDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 1
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "User created.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UserDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "User request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.admin.users.create"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/user-management/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"UserManagement"
|
|
],
|
|
"summary": "Get a user by ID.",
|
|
"operationId": "UserManagement_GetUser",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the user.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "User returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UserDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "User not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.admin.users.read"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"UserManagement"
|
|
],
|
|
"summary": "Update a user.",
|
|
"operationId": "UserManagement_PutUser",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the user.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The user object that needs to be updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpdateUserDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "User created.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UserDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "User request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "User not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.admin.users.update"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"UserManagement"
|
|
],
|
|
"summary": "Delete a User.",
|
|
"operationId": "UserManagement_DeleteUser",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the user to delete.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "User deleted."
|
|
},
|
|
"403": {
|
|
"description": "User is the current user.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "User not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.admin.users.unlock"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/user-management/{id}/lock": {
|
|
"put": {
|
|
"tags": [
|
|
"UserManagement"
|
|
],
|
|
"summary": "Lock a user.",
|
|
"operationId": "UserManagement_LockUser",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the user to lock.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "User locked.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UserDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "User is the current user.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "User not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.admin.users.lock"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/user-management/{id}/unlock": {
|
|
"put": {
|
|
"tags": [
|
|
"UserManagement"
|
|
],
|
|
"summary": "Unlock a user.",
|
|
"operationId": "UserManagement_UnlockUser",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the user to unlock.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "User unlocked.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UserDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"403": {
|
|
"description": "User is the current user.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "User not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.admin.users.unlock"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api": {
|
|
"get": {
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Get the user resources.",
|
|
"operationId": "Users_GetUserResources",
|
|
"responses": {
|
|
"200": {
|
|
"description": "User resources returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ResourcesDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/user": {
|
|
"post": {
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Update the user profile.",
|
|
"operationId": "Users_PostUser",
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The values to update.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpdateProfileDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 1
|
|
},
|
|
"responses": {
|
|
"204": {
|
|
"description": "User updated."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/users": {
|
|
"get": {
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Get users by query.",
|
|
"description": "Search the user by query that contains the email address or the part of the email address.",
|
|
"operationId": "Users_GetUsers",
|
|
"parameters": [
|
|
{
|
|
"name": "query",
|
|
"in": "query",
|
|
"description": "The query to search the user by email address. Case invariant.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Users returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/UserDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/users/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Get user by id.",
|
|
"operationId": "Users_GetUser",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the user (GUID).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "User found.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UserDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "User not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/users/{id}/picture": {
|
|
"get": {
|
|
"tags": [
|
|
"Users"
|
|
],
|
|
"summary": "Get user picture by id.",
|
|
"operationId": "Users_GetUserPicture",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the user (GUID).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "User found and image or fallback returned.",
|
|
"content": {
|
|
"application/octet-stream": {
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "User not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/apps/{app}/translations": {
|
|
"post": {
|
|
"tags": [
|
|
"Translations"
|
|
],
|
|
"summary": "Translate a text.",
|
|
"operationId": "Translations_PostTranslation",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The translation request.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TranslateDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Text translated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TranslationDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.translate"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/templates": {
|
|
"get": {
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Get all templates.",
|
|
"operationId": "Templates_GetTemplates",
|
|
"parameters": [
|
|
{
|
|
"name": "includeDetails",
|
|
"in": "query",
|
|
"description": "Also include the details.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Templates returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TemplatesDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/templates/{name}": {
|
|
"get": {
|
|
"tags": [
|
|
"Templates"
|
|
],
|
|
"summary": "Get template details.",
|
|
"operationId": "Templates_GetTemplate",
|
|
"parameters": [
|
|
{
|
|
"name": "name",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the template.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Template returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TemplateDetailsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Template not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/teams/{team}/contributors": {
|
|
"get": {
|
|
"tags": [
|
|
"Teams"
|
|
],
|
|
"summary": "Get team contributors.",
|
|
"operationId": "TeamContributors_GetContributors",
|
|
"parameters": [
|
|
{
|
|
"name": "team",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the team.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Contributors returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContributorsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Team not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.teams.{team}.contributors.read"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Teams"
|
|
],
|
|
"summary": "Assign contributor to team.",
|
|
"operationId": "TeamContributors_PostContributor",
|
|
"parameters": [
|
|
{
|
|
"name": "team",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the team.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "Contributor object that needs to be added to the team.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AssignContributorDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Contributor assigned to team.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContributorsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Contributor request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Team not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.teams.{team}.contributors.assign"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/teams/{team}/contributors/me": {
|
|
"delete": {
|
|
"tags": [
|
|
"Teams"
|
|
],
|
|
"summary": "Remove yourself.",
|
|
"operationId": "TeamContributors_DeleteMyself",
|
|
"parameters": [
|
|
{
|
|
"name": "team",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the team.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Contributor removed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContributorsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Contributor or team not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/teams/{team}/contributors/{id}": {
|
|
"delete": {
|
|
"tags": [
|
|
"Teams"
|
|
],
|
|
"summary": "Remove contributor.",
|
|
"operationId": "TeamContributors_DeleteContributor",
|
|
"parameters": [
|
|
{
|
|
"name": "team",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the team.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the contributor.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Contributor removed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContributorsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Contributor or team not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.teams.{team}.contributors.revoke"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/teams": {
|
|
"get": {
|
|
"tags": [
|
|
"Teams"
|
|
],
|
|
"summary": "Get your teams.",
|
|
"description": "You can only retrieve the list of teams when you are authenticated as a user (OpenID implicit flow).\nYou will retrieve all teams, where you are assigned as a contributor.",
|
|
"operationId": "Teams_GetTeams",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Teams returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/TeamDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Teams"
|
|
],
|
|
"summary": "Create a new team.",
|
|
"description": "You can only create an team when you are authenticated as a user (OpenID implicit flow).\nYou will be assigned as owner of the new team automatically.",
|
|
"operationId": "Teams_PostTeam",
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The team object that needs to be added to Squidex.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CreateTeamDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 1
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Team created.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TeamDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Team request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/teams/{team}": {
|
|
"get": {
|
|
"tags": [
|
|
"Teams"
|
|
],
|
|
"summary": "Get an team by ID.",
|
|
"operationId": "Teams_GetTeam",
|
|
"parameters": [
|
|
{
|
|
"name": "team",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the team.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Teams returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TeamDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Team not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Teams"
|
|
],
|
|
"summary": "Update the team.",
|
|
"operationId": "Teams_PutTeam",
|
|
"parameters": [
|
|
{
|
|
"name": "team",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the team to update.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The values to update.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpdateTeamDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Team updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TeamDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Team request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Team not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.teams.{team}.update"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Teams"
|
|
],
|
|
"summary": "Delete the team.",
|
|
"operationId": "Teams_DeleteTeam",
|
|
"parameters": [
|
|
{
|
|
"name": "team",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the team to delete.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Team deleted."
|
|
},
|
|
"404": {
|
|
"description": "Team not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.teams.{team}.delete"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/teams/{team}/auth": {
|
|
"get": {
|
|
"tags": [
|
|
"Teams"
|
|
],
|
|
"summary": "Get the team auth settings.",
|
|
"operationId": "Teams_GetTeamAuth",
|
|
"parameters": [
|
|
{
|
|
"name": "team",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the team.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Teams returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AuthSchemeResponseDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Team not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.teams.{team}.auth.read"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Teams"
|
|
],
|
|
"summary": "Update the team auth.",
|
|
"operationId": "Teams_PutTeamAuth",
|
|
"parameters": [
|
|
{
|
|
"name": "team",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the team to update.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The values to update.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AuthSchemeValueDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Team updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AuthSchemeResponseDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Team request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Team not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.teams.{team}.auth.change"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/usages/log": {
|
|
"get": {
|
|
"tags": [
|
|
"Statistics"
|
|
],
|
|
"summary": "Get api calls as log file.",
|
|
"operationId": "Usages_GetLog",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Usage tracking results returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/LogDownloadDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.usage"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/usages/calls/{fromDate}/{toDate}": {
|
|
"get": {
|
|
"tags": [
|
|
"Statistics"
|
|
],
|
|
"summary": "Get api calls in date range for app.",
|
|
"operationId": "Usages_GetUsages",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "fromDate",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The from date.",
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "date"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "toDate",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The to date.",
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "date"
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "API call returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CallsUsageDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.usage"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/teams/{team}/usages/calls/{fromDate}/{toDate}": {
|
|
"get": {
|
|
"tags": [
|
|
"Statistics"
|
|
],
|
|
"summary": "Get api calls in date range for team.",
|
|
"operationId": "Usages_GetUsagesForTeam",
|
|
"parameters": [
|
|
{
|
|
"name": "team",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the team.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "fromDate",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The from date.",
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "date"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "toDate",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The to date.",
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "date"
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "API call returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CallsUsageDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Team not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.teams.{team}.usage"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/usages/storage/today": {
|
|
"get": {
|
|
"tags": [
|
|
"Statistics"
|
|
],
|
|
"summary": "Get total asset size for app.",
|
|
"operationId": "Usages_GetCurrentStorageSize",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Storage usage returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CurrentStorageDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.usage"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/teams/{team}/usages/storage/today": {
|
|
"get": {
|
|
"tags": [
|
|
"Statistics"
|
|
],
|
|
"summary": "Get total asset size for team.",
|
|
"operationId": "Usages_GetTeamCurrentStorageSizeForTeam",
|
|
"parameters": [
|
|
{
|
|
"name": "team",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the team.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Storage usage returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CurrentStorageDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Team not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.teams.{team}.usage"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/usages/storage/{fromDate}/{toDate}": {
|
|
"get": {
|
|
"tags": [
|
|
"Statistics"
|
|
],
|
|
"summary": "Get asset usage by date for app.",
|
|
"operationId": "Usages_GetStorageSizes",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "fromDate",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The from date.",
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "date"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "toDate",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The to date.",
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "date"
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Storage usage returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/StorageUsagePerDateDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.usage"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/teams/{team}/usages/storage/{fromDate}/{toDate}": {
|
|
"get": {
|
|
"tags": [
|
|
"Statistics"
|
|
],
|
|
"summary": "Get asset usage by date for team.",
|
|
"operationId": "Usages_GetStorageSizesForTeam",
|
|
"parameters": [
|
|
{
|
|
"name": "team",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the team.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "fromDate",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The from date.",
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "date"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "toDate",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The to date.",
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "date"
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Storage usage returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/StorageUsagePerDateDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Team not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.teams.{team}.usage"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/search": {
|
|
"get": {
|
|
"tags": [
|
|
"Search"
|
|
],
|
|
"summary": "Get search results.",
|
|
"operationId": "Search_GetSearchResults",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "query",
|
|
"in": "query",
|
|
"description": "The search query.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Search results returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/SearchResultDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.search"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/fields": {
|
|
"post": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Add a schema field.",
|
|
"operationId": "SchemaFields_PostField",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The field object that needs to be added to the schema.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AddFieldDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Schema field created.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema or app not found."
|
|
},
|
|
"409": {
|
|
"description": "Schema field name already in use.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/fields/{parentId}/nested": {
|
|
"post": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Add a nested field.",
|
|
"operationId": "SchemaFields_PostNestedField",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "parentId",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The parent field id.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The field object that needs to be added to the schema.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AddFieldDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 4
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Schema field created.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"409": {
|
|
"description": "Schema field name already in use.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema, field or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/fields/ui": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Configure UI fields.",
|
|
"operationId": "SchemaFields_PutSchemaUIFields",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The request that contains the field names.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ConfigureUIFieldsDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema UI fields defined.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/fields/ordering": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Reorder all fields.",
|
|
"operationId": "SchemaFields_PutSchemaFieldOrdering",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The request that contains the field ids.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ReorderFieldsDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema fields reordered.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/fields/{parentId}/nested/ordering": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Reorder all nested fields.",
|
|
"operationId": "SchemaFields_PutNestedFieldOrdering",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "parentId",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The parent field id.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The request that contains the field ids.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ReorderFieldsDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 4
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema fields reordered.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema field request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema, field or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/fields/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Update a schema field.",
|
|
"operationId": "SchemaFields_PutField",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the field to update.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The field object that needs to be added to the schema.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpdateFieldDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 4
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema field updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema field request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema, field or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Delete a schema field.",
|
|
"operationId": "SchemaFields_DeleteField",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the field to disable.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema field deleted.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema field request not valid or field locked.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema, field or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/fields/{parentId}/nested/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Update a nested field.",
|
|
"operationId": "SchemaFields_PutNestedField",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "parentId",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The parent field id.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the field to update.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 4
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The field object that needs to be added to the schema.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpdateFieldDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 5
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema field updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema field request not valid or field locked.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema, field or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Delete a nested field.",
|
|
"operationId": "SchemaFields_DeleteNestedField",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "parentId",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The parent field id.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the field to disable.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 4
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema field deleted.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema field request not valid or field locked.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema, field or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/fields/{id}/lock": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Lock a schema field.",
|
|
"description": "A locked field cannot be updated or deleted.",
|
|
"operationId": "SchemaFields_LockField",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the field to lock.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema field shown.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema field request not valid or field locked.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema, field or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/fields/{parentId}/nested/{id}/lock": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Lock a nested field.",
|
|
"description": "A locked field cannot be edited or deleted.",
|
|
"operationId": "SchemaFields_LockNestedField",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "parentId",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The parent field id.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the field to lock.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 4
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema field hidden.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema field request not valid or field locked.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Field, schema, or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/fields/{id}/hide": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Hide a schema field.",
|
|
"description": "A hidden field is not part of the API response, but can still be edited in the portal.",
|
|
"operationId": "SchemaFields_HideField",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the field to hide.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema field hidden.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema field request not valid or field locked.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema, field or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/fields/{parentId}/nested/{id}/hide": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Hide a nested field.",
|
|
"description": "A hidden field is not part of the API response, but can still be edited in the portal.",
|
|
"operationId": "SchemaFields_HideNestedField",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "parentId",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The parent field id.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the field to hide.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 4
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema field hidden.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema field request not valid or field locked.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Field, schema, or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/fields/{id}/show": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Show a schema field.",
|
|
"description": "A hidden field is not part of the API response, but can still be edited in the portal.",
|
|
"operationId": "SchemaFields_ShowField",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the field to show.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema field shown.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema field request not valid or field locked.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema, field or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/fields/{parentId}/nested/{id}/show": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Show a nested field.",
|
|
"description": "A hidden field is not part of the API response, but can still be edited in the portal.",
|
|
"operationId": "SchemaFields_ShowNestedField",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "parentId",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The parent field id.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the field to show.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 4
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema field shown.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema field request not valid or field locked.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema, field or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/fields/{id}/enable": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Enable a schema field.",
|
|
"description": "A disabled field cannot not be edited in the squidex portal anymore, but will be part of the API response.",
|
|
"operationId": "SchemaFields_EnableField",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the field to enable.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema field enabled.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema field request not valid or field locked.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema, field or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/fields/{parentId}/nested/{id}/enable": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Enable a nested field.",
|
|
"description": "A disabled field cannot not be edited in the squidex portal anymore, but will be part of the API response.",
|
|
"operationId": "SchemaFields_EnableNestedField",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "parentId",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The parent field id.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the field to enable.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 4
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema field enabled.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema field request not valid or field locked.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema, field or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/fields/{id}/disable": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Disable a schema field.",
|
|
"description": "A disabled field cannot not be edited in the squidex portal anymore, but will be part of the API response.",
|
|
"operationId": "SchemaFields_DisableField",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the field to disable.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema field disabled.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema field request not valid or field locked.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema, field or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/fields/{parentId}/nested/{id}/disable": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Disable a nested field.",
|
|
"description": "A disabled field cannot not be edited in the squidex portal anymore, but will be part of the API response.",
|
|
"operationId": "SchemaFields_DisableNestedField",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "parentId",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The parent field id.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the field to disable.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 4
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema field disabled.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema field request not valid or field locked.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema, field or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/indexes": {
|
|
"get": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Gets the schema indexes.",
|
|
"operationId": "SchemaIndexes_GetIndexes",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema indexes returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/IndexesDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.indexes"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Create a schema indexes.",
|
|
"operationId": "SchemaIndexes_PostIndex",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The request object that represents an index.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CreateIndexDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"204": {
|
|
"description": ""
|
|
},
|
|
"404": {
|
|
"description": "Schema or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.indexes"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/indexes/{name}": {
|
|
"delete": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Create a schema indexes.",
|
|
"operationId": "SchemaIndexes_DeleteIndex",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "name",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the index.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Schema index deletion added to job queue."
|
|
},
|
|
"404": {
|
|
"description": "Schema or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.indexes"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas": {
|
|
"get": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Get schemas.",
|
|
"operationId": "Schemas_GetSchemas",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schemas returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemasDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.read"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Create a new schema.",
|
|
"operationId": "Schemas_PostSchema",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The schema object that needs to be added to the app.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CreateSchemaDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Schema created.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"409": {
|
|
"description": "Schema name already in use.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.create"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}": {
|
|
"get": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Get a schema by name.",
|
|
"operationId": "Schemas_GetSchema",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema to retrieve.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema found.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.read"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Update a schema.",
|
|
"operationId": "Schemas_PutSchema",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The schema object that needs to updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpdateSchemaDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Delete a schema.",
|
|
"operationId": "Schemas_DeleteSchema",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema to delete.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "permanent",
|
|
"in": "query",
|
|
"description": "True to delete the schema and the contents permanently.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Schema deleted."
|
|
},
|
|
"404": {
|
|
"description": "Schema or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.delete"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/generate": {
|
|
"post": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Generate a new schema.",
|
|
"operationId": "Schemas_PostSchemaGenerate",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The schema object that needs to be added to the app.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/GenerateSchemaDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Schema created.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/GenerateSchemaResponseDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"409": {
|
|
"description": "Schema name already in use.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.create"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/sync": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Synchronize a schema.",
|
|
"operationId": "Schemas_PutSchemaSync",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The schema object that needs to updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SynchronizeSchemaDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/category": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Update a schema category.",
|
|
"operationId": "Schemas_PutCategory",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The schema object that needs to updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ChangeCategoryDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/preview-urls": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Update the preview urls.",
|
|
"operationId": "Schemas_PutPreviewUrls",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The preview urls for the schema.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ConfigurePreviewUrlsDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/scripts": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Update the scripts.",
|
|
"operationId": "Schemas_PutScripts",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The schema scripts object that needs to updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaScriptsDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.scripts"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/rules": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Update the rules.",
|
|
"operationId": "Schemas_PutRules",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The schema rules object that needs to updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ConfigureFieldRulesDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Schema request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/publish": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Publish a schema.",
|
|
"operationId": "Schemas_PublishSchema",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema to publish.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema published.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.publish"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/schemas/{schema}/unpublish": {
|
|
"put": {
|
|
"tags": [
|
|
"Schemas"
|
|
],
|
|
"summary": "Unpublish a schema.",
|
|
"operationId": "Schemas_UnpublishSchema",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema to unpublish.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Schema unpublished.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.schemas.{schema}.publish"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/rules/steps": {
|
|
"get": {
|
|
"tags": [
|
|
"Rules"
|
|
],
|
|
"summary": "Get supported rule steps.",
|
|
"operationId": "Rules_GetSteps",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Rule actions returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/RuleElementDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/rules": {
|
|
"get": {
|
|
"tags": [
|
|
"Rules"
|
|
],
|
|
"summary": "Get rules.",
|
|
"operationId": "Rules_GetRules",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Rules returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RulesDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.rules.read"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Rules"
|
|
],
|
|
"summary": "Create a new rule.",
|
|
"operationId": "Rules_PostRule",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The rule object that needs to be added to the app.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CreateRuleDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Rule created.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RuleDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Rule request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.rules.create"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/rules/run": {
|
|
"delete": {
|
|
"tags": [
|
|
"Rules"
|
|
],
|
|
"summary": "Cancel the current run.",
|
|
"operationId": "Rules_DeleteRuleRun",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Rule run cancelled."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.rules.events.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/rules/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Rules"
|
|
],
|
|
"summary": "Update a rule.",
|
|
"operationId": "Rules_PutRule",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the rule to update.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The rule object that needs to be added to the app.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpdateRuleDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Rule updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RuleDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Rule request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Rule or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.rules.update"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Rules"
|
|
],
|
|
"summary": "Delete a rule.",
|
|
"operationId": "Rules_DeleteRule",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the rule to delete.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Rule deleted."
|
|
},
|
|
"404": {
|
|
"description": "Rule or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.rules.delete"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/rules/{id}/enable": {
|
|
"put": {
|
|
"tags": [
|
|
"Rules"
|
|
],
|
|
"summary": "Enable a rule.",
|
|
"operationId": "Rules_EnableRule",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the rule to enable.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Rule enabled.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RuleDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Rule or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.rules.disable"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/rules/{id}/disable": {
|
|
"put": {
|
|
"tags": [
|
|
"Rules"
|
|
],
|
|
"summary": "Disable a rule.",
|
|
"operationId": "Rules_DisableRule",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the rule to disable.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Rule disabled.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RuleDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Rule or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.rules.disable"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/rules/{id}/trigger": {
|
|
"put": {
|
|
"tags": [
|
|
"Rules"
|
|
],
|
|
"summary": "Trigger a rule.",
|
|
"operationId": "Rules_TriggerRule",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the rule to disable.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The arguments for the rule flow.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TriggerRuleDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"204": {
|
|
"description": "Rule triggered."
|
|
},
|
|
"404": {
|
|
"description": "Rule or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.rules.events.run"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/rules/{id}/run": {
|
|
"put": {
|
|
"tags": [
|
|
"Rules"
|
|
],
|
|
"summary": "Run a rule.",
|
|
"operationId": "Rules_PutRuleRun",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the rule to run.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "fromSnapshots",
|
|
"in": "query",
|
|
"description": "Runs the rule from snapeshots if possible.",
|
|
"schema": {
|
|
"type": "boolean",
|
|
"default": false
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Rule started."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.rules.events.run"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/rules/{id}/events": {
|
|
"delete": {
|
|
"tags": [
|
|
"Rules"
|
|
],
|
|
"summary": "Cancels all rule events.",
|
|
"operationId": "Rules_DeleteRuleEvents",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the rule to cancel.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Rule events cancelled."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.rules.events.delete"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/rules/validate/trigger": {
|
|
"post": {
|
|
"tags": [
|
|
"Rules"
|
|
],
|
|
"summary": "Validates a rule trigger.",
|
|
"operationId": "Rules_ValidateTrigger",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The rule trigger that needs to be validate.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RuleTriggerDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"204": {
|
|
"description": "Rule trigger validated."
|
|
},
|
|
"400": {
|
|
"description": "Rule trigger not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Rule or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/rules/validate/step": {
|
|
"post": {
|
|
"tags": [
|
|
"Rules"
|
|
],
|
|
"summary": "Validates a rule step.",
|
|
"operationId": "Rules_ValidateStep",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The rule step that needs to be validate.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"204": {
|
|
"description": "Rule step validated."
|
|
},
|
|
"400": {
|
|
"description": "Rule step not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Rule or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/rules/simulate": {
|
|
"post": {
|
|
"tags": [
|
|
"Rules"
|
|
],
|
|
"summary": "Simulate a rule.",
|
|
"operationId": "Rules_SimulatePOST",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The rule to simulate.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CreateRuleDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Rule simulated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SimulatedRuleEventsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Rule or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.rules.events.read"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/rules/{id}/simulate": {
|
|
"get": {
|
|
"tags": [
|
|
"Rules"
|
|
],
|
|
"summary": "Simulate a rule.",
|
|
"operationId": "Rules_SimulateGET",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the rule to simulate.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Rule simulated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SimulatedRuleEventsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Rule or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.rules.events.read"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/rules/events": {
|
|
"get": {
|
|
"tags": [
|
|
"Rules"
|
|
],
|
|
"summary": "Get rule events.",
|
|
"operationId": "Rules_GetEvents",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "ruleId",
|
|
"in": "query",
|
|
"description": "The optional rule id to filter to events.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "skip",
|
|
"in": "query",
|
|
"description": "The number of events to skip.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32",
|
|
"default": 0
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "take",
|
|
"in": "query",
|
|
"description": "The number of events to take.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32",
|
|
"default": 20
|
|
},
|
|
"x-position": 4
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Rule events returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RuleEventsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.rules.events.read"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Rules"
|
|
],
|
|
"summary": "Cancels all events.",
|
|
"operationId": "Rules_DeleteEvents",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Events cancelled."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.rules.events.delete"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/rules/events/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Rules"
|
|
],
|
|
"summary": "Retry the event immediately.",
|
|
"operationId": "Rules_PutEvent",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The event to enqueue.",
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "guid"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Rule enqueued."
|
|
},
|
|
"404": {
|
|
"description": "App or rule event not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.rules.events.update"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Rules"
|
|
],
|
|
"summary": "Cancels an event.",
|
|
"operationId": "Rules_DeleteEvent",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The event to cancel.",
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "guid"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Rule event cancelled."
|
|
},
|
|
"404": {
|
|
"description": "App or rule event not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/rules/eventtypes": {
|
|
"get": {
|
|
"tags": [
|
|
"Rules"
|
|
],
|
|
"summary": "Provide a list of all event types that are used in rules.",
|
|
"operationId": "Rules_GetEventTypes",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Rule events returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/rules/eventtypes/{type}": {
|
|
"get": {
|
|
"tags": [
|
|
"Rules"
|
|
],
|
|
"summary": "Provide the json schema for the event with the specified name.",
|
|
"operationId": "Rules_GetEventSchema",
|
|
"parameters": [
|
|
{
|
|
"name": "type",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The type name of the event.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Rule event type found.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Rule event not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/apps/{app}/plans": {
|
|
"get": {
|
|
"tags": [
|
|
"Plans"
|
|
],
|
|
"summary": "Get app plan information.",
|
|
"operationId": "AppPlans_GetPlans",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "App plan information returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/PlansDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.plans.read"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/plan": {
|
|
"put": {
|
|
"tags": [
|
|
"Plans"
|
|
],
|
|
"summary": "Change the app plan.",
|
|
"operationId": "AppPlans_PutPlan",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "Plan object that needs to be changed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ChangePlanDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Plan changed or redirect url returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/PlanChangedDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Plan not owned by user.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.plans.change"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/teams/{team}/plans": {
|
|
"get": {
|
|
"tags": [
|
|
"Plans"
|
|
],
|
|
"summary": "Get team plan information.",
|
|
"operationId": "TeamPlans_GetTeamPlans",
|
|
"parameters": [
|
|
{
|
|
"name": "team",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the team.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Team plan information returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/PlansDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Team not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.teams.{team}.plans.read"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/teams/{team}/plan": {
|
|
"put": {
|
|
"tags": [
|
|
"Plans"
|
|
],
|
|
"summary": "Change the team plan.",
|
|
"operationId": "TeamPlans_PutTeamPlan",
|
|
"parameters": [
|
|
{
|
|
"name": "team",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the team.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "Plan object that needs to be changed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ChangePlanDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Plan changed or redirect url returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/PlanChangedDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Team not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.teams.{team}.plans.change"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/info": {
|
|
"get": {
|
|
"tags": [
|
|
"Ping"
|
|
],
|
|
"summary": "Get API information.",
|
|
"operationId": "Ping_GetInfo",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Infos returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ExposedValues"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/ping": {
|
|
"get": {
|
|
"tags": [
|
|
"Ping"
|
|
],
|
|
"summary": "Get ping status of the API.",
|
|
"description": "Can be used to test, if the Squidex API is alive and responding.",
|
|
"operationId": "Ping_GetPing",
|
|
"responses": {
|
|
"204": {
|
|
"description": "Service ping successful."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/ping/{app}": {
|
|
"get": {
|
|
"tags": [
|
|
"Ping"
|
|
],
|
|
"summary": "Get ping status.",
|
|
"description": "Can be used to test, if the Squidex API is alive and responding.",
|
|
"operationId": "Ping_GetAppPing",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Service ping successful."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.ping"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/news/features": {
|
|
"get": {
|
|
"tags": [
|
|
"News"
|
|
],
|
|
"summary": "Get features since version.",
|
|
"operationId": "News_GetNews",
|
|
"parameters": [
|
|
{
|
|
"name": "version",
|
|
"in": "query",
|
|
"description": "The latest received version.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32",
|
|
"default": 0
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Latest features returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FeaturesDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/languages": {
|
|
"get": {
|
|
"tags": [
|
|
"Languages"
|
|
],
|
|
"summary": "Get supported languages.",
|
|
"description": "Provide a list of supported language codes, following the ISO2Code standard.",
|
|
"operationId": "Languages_GetLanguages",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Supported language codes returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/LanguageDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/jobs/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Jobs"
|
|
],
|
|
"summary": "Get the job content.",
|
|
"operationId": "JobsContent_GetJobContent",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the job.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "appId",
|
|
"in": "query",
|
|
"description": "The ID of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Job found and content returned.",
|
|
"content": {
|
|
"application/octet-stream": {
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Job or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/apps/{app}/jobs": {
|
|
"get": {
|
|
"tags": [
|
|
"Jobs"
|
|
],
|
|
"summary": "Get all jobs.",
|
|
"operationId": "Jobs_GetJobs",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Jobs returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/JobsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.jobs.read"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/jobs/{id}": {
|
|
"delete": {
|
|
"tags": [
|
|
"Jobs"
|
|
],
|
|
"summary": "Delete a job.",
|
|
"operationId": "Jobs_DeleteJob",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the jobs to delete.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Job deleted."
|
|
},
|
|
"404": {
|
|
"description": "Job or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.jobs.delete"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/history": {
|
|
"get": {
|
|
"tags": [
|
|
"History"
|
|
],
|
|
"summary": "Get the app history.",
|
|
"operationId": "History_GetAppHistory",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "channel",
|
|
"in": "query",
|
|
"description": "The name of the channel.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Events returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/HistoryEventDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.history"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/teams/{team}/history": {
|
|
"get": {
|
|
"tags": [
|
|
"History"
|
|
],
|
|
"summary": "Get the team history.",
|
|
"operationId": "History_GetTeamHistory",
|
|
"parameters": [
|
|
{
|
|
"name": "team",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the team.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "channel",
|
|
"in": "query",
|
|
"description": "The name of the channel.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Events returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/HistoryEventDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Team not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.teams.{team}.history"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/event-consumers": {
|
|
"get": {
|
|
"tags": [
|
|
"EventConsumers"
|
|
],
|
|
"summary": "Get event consumers.",
|
|
"operationId": "EventConsumers_GetEventConsumers",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Event consumers returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/EventConsumersDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.admin.events.read"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/event-consumers/{consumerName}/start": {
|
|
"put": {
|
|
"tags": [
|
|
"EventConsumers"
|
|
],
|
|
"summary": "Start an event consumer.",
|
|
"operationId": "EventConsumers_StartEventConsumer",
|
|
"parameters": [
|
|
{
|
|
"name": "consumerName",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the event consumer.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Event consumer started asynchronously.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/EventConsumerDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Event consumer not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.admin.events.manage"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/event-consumers/{consumerName}/stop": {
|
|
"put": {
|
|
"tags": [
|
|
"EventConsumers"
|
|
],
|
|
"summary": "Stop an event consumer.",
|
|
"operationId": "EventConsumers_StopEventConsumer",
|
|
"parameters": [
|
|
{
|
|
"name": "consumerName",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the event consumer.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Event consumer stopped asynchronously.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/EventConsumerDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Event consumer not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.admin.events.manage"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/event-consumers/{consumerName}/reset": {
|
|
"put": {
|
|
"tags": [
|
|
"EventConsumers"
|
|
],
|
|
"summary": "Reset an event consumer.",
|
|
"operationId": "EventConsumers_ResetEventConsumer",
|
|
"parameters": [
|
|
{
|
|
"name": "consumerName",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the event consumer.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Event consumer resetted asynchronously.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/EventConsumerDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Event consumer not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.admin.events.manage"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/diagnostics/dump": {
|
|
"get": {
|
|
"tags": [
|
|
"Diagnostics"
|
|
],
|
|
"summary": "Creates a dump and writes it into storage..",
|
|
"operationId": "Diagnostics_GetDump",
|
|
"responses": {
|
|
"204": {
|
|
"description": "Dump created successful."
|
|
},
|
|
"501": {
|
|
"description": "Not configured.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.admin.*"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/diagnostics/gcdump": {
|
|
"get": {
|
|
"tags": [
|
|
"Diagnostics"
|
|
],
|
|
"summary": "Creates a gc dump and writes it into storage.",
|
|
"operationId": "Diagnostics_GetGCDump",
|
|
"responses": {
|
|
"204": {
|
|
"description": "Dump created successful."
|
|
},
|
|
"501": {
|
|
"description": "Not configured.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.admin.*"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/content/{app}/{schema}": {
|
|
"get": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Queries contents.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "Contents_GetContents",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "ids",
|
|
"in": "query",
|
|
"description": "The optional ids of the content to fetch.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "q",
|
|
"in": "query",
|
|
"description": "The optional json query.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "$search",
|
|
"in": "query",
|
|
"description": "Optional number of items to skip.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 4
|
|
},
|
|
{
|
|
"name": "$top",
|
|
"in": "query",
|
|
"description": "Optional number of items to take.",
|
|
"schema": {
|
|
"type": "number"
|
|
},
|
|
"x-position": 5
|
|
},
|
|
{
|
|
"name": "$skip",
|
|
"in": "query",
|
|
"description": "Optional number of items to skip.",
|
|
"schema": {
|
|
"type": "number"
|
|
},
|
|
"x-position": 6
|
|
},
|
|
{
|
|
"name": "$orderby",
|
|
"in": "query",
|
|
"description": "Optional OData order definition.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 7
|
|
},
|
|
{
|
|
"name": "$filter",
|
|
"in": "query",
|
|
"description": "Optional OData filter.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 8
|
|
},
|
|
{
|
|
"name": "X-Fields",
|
|
"in": "header",
|
|
"description": "The list of content fields (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 9
|
|
},
|
|
{
|
|
"name": "X-Flatten",
|
|
"in": "header",
|
|
"description": "Provide the data as flat object.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 10
|
|
},
|
|
{
|
|
"name": "X-Languages",
|
|
"in": "header",
|
|
"description": "The list of languages to resolve (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 11
|
|
},
|
|
{
|
|
"name": "X-NoSlowTotal",
|
|
"in": "header",
|
|
"description": "Do not return the total amount, if it would be slow.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 12
|
|
},
|
|
{
|
|
"name": "X-NoTotal",
|
|
"in": "header",
|
|
"description": "Do not return the total amount.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 13
|
|
},
|
|
{
|
|
"name": "X-Unpublished",
|
|
"in": "header",
|
|
"description": "Return unpublished content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 14
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Contents returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContentsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Create a content item.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "Contents_PostContent",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "status",
|
|
"in": "query",
|
|
"description": "The initial status.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "query",
|
|
"description": "The optional custom content id.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 4
|
|
},
|
|
{
|
|
"name": "publish",
|
|
"in": "query",
|
|
"description": "True to automatically publish the content.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 5
|
|
},
|
|
{
|
|
"name": "X-Unpublished",
|
|
"in": "header",
|
|
"description": "Return unpublished content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 6
|
|
},
|
|
{
|
|
"name": "X-Languages",
|
|
"in": "header",
|
|
"description": "The list of languages to resolve (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 7
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "Data",
|
|
"description": "The full data for the content item.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContentData"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Content created.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContentDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Content request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Content, schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.contents.{schema}.create"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/content/{app}/{schema}/query": {
|
|
"post": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Queries contents.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "Contents_GetContentsPost",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "X-Fields",
|
|
"in": "header",
|
|
"description": "The list of content fields (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "X-Flatten",
|
|
"in": "header",
|
|
"description": "Provide the data as flat object.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 4
|
|
},
|
|
{
|
|
"name": "X-Languages",
|
|
"in": "header",
|
|
"description": "The list of languages to resolve (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 5
|
|
},
|
|
{
|
|
"name": "X-NoSlowTotal",
|
|
"in": "header",
|
|
"description": "Do not return the total amount, if it would be slow.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 6
|
|
},
|
|
{
|
|
"name": "X-NoTotal",
|
|
"in": "header",
|
|
"description": "Do not return the total amount.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 7
|
|
},
|
|
{
|
|
"name": "X-Unpublished",
|
|
"in": "header",
|
|
"description": "Return unpublished content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 8
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "query",
|
|
"description": "The required query object.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/QueryDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Contents returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContentsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Schema or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/content/{app}/{schema}/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Get a content item.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "Contents_GetContent",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the content to fetch.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "version",
|
|
"in": "query",
|
|
"description": "The optional version.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64",
|
|
"default": -2
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "X-Fields",
|
|
"in": "header",
|
|
"description": "The list of content fields (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 4
|
|
},
|
|
{
|
|
"name": "X-Flatten",
|
|
"in": "header",
|
|
"description": "Provide the data as flat object.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 5
|
|
},
|
|
{
|
|
"name": "X-Languages",
|
|
"in": "header",
|
|
"description": "The list of languages to resolve (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 6
|
|
},
|
|
{
|
|
"name": "X-Unpublished",
|
|
"in": "header",
|
|
"description": "Return unpublished content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 7
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Content returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContentDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Content, schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Upsert a content item.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "Contents_PostUpsertContent",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the content item to update.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "status",
|
|
"in": "query",
|
|
"description": "The initial status.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 4
|
|
},
|
|
{
|
|
"name": "patch",
|
|
"in": "query",
|
|
"description": "Makes the update as patch.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 5
|
|
},
|
|
{
|
|
"name": "enrichDefaults",
|
|
"in": "query",
|
|
"description": "Enrich the content with defaults.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 6
|
|
},
|
|
{
|
|
"name": "publish",
|
|
"in": "query",
|
|
"description": "True to automatically publish the content.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 7
|
|
},
|
|
{
|
|
"name": "X-Unpublished",
|
|
"in": "header",
|
|
"description": "Return unpublished content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 8
|
|
},
|
|
{
|
|
"name": "X-Languages",
|
|
"in": "header",
|
|
"description": "The list of languages to resolve (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 9
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "Data",
|
|
"description": "The full data for the content item.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContentData"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Content created or updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContentDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Content request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Content references, schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.contents.{schema}.upsert"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Update a content item.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "Contents_PutContent",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the content item to update.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "enrichDefaults",
|
|
"in": "query",
|
|
"description": "Enrich the content with defaults.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 4
|
|
},
|
|
{
|
|
"name": "X-Unpublished",
|
|
"in": "header",
|
|
"description": "Return unpublished content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 5
|
|
},
|
|
{
|
|
"name": "X-Languages",
|
|
"in": "header",
|
|
"description": "The list of languages to resolve (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 6
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "Data",
|
|
"description": "The full data for the content item.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContentData"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Content updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContentDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Content request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Content references, schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.contents.{schema}.update.own"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"patch": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Patchs a content item.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "Contents_PatchContent",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the content item to patch.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "X-Unpublished",
|
|
"in": "header",
|
|
"description": "Return unpublished content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 4
|
|
},
|
|
{
|
|
"name": "X-Languages",
|
|
"in": "header",
|
|
"description": "The list of languages to resolve (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 5
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The patch for the content item.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContentData"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Content patched.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContentDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Content request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Content, schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.contents.{schema}.update.own"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Delete a content item.",
|
|
"description": "You can create an generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "Contents_DeleteContent",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the content item to delete.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "checkReferrers",
|
|
"in": "query",
|
|
"description": "True to check referrers of this content.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 4
|
|
},
|
|
{
|
|
"name": "permanent",
|
|
"in": "query",
|
|
"description": "True to delete the content permanently.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 5
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Content deleted."
|
|
},
|
|
"400": {
|
|
"description": "Content cannot be deleted.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Content, schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.contents.{schema}.delete.own"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/content/{app}/{schema}/{id}/validity": {
|
|
"get": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Get a content item validity.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "Contents_GetContentValidity",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the content to fetch.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Content is valid."
|
|
},
|
|
"400": {
|
|
"description": "Content not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Content, schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/content/{app}/{schema}/{id}/references": {
|
|
"get": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Get all references of a content.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "Contents_GetReferences",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the content to fetch.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "q",
|
|
"in": "query",
|
|
"description": "The optional json query.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "X-Fields",
|
|
"in": "header",
|
|
"description": "The list of content fields (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 4
|
|
},
|
|
{
|
|
"name": "X-Flatten",
|
|
"in": "header",
|
|
"description": "Provide the data as flat object.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 5
|
|
},
|
|
{
|
|
"name": "X-Languages",
|
|
"in": "header",
|
|
"description": "The list of languages to resolve (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 6
|
|
},
|
|
{
|
|
"name": "X-Unpublished",
|
|
"in": "header",
|
|
"description": "Return unpublished content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 7
|
|
},
|
|
{
|
|
"name": "X-NoSlowTotal",
|
|
"in": "header",
|
|
"description": "Do not return the total amount, if it would be slow.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 8
|
|
},
|
|
{
|
|
"name": "X-NoTotal",
|
|
"in": "header",
|
|
"description": "Do not return the total amount.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 9
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Contents returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContentsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Content, schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/content/{app}/{schema}/{id}/referencing": {
|
|
"get": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Get a referencing contents of a content item.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "Contents_GetReferencing",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the content to fetch.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "q",
|
|
"in": "query",
|
|
"description": "The optional json query.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "X-Fields",
|
|
"in": "header",
|
|
"description": "The list of content fields (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 4
|
|
},
|
|
{
|
|
"name": "X-Flatten",
|
|
"in": "header",
|
|
"description": "Provide the data as flat object.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 5
|
|
},
|
|
{
|
|
"name": "X-Languages",
|
|
"in": "header",
|
|
"description": "The list of languages to resolve (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 6
|
|
},
|
|
{
|
|
"name": "X-Unpublished",
|
|
"in": "header",
|
|
"description": "Return unpublished content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 7
|
|
},
|
|
{
|
|
"name": "X-NoSlowTotal",
|
|
"in": "header",
|
|
"description": "Do not return the total amount, if it would be slow.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 8
|
|
},
|
|
{
|
|
"name": "X-NoTotal",
|
|
"in": "header",
|
|
"description": "Do not return the total amount.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 9
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Content returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContentsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Content, schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/content/{app}/{schema}/{id}/{version}": {
|
|
"get": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Get a content by version.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "Contents_GetContentVersion",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the content to fetch.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "version",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The version fo the content to fetch.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "X-Unpublished",
|
|
"in": "header",
|
|
"description": "Return unpublished content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 4
|
|
},
|
|
{
|
|
"name": "X-Languages",
|
|
"in": "header",
|
|
"description": "The list of languages to resolve (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 5
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Content version returned.",
|
|
"content": {
|
|
"application/octet-stream": {
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Content, schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"deprecated": true,
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.contents.{schema}.read.own"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/content/{app}/{schema}/import": {
|
|
"post": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Import content items.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "Contents_PostContents",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The import request.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ImportContentsDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Contents created.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/BulkResultDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Content request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Content references, schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"deprecated": true,
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.contents.{schema}.create"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/content/{app}/{schema}/bulk": {
|
|
"post": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Bulk update content items.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "Contents_BulkUpdateContents",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The bulk update request.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/BulkUpdateContentsDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/BulkResultDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Contents request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Contents references, schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.contents.{schema}.read.own"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/content/{app}/{schema}/{id}/defaults": {
|
|
"put": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Enrich a content item with defaults.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "Contents_PutContentDefaults",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the content item to update.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "enrichRequiredFields",
|
|
"in": "query",
|
|
"description": "True, to also enrich required fields. Default: false.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "X-Unpublished",
|
|
"in": "header",
|
|
"description": "Return unpublished content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 4
|
|
},
|
|
{
|
|
"name": "X-Languages",
|
|
"in": "header",
|
|
"description": "The list of languages to resolve (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 5
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Content updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContentDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Content references, schema or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.contents.{schema}.update.own"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/content/{app}/{schema}/{id}/status": {
|
|
"put": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Change status of a content item.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "Contents_PutContentStatus",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the content item to change.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "X-Unpublished",
|
|
"in": "header",
|
|
"description": "Return unpublished content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 4
|
|
},
|
|
{
|
|
"name": "X-Languages",
|
|
"in": "header",
|
|
"description": "The list of languages to resolve (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 5
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The status request.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ChangeStatusDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Content status changed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContentDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Content request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Content, schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.contents.{schema}.changestatus.own"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Cancel status change of a content item.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "Contents_DeleteContentStatus",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the content item to cancel.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "X-Unpublished",
|
|
"in": "header",
|
|
"description": "Return unpublished content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "X-Languages",
|
|
"in": "header",
|
|
"description": "The list of languages to resolve (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 4
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Content status change cancelled.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContentDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Content request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Content, schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.contents.{schema}.changestatus.own"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/content/{app}/{schema}/{id}/draft": {
|
|
"post": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Create a new draft version.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "Contents_CreateDraft",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the content item to create the draft for.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "X-Unpublished",
|
|
"in": "header",
|
|
"description": "Return unpublished content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "X-Languages",
|
|
"in": "header",
|
|
"description": "The list of languages to resolve (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 4
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Content draft created.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContentDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Content, schema or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.contents.{schema}.version.create.own"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Delete the draft version.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "Contents_DeleteVersion",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the content item to delete the draft from.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "X-Unpublished",
|
|
"in": "header",
|
|
"description": "Return unpublished content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "X-Languages",
|
|
"in": "header",
|
|
"description": "The list of languages to resolve (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 4
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Content draft deleted.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContentDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Content, schema or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.contents.{schema}.version.delete.own"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/content/{app}/graphql": {
|
|
"get": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "GraphQL endpoint.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "ContentsShared_GetGraphQL",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "The query string",
|
|
"in": "query",
|
|
"description": "The optional version of the asset.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "variables",
|
|
"in": "query",
|
|
"description": "The optional operation variables.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "operationName",
|
|
"in": "query",
|
|
"description": "The optional operation name.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "X-Unpublished",
|
|
"in": "header",
|
|
"description": "Return unpublished content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 4
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Contents returned or mutated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "GraphQL endpoint.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "ContentsShared_PostGraphQL",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "X-Unpublished",
|
|
"in": "header",
|
|
"description": "Return unpublished content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The graphql request.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"x-position": 1
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Contents returned or mutated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/content/{app}/graphql/batch": {
|
|
"get": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "GraphQL batch endpoint.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "ContentsShared_GetGraphQLBatch",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "The query string",
|
|
"in": "query",
|
|
"description": "The optional version of the asset.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "variables",
|
|
"in": "query",
|
|
"description": "The optional operation variables.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "operationName",
|
|
"in": "query",
|
|
"description": "The optional operation name.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "X-Unpublished",
|
|
"in": "header",
|
|
"description": "Return unpublished content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 4
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Contents returned or mutated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "GraphQL batch endpoint.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "ContentsShared_PostGraphQLBatch",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "X-Unpublished",
|
|
"in": "header",
|
|
"description": "Return unpublished content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The graphql request.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"x-position": 1
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Contents returned or mutated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/content/{app}": {
|
|
"get": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Queries contents.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "ContentsShared_GetAllContents",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "ids",
|
|
"in": "query",
|
|
"description": "The list of ids to query.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "scheduledFrom",
|
|
"in": "query",
|
|
"description": "The start time of the scheduled content period (see scheduledTo).",
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"nullable": true
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "scheduledTo",
|
|
"in": "query",
|
|
"description": "The end time of the scheduled content period (see scheduledFrom).",
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"nullable": true
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "referencing",
|
|
"in": "query",
|
|
"description": "The ID of the referencing content item.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 4
|
|
},
|
|
{
|
|
"name": "references",
|
|
"in": "query",
|
|
"description": "The ID of the reference content item.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 5
|
|
},
|
|
{
|
|
"name": "q",
|
|
"in": "query",
|
|
"description": "The optional json query.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 6
|
|
},
|
|
{
|
|
"name": "X-Fields",
|
|
"in": "header",
|
|
"description": "The list of content fields (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 7
|
|
},
|
|
{
|
|
"name": "X-Flatten",
|
|
"in": "header",
|
|
"description": "Provide the data as flat object.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 8
|
|
},
|
|
{
|
|
"name": "X-Languages",
|
|
"in": "header",
|
|
"description": "The list of languages to resolve (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 9
|
|
},
|
|
{
|
|
"name": "X-NoSlowTotal",
|
|
"in": "header",
|
|
"description": "Do not return the total amount, if it would be slow.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 10
|
|
},
|
|
{
|
|
"name": "X-NoTotal",
|
|
"in": "header",
|
|
"description": "Do not return the total amount.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 11
|
|
},
|
|
{
|
|
"name": "X-Unpublished",
|
|
"in": "header",
|
|
"description": "Return unpublished content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 12
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Contents returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContentsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Queries contents.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "ContentsShared_GetAllContentsPost",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "X-Fields",
|
|
"in": "header",
|
|
"description": "The list of content fields (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "X-Flatten",
|
|
"in": "header",
|
|
"description": "Provide the data as flat object.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "X-Languages",
|
|
"in": "header",
|
|
"description": "The list of languages to resolve (comma-separated).",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 4
|
|
},
|
|
{
|
|
"name": "X-NoSlowTotal",
|
|
"in": "header",
|
|
"description": "Do not return the total amount, if it would be slow.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 5
|
|
},
|
|
{
|
|
"name": "X-NoTotal",
|
|
"in": "header",
|
|
"description": "Do not return the total amount.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 6
|
|
},
|
|
{
|
|
"name": "X-Unpublished",
|
|
"in": "header",
|
|
"description": "Return unpublished content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 7
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "query",
|
|
"description": "The required query object.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AllContentsByPostDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 1
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Contents returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContentsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/content/{app}/bulk": {
|
|
"post": {
|
|
"tags": [
|
|
"Contents"
|
|
],
|
|
"summary": "Bulk update content items.",
|
|
"description": "You can read the generated documentation for your app at /api/content/{appName}/docs.",
|
|
"operationId": "ContentsShared_BulkUpdateAllContents",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "schema",
|
|
"in": "query",
|
|
"description": "The name of the schema.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The bulk update request.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/BulkUpdateContentsDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/BulkResultDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Contents request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Contents references, schema or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.contents.{schema}.read.own"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/backups/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Backups"
|
|
],
|
|
"summary": "Get the backup content.",
|
|
"operationId": "BackupContent_GetBackupContent",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the backup.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Backup found and content returned.",
|
|
"content": {
|
|
"application/octet-stream": {
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Backup or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"deprecated": true
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Backups"
|
|
],
|
|
"summary": "Delete a backup.",
|
|
"operationId": "Backups_DeleteBackup",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the backup to delete.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Backup deleted."
|
|
},
|
|
"404": {
|
|
"description": "Backup or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"deprecated": true,
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.jobs.delete"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/backups/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Backups"
|
|
],
|
|
"summary": "Get the backup content.",
|
|
"operationId": "BackupContent_GetBackupContentV2",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the backup.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "appId",
|
|
"in": "query",
|
|
"description": "The ID of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "app",
|
|
"in": "query",
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string",
|
|
"default": ""
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Backup found and content returned.",
|
|
"content": {
|
|
"application/octet-stream": {
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Backup or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"deprecated": true
|
|
}
|
|
},
|
|
"/api/apps/{app}/backups": {
|
|
"get": {
|
|
"tags": [
|
|
"Backups"
|
|
],
|
|
"summary": "Get all backup jobs.",
|
|
"operationId": "Backups_GetBackups",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Backups returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/BackupJobsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"deprecated": true,
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.jobs.read"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Backups"
|
|
],
|
|
"summary": "Start a new backup.",
|
|
"operationId": "Backups_PostBackup",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Backup started."
|
|
},
|
|
"400": {
|
|
"description": "Backup contingent reached.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.jobs.create"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/restore": {
|
|
"get": {
|
|
"tags": [
|
|
"Backups"
|
|
],
|
|
"summary": "Get current restore status.",
|
|
"operationId": "Restore_GetRestoreJob",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Status returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RestoreJobDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.admin.restore"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Backups"
|
|
],
|
|
"summary": "Restore a backup.",
|
|
"operationId": "Restore_PostRestoreJob",
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The backup to restore.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RestoreRequestDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 1
|
|
},
|
|
"responses": {
|
|
"204": {
|
|
"description": "Restore operation started."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.admin.restore"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/assets/{app}/{idOrSlug}/{more}": {
|
|
"get": {
|
|
"tags": [
|
|
"Assets"
|
|
],
|
|
"summary": "Get the asset content.",
|
|
"operationId": "AssetContent_GetAssetContentBySlug",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "idOrSlug",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The id or slug of the asset.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "version",
|
|
"in": "query",
|
|
"description": "The optional version of the asset.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "cache",
|
|
"in": "query",
|
|
"description": "The cache duration in seconds.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 4
|
|
},
|
|
{
|
|
"name": "download",
|
|
"in": "query",
|
|
"description": "Set it to 0 to prevent download.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"x-position": 5
|
|
},
|
|
{
|
|
"name": "width",
|
|
"in": "query",
|
|
"description": "The target width of the asset, if it is an image.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"x-position": 6
|
|
},
|
|
{
|
|
"name": "height",
|
|
"in": "query",
|
|
"description": "The target height of the asset, if it is an image.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"x-position": 7
|
|
},
|
|
{
|
|
"name": "quality",
|
|
"in": "query",
|
|
"description": "Optional image quality, it is is an jpeg image.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"x-position": 8
|
|
},
|
|
{
|
|
"name": "mode",
|
|
"in": "query",
|
|
"description": "The resize mode when the width and height is defined.",
|
|
"schema": {
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/ResizeMode"
|
|
},
|
|
"x-position": 9
|
|
},
|
|
{
|
|
"name": "bg",
|
|
"in": "query",
|
|
"description": "Optional background color.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 10
|
|
},
|
|
{
|
|
"name": "focusX",
|
|
"in": "query",
|
|
"description": "Override the y focus point.",
|
|
"schema": {
|
|
"type": "number",
|
|
"format": "float",
|
|
"nullable": true
|
|
},
|
|
"x-position": 11
|
|
},
|
|
{
|
|
"name": "focusY",
|
|
"in": "query",
|
|
"description": "Override the x focus point.",
|
|
"schema": {
|
|
"type": "number",
|
|
"format": "float",
|
|
"nullable": true
|
|
},
|
|
"x-position": 12
|
|
},
|
|
{
|
|
"name": "nofocus",
|
|
"in": "query",
|
|
"description": "True to ignore the asset focus point if any.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 13
|
|
},
|
|
{
|
|
"name": "auto",
|
|
"in": "query",
|
|
"description": "True to use auto format.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 14
|
|
},
|
|
{
|
|
"name": "force",
|
|
"in": "query",
|
|
"description": "True to force a new resize even if it already stored.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 15
|
|
},
|
|
{
|
|
"name": "deleted",
|
|
"in": "query",
|
|
"description": "Also return deleted content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 16
|
|
},
|
|
{
|
|
"name": "format",
|
|
"in": "query",
|
|
"description": "True to force a new resize even if it already stored.",
|
|
"schema": {
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/ImageFormat"
|
|
},
|
|
"x-position": 17
|
|
},
|
|
{
|
|
"name": "watermarkUrl",
|
|
"in": "query",
|
|
"description": "Adds the image with the given URL on to of your image. If the watermark cannot be loaded or found, the watermark is just ignored.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 18
|
|
},
|
|
{
|
|
"name": "watermarkOpacity",
|
|
"in": "query",
|
|
"description": "The opacity of the watermark image.",
|
|
"schema": {
|
|
"type": "number",
|
|
"format": "float"
|
|
},
|
|
"x-position": 19
|
|
},
|
|
{
|
|
"name": "watermarkAnchor",
|
|
"in": "query",
|
|
"description": "The anchor where the watermark should be placed.",
|
|
"schema": {
|
|
"$ref": "#/components/schemas/WatermarkAnchor"
|
|
},
|
|
"x-position": 20
|
|
},
|
|
{
|
|
"name": "more",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "Optional suffix that can be used to seo-optimize the link to the image Has not effect.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 21
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Asset found and content or (resized) image returned.",
|
|
"content": {
|
|
"application/octet-stream": {
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Asset or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/assets/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Assets"
|
|
],
|
|
"summary": "Get the asset content.",
|
|
"operationId": "AssetContent_GetAssetContent",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the asset.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "version",
|
|
"in": "query",
|
|
"description": "The optional version of the asset.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "cache",
|
|
"in": "query",
|
|
"description": "The cache duration in seconds.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "download",
|
|
"in": "query",
|
|
"description": "Set it to 0 to prevent download.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"x-position": 4
|
|
},
|
|
{
|
|
"name": "width",
|
|
"in": "query",
|
|
"description": "The target width of the asset, if it is an image.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"x-position": 5
|
|
},
|
|
{
|
|
"name": "height",
|
|
"in": "query",
|
|
"description": "The target height of the asset, if it is an image.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"x-position": 6
|
|
},
|
|
{
|
|
"name": "quality",
|
|
"in": "query",
|
|
"description": "Optional image quality, it is is an jpeg image.",
|
|
"schema": {
|
|
"type": "integer",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"x-position": 7
|
|
},
|
|
{
|
|
"name": "mode",
|
|
"in": "query",
|
|
"description": "The resize mode when the width and height is defined.",
|
|
"schema": {
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/ResizeMode"
|
|
},
|
|
"x-position": 8
|
|
},
|
|
{
|
|
"name": "bg",
|
|
"in": "query",
|
|
"description": "Optional background color.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 9
|
|
},
|
|
{
|
|
"name": "focusX",
|
|
"in": "query",
|
|
"description": "Override the y focus point.",
|
|
"schema": {
|
|
"type": "number",
|
|
"format": "float",
|
|
"nullable": true
|
|
},
|
|
"x-position": 10
|
|
},
|
|
{
|
|
"name": "focusY",
|
|
"in": "query",
|
|
"description": "Override the x focus point.",
|
|
"schema": {
|
|
"type": "number",
|
|
"format": "float",
|
|
"nullable": true
|
|
},
|
|
"x-position": 11
|
|
},
|
|
{
|
|
"name": "nofocus",
|
|
"in": "query",
|
|
"description": "True to ignore the asset focus point if any.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 12
|
|
},
|
|
{
|
|
"name": "auto",
|
|
"in": "query",
|
|
"description": "True to use auto format.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 13
|
|
},
|
|
{
|
|
"name": "force",
|
|
"in": "query",
|
|
"description": "True to force a new resize even if it already stored.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 14
|
|
},
|
|
{
|
|
"name": "deleted",
|
|
"in": "query",
|
|
"description": "Also return deleted content items.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 15
|
|
},
|
|
{
|
|
"name": "format",
|
|
"in": "query",
|
|
"description": "True to force a new resize even if it already stored.",
|
|
"schema": {
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/ImageFormat"
|
|
},
|
|
"x-position": 16
|
|
},
|
|
{
|
|
"name": "watermarkUrl",
|
|
"in": "query",
|
|
"description": "Adds the image with the given URL on to of your image. If the watermark cannot be loaded or found, the watermark is just ignored.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 17
|
|
},
|
|
{
|
|
"name": "watermarkOpacity",
|
|
"in": "query",
|
|
"description": "The opacity of the watermark image.",
|
|
"schema": {
|
|
"type": "number",
|
|
"format": "float"
|
|
},
|
|
"x-position": 18
|
|
},
|
|
{
|
|
"name": "watermarkAnchor",
|
|
"in": "query",
|
|
"description": "The anchor where the watermark should be placed.",
|
|
"schema": {
|
|
"$ref": "#/components/schemas/WatermarkAnchor"
|
|
},
|
|
"x-position": 19
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Asset found and content or (resized) image returned.",
|
|
"content": {
|
|
"application/octet-stream": {
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Asset or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"deprecated": true,
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/assets/folders": {
|
|
"get": {
|
|
"tags": [
|
|
"Assets"
|
|
],
|
|
"summary": "Get asset folders.",
|
|
"description": "Get all asset folders for the app.",
|
|
"operationId": "AssetFolders_GetAssetFolders",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "parentId",
|
|
"in": "query",
|
|
"description": "The optional parent folder id.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "scope",
|
|
"in": "query",
|
|
"description": "The scope of the query.",
|
|
"schema": {
|
|
"default": "PathAndItems",
|
|
"$ref": "#/components/schemas/AssetFolderScope"
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Asset folders returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AssetFoldersDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.assets.read"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Assets"
|
|
],
|
|
"summary": "Create an asset folder.",
|
|
"operationId": "AssetFolders_PostAssetFolder",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The asset folder object that needs to be added to the App.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CreateAssetFolderDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Asset folder created.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AssetFolderDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Asset folder request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.assets.folders.create"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/assets/folders/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Assets"
|
|
],
|
|
"summary": "Update an asset folder.",
|
|
"operationId": "AssetFolders_PutAssetFolder",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the asset folder.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The asset folder object that needs to updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RenameAssetFolderDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Asset folder updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AssetFolderDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Asset folder request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Asset folder or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.assets.folders.update"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Assets"
|
|
],
|
|
"summary": "Delete an asset folder.",
|
|
"operationId": "AssetFolders_DeleteAssetFolder",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the asset folder to delete.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Asset folder deleted."
|
|
},
|
|
"404": {
|
|
"description": "Asset folder or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.assets.folders.delete"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/assets/folders/{id}/parent": {
|
|
"put": {
|
|
"tags": [
|
|
"Assets"
|
|
],
|
|
"summary": "Move an asset folder.",
|
|
"operationId": "AssetFolders_PutAssetFolderParent",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the asset folder.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The asset folder object that needs to updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/MoveAssetFolderDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Asset folder moved.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AssetFolderDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Asset folder request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Asset folder or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.assets.folders.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/assets/tags": {
|
|
"get": {
|
|
"tags": [
|
|
"Assets"
|
|
],
|
|
"summary": "Get assets tags.",
|
|
"description": "Get all tags for assets.",
|
|
"operationId": "Assets_GetTags",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Assets tags returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.assets.read"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/assets/tags/{name}": {
|
|
"put": {
|
|
"tags": [
|
|
"Assets"
|
|
],
|
|
"summary": "Rename an asset tag.",
|
|
"operationId": "Assets_PutTag",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "name",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The tag to return.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The required request object.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RenameTagDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Asset tag renamed and new tags returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.assets.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/assets": {
|
|
"get": {
|
|
"tags": [
|
|
"Assets"
|
|
],
|
|
"summary": "Get assets.",
|
|
"description": "Get all assets for the app.",
|
|
"operationId": "Assets_GetAssets",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "parentId",
|
|
"in": "query",
|
|
"description": "The optional parent folder id.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "ids",
|
|
"in": "query",
|
|
"description": "The optional asset ids.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "q",
|
|
"in": "query",
|
|
"description": "The optional json query.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "$top",
|
|
"in": "query",
|
|
"description": "Optional number of items to take.",
|
|
"schema": {
|
|
"type": "number"
|
|
},
|
|
"x-position": 4
|
|
},
|
|
{
|
|
"name": "$skip",
|
|
"in": "query",
|
|
"description": "Optional number of items to skip.",
|
|
"schema": {
|
|
"type": "number"
|
|
},
|
|
"x-position": 5
|
|
},
|
|
{
|
|
"name": "$orderby",
|
|
"in": "query",
|
|
"description": "Optional OData order definition.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 6
|
|
},
|
|
{
|
|
"name": "$filter",
|
|
"in": "query",
|
|
"description": "Optional OData filter.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 7
|
|
},
|
|
{
|
|
"name": "X-NoTotal",
|
|
"in": "header",
|
|
"description": "Do not return the total amount.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 8
|
|
},
|
|
{
|
|
"name": "X-NoSlowTotal",
|
|
"in": "header",
|
|
"description": "Do not return the total amount, if it would be slow.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 9
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Assets returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AssetsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.assets.read"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Assets"
|
|
],
|
|
"summary": "Upload a new asset.",
|
|
"description": "You can only upload one file at a time. The mime type of the file is not calculated by Squidex and is required correctly.",
|
|
"operationId": "Assets_PostAsset",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "ParentId",
|
|
"in": "query",
|
|
"description": "The optional parent folder id.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "query",
|
|
"description": "The optional custom asset id.",
|
|
"schema": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "duplicate",
|
|
"in": "query",
|
|
"description": "True to duplicate the asset, event if the file has been uploaded.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 4
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"file": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Asset created.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AssetDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Asset request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"413": {
|
|
"description": "Asset exceeds the maximum upload size.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.assets.create"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/assets/query": {
|
|
"post": {
|
|
"tags": [
|
|
"Assets"
|
|
],
|
|
"summary": "Get assets.",
|
|
"description": "Get all assets for the app.",
|
|
"operationId": "Assets_GetAssetsPost",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 0
|
|
},
|
|
{
|
|
"name": "X-NoTotal",
|
|
"in": "header",
|
|
"description": "Do not return the total amount.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "X-NoSlowTotal",
|
|
"in": "header",
|
|
"description": "Do not return the total amount, if it would be slow.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 3
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "query",
|
|
"description": "The required query object.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/QueryDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 1
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Assets returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AssetsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.assets.read"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/assets/{id}": {
|
|
"get": {
|
|
"tags": [
|
|
"Assets"
|
|
],
|
|
"summary": "Get an asset by id.",
|
|
"operationId": "Assets_GetAsset",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the asset to retrieve.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Asset found.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AssetDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Asset or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.assets.read"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Assets"
|
|
],
|
|
"summary": "Upsert an asset.",
|
|
"description": "You can only upload one file at a time. The mime type of the file is not calculated by Squidex and is required correctly.",
|
|
"operationId": "Assets_PostUpsertAsset",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The optional custom asset id.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "parentId",
|
|
"in": "query",
|
|
"description": "The optional parent folder id.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "duplicate",
|
|
"in": "query",
|
|
"description": "True to duplicate the asset, event if the file has been uploaded.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 4
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"file": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Asset created or updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AssetDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Asset request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"413": {
|
|
"description": "Asset exceeds the maximum upload size.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.assets.create"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Assets"
|
|
],
|
|
"summary": "Update an asset.",
|
|
"operationId": "Assets_PutAsset",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the asset.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The asset object that needs to updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AnnotateAssetDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Asset updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AssetDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Asset request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Asset or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.assets.update"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Assets"
|
|
],
|
|
"summary": "Delete an asset.",
|
|
"operationId": "Assets_DeleteAsset",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the asset to delete.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
},
|
|
{
|
|
"name": "checkReferrers",
|
|
"in": "query",
|
|
"description": "True to check referrers of this asset.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 3
|
|
},
|
|
{
|
|
"name": "permanent",
|
|
"in": "query",
|
|
"description": "True to delete the asset permanently.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 4
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Asset deleted."
|
|
},
|
|
"404": {
|
|
"description": "Asset or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.assets.delete"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/assets/bulk": {
|
|
"post": {
|
|
"tags": [
|
|
"Assets"
|
|
],
|
|
"summary": "Bulk update assets.",
|
|
"operationId": "Assets_BulkUpdateAssets",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The bulk update request.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/BulkUpdateAssetsDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Assets created, update or delete.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/BulkResultDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Assets request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.assets.read"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/assets/{id}/content": {
|
|
"put": {
|
|
"tags": [
|
|
"Assets"
|
|
],
|
|
"summary": "Replace asset content.",
|
|
"description": "Use multipart request to upload an asset.",
|
|
"operationId": "Assets_PutAssetContent",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the asset.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"file": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Asset updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AssetDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Asset request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"413": {
|
|
"description": "Asset exceeds the maximum upload size.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Asset or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.assets.upload"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/assets/{id}/parent": {
|
|
"put": {
|
|
"tags": [
|
|
"Assets"
|
|
],
|
|
"summary": "Moves the asset.",
|
|
"operationId": "Assets_PutAssetParent",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the asset.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The asset object that needs to updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/MoveAssetDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Asset moved.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AssetDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Asset request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Asset or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.assets.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/assets/scripts": {
|
|
"get": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Get the app asset scripts.",
|
|
"operationId": "AppAssets_GetAssetScripts",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app to get the asset scripts for.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Asset scripts returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AssetScriptsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.asset-scripts.read"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Update the asset scripts.",
|
|
"operationId": "AppAssets_PutAssetScripts",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app to update.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The values to update.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpdateAssetScriptsDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Asset scripts updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AssetScriptsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Asset request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.asset-scripts.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/clients": {
|
|
"get": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Get app clients.",
|
|
"description": "Gets all configured clients for the app with the specified name.",
|
|
"operationId": "AppClients_GetClients",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Clients returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ClientsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.clients.read"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Create a new app client.",
|
|
"description": "Create a new client for the app with the specified name.\nThe client secret is auto generated on the server and returned. The client does not expire, the access token is valid for 30 days.",
|
|
"operationId": "AppClients_PostClient",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "Client object that needs to be added to the app.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CreateClientDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Client created.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ClientsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Client request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.clients.create"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/clients/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Updates an app client.",
|
|
"description": "Only the display name can be changed, create a new client if necessary.",
|
|
"operationId": "AppClients_PutClient",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the client that must be updated.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "Client object that needs to be updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpdateClientDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Client updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ClientsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Client request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Client or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.clients.update"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Revoke an app client.",
|
|
"description": "The application that uses this client credentials cannot access the API after it has been revoked.",
|
|
"operationId": "AppClients_DeleteClient",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the client that must be deleted.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Client deleted.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ClientsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Client or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.clients.delete"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/contributors": {
|
|
"get": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Get app contributors.",
|
|
"operationId": "AppContributors_GetContributors",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Contributors returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContributorsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.contributors.read"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Assign contributor to app.",
|
|
"operationId": "AppContributors_PostContributor",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "Contributor object that needs to be added to the app.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AssignContributorDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Contributor assigned to app.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContributorsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Contributor request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.contributors.assign"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/contributors/me": {
|
|
"delete": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Remove yourself.",
|
|
"operationId": "AppContributors_DeleteMyself",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Contributor removed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContributorsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Contributor or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/contributors/{id}": {
|
|
"delete": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Remove contributor.",
|
|
"operationId": "AppContributors_DeleteContributor",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the contributor.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Contributor removed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ContributorsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Contributor or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.contributors.revoke"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/image": {
|
|
"get": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Get the app image.",
|
|
"operationId": "AppImage_GetImage",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "App image found and content or (resized) image returned.",
|
|
"content": {
|
|
"application/octet-stream": {
|
|
"schema": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Upload the app image.",
|
|
"operationId": "Apps_UploadImage",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app to update.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"file": {
|
|
"type": "string",
|
|
"format": "binary"
|
|
},
|
|
"url": {
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "App image uploaded.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AppDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "App request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.image"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Remove the app image.",
|
|
"operationId": "Apps_DeleteImage",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app to update.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "App image removed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AppDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.image"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/languages": {
|
|
"get": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Get app languages.",
|
|
"operationId": "AppLanguages_GetLanguages",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Languages returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AppLanguagesDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.languages.read"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Add an app language.",
|
|
"operationId": "AppLanguages_PostLanguage",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The language to add to the app.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AddLanguageDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Language created.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AppLanguagesDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Language request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.languages.create"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/languages/{language}": {
|
|
"put": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Updates an app language.",
|
|
"operationId": "AppLanguages_PutLanguage",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "language",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The language to update.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The language object.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpdateLanguageDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Language updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AppLanguagesDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Language request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Language or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.languages.update"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Deletes an app language.",
|
|
"operationId": "AppLanguages_DeleteLanguage",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "language",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The language to delete from the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Language deleted.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AppLanguagesDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Language is master language.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Language or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.languages.delete"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/roles": {
|
|
"get": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Get app roles.",
|
|
"operationId": "AppRoles_GetRoles",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Roles returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RolesDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.roles.read"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Add role to app.",
|
|
"operationId": "AppRoles_PostRole",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "Role object that needs to be added to the app.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AddRoleDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "Role created.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RolesDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Role request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.roles.create"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/roles/permissions": {
|
|
"get": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Get app permissions.",
|
|
"operationId": "AppRoles_GetPermissions",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "App permissions returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.roles.read"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/roles/{roleName}": {
|
|
"put": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Update an app role.",
|
|
"operationId": "AppRoles_PutRole",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "roleName",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the role to be updated.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "Role to be updated for the app.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpdateRoleDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Role updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RolesDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Role request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Role or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.roles.update"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Remove role from app.",
|
|
"operationId": "AppRoles_DeleteRole",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "roleName",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the role.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Role deleted.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RolesDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Role is in use by contributor or client or a default role.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Role or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.roles.delete"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps": {
|
|
"get": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Get your apps.",
|
|
"description": "You can only retrieve the list of apps when you are authenticated as a user (OpenID implicit flow).\nYou will retrieve all apps, where you are assigned as a contributor.",
|
|
"operationId": "Apps_GetApps",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Apps returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/AppDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Create a new app.",
|
|
"description": "You can only create an app when you are authenticated as a user (OpenID implicit flow).\nYou will be assigned as owner of the new app automatically.",
|
|
"operationId": "Apps_PostApp",
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The app object that needs to be added to Squidex.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CreateAppDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 1
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "App created.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AppDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "App request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"409": {
|
|
"description": "App name is already in use.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/teams/{team}/apps": {
|
|
"get": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Get team apps.",
|
|
"description": "You can only retrieve the list of apps when you are authenticated as a user (OpenID implicit flow).\nYou will retrieve all apps, where you are assigned as a contributor.",
|
|
"operationId": "Apps_GetTeamApps",
|
|
"parameters": [
|
|
{
|
|
"name": "team",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the team.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Apps returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/AppDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}": {
|
|
"get": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Get an app by name.",
|
|
"operationId": "Apps_GetApp",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Apps returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AppDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Update the app.",
|
|
"operationId": "Apps_PutApp",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app to update.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The values to update.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpdateAppDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "App updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AppDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "App request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.update"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Delete the app.",
|
|
"operationId": "Apps_DeleteApp",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app to delete.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "permanent",
|
|
"in": "query",
|
|
"description": "True to delete the app permanently.",
|
|
"schema": {
|
|
"type": "boolean"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "App deleted."
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.delete"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/team": {
|
|
"put": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Transfer the app.",
|
|
"operationId": "Apps_PutAppTeam",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app to update.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The team information.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TransferToTeamDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "App transferred.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AppDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "App request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.transfer"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/settings": {
|
|
"get": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Get the app settings.",
|
|
"operationId": "AppSettings_GetSettings",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app to get the settings for.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "App settings returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AppSettingsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": []
|
|
}
|
|
]
|
|
},
|
|
"put": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Update the settings.",
|
|
"operationId": "AppSettings_PutSettings",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app to update.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The values to update.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpdateAppSettingsDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "App updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AppSettingsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "App request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.settings"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/workflows": {
|
|
"get": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Get app workflow.",
|
|
"operationId": "AppWorkflows_GetWorkflows",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Workflows returned.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/WorkflowsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "App not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.workflows.read"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"post": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Create a workflow.",
|
|
"operationId": "AppWorkflows_PostWorkflow",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The new workflow.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AddWorkflowDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 2
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Workflow created.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/WorkflowsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Workflow request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Workflow or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.workflows.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"/api/apps/{app}/workflows/{id}": {
|
|
"put": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Update a workflow.",
|
|
"operationId": "AppWorkflows_PutWorkflow",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the workflow to update.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"x-name": "request",
|
|
"description": "The new workflow.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpdateWorkflowDto"
|
|
}
|
|
}
|
|
},
|
|
"required": true,
|
|
"x-position": 3
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Workflow updated.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/WorkflowsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Workflow request not valid.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Workflow or app not found."
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.workflows.update"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"delete": {
|
|
"tags": [
|
|
"Apps"
|
|
],
|
|
"summary": "Delete a workflow.",
|
|
"operationId": "AppWorkflows_DeleteWorkflow",
|
|
"parameters": [
|
|
{
|
|
"name": "app",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The name of the app.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 1
|
|
},
|
|
{
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "The ID of the workflow to update.",
|
|
"schema": {
|
|
"type": "string"
|
|
},
|
|
"x-position": 2
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Workflow deleted.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/WorkflowsDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Workflow or app not found."
|
|
},
|
|
"400": {
|
|
"description": "Validation error.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Operation failed.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex.apps.{app}.workflows.update"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"components": {
|
|
"schemas": {
|
|
"ErrorDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"message",
|
|
"statusCode"
|
|
],
|
|
"properties": {
|
|
"message": {
|
|
"type": "string",
|
|
"description": "Error message.",
|
|
"minLength": 1
|
|
},
|
|
"errorCode": {
|
|
"type": "string",
|
|
"description": "The error code.",
|
|
"nullable": true
|
|
},
|
|
"traceId": {
|
|
"type": "string",
|
|
"description": "The optional trace id.",
|
|
"nullable": true
|
|
},
|
|
"type": {
|
|
"type": "string",
|
|
"description": "Link to the error details.",
|
|
"nullable": true
|
|
},
|
|
"details": {
|
|
"type": "array",
|
|
"description": "Detailed error messages.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"statusCode": {
|
|
"type": "integer",
|
|
"description": "Status code of the http response.",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"UserProperty": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name",
|
|
"value"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"value": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
}
|
|
}
|
|
},
|
|
"UpdateSettingDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"value"
|
|
],
|
|
"properties": {
|
|
"value": {
|
|
"description": "The value for the setting."
|
|
}
|
|
}
|
|
},
|
|
"UsersDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"total",
|
|
"items"
|
|
],
|
|
"properties": {
|
|
"total": {
|
|
"type": "integer",
|
|
"description": "The total number of users.",
|
|
"format": "int64"
|
|
},
|
|
"items": {
|
|
"type": "array",
|
|
"description": "The users.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/UserDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"UserDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"id",
|
|
"email",
|
|
"displayName",
|
|
"isLocked",
|
|
"permissions"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "The ID of the user."
|
|
},
|
|
"email": {
|
|
"type": "string",
|
|
"description": "The email of the user. Unique value."
|
|
},
|
|
"displayName": {
|
|
"type": "string",
|
|
"description": "The display name (usually first name and last name) of the user."
|
|
},
|
|
"isLocked": {
|
|
"type": "boolean",
|
|
"description": "Determines if the user is locked."
|
|
},
|
|
"permissions": {
|
|
"type": "array",
|
|
"description": "Additional permissions for the user.",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"Resource": {
|
|
"type": "object",
|
|
"x-abstract": true,
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"_links"
|
|
],
|
|
"properties": {
|
|
"_links": {
|
|
"type": "object",
|
|
"description": "The links.",
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/ResourceLink"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"ResourceLink": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"href",
|
|
"method"
|
|
],
|
|
"properties": {
|
|
"href": {
|
|
"type": "string",
|
|
"description": "The link url.",
|
|
"minLength": 1
|
|
},
|
|
"method": {
|
|
"type": "string",
|
|
"description": "The link method.",
|
|
"minLength": 1
|
|
},
|
|
"metadata": {
|
|
"type": "string",
|
|
"description": "Additional data about the link.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"CreateUserDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"email",
|
|
"displayName",
|
|
"password",
|
|
"permissions"
|
|
],
|
|
"properties": {
|
|
"email": {
|
|
"type": "string",
|
|
"description": "The email of the user. Unique value.",
|
|
"minLength": 1
|
|
},
|
|
"displayName": {
|
|
"type": "string",
|
|
"description": "The display name (usually first name and last name) of the user.",
|
|
"minLength": 1
|
|
},
|
|
"password": {
|
|
"type": "string",
|
|
"description": "The password of the user.",
|
|
"minLength": 1
|
|
},
|
|
"permissions": {
|
|
"type": "array",
|
|
"description": "Additional permissions for the user.",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"UpdateUserDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"email",
|
|
"displayName",
|
|
"permissions"
|
|
],
|
|
"properties": {
|
|
"email": {
|
|
"type": "string",
|
|
"description": "The email of the user. Unique value.",
|
|
"minLength": 1
|
|
},
|
|
"displayName": {
|
|
"type": "string",
|
|
"description": "The display name (usually first name and last name) of the user.",
|
|
"minLength": 1
|
|
},
|
|
"password": {
|
|
"type": "string",
|
|
"description": "The password of the user.",
|
|
"nullable": true
|
|
},
|
|
"permissions": {
|
|
"type": "array",
|
|
"description": "Additional permissions for the user.",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"ResourcesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
}
|
|
]
|
|
},
|
|
"UpdateProfileDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"answers": {
|
|
"type": "object",
|
|
"description": "The answers from a questionaire.",
|
|
"nullable": true,
|
|
"additionalProperties": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"TranslationDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"status",
|
|
"result"
|
|
],
|
|
"properties": {
|
|
"status": {
|
|
"description": "The result of the translation.",
|
|
"$ref": "#/components/schemas/TranslationStatus"
|
|
},
|
|
"result": {
|
|
"description": "The result of the translation.",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Use Status property now.",
|
|
"$ref": "#/components/schemas/TranslationStatus"
|
|
},
|
|
"text": {
|
|
"type": "string",
|
|
"description": "The translated text.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"TranslationStatus": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Translated",
|
|
"LanguageNotSupported",
|
|
"NotTranslated",
|
|
"NotConfigured",
|
|
"Unauthorized",
|
|
"Failed"
|
|
],
|
|
"enum": [
|
|
"Translated",
|
|
"LanguageNotSupported",
|
|
"NotTranslated",
|
|
"NotConfigured",
|
|
"Unauthorized",
|
|
"Failed"
|
|
]
|
|
},
|
|
"TranslateDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"text",
|
|
"targetLanguage"
|
|
],
|
|
"properties": {
|
|
"text": {
|
|
"type": "string",
|
|
"description": "The text to translate.",
|
|
"minLength": 1
|
|
},
|
|
"targetLanguage": {
|
|
"type": "string",
|
|
"description": "The target language."
|
|
},
|
|
"sourceLanguage": {
|
|
"type": "string",
|
|
"description": "The optional source language."
|
|
}
|
|
}
|
|
},
|
|
"TemplatesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"items"
|
|
],
|
|
"properties": {
|
|
"items": {
|
|
"type": "array",
|
|
"description": "The event consumers.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/TemplateDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"TemplateDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name",
|
|
"title",
|
|
"description",
|
|
"details",
|
|
"isStarter"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the template."
|
|
},
|
|
"title": {
|
|
"type": "string",
|
|
"description": "The title of the template."
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"description": "The description of the template."
|
|
},
|
|
"details": {
|
|
"type": "string",
|
|
"description": "The details of the template."
|
|
},
|
|
"isStarter": {
|
|
"type": "boolean",
|
|
"description": "True, if the template is a starter."
|
|
},
|
|
"logo": {
|
|
"type": "string",
|
|
"description": "The optional logo.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"TemplateDetailsDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"details"
|
|
],
|
|
"properties": {
|
|
"details": {
|
|
"type": "string",
|
|
"description": "The details of the template."
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"ContributorsDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"items",
|
|
"maxContributors"
|
|
],
|
|
"properties": {
|
|
"items": {
|
|
"type": "array",
|
|
"description": "The contributors.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/ContributorDto"
|
|
}
|
|
},
|
|
"maxContributors": {
|
|
"type": "integer",
|
|
"description": "The maximum number of allowed contributors.",
|
|
"format": "int64"
|
|
},
|
|
"_meta": {
|
|
"description": "The metadata to provide information about this request.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/ContributorsMetadata"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"ContributorDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"contributorId",
|
|
"contributorName",
|
|
"contributorEmail"
|
|
],
|
|
"properties": {
|
|
"contributorId": {
|
|
"type": "string",
|
|
"description": "The ID of the user that contributes to the app."
|
|
},
|
|
"contributorName": {
|
|
"type": "string",
|
|
"description": "The display name."
|
|
},
|
|
"contributorEmail": {
|
|
"type": "string",
|
|
"description": "The email address."
|
|
},
|
|
"role": {
|
|
"type": "string",
|
|
"description": "The role of the contributor.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"ContributorsMetadata": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"isInvited"
|
|
],
|
|
"properties": {
|
|
"isInvited": {
|
|
"type": "string",
|
|
"description": "Indicates whether the user has been invited."
|
|
}
|
|
}
|
|
},
|
|
"AssignContributorDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"contributorId"
|
|
],
|
|
"properties": {
|
|
"contributorId": {
|
|
"type": "string",
|
|
"description": "The id or email of the user to add to the app.",
|
|
"minLength": 1
|
|
},
|
|
"role": {
|
|
"type": "string",
|
|
"description": "The role of the contributor.",
|
|
"nullable": true
|
|
},
|
|
"invite": {
|
|
"type": "boolean",
|
|
"description": "Set to true to invite the user if he does not exist."
|
|
}
|
|
}
|
|
},
|
|
"TeamDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"id",
|
|
"name",
|
|
"version",
|
|
"created",
|
|
"lastModified"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "The ID of the team."
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the team."
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"description": "The version of the team.",
|
|
"format": "int64"
|
|
},
|
|
"created": {
|
|
"type": "string",
|
|
"description": "The timestamp when the team has been created.",
|
|
"format": "date-time"
|
|
},
|
|
"lastModified": {
|
|
"type": "string",
|
|
"description": "The timestamp when the team has been modified last.",
|
|
"format": "date-time"
|
|
},
|
|
"roleName": {
|
|
"type": "string",
|
|
"description": "The role name of the user.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"CreateTeamDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the team.",
|
|
"minLength": 1
|
|
}
|
|
}
|
|
},
|
|
"UpdateTeamDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the team.",
|
|
"minLength": 1
|
|
}
|
|
}
|
|
},
|
|
"AuthSchemeResponseDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"scheme": {
|
|
"description": "The auth scheme if configured.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/AuthSchemeDto"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"AuthSchemeDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"domain",
|
|
"displayName",
|
|
"clientId",
|
|
"clientSecret",
|
|
"authority"
|
|
],
|
|
"properties": {
|
|
"domain": {
|
|
"type": "string",
|
|
"description": "The domain name of your user accounts.",
|
|
"minLength": 1
|
|
},
|
|
"displayName": {
|
|
"type": "string",
|
|
"description": "The display name for buttons.",
|
|
"minLength": 1
|
|
},
|
|
"clientId": {
|
|
"type": "string",
|
|
"description": "The client ID.",
|
|
"minLength": 1
|
|
},
|
|
"clientSecret": {
|
|
"type": "string",
|
|
"description": "The client secret.",
|
|
"minLength": 1
|
|
},
|
|
"authority": {
|
|
"type": "string",
|
|
"description": "The authority URL.",
|
|
"minLength": 1
|
|
},
|
|
"signoutRedirectUrl": {
|
|
"type": "string",
|
|
"description": "The URL to redirect after a signout.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"AuthSchemeValueDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"scheme": {
|
|
"description": "The auth scheme if configured.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/AuthSchemeDto"
|
|
}
|
|
}
|
|
},
|
|
"LogDownloadDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"downloadUrl": {
|
|
"type": "string",
|
|
"description": "The url to download the log.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"CallsUsageDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"totalCalls",
|
|
"totalBytes",
|
|
"monthCalls",
|
|
"monthBytes",
|
|
"blockingApiCalls",
|
|
"allowedBytes",
|
|
"allowedCalls",
|
|
"averageElapsedMs",
|
|
"details"
|
|
],
|
|
"properties": {
|
|
"totalCalls": {
|
|
"type": "integer",
|
|
"description": "The total number of API calls.",
|
|
"format": "int64"
|
|
},
|
|
"totalBytes": {
|
|
"type": "integer",
|
|
"description": "The total number of bytes transferred.",
|
|
"format": "int64"
|
|
},
|
|
"monthCalls": {
|
|
"type": "integer",
|
|
"description": "The total number of API calls this month.",
|
|
"format": "int64"
|
|
},
|
|
"monthBytes": {
|
|
"type": "integer",
|
|
"description": "The total number of bytes transferred this month.",
|
|
"format": "int64"
|
|
},
|
|
"blockingApiCalls": {
|
|
"type": "integer",
|
|
"description": "The amount of calls that will block the app.",
|
|
"format": "int64"
|
|
},
|
|
"allowedBytes": {
|
|
"type": "integer",
|
|
"description": "The included API traffic.",
|
|
"format": "int64"
|
|
},
|
|
"allowedCalls": {
|
|
"type": "integer",
|
|
"description": "The included API calls.",
|
|
"format": "int64"
|
|
},
|
|
"averageElapsedMs": {
|
|
"type": "number",
|
|
"description": "The average duration in milliseconds.",
|
|
"format": "double"
|
|
},
|
|
"details": {
|
|
"type": "object",
|
|
"description": "The statistics by date and group.",
|
|
"additionalProperties": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/CallsUsagePerDateDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"CallsUsagePerDateDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"date",
|
|
"totalCalls",
|
|
"totalBytes",
|
|
"averageElapsedMs"
|
|
],
|
|
"properties": {
|
|
"date": {
|
|
"type": "string",
|
|
"description": "The date when the usage was tracked.",
|
|
"format": "date"
|
|
},
|
|
"totalCalls": {
|
|
"type": "integer",
|
|
"description": "The total number of API calls.",
|
|
"format": "int64"
|
|
},
|
|
"totalBytes": {
|
|
"type": "integer",
|
|
"description": "The total number of bytes transferred.",
|
|
"format": "int64"
|
|
},
|
|
"averageElapsedMs": {
|
|
"type": "number",
|
|
"description": "The average duration in milliseconds.",
|
|
"format": "double"
|
|
}
|
|
}
|
|
},
|
|
"CurrentStorageDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"size",
|
|
"maxAllowed"
|
|
],
|
|
"properties": {
|
|
"size": {
|
|
"type": "integer",
|
|
"description": "The size in bytes.",
|
|
"format": "int64"
|
|
},
|
|
"maxAllowed": {
|
|
"type": "integer",
|
|
"description": "The maximum allowed asset size.",
|
|
"format": "int64"
|
|
}
|
|
}
|
|
},
|
|
"StorageUsagePerDateDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"date",
|
|
"totalCount",
|
|
"totalSize"
|
|
],
|
|
"properties": {
|
|
"date": {
|
|
"type": "string",
|
|
"description": "The date when the usage was tracked.",
|
|
"format": "date"
|
|
},
|
|
"totalCount": {
|
|
"type": "integer",
|
|
"description": "The number of assets.",
|
|
"format": "int64"
|
|
},
|
|
"totalSize": {
|
|
"type": "integer",
|
|
"description": "The size in bytes.",
|
|
"format": "int64"
|
|
}
|
|
}
|
|
},
|
|
"SearchResultDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name",
|
|
"type"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the search result."
|
|
},
|
|
"type": {
|
|
"description": "The type of the search result.",
|
|
"$ref": "#/components/schemas/SearchResultType"
|
|
},
|
|
"label": {
|
|
"type": "string",
|
|
"description": "An optional label.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"SearchResultType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Asset",
|
|
"Content",
|
|
"Dashboard",
|
|
"Setting",
|
|
"Rule",
|
|
"Schema"
|
|
],
|
|
"enum": [
|
|
"Asset",
|
|
"Content",
|
|
"Dashboard",
|
|
"Setting",
|
|
"Rule",
|
|
"Schema"
|
|
]
|
|
},
|
|
"SchemaDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"createdBy",
|
|
"lastModifiedBy",
|
|
"name",
|
|
"properties",
|
|
"scripts",
|
|
"previewUrls",
|
|
"fieldsInLists",
|
|
"fieldsInReferences",
|
|
"fields",
|
|
"id",
|
|
"type",
|
|
"isSingleton",
|
|
"isPublished",
|
|
"created",
|
|
"lastModified",
|
|
"version",
|
|
"fieldRules"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "The ID of the schema."
|
|
},
|
|
"createdBy": {
|
|
"type": "string",
|
|
"description": "The user that has created the schema."
|
|
},
|
|
"lastModifiedBy": {
|
|
"type": "string",
|
|
"description": "The user that has updated the schema."
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the schema. Unique within the app.",
|
|
"minLength": 1,
|
|
"pattern": "^[a-z0-9]+(\\-[a-z0-9]+)*$"
|
|
},
|
|
"type": {
|
|
"description": "The type of the schema.",
|
|
"$ref": "#/components/schemas/SchemaType"
|
|
},
|
|
"category": {
|
|
"type": "string",
|
|
"description": "The name of the category.",
|
|
"nullable": true
|
|
},
|
|
"properties": {
|
|
"description": "The schema properties.",
|
|
"$ref": "#/components/schemas/SchemaPropertiesDto"
|
|
},
|
|
"isSingleton": {
|
|
"type": "boolean",
|
|
"description": "Indicates if the schema is a singleton.",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Use 'type' field now."
|
|
},
|
|
"isPublished": {
|
|
"type": "boolean",
|
|
"description": "Indicates if the schema is published."
|
|
},
|
|
"created": {
|
|
"type": "string",
|
|
"description": "The date and time when the schema has been created.",
|
|
"format": "date-time"
|
|
},
|
|
"lastModified": {
|
|
"type": "string",
|
|
"description": "The date and time when the schema has been modified last.",
|
|
"format": "date-time"
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"description": "The version of the schema.",
|
|
"format": "int64"
|
|
},
|
|
"scripts": {
|
|
"description": "The scripts.",
|
|
"$ref": "#/components/schemas/SchemaScriptsDto"
|
|
},
|
|
"previewUrls": {
|
|
"type": "object",
|
|
"description": "The preview Urls.",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"fieldsInLists": {
|
|
"type": "array",
|
|
"description": "The name of fields that are used in content lists.",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"fieldsInReferences": {
|
|
"type": "array",
|
|
"description": "The name of fields that are used in content references.",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"fieldRules": {
|
|
"type": "array",
|
|
"description": "The field rules.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/FieldRuleDto"
|
|
}
|
|
},
|
|
"fields": {
|
|
"type": "array",
|
|
"description": "The list of fields.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/FieldDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"SchemaType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Default",
|
|
"Singleton",
|
|
"Component"
|
|
],
|
|
"enum": [
|
|
"Default",
|
|
"Singleton",
|
|
"Component"
|
|
]
|
|
},
|
|
"SchemaPropertiesDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"validateOnPublish"
|
|
],
|
|
"properties": {
|
|
"label": {
|
|
"type": "string",
|
|
"description": "Optional label for the editor.",
|
|
"maxLength": 100,
|
|
"minLength": 0,
|
|
"nullable": true
|
|
},
|
|
"hints": {
|
|
"type": "string",
|
|
"description": "Hints to describe the schema.",
|
|
"maxLength": 1000,
|
|
"minLength": 0,
|
|
"nullable": true
|
|
},
|
|
"contentsSidebarUrl": {
|
|
"type": "string",
|
|
"description": "The url to a the sidebar plugin for content lists.",
|
|
"nullable": true
|
|
},
|
|
"contentSidebarUrl": {
|
|
"type": "string",
|
|
"description": "The url to a the sidebar plugin for content items.",
|
|
"nullable": true
|
|
},
|
|
"contentEditorUrl": {
|
|
"type": "string",
|
|
"description": "The url to the editor plugin.",
|
|
"nullable": true
|
|
},
|
|
"contentsEditorUrl": {
|
|
"type": "string",
|
|
"description": "The url to the editor plugin.",
|
|
"nullable": true
|
|
},
|
|
"contentsListUrl": {
|
|
"type": "string",
|
|
"description": "The url to the content list plugin.",
|
|
"nullable": true
|
|
},
|
|
"validateOnPublish": {
|
|
"type": "boolean",
|
|
"description": "True to validate the content items on publish."
|
|
},
|
|
"tags": {
|
|
"type": "array",
|
|
"description": "Tags for automation processes.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"SchemaScriptsDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"query": {
|
|
"type": "string",
|
|
"description": "The script that is executed for each content when querying contents.",
|
|
"nullable": true
|
|
},
|
|
"queryPre": {
|
|
"type": "string",
|
|
"description": "The script that is executed for all contents when querying contents.",
|
|
"nullable": true
|
|
},
|
|
"create": {
|
|
"type": "string",
|
|
"description": "The script that is executed when creating a content.",
|
|
"nullable": true
|
|
},
|
|
"update": {
|
|
"type": "string",
|
|
"description": "The script that is executed when updating a content.",
|
|
"nullable": true
|
|
},
|
|
"delete": {
|
|
"type": "string",
|
|
"description": "The script that is executed when deleting a content.",
|
|
"nullable": true
|
|
},
|
|
"change": {
|
|
"type": "string",
|
|
"description": "The script that is executed when change a content status.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"FieldRuleDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"action",
|
|
"field"
|
|
],
|
|
"properties": {
|
|
"action": {
|
|
"description": "The action to perform when the condition is met.",
|
|
"$ref": "#/components/schemas/FieldRuleAction"
|
|
},
|
|
"field": {
|
|
"type": "string",
|
|
"description": "The field to update.",
|
|
"minLength": 1
|
|
},
|
|
"condition": {
|
|
"type": "string",
|
|
"description": "The condition.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"FieldRuleAction": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Disable",
|
|
"Hide",
|
|
"Require"
|
|
],
|
|
"enum": [
|
|
"Disable",
|
|
"Hide",
|
|
"Require"
|
|
]
|
|
},
|
|
"FieldDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name",
|
|
"partitioning",
|
|
"properties",
|
|
"fieldId",
|
|
"isHidden",
|
|
"isLocked",
|
|
"isDisabled"
|
|
],
|
|
"properties": {
|
|
"fieldId": {
|
|
"type": "integer",
|
|
"description": "The ID of the field.",
|
|
"format": "int64"
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the field. Must be unique within the schema.",
|
|
"minLength": 1,
|
|
"pattern": "^[a-z0-9]+(\\-[a-z0-9]+)*$"
|
|
},
|
|
"isHidden": {
|
|
"type": "boolean",
|
|
"description": "Defines if the field is hidden."
|
|
},
|
|
"isLocked": {
|
|
"type": "boolean",
|
|
"description": "Defines if the field is locked."
|
|
},
|
|
"isDisabled": {
|
|
"type": "boolean",
|
|
"description": "Defines if the field is disabled."
|
|
},
|
|
"partitioning": {
|
|
"type": "string",
|
|
"description": "Defines the partitioning of the field.",
|
|
"minLength": 1
|
|
},
|
|
"properties": {
|
|
"description": "The field properties.",
|
|
"$ref": "#/components/schemas/FieldPropertiesDto"
|
|
},
|
|
"nested": {
|
|
"type": "array",
|
|
"description": "The nested fields.",
|
|
"nullable": true,
|
|
"items": {
|
|
"$ref": "#/components/schemas/NestedFieldDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"FieldPropertiesDto": {
|
|
"type": "object",
|
|
"discriminator": {
|
|
"propertyName": "fieldType",
|
|
"mapping": {
|
|
"Array": "#/components/schemas/ArrayFieldPropertiesDto",
|
|
"Assets": "#/components/schemas/AssetsFieldPropertiesDto",
|
|
"Boolean": "#/components/schemas/BooleanFieldPropertiesDto",
|
|
"Component": "#/components/schemas/ComponentFieldPropertiesDto",
|
|
"Components": "#/components/schemas/ComponentsFieldPropertiesDto",
|
|
"DateTime": "#/components/schemas/DateTimeFieldPropertiesDto",
|
|
"Geolocation": "#/components/schemas/GeolocationFieldPropertiesDto",
|
|
"Json": "#/components/schemas/JsonFieldPropertiesDto",
|
|
"Number": "#/components/schemas/NumberFieldPropertiesDto",
|
|
"References": "#/components/schemas/ReferencesFieldPropertiesDto",
|
|
"RichText": "#/components/schemas/RichTextFieldPropertiesDto",
|
|
"String": "#/components/schemas/StringFieldPropertiesDto",
|
|
"Tags": "#/components/schemas/TagsFieldPropertiesDto",
|
|
"UI": "#/components/schemas/UIFieldPropertiesDto",
|
|
"UserInfo": "#/components/schemas/UserInfoFieldPropertiesDto"
|
|
}
|
|
},
|
|
"x-abstract": true,
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"fieldType"
|
|
],
|
|
"properties": {
|
|
"label": {
|
|
"type": "string",
|
|
"description": "Optional label for the editor.",
|
|
"maxLength": 100,
|
|
"minLength": 0,
|
|
"nullable": true
|
|
},
|
|
"hints": {
|
|
"type": "string",
|
|
"description": "Hints to describe the field.",
|
|
"maxLength": 1000,
|
|
"minLength": 0,
|
|
"nullable": true
|
|
},
|
|
"placeholder": {
|
|
"type": "string",
|
|
"description": "Placeholder to show when no value has been entered.",
|
|
"maxLength": 100,
|
|
"minLength": 0,
|
|
"nullable": true
|
|
},
|
|
"isRequired": {
|
|
"type": "boolean",
|
|
"description": "Indicates if the field is required."
|
|
},
|
|
"isRequiredOnPublish": {
|
|
"type": "boolean",
|
|
"description": "Indicates if the field is required when publishing."
|
|
},
|
|
"isHalfWidth": {
|
|
"type": "boolean",
|
|
"description": "Indicates if the field should be rendered with half width only."
|
|
},
|
|
"isCreateOnly": {
|
|
"type": "boolean",
|
|
"description": "Indicates if the field can only be created and not modified."
|
|
},
|
|
"editorUrl": {
|
|
"type": "string",
|
|
"description": "Optional url to the editor.",
|
|
"nullable": true
|
|
},
|
|
"tags": {
|
|
"type": "array",
|
|
"description": "Tags for automation processes.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"fieldType": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"ArrayFieldPropertiesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FieldPropertiesDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"minItems": {
|
|
"type": "integer",
|
|
"description": "The minimum allowed items for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"maxItems": {
|
|
"type": "integer",
|
|
"description": "The maximum allowed items for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"calculatedDefaultValue": {
|
|
"description": "The calculated default value for the field value.",
|
|
"$ref": "#/components/schemas/ArrayCalculatedDefaultValue"
|
|
},
|
|
"uniqueFields": {
|
|
"type": "array",
|
|
"description": "The fields that must be unique.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"ArrayCalculatedDefaultValue": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"EmptyArray",
|
|
"Null"
|
|
],
|
|
"enum": [
|
|
"EmptyArray",
|
|
"Null"
|
|
]
|
|
},
|
|
"AssetsFieldPropertiesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FieldPropertiesDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"previewMode": {
|
|
"description": "The preview mode for the asset.",
|
|
"$ref": "#/components/schemas/AssetPreviewMode"
|
|
},
|
|
"defaultValues": {
|
|
"description": "The language specific default value as a list of asset ids.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/LocalizedValueOfReadonlyListOfString"
|
|
},
|
|
"defaultValue": {
|
|
"type": "array",
|
|
"description": "The default value as a list of asset ids.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"folderId": {
|
|
"type": "string",
|
|
"description": "The initial id to the folder.",
|
|
"nullable": true
|
|
},
|
|
"previewFormat": {
|
|
"type": "string",
|
|
"description": "The preview format.",
|
|
"nullable": true
|
|
},
|
|
"minItems": {
|
|
"type": "integer",
|
|
"description": "The minimum allowed items for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"maxItems": {
|
|
"type": "integer",
|
|
"description": "The maximum allowed items for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"minSize": {
|
|
"type": "integer",
|
|
"description": "The minimum file size in bytes.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"maxSize": {
|
|
"type": "integer",
|
|
"description": "The maximum file size in bytes.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"minWidth": {
|
|
"type": "integer",
|
|
"description": "The minimum image width in pixels.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"maxWidth": {
|
|
"type": "integer",
|
|
"description": "The maximum image width in pixels.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"minHeight": {
|
|
"type": "integer",
|
|
"description": "The minimum image height in pixels.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"maxHeight": {
|
|
"type": "integer",
|
|
"description": "The maximum image height in pixels.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"aspectWidth": {
|
|
"type": "integer",
|
|
"description": "The image aspect width in pixels.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"aspectHeight": {
|
|
"type": "integer",
|
|
"description": "The image aspect height in pixels.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"expectedType": {
|
|
"description": "The expected type.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/AssetType"
|
|
},
|
|
"resolveFirst": {
|
|
"type": "boolean",
|
|
"description": "True to resolve first asset in the content list."
|
|
},
|
|
"mustBeImage": {
|
|
"type": "boolean",
|
|
"description": "True to resolve first image in the content list.",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Use 'expectedType' field now"
|
|
},
|
|
"resolveImage": {
|
|
"type": "boolean",
|
|
"description": "True to resolve first image in the content list.",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Use 'resolveFirst' field now"
|
|
},
|
|
"allowedExtensions": {
|
|
"type": "array",
|
|
"description": "The allowed file extensions.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"allowDuplicates": {
|
|
"type": "boolean",
|
|
"description": "True, if duplicate values are allowed."
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"AssetPreviewMode": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"ImageAndFileName",
|
|
"Image",
|
|
"FileName"
|
|
],
|
|
"enum": [
|
|
"ImageAndFileName",
|
|
"Image",
|
|
"FileName"
|
|
]
|
|
},
|
|
"LocalizedValueOfReadonlyListOfString": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"AssetType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Unknown",
|
|
"Image",
|
|
"Audio",
|
|
"Video"
|
|
],
|
|
"enum": [
|
|
"Unknown",
|
|
"Image",
|
|
"Audio",
|
|
"Video"
|
|
]
|
|
},
|
|
"BooleanFieldPropertiesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FieldPropertiesDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"defaultValues": {
|
|
"description": "The language specific default value for the field value.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/LocalizedValueOfNullableBoolean"
|
|
},
|
|
"defaultValue": {
|
|
"type": "boolean",
|
|
"description": "The default value for the field value.",
|
|
"nullable": true
|
|
},
|
|
"inlineEditable": {
|
|
"type": "boolean",
|
|
"description": "Indicates that the inline editor is enabled for this field."
|
|
},
|
|
"editor": {
|
|
"description": "The editor that is used to manage this field.",
|
|
"$ref": "#/components/schemas/BooleanFieldEditor"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"LocalizedValueOfNullableBoolean": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "boolean",
|
|
"nullable": true
|
|
}
|
|
},
|
|
"BooleanFieldEditor": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Checkbox",
|
|
"Toggle"
|
|
],
|
|
"enum": [
|
|
"Checkbox",
|
|
"Toggle"
|
|
]
|
|
},
|
|
"ComponentFieldPropertiesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FieldPropertiesDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"schemaIds": {
|
|
"type": "array",
|
|
"description": "The ID of the embedded schemas.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"ComponentsFieldPropertiesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FieldPropertiesDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"minItems": {
|
|
"type": "integer",
|
|
"description": "The minimum allowed items for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"maxItems": {
|
|
"type": "integer",
|
|
"description": "The maximum allowed items for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"calculatedDefaultValue": {
|
|
"description": "The calculated default value for the field value.",
|
|
"$ref": "#/components/schemas/ArrayCalculatedDefaultValue"
|
|
},
|
|
"schemaIds": {
|
|
"type": "array",
|
|
"description": "The ID of the embedded schemas.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"uniqueFields": {
|
|
"type": "array",
|
|
"description": "The fields that must be unique.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"DateTimeFieldPropertiesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FieldPropertiesDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"defaultValues": {
|
|
"description": "The language specific default value for the field value.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/LocalizedValueOfNullableInstant"
|
|
},
|
|
"defaultValue": {
|
|
"type": "string",
|
|
"description": "The default value for the field value.",
|
|
"format": "date-time",
|
|
"nullable": true
|
|
},
|
|
"maxValue": {
|
|
"type": "string",
|
|
"description": "The maximum allowed value for the field value.",
|
|
"format": "date-time",
|
|
"nullable": true
|
|
},
|
|
"minValue": {
|
|
"type": "string",
|
|
"description": "The minimum allowed value for the field value.",
|
|
"format": "date-time",
|
|
"nullable": true
|
|
},
|
|
"format": {
|
|
"type": "string",
|
|
"description": "The format pattern when displayed in the UI.",
|
|
"nullable": true
|
|
},
|
|
"editor": {
|
|
"description": "The editor that is used to manage this field.",
|
|
"$ref": "#/components/schemas/DateTimeFieldEditor"
|
|
},
|
|
"calculatedDefaultValue": {
|
|
"description": "The calculated default value for the field value.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/DateTimeCalculatedDefaultValue"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"LocalizedValueOfNullableInstant": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string",
|
|
"format": "date-time",
|
|
"nullable": true
|
|
}
|
|
},
|
|
"DateTimeFieldEditor": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Date",
|
|
"DateTime"
|
|
],
|
|
"enum": [
|
|
"Date",
|
|
"DateTime"
|
|
]
|
|
},
|
|
"DateTimeCalculatedDefaultValue": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Now",
|
|
"Today"
|
|
],
|
|
"enum": [
|
|
"Now",
|
|
"Today"
|
|
]
|
|
},
|
|
"GeolocationFieldPropertiesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FieldPropertiesDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"editor": {
|
|
"description": "The editor that is used to manage this field.",
|
|
"$ref": "#/components/schemas/GeolocationFieldEditor"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"GeolocationFieldEditor": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Map"
|
|
],
|
|
"enum": [
|
|
"Map"
|
|
]
|
|
},
|
|
"JsonFieldPropertiesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FieldPropertiesDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"graphQLSchema": {
|
|
"type": "string",
|
|
"description": "The GraphQL schema.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"NumberFieldPropertiesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FieldPropertiesDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"defaultValues": {
|
|
"description": "The language specific default value for the field value.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/LocalizedValueOfNullableDouble"
|
|
},
|
|
"defaultValue": {
|
|
"type": "number",
|
|
"description": "The default value for the field value.",
|
|
"format": "double",
|
|
"nullable": true
|
|
},
|
|
"maxValue": {
|
|
"type": "number",
|
|
"description": "The maximum allowed value for the field value.",
|
|
"format": "double",
|
|
"nullable": true
|
|
},
|
|
"minValue": {
|
|
"type": "number",
|
|
"description": "The minimum allowed value for the field value.",
|
|
"format": "double",
|
|
"nullable": true
|
|
},
|
|
"allowedValues": {
|
|
"type": "array",
|
|
"description": "The allowed values for the field value.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "number",
|
|
"format": "double"
|
|
}
|
|
},
|
|
"isUnique": {
|
|
"type": "boolean",
|
|
"description": "Indicates if the field value must be unique. Ignored for nested fields and localized fields."
|
|
},
|
|
"inlineEditable": {
|
|
"type": "boolean",
|
|
"description": "Indicates that the inline editor is enabled for this field."
|
|
},
|
|
"editor": {
|
|
"description": "The editor that is used to manage this field.",
|
|
"$ref": "#/components/schemas/NumberFieldEditor"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"LocalizedValueOfNullableDouble": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "number",
|
|
"format": "double",
|
|
"nullable": true
|
|
}
|
|
},
|
|
"NumberFieldEditor": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Input",
|
|
"Radio",
|
|
"Dropdown",
|
|
"Stars"
|
|
],
|
|
"enum": [
|
|
"Input",
|
|
"Radio",
|
|
"Dropdown",
|
|
"Stars"
|
|
]
|
|
},
|
|
"ReferencesFieldPropertiesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FieldPropertiesDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"defaultValues": {
|
|
"description": "The language specific default value as a list of content ids.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/LocalizedValueOfReadonlyListOfString"
|
|
},
|
|
"defaultValue": {
|
|
"type": "array",
|
|
"description": "The default value as a list of content ids.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"minItems": {
|
|
"type": "integer",
|
|
"description": "The minimum allowed items for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"maxItems": {
|
|
"type": "integer",
|
|
"description": "The maximum allowed items for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"allowDuplicates": {
|
|
"type": "boolean",
|
|
"description": "True, if duplicate values are allowed."
|
|
},
|
|
"resolveReference": {
|
|
"type": "boolean",
|
|
"description": "True to resolve references in the content list."
|
|
},
|
|
"mustBePublished": {
|
|
"type": "boolean",
|
|
"description": "True when all references must be published."
|
|
},
|
|
"query": {
|
|
"type": "string",
|
|
"description": "The initial query that is applied in the UI.",
|
|
"nullable": true
|
|
},
|
|
"editor": {
|
|
"description": "The editor that is used to manage this field.",
|
|
"$ref": "#/components/schemas/ReferencesFieldEditor"
|
|
},
|
|
"schemaIds": {
|
|
"type": "array",
|
|
"description": "The ID of the referenced schemas.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"ReferencesFieldEditor": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"List",
|
|
"Dropdown",
|
|
"Tags",
|
|
"Checkboxes",
|
|
"Input",
|
|
"Radio"
|
|
],
|
|
"enum": [
|
|
"List",
|
|
"Dropdown",
|
|
"Tags",
|
|
"Checkboxes",
|
|
"Input",
|
|
"Radio"
|
|
]
|
|
},
|
|
"RichTextFieldPropertiesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FieldPropertiesDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"folderId": {
|
|
"type": "string",
|
|
"description": "The initial id to the folder when the control supports file uploads.",
|
|
"nullable": true
|
|
},
|
|
"minLength": {
|
|
"type": "integer",
|
|
"description": "The minimum allowed length for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"maxLength": {
|
|
"type": "integer",
|
|
"description": "The maximum allowed length for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"minCharacters": {
|
|
"type": "integer",
|
|
"description": "The minimum allowed of normal characters for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"maxCharacters": {
|
|
"type": "integer",
|
|
"description": "The maximum allowed of normal characters for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"minWords": {
|
|
"type": "integer",
|
|
"description": "The minimum allowed number of words for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"maxWords": {
|
|
"type": "integer",
|
|
"description": "The maximum allowed number of words for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"classNames": {
|
|
"type": "array",
|
|
"description": "The class names for the editor.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"schemaIds": {
|
|
"type": "array",
|
|
"description": "The allowed schema ids that can be embedded.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"StringFieldPropertiesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FieldPropertiesDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"defaultValues": {
|
|
"description": "The language specific default value for the field value.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/LocalizedValueOfString"
|
|
},
|
|
"defaultValue": {
|
|
"type": "string",
|
|
"description": "The default value for the field value.",
|
|
"nullable": true
|
|
},
|
|
"pattern": {
|
|
"type": "string",
|
|
"description": "The pattern to enforce a specific format for the field value.",
|
|
"nullable": true
|
|
},
|
|
"patternMessage": {
|
|
"type": "string",
|
|
"description": "The validation message for the pattern.",
|
|
"nullable": true
|
|
},
|
|
"folderId": {
|
|
"type": "string",
|
|
"description": "The initial id to the folder when the control supports file uploads.",
|
|
"nullable": true
|
|
},
|
|
"minLength": {
|
|
"type": "integer",
|
|
"description": "The minimum allowed length for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"maxLength": {
|
|
"type": "integer",
|
|
"description": "The maximum allowed length for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"minCharacters": {
|
|
"type": "integer",
|
|
"description": "The minimum allowed of normal characters for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"maxCharacters": {
|
|
"type": "integer",
|
|
"description": "The maximum allowed of normal characters for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"minWords": {
|
|
"type": "integer",
|
|
"description": "The minimum allowed number of words for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"maxWords": {
|
|
"type": "integer",
|
|
"description": "The maximum allowed number of words for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"classNames": {
|
|
"type": "array",
|
|
"description": "The class names for the editor.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"allowedValues": {
|
|
"type": "array",
|
|
"description": "The allowed values for the field value.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"schemaIds": {
|
|
"type": "array",
|
|
"description": "The allowed schema ids that can be embedded.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"isUnique": {
|
|
"type": "boolean",
|
|
"description": "Indicates if the field value must be unique. Ignored for nested fields and localized fields."
|
|
},
|
|
"isEmbeddable": {
|
|
"type": "boolean",
|
|
"description": "Indicates that other content items or references are embedded."
|
|
},
|
|
"inlineEditable": {
|
|
"type": "boolean",
|
|
"description": "Indicates that the inline editor is enabled for this field."
|
|
},
|
|
"createEnum": {
|
|
"type": "boolean",
|
|
"description": "Indicates whether GraphQL Enum should be created."
|
|
},
|
|
"contentType": {
|
|
"description": "How the string content should be interpreted.",
|
|
"$ref": "#/components/schemas/StringContentType"
|
|
},
|
|
"editor": {
|
|
"description": "The editor that is used to manage this field.",
|
|
"$ref": "#/components/schemas/StringFieldEditor"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"LocalizedValueOfString": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"StringContentType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Unspecified",
|
|
"Html",
|
|
"Markdown"
|
|
],
|
|
"enum": [
|
|
"Unspecified",
|
|
"Html",
|
|
"Markdown"
|
|
]
|
|
},
|
|
"StringFieldEditor": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Input",
|
|
"Color",
|
|
"Markdown",
|
|
"Dropdown",
|
|
"Html",
|
|
"Radio",
|
|
"RichText",
|
|
"Slug",
|
|
"StockPhoto",
|
|
"TextArea"
|
|
],
|
|
"enum": [
|
|
"Input",
|
|
"Color",
|
|
"Markdown",
|
|
"Dropdown",
|
|
"Html",
|
|
"Radio",
|
|
"RichText",
|
|
"Slug",
|
|
"StockPhoto",
|
|
"TextArea"
|
|
]
|
|
},
|
|
"TagsFieldPropertiesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FieldPropertiesDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"defaultValues": {
|
|
"description": "The language specific default value for the field value.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/LocalizedValueOfReadonlyListOfString"
|
|
},
|
|
"defaultValue": {
|
|
"type": "array",
|
|
"description": "The default value.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"minItems": {
|
|
"type": "integer",
|
|
"description": "The minimum allowed items for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"maxItems": {
|
|
"type": "integer",
|
|
"description": "The maximum allowed items for the field value.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"allowedValues": {
|
|
"type": "array",
|
|
"description": "The allowed values for the field value.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"createEnum": {
|
|
"type": "boolean",
|
|
"description": "Indicates whether GraphQL Enum should be created."
|
|
},
|
|
"editor": {
|
|
"description": "The editor that is used to manage this field.",
|
|
"$ref": "#/components/schemas/TagsFieldEditor"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"TagsFieldEditor": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Tags",
|
|
"Checkboxes",
|
|
"Dropdown"
|
|
],
|
|
"enum": [
|
|
"Tags",
|
|
"Checkboxes",
|
|
"Dropdown"
|
|
]
|
|
},
|
|
"UIFieldPropertiesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FieldPropertiesDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"editor": {
|
|
"description": "The editor that is used to manage this field.",
|
|
"$ref": "#/components/schemas/UIFieldEditor"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"UIFieldEditor": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Separator"
|
|
],
|
|
"enum": [
|
|
"Separator"
|
|
]
|
|
},
|
|
"UserInfoFieldPropertiesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FieldPropertiesDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"defaultRole": {
|
|
"type": "string",
|
|
"description": "The role to create a default value.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"NestedFieldDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name",
|
|
"properties",
|
|
"fieldId",
|
|
"isHidden",
|
|
"isLocked",
|
|
"isDisabled"
|
|
],
|
|
"properties": {
|
|
"fieldId": {
|
|
"type": "integer",
|
|
"description": "The ID of the field.",
|
|
"format": "int64"
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the field. Must be unique within the schema.",
|
|
"minLength": 1,
|
|
"pattern": "^[a-z0-9]+(\\-[a-z0-9]+)*$"
|
|
},
|
|
"isHidden": {
|
|
"type": "boolean",
|
|
"description": "Defines if the field is hidden."
|
|
},
|
|
"isLocked": {
|
|
"type": "boolean",
|
|
"description": "Defines if the field is locked."
|
|
},
|
|
"isDisabled": {
|
|
"type": "boolean",
|
|
"description": "Defines if the field is disabled."
|
|
},
|
|
"properties": {
|
|
"description": "The field properties.",
|
|
"$ref": "#/components/schemas/FieldPropertiesDto"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"AddFieldDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name",
|
|
"properties"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the field. Must be unique within the schema.",
|
|
"minLength": 1,
|
|
"pattern": "^[a-zA-Z0-9]+(\\-[a-zA-Z0-9]+)*$"
|
|
},
|
|
"partitioning": {
|
|
"type": "string",
|
|
"description": "Determines the optional partitioning of the field.",
|
|
"nullable": true
|
|
},
|
|
"properties": {
|
|
"description": "The field properties.",
|
|
"$ref": "#/components/schemas/FieldPropertiesDto"
|
|
}
|
|
}
|
|
},
|
|
"ConfigureUIFieldsDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"fieldsInLists": {
|
|
"type": "array",
|
|
"description": "The name of fields that are used in content lists.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"fieldsInReferences": {
|
|
"type": "array",
|
|
"description": "The name of fields that are used in content references.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"ReorderFieldsDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"fieldIds"
|
|
],
|
|
"properties": {
|
|
"fieldIds": {
|
|
"type": "array",
|
|
"description": "The field ids in the target order.",
|
|
"items": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"UpdateFieldDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"properties"
|
|
],
|
|
"properties": {
|
|
"properties": {
|
|
"description": "The field properties.",
|
|
"$ref": "#/components/schemas/FieldPropertiesDto"
|
|
}
|
|
}
|
|
},
|
|
"IndexesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"items"
|
|
],
|
|
"properties": {
|
|
"items": {
|
|
"type": "array",
|
|
"description": "The indexes.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/IndexDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"IndexDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name",
|
|
"fields"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the index.",
|
|
"minLength": 1
|
|
},
|
|
"fields": {
|
|
"type": "array",
|
|
"description": "The index fields.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/IndexFieldDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"IndexFieldDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name",
|
|
"order"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the field.",
|
|
"minLength": 1
|
|
},
|
|
"order": {
|
|
"description": "The sort order of the field.",
|
|
"$ref": "#/components/schemas/SortOrder"
|
|
}
|
|
}
|
|
},
|
|
"SortOrder": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Ascending",
|
|
"Descending"
|
|
],
|
|
"enum": [
|
|
"Ascending",
|
|
"Descending"
|
|
]
|
|
},
|
|
"CreateIndexDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"fields"
|
|
],
|
|
"properties": {
|
|
"fields": {
|
|
"type": "array",
|
|
"description": "The index fields.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/IndexFieldDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"SchemasDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"items"
|
|
],
|
|
"properties": {
|
|
"items": {
|
|
"type": "array",
|
|
"description": "The schemas.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/SchemaDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"CreateSchemaDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/UpsertSchemaDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the schema.",
|
|
"minLength": 1,
|
|
"pattern": "^[a-z0-9]+(\\-[a-z0-9]+)*$"
|
|
},
|
|
"type": {
|
|
"description": "The type of the schema.",
|
|
"$ref": "#/components/schemas/SchemaType"
|
|
},
|
|
"isSingleton": {
|
|
"type": "boolean",
|
|
"description": "Set to true to allow a single content item only.",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Use 'type' field now."
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"UpsertSchemaDto": {
|
|
"type": "object",
|
|
"x-abstract": true,
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"properties": {
|
|
"description": "The optional properties.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/SchemaPropertiesDto"
|
|
},
|
|
"scripts": {
|
|
"description": "The optional scripts.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/SchemaScriptsDto"
|
|
},
|
|
"fieldsInReferences": {
|
|
"type": "array",
|
|
"description": "The names of the fields that should be used in references.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"fieldsInLists": {
|
|
"type": "array",
|
|
"description": "The names of the fields that should be shown in lists, including meta fields.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"fields": {
|
|
"type": "array",
|
|
"description": "Optional fields.",
|
|
"nullable": true,
|
|
"items": {
|
|
"$ref": "#/components/schemas/UpsertSchemaFieldDto"
|
|
}
|
|
},
|
|
"previewUrls": {
|
|
"type": "object",
|
|
"description": "The optional preview urls.",
|
|
"nullable": true,
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"fieldRules": {
|
|
"type": "array",
|
|
"description": "The optional field Rules.",
|
|
"nullable": true,
|
|
"items": {
|
|
"$ref": "#/components/schemas/FieldRuleDto"
|
|
}
|
|
},
|
|
"category": {
|
|
"type": "string",
|
|
"description": "The category.",
|
|
"nullable": true
|
|
},
|
|
"isPublished": {
|
|
"type": "boolean",
|
|
"description": "Set it to true to autopublish the schema."
|
|
}
|
|
}
|
|
},
|
|
"UpsertSchemaFieldDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name",
|
|
"properties"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the field. Must be unique within the schema.",
|
|
"minLength": 1,
|
|
"pattern": "^[a-zA-Z0-9]+(\\-[a-zA-Z0-9]+)*$"
|
|
},
|
|
"isHidden": {
|
|
"type": "boolean",
|
|
"description": "Defines if the field is hidden."
|
|
},
|
|
"isLocked": {
|
|
"type": "boolean",
|
|
"description": "Defines if the field is locked."
|
|
},
|
|
"isDisabled": {
|
|
"type": "boolean",
|
|
"description": "Defines if the field is disabled."
|
|
},
|
|
"partitioning": {
|
|
"type": "string",
|
|
"description": "Determines the optional partitioning of the field.",
|
|
"nullable": true
|
|
},
|
|
"properties": {
|
|
"description": "The field properties.",
|
|
"$ref": "#/components/schemas/FieldPropertiesDto"
|
|
},
|
|
"nested": {
|
|
"type": "array",
|
|
"description": "The nested fields.",
|
|
"nullable": true,
|
|
"items": {
|
|
"$ref": "#/components/schemas/UpsertSchemaNestedFieldDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"UpsertSchemaNestedFieldDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name",
|
|
"properties"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the field. Must be unique within the schema.",
|
|
"minLength": 1,
|
|
"pattern": "^[a-zA-Z0-9]+(\\-[a-zA-Z0-9]+)*$"
|
|
},
|
|
"isHidden": {
|
|
"type": "boolean",
|
|
"description": "Defines if the field is hidden."
|
|
},
|
|
"isLocked": {
|
|
"type": "boolean",
|
|
"description": "Defines if the field is locked."
|
|
},
|
|
"isDisabled": {
|
|
"type": "boolean",
|
|
"description": "Defines if the field is disabled."
|
|
},
|
|
"properties": {
|
|
"description": "The field properties.",
|
|
"$ref": "#/components/schemas/FieldPropertiesDto"
|
|
}
|
|
}
|
|
},
|
|
"GenerateSchemaResponseDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"log"
|
|
],
|
|
"properties": {
|
|
"log": {
|
|
"type": "array",
|
|
"description": "The status log.",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"schemaName": {
|
|
"type": "string",
|
|
"description": "The name of the created schema.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"GenerateSchemaDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"prompt",
|
|
"execute",
|
|
"numberOfContentItems"
|
|
],
|
|
"properties": {
|
|
"prompt": {
|
|
"type": "string",
|
|
"description": "The prompt to generate.",
|
|
"minLength": 1
|
|
},
|
|
"execute": {
|
|
"type": "boolean",
|
|
"description": "Indicates if the schema should actually be generated."
|
|
},
|
|
"numberOfContentItems": {
|
|
"type": "integer",
|
|
"description": "The number of content items to generate.",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"UpdateSchemaDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"label": {
|
|
"type": "string",
|
|
"description": "Optional label for the editor.",
|
|
"maxLength": 100,
|
|
"minLength": 0,
|
|
"nullable": true
|
|
},
|
|
"hints": {
|
|
"type": "string",
|
|
"description": "Hints to describe the schema.",
|
|
"maxLength": 1000,
|
|
"minLength": 0,
|
|
"nullable": true
|
|
},
|
|
"contentsSidebarUrl": {
|
|
"type": "string",
|
|
"description": "The url to a the sidebar plugin for content lists.",
|
|
"nullable": true
|
|
},
|
|
"contentSidebarUrl": {
|
|
"type": "string",
|
|
"description": "The url to a the sidebar plugin for content items.",
|
|
"nullable": true
|
|
},
|
|
"contentsListUrl": {
|
|
"type": "string",
|
|
"description": "The url to the content list plugin.",
|
|
"nullable": true
|
|
},
|
|
"validateOnPublish": {
|
|
"type": "boolean",
|
|
"description": "True to validate the content items on publish."
|
|
},
|
|
"tags": {
|
|
"type": "array",
|
|
"description": "Tags for automation processes.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"SynchronizeSchemaDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/UpsertSchemaDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"noFieldDeletion": {
|
|
"type": "boolean",
|
|
"description": "True, when fields should not be deleted."
|
|
},
|
|
"noFieldRecreation": {
|
|
"type": "boolean",
|
|
"description": "True, when fields with different types should not be recreated."
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"ChangeCategoryDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the category.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"ConfigurePreviewUrlsDto": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"ConfigureFieldRulesDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"fieldRules": {
|
|
"type": "array",
|
|
"description": "The field rules to configure.",
|
|
"nullable": true,
|
|
"items": {
|
|
"$ref": "#/components/schemas/FieldRuleDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"RuleElementDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"description",
|
|
"display",
|
|
"properties"
|
|
],
|
|
"properties": {
|
|
"description": {
|
|
"type": "string",
|
|
"description": "Describes the action or trigger type."
|
|
},
|
|
"display": {
|
|
"type": "string",
|
|
"description": "The label for the action or trigger type."
|
|
},
|
|
"title": {
|
|
"type": "string",
|
|
"description": "Optional title.",
|
|
"nullable": true
|
|
},
|
|
"iconColor": {
|
|
"type": "string",
|
|
"description": "The color for the icon.",
|
|
"nullable": true
|
|
},
|
|
"iconImage": {
|
|
"type": "string",
|
|
"description": "The image for the icon.",
|
|
"nullable": true
|
|
},
|
|
"readMore": {
|
|
"type": "string",
|
|
"description": "The optional link to the product that is integrated.",
|
|
"nullable": true
|
|
},
|
|
"properties": {
|
|
"type": "array",
|
|
"description": "The properties.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/RuleElementPropertyDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"RuleElementPropertyDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"editor",
|
|
"name",
|
|
"display",
|
|
"isFormattable",
|
|
"isRequired"
|
|
],
|
|
"properties": {
|
|
"editor": {
|
|
"type": "string",
|
|
"description": "The html editor."
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the editor."
|
|
},
|
|
"display": {
|
|
"type": "string",
|
|
"description": "The label to use."
|
|
},
|
|
"options": {
|
|
"type": "array",
|
|
"description": "The options, if the editor is a dropdown.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"description": "The optional description.",
|
|
"nullable": true
|
|
},
|
|
"isFormattable": {
|
|
"type": "boolean",
|
|
"description": "Indicates if the property is formattable."
|
|
},
|
|
"isRequired": {
|
|
"type": "boolean",
|
|
"description": "Indicates if the property is required."
|
|
}
|
|
}
|
|
},
|
|
"RulesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"items"
|
|
],
|
|
"properties": {
|
|
"items": {
|
|
"type": "array",
|
|
"description": "The rules.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/RuleDto"
|
|
}
|
|
},
|
|
"runningRuleId": {
|
|
"type": "string",
|
|
"description": "The ID of the rule that is currently rerunning.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"RuleDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"id",
|
|
"createdBy",
|
|
"lastModifiedBy",
|
|
"created",
|
|
"lastModified",
|
|
"version",
|
|
"isEnabled",
|
|
"trigger",
|
|
"flow",
|
|
"action",
|
|
"numSucceeded",
|
|
"numFailed"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "The ID of the rule."
|
|
},
|
|
"createdBy": {
|
|
"type": "string",
|
|
"description": "The user that has created the rule."
|
|
},
|
|
"lastModifiedBy": {
|
|
"type": "string",
|
|
"description": "The user that has updated the rule."
|
|
},
|
|
"created": {
|
|
"type": "string",
|
|
"description": "The date and time when the rule has been created.",
|
|
"format": "date-time"
|
|
},
|
|
"lastModified": {
|
|
"type": "string",
|
|
"description": "The date and time when the rule has been modified last.",
|
|
"format": "date-time"
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"description": "The version of the rule.",
|
|
"format": "int64"
|
|
},
|
|
"isEnabled": {
|
|
"type": "boolean",
|
|
"description": "Determines if the rule is enabled."
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "Optional rule name.",
|
|
"nullable": true
|
|
},
|
|
"trigger": {
|
|
"description": "The trigger properties.",
|
|
"$ref": "#/components/schemas/RuleTriggerDto"
|
|
},
|
|
"flow": {
|
|
"description": "The flow to describe the sequence of actions to perform.",
|
|
"$ref": "#/components/schemas/FlowDefinitionDto"
|
|
},
|
|
"action": {
|
|
"description": "The action properties.",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Use the new 'Flow' property to define actions. Can be null if the flow cannot be converted.",
|
|
"$ref": "#/components/schemas/RuleActionDto"
|
|
},
|
|
"numSucceeded": {
|
|
"type": "integer",
|
|
"description": "The number of completed executions.",
|
|
"format": "int64"
|
|
},
|
|
"numFailed": {
|
|
"type": "integer",
|
|
"description": "The number of failed executions.",
|
|
"format": "int64"
|
|
},
|
|
"lastExecuted": {
|
|
"type": "string",
|
|
"description": "The date and time when the rule was executed the last time.",
|
|
"format": "date-time",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Removed when migrated to new rule statistics.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"RuleTriggerDto": {
|
|
"type": "object",
|
|
"discriminator": {
|
|
"propertyName": "triggerType",
|
|
"mapping": {
|
|
"AssetChanged": "#/components/schemas/AssetChangedRuleTriggerDto",
|
|
"Comment": "#/components/schemas/CommentRuleTriggerDto",
|
|
"ContentChanged": "#/components/schemas/ContentChangedRuleTriggerDto",
|
|
"CronJob": "#/components/schemas/CronJobRuleTriggerDto",
|
|
"Manual": "#/components/schemas/ManualRuleTriggerDto",
|
|
"SchemaChanged": "#/components/schemas/SchemaChangedRuleTriggerDto",
|
|
"Usage": "#/components/schemas/UsageRuleTriggerDto"
|
|
}
|
|
},
|
|
"x-abstract": true,
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"triggerType"
|
|
],
|
|
"properties": {
|
|
"triggerType": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"AssetChangedRuleTriggerDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleTriggerDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"condition": {
|
|
"type": "string",
|
|
"description": "Javascript condition when to trigger.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"CommentRuleTriggerDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleTriggerDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"condition": {
|
|
"type": "string",
|
|
"description": "Javascript condition when to trigger.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"ContentChangedRuleTriggerDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleTriggerDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"handleAll"
|
|
],
|
|
"properties": {
|
|
"schemas": {
|
|
"type": "array",
|
|
"description": "The schema settings.",
|
|
"nullable": true,
|
|
"items": {
|
|
"$ref": "#/components/schemas/SchemaCondition"
|
|
}
|
|
},
|
|
"referencedSchemas": {
|
|
"type": "array",
|
|
"description": "The schema references.",
|
|
"nullable": true,
|
|
"items": {
|
|
"$ref": "#/components/schemas/SchemaCondition"
|
|
}
|
|
},
|
|
"handleAll": {
|
|
"type": "boolean",
|
|
"description": "Determines whether the trigger should handle all content changes events."
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"SchemaCondition": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"schemaId"
|
|
],
|
|
"properties": {
|
|
"schemaId": {
|
|
"type": "string"
|
|
},
|
|
"condition": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"CronJobRuleTriggerDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleTriggerDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"cronExpression",
|
|
"value"
|
|
],
|
|
"properties": {
|
|
"cronExpression": {
|
|
"type": "string",
|
|
"description": "The cron expression that defines the interval.",
|
|
"minLength": 1
|
|
},
|
|
"cronTimezone": {
|
|
"type": "string",
|
|
"description": "The optional timezone.",
|
|
"nullable": true
|
|
},
|
|
"value": {
|
|
"description": "The value sent to the flow."
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"ManualRuleTriggerDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleTriggerDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
}
|
|
]
|
|
},
|
|
"SchemaChangedRuleTriggerDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleTriggerDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"condition": {
|
|
"type": "string",
|
|
"description": "Javascript condition when to trigger.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"UsageRuleTriggerDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleTriggerDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"limit"
|
|
],
|
|
"properties": {
|
|
"limit": {
|
|
"type": "integer",
|
|
"description": "The number of monthly api calls.",
|
|
"format": "int32"
|
|
},
|
|
"numDays": {
|
|
"type": "integer",
|
|
"description": "The number of days to check or null for the current month.",
|
|
"format": "int32",
|
|
"maximum": 30.0,
|
|
"minimum": 1.0,
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"FlowDefinitionDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"initialStepId",
|
|
"steps"
|
|
],
|
|
"properties": {
|
|
"initialStepId": {
|
|
"type": "string",
|
|
"description": "The ID of the initial step.",
|
|
"format": "guid",
|
|
"minLength": 1
|
|
},
|
|
"steps": {
|
|
"type": "object",
|
|
"description": "The steps.",
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/FlowStepDefinitionDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"FlowStepDefinitionDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"step"
|
|
],
|
|
"properties": {
|
|
"step": {
|
|
"description": "The actual step.",
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The optional descriptive name.",
|
|
"nullable": true
|
|
},
|
|
"nextStepId": {
|
|
"type": "string",
|
|
"description": "The next step.",
|
|
"format": "guid",
|
|
"nullable": true
|
|
},
|
|
"ignoreError": {
|
|
"type": "boolean",
|
|
"description": "Indicates if errors should be ignored."
|
|
}
|
|
}
|
|
},
|
|
"FlowStepDto": {
|
|
"type": "object",
|
|
"discriminator": {
|
|
"propertyName": "stepType",
|
|
"mapping": {
|
|
"Algolia": "#/components/schemas/AlgoliaFlowStepDto",
|
|
"AzureQueue": "#/components/schemas/AzureQueueFlowStepDto",
|
|
"Comment": "#/components/schemas/CommentFlowStepDto",
|
|
"CreateContent": "#/components/schemas/CreateContentFlowStepDto",
|
|
"Delay": "#/components/schemas/DelayFlowStepDto",
|
|
"Discourse": "#/components/schemas/DiscourseFlowStepDto",
|
|
"ElasticSearch": "#/components/schemas/ElasticSearchFlowStepDto",
|
|
"Email": "#/components/schemas/EmailFlowStepDto",
|
|
"Fastly": "#/components/schemas/FastlyFlowStepDto",
|
|
"If": "#/components/schemas/IfFlowStepDto",
|
|
"Medium": "#/components/schemas/MediumFlowStepDto",
|
|
"Notification": "#/components/schemas/NotificationFlowStepDto",
|
|
"OpenSearch": "#/components/schemas/OpenSearchFlowStepDto",
|
|
"Prerender": "#/components/schemas/PrerenderFlowStepDto",
|
|
"Script": "#/components/schemas/ScriptFlowStepDto",
|
|
"SignalR": "#/components/schemas/SignalRFlowStepDto",
|
|
"Slack": "#/components/schemas/SlackFlowStepDto",
|
|
"Tweet": "#/components/schemas/TweetFlowStepDto",
|
|
"Typesense": "#/components/schemas/TypesenseFlowStepDto",
|
|
"Webhook": "#/components/schemas/WebhookFlowStepDto"
|
|
}
|
|
},
|
|
"x-abstract": true,
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"stepType"
|
|
],
|
|
"properties": {
|
|
"stepType": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"AlgoliaFlowStepDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"appId",
|
|
"apiKey",
|
|
"indexName"
|
|
],
|
|
"properties": {
|
|
"appId": {
|
|
"title": "Application Id",
|
|
"type": "string",
|
|
"description": "The application ID.",
|
|
"minLength": 1
|
|
},
|
|
"apiKey": {
|
|
"title": "Api Key",
|
|
"type": "string",
|
|
"description": "The API key to grant access to Squidex.",
|
|
"minLength": 1
|
|
},
|
|
"indexName": {
|
|
"title": "Index Name",
|
|
"type": "string",
|
|
"description": "The name of the index.",
|
|
"minLength": 1
|
|
},
|
|
"document": {
|
|
"title": "Document",
|
|
"type": "string",
|
|
"description": "The optional custom document.",
|
|
"nullable": true
|
|
},
|
|
"delete": {
|
|
"title": "Deletion",
|
|
"type": "string",
|
|
"description": "The condition when to delete the entry.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"AzureQueueFlowStepDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"connectionString",
|
|
"queue"
|
|
],
|
|
"properties": {
|
|
"connectionString": {
|
|
"title": "Connection",
|
|
"type": "string",
|
|
"description": "The connection string to the storage account.",
|
|
"minLength": 1
|
|
},
|
|
"queue": {
|
|
"title": "Queue",
|
|
"type": "string",
|
|
"description": "The name of the queue.",
|
|
"minLength": 1
|
|
},
|
|
"payload": {
|
|
"title": "Payload (Optional)",
|
|
"type": "string",
|
|
"description": "Leave it empty to use the full event as body.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"CommentFlowStepDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"text"
|
|
],
|
|
"properties": {
|
|
"text": {
|
|
"title": "Text",
|
|
"type": "string",
|
|
"description": "The comment text.",
|
|
"minLength": 1
|
|
},
|
|
"client": {
|
|
"title": "Client",
|
|
"type": "string",
|
|
"description": "An optional client name.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"CreateContentFlowStepDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"data",
|
|
"schema",
|
|
"publish"
|
|
],
|
|
"properties": {
|
|
"data": {
|
|
"title": "Data",
|
|
"type": "string",
|
|
"description": "The content data.",
|
|
"minLength": 1
|
|
},
|
|
"schema": {
|
|
"title": "Schema",
|
|
"type": "string",
|
|
"description": "The name of the schema.",
|
|
"minLength": 1
|
|
},
|
|
"client": {
|
|
"title": "Client",
|
|
"type": "string",
|
|
"description": "An optional client name.",
|
|
"nullable": true
|
|
},
|
|
"publish": {
|
|
"title": "Publish",
|
|
"type": "boolean",
|
|
"description": "Publish the content."
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"DelayFlowStepDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"delayInSec"
|
|
],
|
|
"properties": {
|
|
"delayInSec": {
|
|
"title": "Delay",
|
|
"type": "integer",
|
|
"description": "The delay in seconds.",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"DiscourseFlowStepDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"url",
|
|
"apiKey",
|
|
"apiUsername",
|
|
"text"
|
|
],
|
|
"properties": {
|
|
"url": {
|
|
"title": "Server Url",
|
|
"type": "string",
|
|
"description": "The url to the discourse server.",
|
|
"format": "uri",
|
|
"minLength": 1
|
|
},
|
|
"apiKey": {
|
|
"title": "Api Key",
|
|
"type": "string",
|
|
"description": "The api key to authenticate to your discourse server.",
|
|
"minLength": 1
|
|
},
|
|
"apiUsername": {
|
|
"title": "Api User",
|
|
"type": "string",
|
|
"description": "The api username to authenticate to your discourse server.",
|
|
"minLength": 1
|
|
},
|
|
"text": {
|
|
"title": "Text",
|
|
"type": "string",
|
|
"description": "The text as markdown.",
|
|
"minLength": 1
|
|
},
|
|
"title": {
|
|
"title": "Title",
|
|
"type": "string",
|
|
"description": "The optional title when creating new topics.",
|
|
"nullable": true
|
|
},
|
|
"topic": {
|
|
"title": "Topic",
|
|
"type": "integer",
|
|
"description": "The optional topic id.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"category": {
|
|
"title": "Category",
|
|
"type": "integer",
|
|
"description": "The optional category id.",
|
|
"format": "int32",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"ElasticSearchFlowStepDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"host",
|
|
"indexName"
|
|
],
|
|
"properties": {
|
|
"host": {
|
|
"title": "Server Url",
|
|
"type": "string",
|
|
"description": "The url to the instance or cluster.",
|
|
"format": "uri",
|
|
"minLength": 1
|
|
},
|
|
"indexName": {
|
|
"title": "Index Name",
|
|
"type": "string",
|
|
"description": "The name of the index.",
|
|
"minLength": 1
|
|
},
|
|
"username": {
|
|
"title": "Username",
|
|
"type": "string",
|
|
"description": "The optional username.",
|
|
"nullable": true
|
|
},
|
|
"password": {
|
|
"title": "Password",
|
|
"type": "string",
|
|
"description": "The optional password.",
|
|
"nullable": true
|
|
},
|
|
"document": {
|
|
"title": "Document",
|
|
"type": "string",
|
|
"description": "The optional custom document.",
|
|
"nullable": true
|
|
},
|
|
"delete": {
|
|
"title": "Deletion",
|
|
"type": "string",
|
|
"description": "The condition when to delete the document.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"EmailFlowStepDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"serverHost",
|
|
"serverPort",
|
|
"messageFrom",
|
|
"messageTo",
|
|
"messageSubject",
|
|
"messageBody",
|
|
"serverUsername",
|
|
"serverPassword"
|
|
],
|
|
"properties": {
|
|
"serverHost": {
|
|
"title": "Server Host",
|
|
"type": "string",
|
|
"description": "The IP address or host to the SMTP server.",
|
|
"minLength": 1
|
|
},
|
|
"serverPort": {
|
|
"title": "Server Port",
|
|
"type": "integer",
|
|
"description": "The port to the SMTP server.",
|
|
"format": "int32"
|
|
},
|
|
"serverUsername": {
|
|
"title": "Username",
|
|
"type": "string",
|
|
"description": "The username for the SMTP server."
|
|
},
|
|
"serverPassword": {
|
|
"title": "Password",
|
|
"type": "string",
|
|
"description": "The password for the SMTP server."
|
|
},
|
|
"messageFrom": {
|
|
"title": "From Address",
|
|
"type": "string",
|
|
"description": "The email sending address.",
|
|
"minLength": 1
|
|
},
|
|
"messageTo": {
|
|
"title": "To Address",
|
|
"type": "string",
|
|
"description": "The email message will be sent to.",
|
|
"minLength": 1
|
|
},
|
|
"messageSubject": {
|
|
"title": "Subject",
|
|
"type": "string",
|
|
"description": "The subject line for this email message.",
|
|
"minLength": 1
|
|
},
|
|
"messageBody": {
|
|
"title": "Body",
|
|
"type": "string",
|
|
"description": "The message body.",
|
|
"minLength": 1
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"FastlyFlowStepDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"apiKey",
|
|
"serviceId"
|
|
],
|
|
"properties": {
|
|
"apiKey": {
|
|
"title": "Api Key",
|
|
"type": "string",
|
|
"description": "The API key to grant access to Squidex.",
|
|
"minLength": 1
|
|
},
|
|
"serviceId": {
|
|
"title": "Service Id",
|
|
"type": "string",
|
|
"description": "The ID of the fastly service.",
|
|
"minLength": 1
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"IfFlowStepDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"branches": {
|
|
"title": "Branches",
|
|
"type": "array",
|
|
"description": "The delay in seconds.",
|
|
"nullable": true,
|
|
"items": {
|
|
"$ref": "#/components/schemas/IfFlowBranch"
|
|
}
|
|
},
|
|
"elseStepId": {
|
|
"type": "string",
|
|
"format": "guid",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"IfFlowBranch": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"condition": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"nextStepId": {
|
|
"type": "string",
|
|
"format": "guid",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"MediumFlowStepDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"accessToken",
|
|
"title",
|
|
"content",
|
|
"isHtml"
|
|
],
|
|
"properties": {
|
|
"accessToken": {
|
|
"title": "Access Token",
|
|
"type": "string",
|
|
"description": "The self issued access token.",
|
|
"minLength": 1
|
|
},
|
|
"title": {
|
|
"title": "Title",
|
|
"type": "string",
|
|
"description": "The title, used for the url.",
|
|
"minLength": 1
|
|
},
|
|
"content": {
|
|
"title": "Content",
|
|
"type": "string",
|
|
"description": "The content, either html or markdown.",
|
|
"minLength": 1
|
|
},
|
|
"canonicalUrl": {
|
|
"title": "Canonical Url",
|
|
"type": "string",
|
|
"description": "The original home of this content, if it was originally published elsewhere.",
|
|
"nullable": true
|
|
},
|
|
"tags": {
|
|
"title": "Tags",
|
|
"type": "string",
|
|
"description": "The optional comma separated list of tags.",
|
|
"nullable": true
|
|
},
|
|
"publicationId": {
|
|
"title": "Publication Id",
|
|
"type": "string",
|
|
"description": "Optional publication id.",
|
|
"nullable": true
|
|
},
|
|
"isHtml": {
|
|
"title": "Is Html",
|
|
"type": "boolean",
|
|
"description": "Indicates whether the content is markdown or html."
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"NotificationFlowStepDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"user",
|
|
"text"
|
|
],
|
|
"properties": {
|
|
"user": {
|
|
"title": "User",
|
|
"type": "string",
|
|
"description": "The user id or email.",
|
|
"minLength": 1
|
|
},
|
|
"text": {
|
|
"title": "Title",
|
|
"type": "string",
|
|
"description": "The text to send.",
|
|
"minLength": 1
|
|
},
|
|
"url": {
|
|
"title": "Url",
|
|
"type": "string",
|
|
"description": "The optional url to attach to the notification.",
|
|
"nullable": true
|
|
},
|
|
"client": {
|
|
"title": "Client",
|
|
"type": "string",
|
|
"description": "An optional client name.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"OpenSearchFlowStepDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"host",
|
|
"indexName"
|
|
],
|
|
"properties": {
|
|
"host": {
|
|
"title": "Server Url",
|
|
"type": "string",
|
|
"description": "The url to the instance or cluster.",
|
|
"format": "uri",
|
|
"minLength": 1
|
|
},
|
|
"indexName": {
|
|
"title": "Index Name",
|
|
"type": "string",
|
|
"description": "The name of the index.",
|
|
"minLength": 1
|
|
},
|
|
"username": {
|
|
"title": "Username",
|
|
"type": "string",
|
|
"description": "The optional username.",
|
|
"nullable": true
|
|
},
|
|
"password": {
|
|
"title": "Password",
|
|
"type": "string",
|
|
"description": "The optional password.",
|
|
"nullable": true
|
|
},
|
|
"document": {
|
|
"title": "Document",
|
|
"type": "string",
|
|
"description": "The optional custom document.",
|
|
"nullable": true
|
|
},
|
|
"delete": {
|
|
"title": "Deletion",
|
|
"type": "string",
|
|
"description": "The condition when to delete the document.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"PrerenderFlowStepDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"token",
|
|
"url"
|
|
],
|
|
"properties": {
|
|
"token": {
|
|
"title": "Token",
|
|
"type": "string",
|
|
"description": "The prerender token from your account.",
|
|
"minLength": 1
|
|
},
|
|
"url": {
|
|
"title": "Url",
|
|
"type": "string",
|
|
"description": "The url to recache.",
|
|
"minLength": 1
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"ScriptFlowStepDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"script": {
|
|
"title": "Script",
|
|
"type": "string",
|
|
"description": "The script to execute.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"SignalRFlowStepDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"connectionString",
|
|
"hubName",
|
|
"action"
|
|
],
|
|
"properties": {
|
|
"connectionString": {
|
|
"title": "Connection",
|
|
"type": "string",
|
|
"description": "The connection string to the Azure SignalR.",
|
|
"minLength": 1
|
|
},
|
|
"hubName": {
|
|
"title": "Hub Name",
|
|
"type": "string",
|
|
"description": "The name of the hub.",
|
|
"minLength": 1
|
|
},
|
|
"action": {
|
|
"title": "Action",
|
|
"description": "* Broadcast = send to all users.\n * User = send to all target users(s).\n * Group = send to all target group(s).",
|
|
"$ref": "#/components/schemas/SignalRActionType"
|
|
},
|
|
"methodName": {
|
|
"title": "Methode Name",
|
|
"type": "string",
|
|
"description": "Set the Name of the hub method received by the customer.",
|
|
"nullable": true
|
|
},
|
|
"target": {
|
|
"title": "Target (Optional)",
|
|
"type": "string",
|
|
"description": "Define target users or groups by id or name. One item per line. Not needed for Broadcast action.",
|
|
"nullable": true
|
|
},
|
|
"payload": {
|
|
"title": "Payload (Optional)",
|
|
"type": "string",
|
|
"description": "Leave it empty to use the full event as body.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"SignalRActionType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Broadcast",
|
|
"User",
|
|
"Group"
|
|
],
|
|
"enum": [
|
|
"Broadcast",
|
|
"User",
|
|
"Group"
|
|
]
|
|
},
|
|
"SlackFlowStepDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"webhookUrl",
|
|
"text"
|
|
],
|
|
"properties": {
|
|
"webhookUrl": {
|
|
"title": "Webhook Url",
|
|
"type": "string",
|
|
"description": "The slack webhook url.",
|
|
"format": "uri",
|
|
"minLength": 1
|
|
},
|
|
"text": {
|
|
"title": "Text",
|
|
"type": "string",
|
|
"description": "The text that is sent as message to slack.",
|
|
"minLength": 1
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"TweetFlowStepDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"accessToken",
|
|
"accessSecret",
|
|
"text"
|
|
],
|
|
"properties": {
|
|
"accessToken": {
|
|
"title": "Access Token",
|
|
"type": "string",
|
|
"description": " The generated access token.",
|
|
"minLength": 1
|
|
},
|
|
"accessSecret": {
|
|
"title": "Access Secret",
|
|
"type": "string",
|
|
"description": " The generated access secret.",
|
|
"minLength": 1
|
|
},
|
|
"text": {
|
|
"title": "Text",
|
|
"type": "string",
|
|
"description": "The text that is sent as tweet to twitter.",
|
|
"minLength": 1
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"TypesenseFlowStepDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"host",
|
|
"indexName",
|
|
"apiKey"
|
|
],
|
|
"properties": {
|
|
"host": {
|
|
"title": "Server Url",
|
|
"type": "string",
|
|
"description": "The url to the instance or cluster.",
|
|
"format": "uri",
|
|
"minLength": 1
|
|
},
|
|
"indexName": {
|
|
"title": "Index Name",
|
|
"type": "string",
|
|
"description": "The name of the index.",
|
|
"minLength": 1
|
|
},
|
|
"apiKey": {
|
|
"title": "Api Key",
|
|
"type": "string",
|
|
"description": "The api key.",
|
|
"minLength": 1
|
|
},
|
|
"document": {
|
|
"title": "Document",
|
|
"type": "string",
|
|
"description": "The optional custom document.",
|
|
"nullable": true
|
|
},
|
|
"delete": {
|
|
"title": "Deletion",
|
|
"type": "string",
|
|
"description": "The condition when to delete the document.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"WebhookFlowStepDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FlowStepDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"method",
|
|
"url"
|
|
],
|
|
"properties": {
|
|
"method": {
|
|
"title": "Method",
|
|
"description": "The type of the request.",
|
|
"$ref": "#/components/schemas/WebhookMethod"
|
|
},
|
|
"url": {
|
|
"title": "Url",
|
|
"type": "string",
|
|
"description": "The URL to the webhook.",
|
|
"minLength": 1
|
|
},
|
|
"payload": {
|
|
"title": "Payload (Optional)",
|
|
"type": "string",
|
|
"description": "Leave it empty to use the full event as body.",
|
|
"nullable": true
|
|
},
|
|
"headers": {
|
|
"title": "Headers (Optional)",
|
|
"type": "string",
|
|
"description": "The message headers in the format '[Key]=[Value]', one entry per line.",
|
|
"nullable": true
|
|
},
|
|
"payloadType": {
|
|
"title": "Payload Type",
|
|
"type": "string",
|
|
"description": "The mime type of the payload.",
|
|
"nullable": true
|
|
},
|
|
"sharedSecret": {
|
|
"title": "Shared Secret",
|
|
"type": "string",
|
|
"description": "The shared secret that is used to calculate the payload signature.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"WebhookMethod": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"POST",
|
|
"PUT",
|
|
"GET",
|
|
"DELETE",
|
|
"PATCH"
|
|
],
|
|
"enum": [
|
|
"POST",
|
|
"PUT",
|
|
"GET",
|
|
"DELETE",
|
|
"PATCH"
|
|
]
|
|
},
|
|
"RuleActionDto": {
|
|
"type": "object",
|
|
"discriminator": {
|
|
"propertyName": "actionType",
|
|
"mapping": {
|
|
"Algolia": "#/components/schemas/AlgoliaRuleActionDto",
|
|
"AzureQueue": "#/components/schemas/AzureQueueRuleActionDto",
|
|
"Comment": "#/components/schemas/CommentRuleActionDto",
|
|
"CreateContent": "#/components/schemas/CreateContentRuleActionDto",
|
|
"Discourse": "#/components/schemas/DiscourseRuleActionDto",
|
|
"ElasticSearch": "#/components/schemas/ElasticSearchRuleActionDto",
|
|
"Email": "#/components/schemas/EmailRuleActionDto",
|
|
"Fastly": "#/components/schemas/FastlyRuleActionDto",
|
|
"Medium": "#/components/schemas/MediumRuleActionDto",
|
|
"Notification": "#/components/schemas/NotificationRuleActionDto",
|
|
"OpenSearch": "#/components/schemas/OpenSearchRuleActionDto",
|
|
"Prerender": "#/components/schemas/PrerenderRuleActionDto",
|
|
"Script": "#/components/schemas/ScriptRuleActionDto",
|
|
"SignalR": "#/components/schemas/SignalRRuleActionDto",
|
|
"Slack": "#/components/schemas/SlackRuleActionDto",
|
|
"Tweet": "#/components/schemas/TweetRuleActionDto",
|
|
"Typesense": "#/components/schemas/TypesenseRuleActionDto",
|
|
"Webhook": "#/components/schemas/WebhookRuleActionDto"
|
|
}
|
|
},
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Has been replaced by flows.",
|
|
"x-abstract": true,
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"actionType"
|
|
],
|
|
"properties": {
|
|
"actionType": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"AlgoliaRuleActionDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleActionDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Has been replaced by flows.",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"appId",
|
|
"apiKey",
|
|
"indexName"
|
|
],
|
|
"properties": {
|
|
"appId": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"apiKey": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"indexName": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"document": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"delete": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"AzureQueueRuleActionDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleActionDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Has been replaced by flows.",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"connectionString",
|
|
"queue"
|
|
],
|
|
"properties": {
|
|
"connectionString": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"queue": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"payload": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"CommentRuleActionDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleActionDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Has been replaced by flows.",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"text"
|
|
],
|
|
"properties": {
|
|
"text": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"client": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"CreateContentRuleActionDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleActionDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Has been replaced by flows.",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"data",
|
|
"schema",
|
|
"publish"
|
|
],
|
|
"properties": {
|
|
"data": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"schema": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"client": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"publish": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"DiscourseRuleActionDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleActionDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Has been replaced by flows.",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"url",
|
|
"apiKey",
|
|
"apiUsername",
|
|
"text"
|
|
],
|
|
"properties": {
|
|
"url": {
|
|
"type": "string",
|
|
"format": "uri",
|
|
"minLength": 1
|
|
},
|
|
"apiKey": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"apiUsername": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"text": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"title": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"topic": {
|
|
"type": "integer",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"category": {
|
|
"type": "integer",
|
|
"format": "int32",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"ElasticSearchRuleActionDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleActionDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Has been replaced by flows.",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"host",
|
|
"indexName"
|
|
],
|
|
"properties": {
|
|
"host": {
|
|
"type": "string",
|
|
"format": "uri",
|
|
"minLength": 1
|
|
},
|
|
"indexName": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"username": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"password": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"document": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"delete": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"EmailRuleActionDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleActionDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Has been replaced by flows.",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"serverHost",
|
|
"serverPort",
|
|
"messageFrom",
|
|
"messageTo",
|
|
"messageSubject",
|
|
"messageBody",
|
|
"serverUsername",
|
|
"serverPassword"
|
|
],
|
|
"properties": {
|
|
"serverHost": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"serverPort": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"messageFrom": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"messageTo": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"messageSubject": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"messageBody": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"serverUsername": {
|
|
"type": "string"
|
|
},
|
|
"serverPassword": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"FastlyRuleActionDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleActionDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Has been replaced by flows.",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"apiKey",
|
|
"serviceId"
|
|
],
|
|
"properties": {
|
|
"apiKey": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"serviceId": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"MediumRuleActionDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleActionDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Has been replaced by flows.",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"accessToken",
|
|
"title",
|
|
"content",
|
|
"isHtml"
|
|
],
|
|
"properties": {
|
|
"accessToken": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"title": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"content": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"canonicalUrl": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"tags": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"publicationId": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"isHtml": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"NotificationRuleActionDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleActionDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Has been replaced by flows.",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"user",
|
|
"text"
|
|
],
|
|
"properties": {
|
|
"user": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"text": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"url": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"client": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"OpenSearchRuleActionDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleActionDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Has been replaced by flows.",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"host",
|
|
"indexName"
|
|
],
|
|
"properties": {
|
|
"host": {
|
|
"type": "string",
|
|
"format": "uri",
|
|
"minLength": 1
|
|
},
|
|
"indexName": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"username": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"password": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"document": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"delete": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"PrerenderRuleActionDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleActionDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Has been replaced by flows.",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"token",
|
|
"url"
|
|
],
|
|
"properties": {
|
|
"token": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"url": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"ScriptRuleActionDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleActionDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Has been replaced by flows.",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"script"
|
|
],
|
|
"properties": {
|
|
"script": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"SignalRRuleActionDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleActionDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Has been replaced by flows.",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"connectionString",
|
|
"hubName",
|
|
"action"
|
|
],
|
|
"properties": {
|
|
"connectionString": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"hubName": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"action": {
|
|
"$ref": "#/components/schemas/SignalRActionType"
|
|
},
|
|
"methodName": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"target": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"payload": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"SlackRuleActionDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleActionDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Has been replaced by flows.",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"webhookUrl",
|
|
"text"
|
|
],
|
|
"properties": {
|
|
"webhookUrl": {
|
|
"type": "string",
|
|
"format": "uri",
|
|
"minLength": 1
|
|
},
|
|
"text": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"TweetRuleActionDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleActionDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Has been replaced by flows.",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"accessToken",
|
|
"accessSecret",
|
|
"text"
|
|
],
|
|
"properties": {
|
|
"accessToken": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"accessSecret": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"text": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"TypesenseRuleActionDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleActionDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Has been replaced by flows.",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"host",
|
|
"indexName",
|
|
"apiKey"
|
|
],
|
|
"properties": {
|
|
"host": {
|
|
"type": "string",
|
|
"format": "uri",
|
|
"minLength": 1
|
|
},
|
|
"indexName": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"apiKey": {
|
|
"type": "string"
|
|
},
|
|
"document": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"delete": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"WebhookRuleActionDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/RuleActionDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Has been replaced by flows.",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"url",
|
|
"method"
|
|
],
|
|
"properties": {
|
|
"url": {
|
|
"type": "string",
|
|
"format": "uri",
|
|
"minLength": 1
|
|
},
|
|
"method": {
|
|
"$ref": "#/components/schemas/WebhookMethod"
|
|
},
|
|
"payload": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"payloadType": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"headers": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"sharedSecret": {
|
|
"type": "string",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"CreateRuleDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"trigger",
|
|
"flow"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "Optional rule name.",
|
|
"nullable": true
|
|
},
|
|
"trigger": {
|
|
"description": "The trigger properties.",
|
|
"$ref": "#/components/schemas/RuleTriggerDto"
|
|
},
|
|
"action": {
|
|
"description": "The action properties.",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Use the new 'Flow' property to define actions",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/RuleActionDto"
|
|
},
|
|
"flow": {
|
|
"description": "The flow to describe the sequence of actions to perform.",
|
|
"$ref": "#/components/schemas/FlowDefinitionDto"
|
|
},
|
|
"isEnabled": {
|
|
"type": "boolean",
|
|
"description": "Enable or disable the rule.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"UpdateRuleDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "Optional rule name.",
|
|
"nullable": true
|
|
},
|
|
"trigger": {
|
|
"description": "The trigger properties.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/RuleTriggerDto"
|
|
},
|
|
"action": {
|
|
"description": "The flow to describe the sequence of actions to perform.",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Use the new 'Flow' property to define actions",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/RuleActionDto"
|
|
},
|
|
"flow": {
|
|
"description": "The flow.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/FlowDefinitionDto"
|
|
},
|
|
"isEnabled": {
|
|
"type": "boolean",
|
|
"description": "Enable or disable the rule.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"TriggerRuleDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"value": {
|
|
"description": "The optional value to send to the flow."
|
|
}
|
|
}
|
|
},
|
|
"SimulatedRuleEventsDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"total",
|
|
"items"
|
|
],
|
|
"properties": {
|
|
"total": {
|
|
"type": "integer",
|
|
"description": "The total number of simulated rule events.",
|
|
"format": "int64"
|
|
},
|
|
"items": {
|
|
"type": "array",
|
|
"description": "The simulated rule events.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/SimulatedRuleEventDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"SimulatedRuleEventDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"eventId",
|
|
"uniqueId",
|
|
"eventName",
|
|
"event",
|
|
"skipReasons"
|
|
],
|
|
"properties": {
|
|
"eventId": {
|
|
"type": "string",
|
|
"description": "The unique event id.",
|
|
"format": "guid"
|
|
},
|
|
"uniqueId": {
|
|
"type": "string",
|
|
"description": "The the unique id of the simulated event."
|
|
},
|
|
"eventName": {
|
|
"type": "string",
|
|
"description": "The name of the event."
|
|
},
|
|
"event": {
|
|
"description": "The source event."
|
|
},
|
|
"enrichedEvent": {
|
|
"description": "The enriched event.",
|
|
"nullable": true
|
|
},
|
|
"flowState": {
|
|
"description": "The flow state.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/FlowExecutionStateDto"
|
|
},
|
|
"skipReasons": {
|
|
"type": "array",
|
|
"description": "The reason why the event has been skipped.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/SkipReason"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"FlowExecutionStateDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"definition",
|
|
"context",
|
|
"description",
|
|
"steps",
|
|
"nextStepId",
|
|
"created",
|
|
"completed",
|
|
"status"
|
|
],
|
|
"properties": {
|
|
"definition": {
|
|
"description": "The actual definition of the the steps to be executed.",
|
|
"$ref": "#/components/schemas/FlowDefinitionDto"
|
|
},
|
|
"context": {
|
|
"description": "The context."
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"description": "The description of the execution state (usually the event name)."
|
|
},
|
|
"steps": {
|
|
"type": "object",
|
|
"description": "The state of each step.",
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/FlowExecutionStepStateDto"
|
|
}
|
|
},
|
|
"nextStepId": {
|
|
"type": "string",
|
|
"description": "The next step to be executed.",
|
|
"format": "guid"
|
|
},
|
|
"nextRun": {
|
|
"type": "string",
|
|
"description": "THe time when the next step will be executed.",
|
|
"format": "date-time",
|
|
"nullable": true
|
|
},
|
|
"created": {
|
|
"type": "string",
|
|
"description": "The creation time.",
|
|
"format": "date-time"
|
|
},
|
|
"completed": {
|
|
"type": "string",
|
|
"description": "The completion time.",
|
|
"format": "date-time"
|
|
},
|
|
"status": {
|
|
"description": "The overall status.",
|
|
"$ref": "#/components/schemas/FlowExecutionStatus"
|
|
}
|
|
}
|
|
},
|
|
"FlowExecutionStepStateDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"status",
|
|
"attempts"
|
|
],
|
|
"properties": {
|
|
"status": {
|
|
"description": "The status of this step.",
|
|
"$ref": "#/components/schemas/FlowExecutionStatus"
|
|
},
|
|
"attempts": {
|
|
"type": "array",
|
|
"description": "The different attempts.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/FlowExecutionStepAttemptDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"FlowExecutionStatus": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Pending",
|
|
"Scheduled",
|
|
"Completed",
|
|
"Failed",
|
|
"Running",
|
|
"Cancelled"
|
|
],
|
|
"enum": [
|
|
"Pending",
|
|
"Scheduled",
|
|
"Completed",
|
|
"Failed",
|
|
"Running",
|
|
"Cancelled"
|
|
]
|
|
},
|
|
"FlowExecutionStepAttemptDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"log",
|
|
"started",
|
|
"completed"
|
|
],
|
|
"properties": {
|
|
"log": {
|
|
"type": "array",
|
|
"description": "The log messages.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/FlowExecutionStepLogEntryDto"
|
|
}
|
|
},
|
|
"started": {
|
|
"type": "string",
|
|
"description": "The time when the attempt has been started.",
|
|
"format": "date-time"
|
|
},
|
|
"completed": {
|
|
"type": "string",
|
|
"description": "The time when the attempt has been completed.",
|
|
"format": "date-time"
|
|
},
|
|
"error": {
|
|
"type": "string",
|
|
"description": "The error, if there is any.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"FlowExecutionStepLogEntryDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"timestamp",
|
|
"message"
|
|
],
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "string",
|
|
"description": "The timestamp.",
|
|
"format": "date-time"
|
|
},
|
|
"message": {
|
|
"type": "string",
|
|
"description": "The log message."
|
|
},
|
|
"dump": {
|
|
"type": "string",
|
|
"description": "A detailed dump.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"SkipReason": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumFlags": true,
|
|
"x-enumNames": [
|
|
"None",
|
|
"ConditionDoesNotMatch",
|
|
"ConditionPrecheckDoesNotMatch",
|
|
"Disabled",
|
|
"Failed",
|
|
"FromRule",
|
|
"NoTrigger",
|
|
"TooOld",
|
|
"WrongEvent",
|
|
"WrongEventForTrigger"
|
|
],
|
|
"enum": [
|
|
"None",
|
|
"ConditionDoesNotMatch",
|
|
"ConditionPrecheckDoesNotMatch",
|
|
"Disabled",
|
|
"Failed",
|
|
"FromRule",
|
|
"NoTrigger",
|
|
"TooOld",
|
|
"WrongEvent",
|
|
"WrongEventForTrigger"
|
|
]
|
|
},
|
|
"RuleEventsDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"total",
|
|
"items"
|
|
],
|
|
"properties": {
|
|
"total": {
|
|
"type": "integer",
|
|
"description": "The total number of rule events.",
|
|
"format": "int64"
|
|
},
|
|
"items": {
|
|
"type": "array",
|
|
"description": "The rule events.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/RuleEventDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"RuleEventDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"id",
|
|
"flowState"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "The ID of the event.",
|
|
"format": "guid"
|
|
},
|
|
"flowState": {
|
|
"description": "The flow state.",
|
|
"$ref": "#/components/schemas/FlowExecutionStateDto"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"PlansDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"plans",
|
|
"locked"
|
|
],
|
|
"properties": {
|
|
"plans": {
|
|
"type": "array",
|
|
"description": "The available plans.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/PlanDto"
|
|
}
|
|
},
|
|
"currentPlanId": {
|
|
"type": "string",
|
|
"description": "The current plan id.",
|
|
"nullable": true
|
|
},
|
|
"planOwner": {
|
|
"type": "string",
|
|
"description": "The plan owner.",
|
|
"nullable": true
|
|
},
|
|
"portalLink": {
|
|
"type": "string",
|
|
"description": "The link to the management portal.",
|
|
"format": "uri",
|
|
"nullable": true
|
|
},
|
|
"referral": {
|
|
"description": "The referral management.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/ReferralInfo"
|
|
},
|
|
"locked": {
|
|
"description": "The reason why the plan cannot be changed.",
|
|
"$ref": "#/components/schemas/PlansLockedReason"
|
|
}
|
|
}
|
|
},
|
|
"PlanDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"id",
|
|
"name",
|
|
"costs",
|
|
"maxApiBytes",
|
|
"maxApiCalls",
|
|
"maxAssetSize",
|
|
"maxContributors"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "The ID of the plan."
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the plan."
|
|
},
|
|
"costs": {
|
|
"type": "string",
|
|
"description": "The monthly costs of the plan."
|
|
},
|
|
"confirmText": {
|
|
"type": "string",
|
|
"description": "An optional confirm text for the monthly subscription.",
|
|
"nullable": true
|
|
},
|
|
"yearlyConfirmText": {
|
|
"type": "string",
|
|
"description": "An optional confirm text for the yearly subscription.",
|
|
"nullable": true
|
|
},
|
|
"yearlyCosts": {
|
|
"type": "string",
|
|
"description": "The yearly costs of the plan.",
|
|
"nullable": true
|
|
},
|
|
"yearlyId": {
|
|
"type": "string",
|
|
"description": "The yearly ID of the plan.",
|
|
"nullable": true
|
|
},
|
|
"maxApiBytes": {
|
|
"type": "integer",
|
|
"description": "The maximum number of API traffic.",
|
|
"format": "int64"
|
|
},
|
|
"maxApiCalls": {
|
|
"type": "integer",
|
|
"description": "The maximum number of API calls.",
|
|
"format": "int64"
|
|
},
|
|
"maxAssetSize": {
|
|
"type": "integer",
|
|
"description": "The maximum allowed asset size.",
|
|
"format": "int64"
|
|
},
|
|
"maxContributors": {
|
|
"type": "integer",
|
|
"description": "The maximum number of contributors.",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"ReferralInfo": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"code",
|
|
"earned",
|
|
"condition"
|
|
],
|
|
"properties": {
|
|
"code": {
|
|
"type": "string"
|
|
},
|
|
"earned": {
|
|
"type": "string"
|
|
},
|
|
"condition": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"PlansLockedReason": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"None",
|
|
"NotOwner",
|
|
"NoPermission",
|
|
"ManagedByTeam"
|
|
],
|
|
"enum": [
|
|
"None",
|
|
"NotOwner",
|
|
"NoPermission",
|
|
"ManagedByTeam"
|
|
]
|
|
},
|
|
"PlanChangedDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"redirectUri": {
|
|
"type": "string",
|
|
"description": "Optional redirect uri.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"ChangePlanDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"planId"
|
|
],
|
|
"properties": {
|
|
"planId": {
|
|
"type": "string",
|
|
"description": "The new plan id.",
|
|
"minLength": 1
|
|
}
|
|
}
|
|
},
|
|
"ExposedValues": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"FeaturesDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"features",
|
|
"version"
|
|
],
|
|
"properties": {
|
|
"features": {
|
|
"type": "array",
|
|
"description": "The latest features.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/FeatureDto"
|
|
}
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"description": "The recent version.",
|
|
"format": "int32"
|
|
}
|
|
}
|
|
},
|
|
"FeatureDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name",
|
|
"text"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the feature."
|
|
},
|
|
"text": {
|
|
"type": "string",
|
|
"description": "The description text."
|
|
}
|
|
}
|
|
},
|
|
"LanguageDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"iso2Code",
|
|
"englishName",
|
|
"nativeName"
|
|
],
|
|
"properties": {
|
|
"iso2Code": {
|
|
"type": "string",
|
|
"description": "The iso code of the language."
|
|
},
|
|
"englishName": {
|
|
"type": "string",
|
|
"description": "The english name of the language."
|
|
},
|
|
"nativeName": {
|
|
"type": "string",
|
|
"description": "The native name of the language."
|
|
}
|
|
}
|
|
},
|
|
"JobsDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"items"
|
|
],
|
|
"properties": {
|
|
"items": {
|
|
"type": "array",
|
|
"description": "The jobs.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/JobDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"JobDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"id",
|
|
"started",
|
|
"status",
|
|
"taskName",
|
|
"description",
|
|
"taskArguments",
|
|
"log",
|
|
"canDownload"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "The ID of the job."
|
|
},
|
|
"started": {
|
|
"type": "string",
|
|
"description": "The time when the job has been started.",
|
|
"format": "date-time"
|
|
},
|
|
"stopped": {
|
|
"type": "string",
|
|
"description": "The time when the job has been stopped.",
|
|
"format": "date-time",
|
|
"nullable": true
|
|
},
|
|
"status": {
|
|
"description": "The status of the operation.",
|
|
"$ref": "#/components/schemas/JobStatus"
|
|
},
|
|
"taskName": {
|
|
"type": "string",
|
|
"description": "The name of the task."
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"description": "The description of the job."
|
|
},
|
|
"taskArguments": {
|
|
"type": "object",
|
|
"description": "The arguments for the job.",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"log": {
|
|
"type": "array",
|
|
"description": "The list of log items.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/JobLogMessageDto"
|
|
}
|
|
},
|
|
"canDownload": {
|
|
"type": "boolean",
|
|
"description": "Indicates whether the job can be downloaded."
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"JobStatus": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Created",
|
|
"Started",
|
|
"Completed",
|
|
"Cancelled",
|
|
"Failed"
|
|
],
|
|
"enum": [
|
|
"Created",
|
|
"Started",
|
|
"Completed",
|
|
"Cancelled",
|
|
"Failed"
|
|
]
|
|
},
|
|
"JobLogMessageDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"timestamp",
|
|
"message"
|
|
],
|
|
"properties": {
|
|
"timestamp": {
|
|
"type": "string",
|
|
"description": "The timestamp.",
|
|
"format": "date-time"
|
|
},
|
|
"message": {
|
|
"type": "string",
|
|
"description": "The log message."
|
|
}
|
|
}
|
|
},
|
|
"HistoryEventDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"message",
|
|
"eventType",
|
|
"actor",
|
|
"eventId",
|
|
"created",
|
|
"version"
|
|
],
|
|
"properties": {
|
|
"message": {
|
|
"type": "string",
|
|
"description": "The message for the event."
|
|
},
|
|
"eventType": {
|
|
"type": "string",
|
|
"description": "The type of the original event."
|
|
},
|
|
"actor": {
|
|
"type": "string",
|
|
"description": "The user who called the action."
|
|
},
|
|
"eventId": {
|
|
"type": "string",
|
|
"description": "Gets a unique id for the event."
|
|
},
|
|
"created": {
|
|
"type": "string",
|
|
"description": "The time when the event happened.",
|
|
"format": "date-time"
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"description": "The version identifier.",
|
|
"format": "int64"
|
|
}
|
|
}
|
|
},
|
|
"EventConsumersDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"items"
|
|
],
|
|
"properties": {
|
|
"items": {
|
|
"type": "array",
|
|
"description": "The event consumers.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/EventConsumerDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"EventConsumerDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name",
|
|
"isStopped",
|
|
"isResetting",
|
|
"count"
|
|
],
|
|
"properties": {
|
|
"isStopped": {
|
|
"type": "boolean",
|
|
"description": "Indicates if the event consumer has been started."
|
|
},
|
|
"isResetting": {
|
|
"type": "boolean",
|
|
"description": "Indicates if the event consumer is resetting at the moment."
|
|
},
|
|
"count": {
|
|
"type": "integer",
|
|
"description": "The number of handled events.",
|
|
"format": "int32"
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the event consumer.",
|
|
"minLength": 1
|
|
},
|
|
"error": {
|
|
"type": "string",
|
|
"description": "The error details if the event consumer has been stopped after a failure.",
|
|
"nullable": true
|
|
},
|
|
"position": {
|
|
"type": "string",
|
|
"description": "The position within the vent stream.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"ContentsDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"total",
|
|
"items",
|
|
"statuses"
|
|
],
|
|
"properties": {
|
|
"total": {
|
|
"type": "integer",
|
|
"description": "The total number of content items.",
|
|
"format": "int64"
|
|
},
|
|
"items": {
|
|
"type": "array",
|
|
"description": "The content items.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/ContentDto"
|
|
}
|
|
},
|
|
"statuses": {
|
|
"type": "array",
|
|
"description": "The possible statuses.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/StatusInfoDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"ContentDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"id",
|
|
"createdBy",
|
|
"lastModifiedBy",
|
|
"data",
|
|
"created",
|
|
"lastModified",
|
|
"status",
|
|
"statusColor",
|
|
"schemaId",
|
|
"isDeleted",
|
|
"version"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "The if of the content item."
|
|
},
|
|
"createdBy": {
|
|
"type": "string",
|
|
"description": "The user that has created the content item."
|
|
},
|
|
"lastModifiedBy": {
|
|
"type": "string",
|
|
"description": "The user that has updated the content item."
|
|
},
|
|
"data": {
|
|
"description": "The data of the content item."
|
|
},
|
|
"referenceData": {
|
|
"description": "The reference data for the frontend UI.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/ContentData"
|
|
},
|
|
"created": {
|
|
"type": "string",
|
|
"description": "The date and time when the content item has been created.",
|
|
"format": "date-time"
|
|
},
|
|
"lastModified": {
|
|
"type": "string",
|
|
"description": "The date and time when the content item has been modified last.",
|
|
"format": "date-time"
|
|
},
|
|
"status": {
|
|
"type": "string",
|
|
"description": "The status of the content."
|
|
},
|
|
"newStatus": {
|
|
"type": "string",
|
|
"description": "The new status of the content.",
|
|
"nullable": true
|
|
},
|
|
"statusColor": {
|
|
"type": "string",
|
|
"description": "The color of the status."
|
|
},
|
|
"newStatusColor": {
|
|
"type": "string",
|
|
"description": "The color of the new status.",
|
|
"nullable": true
|
|
},
|
|
"editToken": {
|
|
"type": "string",
|
|
"description": "The UI token.",
|
|
"nullable": true
|
|
},
|
|
"scheduleJob": {
|
|
"description": "The scheduled status.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/ScheduleJobDto"
|
|
},
|
|
"schemaId": {
|
|
"type": "string",
|
|
"description": "The ID of the schema."
|
|
},
|
|
"schemaName": {
|
|
"type": "string",
|
|
"description": "The name of the schema.",
|
|
"nullable": true
|
|
},
|
|
"schemaDisplayName": {
|
|
"type": "string",
|
|
"description": "The display name of the schema.",
|
|
"nullable": true
|
|
},
|
|
"referenceFields": {
|
|
"type": "array",
|
|
"description": "The reference fields.",
|
|
"nullable": true,
|
|
"items": {
|
|
"$ref": "#/components/schemas/FieldDto"
|
|
}
|
|
},
|
|
"isDeleted": {
|
|
"type": "boolean",
|
|
"description": "Indicates whether the content is deleted."
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"description": "The version of the content.",
|
|
"format": "int64"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"ContentData": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/ContentFieldData"
|
|
}
|
|
},
|
|
"ContentFieldData": {
|
|
"type": "object",
|
|
"additionalProperties": {}
|
|
},
|
|
"ScheduleJobDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"id",
|
|
"status",
|
|
"dueTime",
|
|
"color",
|
|
"scheduledBy"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "The ID of the schedule job."
|
|
},
|
|
"status": {
|
|
"type": "string",
|
|
"description": "The new status."
|
|
},
|
|
"dueTime": {
|
|
"type": "string",
|
|
"description": "The target date and time when the content should be scheduled.",
|
|
"format": "date-time"
|
|
},
|
|
"color": {
|
|
"type": "string",
|
|
"description": "The color of the scheduled status."
|
|
},
|
|
"scheduledBy": {
|
|
"type": "string",
|
|
"description": "The user who schedule the content."
|
|
}
|
|
}
|
|
},
|
|
"StatusInfoDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"status",
|
|
"color"
|
|
],
|
|
"properties": {
|
|
"status": {
|
|
"type": "string",
|
|
"description": "The name of the status."
|
|
},
|
|
"color": {
|
|
"type": "string",
|
|
"description": "The color of the status."
|
|
}
|
|
}
|
|
},
|
|
"QueryDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"ids": {
|
|
"type": "array",
|
|
"description": "The optional list of ids to query.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"oData": {
|
|
"type": "string",
|
|
"description": "The optional odata query.",
|
|
"nullable": true
|
|
},
|
|
"q": {
|
|
"description": "The optional json query.",
|
|
"nullable": true
|
|
},
|
|
"parentId": {
|
|
"type": "string",
|
|
"description": "The parent id (for assets).",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"BulkResultDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"jobIndex"
|
|
],
|
|
"properties": {
|
|
"error": {
|
|
"description": "The error when the bulk job failed.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/ErrorDto"
|
|
},
|
|
"jobIndex": {
|
|
"type": "integer",
|
|
"description": "The index of the bulk job where the result belongs to. The order can change.",
|
|
"format": "int32"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"description": "The ID of the entity that has been handled successfully or not.",
|
|
"nullable": true
|
|
},
|
|
"contentId": {
|
|
"type": "string",
|
|
"description": "The ID of the entity that has been handled successfully or not.",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Use 'id' field now.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"ImportContentsDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"datas"
|
|
],
|
|
"properties": {
|
|
"datas": {
|
|
"type": "array",
|
|
"description": "The data to import.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/ContentData"
|
|
}
|
|
},
|
|
"publish": {
|
|
"type": "boolean",
|
|
"description": "True to automatically publish the content.",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Use bulk endpoint now."
|
|
},
|
|
"doNotScript": {
|
|
"type": "boolean",
|
|
"description": "True to turn off scripting for faster inserts. Default: true."
|
|
},
|
|
"optimizeValidation": {
|
|
"type": "boolean",
|
|
"description": "True to turn off costly validation: Unique checks, asset checks and reference checks. Default: true."
|
|
}
|
|
}
|
|
},
|
|
"BulkUpdateContentsDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"jobs"
|
|
],
|
|
"properties": {
|
|
"jobs": {
|
|
"type": "array",
|
|
"description": "The contents to update or insert.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/BulkUpdateContentsJobDto"
|
|
}
|
|
},
|
|
"publish": {
|
|
"type": "boolean",
|
|
"description": "True to automatically publish the content.",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Use 'jobs.status' fields now."
|
|
},
|
|
"doNotScript": {
|
|
"type": "boolean",
|
|
"description": "True to turn off scripting for faster inserts. Default: true."
|
|
},
|
|
"enrichRequiredFields": {
|
|
"type": "boolean",
|
|
"description": "True, to also enrich required fields. Default: false."
|
|
},
|
|
"doNotValidate": {
|
|
"type": "boolean",
|
|
"description": "True to turn off validation for faster inserts. Default: false."
|
|
},
|
|
"doNotValidateWorkflow": {
|
|
"type": "boolean",
|
|
"description": "True to turn off validation of workflow rules. Default: false."
|
|
},
|
|
"checkReferrers": {
|
|
"type": "boolean",
|
|
"description": "True to check referrers of deleted contents."
|
|
},
|
|
"optimizeValidation": {
|
|
"type": "boolean",
|
|
"description": "True to turn off costly validation: Unique checks, asset checks and reference checks. Default: true."
|
|
}
|
|
}
|
|
},
|
|
"BulkUpdateContentsJobDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"query": {
|
|
"description": "An optional query to identify the content to update.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/QueryJsonDto"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"description": "An optional ID of the content to update.",
|
|
"nullable": true
|
|
},
|
|
"data": {
|
|
"description": "The data of the content when type is set to 'Upsert', 'Create', 'Update' or 'Patch.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/ContentData"
|
|
},
|
|
"status": {
|
|
"type": "string",
|
|
"description": "The new status when the type is set to 'ChangeStatus' or 'Upsert'.",
|
|
"nullable": true
|
|
},
|
|
"dueTime": {
|
|
"type": "string",
|
|
"description": "The due time.",
|
|
"format": "date-time",
|
|
"nullable": true
|
|
},
|
|
"type": {
|
|
"description": "The update type.",
|
|
"$ref": "#/components/schemas/BulkUpdateContentType"
|
|
},
|
|
"schema": {
|
|
"type": "string",
|
|
"description": "The optional schema id or name.",
|
|
"nullable": true
|
|
},
|
|
"patch": {
|
|
"type": "boolean",
|
|
"description": "Makes the update as patch."
|
|
},
|
|
"permanent": {
|
|
"type": "boolean",
|
|
"description": "True to delete the content permanently."
|
|
},
|
|
"enrichDefaults": {
|
|
"type": "boolean",
|
|
"description": "Enrich the data with the default values when updating a content item."
|
|
},
|
|
"expectedCount": {
|
|
"type": "integer",
|
|
"description": "The number of expected items. Set it to a higher number to update multiple items when a query is defined.",
|
|
"format": "int64"
|
|
},
|
|
"expectedVersion": {
|
|
"type": "integer",
|
|
"description": "The expected version.",
|
|
"format": "int64"
|
|
}
|
|
}
|
|
},
|
|
"QueryJsonDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"skip",
|
|
"take",
|
|
"random",
|
|
"top"
|
|
],
|
|
"properties": {
|
|
"filter": {
|
|
"nullable": true
|
|
},
|
|
"fullText": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"collation": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"skip": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"take": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"random": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"top": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"sort": {
|
|
"type": "array",
|
|
"nullable": true,
|
|
"items": {
|
|
"$ref": "#/components/schemas/SortNode"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"SortNode": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"path",
|
|
"order"
|
|
],
|
|
"properties": {
|
|
"path": {
|
|
"type": "string"
|
|
},
|
|
"order": {
|
|
"$ref": "#/components/schemas/SortOrder"
|
|
}
|
|
}
|
|
},
|
|
"BulkUpdateContentType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Upsert",
|
|
"ChangeStatus",
|
|
"Create",
|
|
"Delete",
|
|
"Patch",
|
|
"Update",
|
|
"Validate",
|
|
"EnrichDefaults"
|
|
],
|
|
"enum": [
|
|
"Upsert",
|
|
"ChangeStatus",
|
|
"Create",
|
|
"Delete",
|
|
"Patch",
|
|
"Update",
|
|
"Validate",
|
|
"EnrichDefaults"
|
|
]
|
|
},
|
|
"ChangeStatusDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"status"
|
|
],
|
|
"properties": {
|
|
"status": {
|
|
"type": "string",
|
|
"description": "The new status."
|
|
},
|
|
"dueTime": {
|
|
"type": "string",
|
|
"description": "The due time.",
|
|
"format": "date-time",
|
|
"nullable": true
|
|
},
|
|
"checkReferrers": {
|
|
"type": "boolean",
|
|
"description": "True to check referrers of this content."
|
|
}
|
|
}
|
|
},
|
|
"AllContentsByPostDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"ids": {
|
|
"type": "array",
|
|
"description": "The list of ids to query.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"scheduledFrom": {
|
|
"type": "string",
|
|
"description": "The start time of the scheduled content period (see scheduledTo).",
|
|
"format": "date-time",
|
|
"nullable": true
|
|
},
|
|
"scheduledTo": {
|
|
"type": "string",
|
|
"description": "The end time of the scheduled content period (see scheduledFrom).",
|
|
"format": "date-time",
|
|
"nullable": true
|
|
},
|
|
"referencing": {
|
|
"type": "string",
|
|
"description": "The ID of the referencing content item.",
|
|
"nullable": true
|
|
},
|
|
"references": {
|
|
"type": "string",
|
|
"description": "The ID of the reference content item.",
|
|
"nullable": true
|
|
},
|
|
"oData": {
|
|
"type": "string",
|
|
"description": "The optional odata query.",
|
|
"nullable": true
|
|
},
|
|
"q": {
|
|
"description": "The optional json query.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"BackupJobsDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Use Jobs endpoint.",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"items"
|
|
],
|
|
"properties": {
|
|
"items": {
|
|
"type": "array",
|
|
"description": "The backups.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/BackupJobDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"BackupJobDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Use Jobs endpoint.",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"id",
|
|
"started",
|
|
"handledEvents",
|
|
"handledAssets",
|
|
"status"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "The ID of the backup job."
|
|
},
|
|
"started": {
|
|
"type": "string",
|
|
"description": "The time when the job has been started.",
|
|
"format": "date-time"
|
|
},
|
|
"stopped": {
|
|
"type": "string",
|
|
"description": "The time when the job has been stopped.",
|
|
"format": "date-time",
|
|
"nullable": true
|
|
},
|
|
"handledEvents": {
|
|
"type": "integer",
|
|
"description": "The number of handled events.",
|
|
"format": "int32"
|
|
},
|
|
"handledAssets": {
|
|
"type": "integer",
|
|
"description": "The number of handled assets.",
|
|
"format": "int32"
|
|
},
|
|
"status": {
|
|
"description": "The status of the operation.",
|
|
"$ref": "#/components/schemas/JobStatus"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"RestoreJobDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"url",
|
|
"log",
|
|
"started",
|
|
"status"
|
|
],
|
|
"properties": {
|
|
"url": {
|
|
"type": "string",
|
|
"description": "The uri to load from.",
|
|
"format": "uri"
|
|
},
|
|
"log": {
|
|
"type": "array",
|
|
"description": "The status log.",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"started": {
|
|
"type": "string",
|
|
"description": "The time when the job has been started.",
|
|
"format": "date-time"
|
|
},
|
|
"stopped": {
|
|
"type": "string",
|
|
"description": "The time when the job has been stopped.",
|
|
"format": "date-time",
|
|
"nullable": true
|
|
},
|
|
"status": {
|
|
"description": "The status of the operation.",
|
|
"$ref": "#/components/schemas/JobStatus"
|
|
}
|
|
}
|
|
},
|
|
"RestoreRequestDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"url"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the app.",
|
|
"pattern": "^[a-z0-9]+(\\-[a-z0-9]+)*$",
|
|
"nullable": true
|
|
},
|
|
"url": {
|
|
"type": "string",
|
|
"description": "The url to the restore file.",
|
|
"format": "uri",
|
|
"minLength": 1
|
|
}
|
|
}
|
|
},
|
|
"ResizeMode": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Crop",
|
|
"CropUpsize",
|
|
"Pad",
|
|
"BoxPad",
|
|
"Max",
|
|
"Min",
|
|
"Stretch"
|
|
],
|
|
"enum": [
|
|
"Crop",
|
|
"CropUpsize",
|
|
"Pad",
|
|
"BoxPad",
|
|
"Max",
|
|
"Min",
|
|
"Stretch"
|
|
]
|
|
},
|
|
"ImageFormat": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"AVIF",
|
|
"BMP",
|
|
"GIF",
|
|
"JPEG",
|
|
"PNG",
|
|
"TGA",
|
|
"TIFF",
|
|
"WEBP"
|
|
],
|
|
"enum": [
|
|
"AVIF",
|
|
"BMP",
|
|
"GIF",
|
|
"JPEG",
|
|
"PNG",
|
|
"TGA",
|
|
"TIFF",
|
|
"WEBP"
|
|
]
|
|
},
|
|
"WatermarkAnchor": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"TopLeft",
|
|
"TopRight",
|
|
"BottomLeft",
|
|
"BottomRight",
|
|
"Center"
|
|
],
|
|
"enum": [
|
|
"TopLeft",
|
|
"TopRight",
|
|
"BottomLeft",
|
|
"BottomRight",
|
|
"Center"
|
|
]
|
|
},
|
|
"AssetFoldersDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"total",
|
|
"items",
|
|
"path"
|
|
],
|
|
"properties": {
|
|
"total": {
|
|
"type": "integer",
|
|
"description": "The total number of assets.",
|
|
"format": "int64"
|
|
},
|
|
"items": {
|
|
"type": "array",
|
|
"description": "The assets folders.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/AssetFolderDto"
|
|
}
|
|
},
|
|
"path": {
|
|
"type": "array",
|
|
"description": "The path to the current folder.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/AssetFolderDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"AssetFolderDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"id",
|
|
"parentId",
|
|
"folderName",
|
|
"version"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "The ID of the asset."
|
|
},
|
|
"parentId": {
|
|
"type": "string",
|
|
"description": "The ID of the parent folder. Empty for files without parent."
|
|
},
|
|
"folderName": {
|
|
"type": "string",
|
|
"description": "The folder name."
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"description": "The version of the asset folder.",
|
|
"format": "int64"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"AssetFolderScope": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"PathAndItems",
|
|
"Path",
|
|
"Items"
|
|
],
|
|
"enum": [
|
|
"PathAndItems",
|
|
"Path",
|
|
"Items"
|
|
]
|
|
},
|
|
"CreateAssetFolderDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"folderName"
|
|
],
|
|
"properties": {
|
|
"folderName": {
|
|
"type": "string",
|
|
"description": "The name of the folder.",
|
|
"minLength": 1
|
|
},
|
|
"parentId": {
|
|
"type": "string",
|
|
"description": "The ID of the parent folder."
|
|
}
|
|
}
|
|
},
|
|
"RenameAssetFolderDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"folderName"
|
|
],
|
|
"properties": {
|
|
"folderName": {
|
|
"type": "string",
|
|
"description": "The name of the folder.",
|
|
"minLength": 1
|
|
}
|
|
}
|
|
},
|
|
"MoveAssetFolderDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"parentId": {
|
|
"type": "string",
|
|
"description": "The parent folder id."
|
|
}
|
|
}
|
|
},
|
|
"RenameTagDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"tagName"
|
|
],
|
|
"properties": {
|
|
"tagName": {
|
|
"type": "string",
|
|
"description": "The new name for the tag.",
|
|
"minLength": 1
|
|
}
|
|
}
|
|
},
|
|
"AssetsDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"total",
|
|
"items"
|
|
],
|
|
"properties": {
|
|
"total": {
|
|
"type": "integer",
|
|
"description": "The total number of assets.",
|
|
"format": "int64"
|
|
},
|
|
"items": {
|
|
"type": "array",
|
|
"description": "The assets.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/AssetDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"AssetDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"id",
|
|
"parentId",
|
|
"fileName",
|
|
"isProtected",
|
|
"slug",
|
|
"mimeType",
|
|
"fileType",
|
|
"metadataText",
|
|
"metadata",
|
|
"fileSize",
|
|
"fileVersion",
|
|
"type",
|
|
"createdBy",
|
|
"lastModifiedBy",
|
|
"created",
|
|
"lastModified",
|
|
"version",
|
|
"isImage"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "The ID of the asset."
|
|
},
|
|
"parentId": {
|
|
"type": "string",
|
|
"description": "The ID of the parent folder. Empty for files without parent."
|
|
},
|
|
"fileName": {
|
|
"type": "string",
|
|
"description": "The file name."
|
|
},
|
|
"fileHash": {
|
|
"type": "string",
|
|
"description": "The file hash.",
|
|
"nullable": true
|
|
},
|
|
"isProtected": {
|
|
"type": "boolean",
|
|
"description": "True, when the asset is not public."
|
|
},
|
|
"slug": {
|
|
"type": "string",
|
|
"description": "The slug."
|
|
},
|
|
"mimeType": {
|
|
"type": "string",
|
|
"description": "The mime type."
|
|
},
|
|
"fileType": {
|
|
"type": "string",
|
|
"description": "The file type."
|
|
},
|
|
"metadataText": {
|
|
"type": "string",
|
|
"description": "The formatted text representation of the metadata."
|
|
},
|
|
"editToken": {
|
|
"type": "string",
|
|
"description": "The UI token.",
|
|
"nullable": true
|
|
},
|
|
"metadata": {
|
|
"type": "object",
|
|
"description": "The asset metadata.",
|
|
"additionalProperties": {
|
|
"description": "Any"
|
|
}
|
|
},
|
|
"tags": {
|
|
"type": "array",
|
|
"description": "The asset tags.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"fileSize": {
|
|
"type": "integer",
|
|
"description": "The size of the file in bytes.",
|
|
"format": "int64"
|
|
},
|
|
"fileVersion": {
|
|
"type": "integer",
|
|
"description": "The version of the file.",
|
|
"format": "int64"
|
|
},
|
|
"type": {
|
|
"description": "The type of the asset.",
|
|
"$ref": "#/components/schemas/AssetType"
|
|
},
|
|
"createdBy": {
|
|
"type": "string",
|
|
"description": "The user that has created the schema."
|
|
},
|
|
"lastModifiedBy": {
|
|
"type": "string",
|
|
"description": "The user that has updated the asset."
|
|
},
|
|
"created": {
|
|
"type": "string",
|
|
"description": "The date and time when the asset has been created.",
|
|
"format": "date-time"
|
|
},
|
|
"lastModified": {
|
|
"type": "string",
|
|
"description": "The date and time when the asset has been modified last.",
|
|
"format": "date-time"
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"description": "The version of the asset.",
|
|
"format": "int64"
|
|
},
|
|
"_meta": {
|
|
"description": "The metadata.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/AssetMeta"
|
|
},
|
|
"isImage": {
|
|
"type": "boolean",
|
|
"description": "Determines of the created file is an image.",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Use 'type' field now."
|
|
},
|
|
"pixelWidth": {
|
|
"type": "integer",
|
|
"description": "The width of the image in pixels if the asset is an image.",
|
|
"format": "int32",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Use 'metadata' field now.",
|
|
"nullable": true
|
|
},
|
|
"pixelHeight": {
|
|
"type": "integer",
|
|
"description": "The height of the image in pixels if the asset is an image.",
|
|
"format": "int32",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Use 'metadata' field now.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"AssetMeta": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"isDuplicate"
|
|
],
|
|
"properties": {
|
|
"isDuplicate": {
|
|
"type": "string",
|
|
"description": "Indicates whether the asset is a duplicate."
|
|
}
|
|
}
|
|
},
|
|
"BulkUpdateAssetsDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"jobs": {
|
|
"type": "array",
|
|
"description": "The contents to update or insert.",
|
|
"nullable": true,
|
|
"items": {
|
|
"$ref": "#/components/schemas/BulkUpdateAssetsJobDto"
|
|
}
|
|
},
|
|
"checkReferrers": {
|
|
"type": "boolean",
|
|
"description": "True to check referrers of deleted assets."
|
|
},
|
|
"optimizeValidation": {
|
|
"type": "boolean",
|
|
"description": "True to turn off costly validation: Folder checks. Default: true."
|
|
},
|
|
"doNotScript": {
|
|
"type": "boolean",
|
|
"description": "True to turn off scripting for faster inserts. Default: true."
|
|
}
|
|
}
|
|
},
|
|
"BulkUpdateAssetsJobDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "An optional ID of the asset to update."
|
|
},
|
|
"type": {
|
|
"description": "The update type.",
|
|
"$ref": "#/components/schemas/BulkUpdateAssetType"
|
|
},
|
|
"parentId": {
|
|
"type": "string",
|
|
"description": "The parent folder id."
|
|
},
|
|
"fileName": {
|
|
"type": "string",
|
|
"description": "The new name of the asset.",
|
|
"nullable": true
|
|
},
|
|
"slug": {
|
|
"type": "string",
|
|
"description": "The new slug of the asset.",
|
|
"nullable": true
|
|
},
|
|
"isProtected": {
|
|
"type": "boolean",
|
|
"description": "True, when the asset is not public.",
|
|
"nullable": true
|
|
},
|
|
"tags": {
|
|
"type": "array",
|
|
"description": "The new asset tags.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"metadata": {
|
|
"type": "object",
|
|
"description": "The asset metadata.",
|
|
"nullable": true,
|
|
"additionalProperties": {
|
|
"description": "Any"
|
|
}
|
|
},
|
|
"permanent": {
|
|
"type": "boolean",
|
|
"description": "True to delete the asset permanently."
|
|
},
|
|
"expectedVersion": {
|
|
"type": "integer",
|
|
"description": "The expected version.",
|
|
"format": "int64"
|
|
}
|
|
}
|
|
},
|
|
"BulkUpdateAssetType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Annotate",
|
|
"Move",
|
|
"Delete"
|
|
],
|
|
"enum": [
|
|
"Annotate",
|
|
"Move",
|
|
"Delete"
|
|
]
|
|
},
|
|
"AnnotateAssetDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"fileName": {
|
|
"type": "string",
|
|
"description": "The new name of the asset.",
|
|
"nullable": true
|
|
},
|
|
"slug": {
|
|
"type": "string",
|
|
"description": "The new slug of the asset.",
|
|
"nullable": true
|
|
},
|
|
"isProtected": {
|
|
"type": "boolean",
|
|
"description": "True, when the asset is not public.",
|
|
"nullable": true
|
|
},
|
|
"tags": {
|
|
"type": "array",
|
|
"description": "The new asset tags.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"metadata": {
|
|
"type": "object",
|
|
"description": "The asset metadata.",
|
|
"nullable": true,
|
|
"additionalProperties": {
|
|
"description": "Any"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"MoveAssetDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"parentId": {
|
|
"type": "string",
|
|
"description": "The parent folder id."
|
|
}
|
|
}
|
|
},
|
|
"AssetScriptsDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"version"
|
|
],
|
|
"properties": {
|
|
"query": {
|
|
"type": "string",
|
|
"description": "The script that is executed for each asset when querying assets.",
|
|
"nullable": true
|
|
},
|
|
"queryPre": {
|
|
"type": "string",
|
|
"description": "The script that is executed for all assets when querying assets.",
|
|
"nullable": true
|
|
},
|
|
"create": {
|
|
"type": "string",
|
|
"description": "The script that is executed when creating an asset.",
|
|
"nullable": true
|
|
},
|
|
"update": {
|
|
"type": "string",
|
|
"description": "The script that is executed when updating a content.",
|
|
"nullable": true
|
|
},
|
|
"annotate": {
|
|
"type": "string",
|
|
"description": "The script that is executed when annotating a content.",
|
|
"nullable": true
|
|
},
|
|
"move": {
|
|
"type": "string",
|
|
"description": "The script that is executed when moving a content.",
|
|
"nullable": true
|
|
},
|
|
"delete": {
|
|
"type": "string",
|
|
"description": "The script that is executed when deleting a content.",
|
|
"nullable": true
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"description": "The version of the app.",
|
|
"format": "int64"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"UpdateAssetScriptsDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"query": {
|
|
"type": "string",
|
|
"description": "The script that is executed for each asset when querying assets.",
|
|
"nullable": true
|
|
},
|
|
"queryPre": {
|
|
"type": "string",
|
|
"description": "The script that is executed for all assets when querying assets.",
|
|
"nullable": true
|
|
},
|
|
"create": {
|
|
"type": "string",
|
|
"description": "The script that is executed when creating an asset.",
|
|
"nullable": true
|
|
},
|
|
"update": {
|
|
"type": "string",
|
|
"description": "The script that is executed when updating a content.",
|
|
"nullable": true
|
|
},
|
|
"annotate": {
|
|
"type": "string",
|
|
"description": "The script that is executed when annotating a content.",
|
|
"nullable": true
|
|
},
|
|
"move": {
|
|
"type": "string",
|
|
"description": "The script that is executed when moving a content.",
|
|
"nullable": true
|
|
},
|
|
"delete": {
|
|
"type": "string",
|
|
"description": "The script that is executed when deleting a content.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"ClientsDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"items"
|
|
],
|
|
"properties": {
|
|
"items": {
|
|
"type": "array",
|
|
"description": "The clients.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/ClientDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"ClientDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"id",
|
|
"secret",
|
|
"name",
|
|
"apiCallsLimit",
|
|
"apiTrafficLimit",
|
|
"allowAnonymous"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "The client id."
|
|
},
|
|
"secret": {
|
|
"type": "string",
|
|
"description": "The client secret."
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The client name."
|
|
},
|
|
"role": {
|
|
"type": "string",
|
|
"description": "The role of the client.",
|
|
"nullable": true
|
|
},
|
|
"apiCallsLimit": {
|
|
"type": "integer",
|
|
"description": "The number of allowed api calls per month for this client.",
|
|
"format": "int64"
|
|
},
|
|
"apiTrafficLimit": {
|
|
"type": "integer",
|
|
"description": "The number of allowed api traffic bytes per month for this client.",
|
|
"format": "int64"
|
|
},
|
|
"allowAnonymous": {
|
|
"type": "boolean",
|
|
"description": "True to allow anonymous access without an access token for this client."
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"CreateClientDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"id"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "The ID of the client.",
|
|
"minLength": 1,
|
|
"pattern": "^[a-z0-9]+(\\-[a-z0-9]+)*$"
|
|
}
|
|
}
|
|
},
|
|
"UpdateClientDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The new display name of the client.",
|
|
"maxLength": 20,
|
|
"minLength": 0,
|
|
"nullable": true
|
|
},
|
|
"role": {
|
|
"type": "string",
|
|
"description": "The role of the client.",
|
|
"nullable": true
|
|
},
|
|
"allowAnonymous": {
|
|
"type": "boolean",
|
|
"description": "True to allow anonymous access without an access token for this client.",
|
|
"nullable": true
|
|
},
|
|
"apiCallsLimit": {
|
|
"type": "integer",
|
|
"description": "The number of allowed api calls per month for this client.",
|
|
"format": "int64",
|
|
"nullable": true
|
|
},
|
|
"apiTrafficLimit": {
|
|
"type": "integer",
|
|
"description": "The number of allowed api traffic bytes per month for this client.",
|
|
"format": "int64",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"AppLanguagesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"items"
|
|
],
|
|
"properties": {
|
|
"items": {
|
|
"type": "array",
|
|
"description": "The languages.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/AppLanguageDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"AppLanguageDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"iso2Code",
|
|
"englishName",
|
|
"fallback",
|
|
"isMaster",
|
|
"isOptional"
|
|
],
|
|
"properties": {
|
|
"iso2Code": {
|
|
"type": "string",
|
|
"description": "The iso code of the language."
|
|
},
|
|
"englishName": {
|
|
"type": "string",
|
|
"description": "The english name of the language."
|
|
},
|
|
"fallback": {
|
|
"type": "array",
|
|
"description": "The fallback languages.",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"isMaster": {
|
|
"type": "boolean",
|
|
"description": "Indicates if the language is the master language."
|
|
},
|
|
"isOptional": {
|
|
"type": "boolean",
|
|
"description": "Indicates if the language is optional."
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"AddLanguageDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"language"
|
|
],
|
|
"properties": {
|
|
"language": {
|
|
"type": "string",
|
|
"description": "The language to add."
|
|
}
|
|
}
|
|
},
|
|
"UpdateLanguageDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"isMaster": {
|
|
"type": "boolean",
|
|
"description": "Set the value to true to make the language the master.",
|
|
"nullable": true
|
|
},
|
|
"isOptional": {
|
|
"type": "boolean",
|
|
"description": "Set the value to true to make the language optional."
|
|
},
|
|
"fallback": {
|
|
"type": "array",
|
|
"description": "Optional fallback languages.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"RolesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"items"
|
|
],
|
|
"properties": {
|
|
"items": {
|
|
"type": "array",
|
|
"description": "The roles.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/RoleDto"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"RoleDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name",
|
|
"numClients",
|
|
"numContributors",
|
|
"isDefaultRole",
|
|
"permissions",
|
|
"properties"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The role name."
|
|
},
|
|
"numClients": {
|
|
"type": "integer",
|
|
"description": "The number of clients with this role.",
|
|
"format": "int32"
|
|
},
|
|
"numContributors": {
|
|
"type": "integer",
|
|
"description": "The number of contributors with this role.",
|
|
"format": "int32"
|
|
},
|
|
"isDefaultRole": {
|
|
"type": "boolean",
|
|
"description": "Indicates if the role is an builtin default role."
|
|
},
|
|
"permissions": {
|
|
"type": "array",
|
|
"description": "Associated list of permissions.",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"properties": {
|
|
"type": "object",
|
|
"description": "Associated list of UI properties.",
|
|
"additionalProperties": {
|
|
"description": "Any"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"AddRoleDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The role name.",
|
|
"minLength": 1
|
|
}
|
|
}
|
|
},
|
|
"UpdateRoleDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"permissions"
|
|
],
|
|
"properties": {
|
|
"permissions": {
|
|
"type": "array",
|
|
"description": "Associated list of permissions.",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"properties": {
|
|
"type": "object",
|
|
"description": "Associated list of UI properties.",
|
|
"additionalProperties": {
|
|
"description": "Any"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"AppDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"id",
|
|
"name",
|
|
"version",
|
|
"created",
|
|
"lastModified",
|
|
"permissions",
|
|
"canAccessApi",
|
|
"canAccessContent",
|
|
"roleProperties"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "The ID of the app."
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the app.",
|
|
"pattern": "^[a-z0-9]+(\\-[a-z0-9]+)*$"
|
|
},
|
|
"label": {
|
|
"type": "string",
|
|
"description": "The optional label of the app.",
|
|
"nullable": true
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"description": "The optional description of the app.",
|
|
"nullable": true
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"description": "The version of the app.",
|
|
"format": "int64"
|
|
},
|
|
"created": {
|
|
"type": "string",
|
|
"description": "The timestamp when the app has been created.",
|
|
"format": "date-time"
|
|
},
|
|
"lastModified": {
|
|
"type": "string",
|
|
"description": "The timestamp when the app has been modified last.",
|
|
"format": "date-time"
|
|
},
|
|
"teamId": {
|
|
"type": "string",
|
|
"description": "The ID of the team.",
|
|
"nullable": true
|
|
},
|
|
"permissions": {
|
|
"type": "array",
|
|
"description": "The permission level of the user.",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"canAccessApi": {
|
|
"type": "boolean",
|
|
"description": "Indicates if the user can access the api.",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Use 'roleProperties' field now."
|
|
},
|
|
"canAccessContent": {
|
|
"type": "boolean",
|
|
"description": "Indicates if the user can access at least one content."
|
|
},
|
|
"roleName": {
|
|
"type": "string",
|
|
"description": "The role name of the user.",
|
|
"nullable": true
|
|
},
|
|
"roleProperties": {
|
|
"type": "object",
|
|
"description": "The properties from the role.",
|
|
"additionalProperties": {
|
|
"description": "Any"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"CreateAppDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the app.",
|
|
"minLength": 1,
|
|
"pattern": "^[a-z0-9]+(\\-[a-z0-9]+)*$"
|
|
},
|
|
"template": {
|
|
"type": "string",
|
|
"description": "Initialize the app with the inbuilt template.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"UpdateAppDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"label": {
|
|
"type": "string",
|
|
"description": "The optional label of your app.",
|
|
"nullable": true
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"description": "The optional description of your app.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"TransferToTeamDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"teamId": {
|
|
"type": "string",
|
|
"description": "The ID of the team.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"AppSettingsDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"patterns",
|
|
"editors",
|
|
"hideScheduler",
|
|
"hideDateTimeModeButton",
|
|
"version"
|
|
],
|
|
"properties": {
|
|
"patterns": {
|
|
"type": "array",
|
|
"description": "The configured app patterns.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/PatternDto"
|
|
}
|
|
},
|
|
"editors": {
|
|
"type": "array",
|
|
"description": "The configured UI editors.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/EditorDto"
|
|
}
|
|
},
|
|
"hideScheduler": {
|
|
"type": "boolean",
|
|
"description": "Hide the scheduler for content items."
|
|
},
|
|
"hideDateTimeModeButton": {
|
|
"type": "boolean",
|
|
"description": "Hide the datetime mode button."
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"description": "The version of the app.",
|
|
"format": "int64"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"PatternDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name",
|
|
"regex"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the suggestion."
|
|
},
|
|
"regex": {
|
|
"type": "string",
|
|
"description": "The regex pattern."
|
|
},
|
|
"message": {
|
|
"type": "string",
|
|
"description": "The regex message.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"EditorDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name",
|
|
"url"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the editor."
|
|
},
|
|
"url": {
|
|
"type": "string",
|
|
"description": "The url to the editor."
|
|
}
|
|
}
|
|
},
|
|
"UpdateAppSettingsDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"patterns",
|
|
"editors"
|
|
],
|
|
"properties": {
|
|
"patterns": {
|
|
"type": "array",
|
|
"description": "The configured app patterns.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/PatternDto"
|
|
}
|
|
},
|
|
"editors": {
|
|
"type": "array",
|
|
"description": "The configured UI editors.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/EditorDto"
|
|
}
|
|
},
|
|
"hideScheduler": {
|
|
"type": "boolean",
|
|
"description": "Hide the scheduler for content items."
|
|
},
|
|
"hideDateTimeModeButton": {
|
|
"type": "boolean",
|
|
"description": "Hide the datetime mode button."
|
|
}
|
|
}
|
|
},
|
|
"WorkflowsDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"items",
|
|
"errors"
|
|
],
|
|
"properties": {
|
|
"items": {
|
|
"type": "array",
|
|
"description": "The workflow.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/WorkflowDto"
|
|
}
|
|
},
|
|
"errors": {
|
|
"type": "array",
|
|
"description": "The errros that should be fixed.",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"WorkflowDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"id",
|
|
"steps",
|
|
"initial"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "The workflow id."
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the workflow.",
|
|
"nullable": true
|
|
},
|
|
"steps": {
|
|
"type": "object",
|
|
"description": "The workflow steps.",
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/WorkflowStepDto"
|
|
}
|
|
},
|
|
"schemaIds": {
|
|
"type": "array",
|
|
"description": "The schema ids.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"initial": {
|
|
"type": "string",
|
|
"description": "The initial step."
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"WorkflowStepDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"transitions": {
|
|
"type": "object",
|
|
"description": "The transitions.",
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/WorkflowTransitionDto"
|
|
}
|
|
},
|
|
"color": {
|
|
"type": "string",
|
|
"description": "The optional color.",
|
|
"nullable": true
|
|
},
|
|
"validate": {
|
|
"type": "boolean",
|
|
"description": "True if the content should be validated when moving to this step."
|
|
},
|
|
"noUpdate": {
|
|
"type": "boolean",
|
|
"description": "Indicates if updates should not be allowed."
|
|
},
|
|
"noUpdateExpression": {
|
|
"type": "string",
|
|
"description": "Optional expression that must evaluate to true when you want to prevent updates.",
|
|
"nullable": true
|
|
},
|
|
"noUpdateRoles": {
|
|
"type": "array",
|
|
"description": "Optional list of roles to restrict the updates for users with these roles.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"WorkflowTransitionDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"expression": {
|
|
"type": "string",
|
|
"description": "The optional expression.",
|
|
"nullable": true
|
|
},
|
|
"roles": {
|
|
"type": "array",
|
|
"description": "The optional restricted role.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"AddWorkflowDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"name"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the workflow.",
|
|
"minLength": 1
|
|
}
|
|
}
|
|
},
|
|
"UpdateWorkflowDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"steps",
|
|
"initial"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The name of the workflow.",
|
|
"nullable": true
|
|
},
|
|
"steps": {
|
|
"type": "object",
|
|
"description": "The workflow steps.",
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/WorkflowStepDto"
|
|
}
|
|
},
|
|
"schemaIds": {
|
|
"type": "array",
|
|
"description": "The schema ids.",
|
|
"nullable": true,
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"initial": {
|
|
"type": "string",
|
|
"description": "The initial step."
|
|
}
|
|
}
|
|
},
|
|
"EnrichedEventDto": {
|
|
"type": "object",
|
|
"discriminator": {
|
|
"propertyName": "$type",
|
|
"mapping": {
|
|
"EnrichedAssetEvent": "#/components/schemas/EnrichedAssetEventDto",
|
|
"EnrichedCommentEvent": "#/components/schemas/EnrichedCommentEventDto",
|
|
"EnrichedContentEvent": "#/components/schemas/EnrichedContentEventDto",
|
|
"EnrichedCronJobEvent": "#/components/schemas/EnrichedCronJobEventDto",
|
|
"EnrichedManualEvent": "#/components/schemas/EnrichedManualEventDto",
|
|
"EnrichedSchemaEvent": "#/components/schemas/EnrichedSchemaEventDto",
|
|
"EnrichedUsageExceededEvent": "#/components/schemas/EnrichedUsageExceededEventDto"
|
|
}
|
|
},
|
|
"x-abstract": true,
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"$type",
|
|
"appId",
|
|
"timestamp",
|
|
"name",
|
|
"version",
|
|
"partition"
|
|
],
|
|
"properties": {
|
|
"appId": {
|
|
"type": "string"
|
|
},
|
|
"timestamp": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"partition": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"$type": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"EnrichedAssetEventDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/EnrichedUserEventBaseEventDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"type",
|
|
"id",
|
|
"created",
|
|
"lastModified",
|
|
"createdBy",
|
|
"lastModifiedBy",
|
|
"parentId",
|
|
"mimeType",
|
|
"fileName",
|
|
"fileHash",
|
|
"slug",
|
|
"fileVersion",
|
|
"fileSize",
|
|
"isProtected",
|
|
"assetType",
|
|
"metadata",
|
|
"isImage",
|
|
"partition"
|
|
],
|
|
"properties": {
|
|
"type": {
|
|
"$ref": "#/components/schemas/EnrichedAssetEventType"
|
|
},
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"created": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"lastModified": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"createdBy": {
|
|
"type": "string"
|
|
},
|
|
"lastModifiedBy": {
|
|
"type": "string"
|
|
},
|
|
"parentId": {
|
|
"type": "string"
|
|
},
|
|
"mimeType": {
|
|
"type": "string"
|
|
},
|
|
"fileName": {
|
|
"type": "string"
|
|
},
|
|
"fileHash": {
|
|
"type": "string"
|
|
},
|
|
"slug": {
|
|
"type": "string"
|
|
},
|
|
"fileVersion": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"fileSize": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"isProtected": {
|
|
"type": "boolean"
|
|
},
|
|
"pixelWidth": {
|
|
"type": "integer",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"pixelHeight": {
|
|
"type": "integer",
|
|
"format": "int32",
|
|
"nullable": true
|
|
},
|
|
"assetType": {
|
|
"$ref": "#/components/schemas/AssetType"
|
|
},
|
|
"metadata": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"description": "Any"
|
|
}
|
|
},
|
|
"isImage": {
|
|
"type": "boolean"
|
|
},
|
|
"partition": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"EnrichedAssetEventType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Created",
|
|
"Deleted",
|
|
"Annotated",
|
|
"Updated"
|
|
],
|
|
"enum": [
|
|
"Created",
|
|
"Deleted",
|
|
"Annotated",
|
|
"Updated"
|
|
]
|
|
},
|
|
"EnrichedUserEventBaseEventDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/EnrichedEventDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"x-abstract": true,
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"actor"
|
|
],
|
|
"properties": {
|
|
"actor": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"EnrichedCommentEventDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/EnrichedUserEventBaseEventDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"text"
|
|
],
|
|
"properties": {
|
|
"text": {
|
|
"type": "string"
|
|
},
|
|
"url": {
|
|
"type": "string",
|
|
"format": "uri",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"EnrichedContentEventDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/EnrichedSchemaEventBaseEventDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"type",
|
|
"id",
|
|
"created",
|
|
"lastModified",
|
|
"createdBy",
|
|
"lastModifiedBy",
|
|
"data",
|
|
"status",
|
|
"partition"
|
|
],
|
|
"properties": {
|
|
"type": {
|
|
"$ref": "#/components/schemas/EnrichedContentEventType"
|
|
},
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"created": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"lastModified": {
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
"createdBy": {
|
|
"type": "string"
|
|
},
|
|
"lastModifiedBy": {
|
|
"type": "string"
|
|
},
|
|
"data": {
|
|
"$ref": "#/components/schemas/ContentData"
|
|
},
|
|
"dataOld": {
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/ContentData"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"newStatus": {
|
|
"type": "string",
|
|
"nullable": true
|
|
},
|
|
"partition": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"EnrichedContentEventType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Created",
|
|
"Deleted",
|
|
"Published",
|
|
"StatusChanged",
|
|
"Updated",
|
|
"Unpublished",
|
|
"ReferenceUpdated"
|
|
],
|
|
"enum": [
|
|
"Created",
|
|
"Deleted",
|
|
"Published",
|
|
"StatusChanged",
|
|
"Updated",
|
|
"Unpublished",
|
|
"ReferenceUpdated"
|
|
]
|
|
},
|
|
"EnrichedSchemaEventBaseEventDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/EnrichedUserEventBaseEventDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"x-abstract": true,
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"schemaId"
|
|
],
|
|
"properties": {
|
|
"schemaId": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"EnrichedCronJobEventDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/EnrichedUserEventBaseEventDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"value",
|
|
"partition"
|
|
],
|
|
"properties": {
|
|
"value": {},
|
|
"partition": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"EnrichedManualEventDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/EnrichedUserEventBaseEventDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"value",
|
|
"partition"
|
|
],
|
|
"properties": {
|
|
"value": {},
|
|
"partition": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"EnrichedSchemaEventDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/EnrichedSchemaEventBaseEventDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"type",
|
|
"id",
|
|
"partition"
|
|
],
|
|
"properties": {
|
|
"type": {
|
|
"$ref": "#/components/schemas/EnrichedSchemaEventType"
|
|
},
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"partition": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"EnrichedSchemaEventType": {
|
|
"type": "string",
|
|
"description": "",
|
|
"x-enumNames": [
|
|
"Created",
|
|
"Deleted",
|
|
"Published",
|
|
"Unpublished",
|
|
"Updated"
|
|
],
|
|
"enum": [
|
|
"Created",
|
|
"Deleted",
|
|
"Published",
|
|
"Unpublished",
|
|
"Updated"
|
|
]
|
|
},
|
|
"EnrichedUsageExceededEventDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/EnrichedEventDto"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"callsCurrent",
|
|
"callsLimit",
|
|
"partition"
|
|
],
|
|
"properties": {
|
|
"callsCurrent": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"callsLimit": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"partition": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"DynamicCreateRuleDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"trigger",
|
|
"flow"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "Optional rule name.",
|
|
"nullable": true
|
|
},
|
|
"trigger": {
|
|
"description": "The trigger properties.",
|
|
"$ref": "#/components/schemas/RuleTriggerDto"
|
|
},
|
|
"action": {
|
|
"type": "object",
|
|
"description": "The action properties.",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Use the new 'Flow' property to define actions",
|
|
"nullable": true,
|
|
"additionalProperties": {}
|
|
},
|
|
"flow": {
|
|
"description": "The flow to describe the sequence of actions to perform.",
|
|
"$ref": "#/components/schemas/DynamicFlowDefinitionDto"
|
|
},
|
|
"isEnabled": {
|
|
"type": "boolean",
|
|
"description": "Enable or disable the rule.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
},
|
|
"DynamicFlowDefinitionDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"initialStepId",
|
|
"steps"
|
|
],
|
|
"properties": {
|
|
"initialStepId": {
|
|
"type": "string",
|
|
"description": "The ID of the initial step.",
|
|
"format": "guid",
|
|
"minLength": 1
|
|
},
|
|
"steps": {
|
|
"type": "object",
|
|
"description": "The steps.",
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/DynamicFlowStepDefinitionDto"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"DynamicFlowStepDefinitionDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"step"
|
|
],
|
|
"properties": {
|
|
"step": {
|
|
"type": "object",
|
|
"description": "The actual step.",
|
|
"additionalProperties": {}
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "The optional descriptive name.",
|
|
"nullable": true
|
|
},
|
|
"nextStepId": {
|
|
"type": "string",
|
|
"description": "The next step.",
|
|
"format": "guid",
|
|
"nullable": true
|
|
},
|
|
"ignoreError": {
|
|
"type": "boolean",
|
|
"description": "Indicates if errors should be ignored."
|
|
}
|
|
}
|
|
},
|
|
"DynamicFlowExecutionStateDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"definition",
|
|
"context",
|
|
"steps",
|
|
"nextStepId",
|
|
"created",
|
|
"completed",
|
|
"status"
|
|
],
|
|
"properties": {
|
|
"definition": {
|
|
"description": "The actual definition of the the steps to be executed.",
|
|
"$ref": "#/components/schemas/DynamicFlowDefinitionDto"
|
|
},
|
|
"context": {
|
|
"description": "The context."
|
|
},
|
|
"steps": {
|
|
"type": "object",
|
|
"description": "The state of each step.",
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/FlowExecutionStepStateDto"
|
|
}
|
|
},
|
|
"nextStepId": {
|
|
"type": "string",
|
|
"description": "The next step to be executed.",
|
|
"format": "guid"
|
|
},
|
|
"nextRun": {
|
|
"type": "string",
|
|
"description": "THe time when the next step will be executed.",
|
|
"format": "date-time",
|
|
"nullable": true
|
|
},
|
|
"created": {
|
|
"type": "string",
|
|
"description": "The creation time.",
|
|
"format": "date-time"
|
|
},
|
|
"completed": {
|
|
"type": "string",
|
|
"description": "The completion time.",
|
|
"format": "date-time"
|
|
},
|
|
"status": {
|
|
"description": "The overall status.",
|
|
"$ref": "#/components/schemas/FlowExecutionStatus"
|
|
}
|
|
}
|
|
},
|
|
"DynamicRulesDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"items"
|
|
],
|
|
"properties": {
|
|
"items": {
|
|
"type": "array",
|
|
"description": "The rules.",
|
|
"items": {
|
|
"$ref": "#/components/schemas/DynamicRuleDto"
|
|
}
|
|
},
|
|
"runningRuleId": {
|
|
"type": "string",
|
|
"description": "The ID of the rule that is currently rerunning.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"DynamicRuleDto": {
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Resource"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"id",
|
|
"createdBy",
|
|
"lastModifiedBy",
|
|
"created",
|
|
"lastModified",
|
|
"version",
|
|
"isEnabled",
|
|
"trigger",
|
|
"flow",
|
|
"action",
|
|
"numSucceeded",
|
|
"numFailed"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string",
|
|
"description": "The ID of the rule."
|
|
},
|
|
"createdBy": {
|
|
"type": "string",
|
|
"description": "The user that has created the rule."
|
|
},
|
|
"lastModifiedBy": {
|
|
"type": "string",
|
|
"description": "The user that has updated the rule."
|
|
},
|
|
"created": {
|
|
"type": "string",
|
|
"description": "The date and time when the rule has been created.",
|
|
"format": "date-time"
|
|
},
|
|
"lastModified": {
|
|
"type": "string",
|
|
"description": "The date and time when the rule has been modified last.",
|
|
"format": "date-time"
|
|
},
|
|
"version": {
|
|
"type": "integer",
|
|
"description": "The version of the rule.",
|
|
"format": "int64"
|
|
},
|
|
"isEnabled": {
|
|
"type": "boolean",
|
|
"description": "Determines if the rule is enabled."
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "Optional rule name.",
|
|
"nullable": true
|
|
},
|
|
"trigger": {
|
|
"description": "The trigger properties.",
|
|
"$ref": "#/components/schemas/RuleTriggerDto"
|
|
},
|
|
"flow": {
|
|
"description": "The flow to describe the sequence of actions to perform.",
|
|
"$ref": "#/components/schemas/DynamicFlowDefinitionDto"
|
|
},
|
|
"action": {
|
|
"type": "object",
|
|
"description": "The action properties.",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Use the new 'Flow' property to define actions. Can be null if the flow cannot be converted.",
|
|
"additionalProperties": {}
|
|
},
|
|
"numSucceeded": {
|
|
"type": "integer",
|
|
"description": "The number of completed executions.",
|
|
"format": "int64"
|
|
},
|
|
"numFailed": {
|
|
"type": "integer",
|
|
"description": "The number of failed executions.",
|
|
"format": "int64"
|
|
},
|
|
"lastExecuted": {
|
|
"type": "string",
|
|
"description": "The date and time when the rule was executed the last time.",
|
|
"format": "date-time",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Removed when migrated to new rule statistics.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"DynamicUpdateRuleDto": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "Optional rule name.",
|
|
"nullable": true
|
|
},
|
|
"trigger": {
|
|
"description": "The trigger properties.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/RuleTriggerDto"
|
|
},
|
|
"action": {
|
|
"type": "object",
|
|
"description": "The action properties.",
|
|
"deprecated": true,
|
|
"x-deprecatedMessage": "Use the new 'Flow' property to define actions",
|
|
"nullable": true,
|
|
"additionalProperties": {}
|
|
},
|
|
"flow": {
|
|
"description": "The flow to describe the sequence of actions to perform.",
|
|
"nullable": true,
|
|
"$ref": "#/components/schemas/DynamicFlowDefinitionDto"
|
|
},
|
|
"isEnabled": {
|
|
"type": "boolean",
|
|
"description": "Enable or disable the rule.",
|
|
"nullable": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"securitySchemes": {
|
|
"squidex-oauth-auth": {
|
|
"type": "openIdConnect",
|
|
"description": "Squidex uses OpenId Connect (OIDC) with the Client Credentials Flow (defined in OAuth 2.0 RFC 6749, section 4.4).\r\n\r\nThe OpenId Connect Client Credentials flow can be used for machine to machine authentication. In this grant a specific user is not authorized but rather the credentials are verified and a generic `access_token` is returned.\r\n\r\nThe `access_token` is a signed JSON Web Token (JWT) which contains expiry information. \r\n\r\nTo retrieve an access token you must pass the Client ID and Client Secret to the token endpoint to authenticate yourself and get a token:\r\n\r\n $ curl\r\n -X POST 'https://localhost:5001/identity-server/connect/token' \r\n -H 'Content-Type: application/x-www-form-urlencoded' \r\n -d 'grant_type=client_credentials&\r\n client_id=[CLIENT_ID]&\r\n client_secret=[CLIENT_SECRET]&\r\n\t\t\tscope=squidex-api'\r\n\r\nPass this token to all consecutiv requests to the API via the `Authorization` header:\r\n\r\n Authorization: Bearer <token>",
|
|
"openIdConnectUrl": "https://localhost:5001/identity-server/.well-known/openid-configuration"
|
|
}
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"squidex-oauth-auth": [
|
|
"squidex-api"
|
|
]
|
|
}
|
|
],
|
|
"externalDocs": {
|
|
"url": "https://docs.squidex.io"
|
|
}
|
|
}
|