# ParcelResource Resource

This interface describes a parcel resource and all the operations that can be performed on it. All the commands in this resource are modeled as follows: When you execute a command, for example startDownload, that command simply starts the download and returns right away. This is why they are labeled as a synchronous commands. In order to see the progress of the command a call to readParcel() needs to be made. This will show the current stage and any progress information if the parcel is in a transition stage. Eg. DOWNLOADING, DISTRIBUTING etc. If the command for some reason could not execute properly, an error is returned to the user as part of the synchronous command. A Parcel goes through many stages during its lifecycle. The various stages and their order is described on in ApiParcel

### GET /clusters/{clusterName}/parcels/products/{product}/versions/{version}

Retrieves detailed information about a parcel.

Request Parameters
name | type | description | default
--- | --- | --- | ---
clusterName | path |  | n/a
product | path | the product | n/a
version | path | the version | n/a

Response Body
media type | data type | description
--- | --- | ---
application/json | ApiParcel (JSON) | the parcel

### POST /clusters/{clusterName}/parcels/products/{product}/versions/{version}/commands/activate

A synchronous command that activates the parcel on the cluster.

Since it is synchronous, the result is known immediately upon return.

Request Parameters
name | type | description | default
--- | --- | --- | ---
clusterName | path |  | n/a
product | path | the product | n/a
version | path | the version | n/a

Response Body
media type | data type | description
--- | --- | ---
application/json | ApiCommand (JSON) | synchronous command result

### POST /clusters/{clusterName}/parcels/products/{product}/versions/{version}/commands/cancelDistribution

A synchronous command that cancels the parcel distribution.

Since it is synchronous, the result is known immediately upon return.

Request Parameters
name | type | description | default
--- | --- | --- | ---
clusterName | path |  | n/a
product | path | the product | n/a
version | path | the version | n/a

Response Body
media type | data type | description
--- | --- | ---
application/json | ApiCommand (JSON) | synchronous command result

### POST /clusters/{clusterName}/parcels/products/{product}/versions/{version}/commands/cancelDownload

A synchronous command that cancels the parcel download.

Since it is synchronous, the result is known immediately upon return.

Request Parameters
name | type | description | default
--- | --- | --- | ---
clusterName | path |  | n/a
product | path | the product | n/a
version | path | the version | n/a

Response Body
media type | data type | description
--- | --- | ---
application/json | ApiCommand (JSON) | synchronous command result

### POST /clusters/{clusterName}/parcels/products/{product}/versions/{version}/commands/deactivate

A synchronous command that deactivates the parcel on the cluster.

Since it is synchronous, the result is known immediately upon return.

Request Parameters
name | type | description | default
--- | --- | --- | ---
clusterName | path |  | n/a
product | path | the product | n/a
version | path | the version | n/a

Response Body
media type | data type | description
--- | --- | ---
application/json | ApiCommand (JSON) | synchronous command result

### POST /clusters/{clusterName}/parcels/products/{product}/versions/{version}/commands/removeDownload

A synchronous command that removes the downloaded parcel.

Since it is synchronous, the result is known immediately upon return.

Request Parameters
name | type | description | default
--- | --- | --- | ---
clusterName | path |  | n/a
product | path | the product | n/a
version | path | the version | n/a

Response Body
media type | data type | description
--- | --- | ---
application/json | ApiCommand (JSON) | synchronous command result

### POST /clusters/{clusterName}/parcels/products/{product}/versions/{version}/commands/startDistribution

A synchronous command that starts the distribution of the parcel to the cluster.

Since it is synchronous, the result is known immediately upon return. In order to see the progress of the distribution, a call to readParcel() needs to be made.

Request Parameters
name | type | description | default
--- | --- | --- | ---
clusterName | path |  | n/a
product | path | the product | n/a
version | path | the version | n/a

Response Body
media type | data type | description
--- | --- | ---
application/json | ApiCommand (JSON) | synchronous command result

### POST /clusters/{clusterName}/parcels/products/{product}/versions/{version}/commands/startDownload

A synchronous command that starts the parcel download.

Since it is synchronous, the result is known immediately upon return. In order to see the progress of the download, a call to readParcel() needs to be made.

Request Parameters
name | type | description | default
--- | --- | --- | ---
clusterName | path |  | n/a
product | path | the product | n/a
version | path | the version | n/a

Response Body
media type | data type | description
--- | --- | ---
application/json | ApiCommand (JSON) | synchronous command result

### POST /clusters/{clusterName}/parcels/products/{product}/versions/{version}/commands/startRemovalOfDistribution

A synchronous command that removes the distribution from the hosts in the cluster.

Since it is synchronous, the result is known immediately upon return. In order to see the progress of the removal, a call to readParcel() needs to be made.

Request Parameters
name | type | description | default
--- | --- | --- | ---
clusterName | path |  | n/a
product | path | the product | n/a
version | path | the version | n/a

Response Body
media type | data type | description
--- | --- | ---
application/json | ApiCommand (JSON) | synchronous command result