openapi: 3.0.0
info:
version: 2017-11-27
x-release: v4
title: AmazonMQ
description: Amazon MQ is a managed message broker service for Apache ActiveMQ and RabbitMQ that makes it easy to set up and operate message brokers in the cloud. A message broker allows software
applications and components to communicate using various programming languages, operating systems, and formal messaging protocols.
x-logo:
url: https://api.apis.guru/v2/cache/logo/https_twitter.com_awscloud_profile_image.png
backgroundColor: "#FFFFFF"
termsOfService: https://aws.amazon.com/service-terms/
contact:
name: Mike Ralphson
email: [email protected]
url: https://github.com/mermade/aws2openapi
x-twitter: PermittedSoc
license:
name: Apache 2.0 License
url: http://www.apache.org/licenses/
x-providerName: amazonaws.com
x-serviceName: mq
x-aws-signingName: mq
x-origin:
- contentType: application/json
url: https://raw.githubusercontent.com/aws/aws-sdk-js/master/apis/mq-2017-11-27.normal.json
converter:
url: https://github.com/mermade/aws2openapi
version: 1.0.0
x-apisguru-driver: external
x-apiClientRegistration:
url: https://portal.aws.amazon.com/gp/aws/developer/registration/index.html?nc2=h_ct
x-apisguru-categories:
- cloud
x-preferred: true
externalDocs:
description: Amazon Web Services documentation
url: https://docs.aws.amazon.com/mq/
servers:
- url: http://mq.{region}.amazonaws.com
variables:
region:
description: The AWS region
enum:
- us-east-1
- us-east-2
- us-west-1
- us-west-2
- us-gov-west-1
- us-gov-east-1
- ca-central-1
- eu-north-1
- eu-west-1
- eu-west-2
- eu-west-3
- eu-central-1
- eu-south-1
- af-south-1
- ap-northeast-1
- ap-northeast-2
- ap-northeast-3
- ap-southeast-1
- ap-southeast-2
- ap-east-1
- ap-south-1
- sa-east-1
- me-south-1
default: us-east-1
description: The AmazonMQ multi-region endpoint
- url: https://mq.{region}.amazonaws.com
variables:
region:
description: The AWS region
enum:
- us-east-1
- us-east-2
- us-west-1
- us-west-2
- us-gov-west-1
- us-gov-east-1
- ca-central-1
- eu-north-1
- eu-west-1
- eu-west-2
- eu-west-3
- eu-central-1
- eu-south-1
- af-south-1
- ap-northeast-1
- ap-northeast-2
- ap-northeast-3
- ap-southeast-1
- ap-southeast-2
- ap-east-1
- ap-south-1
- sa-east-1
- me-south-1
default: us-east-1
description: The AmazonMQ multi-region endpoint
- url: http://mq.{region}.amazonaws.com.cn
variables:
region:
description: The AWS region
enum:
- cn-north-1
- cn-northwest-1
default: cn-north-1
description: The AmazonMQ endpoint for China (Beijing) and China (Ningxia)
- url: https://mq.{region}.amazonaws.com.cn
variables:
region:
description: The AWS region
enum:
- cn-north-1
- cn-northwest-1
default: cn-north-1
description: The AmazonMQ endpoint for China (Beijing) and China (Ningxia)
x-hasEquivalentPaths: true
paths:
/v1/brokers:
post:
operationId: CreateBroker
description: '<p>Creates a broker. Note: This API is asynchronous.</p> <p>To create a broker, you must either use the AmazonMQFullAccess IAM policy or include the following EC2 permissions in your
IAM policy.</p> <ul><li><p>ec2:CreateNetworkInterface</p> <p>This permission is required to allow Amazon MQ to create an elastic network interface (ENI) on behalf of your account.</p></li> <li><p>ec2:CreateNetworkInterfacePermission</p>
<p>This permission is required to attach the ENI to the broker instance.</p></li> <li><p>ec2:DeleteNetworkInterface</p></li> <li><p>ec2:DeleteNetworkInterfacePermission</p></li> <li><p>ec2:DetachNetworkInterface</p></li>
<li><p>ec2:DescribeInternetGateways</p></li> <li><p>ec2:DescribeNetworkInterfaces</p></li> <li><p>ec2:DescribeNetworkInterfacePermissions</p></li> <li><p>ec2:DescribeRouteTables</p></li> <li><p>ec2:DescribeSecurityGroups</p></li>
<li><p>ec2:DescribeSubnets</p></li> <li><p>ec2:DescribeVpcs</p></li></ul> <p>For more information, see <a href="https://docs.aws.amazon.com//amazon-mq/latest/developer-guide/amazon-mq-setting-up.html#create-iam-user">Create
an IAM User and Get Your AWS Credentials</a> and <a href="https://docs.aws.amazon.com/amazon-mq/latest/developer-guide/connecting-to-amazon-mq.html#never-modify-delete-elastic-network-interface">Never
Modify or Delete the Amazon MQ Elastic Network Interface</a> in the <i>Amazon MQ Developer Guide</i>.</p>'
responses:
"200":
description: Success
content:
application/json:
schema:
$ref: "#/components/schemas/CreateBrokerResponse"
examples:
CreateBroker200Example:
summary: Default CreateBroker 200 response
x-microcks-default: true
value:
BrokerArn: arn:aws:service:us-east-1:123456789012:resource/example
BrokerId: id-abc123
"480":
description: BadRequestException
content:
application/json:
schema:
$ref: "#/components/schemas/BadRequestException"
examples:
CreateBroker480Example:
summary: Default CreateBroker 480 response
x-microcks-default: true
value: {}
"481":
description: UnauthorizedException
content:
application/json:
schema:
$ref: "#/components/schemas/UnauthorizedException"
examples:
CreateBroker481Example:
summary: Default CreateBroker 481 response
x-microcks-default: true
value: {}
"482":
description: InternalServerErrorException
content:
application/json:
schema:
$ref: "#/components/schemas/InternalServerErrorException"
examples:
CreateBroker482Example:
summary: Default CreateBroker 482 response
x-microcks-default: true
value: {}
"483":
description: ConflictException
content:
application/json:
schema:
$ref: "#/components/schemas/ConflictException"
examples:
CreateBroker483Example:
summary: Default CreateBroker 483 response
x-microcks-default: true
value: {}
"484":
description: ForbiddenException
content:
application/json:
schema:
$ref: "#/components/schemas/ForbiddenException"
examples:
CreateBroker484Example:
summary: Default CreateBroker 484 response
x-microcks-default: true
value: {}
parameters: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- autoMinorVersionUpgrade
- brokerName
- deploymentMode
- engineType
- engineVersion
- hostInstanceType
- publiclyAccessible
- users
properties:
authenticationStrategy:
description: Optional. The authentication strategy used to secure the broker. The default is SIMPLE.
type: string
enum:
- SIMPLE
- LDAP
autoMinorVersionUpgrade:
description: Enables automatic upgrades to new minor versions for brokers, as new versions are released and supported by Amazon MQ. Automatic upgrades occur during the scheduled
maintenance window of the broker or after a manual broker reboot. Set to true by default, if no value is specified.
type: boolean
brokerName:
description: Required. The broker's name. This value must be unique in your AWS account, 1-50 characters long, must contain only letters, numbers, dashes, and underscores, and must
not contain white spaces, brackets, wildcard characters, or special characters.
type: string
configuration:
description: <p>A list of information about the configuration.</p> <important><p>Does not apply to RabbitMQ brokers.</p></important>
type: object
properties:
Id:
allOf:
- $ref: "#/components/schemas/__string"
- xml:
name: id
description: Required. The unique ID that Amazon MQ generates for the configuration.
Revision:
allOf:
- $ref: "#/components/schemas/__integer"
- xml:
name: revision
description: The revision number of the configuration.
creatorRequestId:
description: "The unique ID that the requester receives for the created broker. Amazon MQ passes your ID with the API action. Note: We recommend using a Universally Unique Identifier (UUID)
for the creatorRequestId. You may omit the creatorRequestId if your application doesn't require idempotency."
type: string
deploymentMode:
description: The broker's deployment mode.
type: string
enum:
- SINGLE_INSTANCE
- ACTIVE_STANDBY_MULTI_AZ
- CLUSTER_MULTI_AZ
encryptionOptions:
description: <important><p>Does not apply to RabbitMQ brokers.</p></important> <p>Encryption options for the broker.</p>
type: object
properties:
KmsKeyId:
allOf:
- $ref: "#/components/schemas/__string"
- xml:
name: kmsKeyId
description: The customer master key (CMK) to use for the AWS Key Management Service (KMS). This key is used to encrypt your data at rest. If not provided, Amazon MQ will use a
default CMK to encrypt your data.
UseAwsOwnedKey:
allOf:
- $ref: "#/components/schemas/__boolean"
- xml:
name: useAwsOwnedKey
description: Enables the use of an AWS owned CMK using AWS Key Management Service (KMS). Set to true by default, if no value is provided, for example, for RabbitMQ brokers.
engineType:
description: The type of broker engine. Amazon MQ supports ActiveMQ and RabbitMQ.
type: string
enum:
- ACTIVEMQ
- RABBITMQ
engineVersion:
description: Required. The broker engine's version. For a list of supported engine versions, see <a
href="https://docs.aws.amazon.com//amazon-mq/latest/developer-guide/broker-engine.html">Supported engines</a>.
type: string
hostInstanceType:
description: Required. The broker's instance type.
type: string
ldapServerMetadata:
description: <p>Optional. The metadata of the LDAP server used to authenticate and authorize connections to the broker.</p> <important><p>Does not apply to RabbitMQ
brokers.</p></important>
type: object
properties:
Hosts:
allOf:
- $ref: "#/components/schemas/__listOf__string"
- xml:
name: hosts
description: Specifies the location of the LDAP server such as AWS Directory Service for Microsoft Active Directory . Optional failover server.
RoleBase:
allOf:
- $ref: "#/components/schemas/__string"
- xml:
name: roleBase
description: |-
The distinguished name of the node in the directory information tree (DIT) to search for roles or groups. For example, ou=group, ou=corp, dc=corp,
dc=example, dc=com.
RoleName:
allOf:
- $ref: "#/components/schemas/__string"
- xml:
name: roleName
description: Specifies the LDAP attribute that identifies the group name attribute in the object returned from the group membership query.
RoleSearchMatching:
allOf:
- $ref: "#/components/schemas/__string"
- xml:
name: roleSearchMatching
description: The LDAP search filter used to find roles within the roleBase. The distinguished name of the user matched by userSearchMatching is substituted into the {0}
placeholder in the search filter. The client's username is substituted into the {1} placeholder. For example, if you set this option to (member=uid={1})for the user janedoe,
the search filter becomes (member=uid=janedoe) after string substitution. It matches all role entries that have a member attribute equal to uid=janedoe under the subtree
selected by the roleBase.
RoleSearchSubtree:
allOf:
- $ref: "#/components/schemas/__boolean"
- xml:
name: roleSearchSubtree
description: The directory search scope for the role. If set to true, scope is to search the entire subtree.
ServiceAccountPassword:
allOf:
- $ref: "#/components/schemas/__string"
- xml:
name: serviceAccountPassword
description: |-
Service account password. A service account is an account in your LDAP server that has access to initiate a connection. For example, cn=admin,dc=corp, dc=example,
dc=com.
ServiceAccountUsername:
allOf:
- $ref: "#/components/schemas/__string"
- xml:
name: serviceAccountUsername
description: |-
Service account username. A service account is an account in your LDAP server that has access to initiate a connection. For example, cn=admin,dc=corp, dc=example,
dc=com.
UserBase:
allOf:
- $ref: "#/components/schemas/__string"
- xml:
name: userBase
description: |-
Select a particular subtree of the directory information tree (DIT) to search for user entries. The subtree is specified by a DN, which specifies the base node of the subtree. For example, by setting this option to ou=Users,ou=corp, dc=corp,
dc=example, dc=com, the search for user entries is restricted to the subtree beneath ou=Users, ou=corp, dc=corp, dc=example, dc=com.
UserRoleName:
allOf:
- $ref: "#/components/schemas/__string"
- xml:
name: userRoleName
description: Specifies the name of the LDAP attribute for the user group membership.
UserSearchMatching:
allOf:
- $ref: "#/components/schemas/__string"
- xml:
name: userSearchMatching
description: |-
The LDAP search filter used to find users within the userBase. The client's username is substituted into the {0} placeholder in the search filter. For example, if this option is set to (uid={0}) and the received username is janedoe, the search filter becomes (uid=janedoe) after string substitution. It will result in matching an entry like uid=janedoe, ou=Users,ou=corp, dc=corp, dc=example,
dc=com.
UserSearchSubtree:
allOf:
- $ref: "#/components/schemas/__boolean"
- xml:
name: userSearchSubtree
description: The directory search scope for the user. If set to true, scope is to search the entire subtree.
logs:
description: The list of information about logs to be enabled for the specified broker.
type: object
properties:
Audit:
allOf:
- $ref: "#/components/schemas/__boolean"
- xml:
name: audit
description: Enables audit logging. Every user management action made using JMX or the ActiveMQ Web Console is logged. Does not apply to RabbitMQ brokers.
General:
allOf:
- $ref: "#/components/schemas/__boolean"
- xml:
name: general
description: Enables general logging.
maintenanceWindowStartTime:
description: The scheduled time period relative to UTC during which Amazon MQ begins to apply pending updates or patches to the broker.
type: object
properties:
DayOfWeek:
allOf:
- $ref: "#/components/schemas/DayOfWeek"
- xml:
name: dayOfWeek
description: Required. The day of the week.
TimeOfDay:
allOf:
- $ref: "#/components/schemas/__string"
- xml:
name: timeOfDay
description: Required. The time, in 24-hour format.
TimeZone:
allOf:
- $ref: "#/components/schemas/__string"
- xml:
name: timeZone
description: The time zone, UTC by default, in either the Country/City format, or the UTC offset format.
publiclyAccessible:
description: Enables connections from applications outside of the VPC that hosts the broker's subnets. Set to false by default, if no value is provided.
type: boolean
securityGroups:
description: The list of rules (1 minimum, 125 maximum) that authorize connections to brokers.
type: array
items:
$ref: "#/components/schemas/__string"
storageType:
description: <p>The broker's storage type.</p> <important><p>EFS is not supported for RabbitMQ engine type.</p></important>
type: string
enum:
- EBS
- EFS
subnetIds:
description: <p>The list of groups that define which subnets and IP ranges the broker can use from different Availability Zones. If you specify more than one subnet, the subnets must
be in different Availability Zones. Amazon MQ will not be able to create VPC endpoints for your broker with multiple subnets in the same Availability Zone. A SINGLE_INSTANCE
deployment requires one subnet (for example, the default subnet). An ACTIVE_STANDBY_MULTI_AZ Amazon MQ for ActiveMQ deployment requires two subnets. A CLUSTER_MULTI_AZ Amazon MQ
for RabbitMQ deployment has no subnet requirements when deployed with public accessibility. Deployment without public accessibility requires at least one subnet.</p>
<important><p>If you specify subnets in a <a href="https://docs.aws.amazon.com/vpc/latest/userguide/vpc-sharing.html">shared VPC</a> for a RabbitMQ broker, the associated VPC to
which the specified subnets belong must be owned by your AWS account. Amazon MQ will not be able to create VPC endpoints in VPCs that are not owned by your AWS
account.</p></important>
type: array
items:
$ref: "#/components/schemas/__string"
tags:
description: Create tags when creating the broker.
type: object
additionalProperties:
$ref: "#/components/schemas/__string"
users:
description: <p>Required. The list of broker users (persons or applications) who can access queues and topics. This value can contain only alphanumeric characters, dashes, periods,
underscores, and tildes (- . _ ~). This value must be 2-100 characters long.</p> <important><title>Amazon MQ for RabbitMQ</title> <p>When you create an Amazon MQ for RabbitMQ
broker, one and only one administrative user is accepted and created when a broker is first provisioned. All subsequent broker users are created by making RabbitMQ API calls
directly to brokers or via the RabbitMQ web console.</p></important>
type: array
items:
$ref: "#/components/schemas/User"
summary: Amazon MQ Create Broker
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
parameters:
- $ref: "#/components/parameters/X-Amz-Content-Sha256"
- $ref: "#/components/parameters/X-Amz-Date"
- $ref: "#/components/parameters/X-Amz-Algorithm"
- $ref: "#/components/parameters/X-Amz-Credential"
- $ref: "#/components/parameters/X-Amz-Security-Token"
- $ref: "#/components/parameters/X-Amz-Signature"
- $ref: "#/components/parameters/X-Amz-SignedHeaders"
get:
operationId: ListBrokers
description: Returns a list of all brokers.
responses:
"200":
description: Success
content:
application/json:
schema:
$ref: "#/components/schemas/ListBrokersResponse"
examples:
ListBrokers200Example:
summary: Default ListBrokers 200 response
x-microcks-default: true
value:
BrokerSummaries: example-value
NextToken: example-value
"480":
description: BadRequestException
content:
application/json:
schema:
$ref: "#/components/schemas/BadRequestException"
examples:
ListBrokers480Example:
summary: Default ListBrokers 480 response
x-microcks-default: true
value: {}
"481":
description: InternalServerErrorException
content:
application/json:
schema:
$ref: "#/components/schemas/InternalServerErrorException"
examples:
ListBrokers481Example:
summary: Default ListBrokers 481 response
x-microcks-default: true
value: {}
"482":
description: ForbiddenException
content:
application/json:
schema:
$ref: "#/components/schemas/ForbiddenException"
examples:
ListBrokers482Example:
summary: Default ListBrokers 482 response
x-microcks-default: true
value: {}
parameters:
- name: maxResults
in: query
required: false
description: The maximum number of brokers that Amazon MQ can return per page (20 by default). This value must be an integer from 5 to 100.
schema:
type: integer
minimum: 1
maximum: 100
- name: nextToken
in: query
required: false
description: The token that specifies the next page of results Amazon MQ should return. To request the first page, leave nextToken empty.
schema:
type: string
- name: MaxResults
in: query
schema:
type: string
description: Pagination limit
required: false
- name: NextToken
in: query
schema:
type: string
description: Pagination token
required: false
summary: Amazon MQ List Brokers
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/v1/configurations:
post:
operationId: CreateConfiguration
description: Creates a new configuration for the specified configuration name. Amazon MQ uses the default configuration (the engine type and version).
responses:
"200":
description: Success
content:
application/json:
schema:
$ref: "#/components/schemas/CreateConfigurationResponse"
examples:
CreateConfiguration200Example:
summary: Default CreateConfiguration 200 response
x-microcks-default: true
value:
Arn: arn:aws:service:us-east-1:123456789012:resource/example
AuthenticationStrategy: example-value
Created: example-value
Id: id-abc123
LatestRevision: example-value
"480":
description: BadRequestException
content:
application/json:
schema:
$ref: "#/components/schemas/BadRequestException"
examples:
CreateConfiguration480Example:
summary: Default CreateConfiguration 480 response
x-microcks-default: true
value: {}
"481":
description: InternalServerErrorException
content:
application/json:
schema:
$ref: "#/components/schemas/InternalServerErrorException"
examples:
CreateConfiguration481Example:
summary: Default CreateConfiguration 481 response
x-microcks-default: true
value: {}
"482":
description: ConflictException
content:
application/json:
schema:
$ref: "#/components/schemas/ConflictException"
examples:
CreateConfiguration482Example:
summary: Default CreateConfiguration 482 response
x-microcks-default: true
value: {}
"483":
description: ForbiddenException
content:
application/json:
schema:
$ref: "#/components/schemas/ForbiddenException"
examples:
CreateConfiguration483Example:
summary: Default CreateConfiguration 483 response
x-microcks-default: true
value: {}
parameters: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- engineType
- engineVersion
- name
properties:
authenticationStrategy:
description: Optional. The authentication strategy used to secure the broker. The default is SIMPLE.
type: string
enum:
- SIMPLE
- LDAP
engineType:
description: The type of broker engine. Amazon MQ supports ActiveMQ and RabbitMQ.
type: string
enum:
- ACTIVEMQ
- RABBITMQ
engineVersion:
description: Required. The broker engine's version. For a list of supported engine versions, see <a
href="https://docs.aws.amazon.com//amazon-mq/latest/developer-guide/broker-engine.html">Supported engines</a>.
type: string
name:
description: Required. The name of the configuration. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be
1-150 characters long.
type: string
tags:
description: Create tags when creating the configuration.
type: object
additionalProperties:
$ref: "#/components/schemas/__string"
summary: Amazon MQ Create Configuration
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
parameters:
- $ref: "#/components/parameters/X-Amz-Content-Sha256"
- $ref: "#/components/parameters/X-Amz-Date"
- $ref: "#/components/parameters/X-Amz-Algorithm"
- $ref: "#/components/parameters/X-Amz-Credential"
- $ref: "#/components/parameters/X-Amz-Security-Token"
- $ref: "#/components/parameters/X-Amz-Signature"
- $ref: "#/components/parameters/X-Amz-SignedHeaders"
get:
operationId: ListConfigurations
description: Returns a list of all configurations.
responses:
"200":
description: Success
content:
application/json:
schema:
$ref: "#/components/schemas/ListConfigurationsResponse"
examples:
ListConfigurations200Example:
summary: Default ListConfigurations 200 response
x-microcks-default: true
value:
Configurations: example-value
MaxResults: example-value
NextToken: example-value
"480":
description: BadRequestException
content:
application/json:
schema:
$ref: "#/components/schemas/BadRequestException"
examples:
ListConfigurations480Example:
summary: Default ListConfigurations 480 response
x-microcks-default: true
value: {}
"481":
description: InternalServerErrorException
content:
application/json:
schema:
$ref: "#/components/schemas/InternalServerErrorException"
examples:
ListConfigurations481Example:
summary: Default ListConfigurations 481 response
x-microcks-default: true
value: {}
"482":
description: ForbiddenException
content:
application/json:
schema:
$ref: "#/components/schemas/ForbiddenException"
examples:
ListConfigurations482Example:
summary: Default ListConfigurations 482 response
x-microcks-default: true
value: {}
parameters:
- name: maxResults
in: query
required: false
description: The maximum num
# --- truncated at 32 KB (175 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/amazon-mq/refs/heads/main/openapi/amazon-mq-openapi-original.yml