Build virtual machine (from spec)
POSThttps://api.katapult.io/core/v1/organizations/organization/virtual_machines/build_from_spec
Builds a new virtual machine by receiving a virtual machine spec document
Scopes
virtual_machines
OAuth2 Scopes
When using OAuth2 authentication, scopes are prefixed with api.katapult.io/core/v1/
.
Request
- application/json
Body
organization
object
required
annotations
object[]
Responses
- 201
- 400
- 403
- 404
- 422
- 429
- 503
Builds a new virtual machine by receiving a virtual machine spec document
- application/json
- Schema
- Example (from schema)
Schema
task
object
required
build
object
required
virtual_machine_build
object
required
annotations
object[]
required
{
"task": {
"id": "string",
"name": "string",
"status": "pending"
},
"build": {
"id": "string",
"state": "draft"
},
"virtual_machine_build": {
"id": "string",
"state": "draft"
},
"hostname": "string",
"annotations": [
{
"key": "string",
"value": "string"
}
]
}
400 error response
- application/json
- Schema
- Example (from schema)
Schema
- APIAuthenticator400Schema
- InvalidSpecXMLSchema
oneOf
No API token was provided in the Authorization header. Ensure a token is provided prefixed with Bearer
Possible values: [missing_api_token
]
The spec XML provided is invalid
Possible values: [invalid_spec_xml
]
detail
object
{}
403 error response
- application/json
- Schema
- Example (from schema)
Schema
- UnauthorizedNetworkForAPITokenSchema
- InvalidAPITokenSchema
- InvalidCapabilitiesTokenSchema
- ScopeNotGrantedErrorSchema
- OrganizationSuspendedSchema
- OrganizationNotActivatedSchema
- PermissionDeniedSchema
oneOf
Network is not allowed to access the API with this API token
Possible values: [unauthorized_network_for_api_token
]
detail
object
The API token provided was not valid (it may not exist or have expired)
Possible values: [invalid_api_token
]
detail
object
The capabilities token provided was not valid (either not valid, expired or not signed by the correct key)
Possible values: [invalid_capabilities_token
]
The scope required for this endpoint has not been granted to the authenticating identity
Possible values: [scope_not_granted
]
detail
ScopeNotGrantedError
An organization was found from the arguments provided but it was suspended
Possible values: [organization_suspended
]
An organization was found from the arguments provided but it wasn't activated yet
Possible values: [organization_not_activated
]
The authenticated identity is not permitted to perform this action
Possible values: [permission_denied
]
detail
object
{}
No organization was found matching any of the criteria provided in the arguments
- application/json
- Schema
- Example (from schema)
Schema
Possible values: [organization_not_found
]
{
"code": "organization_not_found",
"description": "string",
"detail": {}
}
A validation error occurred with the object that was being created/updated/deleted
- application/json
- Schema
- Example (from schema)
Schema
Possible values: [validation_error
]
detail
ValidationError
{
"code": "validation_error",
"description": "string",
"detail": {
"errors": [
"string"
]
}
}
You have reached the rate limit for this type of request
- application/json
- Schema
- Example (from schema)
Schema
Possible values: [rate_limit_reached
]
detail
object
{
"code": "rate_limit_reached",
"description": "string",
"detail": {
"total_permitted": 0
}
}
The service is currently unavailable, please try again later
- application/json
- Schema
- Example (from schema)
Schema
Possible values: [service_unavailable
]
{
"code": "service_unavailable",
"description": "string",
"detail": {}
}
- curl
- python
- go
- nodejs
- ruby
- csharp
- php
- java
- powershell
- CURL
curl -L 'https://api.katapult.io/core/v1/organizations/organization/virtual_machines/build_from_spec' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <TOKEN>' \
-d '{
"organization": {
"id": "string",
"sub_domain": "string"
},
"xml": "string",
"annotations": [
{
"key": "string",
"value": "string"
}
]
}'