UNPKG

@itentialopensource/adapter-nexus_repository

Version:

This adapter integrates with system described as: nexusRepositoryManagerRestApi.

1,956 lines 247 kB
{ "swagger": "2.0", "info": { "version": "3.21.2-03", "title": "Nexus Repository Manager REST API" }, "basePath": "/service/rest/", "tags": [ { "name": "Security Management" }, { "name": "Security Management: Users" }, { "name": "Security Management: Privileges" }, { "name": "Security Management: Realms" }, { "name": "Security Management: Roles" }, { "name": "tasks" }, { "name": "Blob Store" }, { "name": "lifecycle" }, { "name": "read-only" }, { "name": "Security: Certificates" }, { "name": "Repository Management" }, { "name": "assets" }, { "name": "components" }, { "name": "content-selectors" }, { "name": "repositories" }, { "name": "routing-rules" }, { "name": "search" }, { "name": "formats" }, { "name": "script" }, { "name": "email" }, { "name": "status" }, { "name": "support" }, { "name": "Security Management: LDAP" }, { "name": "Product Licensing" }, { "name": "Manage IQ Server configuration" } ], "paths": { "/beta/security/user-sources": { "get": { "tags": [ "Security Management" ], "summary": "Retrieve a list of the available user sources.", "description": "", "operationId": "getUserSources", "produces": [ "application/json" ], "parameters": [], "responses": { "200": { "description": "successful operation", "schema": { "type": "array", "items": { "$ref": "#/definitions/ApiUserSource" } } }, "403": { "description": "The user does not have permission to perform the operation." } } } }, "/beta/security/users/{userId}": { "put": { "tags": [ "Security Management: Users" ], "summary": "Update an existing user.", "description": "", "operationId": "updateUser", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "userId", "in": "path", "description": "The userid the request should apply to.", "required": true, "type": "string" }, { "in": "body", "name": "body", "description": "A representation of the user to update.", "required": false, "schema": { "$ref": "#/definitions/ApiUser" } } ], "responses": { "400": { "description": "Password was not supplied in the body of the request" }, "403": { "description": "The user does not have permission to perform the operation." }, "404": { "description": "User or user source not found in the system." } } }, "delete": { "tags": [ "Security Management: Users" ], "summary": "Delete a user.", "description": "", "operationId": "deleteUser", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "userId", "in": "path", "description": "The userid the request should apply to.", "required": true, "type": "string" } ], "responses": { "400": { "description": "Password was not supplied in the body of the request" }, "403": { "description": "The user does not have permission to perform the operation." }, "404": { "description": "User or user source not found in the system." } } } }, "/beta/security/users": { "get": { "tags": [ "Security Management: Users" ], "summary": "Retrieve a list of users. Note if the source is not 'default' the response is limited to 100 users.", "description": "", "operationId": "getUsers", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "userId", "in": "query", "description": "An optional term to search userids for.", "required": false, "type": "string" }, { "name": "source", "in": "query", "description": "An optional user source to restrict the search to.", "required": false, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "type": "array", "items": { "$ref": "#/definitions/ApiUser" } } }, "400": { "description": "Password was not supplied in the body of the request" }, "403": { "description": "The user does not have permission to perform the operation." } } }, "post": { "tags": [ "Security Management: Users" ], "summary": "Create a new user in the default source.", "description": "", "operationId": "createUser", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "body", "name": "body", "description": "A representation of the user to create.", "required": false, "schema": { "$ref": "#/definitions/ApiCreateUser" } } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/ApiUser" } }, "400": { "description": "Password was not supplied in the body of the request" }, "403": { "description": "The user does not have permission to perform the operation." } } } }, "/beta/security/users/{userId}/change-password": { "put": { "tags": [ "Security Management: Users" ], "summary": "Change a user's password.", "description": "", "operationId": "changePassword", "consumes": [ "text/plain" ], "produces": [ "application/json" ], "parameters": [ { "name": "userId", "in": "path", "description": "The userid the request should apply to.", "required": true, "type": "string" }, { "in": "body", "name": "body", "description": "The new password to use.", "required": false, "schema": { "type": "string" } } ], "responses": { "400": { "description": "Password was not supplied in the body of the request" }, "403": { "description": "The user does not have permission to perform the operation." }, "404": { "description": "User not found in the system." } } } }, "/beta/security/privileges": { "get": { "tags": [ "Security Management: Privileges" ], "summary": "Retrieve a list of privileges.", "description": "", "operationId": "getPrivileges", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [], "responses": { "200": { "description": "successful operation", "schema": { "type": "array", "items": { "$ref": "#/definitions/ApiPrivilege" } } }, "403": { "description": "The user does not have permission to perform the operation." } } } }, "/beta/security/privileges/{privilegeId}": { "get": { "tags": [ "Security Management: Privileges" ], "summary": "Retrieve a privilege by id.", "description": "", "operationId": "getPrivilege", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "privilegeId", "in": "path", "description": "The id of the privilege to retrieve.", "required": true, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/ApiPrivilege" } }, "403": { "description": "The user does not have permission to perform the operation." }, "404": { "description": "Privilege not found in the system." } } }, "delete": { "tags": [ "Security Management: Privileges" ], "summary": "Delete a privilege by id.", "description": "", "operationId": "deletePrivilege", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "privilegeId", "in": "path", "description": "The id of the privilege to delete.", "required": true, "type": "string" } ], "responses": { "400": { "description": "The privilege is internal and may not be altered." }, "403": { "description": "The user does not have permission to perform the operation." }, "404": { "description": "Privilege not found in the system." } } } }, "/beta/security/privileges/wildcard": { "post": { "tags": [ "Security Management: Privileges" ], "summary": "Create a wildcard type privilege.", "description": "", "operationId": "createPrivilege", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "body", "name": "body", "description": "The privilege to create.", "required": false, "schema": { "$ref": "#/definitions/ApiPrivilegeWildcardRequest" } } ], "responses": { "400": { "description": "Privilege object not configured properly." }, "403": { "description": "The user does not have permission to perform the operation." } } } }, "/beta/security/privileges/application": { "post": { "tags": [ "Security Management: Privileges" ], "summary": "Create an application type privilege.", "description": "", "operationId": "createPrivilege_1", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "body", "name": "body", "description": "The privilege to create.", "required": false, "schema": { "$ref": "#/definitions/ApiPrivilegeApplicationRequest" } } ], "responses": { "400": { "description": "Privilege object not configured properly." }, "403": { "description": "The user does not have permission to perform the operation." } } } }, "/beta/security/privileges/wildcard/{privilegeId}": { "put": { "tags": [ "Security Management: Privileges" ], "summary": "Update a wildcard type privilege.", "description": "", "operationId": "updatePrivilege", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "privilegeId", "in": "path", "description": "The id of the privilege to update.", "required": true, "type": "string" }, { "in": "body", "name": "body", "description": "The privilege to update.", "required": false, "schema": { "$ref": "#/definitions/ApiPrivilegeWildcardRequest" } } ], "responses": { "400": { "description": "Privilege object not configured properly." }, "403": { "description": "The user does not have permission to perform the operation." }, "404": { "description": "Privilege not found in the system." } } } }, "/beta/security/privileges/application/{privilegeId}": { "put": { "tags": [ "Security Management: Privileges" ], "summary": "Update an application type privilege.", "description": "", "operationId": "updatePrivilege_1", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "privilegeId", "in": "path", "description": "The id of the privilege to update.", "required": true, "type": "string" }, { "in": "body", "name": "body", "description": "The privilege to update.", "required": false, "schema": { "$ref": "#/definitions/ApiPrivilegeApplicationRequest" } } ], "responses": { "400": { "description": "Privilege object not configured properly." }, "403": { "description": "The user does not have permission to perform the operation." }, "404": { "description": "Privilege not found in the system." } } } }, "/beta/security/realms/available": { "get": { "tags": [ "Security Management: Realms" ], "summary": "List the available realms", "description": "", "operationId": "getRealms", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [], "responses": { "200": { "description": "successful operation", "schema": { "type": "array", "items": { "$ref": "#/definitions/RealmApiXO" } } } } } }, "/beta/security/realms/active": { "get": { "tags": [ "Security Management: Realms" ], "summary": "List the active realm IDs in order", "description": "", "operationId": "getActiveRealms", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [], "responses": { "200": { "description": "successful operation", "schema": { "type": "array", "items": { "type": "string" } } } } }, "put": { "tags": [ "Security Management: Realms" ], "summary": "Set the active security realms in the order they should be used", "description": "", "operationId": "setActiveRealms", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "body", "name": "body", "description": "The realm IDs", "required": false, "schema": { "type": "array", "items": { "type": "string" } } } ], "responses": { "default": { "description": "successful operation" } } } }, "/beta/security/roles": { "get": { "tags": [ "Security Management: Roles" ], "summary": "List roles", "description": "", "operationId": "getRoles", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "source", "in": "query", "description": "The id of the user source to filter the roles by, if supplied. Otherwise roles from all user sources will be returned.", "required": false, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "type": "array", "items": { "$ref": "#/definitions/RoleXOResponse" } } }, "400": { "description": "The specified source does not exist" }, "403": { "description": "Insufficient permissions to read roles" } } }, "post": { "tags": [ "Security Management: Roles" ], "summary": "Create role", "description": "", "operationId": "create", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "body", "name": "body", "description": "A role configuration", "required": true, "schema": { "$ref": "#/definitions/RoleXORequest" } } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/RoleXOResponse" } }, "403": { "description": "Insufficient permissions to create role" } } } }, "/beta/security/roles/{id}": { "get": { "tags": [ "Security Management: Roles" ], "summary": "Get role", "description": "", "operationId": "getRole", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "source", "in": "query", "description": "The id of the user source to filter the roles by. Available sources can be fetched using the 'User Sources' endpoint.", "required": false, "type": "string", "default": "default" }, { "name": "id", "in": "path", "description": "The id of the role to get", "required": true, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/RoleXOResponse" } }, "400": { "description": "The specified source does not exist" }, "403": { "description": "Insufficient permissions to read roles" }, "404": { "description": "Role not found" } } }, "put": { "tags": [ "Security Management: Roles" ], "summary": "Update role", "description": "", "operationId": "update", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "id", "in": "path", "description": "The id of the role to update", "required": true, "type": "string" }, { "in": "body", "name": "body", "description": "A role configuration", "required": true, "schema": { "$ref": "#/definitions/RoleXORequest" } } ], "responses": { "403": { "description": "Insufficient permissions to update role" }, "404": { "description": "Role not found" } } }, "delete": { "tags": [ "Security Management: Roles" ], "summary": "Delete role", "description": "", "operationId": "delete", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "id", "in": "path", "description": "The id of the role to delete", "required": true, "type": "string" } ], "responses": { "403": { "description": "Insufficient permissions to delete role" }, "404": { "description": "Role not found" } } } }, "/v1/tasks/{id}": { "get": { "tags": [ "tasks" ], "summary": "Get a single task by id", "description": "", "operationId": "getTaskById", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "id", "in": "path", "description": "Id of the task to get", "required": true, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/TaskXO" } }, "404": { "description": "Task not found" } } } }, "/v1/tasks": { "get": { "tags": [ "tasks" ], "summary": "List tasks", "description": "", "operationId": "getTasks", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "type", "in": "query", "description": "Type of the tasks to get", "required": false, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/PageTaskXO" } } } } }, "/v1/tasks/{id}/run": { "post": { "tags": [ "tasks" ], "summary": "Run task", "description": "", "operationId": "run", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "id", "in": "path", "description": "Id of the task to run", "required": true, "type": "string" } ], "responses": { "204": { "description": "Task was run" }, "404": { "description": "Task not found" }, "405": { "description": "Task is disabled" } } } }, "/v1/tasks/{id}/stop": { "post": { "tags": [ "tasks" ], "summary": "Stop task", "description": "", "operationId": "stop", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "id", "in": "path", "description": "Id of the task to stop", "required": true, "type": "string" } ], "responses": { "204": { "description": "Task was stopped" }, "404": { "description": "Task not found" }, "409": { "description": "Unable to stop task" } } } }, "/beta/blobstores/{name}": { "delete": { "tags": [ "Blob Store" ], "summary": "Delete a blob store by name", "description": "", "operationId": "deleteBlobStore", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "name", "in": "path", "description": "The name of the blob store to delete", "required": true, "type": "string" } ], "responses": { "default": { "description": "successful operation" } } } }, "/beta/blobstores": { "get": { "tags": [ "Blob Store" ], "summary": "List the blob stores", "description": "", "operationId": "listBlobStores", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [], "responses": { "200": { "description": "successful operation", "schema": { "type": "array", "items": { "$ref": "#/definitions/GenericBlobStoreApiResponse" } } } } } }, "/v1/blobstores/{id}/quota-status": { "get": { "tags": [ "Blob Store" ], "summary": "Get quota status for a given blob store", "description": "", "operationId": "quotaStatus", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "id", "in": "path", "required": true, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/BlobStoreQuotaResultXO" } } } } }, "/beta/blobstores/file": { "post": { "tags": [ "Blob Store" ], "summary": "Create a file blob store", "description": "", "operationId": "createFileBlobStore", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "in": "body", "name": "body", "required": false, "schema": { "$ref": "#/definitions/FileBlobStoreApiCreateRequest" } } ], "responses": { "default": { "description": "successful operation" } } } }, "/beta/blobstores/file/{name}": { "get": { "tags": [ "Blob Store" ], "summary": "Get a file blob store configuration by name", "description": "", "operationId": "getFileBlobStoreConfiguration", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "name", "in": "path", "description": "The name of the file blob store to read", "required": true, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/FileBlobStoreApiModel" } } } }, "put": { "tags": [ "Blob Store" ], "summary": "Update a file blob store configuration by name", "description": "", "operationId": "updateFileBlobStore", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "name", "in": "path", "description": "The name of the file blob store to update", "required": true, "type": "string" }, { "in": "body", "name": "body", "required": false, "schema": { "$ref": "#/definitions/FileBlobStoreApiUpdateRequest" } } ], "responses": { "default": { "description": "successful operation" } } } }, "/v1/lifecycle/phase": { "get": { "tags": [ "lifecycle" ], "summary": "Get current lifecycle phase", "description": "", "operationId": "getPhase", "produces": [ "text/plain" ], "parameters": [], "responses": { "200": { "description": "successful operation", "schema": { "type": "string" } } } }, "put": { "tags": [ "lifecycle" ], "summary": "Move to new lifecycle phase", "description": "", "operationId": "setPhase", "consumes": [ "text/plain" ], "parameters": [ { "in": "body", "name": "body", "description": "The phase to move to", "required": false, "schema": { "type": "string" } } ], "responses": { "default": { "description": "successful operation" } } } }, "/v1/lifecycle/bounce": { "put": { "tags": [ "lifecycle" ], "summary": "Bounce lifecycle phase", "description": "Re-runs all phases from the given phase to the current phase", "operationId": "bounce", "consumes": [ "text/plain" ], "parameters": [ { "in": "body", "name": "body", "description": "The phase to bounce", "required": false, "schema": { "type": "string" } } ], "responses": { "default": { "description": "successful operation" } } } }, "/v1/read-only/freeze": { "post": { "tags": [ "read-only" ], "summary": "Enable read-only", "description": "", "operationId": "freeze", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [], "responses": { "204": { "description": "System is now read-only" }, "403": { "description": "Authentication required" }, "404": { "description": "No change to read-only state" } } } }, "/v1/read-only/force-release": { "post": { "tags": [ "read-only" ], "summary": "Forcibly release read-only", "description": "Forcibly release read-only status, including System initiated tasks. Warning: may result in data loss.", "operationId": "forceRelease", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [], "responses": { "204": { "description": "System is no longer read-only" }, "403": { "description": "Authentication required" }, "404": { "description": "No change to read-only state" } } } }, "/v1/read-only/release": { "post": { "tags": [ "read-only" ], "summary": "Release read-only", "description": "Release administrator initiated read-only status. Will not release read-only caused by system tasks.", "operationId": "release", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [], "responses": { "204": { "description": "System is no longer read-only" }, "403": { "description": "Authentication required" }, "404": { "description": "No change to read-only state" } } } }, "/v1/read-only": { "get": { "tags": [ "read-only" ], "summary": "Get read-only state", "description": "", "operationId": "get", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/ReadOnlyState" } } } } }, "/beta/security/ssl/truststore/{id}": { "delete": { "tags": [ "Security: Certificates" ], "summary": "Remove a certificate in the trust store.", "description": "", "operationId": "removeCertificate", "produces": [ "application/json" ], "parameters": [ { "name": "id", "in": "path", "description": "The id of the certificate that should be removed.", "required": true, "type": "string" } ], "responses": { "403": { "description": "Insufficient permissions to remove certificate from the trust store" } } } }, "/beta/security/ssl/truststore": { "get": { "tags": [ "Security: Certificates" ], "summary": "Retrieve a list of certificates added to the trust store.", "description": "", "operationId": "getTrustStoreCertificates", "produces": [ "application/json" ], "parameters": [], "responses": { "200": { "description": "successful operation", "schema": { "type": "array", "items": { "$ref": "#/definitions/ApiCertificate" } } }, "403": { "description": "Insufficient permissions to list certificates in the trust store." } } }, "post": { "tags": [ "Security: Certificates" ], "summary": "Add a certificate to the trust store.", "description": "", "operationId": "addCertificate", "produces": [ "application/json" ], "parameters": [ { "in": "body", "name": "body", "description": "The certificate to add encoded in PEM format", "required": false, "schema": { "type": "string" } } ], "responses": { "201": { "description": "The certificate was successfully added.", "schema": { "type": "object" } }, "403": { "description": "Insufficient permissions to add certificate to the trust store." }, "409": { "description": "The certificate already exists in the system." } } } }, "/beta/security/ssl": { "get": { "tags": [ "Security: Certificates" ], "summary": "Helper method to retrieve certificate details from a remote system.", "description": "", "operationId": "retrieveCertificate", "produces": [ "application/json" ], "parameters": [ { "name": "host", "in": "query", "description": "The remote system's host name", "required": true, "type": "string" }, { "name": "port", "in": "query", "description": "The port on the remote system to connect to", "required": false, "type": "integer", "default": 443, "format": "int32" }, { "name": "protocolHint", "in": "query", "description": "An optional hint of the protocol to try for the connection", "required": false, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/ApiCertificate" } }, "400": { "description": "A certificate could not be retrieved, see the message for details." }, "403": { "description": "Insufficient permissions to retrieve remote certificate." } } } }, "/beta/repositories": { "get": { "tags": [ "Repository Management" ], "summary": "List repositories", "description": "", "operationId": "getRepositories", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [], "responses": { "200": { "description": "Repositories list returned" }, "401": { "description": "Authentication required" }, "403": { "description": "Insufficient permissions" } } } }, "/beta/repositories/{repositoryName}/invalidate-cache": { "post": { "tags": [ "Repository Management" ], "summary": "Invalidate repository cache. Proxy or group repositories only.", "description": "", "operationId": "invalidateCache", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "repositoryName", "in": "path", "description": "Name of the repository to invalidate cache", "required": true, "type": "string" } ], "responses": { "204": { "description": "Repository cache invalidated" }, "400": { "description": "Repository is not of proxy or group type" }, "401": { "description": "Authentication required" }, "403": { "description": "Insufficient permissions" }, "404": { "description": "Repository not found" } } } }, "/beta/repositories/{repositoryName}": { "delete": { "tags": [ "Repository Management" ], "summary": "Delete repository of any format", "description": "", "operationId": "deleteRepository", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "repositoryName", "in": "path", "description": "Name of the repository to delete", "required": true, "type": "string" } ], "responses": { "204": { "description": "Repository deleted" }, "401": { "description": "Authentication required" }, "403": { "description": "Insufficient permissions" }, "404": { "description": "Repository not found" } } } }, "/beta/repositories/{repositoryName}/rebuild-index": { "post": { "tags": [ "Repository Management" ], "summary": "Schedule a 'Repair - Rebuild repository search' Task. Hosted or proxy repositories only.", "description": "", "operationId": "rebuildIndex", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "repositoryName", "in": "path", "description": "Name of the repository to rebuild index", "required": true, "type": "string" } ], "responses": { "204": { "description": "Repository search index rebuild has been scheduled" }, "400": { "description": "Repository is not of hosted or proxy type" }, "401": { "description": "Authentication required" }, "403": { "description": "Insufficient permissions" }, "404": { "description": "Repository not found" } } } }, "/v1/assets": { "get": { "tags": [ "assets" ], "summary": "List assets", "description": "", "operationId": "getAssets", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "continuationToken", "in": "query", "description": "A token returned by a prior request. If present, the next page of results are returned", "required": false, "type": "string" }, { "name": "repository", "in": "query", "description": "Repository from which you would like to retrieve assets.", "required": true, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/PageAssetXO" } }, "403": { "description": "Insufficient permissions to list assets" }, "422": { "description": "Parameter 'repository' is required" } } } }, "/v1/assets/{id}": { "get": { "tags": [ "assets" ], "summary": "Get a single asset", "description": "", "operationId": "getAssetById", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "id", "in": "path", "description": "Id of the asset to get", "required": true, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/AssetXO" } }, "403": { "description": "Insufficient permissions to get asset" }, "404": { "description": "Asset not found" }, "422": { "description": "Malformed ID" } } }, "delete": { "tags": [ "assets" ], "summary": "Delete a single asset", "description": "", "operationId": "deleteAsset", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "id", "in": "path", "description": "Id of the asset to delete", "required": true, "type": "string" } ], "responses": { "204": { "description": "Asset was successfully deleted" }, "403": { "description": "Insufficient permissions to delete asset" }, "404": { "description": "Asset not found" }, "422": { "description": "Malformed ID" } } } }, "/v1/components/{id}": { "get": { "tags": [ "components" ], "summary": "Get a single component", "description": "", "operationId": "getComponentById", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "id", "in": "path", "description": "ID of the component to retrieve", "required": true, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/ComponentXO" } }, "403": { "description": "Insufficient permissions to get component" }, "404": { "description": "Component not found" }, "422": { "description": "Malformed ID" } } }, "delete": { "tags": [ "components" ], "summary": "Delete a single component", "description": "", "operationId": "deleteComponent", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "id", "in": "path", "description": "ID of the component to delete", "required": true, "type": "string" } ], "responses": { "204": { "description": "Component was successfully deleted" }, "403": { "description": "Insufficient permissions to delete component" }, "404": { "description": "Component not found" }, "422": { "description": "Malformed ID" } } } }, "/v1/components": { "get": { "tags": [ "components" ], "summary": "List components", "description": "", "operationId": "getComponents", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "name": "continuationToken", "in": "query", "description": "A token returned by a prior request. If present, the next page of results are returned", "required": false, "type": "string" }, { "name": "repository", "in": "query", "description": "Repository from which you would like to retrieve components", "required": true, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/PageComponentXO" } }, "403": { "description": "Insufficient permissions to list components" }, "422": { "description": "Parameter 'repository' is required" } } }, "post": { "tags": [ "components" ], "summary": "Upload a single component", "description": "", "operationId": "uploadComponent", "consumes": [ "multipart/form-data" ], "produces": [ "application/json" ], "parameters": [ { "name": "repository", "in": "query", "description": "Na