Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Request
    • type: type of upload request. Possible values are volume or template : required
    • type = volume
    • format: the format of the volume to be uploaded. Possible values include QCOW2, OVA and VHD : required
    • name: the name of the volume : required
    • zoneid: the UUID of the zone the volume/template is associated to : required
    • account: an optional account name. Must be used with 'domainid' parameter below.
    • checksum: the MD5 checksum of volume/template to be uploaded. If  If specified this is used to validate the content of the uploaded volume/template for integrity.
    • domainidaccount: an optional account name. Must be used with 'domainid' parameter below.
    • domainid: an optional domain to which the account domain to which the account belongs. If the account parameter is used, 'domainid' must also be used.
    • imagestoreuuidprojectid: the UUID of the storage pool where project if the uploaded volume gets stored. This can be obtained using listImageStores API call (https://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listImageStores.html
    • projectid: the UUID of the project the volume needs to be associated with
    • volume/template needs to be associated with one
    • 'type' specified as volume
      • format: the format of the volume to be uploaded. Possible values include QCOW2, OVA and VHD : required
      • name: the name of the volume : required
      • checksum: the MD5 checksum of volume to be uploaded. If specified this is used to validate the content of the uploaded volume for integrity.
      • imagestoreuuid: the UUID of the storage pool where the uploaded volume gets stored. This can be obtained using listImageStores API call (https://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listImageStores.html)
    • 'type' specified as template
      • displaytext: the display text of the template. This is used for display purposes. : required
      • format: the format of the template to be uploaded. Possible values include QCOW2, RAW and VHD : required
      • hypervisor: the target hypervisor for the template : required
      • name: the name of the template. Mostly set based on some internal naming convention : required
      • ostypeid: the UUID of the OS type that best represents the OS of this template : required
      • bits: specifies if template supports 32 or 64 bit. Default is 64 bit.
      • details: template details in key/value pairs
      type = template
      • displaytext: the display text of the template. This is used for display purposes. : required
      • format: the format of the template to be uploaded. Possible values include QCOW2, RAW and VHD : required
      • hypervisor: the target hypervisor for the template : required
      • name: the name of the template : required
      • ostypeid: the UUID of the OS type that best represents the OS of this template : required
      • zoneid: the UUID of the zone the template is associated to : required
      • account: an optional account name. Must be used with 'domainid' parameter.
      • bits: 32 or 64 bits support. Default is 64 bit.
      • checksum: the MD5 checksum of template to be uploaded. If specified this is used to validate the content of the uploaded template for integrity.
      • details: Template details in key/value pairs.
      • domainid: an optional domainId. If the account parameter is used, domainId must also be used.
      • isdynamicallyscalable: true if template contains XS/VMWare tools inorder in order to support dynamic scaling of VM cpu/memory
      • isextractable: true if the template or its derivatives are extractable; default . Default is false
      • isfeatured: true if this the template is a featured template, false otherwise
      • ispublic: true if the template is available to all accounts; default users. Default is true.
      • isrouting: true if the template type is routing i.e., if template is used to deploy router
      • passwordenabled: true if the template supports the password reset feature; default . Default is falseprojectid: Register template for the project.
      • requireshvm: true if this template requires HVM support
      • sshkeyenabled: true if the template supports the sshkey upload feature; default . Default is false.
      • templatetag: the tag for this template.
  • Response
    • uuid: Unique UUID to identify the template/volume. This is used to query the status of after successful completion of upload
    • postURL: POST url to upload the file to. ; for e.g. "https://ssvmpublicip/upload/uuid". The URL has the uuid to query the status using listtemplate/volumes API subsequently
    • payload: payload to be sent in the POST request
    • expires: the timestamp after which the signature expires
    • signature: signature is SHA1 key generated using PSK based on payload, expires and postURL 'postURL', 'payload' and 'expires' in the response.uuid: uuid of the template/volume. This can be used to query the status of itexpires: the time at which the signature expires

POST URL to post the data on to SSVM. This post url is returned from the getUploadParams api call Ex: https://ssvmpublicip/upload/uuid 

...