@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api AWS Global Accelerator
@version 2018-08-08
@auth AWS SigV4
@endpoints 56
@hint download_for_search
@toc root(56)

@endpoint POST /
@required {EndpointConfigurations: [CustomRoutingEndpointConfiguration], EndpointGroupArn: str}
@returns(200) {EndpointDescriptions: [CustomRoutingEndpointDescription]?, EndpointGroupArn: str?}

@endpoint POST /
@required {EndpointConfigurations: [EndpointConfiguration], EndpointGroupArn: str}
@returns(200) {EndpointDescriptions: [EndpointDescription]?, EndpointGroupArn: str?}

@endpoint POST /
@required {Cidr: str}
@returns(200) {ByoipCidr: ByoipCidr?{Cidr: str?, State: str?, Events: [ByoipCidrEvent]?}}

@endpoint POST /
@required {EndpointGroupArn: str, EndpointId: str}
@optional {DestinationAddresses: [str], DestinationPorts: [int], AllowAllTrafficToEndpoint: bool}

@endpoint POST /
@required {Name: str, IdempotencyToken: str}
@optional {IpAddressType: str, IpAddresses: [str], Enabled: bool, Tags: [Tag]}
@returns(200) {Accelerator: Accelerator?{AcceleratorArn: str?, Name: str?, IpAddressType: str?, Enabled: bool?, IpSets: [IpSet]?, DnsName: str?, Status: str?, CreatedTime: str(timestamp)?, LastModifiedTime: str(timestamp)?, DualStackDnsName: str?, Events: [AcceleratorEvent]?}}

@endpoint POST /
@required {Name: str, IdempotencyToken: str}
@optional {Principals: [str], Resources: [Resource], Tags: [Tag]}
@returns(200) {CrossAccountAttachment: Attachment?{AttachmentArn: str?, Name: str?, Principals: [str]?, Resources: [Resource]?, LastModifiedTime: str(timestamp)?, CreatedTime: str(timestamp)?}}

@endpoint POST /
@required {Name: str, IdempotencyToken: str}
@optional {IpAddressType: str, IpAddresses: [str], Enabled: bool, Tags: [Tag]}
@returns(200) {Accelerator: CustomRoutingAccelerator?{AcceleratorArn: str?, Name: str?, IpAddressType: str?, Enabled: bool?, IpSets: [IpSet]?, DnsName: str?, Status: str?, CreatedTime: str(timestamp)?, LastModifiedTime: str(timestamp)?}}

@endpoint POST /
@required {ListenerArn: str, EndpointGroupRegion: str, DestinationConfigurations: [CustomRoutingDestinationConfiguration], IdempotencyToken: str}
@returns(200) {EndpointGroup: CustomRoutingEndpointGroup?{EndpointGroupArn: str?, EndpointGroupRegion: str?, DestinationDescriptions: [CustomRoutingDestinationDescription]?, EndpointDescriptions: [CustomRoutingEndpointDescription]?}}

@endpoint POST /
@required {AcceleratorArn: str, PortRanges: [PortRange], IdempotencyToken: str}
@returns(200) {Listener: CustomRoutingListener?{ListenerArn: str?, PortRanges: [PortRange]?}}

@endpoint POST /
@required {ListenerArn: str, EndpointGroupRegion: str, IdempotencyToken: str}
@optional {EndpointConfigurations: [EndpointConfiguration], TrafficDialPercentage: num(f32), HealthCheckPort: int, HealthCheckProtocol: str, HealthCheckPath: str, HealthCheckIntervalSeconds: int, ThresholdCount: int, PortOverrides: [PortOverride]}
@returns(200) {EndpointGroup: EndpointGroup?{EndpointGroupArn: str?, EndpointGroupRegion: str?, EndpointDescriptions: [EndpointDescription]?, TrafficDialPercentage: num(f32)?, HealthCheckPort: int?, HealthCheckProtocol: str?, HealthCheckPath: str?, HealthCheckIntervalSeconds: int?, ThresholdCount: int?, PortOverrides: [PortOverride]?}}

@endpoint POST /
@required {AcceleratorArn: str, PortRanges: [PortRange], Protocol: str, IdempotencyToken: str}
@optional {ClientAffinity: str}
@returns(200) {Listener: Listener?{ListenerArn: str?, PortRanges: [PortRange]?, Protocol: str?, ClientAffinity: str?}}

@endpoint POST /
@required {AcceleratorArn: str}

@endpoint POST /
@required {AttachmentArn: str}

@endpoint POST /
@required {AcceleratorArn: str}

@endpoint POST /
@required {EndpointGroupArn: str}

@endpoint POST /
@required {ListenerArn: str}

@endpoint POST /
@required {EndpointGroupArn: str}

@endpoint POST /
@required {ListenerArn: str}

@endpoint POST /
@required {EndpointGroupArn: str, EndpointId: str}
@optional {DestinationAddresses: [str], DestinationPorts: [int], DenyAllTrafficToEndpoint: bool}

@endpoint POST /
@required {Cidr: str}
@returns(200) {ByoipCidr: ByoipCidr?{Cidr: str?, State: str?, Events: [ByoipCidrEvent]?}}

@endpoint POST /
@required {AcceleratorArn: str}
@returns(200) {Accelerator: Accelerator?{AcceleratorArn: str?, Name: str?, IpAddressType: str?, Enabled: bool?, IpSets: [IpSet]?, DnsName: str?, Status: str?, CreatedTime: str(timestamp)?, LastModifiedTime: str(timestamp)?, DualStackDnsName: str?, Events: [AcceleratorEvent]?}}

@endpoint POST /
@required {AcceleratorArn: str}
@returns(200) {AcceleratorAttributes: AcceleratorAttributes?{FlowLogsEnabled: bool?, FlowLogsS3Bucket: str?, FlowLogsS3Prefix: str?}}

@endpoint POST /
@required {AttachmentArn: str}
@returns(200) {CrossAccountAttachment: Attachment?{AttachmentArn: str?, Name: str?, Principals: [str]?, Resources: [Resource]?, LastModifiedTime: str(timestamp)?, CreatedTime: str(timestamp)?}}

@endpoint POST /
@required {AcceleratorArn: str}
@returns(200) {Accelerator: CustomRoutingAccelerator?{AcceleratorArn: str?, Name: str?, IpAddressType: str?, Enabled: bool?, IpSets: [IpSet]?, DnsName: str?, Status: str?, CreatedTime: str(timestamp)?, LastModifiedTime: str(timestamp)?}}

@endpoint POST /
@required {AcceleratorArn: str}
@returns(200) {AcceleratorAttributes: CustomRoutingAcceleratorAttributes?{FlowLogsEnabled: bool?, FlowLogsS3Bucket: str?, FlowLogsS3Prefix: str?}}

@endpoint POST /
@required {EndpointGroupArn: str}
@returns(200) {EndpointGroup: CustomRoutingEndpointGroup?{EndpointGroupArn: str?, EndpointGroupRegion: str?, DestinationDescriptions: [CustomRoutingDestinationDescription]?, EndpointDescriptions: [CustomRoutingEndpointDescription]?}}

@endpoint POST /
@required {ListenerArn: str}
@returns(200) {Listener: CustomRoutingListener?{ListenerArn: str?, PortRanges: [PortRange]?}}

@endpoint POST /
@required {EndpointGroupArn: str}
@returns(200) {EndpointGroup: EndpointGroup?{EndpointGroupArn: str?, EndpointGroupRegion: str?, EndpointDescriptions: [EndpointDescription]?, TrafficDialPercentage: num(f32)?, HealthCheckPort: int?, HealthCheckProtocol: str?, HealthCheckPath: str?, HealthCheckIntervalSeconds: int?, ThresholdCount: int?, PortOverrides: [PortOverride]?}}

@endpoint POST /
@required {ListenerArn: str}
@returns(200) {Listener: Listener?{ListenerArn: str?, PortRanges: [PortRange]?, Protocol: str?, ClientAffinity: str?}}

@endpoint POST /
@optional {MaxResults: int, NextToken: str}
@returns(200) {Accelerators: [Accelerator]?, NextToken: str?}

@endpoint POST /
@optional {MaxResults: int, NextToken: str}
@returns(200) {ByoipCidrs: [ByoipCidr]?, NextToken: str?}

@endpoint POST /
@optional {MaxResults: int, NextToken: str}
@returns(200) {CrossAccountAttachments: [Attachment]?, NextToken: str?}

@endpoint POST /
@returns(200) {ResourceOwnerAwsAccountIds: [str]?}

@endpoint POST /
@required {ResourceOwnerAwsAccountId: str}
@optional {AcceleratorArn: str, MaxResults: int, NextToken: str}
@returns(200) {CrossAccountResources: [CrossAccountResource]?, NextToken: str?}

@endpoint POST /
@optional {MaxResults: int, NextToken: str}
@returns(200) {Accelerators: [CustomRoutingAccelerator]?, NextToken: str?}

@endpoint POST /
@required {ListenerArn: str}
@optional {MaxResults: int, NextToken: str}
@returns(200) {EndpointGroups: [CustomRoutingEndpointGroup]?, NextToken: str?}

@endpoint POST /
@required {AcceleratorArn: str}
@optional {MaxResults: int, NextToken: str}
@returns(200) {Listeners: [CustomRoutingListener]?, NextToken: str?}

@endpoint POST /
@required {AcceleratorArn: str}
@optional {EndpointGroupArn: str, MaxResults: int, NextToken: str}
@returns(200) {PortMappings: [PortMapping]?, NextToken: str?}

@endpoint POST /
@required {EndpointId: str, DestinationAddress: str}
@optional {MaxResults: int, NextToken: str}
@returns(200) {DestinationPortMappings: [DestinationPortMapping]?, NextToken: str?}

@endpoint POST /
@required {ListenerArn: str}
@optional {MaxResults: int, NextToken: str}
@returns(200) {EndpointGroups: [EndpointGroup]?, NextToken: str?}

@endpoint POST /
@required {AcceleratorArn: str}
@optional {MaxResults: int, NextToken: str}
@returns(200) {Listeners: [Listener]?, NextToken: str?}

@endpoint POST /
@required {ResourceArn: str}
@returns(200) {Tags: [Tag]?}

@endpoint POST /
@required {Cidr: str, CidrAuthorizationContext: CidrAuthorizationContext}
@returns(200) {ByoipCidr: ByoipCidr?{Cidr: str?, State: str?, Events: [ByoipCidrEvent]?}}

@endpoint POST /
@required {EndpointIds: [str], EndpointGroupArn: str}

@endpoint POST /
@required {EndpointIdentifiers: [EndpointIdentifier], EndpointGroupArn: str}

@endpoint POST /
@required {ResourceArn: str, Tags: [Tag]}

@endpoint POST /
@required {ResourceArn: str, TagKeys: [str]}

@endpoint POST /
@required {AcceleratorArn: str}
@optional {Name: str, IpAddressType: str, IpAddresses: [str], Enabled: bool}
@returns(200) {Accelerator: Accelerator?{AcceleratorArn: str?, Name: str?, IpAddressType: str?, Enabled: bool?, IpSets: [IpSet]?, DnsName: str?, Status: str?, CreatedTime: str(timestamp)?, LastModifiedTime: str(timestamp)?, DualStackDnsName: str?, Events: [AcceleratorEvent]?}}

@endpoint POST /
@required {AcceleratorArn: str}
@optional {FlowLogsEnabled: bool, FlowLogsS3Bucket: str, FlowLogsS3Prefix: str}
@returns(200) {AcceleratorAttributes: AcceleratorAttributes?{FlowLogsEnabled: bool?, FlowLogsS3Bucket: str?, FlowLogsS3Prefix: str?}}

@endpoint POST /
@required {AttachmentArn: str}
@optional {Name: str, AddPrincipals: [str], RemovePrincipals: [str], AddResources: [Resource], RemoveResources: [Resource]}
@returns(200) {CrossAccountAttachment: Attachment?{AttachmentArn: str?, Name: str?, Principals: [str]?, Resources: [Resource]?, LastModifiedTime: str(timestamp)?, CreatedTime: str(timestamp)?}}

@endpoint POST /
@required {AcceleratorArn: str}
@optional {Name: str, IpAddressType: str, IpAddresses: [str], Enabled: bool}
@returns(200) {Accelerator: CustomRoutingAccelerator?{AcceleratorArn: str?, Name: str?, IpAddressType: str?, Enabled: bool?, IpSets: [IpSet]?, DnsName: str?, Status: str?, CreatedTime: str(timestamp)?, LastModifiedTime: str(timestamp)?}}

@endpoint POST /
@required {AcceleratorArn: str}
@optional {FlowLogsEnabled: bool, FlowLogsS3Bucket: str, FlowLogsS3Prefix: str}
@returns(200) {AcceleratorAttributes: CustomRoutingAcceleratorAttributes?{FlowLogsEnabled: bool?, FlowLogsS3Bucket: str?, FlowLogsS3Prefix: str?}}

@endpoint POST /
@required {ListenerArn: str, PortRanges: [PortRange]}
@returns(200) {Listener: CustomRoutingListener?{ListenerArn: str?, PortRanges: [PortRange]?}}

@endpoint POST /
@required {EndpointGroupArn: str}
@optional {EndpointConfigurations: [EndpointConfiguration], TrafficDialPercentage: num(f32), HealthCheckPort: int, HealthCheckProtocol: str, HealthCheckPath: str, HealthCheckIntervalSeconds: int, ThresholdCount: int, PortOverrides: [PortOverride]}
@returns(200) {EndpointGroup: EndpointGroup?{EndpointGroupArn: str?, EndpointGroupRegion: str?, EndpointDescriptions: [EndpointDescription]?, TrafficDialPercentage: num(f32)?, HealthCheckPort: int?, HealthCheckProtocol: str?, HealthCheckPath: str?, HealthCheckIntervalSeconds: int?, ThresholdCount: int?, PortOverrides: [PortOverride]?}}

@endpoint POST /
@required {ListenerArn: str}
@optional {PortRanges: [PortRange], Protocol: str, ClientAffinity: str}
@returns(200) {Listener: Listener?{ListenerArn: str?, PortRanges: [PortRange]?, Protocol: str?, ClientAffinity: str?}}

@endpoint POST /
@required {Cidr: str}
@returns(200) {ByoipCidr: ByoipCidr?{Cidr: str?, State: str?, Events: [ByoipCidrEvent]?}}

@end
