You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
364 lines
7.9 KiB
364 lines
7.9 KiB
{ |
|
"openapi": "3.1.0", |
|
"info": { |
|
"title": "Provisioning API", |
|
"version": "1.15.0", |
|
"description": "This application enables a set of APIs that external systems can use to manage users, groups and apps.", |
|
"license": { |
|
"name": "agpl", |
|
"identifier": "AGPL-3.0" |
|
} |
|
}, |
|
"servers": [ |
|
{ |
|
"url": "https://{hostname}:{port}", |
|
"variables": { |
|
"hostname": { |
|
"default": "localhost" |
|
}, |
|
"port": { |
|
"default": "8080" |
|
} |
|
} |
|
} |
|
], |
|
"security": [ |
|
{ |
|
"basic_auth": [] |
|
} |
|
], |
|
"tags": [], |
|
"components": { |
|
"schemas": { |
|
"OCSMeta": { |
|
"type": "object", |
|
"required": [ |
|
"status", |
|
"statuscode" |
|
], |
|
"properties": { |
|
"status": { |
|
"type": "string" |
|
}, |
|
"statuscode": { |
|
"type": "integer" |
|
}, |
|
"message": { |
|
"type": "string" |
|
}, |
|
"totalitems": { |
|
"type": "string" |
|
}, |
|
"itemsperpage": { |
|
"type": "string" |
|
} |
|
} |
|
}, |
|
"EmptyOCS": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"type": "array" |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"User": { |
|
"type": "object", |
|
"required": [ |
|
"ocs" |
|
], |
|
"properties": { |
|
"ocs": { |
|
"type": "object", |
|
"required": [ |
|
"meta", |
|
"data" |
|
], |
|
"properties": { |
|
"meta": { |
|
"$ref": "#/components/schemas/OCSMeta" |
|
}, |
|
"data": { |
|
"$ref": "#/components/schemas/UserDetails" |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"UserDetails": { |
|
"type": "object", |
|
"required": [ |
|
"id", |
|
"lastLogin", |
|
"backend", |
|
"subadmin", |
|
"quota", |
|
"avatarScope", |
|
"emailScope", |
|
"additional_mail", |
|
"additional_mailScope", |
|
"displaynameScope", |
|
"phone", |
|
"phoneScope", |
|
"address", |
|
"addressScope", |
|
"website", |
|
"websiteScope", |
|
"twitter", |
|
"twitterScope", |
|
"organisation", |
|
"organisationScope", |
|
"role", |
|
"roleScope", |
|
"headline", |
|
"headlineScope", |
|
"biography", |
|
"biographyScope", |
|
"profile_enabled", |
|
"profile_enabledScope", |
|
"groups", |
|
"language", |
|
"locale", |
|
"backendCapabilities" |
|
], |
|
"properties": { |
|
"enabled": { |
|
"type": "boolean" |
|
}, |
|
"storageLocation": { |
|
"type": "string" |
|
}, |
|
"id": { |
|
"type": "string" |
|
}, |
|
"lastLogin": { |
|
"type": "integer" |
|
}, |
|
"backend": { |
|
"type": "string" |
|
}, |
|
"subadmin": { |
|
"type": "array", |
|
"items": { |
|
"type": "string" |
|
} |
|
}, |
|
"quota": { |
|
"type": "object", |
|
"required": [ |
|
"free", |
|
"used", |
|
"total", |
|
"relative", |
|
"quota" |
|
], |
|
"properties": { |
|
"free": { |
|
"type": "integer" |
|
}, |
|
"used": { |
|
"type": "integer" |
|
}, |
|
"total": { |
|
"type": "integer" |
|
}, |
|
"relative": { |
|
"type": "number" |
|
}, |
|
"quota": { |
|
"type": "integer" |
|
} |
|
} |
|
}, |
|
"avatarScope": { |
|
"type": "string" |
|
}, |
|
"email": { |
|
"type": "string" |
|
}, |
|
"emailScope": { |
|
"type": "string" |
|
}, |
|
"additional_mail": { |
|
"type": "array", |
|
"items": { |
|
"type": "string" |
|
} |
|
}, |
|
"additional_mailScope": { |
|
"type": "array", |
|
"items": { |
|
"type": "string" |
|
} |
|
}, |
|
"displayname": { |
|
"type": "string" |
|
}, |
|
"displaynameScope": { |
|
"type": "string" |
|
}, |
|
"phone": { |
|
"type": "string" |
|
}, |
|
"phoneScope": { |
|
"type": "string" |
|
}, |
|
"address": { |
|
"type": "string" |
|
}, |
|
"addressScope": { |
|
"type": "string" |
|
}, |
|
"website": { |
|
"type": "string" |
|
}, |
|
"websiteScope": { |
|
"type": "string" |
|
}, |
|
"twitter": { |
|
"type": "string" |
|
}, |
|
"twitterScope": { |
|
"type": "string" |
|
}, |
|
"organisation": { |
|
"type": "string" |
|
}, |
|
"organisationScope": { |
|
"type": "string" |
|
}, |
|
"role": { |
|
"type": "string" |
|
}, |
|
"roleScope": { |
|
"type": "string" |
|
}, |
|
"headline": { |
|
"type": "string" |
|
}, |
|
"headlineScope": { |
|
"type": "string" |
|
}, |
|
"biography": { |
|
"type": "string" |
|
}, |
|
"biographyScope": { |
|
"type": "string" |
|
}, |
|
"profile_enabled": { |
|
"type": "string" |
|
}, |
|
"profile_enabledScope": { |
|
"type": "string" |
|
}, |
|
"groups": { |
|
"type": "array", |
|
"items": { |
|
"type": "string" |
|
} |
|
}, |
|
"language": { |
|
"type": "string" |
|
}, |
|
"locale": { |
|
"type": "string" |
|
}, |
|
"notify_email": { |
|
"type": "string" |
|
}, |
|
"backendCapabilities": { |
|
"type": "object", |
|
"required": [ |
|
"setDisplayName", |
|
"setPassword" |
|
], |
|
"properties": { |
|
"setDisplayName": { |
|
"type": "boolean" |
|
}, |
|
"setPassword": { |
|
"type": "boolean" |
|
} |
|
} |
|
}, |
|
"display-name": { |
|
"type": "string" |
|
} |
|
} |
|
} |
|
}, |
|
"securitySchemes": { |
|
"basic_auth": { |
|
"type": "http", |
|
"scheme": "basic" |
|
} |
|
} |
|
}, |
|
"paths": { |
|
"/ocs/v2.php/cloud/user": { |
|
"get": { |
|
"operationId": "get-current-user", |
|
"tags": [ |
|
"provisioning_api" |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"$ref": "#/components/schemas/User" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}, |
|
"/ocs/v2.php/cloud/users/{userId}": { |
|
"parameters": [ |
|
{ |
|
"name": "userId", |
|
"in": "path", |
|
"required": true, |
|
"schema": { |
|
"type": "string" |
|
} |
|
} |
|
], |
|
"get": { |
|
"operationId": "get-user", |
|
"tags": [ |
|
"provisioning_api" |
|
], |
|
"responses": { |
|
"200": { |
|
"description": "", |
|
"content": { |
|
"application/json": { |
|
"schema": { |
|
"$ref": "#/components/schemas/User" |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
} |
|
}
|
|
|