{"files":{"SKILL.md":"---\nname: aws-elemental-mediapackage-vod\ndescription: \"AWS Elemental MediaPackage VOD API skill. Use when working with AWS Elemental MediaPackage VOD for packaging_groups, assets, packaging_configurations. Covers 17 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# AWS Elemental MediaPackage VOD\nAPI version: 2018-11-07\n\n## Auth\nAWS SigV4\n\n## Base URL\nNot specified.\n\n## Setup\n1. Configure auth: AWS SigV4\n2. GET /assets -- returns a collection of mediapackage vod asset resources.\n3. POST /assets -- create first asset\n\n## Endpoints\n17 endpoints across 4 groups. See references/api-spec.lap for full details.\n\n### Packaging_groups\n| Method | Path | Description |\n|--------|------|-------------|\n| PUT | /packaging_groups/{id}/configure_logs | Changes the packaging group's properities to configure log subscription |\n| POST | /packaging_groups | Creates a new MediaPackage VOD PackagingGroup resource. |\n| DELETE | /packaging_groups/{id} | Deletes a MediaPackage VOD PackagingGroup resource. |\n| GET | /packaging_groups/{id} | Returns a description of a MediaPackage VOD PackagingGroup resource. |\n| GET | /packaging_groups | Returns a collection of MediaPackage VOD PackagingGroup resources. |\n| PUT | /packaging_groups/{id} | Updates a specific packaging group. You can't change the id attribute or any other system-generated attributes. |\n\n### Assets\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /assets | Creates a new MediaPackage VOD Asset resource. |\n| DELETE | /assets/{id} | Deletes an existing MediaPackage VOD Asset resource. |\n| GET | /assets/{id} | Returns a description of a MediaPackage VOD Asset resource. |\n| GET | /assets | Returns a collection of MediaPackage VOD Asset resources. |\n\n### Packaging_configurations\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /packaging_configurations | Creates a new MediaPackage VOD PackagingConfiguration resource. |\n| DELETE | /packaging_configurations/{id} | Deletes a MediaPackage VOD PackagingConfiguration resource. |\n| GET | /packaging_configurations/{id} | Returns a description of a MediaPackage VOD PackagingConfiguration resource. |\n| GET | /packaging_configurations | Returns a collection of MediaPackage VOD PackagingConfiguration resources. |\n\n### Tags\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /tags/{resource-arn} | Returns a list of the tags assigned to the specified resource. |\n| POST | /tags/{resource-arn} | Adds tags to the specified resource. You can specify one or more tags to add. |\n| DELETE | /tags/{resource-arn} | Removes tags from the specified resource. You can specify one or more tags to remove. |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"Create a asset?\" -> POST /assets\n- \"Create a packaging_configuration?\" -> POST /packaging_configurations\n- \"Create a packaging_group?\" -> POST /packaging_groups\n- \"Delete a asset?\" -> DELETE /assets/{id}\n- \"Delete a packaging_configuration?\" -> DELETE /packaging_configurations/{id}\n- \"Delete a packaging_group?\" -> DELETE /packaging_groups/{id}\n- \"Get asset details?\" -> GET /assets/{id}\n- \"Get packaging_configuration details?\" -> GET /packaging_configurations/{id}\n- \"Get packaging_group details?\" -> GET /packaging_groups/{id}\n- \"List all assets?\" -> GET /assets\n- \"List all packaging_configurations?\" -> GET /packaging_configurations\n- \"List all packaging_groups?\" -> GET /packaging_groups\n- \"Get tag details?\" -> GET /tags/{resource-arn}\n- \"Delete a tag?\" -> DELETE /tags/{resource-arn}\n- \"Update a packaging_group?\" -> PUT /packaging_groups/{id}\n- \"How to authenticate?\" -> See Auth section above\n\n## Response Tips\n- Check response schemas in references/api-spec.lap for field details\n- Create/update endpoints return the modified resource on success\n\n## References\n- Full spec: See references/api-spec.lap for complete endpoint details, parameter tables, and response schemas\n\n> Generated from the official API spec by [LAP](https://lap.sh)\n","references/api-spec.lap":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api AWS Elemental MediaPackage VOD\n@version 2018-11-07\n@auth AWS SigV4\n@endpoints 17\n@toc packaging_groups(6), assets(4), packaging_configurations(4), tags(3)\n\n@group packaging_groups\n@endpoint PUT /packaging_groups/{id}/configure_logs\n@desc Changes the packaging group's properities to configure log subscription\n@required {Id: str}\n@optional {EgressAccessLogs: EgressAccessLogs}\n@returns(200) {Arn: str?, Authorization: Authorization?{CdnIdentifierSecret: str, SecretsRoleArn: str}, CreatedAt: str?, DomainName: str?, EgressAccessLogs: EgressAccessLogs?{LogGroupName: str?}, Id: str?, Tags: map<str,str>?}\n\n@endgroup\n\n@group assets\n@endpoint POST /assets\n@desc Creates a new MediaPackage VOD Asset resource.\n@required {Id: str, PackagingGroupId: str, SourceArn: str, SourceRoleArn: str}\n@optional {ResourceId: str, Tags: map<str,str>}\n@returns(200) {Arn: str?, CreatedAt: str?, EgressEndpoints: [EgressEndpoint]?, Id: str?, PackagingGroupId: str?, ResourceId: str?, SourceArn: str?, SourceRoleArn: str?, Tags: map<str,str>?}\n\n@endgroup\n\n@group packaging_configurations\n@endpoint POST /packaging_configurations\n@desc Creates a new MediaPackage VOD PackagingConfiguration resource.\n@required {Id: str, PackagingGroupId: str}\n@optional {CmafPackage: CmafPackage, DashPackage: DashPackage, HlsPackage: HlsPackage, MssPackage: MssPackage, Tags: map<str,str>}\n@returns(200) {Arn: str?, CmafPackage: CmafPackage?{Encryption: CmafEncryption?{ConstantInitializationVector: str?, SpekeKeyProvider: SpekeKeyProvider{EncryptionContractConfiguration: EncryptionContractConfiguration?, RoleArn: str, SystemIds: [str], Url: str}}, HlsManifests: [HlsManifest], IncludeEncoderConfigurationInSegments: bool?, SegmentDurationSeconds: int?}, CreatedAt: str?, DashPackage: DashPackage?{DashManifests: [DashManifest], Encryption: DashEncryption?{SpekeKeyProvider: SpekeKeyProvider{EncryptionContractConfiguration: EncryptionContractConfiguration?, RoleArn: str, SystemIds: [str], Url: str}}, IncludeEncoderConfigurationInSegments: bool?, IncludeIframeOnlyStream: bool?, PeriodTriggers: [str]?, SegmentDurationSeconds: int?, SegmentTemplateFormat: str?}, HlsPackage: HlsPackage?{Encryption: HlsEncryption?{ConstantInitializationVector: str?, EncryptionMethod: str?, SpekeKeyProvider: SpekeKeyProvider{EncryptionContractConfiguration: EncryptionContractConfiguration?, RoleArn: str, SystemIds: [str], Url: str}}, HlsManifests: [HlsManifest], IncludeDvbSubtitles: bool?, SegmentDurationSeconds: int?, UseAudioRenditionGroup: bool?}, Id: str?, MssPackage: MssPackage?{Encryption: MssEncryption?{SpekeKeyProvider: SpekeKeyProvider{EncryptionContractConfiguration: EncryptionContractConfiguration?, RoleArn: str, SystemIds: [str], Url: str}}, MssManifests: [MssManifest], SegmentDurationSeconds: int?}, PackagingGroupId: str?, Tags: map<str,str>?}\n\n@endgroup\n\n@group packaging_groups\n@endpoint POST /packaging_groups\n@desc Creates a new MediaPackage VOD PackagingGroup resource.\n@required {Id: str}\n@optional {Authorization: Authorization, EgressAccessLogs: EgressAccessLogs, Tags: map<str,str>}\n@returns(200) {Arn: str?, Authorization: Authorization?{CdnIdentifierSecret: str, SecretsRoleArn: str}, CreatedAt: str?, DomainName: str?, EgressAccessLogs: EgressAccessLogs?{LogGroupName: str?}, Id: str?, Tags: map<str,str>?}\n\n@endgroup\n\n@group assets\n@endpoint DELETE /assets/{id}\n@desc Deletes an existing MediaPackage VOD Asset resource.\n@required {Id: str}\n\n@endgroup\n\n@group packaging_configurations\n@endpoint DELETE /packaging_configurations/{id}\n@desc Deletes a MediaPackage VOD PackagingConfiguration resource.\n@required {Id: str}\n\n@endgroup\n\n@group packaging_groups\n@endpoint DELETE /packaging_groups/{id}\n@desc Deletes a MediaPackage VOD PackagingGroup resource.\n@required {Id: str}\n\n@endgroup\n\n@group assets\n@endpoint GET /assets/{id}\n@desc Returns a description of a MediaPackage VOD Asset resource.\n@required {Id: str}\n@returns(200) {Arn: str?, CreatedAt: str?, EgressEndpoints: [EgressEndpoint]?, Id: str?, PackagingGroupId: str?, ResourceId: str?, SourceArn: str?, SourceRoleArn: str?, Tags: map<str,str>?}\n\n@endgroup\n\n@group packaging_configurations\n@endpoint GET /packaging_configurations/{id}\n@desc Returns a description of a MediaPackage VOD PackagingConfiguration resource.\n@required {Id: str}\n@returns(200) {Arn: str?, CmafPackage: CmafPackage?{Encryption: CmafEncryption?{ConstantInitializationVector: str?, SpekeKeyProvider: SpekeKeyProvider{EncryptionContractConfiguration: EncryptionContractConfiguration?, RoleArn: str, SystemIds: [str], Url: str}}, HlsManifests: [HlsManifest], IncludeEncoderConfigurationInSegments: bool?, SegmentDurationSeconds: int?}, CreatedAt: str?, DashPackage: DashPackage?{DashManifests: [DashManifest], Encryption: DashEncryption?{SpekeKeyProvider: SpekeKeyProvider{EncryptionContractConfiguration: EncryptionContractConfiguration?, RoleArn: str, SystemIds: [str], Url: str}}, IncludeEncoderConfigurationInSegments: bool?, IncludeIframeOnlyStream: bool?, PeriodTriggers: [str]?, SegmentDurationSeconds: int?, SegmentTemplateFormat: str?}, HlsPackage: HlsPackage?{Encryption: HlsEncryption?{ConstantInitializationVector: str?, EncryptionMethod: str?, SpekeKeyProvider: SpekeKeyProvider{EncryptionContractConfiguration: EncryptionContractConfiguration?, RoleArn: str, SystemIds: [str], Url: str}}, HlsManifests: [HlsManifest], IncludeDvbSubtitles: bool?, SegmentDurationSeconds: int?, UseAudioRenditionGroup: bool?}, Id: str?, MssPackage: MssPackage?{Encryption: MssEncryption?{SpekeKeyProvider: SpekeKeyProvider{EncryptionContractConfiguration: EncryptionContractConfiguration?, RoleArn: str, SystemIds: [str], Url: str}}, MssManifests: [MssManifest], SegmentDurationSeconds: int?}, PackagingGroupId: str?, Tags: map<str,str>?}\n\n@endgroup\n\n@group packaging_groups\n@endpoint GET /packaging_groups/{id}\n@desc Returns a description of a MediaPackage VOD PackagingGroup resource.\n@required {Id: str}\n@returns(200) {ApproximateAssetCount: int?, Arn: str?, Authorization: Authorization?{CdnIdentifierSecret: str, SecretsRoleArn: str}, CreatedAt: str?, DomainName: str?, EgressAccessLogs: EgressAccessLogs?{LogGroupName: str?}, Id: str?, Tags: map<str,str>?}\n\n@endgroup\n\n@group assets\n@endpoint GET /assets\n@desc Returns a collection of MediaPackage VOD Asset resources.\n@optional {maxResults: int, nextToken: str, packagingGroupId: str}\n@returns(200) {Assets: [AssetShallow]?, NextToken: str?}\n\n@endgroup\n\n@group packaging_configurations\n@endpoint GET /packaging_configurations\n@desc Returns a collection of MediaPackage VOD PackagingConfiguration resources.\n@optional {maxResults: int, nextToken: str, packagingGroupId: str}\n@returns(200) {NextToken: str?, PackagingConfigurations: [PackagingConfiguration]?}\n\n@endgroup\n\n@group packaging_groups\n@endpoint GET /packaging_groups\n@desc Returns a collection of MediaPackage VOD PackagingGroup resources.\n@optional {maxResults: int, nextToken: str}\n@returns(200) {NextToken: str?, PackagingGroups: [PackagingGroup]?}\n\n@endgroup\n\n@group tags\n@endpoint GET /tags/{resource-arn}\n@desc Returns a list of the tags assigned to the specified resource.\n@required {ResourceArn: str}\n@returns(200) {Tags: map<str,str>?}\n\n@endpoint POST /tags/{resource-arn}\n@desc Adds tags to the specified resource. You can specify one or more tags to add.\n@required {ResourceArn: str, Tags: map<str,str>}\n\n@endpoint DELETE /tags/{resource-arn}\n@desc Removes tags from the specified resource. You can specify one or more tags to remove.\n@required {ResourceArn: str, tagKeys: [str]}\n\n@endgroup\n\n@group packaging_groups\n@endpoint PUT /packaging_groups/{id}\n@desc Updates a specific packaging group. You can't change the id attribute or any other system-generated attributes.\n@required {Id: str}\n@optional {Authorization: Authorization}\n@returns(200) {ApproximateAssetCount: int?, Arn: str?, Authorization: Authorization?{CdnIdentifierSecret: str, SecretsRoleArn: str}, CreatedAt: str?, DomainName: str?, EgressAccessLogs: EgressAccessLogs?{LogGroupName: str?}, Id: str?, Tags: map<str,str>?}\n\n@endgroup\n\n@end\n"}}