Skip to main content
La versione in lingua italiana fornita proviene da una traduzione automatica. Per eventuali incoerenze, fare riferimento alla versione in lingua inglese.

Create a new license

Collaboratori

POST /accounts/{account_id}/core/v1/licenses

Indicates the desired values for the License API resource to be created.

Parameters

Name Type In Required Description

account_id

string

path

True

ID of the containing account resource

  • example: {{.Account}}

Request Body

Indicates the desired values for the License API resource to be created.

Name Type Required Description

type

string

True

Media type of the resource. Defined values are:

  • "application/astra-license"

version

string

True

Version of the resource. Defined values are:

  • "1.0"

allocation

string

False

JSON string containing an ID indicating what the license is allocated to. Only present when the license is allocated. For Astra Control Center licenses, this field must be populated with the account ID and must match the account ID specified in the POST URI. Defined values are:

  • Conforms to the Astra Identifier Schema

deviceCredentialID

string

False

JSON string containing the identifier of the deviceCredential associated with the Credential API. Only present for Astra Data Store licenses. Defined value are:

  • Conforms to the Astra Identifier Schema

licenseText

string

True

JSON string containing a base64 encoded representation of the license JSON as obtained from the NetApp license system. This must be provided in the original byte-level order to allow signature verification. Defined values are:

  • Conforms to the base64 Encoded Data Schema

metadata

type_astra_metadata_update

False

Client and service-specified metadata associated with the resource. Defined values are:

  • Conforms to the Astra Metadata Schema If not specified on create, a metadata object will be created with no labels. If not specified on update, the metadata object's labels, creationTimestamp and createdBy, will be preserved without modification.

Example request
{
  "type": "application/astra-license",
  "version": "1.0",
  "allocation": "4185d09b-6687-4801-a832-c005a9d94f41",
  "licenseText": "ewogICAic3RhdHVzUmVzcCI6ewogMTYwNzAwIgp9"
}

Response

Status: 201, Returns the newly created license resource in the JSON response body.
Name Type Required Description

type

string

True

Media type of the resource. Defined values are:

  • "application/astra-license"

version

string

True

Version of the resource. Defined values are:

  • "1.0"

id

string

True

Globally unique identifier of the resource. Defined values are:

  • Conforms to the UUIDv4 Schema

allocation

string

False

JSON string containing an ID indicating what the license is allocated to. Only present when the license is allocated. For Astra Control Center licenses, this field must be populated with the account ID and must match the account ID specified in the POST URI. Defined values are:

  • Conforms to the Astra Identifier Schema

hostID

string

False

JSON string containing a host identifier that a license is bound to. Only present if the license is host-locked. Defined values are:

  • Minimum length: 1

  • Maximum length: 63

deviceCredentialID

string

False

JSON string containing the identifier of the deviceCredential associated with the Credential API. Only present for Astra Data Store licenses. Defined value are:

  • Conforms to the Astra Identifier Schema

isEvaluation

string

True

JSON string indicating whether the license is an evaluation license. Defined values are:

  • "true"

  • "false"

licenseProtocol

string

True

JSON string containing the license protocol extracted from the license. Defined values are:

  • String contents not validated by the schema

licenseText

string

True

JSON string containing a base64 encoded representation of the license JSON as obtained from the NetApp license system. This must be provided in the original byte-level order to allow signature verification. Defined values are:

  • Conforms to the base64 Encoded Data Schema

validFromTimestamp

string

True

JSON string containing a timestamp indicating when the license becomes valid. Defined values are:

  • Conforms to the ISO-8601 Date Time Schema

validUntilTimestamp

string

True

JSON string containing a timestamp indicating when the license is no longer valid. Defined values are:

  • Conforms to the ISO-8601 Date Time Schema

product

string

True

JSON string containing the product string extracted from the license. Defined values are:

  • String contents not validated by the schema

productVersion

string

True

JSON string containing the version string extracted from the license. Defined values are:

  • String contents not validated by the schema

productSN

string

True

JSON string containing the serial number string extracted from the license. Defined values are:

  • String contents not validated by the schema

features

string

True

JSON string containing the package value extracted from the license. Defined values are:

  • String contents not validated by the schema

capacity

string

True

JSON string containing the capacity extracted from the license.

capacity2

string

True

JSON string containing the secondary capacity extracted from the license.

addons

array[addons]

False

JSON array of JSON objects containing the list of add-ons from the license. An add-on is a change in license occurring at a potential future date.

metadata

type_astra_metadata_update

True

Client and service-specified metadata associated with the resource. Defined values are:

  • Conforms to the Astra Metadata Schema If not specified on create, a metadata object will be created with no labels. If not specified on update, the metadata object's labels, creationTimestamp and createdBy, will be preserved without modification.

Example response
{
  "type": "application/astra-license",
  "version": "1.0",
  "id": "6db53b32-8417-5d3c-8ef0-552fc602c78f",
  "allocation": "4185d09b-6687-4801-a832-c005a9d94f41",
  "hostID": "99132549-e0c2-4203-9d1e-598628b4ff9b",
  "isEvaluation": "false",
  "licenseProtocol": "ASTRASDS-ENT-SUBS",
  "licenseText": "ewogICAic3RhdHVzUmVzcCI6ewogMTYwNzAwIgp9",
  "validFromTimestamp": "2020-08-06T00:00:00.000000Z",
  "validUntilTimestamp": "2021-08-06T00:00:00.000000Z",
  "product": "Astra Control Center",
  "productVersion": "1.0",
  "productSN": "320000046",
  "features": "ASTRA-ENT-STD",
  "capacity": "4000",
  "capacity2": "0",
  "addons": [
    {
      "startDate": "2020-08-06T00:00:00.000000Z",
      "endDate": "2021-08-06T00:00:00.000000Z",
      "capacity": "4000",
      "licenseProtocol": "ASTRA-ENT-STD",
      "features": "p-nfs,dm-storage-policy-based-pvs-for-k8s,dm-spbm-based-vvols-for-vms,dm-storage-efficiency,dm-data-at-rest-encryption"
    }
  ],
  "metadata": {
    "labels": [],
    "creationTimestamp": "2022-10-06T20:58:16.305662Z",
    "modificationTimestamp": "2022-10-06T20:58:16.305662Z",
    "createdBy": "8f84cf09-8036-51e4-b579-bd30cb07b269"
  }
}

Response

Status: 401, Unauthorized
Name Type Required Description

type

string

True

title

string

True

detail

string

True

status

string

True

correlationID

string

False

Example response
{
  "type": "https://astra.netapp.io/problems/3",
  "title": "Missing bearer token",
  "detail": "The request is missing the required bearer token.",
  "status": "401"
}

Response

Status: 400, Bad request
Name Type Required Description

type

string

True

title

string

True

detail

string

True

status

string

True

correlationID

string

False

Example response
{
  "type": "https://astra.netapp.io/problems/5",
  "title": "Invalid query parameters",
  "detail": "The supplied query parameters are invalid.",
  "status": "400"
}

Response

Status: 409, Conflict
Name Type Required Description

type

string

True

title

string

True

detail

string

True

status

string

True

correlationID

string

False

invalidFields

array[invalidFields]

False

List of invalid request body fields

Example response
{
  "type": "https://astra.netapp.io/problems/10",
  "title": "JSON resource conflict",
  "detail": "The request body JSON contains a field that conflicts with an idempotent value.",
  "status": "409"
}

Response

Status: 403, Forbidden
Name Type Required Description

type

string

True

title

string

True

detail

string

True

status

string

True

correlationID

string

False

Example response
{
  "type": "https://astra.netapp.io/problems/11",
  "title": "Operation not permitted",
  "detail": "The requested operation isn't permitted.",
  "status": "403"
}

Error

Status: 404, Not found
Name Type Required Description

type

string

True

title

string

True

detail

string

True

status

string

True

correlationID

string

False

Example error response
{
  "type": "https://astra.netapp.io/problems/2",
  "title": "Collection not found",
  "detail": "The collection specified in the request URI wasn't found.",
  "status": "404"
}

Definitions

See Definitions

type_astra_label

Name Type Required Description

name

string

True

value

string

True

type_astra_metadata_update

Client and service-specified metadata associated with the resource. Defined values are:

  • Conforms to the Astra Metadata Schema If not specified on create, a metadata object will be created with no labels. If not specified on update, the metadata object's labels, creationTimestamp and createdBy, will be preserved without modification.

Name Type Required Description

labels

array[type_astra_label]

False

creationTimestamp

string

False

modificationTimestamp

string

False

createdBy

string

False

modifiedBy

string

False

addons

Name Type Required Description

startDate

string

False

JSON string containing a timestamp indicating when this add-on becomes valid. Defined values are:

  • Conforms to the ISO-8601 Date Time Schema

endDate

string

False

JSON string containing a timestamp indicating when this add-on is no longer valid. Defined values are:

  • Conforms to the ISO-8601 Date Time Schema

features

string

False

JSON string containing the list of features associated with this add-on. Defined values are:

  • String contents not validated by the schema.

capacity

string

False

JSON string containing the capacity extracted from the add-on. Defined values are:

  • String contents not validated by the schema

licenseProtocol

string

False

JSON string containing the license protocol associated with this add-on. Defined values are:

  • String contents not validated by the schema

invalidParams

Name Type Required Description

name

string

True

Name of the invalid query parameter

reason

string

True

Reason why the query parameter is invalid

invalidFields

Name Type Required Description

name

string

True

Name of the invalid request body field

reason

string

True

Reason why the request body field is invalid