Device Image Management API

/api/space/software-management/packages/{id}/exec-deploy

The following operations are supported on this resource:

POST /api/space/software-management/packages/{id}/exec-deploy (v1)


This API deploys the software package on the real device (that is, on the physical device).

Access Control

The following capabilities are required to access this API:
"DeployImageCap"


Example Usage

Since this API makes an asynchronous method call, the user must specify a queue parameter with this API.

POST /api/space/software-management/packages/{id}/exec-deploy?queue-url=<queue-url>&schedule-time=<schedule-time>

Note: It is assumed that the queue denoted by <queue-url> has, already, been created.



Parameters

NameTypeURI TypeDescriptionRequired
software-package-idintPathThe ID for the software package under operation. Y
queue-urlURLQueryA fully qualified queue URL, where job progress notifications will be sent (See Asynchronous API Usage)Y
schedule-timecron-like-expressionQuerySchedule this API in the future, by specifying a cron-like-expression (See Job Scheduling)N

Content Types

  • Consumes content types:
    application/vnd.net.juniper.space.software-management.exec-deploy+xml;version=1;charset=UTF-8
    application/vnd.net.juniper.space.software-management.exec-deploy+json;version=1;charset=UTF-8


  • Produces content types:
    application/vnd.net.juniper.space.software-management.exec-deploy+xml;version=1
    application/vnd.net.juniper.space.software-management.exec-deploy+json;version=1


  • Sample Input XML:
    <exec-deploy>
      <devices>
        <device href= "/api/space/device-management/devices/458753" />
      </devices>
      <deployOptions>
        <useAlreadyDownloaded>true</useAlreadyDownloaded>
        <validate>false</validate>
        <bestEffortLoad>false</bestEffortLoad>
        <snapShotRequired>false</snapShotRequired>
        <rebootDevice>false</rebootDevice>
        <rebootAfterXMinutes>0</rebootAfterXMinutes>
        <cleanUpExistingOnDevice>false</cleanUpExistingOnDevice>
        <removePkgAfterInstallation>false</removePkgAfterInstallation>
      </deployOptions>
    </exec-deploy>


  • Sample Output XML:
    <task href="/api/space/job-management/jobs/3997704">
      <id>3997704</id>
    </task>


  • Sample Input JSON:
    {
      "exec-deploy":
       {
        "devices":
        {
         "device":
         {"@href":"/api/space/device-management/devices/458753"}
        },
        "deployOptions":
         {
         "useAlreadyDownloaded":"true",
         "snapShotRequired":"false",
         "validate":"false",
         "bestEffortLoad":"false",
         "removePkgAfterInstallation":"false",
         "rebootDevice":"false",
         "rebootAfterXMinutes":"0",
         "cleanUpExistingOnDevice":"false"
         }
       }
    }


  • Sample Output JSON:
    {"task":
      {
      "@href":"/api/space/job-management/jobs/3997704",
      "id":3997704
      }
    }