PollForJobs
Returns information about any jobs for CodePipeline to act on.
PollForJobs
is valid only for action types with "Custom" in the owner
field. If the action type contains AWS
or ThirdParty
in the
owner field, the PollForJobs
action returns an error.
Important
When this API is called, CodePipeline returns temporary credentials for the S3 bucket used to store artifacts for the pipeline, if the action requires access to that S3 bucket for input or output artifacts. This API also 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 are returned.
Type: String to string map
Map Entries: Minimum number of 0 items. Maximum number of 1 item.
Key Length Constraints: Minimum length of 1. Maximum length of 50.
Value Length Constraints: Minimum length of 1. Maximum length of 50.
Value 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": {
"actionExecutionId": "string",
"name": "string"
},
"pipelineArn": "string",
"pipelineExecutionId": "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.
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
Examples
Example
This example illustrates one usage of PollForJobs.
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": "amzn-s3-demo-bucket",
"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 Amazon SDKs, see the following: