PutRepositoryTriggers
Replaces all triggers for a repository. Used to create or delete triggers.
Request Syntax
{
"repositoryName": "string
",
"triggers": [
{
"branches": [ "string
" ],
"customData": "string
",
"destinationArn": "string
",
"events": [ "string
" ],
"name": "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.
- repositoryName
-
The name of the repository where you want to create or update the trigger.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 100.
Pattern:
[\w\.-]+
Required: Yes
- triggers
-
The JSON block of configuration information for each trigger.
Type: Array of RepositoryTrigger objects
Required: Yes
Response Syntax
{
"configurationId": "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.
- configurationId
-
The system-generated unique ID for the create or update operation.
Type: String
Errors
For information about the errors that are common to all actions, see Common Errors.
- EncryptionIntegrityChecksFailedException
-
An encryption integrity check failed.
HTTP Status Code: 500
- EncryptionKeyAccessDeniedException
-
An encryption key could not be accessed.
HTTP Status Code: 400
- EncryptionKeyDisabledException
-
The encryption key is disabled.
HTTP Status Code: 400
- EncryptionKeyNotFoundException
-
No encryption key was found.
HTTP Status Code: 400
- EncryptionKeyUnavailableException
-
The encryption key is not available.
HTTP Status Code: 400
- InvalidRepositoryNameException
-
A specified repository name is not valid.
Note
This exception occurs only when a specified repository name is not valid. Other exceptions occur when a required repository parameter is missing, or when a specified repository does not exist.
HTTP Status Code: 400
- InvalidRepositoryTriggerBranchNameException
-
One or more branch names specified for the trigger is not valid.
HTTP Status Code: 400
- InvalidRepositoryTriggerCustomDataException
-
The custom data provided for the trigger is not valid.
HTTP Status Code: 400
- InvalidRepositoryTriggerDestinationArnException
-
The Amazon Resource Name (ARN) for the trigger is not valid for the specified destination. The most common reason for this error is that the ARN does not meet the requirements for the service type.
HTTP Status Code: 400
- InvalidRepositoryTriggerEventsException
-
One or more events specified for the trigger is not valid. Check to make sure that all events specified match the requirements for allowed events.
HTTP Status Code: 400
- InvalidRepositoryTriggerNameException
-
The name of the trigger is not valid.
HTTP Status Code: 400
- InvalidRepositoryTriggerRegionException
-
The Amazon Web Services Region for the trigger target does not match the Amazon Web Services Region for the repository. Triggers must be created in the same Amazon Web Services Region as the target for the trigger.
HTTP Status Code: 400
- MaximumBranchesExceededException
-
The number of branches for the trigger was exceeded.
HTTP Status Code: 400
- MaximumRepositoryTriggersExceededException
-
The number of triggers allowed for the repository was exceeded.
HTTP Status Code: 400
- RepositoryDoesNotExistException
-
The specified repository does not exist.
HTTP Status Code: 400
- RepositoryNameRequiredException
-
A repository name is required, but was not specified.
HTTP Status Code: 400
- RepositoryTriggerBranchNameListRequiredException
-
At least one branch name is required, but was not specified in the trigger configuration.
HTTP Status Code: 400
- RepositoryTriggerDestinationArnRequiredException
-
A destination ARN for the target service for the trigger is required, but was not specified.
HTTP Status Code: 400
- RepositoryTriggerEventsListRequiredException
-
At least one event for the trigger is required, but was not specified.
HTTP Status Code: 400
- RepositoryTriggerNameRequiredException
-
A name for the trigger is required, but was not specified.
HTTP Status Code: 400
- RepositoryTriggersListRequiredException
-
The list of triggers for the repository is required, but was not specified.
HTTP Status Code: 400
Examples
Example
This example illustrates one usage of PutRepositoryTriggers.
Sample Request
POST / HTTP/1.1
Host: codecommit.us-east-1.amazonaws.com
Accept-Encoding: identity
Content-Length: 468
X-Amz-Target: CodeCommit_20150413.PutRepositoryTriggers
X-Amz-Date: 20151028T232919Z
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/20151028/us-east-1/codecommit/aws4_request, SignedHeaders=content-type;host;user-agent;x-amz-date;x-amz-target, Signature=8d9b5998EXAMPLE
{
"repositoryName": "ThisisaDemo",
"triggers": [
{
"destinationArn": "arn:aws:sns:us-east-1:123456789012EXAMPLE:MyCodeCommitTopic",
"branches": [
"main",
"anotherbranch"
],
"events": ["all"],
"name": "MyFirstTrigger",
"customData": ""
},
{
"destinationArn": "arn:aws:sns:us-east-1:123456789012EXAMPLE:MyOtherCodeCommitTopic",
"branches": [],
"events": ["all"],
"name": "MySecondTrigger",
"customData": "Use the example-example IRC channel to discuss development on this repo"
}
]
}
Sample Response
HTTP/1.1 200 OK
x-amzn-RequestId: 0728aaa8-EXAMPLE
Content-Type: application/x-amz-json-1.1
Content-Length: 58
Date: Wed, 28 Oct 2015 23:29:21 GMT
{
"configurationId":"6fa51cd8-35c1-EXAMPLE"
}
See Also
For more information about using this API in one of the language-specific Amazon SDKs, see the following: