7digital API

Classic 7digital REST API (v1.2). Covers catalogue browse / search / charts, artist / release / track lookup and recommendations, baskets, vouchers, purchase delivery, lockers, payment cards, editorial, translations, IP-to-country lookup, and user signup / authentication. OAuth 1.0 signed; partner consumer key required.

Documentation

Specifications

SDKs

Code Examples

Examples

Schemas & Data

Other Resources

🔗
NaftikoCapability
https://raw.githubusercontent.com/api-evangelist/7digital/refs/heads/main/capabilities/api-releases.yaml
🔗
NaftikoCapability
https://raw.githubusercontent.com/api-evangelist/7digital/refs/heads/main/capabilities/api-artists.yaml
🔗
NaftikoCapability
https://raw.githubusercontent.com/api-evangelist/7digital/refs/heads/main/capabilities/api-tracks.yaml
🔗
NaftikoCapability
https://raw.githubusercontent.com/api-evangelist/7digital/refs/heads/main/capabilities/api-tags.yaml
🔗
NaftikoCapability
https://raw.githubusercontent.com/api-evangelist/7digital/refs/heads/main/capabilities/api-basket.yaml
🔗
NaftikoCapability
https://raw.githubusercontent.com/api-evangelist/7digital/refs/heads/main/capabilities/api-user.yaml
🔗
NaftikoCapability
https://raw.githubusercontent.com/api-evangelist/7digital/refs/heads/main/capabilities/api-users.yaml
🔗
NaftikoCapability
https://raw.githubusercontent.com/api-evangelist/7digital/refs/heads/main/capabilities/api-territories.yaml
🔗
NaftikoCapability
https://raw.githubusercontent.com/api-evangelist/7digital/refs/heads/main/capabilities/api-translations.yaml
🔗
NaftikoCapability
https://raw.githubusercontent.com/api-evangelist/7digital/refs/heads/main/capabilities/api-iplookup.yaml
🔗
NaftikoCapability
https://raw.githubusercontent.com/api-evangelist/7digital/refs/heads/main/capabilities/api-editorial.yaml
🔗
NaftikoCapability
https://raw.githubusercontent.com/api-evangelist/7digital/refs/heads/main/capabilities/api-catalogue.yaml
🔗
NaftikoCapability
https://raw.githubusercontent.com/api-evangelist/7digital/refs/heads/main/capabilities/api-payment.yaml

OpenAPI Specification

7digital-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: 7digital API
  description: >-
    The classic 7digital REST API (v1.2) provides access to the 7digital music
    catalogue (artists, releases, tracks, tags), user lockers, basket/checkout,
    payment, editorial, territories and IP-lookup. All operations are signed
    with OAuth 1.0 and scoped by a consumer key issued under a commercial
    agreement.
  version: '1.2'
  contact:
    name: 7digital / MassiveMusic Client Success
    url: https://docs.massivemusic.com/docs/support
  license:
    name: Commercial — 7digital / MassiveMusic
    url: https://docs.massivemusic.com/docs/sla
  x-last-validated: '2026-05-28'
  x-generated-from: documentation
  x-source-url: https://github.com/7digital/7digital-api/blob/master/assets/7digital-api-schema.json
servers:
  - url: https://api.7digital.com/1.2
    description: 7digital Public API v1.2 (production)
tags:
  - name: Releases
    description: Browse, search, recommend, and chart 7digital releases (albums, singles, EPs).
  - name: Artists
    description: Browse, search, chart, and resolve 7digital artists and their releases.
  - name: Tracks
    description: Search, chart, and look up 7digital track metadata.
  - name: Tags
    description: List the curated tag vocabulary used across the 7digital catalogue.
  - name: Basket
    description: Manage purchase baskets, apply vouchers, and complete PayPal checkout.
  - name: User
    description: Per-user account operations — locker, purchases, payment cards, subscriptions, signup.
  - name: Users
    description: Partner-scoped user directory operations — find and update users.
  - name: Territories
    description: List supported countries / sales territories.
  - name: Translations
    description: Localised translation bundles for the 7digital catalogue.
  - name: IpLookup
    description: Resolve an end-user's country from an IP address.
  - name: Editorial
    description: List 7digital editorial features, banners, and curated content slots.
  - name: Catalogue
    description: Resolve catalogue entities (artist, release) from 7digital web URLs.
  - name: Payment
    description: Payment metadata — supported card types and voucher details.
security:
  - oauth1: []
paths:
  /release/byDate:
    get:
      operationId: getReleasesByDate
      summary: 7digital Get Releases By Date
      description: List releases by release date window. Supports paging and territory filters.
      tags: [Releases]
      parameters:
        - $ref: '#/components/parameters/Country'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: A paged list of releases.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReleaseListResponse'
        '400':
          $ref: '#/components/responses/ValidationError'
        '401':
          $ref: '#/components/responses/AuthError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /release/details:
    get:
      operationId: getReleaseDetails
      summary: 7digital Get Release Details
      description: Get all available metadata for a release by 7digital release id.
      tags: [Releases]
      parameters:
        - $ref: '#/components/parameters/ReleaseId'
        - $ref: '#/components/parameters/Country'
      responses:
        '200':
          description: Release metadata payload.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReleaseDetailsResponse'
        '401':
          $ref: '#/components/responses/AuthError'
        '404':
          $ref: '#/components/responses/NotFoundError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /release/editorial:
    get:
      operationId: getReleaseEditorial
      summary: 7digital Get Release Editorial
      description: Get editorial commentary and review copy for a release.
      tags: [Releases]
      parameters:
        - $ref: '#/components/parameters/ReleaseId'
      responses:
        '200':
          description: Editorial copy for the release.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EditorialResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /release/chart:
    get:
      operationId: getReleaseChart
      summary: 7digital Get Release Chart
      description: Get the current release chart for a given period and territory.
      tags: [Releases]
      parameters:
        - $ref: '#/components/parameters/Country'
        - $ref: '#/components/parameters/Period'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: A chart of releases.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReleaseListResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /release/recommend:
    get:
      operationId: getReleaseRecommendations
      summary: 7digital Get Release Recommendations
      description: Get recommended releases that fans of a seed release also purchase or stream.
      tags: [Releases]
      parameters:
        - $ref: '#/components/parameters/ReleaseId'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: A list of recommended releases.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReleaseListResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /release/search:
    get:
      operationId: searchReleases
      summary: 7digital Search Releases
      description: Free-text search the 7digital catalogue for releases matching a query.
      tags: [Releases]
      parameters:
        - $ref: '#/components/parameters/Query'
        - $ref: '#/components/parameters/Country'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: A paged list of matching releases.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReleaseListResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /release/tracks:
    get:
      operationId: getReleaseTracks
      summary: 7digital Get Release Tracks
      description: Get the track listing for a given release.
      tags: [Releases]
      parameters:
        - $ref: '#/components/parameters/ReleaseId'
      responses:
        '200':
          description: A track listing for the release.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TrackListResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /release/tags:
    get:
      operationId: getReleaseTags
      summary: 7digital Get Release Tags
      description: Get the tags / genre labels applied to a release.
      tags: [Releases]
      parameters:
        - $ref: '#/components/parameters/ReleaseId'
      responses:
        '200':
          description: A list of tags for the release.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TagListResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /release/match/byId:
    get:
      operationId: matchReleaseById
      summary: 7digital Match Release By Id
      description: Match a release in a partner system to the 7digital release using an external identifier (UPC/EAN/GRid).
      tags: [Releases]
      security:
        - oauth1_two_legged: []
      parameters:
        - name: id
          in: query
          required: true
          description: The external identifier to match (e.g., UPC).
          schema:
            type: string
          example: '00602445912025'
      responses:
        '200':
          description: A matched release.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReleaseDetailsResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /release/bytag/new:
    get:
      operationId: getNewReleasesByTags
      summary: 7digital Get New Releases By Tags
      description: List new releases for a given tag or set of tags.
      tags: [Releases]
      parameters:
        - $ref: '#/components/parameters/Tags'
        - $ref: '#/components/parameters/Country'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: A list of new releases for the tag(s).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReleaseListResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /release/bytag/top:
    get:
      operationId: getTopReleasesByTags
      summary: 7digital Get Top Releases By Tags
      description: List top-performing releases for a given tag or set of tags.
      tags: [Releases]
      parameters:
        - $ref: '#/components/parameters/Tags'
        - $ref: '#/components/parameters/Country'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: A list of top releases for the tag(s).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReleaseListResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /artist/browse:
    get:
      operationId: browseArtists
      summary: 7digital Browse Artists
      description: Browse artists in the 7digital catalogue whose names start with the given letter(s).
      tags: [Artists]
      parameters:
        - name: letter
          in: query
          required: true
          description: The starting letter or letters to browse by (e.g. `A`, `Be`).
          schema:
            type: string
          example: 'B'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: A paged list of artists.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ArtistListResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /artist/chart:
    get:
      operationId: getArtistChart
      summary: 7digital Get Artist Chart
      description: Get the current artist chart for a given period and territory.
      tags: [Artists]
      parameters:
        - $ref: '#/components/parameters/Country'
        - $ref: '#/components/parameters/Period'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: A chart of artists.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ArtistListResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /artist/details:
    get:
      operationId: getArtistDetails
      summary: 7digital Get Artist Details
      description: Get all available metadata for an artist by 7digital artist id.
      tags: [Artists]
      parameters:
        - $ref: '#/components/parameters/ArtistId'
      responses:
        '200':
          description: Artist metadata payload.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ArtistDetailsResponse'
        '404':
          $ref: '#/components/responses/NotFoundError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /artist/releases:
    get:
      operationId: getArtistReleases
      summary: 7digital Get Artist Releases
      description: List releases by a given artist, optionally filtered by release type (album, single, etc.).
      tags: [Artists]
      parameters:
        - $ref: '#/components/parameters/ArtistId'
        - $ref: '#/components/parameters/ReleaseType'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: A list of releases by the artist.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReleaseListResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /artist/similar:
    get:
      operationId: getSimilarArtists
      summary: 7digital Get Similar Artists
      description: List artists similar to the seed artist.
      tags: [Artists]
      parameters:
        - $ref: '#/components/parameters/ArtistId'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: A list of similar artists.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ArtistListResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /artist/search:
    get:
      operationId: searchArtists
      summary: 7digital Search Artists
      description: Free-text search the 7digital catalogue for artists matching a query.
      tags: [Artists]
      parameters:
        - $ref: '#/components/parameters/Query'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: A paged list of matching artists.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ArtistListResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /artist/topTracks:
    get:
      operationId: getArtistTopTracks
      summary: 7digital Get Artist Top Tracks
      description: List the top-streamed tracks by an artist.
      tags: [Artists]
      parameters:
        - $ref: '#/components/parameters/ArtistId'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: A list of top tracks by the artist.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TrackListResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /artist/tags:
    get:
      operationId: getArtistTags
      summary: 7digital Get Artist Tags
      description: Get the tags / genre labels applied to an artist.
      tags: [Artists]
      parameters:
        - $ref: '#/components/parameters/ArtistId'
      responses:
        '200':
          description: A list of tags for the artist.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TagListResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /artist/match/byId:
    get:
      operationId: matchArtistById
      summary: 7digital Match Artist By Id
      description: Match an artist in a partner system to the 7digital artist using an external identifier (e.g. MusicBrainz id).
      tags: [Artists]
      security:
        - oauth1_two_legged: []
      parameters:
        - name: id
          in: query
          required: true
          description: External artist identifier to match.
          schema:
            type: string
          example: 'mbid:5b11f4ce-a62d-471e-81fc-a69a8278c7da'
      responses:
        '200':
          description: A matched artist.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ArtistDetailsResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /artist/bytag/top:
    get:
      operationId: getTopArtistsByTags
      summary: 7digital Get Top Artists By Tags
      description: List top-performing artists for a given tag or set of tags.
      tags: [Artists]
      parameters:
        - $ref: '#/components/parameters/Tags'
        - $ref: '#/components/parameters/Country'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: A list of top artists for the tag(s).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ArtistListResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /track/chart:
    get:
      operationId: getTrackChart
      summary: 7digital Get Track Chart
      description: Get the current track chart for a given period and territory.
      tags: [Tracks]
      parameters:
        - $ref: '#/components/parameters/Country'
        - $ref: '#/components/parameters/Period'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: A chart of tracks.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TrackListResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /track/details:
    get:
      operationId: getTrackDetails
      summary: 7digital Get Track Details
      description: Get all available metadata for a track by 7digital track id.
      tags: [Tracks]
      parameters:
        - $ref: '#/components/parameters/TrackId'
        - $ref: '#/components/parameters/Country'
      responses:
        '200':
          description: Track metadata payload.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TrackDetailsResponse'
        '404':
          $ref: '#/components/responses/NotFoundError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /track/search:
    get:
      operationId: searchTracks
      summary: 7digital Search Tracks
      description: Free-text search the 7digital catalogue for tracks matching a query.
      tags: [Tracks]
      parameters:
        - $ref: '#/components/parameters/Query'
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: A paged list of matching tracks.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TrackListResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /track/match/byId:
    get:
      operationId: matchTrackById
      summary: 7digital Match Track By Id
      description: Match a track in a partner system to the 7digital track using an external identifier (e.g. ISRC).
      tags: [Tracks]
      security:
        - oauth1_two_legged: []
      parameters:
        - name: id
          in: query
          required: true
          description: External track identifier to match (e.g. ISRC).
          schema:
            type: string
          example: 'isrc:USRC17607839'
      responses:
        '200':
          description: A matched track.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TrackDetailsResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /tag:
    get:
      operationId: getAllTags
      summary: 7digital Get All Tags
      description: List all tags in the 7digital tag vocabulary.
      tags: [Tags]
      responses:
        '200':
          description: A list of all tags.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TagListResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /basket:
    get:
      operationId: getBasket
      summary: 7digital Get Basket
      description: Get the current contents of a basket.
      tags: [Basket]
      parameters:
        - $ref: '#/components/parameters/BasketId'
      responses:
        '200':
          description: The basket contents.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Basket'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /basket/create:
    get:
      operationId: createBasket
      summary: 7digital Create Basket
      description: Create a new basket for a session or user.
      tags: [Basket]
      responses:
        '200':
          description: The newly created basket.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Basket'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /basket/addItem:
    get:
      operationId: addBasketItem
      summary: 7digital Add Basket Item
      description: Add a track or release to a basket.
      tags: [Basket]
      parameters:
        - $ref: '#/components/parameters/BasketId'
        - name: releaseId
          in: query
          description: Release id to add.
          schema:
            type: string
          example: '11700062'
        - name: trackId
          in: query
          description: Track id to add.
          schema:
            type: string
          example: '123456'
      responses:
        '200':
          description: The updated basket.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Basket'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /basket/removeItem:
    get:
      operationId: removeBasketItem
      summary: 7digital Remove Basket Item
      description: Remove a track or release from a basket.
      tags: [Basket]
      parameters:
        - $ref: '#/components/parameters/BasketId'
        - name: itemId
          in: query
          required: true
          description: Basket item id to remove.
          schema:
            type: string
          example: 'item-789012'
      responses:
        '200':
          description: The updated basket.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Basket'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /basket/applyVoucher:
    post:
      operationId: applyBasketVoucher
      summary: 7digital Apply Basket Voucher
      description: Apply a discount voucher to a basket.
      tags: [Basket]
      security:
        - oauth1_two_legged: []
      parameters:
        - $ref: '#/components/parameters/BasketId'
      requestBody:
        required: true
        description: Voucher application payload.
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                voucherCode:
                  type: string
                  description: Voucher code to apply.
                  example: 'SUMMER25'
              required: [voucherCode]
      responses:
        '200':
          description: The basket with voucher applied.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Basket'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /basket/addpriceditem:
    get:
      operationId: addPricedBasketItem
      summary: 7digital Add Priced Basket Item
      description: Add an item with a specific price to a basket (partner pricing flow).
      tags: [Basket]
      security:
        - oauth1_two_legged: []
      parameters:
        - $ref: '#/components/parameters/BasketId'
        - name: releaseId
          in: query
          description: Release id to add.
          schema:
            type: string
          example: '11700062'
        - name: price
          in: query
          required: true
          description: Price to apply to the item (in minor units).
          schema:
            type: number
          example: 999
      responses:
        '200':
          description: The updated basket.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Basket'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /basket/paypalurl:
    get:
      operationId: getBasketPayPalUrl
      summary: 7digital Get Basket PayPal Url
      description: Generate a PayPal checkout URL for a basket.
      tags: [Basket]
      parameters:
        - $ref: '#/components/parameters/BasketId'
      responses:
        '200':
          description: A PayPal checkout URL.
          content:
            application/json:
              schema:
                type: object
                properties:
                  paypalUrl:
                    type: string
                    format: uri
                    description: The PayPal checkout URL.
                    example: 'https://www.paypal.com/checkoutnow?token=EC-1234'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /basket/completepaypalpurchase:
    post:
      operationId: completeBasketPayPalPurchase
      summary: 7digital Complete Basket PayPal Purchase
      description: Complete a PayPal purchase after the user has authorised payment.
      tags: [Basket]
      security:
        - oauth1_three_legged: []
      parameters:
        - $ref: '#/components/parameters/BasketId'
      requestBody:
        required: true
        description: PayPal purchase completion payload.
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                payerId:
                  type: string
                  description: PayPal payer id.
                  example: 'AB12CD34EF'
                token:
                  type: string
                  description: PayPal token returned to the callback URL.
                  example: 'EC-1234'
              required: [payerId, token]
      responses:
        '200':
          description: The completed purchase.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Purchase'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /user/unlimitedStreaming:
    get:
      operationId: getUserUnlimitedStreaming
      summary: 7digital Get User Unlimited Streaming
      description: Get the status of the unlimited streaming subscription for the authenticated user.
      tags: [User]
      security:
        - oauth1_three_legged: []
      responses:
        '200':
          description: Unlimited streaming subscription details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionStatus'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    post:
      operationId: updateUserUnlimitedStreaming
      summary: 7digital Update User Unlimited Streaming
      description: Create or update the unlimited streaming subscription for a user (partner-scoped).
      tags: [User]
      security:
        - oauth1_two_legged: []
      requestBody:
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                userId:
                  type: string
                  description: The user id whose subscription is being updated.
                  example: '500123'
                status:
                  type: string
                  description: New subscription status.
                  enum: [active, cancelled, expired]
                  example: active
              required: [userId, status]
      responses:
        '200':
          description: The updated subscription status.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionStatus'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /user/locker:
    get:
      operationId: getUserLocker
      summary: 7digital Get User Locker
      description: Get the locker (all purchased tracks and releases) for the authenticated user.
      tags: [User]
      security:
        - oauth1_three_legged: []
      parameters:
        - $ref: '#/components/parameters/Page'
        - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: The user's locker contents.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Locker'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /user/purchase/item:
    get:
      operationId: purchaseUserItem
      summary: 7digital Purchase User Item
      description: Purchase a single track or release for the authenticated user using their default payment method.
      tags: [User]
      security:
        - oauth1_three_legged: []
      parameters:
        - name: releaseId
          in: query
          description: Release id to purchase.
          schema:
            type: string
          example: '11700062'
        - name: trackId
          in: query
          description: Track id to purchase.
          schema:
            type: string
          example: '123456'
      responses:
        '200':
          description: The completed purchase.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Purchase'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /user/purchase/rrpitem:
    get:
      operationId: purchaseUserRrpItem
      summary: 7digital Purchase User Rrp Item
      description: Purchase an item at RRP for the authenticated user.
      tags: [User]
      security:
        - oauth1_three_legged: []
      parameters:
        - name: releaseId
          in: query
          description: Release id to purchase.
          schema:
            type: string
          example: '11700062'
      responses:
        '200':
          description: The completed purchase.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Purchase'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /user/purchase/basket:
    get:
      operationId: purchaseUserBasket
      summary: 7digital Purchase User Basket
      description: Purchase the entire contents of the user's basket.
      tags: [User]
      security:
        - oauth1_three_legged: []
      parameters:
        - $ref: '#/components/parameters/BasketId'
      responses:
        '200':
          description: The completed purchase.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Purchase'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /user/purchase/priceditem:
    get:
      operationId: purchaseUserPricedItem
      summary: 7digital Purchase User Priced Item
      description: Purchase an item at a partner-supplied price.
      tags: [User]
      security:
        - oauth1_three_legged: []
      parameters:
        - name: releaseId
          in: query
          description: Release id to purchase.
          schema:
            type: string
          example: '11700062'
        - name: price
          in: query
          required: true
          description: Partner-supplied price (in minor units).
          schema:
            type: number
          example: 999
      responses:
        '200':
          description: The completed purchase.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Purchase'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /user/payment/card:
    get:
      operationId: listUserPaymentCards
      summary: 7digital List User Payment Cards
      description: List the payment cards registered to the authenticated user.
      tags: [User]
      security:
        - oauth1_three_legged: []
      respon

# --- truncated at 32 KB (65 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/7digital/refs/heads/main/openapi/7digital-api-openapi.yml