DPM Network Music Distribution API

DPM Network Music Distribution does offer API integration as part of its distribution services for labels. This API integration allows labels to connect their music catalog directly to the DPM Network platform, streamlining the distribution process and making it easier to manage and update their releases.

With API integration, labels can automate the delivery of their music to DPM Network and other digital service providers, reducing the need for manual uploads and streamlining the distribution process. This can save time and improve efficiency, allowing labels to focus on creating and promoting their music.

API integration may require additional technical expertise or development resources, and labels may need to work with DPM Network or third-party developers to set up and maintain the integration. However, for labels with a large catalog or a high volume of releases, API integration can be an effective way to manage their distribution workflow and maximize their revenue potential.

General notes

The DPM Network Music Distribution API collection enables customers to integrate with our systems of delivery directly to the DSPs. API access is through basic authentication using credentials supplied by the DPM Network Music Distribution admin team.

The DPM API collection enables customers to integrate with our systems directly. There are currently two API-based paths - https://api.dpmnetworks.com/api/v1/ and https://api.dpmnetworks.com/api/v2/.

API authentication

API V1

V1 API uses basic authentication using credentials supplied by the DPM admin.

API V2

V2 API use token-based authentication.

  1. Get token with DPM credentials

POST https://app.dpmnetworks.com/access-token
Content-Type: application/json
Accept-Language: en-US,en;q=0.5

{
"userName": "xyz@mydomain.com",
"password": "YourSecretIsSafe"
}

Example response:

Status: 200 OK
    Content-Type: application/json; charset=utf-8
{
  "result": {
    "accessToken": "eyJh...wczovL2",
    "refreshToken": "1x...0FYm3FiEaM="
  },
  "id": 1,
  "exception": null,
  "status": 5,
  "isCanceled": false,
  "isCompleted": true,
  "isCompletedSuccessfully": true,
  "creationOptions": 0,
  "asyncState": null,
  "isFaulted": false
}

Use bearer token in API call

// Authorization: Bearer {{jwttoken}}

Optionally, refresh token

POST https://app.dpmnetworks.com/access-token/refresh
    Content-Type: application/json
    Accept-Language: en-US,en;q=0.5

    {
    "accessToken": "eyJh...Y",
    "refreshToken": "1x...="
    }

IMPORTANT REQUIREMENTS FOR DELIVERIES:

The customer must have the audio and cover art storage on Amazon S3 as part of our requirements.

Each release must be organized using the UPC Number as the name of the folder see the example below, also each release must have a Unique UPC

  • Main Folder: the name will be the UPC number: 780627759146

  • Cover Art: must have the UPC number: 780627759146.jpg

  • Audio File for the track: must be named as :

  • Track 1: 780627759146_01_01

  • Track 2: 780627759146_01_02

Metadata Information that is required for each release. fields with * are mandatory the rest optional

  • Label Name*

  • Release-Type*

  • UPC *

  • Catalog-Number*

  • Album-Release-Id*

  • Album-Main-Artist*

  • Secondary-Language-Album-Main-Artist

  • Album-Featured-Artist Secondary-Language-Album-Featured-Artist

  • Album-Title Album-SubTitle Secondary-Language-Album-Title Secondary-Language-Album-SubTitle

  • Genre*

  • Original-Release-Date

  • Release-Date Release-Date-Time *

  • Release-Date-Timezone Parental-Warning *

  • C-Line *

  • Disc-Number*

  • Track-Number *

  • Track-Title Track-SubTitle Secondary-Language-Track-Title

  • Secondary-Language-Track-SubTitle

  • Track-Main-Artist Secondary-Language-Track-Main-Artist

  • Track-Featured-Artist Secondary-Language-Track-Featured-Artist

  • Language-Of-Performance *

  • Track-Length *

  • ISRC-Code *

  • Track-Release-Id*

  • P-Line*

  • Music-Producer

  • Remixer

  • ISWC-Code*

  • Composer*

  • Lyricist *

  • Arranger

  • Publisher

  • Territory-Availability *

  • Download-Purchase *

  • Subscription-Streaming*

  • Ad-Supported-Streaming *

  • Album-SRP*

  • Album-SRP-Currency*

  • Track-SRP*

  • Track-SRP-Currency*


Integration With Amazon S3

Important Requirement that DPM Network Music Distribution needs from Client Amazon S3 Bucket

Callback.BaseUri, S3.s3Region, S3.accessKey, S3.accessSecret, S3.bucketName, S3.s3RootKey, Callback.Metadata.Path

API detail

Delivery

DPM delivery requests API

Post Delivery Request

A single delivery request can be made to a list of DSPs by providing a list of DSP ids.

A delivery_type must be one of the following (case-sensitive):

  • initialDelivery

  • fullUpdate

  • metadataUpdate

  • takedown

Post Delivery Request

curl -X POST -d '        {
            "upc": "5056293896634",
            "dsp_name": "youtube",
            "delivery_type": "online"
        }' "{{host}}/api/v1/requestdelivery"
POST %7B%7Bhost%7D%7D/api/v1/requestdelivery HTTP/1.1
Host: 

        {
            "upc": "5056293896634",
            "dsp_name": "youtube",
            "delivery_type": "online"
        }
Status201 Created

Content-Type

application/json; charset=utf-8

Location

odata/Dpm/DeliveryRequests/1

Server

Microsoft-IIS/10.0

Date

Thu, 29 Jul 2021 18:52:24 GMT

Content-Length

156

{
    "id": 1,
    "upc": "5056293896634",
    "dsp_name": "Spotify",
    "delivery_type": "online",
    "request_date": "2021-07-29T14:52:23.2065064-04:00",
    "request_status": "Requested"
}


Get Delivery Requests

curl -X GET "{{host}}/api/v1/requestdelivery"
GET %7B%7Bhost%7D%7D/api/v1/requestdelivery HTTP/1.1
Host: 
Status401 Unauthorized

Transfer-Encoding

chunked

Server

Microsoft-IIS/10.0

WWW-Authenticate

Basic realm="", charset="UTF-8"

X-Powered-By

ASP.NET

Date

Tue, 27 Jul 2021 23:27:34 GMT

Status200 OK

Transfer-Encoding

chunked

Content-Type

application/json; charset=utf-8

Server

Microsoft-IIS/10.0

Date

Mon, 16 Aug 2021 03:21:06 GMT

[
    {
        "apiuser_id": 2,
        "id": 17,
        "upc": "3760325342403",
        "delivery_type": "InitialDelivery",
        "delivery_status": "Delivered Approved ✅  (Deliver to DSP) ",
        "request_date": "2021-08-04T19:28:29.7782943",
        "last_updated": "2021-08-04T19:28:29.7782943"
    },
    {
        "apiuser_id": 2,
        "id": 455,
        "upc": "3760325343721",
        "delivery_type": "InitialDelivery",
        "delivery_status": "Submitted (Pending Approval)",
        "request_date": "2021-08-12T11:00:40.6983215",
        "last_updated": "2021-08-12T11:00:40.6983215"
    }
]


Get Delivery Requests with Parameters

curl -X GET "{{host}}/api/v1/requestdelivery?upc=3760325342403"
GET %7B%7Bhost%7D%7D/api/v1/requestdelivery?upc=3760325342403 HTTP/1.1
Host: 
Status200 OK

Content-Type

application/json; charset=utf-8

Server

Microsoft-IIS/10.0

Date

Mon, 16 Aug 2021 03:23:04 GMT

Content-Length

234

[
    {
        "apiuser_id": 2,
        "id": 17,
        "upc": "3760325342403",
        "delivery_type": "InitialDelivery",
        "delivery_status": "Delivered Approved ✅  (Deliver to DSP) ",
        "request_date": "2021-08-04T19:28:29.7782943",
        "last_updated": "2021-08-04T19:28:29.7782943"
    }
]


Get Delivery Requests Store List

curl -X GET "{{host}}/api/v1/dsp"
GET %7B%7Bhost%7D%7D/api/v1/dsp HTTP/1.1
Host: 
Status200 OK

Content-Type

application/json; charset=utf-8

Server

Microsoft-IIS/10.0

Date

Mon, 16 Aug 2021 03:06:36 GMT

Content-Length

5038

[
    {
        "apiuser_id": 2,
        "id": 1,
        "store_name": "7Digital",
        "store_identifier": null
    },
    {
        "apiuser_id": 2,
        "id": 7,
        "store_name": "Audible Magic (Direct)",
        "store_identifier": null
    },
    {
        "apiuser_id": 2,
        "id": 9,
        "store_name": "AWA (Japan)",
        "store_identifier": null
    }
]


Get File Upload History

curl -X GET "{{host}}/api/v1/fileuploads?upc=5056293896634&created_date_from=2020-01-01&created_date_to=2023-01-01"
GET %7B%7Bhost%7D%7D/api/v1/fileuploads?upc=5056293896634&created_date_from=2020-01-01&created_date_to=2023-01-01 HTTP/1.1
Host: 
Status200 OK

Content-Type

application/json; charset=utf-8

Server

Microsoft-IIS/10.0

Paging-Headers

{"totalCount":1,"pageSize":10,"currentPage":1,"totalPages":1,"previousPage":"No","nextPage":"No"}

Date

Sun, 10 Apr 2022 15:42:22 GMT

Content-Length

377

[
    {
        "id": 1,
        "apiuser_id": 1,
        "upc": "5056293896634",
        "create_date": "2022-04-09T16:40:19.0008651",
        "completed_date": "2022-04-09T16:40:30.0321953",
        "bucket_name": "nuemeta",
        "tgt_path": "/NewReleases/5056293896634/5056293896634_01_01.flac",
        "src_path": "NewReleases/5056293896634/5056293896634_01_01.flac",
        "src_type": "S3",
        "upload_status": "Completed",
        "spare1": null,
        "spare2": null,
        "spare3": null
    }
]


UPC and ISRC

Purchase and manage UPCs and ISRCs

Get the list of client UPCs

curl -X GET {{host}}/api/v2/upc/{{clientid}}

Assign UPC to the client

curl -X GET {{host}}/api/v2/upc/assign/{{clientid}}

Assign multiple UPCs to the client

curl -X GET {{host}}/api/v2/upc/assign/{{clientid}}?qty=10

Get the list of client ISRCs

curl -X GET {{host}}/api/v2/isrc/{{clientid}}

Assign ISRC to the client

curl -X GET {{host}}/api/v2/isrc/assign/{{clientid}}

Assign multiple ISRCs to the client

curl -X GET {{host}}/api/v2/isrc/assign/{{clientid}}?qty=10

Reports

DPM Network Music Distribution reports API

DPM Network Music Distribution does provide royalty reports to labels with large catalogs via API. The API provides a programmatic interface for accessing and retrieving the royalty reports for all of the label's releases distributed through the DPM Network.

The API is designed to be scalable and efficient, allowing labels to process large amounts of data quickly and easily. The API also supports real-time updates, so labels can receive up-to-date information on their earnings and royalties as soon as it become available.

To access the API, labels must first sign up for a DPM Network account and register their releases for distribution. Once registered, labels can request access to the API and begin integrating it into their existing systems and workflows.

Having access to royalty reports via API can be beneficial for labels with large catalogs, as it allows them to automate the process of tracking and managing their earnings from various digital service providers. This can save time and resources, while also providing greater visibility into the performance of their releases on different platforms.

Royalties Sales Export

Download CSV file artist sales report for the year/month

curl -X GET "{{host}}/api/v1/reports/artistsales/2021/5"
GET %7B%7Bhost%7D%7D/api/v1/reports/artistsales/2021/5 HTTP/1.1
Host: 

Last updated