CreateCustomActionType - CodePipeline (original) (raw)
Creates a new custom action that can be used in all pipelines associated with the AWS account. Only used for custom actions.
Request Syntax
{
"category": "string",
"configurationProperties": [
{
"description": "string",
"key": boolean,
"name": "string",
"queryable": boolean,
"required": boolean,
"secret": boolean,
"type": "string"
}
],
"inputArtifactDetails": {
"maximumCount": number,
"minimumCount": number
},
"outputArtifactDetails": {
"maximumCount": number,
"minimumCount": number
},
"provider": "string",
"settings": {
"entityUrlTemplate": "string",
"executionUrlTemplate": "string",
"revisionUrlTemplate": "string",
"thirdPartyConfigurationUrl": "string"
},
"tags": [
{
"key": "string",
"value": "string"
}
],
"version": "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.
The category of the custom action, such as a build action or a test action.
Type: String
Valid Values: Source | Build | Deploy | Test | Invoke | Approval | Compute
Required: Yes
The configuration properties for the custom action.
Note
You can refer to a name in the configuration properties of the custom action within the URL templates by following the format of {Config:name}, as long as the configuration property is both required and not secret. For more information, seeCreate a Custom Action for a Pipeline.
Type: Array of ActionConfigurationProperty objects
Array Members: Maximum number of 10 items.
Required: No
The details of the input artifact for the action, such as its commit ID.
Type: ArtifactDetails object
Required: Yes
The details of the output artifact of the action, such as its commit ID.
Type: ArtifactDetails object
Required: Yes
The provider of the service used in the custom action, such as CodeDeploy.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 35.
Pattern: [0-9A-Za-z_-]+
Required: Yes
URLs that provide users information about this custom action.
Type: ActionTypeSettings object
Required: No
The tags for the custom action.
Type: Array of Tag objects
Required: No
The version identifier of the custom action.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 9.
Pattern: [0-9A-Za-z_-]+
Required: Yes
Response Syntax
{
"actionType": {
"actionConfigurationProperties": [
{
"description": "string",
"key": boolean,
"name": "string",
"queryable": boolean,
"required": boolean,
"secret": boolean,
"type": "string"
}
],
"id": {
"category": "string",
"owner": "string",
"provider": "string",
"version": "string"
},
"inputArtifactDetails": {
"maximumCount": number,
"minimumCount": number
},
"outputArtifactDetails": {
"maximumCount": number,
"minimumCount": number
},
"settings": {
"entityUrlTemplate": "string",
"executionUrlTemplate": "string",
"revisionUrlTemplate": "string",
"thirdPartyConfigurationUrl": "string"
}
},
"tags": [
{
"key": "string",
"value": "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.
Returns information about the details of an action type.
Type: ActionType object
Specifies the tags applied to the custom action.
Type: Array of Tag objects
Errors
For information about the errors that are common to all actions, see Common Errors.
ConcurrentModificationException
Unable to modify the tag due to a simultaneous update request.
HTTP Status Code: 400
InvalidTagsException
The specified resource tags are invalid.
HTTP Status Code: 400
LimitExceededException
The number of pipelines associated with the AWS account has exceeded the limit allowed for the account.
HTTP Status Code: 400
TooManyTagsException
The tags limit for a resource has been exceeded.
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 CreateCustomActionType.
Sample Request
POST / HTTP/1.1
Host: codepipeline.us-east-1.amazonaws.com
Accept-Encoding: identity
Content-Length: 665
X-Amz-Target: CodePipeline_20150709.CreateCustomActionType
X-Amz-Date: 20160707T203658Z
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/20160707/us-east-1/codepipeline/aws4_request, SignedHeaders=content-type;host;user-agent;x-amz-date;x-amz-target, Signature=8d9b5998EXAMPLE
{
"category": "Build",
"settings": {
"entityUrlTemplate": "https://192.0.2.4/job/{Config:ProjectName}/",
"executionUrlTemplate": "https://192.0.2.4/job/{Config:ProjectName}/lastSuccessfulBuild/{ExternalExecutionId}/"
},
"configurationProperties": [
{
"description": "The name of the build project must be provided when this action is added to the pipeline.",
"required": true,
"secret": false,
"key": true,
"type": "String",
"queryable": false,
"name": "ProjectName"
}
],
"version": "1",
"provider": "JenkinsProviderName",
"inputArtifactDetails": {
"maximumCount": 1,
"minimumCount": 0
},
"outputArtifactDetails": {
"maximumCount": 1,
"minimumCount": 0
}
}
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: 683
{
"actionType": {
"actionConfigurationProperties": [
{
"description": "The name of the build project must be provided when this action is added to the pipeline.",
"key": true,
"name": "ProjectName",
"queryable": false,
"required": true,
"secret": false
}
],
"id": {
"__type": "ActionTypeId",
"category": "Build",
"owner": "Custom",
"provider": "JenkinsProviderName",
"version": "1"
},
"inputArtifactDetails": {
"maximumCount": 1,
"minimumCount": 0
},
"outputArtifactDetails": {
"maximumCount": 1,
"minimumCount": 0
},
"settings": {
"entityUrlTemplate": "https://192.0.2.4/job/{Config:ProjectName}/",
"executionUrlTemplate": "https://192.0.2.4/job/{Config:ProjectName}/lastSuccessfulBuild/{ExternalExecutionId}/"
}
}
}
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: