CreateCapability
Instantiates a capability based on the specified parameters. A trading capability contains the information required to transform incoming EDI documents into JSON or XML outputs.
Request Syntax
{
"clientToken": "string
",
"configuration": { ... },
"instructionsDocuments": [
{
"bucketName": "string
",
"key": "string
"
}
],
"name": "string
",
"tags": [
{
"Key": "string
",
"Value": "string
"
}
],
"type": "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.
- clientToken
-
Reserved for future use.
Type: String
Required: No
- configuration
-
Specifies a structure that contains the details for a capability.
Type: CapabilityConfiguration object
Note: This object is a Union. Only one member of this object can be specified or returned.
Required: Yes
- instructionsDocuments
-
Specifies one or more locations in Amazon S3, each specifying an EDI document that can be used with this capability. Each item contains the name of the bucket and the key, to identify the document's location.
Type: Array of S3Location objects
Array Members: Minimum number of 0 items. Maximum number of 5 items.
Required: No
- name
-
Specifies the name of the capability, used to identify it.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 254.
Required: Yes
-
Specifies the key-value pairs assigned to ARNs that you can use to group and search for resources by type. You can attach this metadata to resources (capabilities, partnerships, and so on) for any purpose.
Type: Array of Tag objects
Array Members: Minimum number of 0 items. Maximum number of 200 items.
Required: No
- type
-
Specifies the type of the capability. Currently, only
edi
is supported.Type: String
Valid Values:
edi
Required: Yes
Response Syntax
{
"capabilityArn": "string",
"capabilityId": "string",
"configuration": { ... },
"createdAt": "string",
"instructionsDocuments": [
{
"bucketName": "string",
"key": "string"
}
],
"name": "string",
"type": "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.
- capabilityArn
-
Returns an Amazon Resource Name (ARN) for a specific AWS resource, such as a capability, partnership, profile, or transformer.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 255.
- capabilityId
-
Returns a system-assigned unique identifier for the capability.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 64.
Pattern:
[a-zA-Z0-9_-]+
- configuration
-
Returns a structure that contains the details for a capability.
Type: CapabilityConfiguration object
Note: This object is a Union. Only one member of this object can be specified or returned.
- createdAt
-
Returns a timestamp for creation date and time of the capability.
Type: Timestamp
- instructionsDocuments
-
Returns one or more locations in Amazon S3, each specifying an EDI document that can be used with this capability. Each item contains the name of the bucket and the key, to identify the document's location.
Type: Array of S3Location objects
Array Members: Minimum number of 0 items. Maximum number of 5 items.
- name
-
Returns the name of the capability used to identify it.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 254.
- type
-
Returns the type of the capability. Currently, only
edi
is supported.Type: String
Valid Values:
edi
Errors
For information about the errors that are common to all actions, see Common Errors.
- AccessDeniedException
-
You do not have sufficient access to perform this action.
HTTP Status Code: 400
- ConflictException
-
A conflict exception is thrown when you attempt to delete a resource (such as a profile or a capability) that is being used by other resources.
HTTP Status Code: 400
- InternalServerException
-
This exception is thrown when an error occurs in the AWS B2B Data Interchange service.
HTTP Status Code: 500
- ResourceNotFoundException
-
Occurs when the requested resource does not exist, or cannot be found. In some cases, the resource exists in a region other than the region specified in the API call.
HTTP Status Code: 400
- ServiceQuotaExceededException
-
Occurs when the calling command attempts to exceed one of the service quotas, for example trying to create a capability when you already have the maximum number of capabilities allowed.
HTTP Status Code: 400
- ThrottlingException
-
The request was denied due to throttling: the data speed and rendering may be limited depending on various parameters and conditions.
HTTP Status Code: 400
- ValidationException
-
Occurs when a B2BI object cannot be validated against a request from another object.
HTTP Status Code: 400
Examples
Example
The following example creates a capability.
Sample Request
{
"name": "b2biexample",
"type": "edi",
"configuration": {
"edi": {
"type": {
"x12Details": {
"transactionSet": "X12_110",
"version": "VERSION_4010"
}
},
"inputLocation": {
"bucketName": "test-bucket",
"key": "input/"
},
"outputLocation": {
"bucketName": "test-bucket",
"key": "output/"
},
"transformerId": "tr-1234abcd5678efghj"
}
},
"instructionsDocuments": [
{
"bucketName": "test-bucket",
"key": "instructiondoc.txt"
}
],
"clientToken": "foo",
"tags": [
{
"Key": "capabilityKey1",
"Value": "capabilityValue1"
}
]
}
Sample Response
{
"capabilityArn": "arn:aws:b2bi:us-west-2:123456789012:capability/ca-1111aaaa2222bbbb3",
"capabilityId": "ca-1111aaaa2222bbbb3",
"createdAt": "2023-11-01T21:51:05.504Z",
"configuration": {
"edi": {
"type": {
"x12Details": {
"transactionSet": "X12_110",
"version": "VERSION_4010"
}
},
"inputLocation": {
"bucketName": "test-bucket",
"key": "input/"
},
"outputLocation": {
"bucketName": "test-bucket",
"key": "output/"
},
"transformerId": "tr-1234abcd5678efghj"
}
},
"instructionsDocuments": [
{
"bucketName": "test-bucket",
"key": "instructiondoc.txt"
}
],
"name": "b2biexample",
"type": "edi"
}
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: