@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api TV API
@base https://tv.api.pressassociation.io/v2
@version 2.0
@auth ApiKey apikey in header
@endpoints 18
@toc platform(3), channel(2), asset(3), contributor(2), schedule(1), feature-type(1), feature(2), catalogue(4)

@group platform
@endpoint GET /platform
@optional {aliases: any}
@returns(200)

@endpoint GET /platform/{platformId}
@required {platformId: any}
@returns(200)

@endpoint GET /platform/{platformId}/region
@required {platformId: any}
@optional {aliases: any}
@returns(200)

@endgroup

@group channel
@endpoint GET /channel
@optional {platformId: any, regionId: any, aliases: any, date: any, scheduleStart: any, scheduleEnd: any, scheduleUpdatedSince: any}
@returns(200)

@endpoint GET /channel/{channelId}
@required {channelId: any}
@optional {aliases: any}
@returns(200)

@endgroup

@group asset
@endpoint GET /asset
@optional {updatedAfter: any, limit: any, aliases: any}
@returns(200)

@endpoint GET /asset/{assetId}
@required {assetId: any}
@optional {aliases: any}
@returns(200)

@endpoint GET /asset/{assetId}/contributor
@required {assetId: any}
@optional {aliases: any}
@returns(200)

@endgroup

@group contributor
@endpoint GET /contributor
@optional {updatedAfter: any, limit: any, aliases: any}
@returns(200)

@endpoint GET /contributor/{contributorId}
@required {contributorId: any}
@optional {aliases: any}
@returns(200)

@endgroup

@group schedule
@endpoint GET /schedule
@required {channelId: any, start: any}
@optional {end: any, aliases: any}
@returns(200)

@endgroup

@group feature-type
@endpoint GET /feature-type
@returns(200)

@endgroup

@group feature
@endpoint GET /feature
@optional {type: any, date: any, start: any, end: any}
@returns(200)

@endpoint GET /feature/{featureId}
@required {featureId: any}
@returns(200)

@endgroup

@group catalogue
@endpoint GET /catalogue
@returns(200)

@endpoint GET /catalogue/{catalogueId}
@required {catalogueId: any}
@returns(200)

@endpoint GET /catalogue/{catalogueId}/asset
@required {catalogueId: any}
@optional {title: any, start: any, end: any, updatedAfter: any, limit: any, aliases: any}
@returns(200)

@endpoint GET /catalogue/{catalogueId}/asset/{assetId}
@required {catalogueId: any, assetId: any}
@returns(200)

@endgroup

@end
