Menu
AWS CodePipeline
API Reference (API Version 2015-07-09)

PollForJobs

Returns information about any jobs for AWS CodePipeline to act upon.

Important

When this API is called, AWS CodePipeline returns temporary credentials for the Amazon S3 bucket used to store artifacts for the pipeline, if the action requires access to that Amazon S3 bucket for input or output artifacts. Additionally, this API returns any secret values defined for the action.

Request Syntax

{
   "actionTypeId": { 
      "category": "string",
      "owner": "string",
      "provider": "string",
      "version": "string"
   },
   "maxBatchSize": number,
   "queryParam": { 
      "string" : "string" 
   }
}

Request Parameters

For information about the parameters that are common to all actions, see Common Parameters.

The request accepts the following data in JSON format.

actionTypeId

Represents information about an action type.

Type: ActionTypeId object

Required: Yes

maxBatchSize

The maximum number of jobs to return in a poll for jobs call.

Type: Integer

Valid Range: Minimum value of 1.

Required: No

queryParam

A map of property names and values. For an action type with no queryable properties, this value must be null or an empty map. For an action type with a queryable property, you must supply that property as a key in the map. Only jobs whose action configuration matches the mapped value will be returned.

Type: String to string map

Length Constraints: Minimum length of 1. Maximum length of 50.

Pattern: [a-zA-Z0-9_-]+

Required: No

Response Syntax

{
   "jobs": [ 
      { 
         "accountId": "string",
         "data": { 
            "actionConfiguration": { 
               "configuration": { 
                  "string" : "string" 
               }
            },
            "actionTypeId": { 
               "category": "string",
               "owner": "string",
               "provider": "string",
               "version": "string"
            },
            "artifactCredentials": { 
               "accessKeyId": "string",
               "secretAccessKey": "string",
               "sessionToken": "string"
            },
            "continuationToken": "string",
            "encryptionKey": { 
               "id": "string",
               "type": "string"
            },
            "inputArtifacts": [ 
               { 
                  "location": { 
                     "s3Location": { 
                        "bucketName": "string",
                        "objectKey": "string"
                     },
                     "type": "string"
                  },
                  "name": "string",
                  "revision": "string"
               }
            ],
            "outputArtifacts": [ 
               { 
                  "location": { 
                     "s3Location": { 
                        "bucketName": "string",
                        "objectKey": "string"
                     },
                     "type": "string"
                  },
                  "name": "string",
                  "revision": "string"
               }
            ],
            "pipelineContext": { 
               "action": { 
                  "name": "string"
               },
               "pipelineName": "string",
               "stage": { 
                  "name": "string"
               }
            }
         },
         "id": "string",
         "nonce": "string"
      }
   ]
}

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

jobs

Information about the jobs to take action on.

Type: Array of Job objects

Errors

For information about the errors that are common to all actions, see Common Errors.

ActionTypeNotFoundException

The specified action type cannot be found.

HTTP Status Code: 400

ValidationException

The validation was specified in an invalid format.

HTTP Status Code: 400

Example

Sample Request

POST / HTTP/1.1
Host: codepipeline.us-east-1.amazonaws.com
Accept-Encoding: identity
Content-Length: 173
X-Amz-Target: CodePipeline_20150709.PollForJobs
X-Amz-Date: 20151030T230047Z
User-Agent: aws-cli/1.7.38 Python/2.7.9 Windows/7
Content-Type: application/x-amz-json-1.1
Authorization: AWS4-HMAC-SHA256 Credential=AKIAI44QH8DHBEXAMPLE/20151030/us-east-1/codepipeline/aws4_request, SignedHeaders=content-type;host;user-agent;x-amz-date;x-amz-target, Signature=8d9b5998EXAMPLE

{
  "actionTypeId": {
    "category": "Test",
    "owner": "Custom",
    "version": "1",
    "provider": "JenkinsProviderName"
  },
  "maxBatchSize": 5,
  "queryParam": {
    "ProjectName": "JenkinsTestProject"
  }
}

Sample Response

HTTP/1.1 200 OK
x-amzn-RequestId: 620484b7-88cb-11e5-b497-75c49EXAMPLE
Content-Type: application/x-amz-json-1.1
Content-Length: 1830

{
  "jobs": [
    {
      "accountId": "111111111111",
      "data": {
        "actionConfiguration": {
          "__type": "ActionConfiguration",
          "configuration": {
            "ProjectName": "JenkinsTestProject"
          }
        },
        "actionTypeId": {
          "__type": "ActionTypeId",
          "category": "Test",
          "owner": "Custom",
          "provider": "JenkinsProviderName",
          "version": "1"
        },
        "artifactCredentials": {
          "__type": "AWSSessionCredentials",
          "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
          "secretAccessKey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
          "sessionToken": "fICCQD6m7oRw0uXOjANBgkqhkiG9w0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wHhcNMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMaK0dn+a4GmWIWJ21uUSfwfEvySWtC2XADZ4nB+BLYgVIk60CpiwsZ3G93vUEIO3IyNoH/f0wYK8m9TrDHudUZg3qX4waLG5M43q7Wgc/MbQITxOUSQv7c7ugFFDzQGBzZswY6786m86gpEIbb3OhjZnzcvQAaRHhdlQWIMm2nrAgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAtCu4nUhVVxYUntneD9+h8Mg9q6q+auNKyExzyLwaxlAoo7TJHidbtS4J5iNmZgXL0FkbFFBjvSfpJIlJ00zbhNYS5f6GuoEDmFJl0ZxBHjJnyp378OD8uTs7fLvjx79LjSTbNYiytVbZPQUQ5Yaxu2jXnimvw3rrszlaEXAMPLE="
        },
        "inputArtifacts": [
          {
            "__type": "Artifact",
            "location": {
              "s3Location": {
                "bucketName": "codepipeline-us-east-1-11EXAMPLE11",
                "objectKey": "MySecondPipeline/MyAppBuild/EXAMPLE"
              },
              "type": "S3"
            },
            "name": "MyAppBuild"
          }
        ],
        "outputArtifacts": [],
        "pipelineContext": {
          "__type": "PipelineContext",
          "action": {
            "name": "JenkinsTestAction"
          },
          "pipelineName": "MySecondPipeline",
          "stage": {
            "name": "Testing"
          }
        }
      },
      "id": "ef66c259-64f9-EXAMPLE",
      "nonce": "3"
    }
  ]
}

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: