@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api Amazon Connect Participant Service
@version 2018-09-07
@auth AWS SigV4
@endpoints 9
@toc participant(9)

@endpoint POST /participant/complete-attachment-upload
@required {X-Amz-Bearer: str, AttachmentIds: [str], ClientToken: str}

@endpoint POST /participant/connection
@required {X-Amz-Bearer: str}
@optional {Type: [str], ConnectParticipant: bool}
@returns(200) {Websocket: Websocket?{Url: str?, ConnectionExpiry: str?}, ConnectionCredentials: ConnectionCredentials?{ConnectionToken: str?, Expiry: str?}}

@endpoint GET /participant/views/{ViewToken}
@required {ViewToken: str, X-Amz-Bearer: str}
@returns(200) {View: View?{Id: str?, Arn: str?, Name: str?, Version: int?, Content: ViewContent?{InputSchema: str?, Template: str?, Actions: [str]?}}}

@endpoint POST /participant/disconnect
@required {X-Amz-Bearer: str}
@optional {ClientToken: str}

@endpoint POST /participant/attachment
@required {X-Amz-Bearer: str, AttachmentId: str}
@returns(200) {Url: str?, UrlExpiry: str?}

@endpoint POST /participant/transcript
@required {X-Amz-Bearer: str}
@optional {ContactId: str, MaxResults: int, NextToken: str, ScanDirection: str, SortOrder: str, StartPosition: StartPosition}
@returns(200) {InitialContactId: str?, Transcript: [Item]?, NextToken: str?}

@endpoint POST /participant/event
@required {X-Amz-Bearer: str, ContentType: str}
@optional {Content: str, ClientToken: str}
@returns(200) {Id: str?, AbsoluteTime: str?}

@endpoint POST /participant/message
@required {X-Amz-Bearer: str, ContentType: str, Content: str}
@optional {ClientToken: str}
@returns(200) {Id: str?, AbsoluteTime: str?}

@endpoint POST /participant/start-attachment-upload
@required {X-Amz-Bearer: str, ContentType: str, AttachmentSizeInBytes: int(i64), AttachmentName: str, ClientToken: str}
@returns(200) {AttachmentId: str?, UploadMetadata: UploadMetadata?{Url: str?, UrlExpiry: str?, HeadersToInclude: map<str,str>?}}

@end
