Get Job Details

Details

API Details
NameGet Job Details
DescriptionRetrieve Job details. The status of the submitted job as well as all other details of the job, including details of the VMs that are launched can be retrieved using the resource URL returned in the location header in response of the job submission AP.
MethodGET
URI/v1/jobs/jobId
CloudCenter Release
  • CloudCenter 3.x and 4.x
  • Enhanced in CloudCenter 3.2.5 to include the accessLink attribute.
  • Enhanced in CloudCenter 3.2.6 to include the appId, appName, hostname, startTime, endTime, environment, enviornmentId, depInitiatingUserId, and environmentApprovalStatus attributes.
  • Enhanced in CloudCenter 3.2.6.5 to include the preventTermination attribute.
  • Enhanced in CloudCenter 3.2.6.9 to include the msg attribute.
  • Enhanced in CloudCenter 4.0.0 to include the following attributes:
    • The statusMsg attribute.
    • The nics{nicID}, allocationMode, and order attributes (see IP Allocation Mode for additional information).
  • Enhanced in CloudCenter 4.2 to include the provisionBareMetal, deploymentStatus, and deploymentInfo attributes.
  • Enhanced in CloudCenter 4.4 to include the metadatas information.
  • Enhanced in CloudCenter 4.6 to include the excludeTerminatedNodes query attribue.
Notes
  • For additional context on <PORT> usage in the following example(s), see Base URI Format.
  • Job details are continuously updated during the application provisioning.
  • This API also allows you to exclude terminated VMs for each tier, when you use the {jobId}?excludeTerminatedNodes=true parameter in the request body.
ESB Headeraction: get.jobs.jobId
FAQs
  1. Under virtualMachines, will ID ever differ from hostName?
    The ID and the hostName are configured via the vmNaming script that runs on the Orchestrator.
    If you don't change the hostName after provisioning the VM, the ID and the hostName remain the same.

  2. Under jobs, what’s the difference between the Job ID that I get inside jobs and  the Job ID that I get from the provision call? For example, my provision call job in the example is 920, but under “jobs” it’s 921.
    The Job ID from the provision call is the Parent Job ID. Each tier is considered a child and gets the next Job ID. In this example, all the apps are single tier jobs so the Child Job ID is always 1 greater than the parent. But in case of multi-tier job's each tier job id will be unique.

  3. When we suspend or delete a VM, which Job ID do I use? The provision call Job ID? or the “jobs” Job ID?
    The provision call Job ID is used to suspend or delete the VM.

  4. Which IP do we use to access the VM? The publicIP, privateIP, or accessLink?
    The accessLink is applicable to Web Applications. This is attribute is only applicable for N-tier (running) web apps and SaaS (finished) applications.
    The accessLink is not applicable for Server provisioning workflows.

Example

curl -k -X GET -H "Accept: application/json" -u cliqradmin:40E45DBE57E35ECB "https://<HOST>:<PORT>/v1/jobs/920"

Response

 {
    "id": "920",
    "resource": "https://<HOST>:<PORT>/v1/jobs/920",
    "perms": [],
    "serviceTierId": "PHPWebApp-64",
    "appId": "29",
    "appName": "BatchListDir",
    "appVersion": "7.25",
    "name": "MyDrupalRun-0530-5_run_1",
    "status": "JobRunning",
    "deploymentStatus": "Deployed",
    "depInitiatingUserId": "2",
    "environmentId": "1",
    "environment": "dev",
    "environmentApprovalStatus": "NOT_APPLICABLE",
    "desc": null,
    "startTime": "2014-12-17 12:51:56.0",
    "endTime": "2014-12-17 13:05:43.0",
    "accessLink": "",
    "parameters": {
        "appParams": [
            {
                "name": "cliqrUseCustomCert",
                "value": "0"
            },
            {
                "name": "NumNodes",
                "value": "1"
            },
            {
                "name": "cliqrAppURL",
                "value": ""
            },
            {
                "name": "cliqrWebappAccessLink",
                "value": ""
            },
            {
                "name": "SharedStorageName",
                "value": "mystor"
            }
        ],
        "envParams": [],
        "cloudParams": {
            "cloud": "Amazon-us-east-1",
            "instance": "m1.small",
            "storage": null,
            "cloudProperties": []
        }
    },
    "virtualMachines": [],
    "deploymentInfo": {
        "deploymentId": 919,
        "deploymentName": "word1",
        "deploymentHealthStatus": "InProgress",
        "deploymentStatus": "InProgress",
        "deploymentOwnerId": 2,
        "isSuspendSupported": false,
        "isDeploymentTerminated": false
    },
    "tags": {
        "tags": [],
        "size": null
    },
    "jobs": [
        {
            "id": "921",
            "resource": "https: //<HOST>: <PORT>/v1/jobs/921",
            "perms": [],
            "serviceTierId": "BatchListDir1-30",
            "appId": "30",
            "appName": "BatchListDir1",
            "appVersion": "7.25",
            "name": "Database",
            "status": "JobRunning",
            "environment": null,
            "desc": null,
            "startTime": "2014-12-1712: 51: 56.0",
            "endTime": "2014-12-1713: 05: 43.0",
            "parameters": {
                "appParams": [
                    {
                        "name": "NumNodes",
                        "value": "1"
                    },
                    {
                        "name": "OSSVC_HOME",
                        "value": "/usr/local/osmosix/service"
                    },
                    {
                        "name": "cliqrDatabaseType",
                        "value": "mysql"
                    },
                    {
                        "name": "serviceTypeParam",
                        "value": "cliqrDatabaseType"
                    },
                    {
                        "name": "cliqrDatabaseName",
                        "value": ""
                    }
                ],
                "envParams": [],
                "cloudParams": {
                    "cloud": "Amazon-us-east-1",
                    "instance": "m1.small",
                    "storage": null,
                    "cloudProperties": []
                }
            },
            "virtualMachines": [
                {
                    "id": "i-df7e038f",
                    "resource": "https: //<HOST>: <PORT/v1/virtualmachines/i-df7e038f/metrics?jobId=921",
                    "perms": [],
                    "publicIp": null,
                    "privateIp": null,
                    "hostName": "cloudworker-61e660ba3ec1.novalocal",
                    "status": "NodeStarting",
                    "startTime": "2014-05-3015: 29: 25.0",
                    "endTime": null
                }
            ],
			"deploymentInfo": "null",
            "tags": {
                "tags": [],
                "size": null
            },
            "jobs": []
        },
        {
            "id": "922",
            "resource": "https: //<HOST>: <PORT>/v1/jobs/922",
            "perms": [],
            "serviceTierId": "BatchListDir2-31",
            "appId": "31",
            "appName": "BatchListDir2",
            "appVersion": "7.25",
            "envParams": [],
            "cloudParams": {
                "cloud": "Amazon-us-east-1",
                "instance": "m1.small",
                "storage": null,
                "cloudProperties": []
            }
        }
    ]
}

 

Once an application is completely deployed, the job details API returns the following (example) response:

{
    "id": "4253",
    "resource": "https://<HOST>:<PORT>/v1/jobs/4253/",
    "perms": [],
    "name": "word1_run_1",
    "desc": "",
    "status": "JobInProgress",
    "statusMsg": null,
    "serviceTierId": "WordPress-1218",
    "appId": "1218",
    "appName": "WordPress",
    "appVersion": "3.7",
    "depInitiatingUserId": null,
    "environmentId": null,
    "environment": null,
    "environmentApprovalStatus": null,
    "keepExistingDeploymentAfterPromote": true,
    "provisionBareMetal": false,
    "bareMetalMachines": [],
    "startTime": "2015-10-29 13:50:45.0",
    "endTime": "N/A",
    "preventTermination": false,
    "accessLink": "",
    "parameters": {
        "cloudParams": {
            "cloud": "SoftLayer-sjc01",
            "instance": "xsmall",
            "rootVolumeSize": null,
            "storage": null,
            "cloudProperties": [
                {
                    "name": "TenantId",
                    "value": "3bb259dea2c8454bb987e5f04ef8ab5a"
                },
                {
                    "name": "numNICs",
                    "value": "1"
                }
            ]
        },
        "appParams": [...
        ],
        "envParams": [...
        ]
    },
    "virtualMachines": [],
    "nics": [],
    "metadatas": [{
        "name": "jobname",
        "value": "%JOB_NAME%"
    }],
    "deploymentInfo": {
        "deploymentId": 919,
        "deploymentName": "word1",
        "deploymentHealthStatus": "In Progress",
        "deploymentStatus": "In Progress",
        "deploymentOwnerId": 2,
        "isSuspendSupported": false,
        "isDeploymentTerminated": false
    },
    "tags": [
        "UX",
        "softlayer"
    ],
    "policies": [
        "12"
    ],
    "volumeInfos": [],
    "costDetails": null,
    "actions": [
        "TERMINATE",
        "ON_TERMINATE_PROTECTION"
    ],
    "terminateProtection": false,
    "jobs": [
        {
            "id": "4254",
            "resource": "https://<HOST>:<PORT>/v1/jobs/4254",
            "perms": [],
            "name": "Database",
            "desc": null,
            "status": "JobStarting",
            "statusMsg": null,
            "serviceTierId": "mysql-1219",
            "appId": "1219",
            "appName": "Database",
            "appVersion": "3.7",
            "depInitiatingUserId": null,
            "environmentId": null,
            "environment": null,
            "environmentApprovalStatus": null,
            "keepExistingDeploymentAfterPromote": true,
            "provisionBareMetal": false,
            "bareMetalMachines": [],
            "startTime": "2015-10-29 13:50:45.0",
            "endTime": "N/A",
            "preventTermination": false,
            "accessLink": null,
            "parameters": {
                "cloudParams": {
                    "cloud": "SoftLayer-sjc01",
                    "instance": "xsmall",
                    "rootVolumeSize": null,
                    "storage": null,
                    "cloudProperties": [
                        {
                            "name": "TenantId",
                            "value": "3bb259dea2c8454bb987e5f04ef8ab5a"
                        },
                        {
                            "name": "attachPublicIP",
                            "value": "true"
                        },
                        {
                            "name": "numNICs",
                            "value": "1"
                        }
                    ]
                },
                "appParams": [...
                ],
                "envParams": [...
                ]
            },
            "virtualMachines": [...
            ],
            "nics": [],
            "metadatas": [{
        "name": "jobname",
        "value": "%JOB_NAME%"
    }],
            "deploymentInfo": null,
            "tags": [],
            "policies": [],
            "volumeInfos": [],
            "costDetails": null,
            "actions": [],
            "terminateProtection": false,
            "jobs": []
        },
        {
            "id": "4255",
            "resource": "https://<HOST>:<PORT>/v1/jobs/4255",
            "perms": [],
            "name": "WebServer",
            "desc": null,
            "status": "JobStarting",
            "statusMsg": null,
            "serviceTierId": "apache2-1220",
            "appId": "1220",
            "appName": "WebServer",
            "appVersion": "3.7",
            "depInitiatingUserId": null,
            "environmentId": null,
            "environment": null,
            "environmentApprovalStatus": null,
            "keepExistingDeploymentAfterPromote": true,
            "provisionBareMetal": false,
            "bareMetalMachines": [],
            "startTime": "2015-10-29 13:56:01.0",
            "endTime": "N/A",
            "preventTermination": false,
            "accessLink": null,
            "parameters": {
                "cloudParams": {
                    "cloud": "SoftLayer-sjc01",
                    "instance": "xsmall",
                    "rootVolumeSize": null,
                    "storage": null,
                    "cloudProperties": [
                        {
                            "name": "TenantId",
                            "value": "3bb259dea2c8454bb987e5f04ef8ab5a"
                        },
                        {
                            "name": "attachPublicIP",
                            "value": "true"
                        },
                        {
                            "name": "numNICs",
                            "value": "1"
                        }
                    ]
                },
                "appParams": [...
                ],
                "envParams": [...
                ]
            },
            "virtualMachines": [...
                    ],
                    "costDetails": null,
                    "additionalInfo": []
                }
            ],
            "nics": [],
            "metadatas": [{
        "name": "jobname",
        "value": "%JOB_NAME%"
    }],
            "deploymentInfo": null,
            "tags": [],
            "policies": [
                "13"
            ],
            "volumeInfos": [],
            "costDetails": null,
            "actions": [],
            "terminateProtection": false,
            "jobs": []
        }
    ]
} 

 

Request Attributes

jobId
  • DescriptionUnique, system-generated identifier for the job
  • Type: String
excludeTerminatedNodes
  • Description: Used to exclude VMs that display a Node Terminated status (nodeStatus).
  • Type: Boolean
    • false = Default. Includes VMs displaying the terminated state.

Response Attributes

id
  • DescriptionUnique, system-generated identifier for this CloudCenter Resource.

  • Type: String
resource
  • Description: Unique URL to access this resource.
  • Type: String
  • Description: URL of the application spawned by the job. This attribute is only applicable for N-tier (running) web apps and SaaS (finished) applications.
  • Type: String
appId
  • Description: Unique, system-generated identifier for the application profile. You can provide multiple application profile IDs as input parameters.

  • Type: String

appName
  • Description: The name of the application in use.
  • Type: String

appVersion
  • Description: Version of the application
  • Type: String
serviceTierId
  • Description: Type of application tier (for example, Loadbalancer, database, AppCluster, or other tiers). This value is a concatenation of the Application Profile Type Name and the App ID.
    • First job serviceTierId = appName + "-" +appId
    • Child tier serviceTierId = tierName + "-" +appId
  • Type: String
status
  • Description: The current status of the job. The possible values are: JobRunning, JobFinished, JobStopped, JobError, NodeStarting, NodeReady, NodeTerminated.
    Type: String 
deploymentStatus
desc
  • Description: Description of the job
  • Type: String
startTime
  • Description: Job start time
  • Type: String
endTime
  • Description: Job end time
  • Type: String
parameters
  • Description: Represents job parameters
  • Type: Object
parameters.cloudParams
  • Description: Cloud specific job parameters
  • Type: Object
parameters.cloudParams.cloud
  • Description: Cloud where job is running
  • Type: String
parameters.cloudParams.instance
  • Description: Instance type that is being used by a job
  • Type: String
parameters.cloudParams.storage
  • Description: Storage type being used by job
  • Type: String
parameters.cloudParams.cloudProperties
  • Description: Parameters specific to the cloud where job is running
  • Type: List
parameters.appParams
  • Description: Application specific runtime parameters
  • Type: List
parameters.appParams.name
  • Description: Parameter name
  • Type: String
parameters.appParams.value
  • Description: Parameter value
  • Type: String
parameters.envParams
  • Description: Parameters specific to the job execution environment
  • Type: List
parameters.envParams.name
  • Description: Environment parameter name
  • Type: String
parameters.envParams.value
  • Description: Environment parameter value
  • Type: String
virtualMachines
  • Description: List of VMs launched for a job
  • Type: List
virtualMachines.id
  • Description: ID of the VM
  • Type: String
virtualMachines.publicIp
  • Description: Public IP address of the VM
  • Type: String
virtualMachines.privateIp
  • Description: Private IP address of the VM
  • Type: String
virtualMachines.hostName
  • Description: The host name of the node or VM instance
  • Type: String
virtualMachines.status
  • Description: The current status of the VM. The possible values are: JobRunning, JobFinished, JobStopped, JobError, or NodeStarting.
  • Type: String
virtualMachines.startTime
  • Description: Start time of the VM
  • Type: String
virtualMachines.endTime
  • Description: End time of the VM
  • Type: String
deploymentInfo (click for additional details)

tags
  • DescriptionTags associated with this resource. Each string represents a System Tag.

    If you filter reports based on tags that you applied to VMs or jobs, then the report displays all the VMs or jobs that have this exact combination of tags.

  • Type: Array of strings

tags.namespace
  • Description: Namespace to which the tag belongs
  • Type: String
tags.value
  • Description: Tag value
  • Type: String
jobs
  • Description: List of child jobs
  • Type: List
preventTermination
  • Description: When set for a deployment/job, this attribute ensures that the deployment/job cannot be suspended, stopped, or deleted. See Termination for related UI information.
  • Type: Boolean
 provisionBareMetal 
  • Description: Identifies if the machines should be provisioned as bare metal hardware (see Provision Bare Metal Hardware Servers for additional context).
  • Type: Boolean
    • true = Bare metal hardware is provisioned and enabled for all tiers in the application
    • false = (Default) Bare metal hardware is not provisioned
environment
  • Description: Deployment Environment Name in which the job is submitted
  • Type: String
environmentId
  • Description: Unique identifier of deployment environment in which job is submitted
  • Type: Number
depInitiatingUserId
  • Description: User Id of the user who initiated the job
  • Type: Number
environmentApprovalStatus
  • Description: Approval status in case the job needs approval in the deployment environment. Valid states are :
    • PENDING - Job submitted for approval , but not approved or rejected by user with approve privilege on deployment environment.
    • APPROVED - Job approved and submitted.
    • AUTO_APPROVED - Job automatically got approved if the submitting user has approve privilege with himself.
    • REJECTED - Job rejected for submission
    • NOT_APPLICABLE - In case no approval is required in deployment environment
  • Type: String
msg
  • Description: An optional response message reflecting the status of the job
  • Type: String
statusMsg
  • Description: The relevant status message (error or other related message) generated by the system
  • Type: String
nics
  • Description: For batch jobs, the nics attribute is displayed at the top job level
  • Type: String
nics.id
  • Description: The network identifier for each required tier (web application jobs). Get these identifiers using the availableNetworks attribute
  • Type: String
nics.allocationMode
  • Description: See IP Allocation Mode for additional information on allocation modes
    • If the application profile has NIC Size 1 and there is a preferred (or) default network defined, the nic attribute does not need to be specified in the job submission.
    • Default = DHCP. The default does not allow parameter substitution in the configuration file.
  • Type: String
nics.order
  • Description: The order in which the NICs must be used
  • Type: Integer
metadatas
  • Description: Information about the metadata associated with the job. This attribute is the same as the metadata (NVPair) attribute.
  • Type: Array of name-value pairs

    name
    • DescriptionThe name assigned for this CloudCenter ResourceValid characters are letters, numbers, underscores, and spaces.

    • Type: String

    value
    • Description: Indicates the set value for this property
    • Type: Float