Create a new package
POST /accounts/{account_id}/core/v1/packages
Indicates desired values for the Package API resource to be created.
Parameters
| Name | Type | In | Required | Description | 
|---|---|---|---|---|
account_id  | 
string  | 
path  | 
True  | 
ID of the containing account resource 
  | 
Request Body
Indicates desired values for the Package API resource to be created.
| Name | Type | Required | Description | 
|---|---|---|---|
type  | 
string  | 
True  | 
Media type of the resource. Defined values are: 
  | 
version  | 
string  | 
True  | 
Version of the resource. Defined values are: 
  | 
packageName  | 
string  | 
True  | 
JSON string containing the package name. Defined values are: 
  | 
packageVersion  | 
string  | 
True  | 
JSON string containing the SemVer of the package. Defined values are: 
  | 
packageType  | 
string  | 
True  | 
JSON string containing the package type, indicating whether this is a full installation package or a patch. Defined values are: 
  | 
bundleName  | 
array[string]  | 
False  | 
JSON array of JSON strings containing the name of the bundle that the package is contained in.  | 
severityLevel  | 
string  | 
True  | 
JSON string describing the severity level of this patch or installation. Defined values are: 
  | 
images  | 
array[images]  | 
False  | 
JSON array of JSON objects, each containing a Docker image that is part of the package.  | 
artifacts  | 
array[artifacts]  | 
False  | 
JSON array of JSON objects describing the additional artifacts (binaries and others) associated with this package.  | 
files  | 
array[files]  | 
False  | 
JSON array of JSON objects, each representing a non-image artifact associated with this package.  | 
upgradableVersions  | 
False  | 
JSON object containing the minimum and maximum versions that can be upgraded to the package version.  | 
|
dependencies  | 
array[dependencies]  | 
False  | 
JSON array of JSON objects describing what minimum version of a given dependency is required for this package to be installed  | 
metadata  | 
False  | 
Client and service-specified metadata associated with the resource. Defined values are: 
  | 
Example request
{
  "type": "application/astra-package",
  "version": "1.0",
  "packageName": "acc",
  "packageVersion": "22.09.1",
  "packageType": "patch",
  "severityLevel": "recommended",
  "images": [
    {
      "imagePath": "/globalcicd/acc",
      "imageName": "storage-provider",
      "imageTag": "1.3.116",
      "imageDigest": "sha256:2e04d178815537b0ad8c3224e8754e3364456781a161f1be239853dae33deafc"
    },
    {
      "imagePath": "/globalcicd/acc",
      "imageName": "storage-backend-metrics",
      "imageTag": "1.3.45",
      "imageDigest": "sha256:2e04d178815537b0ad8c3224e8754e3364456781a161f1be239853dae33deafc"
    },
    {
      "imagePath": "/globalcicd/acc",
      "imageName": "credentials",
      "imageTag": "1.3.45",
      "imageDigest": "sha256:2e04d178815537b0ad8c322445654e33642da781a161f1be239853dae33deafc"
    }
  ],
  "files": [
    {
      "fileName": "astra_control_center_min.yaml",
      "fileIdentifier": "astra_min",
      "fileMediaType": "application/x-yaml",
      "fileContents": "VGhpcyBpcyBzdXBwb3NlZCB0byBiZSBhIGNvbXByZXNzZWQgZmlsZSBjb250ZW50"
    }
  ],
  "dependencies": [
    {
      "componentName": "acc",
      "componentMinVersion": "22.04.29"
    },
    {
      "componentName": "kubernetes",
      "componentMinVersion": "v1.19.7",
      "componentMaxVersion": "v1.22"
    },
    {
      "componentName": "trident",
      "componentMinVersion": "v21.01.1"
    }
  ]
}
Response
Status: 201, Returns the newly created package resource in the JSON response body.
| Name | Type | Required | Description | 
|---|---|---|---|
type  | 
string  | 
True  | 
Media type of the resource. Defined values are: 
  | 
version  | 
string  | 
True  | 
Version of the resource. Defined values are: 
  | 
id  | 
string  | 
True  | 
Globally unique identifier of the resource. Defined values are: 
  | 
packageName  | 
string  | 
True  | 
JSON string containing the package name. Defined values are: 
  | 
packageVersion  | 
string  | 
True  | 
JSON string containing the SemVer of the package. Defined values are: 
  | 
packageType  | 
string  | 
True  | 
JSON string containing the package type, indicating whether this is a full installation package or a patch. Defined values are: 
  | 
bundleName  | 
array[string]  | 
False  | 
JSON array of JSON strings containing the name of the bundle that the package is contained in.  | 
severityLevel  | 
string  | 
True  | 
JSON string describing the severity level of this patch or installation. Defined values are: 
  | 
packageState  | 
string  | 
True  | 
JSON string containing a value indicating the operational state of the package. After verification of the package and after import, the state will indicate "complete". Otherwise, the state will indicate "incomplete". Defined values are: 
  | 
packageStateTransitions  | 
array[type_astra_stateTransition]  | 
True  | 
JSON array of JSON objects, each representing the set of permitted state transitions from a given defined state. Each JSON object contains the fields "from" and "to", where the "from" value is the name of a state and the "to" value is an array of permitted destination states. Defined values are: 
  | 
packageStateDetails  | 
array[type_astra_stateDetail]  | 
True  | 
JSON array of JSON objects that lists additional details about the current "state". If no details are available, this array will be empty. 
  | 
images  | 
array[images]  | 
False  | 
JSON array of JSON objects, each containing a Docker image that is part of the package.  | 
artifacts  | 
array[artifacts]  | 
False  | 
JSON array of JSON objects describing the additional artifacts (binaries and others) associated with this package.  | 
files  | 
array[files]  | 
False  | 
JSON array of JSON objects, each representing a non-image artifact associated with this package.  | 
upgradableVersions  | 
False  | 
JSON object containing the minimum and maximum versions that can be upgraded to the package version.  | 
|
dependencies  | 
array[dependencies]  | 
False  | 
JSON array of JSON objects describing what minimum version of a given dependency is required for this package to be installed  | 
metadata  | 
True  | 
Client and service-specified metadata associated with the resource. Defined values are: 
  | 
Example response
{
  "type": "application/astra-package",
  "version": "1.0",
  "id": "54edc2b3-18c5-5371-904b-ebcd04d88bdc",
  "packageName": "acc",
  "packageVersion": "22.09.1",
  "packageType": "patch",
  "packageState": "available",
  "packageStateTransitions": [
    {
      "from": "verifying",
      "to": [
        "corrupt",
        "incomplete",
        "available"
      ]
    },
    {
      "from": "corrupt",
      "to": [
        "incomplete",
        "available"
      ]
    },
    {
      "from": "incomplete",
      "to": [
        "corrupt",
        "available"
      ]
    },
    {
      "from": "available",
      "to": [
        "corrupt",
        "available"
      ]
    }
  ],
  "packageStateDetails": [],
  "severityLevel": "recommended",
  "images": [
    {
      "imagePath": "/globalcicd/acc",
      "imageName": "storage-provider",
      "imageTag": "1.3.116",
      "imageDigest": "sha256:2e04d178815537b0ad8c3224e8754e33642da781a161f1be239853dae33deafc"
    },
    {
      "imagePath": "/globalcicd/acc",
      "imageName": "storage-backend-metrics",
      "imageTag": "1.3.45",
      "imageDigest": "sha256:2e04d178815537b0ad8c3224e8754e33642da781a161f1be239853dae33deafc"
    },
    {
      "imagePath": "/globalcicd/acc",
      "imageName": "credentials",
      "imageTag": "1.3.45",
      "imageDigest": "sha256:2e04d178815537b0ad8c3224e8754e33642da781a161f1be239853dae33deafc"
    }
  ],
  "files": [
    {
      "fileName": "astra_control_center_min.yaml",
      "fileIdentifier": "astra_min",
      "fileMediaType": "application/x-yaml",
      "fileContents": "VGhpcyBpcyBzdXBwb3NlZCB0byBiZSBhIGNvbXByZXNzZWQgZmlsZSBjb250ZW50"
    }
  ],
  "dependencies": [
    {
      "componentName": "acc",
      "componentMinVersion": "22.04.29"
    },
    {
      "componentName": "kubernetes",
      "componentMinVersion": "v1.19.7",
      "componentMaxVersion": "v1.20"
    },
    {
      "componentName": "trident",
      "componentMinVersion": "v21.01.1"
    }
  ],
  "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  | 
|
invalidFields  | 
array[invalidFields]  | 
False  | 
List of invalid request body fields  | 
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
dependsOnImages
| Name | Type | Required | Description | 
|---|---|---|---|
imagePath  | 
string  | 
True  | 
JSON string containing the path to this Docker image. It must not contain the name of the registry, only the absolute path from root to image. Example: /globalcicd/acc Defined values are: 
  | 
imageName  | 
string  | 
True  | 
JSON string containing the Docker image name. Defined values are: 
  | 
imageTag  | 
string  | 
True  | 
JSON string representing the tag/version of this image. Defined values are: 
  | 
images
| Name | Type | Required | Description | 
|---|---|---|---|
imageName  | 
string  | 
True  | 
JSON string containing the Docker image name. Defined values are: 
  | 
imagePath  | 
string  | 
True  | 
JSON string containing the path to this Docker image. It must not contain the name of the registry, only the absolute path from root to image. Example: /globalcicd/acc Defined values are: 
  | 
imageTag  | 
string  | 
True  | 
JSON string representing the tag/version of this image. Defined values are: 
  | 
imageDigest  | 
string  | 
True  | 
JSON string representing the digest of this image. Defined values are: 
  | 
dependsOnImages  | 
array[dependsOnImages]  | 
False  | 
JSON array of JSON objects describing the images required to install or upgrade the current image.  | 
dependsOnComponents
| Name | Type | Required | Description | 
|---|---|---|---|
componentName  | 
string  | 
True  | 
JSON string describing the name of the component. Defined values are: 
  | 
versions  | 
array[string]  | 
True  | 
JSON array of JSON strings defining the component version required to install the current image.  | 
artifacts
| Name | Type | Required | Description | 
|---|---|---|---|
artifactName  | 
string  | 
True  | 
JSON string containing the file name. Defined values are: 
  | 
artifactIdentifier  | 
string  | 
True  | 
JSON string containing an identifier for this file. Between versions of the same package type, the file name might change but the identifier usually stays the same. Defined values are: 
  | 
artifactPath  | 
string  | 
True  | 
JSON string containing the path to this artifact from the root of a known Astra Control Center Data Store/location. Example: /vmware/1.0/ Defined values are: 
  | 
artifactVersion  | 
string  | 
False  | 
JSON string containing the version of that artifact, if provided. Defined values are: 
  | 
dependsOnComponents  | 
array[dependsOnComponents]  | 
False  | 
JSON array of JSON objects describing the installed components required to install/upgrade the current image.  | 
files
| Name | Type | Required | Description | 
|---|---|---|---|
fileName  | 
string  | 
True  | 
JSON string containing the file name. Defined values are: 
  | 
fileIdentifier  | 
string  | 
True  | 
JSON string containing an identifier of this file. Between versions of the same package type, the file name might change but the identifier usually stays the same. Defined values are: 
  | 
fileMediaType  | 
string  | 
True  | 
JSON string containing the file media-type. Defined values are any media type defined by IANA. In addition, application/x-yaml or application/x-yaml for yaml files is supported. 
  | 
fileContents  | 
string  | 
True  | 
JSON string containing the file content. Defined values are: 
  | 
upgradableVersions
JSON object containing the minimum and maximum versions that can be upgraded to the package version.
| Name | Type | Required | Description | 
|---|---|---|---|
minVersion  | 
string  | 
False  | 
JSON string describing the minimum version that can be upgraded to the package version. Defined values are: 
  | 
maxVersion  | 
string  | 
False  | 
JSON string describing the maximum version that can be upgraded to the package version. Defined values are: 
  | 
dependencies
| Name | Type | Required | Description | 
|---|---|---|---|
componentName  | 
string  | 
True  | 
JSON string describing the name of the component. Defined values are: 
  | 
componentMinVersion  | 
string  | 
False  | 
JSON string describing the minimum version required of that component. Defined values are: 
  | 
componentMaxVersion  | 
string  | 
False  | 
JSON string describing the maximum version required of that component. Defined values are: 
  | 
type_astra_label
| Name | Type | Required | Description | 
|---|---|---|---|
name  | 
string  | 
True  | 
|
value  | 
string  | 
True  | 
type_astra_metadata
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.
 
| Name | Type | Required | Description | 
|---|---|---|---|
labels  | 
array[type_astra_label]  | 
True  | 
|
creationTimestamp  | 
string  | 
True  | 
|
modificationTimestamp  | 
string  | 
True  | 
|
createdBy  | 
string  | 
True  | 
|
modifiedBy  | 
string  | 
False  | 
type_astra_stateTransition
| Name | Type | Required | Description | 
|---|---|---|---|
from  | 
string  | 
True  | 
|
to  | 
array[string]  | 
True  | 
type_astra_stateDetail
| Name | Type | Required | Description | 
|---|---|---|---|
type  | 
string  | 
True  | 
|
title  | 
string  | 
True  | 
|
detail  | 
string  | 
True  | 
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  |