{
    "openapi": "3.0.3",
    "info": {
        "title": "provisioning_api",
        "version": "0.0.1",
        "description": "This application enables a set of APIs that external systems can use to manage accounts, groups and apps.",
        "license": {
            "name": "agpl"
        }
    },
    "components": {
        "securitySchemes": {
            "basic_auth": {
                "type": "http",
                "scheme": "basic"
            },
            "bearer_auth": {
                "type": "http",
                "scheme": "bearer"
            }
        },
        "schemas": {
            "Capabilities": {
                "type": "object",
                "required": [
                    "provisioning_api"
                ],
                "properties": {
                    "provisioning_api": {
                        "type": "object",
                        "required": [
                            "version",
                            "AccountPropertyScopesVersion",
                            "AccountPropertyScopesFederatedEnabled",
                            "AccountPropertyScopesPublishedEnabled"
                        ],
                        "properties": {
                            "version": {
                                "type": "string"
                            },
                            "AccountPropertyScopesVersion": {
                                "type": "integer",
                                "format": "int64"
                            },
                            "AccountPropertyScopesFederatedEnabled": {
                                "type": "boolean"
                            },
                            "AccountPropertyScopesPublishedEnabled": {
                                "type": "boolean"
                            }
                        }
                    }
                }
            },
            "GroupDetails": {
                "type": "object",
                "required": [
                    "id",
                    "displayname",
                    "usercount",
                    "disabled",
                    "canAdd",
                    "canRemove"
                ],
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "displayname": {
                        "type": "string"
                    },
                    "usercount": {
                        "oneOf": [
                            {
                                "type": "boolean"
                            },
                            {
                                "type": "integer",
                                "format": "int64"
                            }
                        ]
                    },
                    "disabled": {
                        "oneOf": [
                            {
                                "type": "boolean"
                            },
                            {
                                "type": "integer",
                                "format": "int64"
                            }
                        ]
                    },
                    "canAdd": {
                        "type": "boolean"
                    },
                    "canRemove": {
                        "type": "boolean"
                    }
                }
            },
            "OCSMeta": {
                "type": "object",
                "required": [
                    "status",
                    "statuscode"
                ],
                "properties": {
                    "status": {
                        "type": "string"
                    },
                    "statuscode": {
                        "type": "integer"
                    },
                    "message": {
                        "type": "string"
                    },
                    "totalitems": {
                        "type": "string"
                    },
                    "itemsperpage": {
                        "type": "string"
                    }
                }
            },
            "UserDetails": {
                "type": "object",
                "required": [
                    "additional_mail",
                    "address",
                    "backend",
                    "backendCapabilities",
                    "biography",
                    "display-name",
                    "displayname",
                    "email",
                    "fediverse",
                    "groups",
                    "headline",
                    "id",
                    "language",
                    "lastLogin",
                    "locale",
                    "manager",
                    "notify_email",
                    "organisation",
                    "phone",
                    "profile_enabled",
                    "quota",
                    "role",
                    "subadmin",
                    "twitter",
                    "website"
                ],
                "properties": {
                    "additional_mail": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "additional_mailScope": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/UserDetailsScope"
                        }
                    },
                    "address": {
                        "type": "string"
                    },
                    "addressScope": {
                        "$ref": "#/components/schemas/UserDetailsScope"
                    },
                    "avatarScope": {
                        "$ref": "#/components/schemas/UserDetailsScope"
                    },
                    "backend": {
                        "type": "string"
                    },
                    "backendCapabilities": {
                        "type": "object",
                        "required": [
                            "setDisplayName",
                            "setPassword"
                        ],
                        "properties": {
                            "setDisplayName": {
                                "type": "boolean"
                            },
                            "setPassword": {
                                "type": "boolean"
                            }
                        }
                    },
                    "biography": {
                        "type": "string"
                    },
                    "biographyScope": {
                        "$ref": "#/components/schemas/UserDetailsScope"
                    },
                    "display-name": {
                        "type": "string"
                    },
                    "displayname": {
                        "type": "string"
                    },
                    "displaynameScope": {
                        "$ref": "#/components/schemas/UserDetailsScope"
                    },
                    "email": {
                        "type": "string",
                        "nullable": true
                    },
                    "emailScope": {
                        "$ref": "#/components/schemas/UserDetailsScope"
                    },
                    "enabled": {
                        "type": "boolean"
                    },
                    "fediverse": {
                        "type": "string"
                    },
                    "fediverseScope": {
                        "$ref": "#/components/schemas/UserDetailsScope"
                    },
                    "groups": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "headline": {
                        "type": "string"
                    },
                    "headlineScope": {
                        "$ref": "#/components/schemas/UserDetailsScope"
                    },
                    "id": {
                        "type": "string"
                    },
                    "language": {
                        "type": "string"
                    },
                    "lastLogin": {
                        "type": "integer",
                        "format": "int64"
                    },
                    "locale": {
                        "type": "string"
                    },
                    "manager": {
                        "type": "string"
                    },
                    "notify_email": {
                        "type": "string",
                        "nullable": true
                    },
                    "organisation": {
                        "type": "string"
                    },
                    "organisationScope": {
                        "$ref": "#/components/schemas/UserDetailsScope"
                    },
                    "phone": {
                        "type": "string"
                    },
                    "phoneScope": {
                        "$ref": "#/components/schemas/UserDetailsScope"
                    },
                    "profile_enabled": {
                        "type": "string"
                    },
                    "profile_enabledScope": {
                        "$ref": "#/components/schemas/UserDetailsScope"
                    },
                    "quota": {
                        "$ref": "#/components/schemas/UserDetailsQuota"
                    },
                    "role": {
                        "type": "string"
                    },
                    "roleScope": {
                        "$ref": "#/components/schemas/UserDetailsScope"
                    },
                    "storageLocation": {
                        "type": "string"
                    },
                    "subadmin": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "twitter": {
                        "type": "string"
                    },
                    "twitterScope": {
                        "$ref": "#/components/schemas/UserDetailsScope"
                    },
                    "website": {
                        "type": "string"
                    },
                    "websiteScope": {
                        "$ref": "#/components/schemas/UserDetailsScope"
                    }
                }
            },
            "UserDetailsQuota": {
                "type": "object",
                "properties": {
                    "free": {
                        "anyOf": [
                            {
                                "type": "number",
                                "format": "double"
                            },
                            {
                                "type": "integer",
                                "format": "int64"
                            }
                        ]
                    },
                    "quota": {
                        "anyOf": [
                            {
                                "type": "number",
                                "format": "double"
                            },
                            {
                                "type": "integer",
                                "format": "int64"
                            },
                            {
                                "type": "string"
                            }
                        ]
                    },
                    "relative": {
                        "anyOf": [
                            {
                                "type": "number",
                                "format": "double"
                            },
                            {
                                "type": "integer",
                                "format": "int64"
                            }
                        ]
                    },
                    "total": {
                        "anyOf": [
                            {
                                "type": "number",
                                "format": "double"
                            },
                            {
                                "type": "integer",
                                "format": "int64"
                            }
                        ]
                    },
                    "used": {
                        "anyOf": [
                            {
                                "type": "number",
                                "format": "double"
                            },
                            {
                                "type": "integer",
                                "format": "int64"
                            }
                        ]
                    }
                }
            },
            "UserDetailsScope": {
                "type": "string",
                "enum": [
                    "v2-private",
                    "v2-local",
                    "v2-federated",
                    "v2-published",
                    "private",
                    "contacts",
                    "public"
                ]
            }
        }
    },
    "paths": {
        "/ocs/v2.php/cloud/groups": {
            "get": {
                "operationId": "groups-get-groups",
                "summary": "Get a list of groups",
                "tags": [
                    "groups"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "parameters": [
                    {
                        "name": "search",
                        "in": "query",
                        "description": "Text to search for",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "description": "Limit the amount of groups returned",
                        "schema": {
                            "type": "integer",
                            "format": "int64",
                            "nullable": true
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Offset for searching for groups",
                        "schema": {
                            "type": "integer",
                            "format": "int64",
                            "default": 0
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Groups returned",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {
                                                    "type": "object",
                                                    "required": [
                                                        "groups"
                                                    ],
                                                    "properties": {
                                                        "groups": {
                                                            "type": "array",
                                                            "items": {
                                                                "type": "string"
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/ocs/v2.php/cloud/groups/details": {
            "get": {
                "operationId": "groups-get-groups-details",
                "summary": "Get a list of groups details",
                "tags": [
                    "groups"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "parameters": [
                    {
                        "name": "search",
                        "in": "query",
                        "description": "Text to search for",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "description": "Limit the amount of groups returned",
                        "schema": {
                            "type": "integer",
                            "format": "int64",
                            "nullable": true
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Offset for searching for groups",
                        "schema": {
                            "type": "integer",
                            "format": "int64",
                            "default": 0
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Groups details returned",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {
                                                    "type": "object",
                                                    "required": [
                                                        "groups"
                                                    ],
                                                    "properties": {
                                                        "groups": {
                                                            "type": "array",
                                                            "items": {
                                                                "$ref": "#/components/schemas/GroupDetails"
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/ocs/v2.php/cloud/groups/{groupId}/users": {
            "get": {
                "operationId": "groups-get-group-users",
                "summary": "Get a list of users in the specified group",
                "tags": [
                    "groups"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "parameters": [
                    {
                        "name": "groupId",
                        "in": "path",
                        "description": "ID of the group",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "^.+$"
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "User IDs returned",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {
                                                    "type": "object",
                                                    "required": [
                                                        "users"
                                                    ],
                                                    "properties": {
                                                        "users": {
                                                            "type": "array",
                                                            "items": {
                                                                "type": "string"
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Group not found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Missing permissions to get users in the group",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/ocs/v2.php/cloud/groups/{groupId}/users/details": {
            "get": {
                "operationId": "groups-get-group-users-details",
                "summary": "Get a list of users details in the specified group",
                "tags": [
                    "groups"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "parameters": [
                    {
                        "name": "groupId",
                        "in": "path",
                        "description": "ID of the group",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "^.+$"
                        }
                    },
                    {
                        "name": "search",
                        "in": "query",
                        "description": "Text to search for",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "description": "Limit the amount of groups returned",
                        "schema": {
                            "type": "integer",
                            "format": "int64",
                            "nullable": true
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Offset for searching for groups",
                        "schema": {
                            "type": "integer",
                            "format": "int64",
                            "default": 0
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Group users details returned",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {
                                                    "type": "object",
                                                    "required": [
                                                        "users"
                                                    ],
                                                    "properties": {
                                                        "users": {
                                                            "type": "object",
                                                            "additionalProperties": {
                                                                "anyOf": [
                                                                    {
                                                                        "$ref": "#/components/schemas/UserDetails"
                                                                    },
                                                                    {
                                                                        "type": "object",
                                                                        "required": [
                                                                            "id"
                                                                        ],
                                                                        "properties": {
                                                                            "id": {
                                                                                "type": "string"
                                                                            }
                                                                        }
                                                                    }
                                                                ]
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/ocs/v2.php/cloud/groups/{groupId}": {
            "get": {
                "operationId": "groups-get-group",
                "summary": "Get a list of users in the specified group",
                "deprecated": true,
                "tags": [
                    "groups"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "parameters": [
                    {
                        "name": "groupId",
                        "in": "path",
                        "description": "ID of the group",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "^.+$"
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Group users returned",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {
                                                    "type": "object",
                                                    "required": [
                                                        "users"
                                                    ],
                                                    "properties": {
                                                        "users": {
                                                            "type": "array",
                                                            "items": {
                                                                "type": "string"
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/ocs/v2.php/cloud/users": {
            "get": {
                "operationId": "users-get-users",
                "summary": "Get a list of users",
                "tags": [
                    "users"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "parameters": [
                    {
                        "name": "search",
                        "in": "query",
                        "description": "Text to search for",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "description": "Limit the amount of groups returned",
                        "schema": {
                            "type": "integer",
                            "format": "int64",
                            "nullable": true
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Offset for searching for groups",
                        "schema": {
                            "type": "integer",
                            "format": "int64",
                            "default": 0
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Users returned",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {
                                                    "type": "object",
                                                    "required": [
                                                        "users"
                                                    ],
                                                    "properties": {
                                                        "users": {
                                                            "type": "array",
                                                            "items": {
                                                                "type": "string"
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "users-add-user",
                "summary": "Create a new user",
                "description": "This endpoint requires password confirmation",
                "tags": [
                    "users"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "required": [
                                    "userid"
                                ],
                                "properties": {
                                    "userid": {
                                        "type": "string",
                                        "description": "ID of the user"
                                    },
                                    "password": {
                                        "type": "string",
                                        "default": "",
                                        "description": "Password of the user"
                                    },
                                    "displayName": {
                                        "type": "string",
                                        "default": "",
                                        "description": "Display name of the user"
                                    },
                                    "email": {
                                        "type": "string",
                                        "default": "",
                                        "description": "Email of the user"
                                    },
                                    "groups": {
                                        "type": "array",
                                        "default": [],
                                        "description": "Groups of the user",
                                        "items": {
                                            "type": "string"
                                        }
                                    },
                                    "subadmin": {
                                        "type": "array",
                                        "default": [],
                                        "description": "Groups where the user is subadmin",
                                        "items": {
                                            "type": "string"
                                        }
                                    },
                                    "quota": {
                                        "type": "string",
                                        "default": "",
                                        "description": "Quota of the user"
                                    },
                                    "language": {
                                        "type": "string",
                                        "default": "",
                                        "description": "Language of the user"
                                    },
                                    "manager": {
                                        "type": "string",
                                        "nullable": true,
                                        "description": "Manager of the user"
                                    }
                                }
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "User added successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {
                                                    "type": "object",
                                                    "required": [
                                                        "id"
                                                    ],
                                                    "properties": {
                                                        "id": {
                                                            "type": "string"
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "Missing permissions to make user subadmin",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/ocs/v2.php/cloud/users/details": {
            "get": {
                "operationId": "users-get-users-details",
                "summary": "Get a list of users and their details",
                "tags": [
                    "users"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "parameters": [
                    {
                        "name": "search",
                        "in": "query",
                        "description": "Text to search for",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "description": "Limit the amount of groups returned",
                        "schema": {
                            "type": "integer",
                            "format": "int64",
                            "nullable": true
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Offset for searching for groups",
                        "schema": {
                            "type": "integer",
                            "format": "int64",
                            "default": 0
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Users details returned",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {
                                                    "type": "object",
                                                    "required": [
                                                        "users"
                                                    ],
                                                    "properties": {
                                                        "users": {
                                                            "type": "object",
                                                            "additionalProperties": {
                                                                "anyOf": [
                                                                    {
                                                                        "$ref": "#/components/schemas/UserDetails"
                                                                    },
                                                                    {
                                                                        "type": "object",
                                                                        "required": [
                                                                            "id"
                                                                        ],
                                                                        "properties": {
                                                                            "id": {
                                                                                "type": "string"
                                                                            }
                                                                        }
                                                                    }
                                                                ]
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/ocs/v2.php/cloud/users/disabled": {
            "get": {
                "operationId": "users-get-disabled-users-details",
                "summary": "Get the list of disabled users and their details",
                "tags": [
                    "users"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "parameters": [
                    {
                        "name": "search",
                        "in": "query",
                        "description": "Text to search for",
                        "schema": {
                            "type": "string",
                            "default": ""
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "description": "Limit the amount of users returned",
                        "schema": {
                            "type": "integer",
                            "format": "int64",
                            "nullable": true
                        }
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "description": "Offset",
                        "schema": {
                            "type": "integer",
                            "format": "int64",
                            "default": 0
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Disabled users details returned",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {
                                                    "type": "object",
                                                    "required": [
                                                        "users"
                                                    ],
                                                    "properties": {
                                                        "users": {
                                                            "type": "object",
                                                            "additionalProperties": {
                                                                "anyOf": [
                                                                    {
                                                                        "$ref": "#/components/schemas/UserDetails"
                                                                    },
                                                                    {
                                                                        "type": "object",
                                                                        "required": [
                                                                            "id"
                                                                        ],
                                                                        "properties": {
                                                                            "id": {
                                                                                "type": "string"
                                                                            }
                                                                        }
                                                                    }
                                                                ]
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/ocs/v2.php/cloud/users/search/by-phone": {
            "post": {
                "operationId": "users-search-by-phone-numbers",
                "summary": "Search users by their phone numbers",
                "tags": [
                    "users"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "required": [
                                    "location",
                                    "search"
                                ],
                                "properties": {
                                    "location": {
                                        "type": "string",
                                        "description": "Location of the phone number (for country code)"
                                    },
                                    "search": {
                                        "type": "object",
                                        "description": "Phone numbers to search for",
                                        "additionalProperties": {
                                            "type": "array",
                                            "items": {
                                                "type": "string"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Users returned",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {
                                                    "type": "object",
                                                    "additionalProperties": {
                                                        "type": "string"
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Invalid location",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/ocs/v2.php/cloud/users/{userId}": {
            "get": {
                "operationId": "users-get-user",
                "summary": "Get the details of a user",
                "tags": [
                    "users"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "parameters": [
                    {
                        "name": "userId",
                        "in": "path",
                        "description": "ID of the user",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "User returned",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {
                                                    "$ref": "#/components/schemas/UserDetails"
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "operationId": "users-edit-user",
                "summary": "Update a value of the user's details",
                "description": "This endpoint requires password confirmation",
                "tags": [
                    "users"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "required": [
                                    "key",
                                    "value"
                                ],
                                "properties": {
                                    "key": {
                                        "type": "string",
                                        "description": "Key that will be updated"
                                    },
                                    "value": {
                                        "type": "string",
                                        "description": "New value for the key"
                                    }
                                }
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "userId",
                        "in": "path",
                        "description": "ID of the user",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "User value edited successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "operationId": "users-delete-user",
                "summary": "Delete a user",
                "description": "This endpoint requires password confirmation",
                "tags": [
                    "users"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "parameters": [
                    {
                        "name": "userId",
                        "in": "path",
                        "description": "ID of the user",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "User deleted successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/ocs/v2.php/cloud/user": {
            "get": {
                "operationId": "users-get-current-user",
                "summary": "Get the details of the current user",
                "tags": [
                    "users"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "parameters": [
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Current user returned",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {
                                                    "$ref": "#/components/schemas/UserDetails"
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/ocs/v2.php/cloud/user/fields": {
            "get": {
                "operationId": "users-get-editable-fields",
                "summary": "Get a list of fields that are editable for the current user",
                "tags": [
                    "users"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "parameters": [
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Editable fields returned",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/ocs/v2.php/cloud/user/fields/{userId}": {
            "get": {
                "operationId": "users-get-editable-fields-for-user",
                "summary": "Get a list of fields that are editable for a user",
                "tags": [
                    "users"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "parameters": [
                    {
                        "name": "userId",
                        "in": "path",
                        "description": "ID of the user",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Editable fields for user returned",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/ocs/v2.php/cloud/users/{userId}/{collectionName}": {
            "put": {
                "operationId": "users-edit-user-multi-value",
                "summary": "Update multiple values of the user's details",
                "description": "This endpoint requires password confirmation",
                "tags": [
                    "users"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "required": [
                                    "key",
                                    "value"
                                ],
                                "properties": {
                                    "key": {
                                        "type": "string",
                                        "description": "Key that will be updated"
                                    },
                                    "value": {
                                        "type": "string",
                                        "description": "New value for the key"
                                    }
                                }
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "userId",
                        "in": "path",
                        "description": "ID of the user",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "collectionName",
                        "in": "path",
                        "description": "Collection to update",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "^(?!enable$|disable$)[a-zA-Z0-9_]*$"
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "User values edited successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/ocs/v2.php/cloud/users/{userId}/wipe": {
            "post": {
                "operationId": "users-wipe-user-devices",
                "summary": "Wipe all devices of a user",
                "description": "This endpoint requires password confirmation",
                "tags": [
                    "users"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "parameters": [
                    {
                        "name": "userId",
                        "in": "path",
                        "description": "ID of the user",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Wiped all user devices successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/ocs/v2.php/cloud/users/{userId}/enable": {
            "put": {
                "operationId": "users-enable-user",
                "summary": "Enable a user",
                "description": "This endpoint requires password confirmation",
                "tags": [
                    "users"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "parameters": [
                    {
                        "name": "userId",
                        "in": "path",
                        "description": "ID of the user",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "User enabled successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/ocs/v2.php/cloud/users/{userId}/disable": {
            "put": {
                "operationId": "users-disable-user",
                "summary": "Disable a user",
                "description": "This endpoint requires password confirmation",
                "tags": [
                    "users"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "parameters": [
                    {
                        "name": "userId",
                        "in": "path",
                        "description": "ID of the user",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "User disabled successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/ocs/v2.php/cloud/users/{userId}/groups": {
            "get": {
                "operationId": "users-get-users-groups",
                "summary": "Get a list of groups the user belongs to",
                "tags": [
                    "users"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "parameters": [
                    {
                        "name": "userId",
                        "in": "path",
                        "description": "ID of the user",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Users groups returned",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {
                                                    "type": "object",
                                                    "required": [
                                                        "groups"
                                                    ],
                                                    "properties": {
                                                        "groups": {
                                                            "type": "array",
                                                            "items": {
                                                                "type": "string"
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "users-add-to-group",
                "summary": "Add a user to a group",
                "description": "This endpoint requires password confirmation",
                "tags": [
                    "users"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "requestBody": {
                    "required": false,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "groupid": {
                                        "type": "string",
                                        "default": "",
                                        "description": "ID of the group"
                                    }
                                }
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "userId",
                        "in": "path",
                        "description": "ID of the user",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "User added to group successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "operationId": "users-remove-from-group",
                "summary": "Remove a user from a group",
                "description": "This endpoint requires password confirmation",
                "tags": [
                    "users"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "parameters": [
                    {
                        "name": "userId",
                        "in": "path",
                        "description": "ID of the user",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "groupid",
                        "in": "query",
                        "description": "ID of the group",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "User removed from group successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/ocs/v2.php/cloud/users/{userId}/welcome": {
            "post": {
                "operationId": "users-resend-welcome-message",
                "summary": "Resend the welcome message",
                "description": "This endpoint requires password confirmation",
                "tags": [
                    "users"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "parameters": [
                    {
                        "name": "userId",
                        "in": "path",
                        "description": "ID if the user",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Resent welcome message successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/ocs/v2.php/apps/provisioning_api/api/v1/config/apps/{app}/{key}": {
            "post": {
                "operationId": "app_config-set-value",
                "summary": "Update the config value of an app",
                "description": "This endpoint requires password confirmation",
                "tags": [
                    "app_config"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "required": [
                                    "value"
                                ],
                                "properties": {
                                    "value": {
                                        "type": "string",
                                        "description": "New value for the key"
                                    }
                                }
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "app",
                        "in": "path",
                        "description": "ID of the app",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "key",
                        "in": "path",
                        "description": "Key to update",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Value updated successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "App or key is not allowed",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {
                                                    "type": "object",
                                                    "required": [
                                                        "data"
                                                    ],
                                                    "properties": {
                                                        "data": {
                                                            "type": "object",
                                                            "required": [
                                                                "message"
                                                            ],
                                                            "properties": {
                                                                "message": {
                                                                    "type": "string"
                                                                }
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/ocs/v2.php/apps/provisioning_api/api/v1/config/users/{appId}/{configKey}": {
            "post": {
                "operationId": "preferences-set-preference",
                "summary": "Update a preference value of an app",
                "tags": [
                    "preferences"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "required": [
                                    "configValue"
                                ],
                                "properties": {
                                    "configValue": {
                                        "type": "string",
                                        "description": "New value"
                                    }
                                }
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "appId",
                        "in": "path",
                        "description": "ID of the app",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "configKey",
                        "in": "path",
                        "description": "Key of the preference",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Preference updated successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Preference invalid",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "operationId": "preferences-delete-preference",
                "summary": "Delete a preference for an app",
                "tags": [
                    "preferences"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "parameters": [
                    {
                        "name": "appId",
                        "in": "path",
                        "description": "ID of the app",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "configKey",
                        "in": "path",
                        "description": "Key to delete",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Preference deleted successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Preference invalid",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        },
        "/ocs/v2.php/apps/provisioning_api/api/v1/config/users/{appId}": {
            "post": {
                "operationId": "preferences-set-multiple-preferences",
                "summary": "Update multiple preference values of an app",
                "tags": [
                    "preferences"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "required": [
                                    "configs"
                                ],
                                "properties": {
                                    "configs": {
                                        "type": "object",
                                        "description": "Key-value pairs of the preferences",
                                        "additionalProperties": {
                                            "type": "string"
                                        }
                                    }
                                }
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "appId",
                        "in": "path",
                        "description": "ID of the app",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Preferences updated successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Preference invalid",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "delete": {
                "operationId": "preferences-delete-multiple-preference",
                "summary": "Delete multiple preferences for an app",
                "tags": [
                    "preferences"
                ],
                "security": [
                    {
                        "bearer_auth": []
                    },
                    {
                        "basic_auth": []
                    }
                ],
                "parameters": [
                    {
                        "name": "appId",
                        "in": "path",
                        "description": "ID of the app",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "configKeys[]",
                        "in": "query",
                        "description": "Keys to delete",
                        "required": true,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        }
                    },
                    {
                        "name": "OCS-APIRequest",
                        "in": "header",
                        "description": "Required to be true for the API request to pass",
                        "required": true,
                        "schema": {
                            "type": "boolean",
                            "default": true
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Preferences deleted successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Preference invalid",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "required": [
                                        "ocs"
                                    ],
                                    "properties": {
                                        "ocs": {
                                            "type": "object",
                                            "required": [
                                                "meta",
                                                "data"
                                            ],
                                            "properties": {
                                                "meta": {
                                                    "$ref": "#/components/schemas/OCSMeta"
                                                },
                                                "data": {}
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    },
    "tags": []
}