Create an extension

edit

Creates the extension. The extensions API supports two types of usage patterns. A). Specify a download_url, http or https URL, where the extension is currently hosted. This will result in extension being copied to elastic repository. B). Create only the extension metadata using the POST endpoint and then use PUT to upload the extension file. Leave the download_url unspecified in this case.

Request

edit

POST /api/v1/deployments/extensions

Request body

edit

(CreateExtensionRequest) (required) the data that creates the extension

Responses

edit
201

(Extension) The extension that was just created.

Headers

x-cloud-resource-created (string)
The date-time when the resource was created (ISO format relative to UTC)
x-cloud-resource-last-modified (string)
The date-time when the resource was last modified (ISO format relative to UTC)
x-cloud-resource-version (string)
The resource version, which is used to avoid update conflicts with concurrent operations
400

(BasicFailedReply) Could not download the extension from the specified URL. (code: extensions.request_execution_failed)

Headers

x-cloud-error-codes (string; allowed values: [extensions.request_execution_failed])
The error codes associated with the response
404

(BasicFailedReply) Your current session does not have a user id associated with it. (code: extensions.no_user_id)

Headers

x-cloud-error-codes (string; allowed values: [extensions.no_user_id])
The error codes associated with the response
409

(BasicFailedReply) An extension already exists with the generated id. Please try again. (code: extensions.id_already_exists)

Headers

x-cloud-error-codes (string; allowed values: [extensions.id_already_exists])
The error codes associated with the response

Request example

edit
curl -XPOST https://{{hostname}}/api/v1/deployments/extensions \
-H "Authorization: ApiKey $ECE_API_KEY" \
-d '
{
   "description" : "string",
   "download_url" : "string",
   "extension_type" : "string",
   "name" : "string",
   "version" : "string"
}
'