@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api Amazon WorkLink
@version 2018-09-25
@auth AWS SigV4
@endpoints 33
@hint download_for_search
@toc associateDomain(1), associateWebsiteAuthorizationProvider(1), associateWebsiteCertificateAuthority(1), createFleet(1), deleteFleet(1), describeAuditStreamConfiguration(1), describeCompanyNetworkConfiguration(1), describeDevice(1), describeDevicePolicyConfiguration(1), describeDomain(1), describeFleetMetadata(1), describeIdentityProviderConfiguration(1), describeWebsiteCertificateAuthority(1), disassociateDomain(1), disassociateWebsiteAuthorizationProvider(1), disassociateWebsiteCertificateAuthority(1), listDevices(1), listDomains(1), listFleets(1), tags(3), listWebsiteAuthorizationProviders(1), listWebsiteCertificateAuthorities(1), restoreDomainAccess(1), revokeDomainAccess(1), signOutUser(1), updateAuditStreamConfiguration(1), updateCompanyNetworkConfiguration(1), updateDevicePolicyConfiguration(1), updateDomainMetadata(1), UpdateFleetMetadata(1), updateIdentityProviderConfiguration(1)

@group associateDomain
@endpoint POST /associateDomain
@required {FleetArn: str, DomainName: str, AcmCertificateArn: str}
@optional {DisplayName: str}

@endgroup

@group associateWebsiteAuthorizationProvider
@endpoint POST /associateWebsiteAuthorizationProvider
@required {FleetArn: str, AuthorizationProviderType: str}
@optional {DomainName: str}
@returns(200) {AuthorizationProviderId: str?}

@endgroup

@group associateWebsiteCertificateAuthority
@endpoint POST /associateWebsiteCertificateAuthority
@required {FleetArn: str, Certificate: str}
@optional {DisplayName: str}
@returns(200) {WebsiteCaId: str?}

@endgroup

@group createFleet
@endpoint POST /createFleet
@required {FleetName: str}
@optional {DisplayName: str, OptimizeForEndUserLocation: bool, Tags: map<str,str>}
@returns(200) {FleetArn: str?}

@endgroup

@group deleteFleet
@endpoint POST /deleteFleet
@required {FleetArn: str}

@endgroup

@group describeAuditStreamConfiguration
@endpoint POST /describeAuditStreamConfiguration
@required {FleetArn: str}
@returns(200) {AuditStreamArn: str?}

@endgroup

@group describeCompanyNetworkConfiguration
@endpoint POST /describeCompanyNetworkConfiguration
@required {FleetArn: str}
@returns(200) {VpcId: str?, SubnetIds: [str]?, SecurityGroupIds: [str]?}

@endgroup

@group describeDevice
@endpoint POST /describeDevice
@required {FleetArn: str, DeviceId: str}
@returns(200) {Status: str?, Model: str?, Manufacturer: str?, OperatingSystem: str?, OperatingSystemVersion: str?, PatchLevel: str?, FirstAccessedTime: str(timestamp)?, LastAccessedTime: str(timestamp)?, Username: str?}

@endgroup

@group describeDevicePolicyConfiguration
@endpoint POST /describeDevicePolicyConfiguration
@required {FleetArn: str}
@returns(200) {DeviceCaCertificate: str?}

@endgroup

@group describeDomain
@endpoint POST /describeDomain
@required {FleetArn: str, DomainName: str}
@returns(200) {DomainName: str?, DisplayName: str?, CreatedTime: str(timestamp)?, DomainStatus: str?, AcmCertificateArn: str?}

@endgroup

@group describeFleetMetadata
@endpoint POST /describeFleetMetadata
@required {FleetArn: str}
@returns(200) {CreatedTime: str(timestamp)?, LastUpdatedTime: str(timestamp)?, FleetName: str?, DisplayName: str?, OptimizeForEndUserLocation: bool?, CompanyCode: str?, FleetStatus: str?, Tags: map<str,str>?}

@endgroup

@group describeIdentityProviderConfiguration
@endpoint POST /describeIdentityProviderConfiguration
@required {FleetArn: str}
@returns(200) {IdentityProviderType: str?, ServiceProviderSamlMetadata: str?, IdentityProviderSamlMetadata: str?}

@endgroup

@group describeWebsiteCertificateAuthority
@endpoint POST /describeWebsiteCertificateAuthority
@required {FleetArn: str, WebsiteCaId: str}
@returns(200) {Certificate: str?, CreatedTime: str(timestamp)?, DisplayName: str?}

@endgroup

@group disassociateDomain
@endpoint POST /disassociateDomain
@required {FleetArn: str, DomainName: str}

@endgroup

@group disassociateWebsiteAuthorizationProvider
@endpoint POST /disassociateWebsiteAuthorizationProvider
@required {FleetArn: str, AuthorizationProviderId: str}

@endgroup

@group disassociateWebsiteCertificateAuthority
@endpoint POST /disassociateWebsiteCertificateAuthority
@required {FleetArn: str, WebsiteCaId: str}

@endgroup

@group listDevices
@endpoint POST /listDevices
@required {FleetArn: str}
@optional {NextToken: str, MaxResults: int}
@returns(200) {Devices: [DeviceSummary]?, NextToken: str?}

@endgroup

@group listDomains
@endpoint POST /listDomains
@required {FleetArn: str}
@optional {NextToken: str, MaxResults: int}
@returns(200) {Domains: [DomainSummary]?, NextToken: str?}

@endgroup

@group listFleets
@endpoint POST /listFleets
@optional {NextToken: str, MaxResults: int}
@returns(200) {FleetSummaryList: [FleetSummary]?, NextToken: str?}

@endgroup

@group tags
@endpoint GET /tags/{ResourceArn}
@required {ResourceArn: str}
@returns(200) {Tags: map<str,str>?}

@endgroup

@group listWebsiteAuthorizationProviders
@endpoint POST /listWebsiteAuthorizationProviders
@required {FleetArn: str}
@optional {NextToken: str, MaxResults: int}
@returns(200) {WebsiteAuthorizationProviders: [WebsiteAuthorizationProviderSummary]?, NextToken: str?}

@endgroup

@group listWebsiteCertificateAuthorities
@endpoint POST /listWebsiteCertificateAuthorities
@required {FleetArn: str}
@optional {MaxResults: int, NextToken: str}
@returns(200) {WebsiteCertificateAuthorities: [WebsiteCaSummary]?, NextToken: str?}

@endgroup

@group restoreDomainAccess
@endpoint POST /restoreDomainAccess
@required {FleetArn: str, DomainName: str}

@endgroup

@group revokeDomainAccess
@endpoint POST /revokeDomainAccess
@required {FleetArn: str, DomainName: str}

@endgroup

@group signOutUser
@endpoint POST /signOutUser
@required {FleetArn: str, Username: str}

@endgroup

@group tags
@endpoint POST /tags/{ResourceArn}
@required {ResourceArn: str, Tags: map<str,str>}

@endpoint DELETE /tags/{ResourceArn}
@required {ResourceArn: str, tagKeys: [str]}

@endgroup

@group updateAuditStreamConfiguration
@endpoint POST /updateAuditStreamConfiguration
@required {FleetArn: str}
@optional {AuditStreamArn: str}

@endgroup

@group updateCompanyNetworkConfiguration
@endpoint POST /updateCompanyNetworkConfiguration
@required {FleetArn: str, VpcId: str, SubnetIds: [str], SecurityGroupIds: [str]}

@endgroup

@group updateDevicePolicyConfiguration
@endpoint POST /updateDevicePolicyConfiguration
@required {FleetArn: str}
@optional {DeviceCaCertificate: str}

@endgroup

@group updateDomainMetadata
@endpoint POST /updateDomainMetadata
@required {FleetArn: str, DomainName: str}
@optional {DisplayName: str}

@endgroup

@group UpdateFleetMetadata
@endpoint POST /UpdateFleetMetadata
@required {FleetArn: str}
@optional {DisplayName: str, OptimizeForEndUserLocation: bool}

@endgroup

@group updateIdentityProviderConfiguration
@endpoint POST /updateIdentityProviderConfiguration
@required {FleetArn: str, IdentityProviderType: str}
@optional {IdentityProviderSamlMetadata: str}

@endgroup

@end
