@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api AWS IoT Secure Tunneling
@version 2018-10-05
@auth AWS SigV4
@endpoints 8
@toc root(8)

@endpoint POST /
@required {tunnelId: str}
@optional {delete: bool}

@endpoint POST /
@required {tunnelId: str}
@returns(200) {tunnel: Tunnel?{tunnelId: str?, tunnelArn: str?, status: str?, sourceConnectionState: ConnectionState?{status: str?, lastUpdatedAt: str(timestamp)?}, destinationConnectionState: ConnectionState?{status: str?, lastUpdatedAt: str(timestamp)?}, description: str?, destinationConfig: DestinationConfig?{thingName: str?, services: [str]}, timeoutConfig: TimeoutConfig?{maxLifetimeTimeoutMinutes: int?}, tags: [Tag]?, createdAt: str(timestamp)?, lastUpdatedAt: str(timestamp)?}}

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

@endpoint POST /
@optional {thingName: str, maxResults: int, nextToken: str}
@returns(200) {tunnelSummaries: [TunnelSummary]?, nextToken: str?}

@endpoint POST /
@optional {description: str, tags: [Tag], destinationConfig: DestinationConfig, timeoutConfig: TimeoutConfig}
@returns(200) {tunnelId: str?, tunnelArn: str?, sourceAccessToken: str?, destinationAccessToken: str?}

@endpoint POST /
@required {tunnelId: str, clientMode: str}
@optional {destinationConfig: DestinationConfig}
@returns(200) {tunnelArn: str?, sourceAccessToken: str?, destinationAccessToken: str?}

@endpoint POST /
@required {resourceArn: str, tags: [Tag]}

@endpoint POST /
@required {resourceArn: str, tagKeys: [str]}

@end
