7digital Basket API

Manage purchase baskets, apply vouchers, and complete PayPal checkout.

Operations 8

GET /basket 7digital Get Basket #
GET /basket/create 7digital Create Basket #
GET /basket/addItem 7digital Add Basket Item #
GET /basket/removeItem 7digital Remove Basket Item #
POST /basket/applyVoucher 7digital Apply Basket Voucher #
GET /basket/addpriceditem 7digital Add Priced Basket Item #
GET /basket/paypalurl 7digital Get Basket PayPal Url #
POST /basket/completepaypalpurchase 7digital Complete Basket PayPal Purchase #

Documentation

Specifications

Code Examples

Schemas & Data

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/7digital-basket-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

7digital-basket-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: 7digital Artists Basket 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)
security:
- oauth1: []
tags:
- name: Basket
  description: Manage purchase baskets, apply vouchers, and complete PayPal checkout.
paths:
  /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
components:
  parameters:
    BasketId:
      name: basketId
      in: query
      required: true
      description: 7digital basket id.
      schema:
        type: string
        format: uuid
      example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
  schemas:
    Basket:
      type: object
      properties:
        id:
          type: string
          format: uuid
          example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
        items:
          type: array
          items:
            $ref: '#/components/schemas/BasketItem'
        total:
          $ref: '#/components/schemas/Price'
        voucherCode:
          type:
          - string
          - 'null'
          example: SUMMER25
    Purchase:
      type: object
      properties:
        purchaseId:
          type: string
          example: purchase-789012
        status:
          type: string
          enum:
          - completed
          - pending
          - failed
          example: completed
        total:
          $ref: '#/components/schemas/Price'
        items:
          type: array
          items:
            $ref: '#/components/schemas/BasketItem'
        receiptUrl:
          type: string
          format: uri
          example: https://www.7digital.com/receipts/purchase-789012
    BasketItem:
      type: object
      properties:
        itemId:
          type: string
          example: item-789012
        releaseId:
          type:
          - string
          - 'null'
          example: '11700062'
        trackId:
          type:
          - string
          - 'null'
          example: '123456'
        price:
          $ref: '#/components/schemas/Price'
    Price:
      type: object
      description: A price quoted in the requested territory's currency.
      properties:
        formattedPrice:
          type: string
          example: £9.99
        amount:
          type: number
          description: Numeric price value.
          example: 9.99
        currency:
          type: string
          description: ISO 4217 currency code.
          example: GBP
  securitySchemes:
    oauth1:
      type: apiKey
      in: query
      name: oauth_consumer_key
      description: 7digital uses OAuth 1.0 signing. Every request MUST include `oauth_consumer_key` as either a query parameter or in the Authorization header. Sensitive operations require a 2-legged or 3-legged signature with a user access token.
    oauth1_two_legged:
      type: apiKey
      in: query
      name: oauth_consumer_key
      description: 2-legged OAuth 1.0 (partner-scoped — consumer key + secret only).
    oauth1_three_legged:
      type: apiKey
      in: query
      name: oauth_consumer_key
      description: 3-legged OAuth 1.0 (consumer key + secret plus a user access token + secret).