openapi: 3.0.3 info: title: Warner Music Group Licensing Artists Licenses API description: The Warner Music Group Licensing API enables content creators and developers to search the WMG catalog, request synchronization licenses, mechanical licenses, and digital licenses for music recordings and compositions from Warner Records, Atlantic Records, Elektra Records, and Warner Chappell Music. The API covers all major use cases including film/TV sync, advertising, digital services, and live performance. version: 1.0.0 contact: name: WMG Licensing Support url: https://www.wmgmusiclicensing.com/ email: onlinelicensing@wmg.com termsOfService: https://www.wmg.com/terms servers: - url: https://api.wmg.com description: WMG API Production security: - OAuth2: - catalog:read tags: - name: Licenses description: License request and management paths: /v1/licenses: get: operationId: listLicenses summary: List Licenses description: List all license requests submitted by the authenticated partner. tags: - Licenses parameters: - name: status in: query required: false schema: type: string enum: - pending - approved - rejected - expired description: Filter by license status - name: licenseType in: query required: false schema: type: string enum: - sync - mechanical - digital - performance description: Filter by license type - name: limit in: query required: false schema: type: integer default: 20 description: Maximum results to return responses: '200': description: License list returned content: application/json: schema: $ref: '#/components/schemas/LicenseListResponse' '401': description: Unauthorized post: operationId: requestLicense summary: Request License description: Submit a new license request for a WMG recording or composition. Specify the use case (sync, mechanical, digital, performance) and usage details. tags: - Licenses requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/LicenseRequest' responses: '201': description: License request submitted successfully content: application/json: schema: $ref: '#/components/schemas/LicenseResponse' '400': description: Invalid request '401': description: Unauthorized /v1/licenses/{licenseId}: get: operationId: getLicense summary: Get License description: Retrieve the details and status of a specific license request. tags: - Licenses parameters: - name: licenseId in: path required: true schema: type: string description: License request identifier responses: '200': description: License details returned content: application/json: schema: $ref: '#/components/schemas/LicenseResponse' '401': description: Unauthorized '404': description: License not found components: schemas: LicenseListResponse: type: object properties: data: type: array items: $ref: '#/components/schemas/License' total: type: integer LicenseResponse: type: object properties: data: $ref: '#/components/schemas/License' License: type: object properties: id: type: string description: License request identifier status: type: string enum: - pending - approved - rejected - expired licenseType: type: string enum: - sync - mechanical - digital - performance trackIsrc: type: string description: ISRC of the licensed recording trackTitle: type: string description: Licensed track title artistName: type: string useCase: type: string description: Intended use case (film, TV, advertising, etc.) territory: type: string description: License territory (ISO 3166 country code or WORLD) startDate: type: string format: date description: License start date endDate: type: string format: date description: License end date fee: type: number description: License fee in USD submittedAt: type: string format: date-time LicenseRequest: type: object required: - trackIsrc - licenseType - useCase - territory - startDate - endDate properties: trackIsrc: type: string description: ISRC of the recording to license licenseType: type: string enum: - sync - mechanical - digital - performance description: Type of license requested useCase: type: string description: Description of intended use (e.g., "TV commercial", "streaming film") territory: type: string description: License territory (ISO 3166 country code or WORLD) startDate: type: string format: date description: Requested license start date endDate: type: string format: date description: Requested license end date exclusivity: type: boolean default: false description: Whether exclusive rights are requested notes: type: string description: Additional notes or context for the license request securitySchemes: OAuth2: type: oauth2 description: OAuth 2.0 for WMG partner authentication flows: authorizationCode: authorizationUrl: https://auth.wmg.com/oauth/authorize tokenUrl: https://auth.wmg.com/oauth/token scopes: catalog:read: Read catalog information licenses:read: Read license requests licenses:write: Submit license requests