Create Royalty Source (Admin)
Creates a new royalty source record available globally.
Code Examples
Authorizations
JWT Authorization header using the Bearer scheme. Format: "Bearer {token}"
Body
Source name (will be normalized to lowercase)
"Spotify"
Display label
"Spotify"
Source type
"DSP"
File format
"csv"
Make source publicly available (default true)
true
Mark source as active (default true)
true
"2020-01-01"
"2025-01-01"
JSONB query configuration
"royalty_{date}.csv"
Text representation of schema
"artist_name,track_name,streams,revenue"
","
"royalty_{tenant}"
1
Default currency code (e.g., USD, GBP)
3"USD"
Default fee rate as decimal (e.g., 0.015 = 1.5%)
0.015
Fee calculation type
percentage, fixed Human-readable fee description
Foreign exchange conversion strategy
cte, inline, external_table Whether the fee is embedded in the SQL query
Parent source ID for versioned sources
Source category
aggregator, dsp, publisher, label, other Response
Royalty source created successfully
"src-1"
Source name (automatically normalized to lowercase)
"spotify"
Display label for the source
"Spotify"
Source type (e.g., DSP, Publisher, Label)
"DSP"
File format (csv, excel, json, etc.)
"csv"
Whether this source is publicly available to all tenants
true
Whether this source is currently active
true
Start date for source availability
"2020-01-01"
End date for source availability
"2025-01-01"
Deprecated. Legacy JSONB object containing query configurations. Use dedicated columns instead: salesDataQuery, royaltySumQuery, countSumQuery, metadataQuery.
Template for expected file name format with period placeholders. Placeholders: {SALPER-FORMAT} (sale period), {ACCPER-FORMAT} (accounting period) Formats: YYYYMM, YYYY-MM, YYYY-MM-DD, MMM-YYYY, etc.
"{ORG}_Snap_{SALPER-YYYYMM}_Monthly-Sales.csv"
Text representation of the file schema/structure
"artist_name,track_name,streams,revenue"
Field delimiter for CSV files
","
Template for BigQuery table name with period placeholders (SALPER, ACCPER)
"merlin_snap_SALPER_ACCPER"
DSL for column semantic mappings. Defines how columns map to period types and formats. Format: ColumnName:TYPE-FORMAT;ColumnName2:TYPE-FORMAT;... Types: SALPER (sale period), ACCPER (accounting period), ISRC, UPC, CATNO, etc. Formats: YYYY-MM-DD, YYYYMM, YYYY-MM, etc.
"Start_Date:SALPER-YYYY-MM-DD;ISRC:ISRC"
Number of header rows to skip
1
Additional file metadata and configuration
Dedicated SQL query for BigQuery sales data view (extracted from dataQuery JSONB)
SQL query for calculating royalty sum after file processing
SQL query for calculating row count after file processing
SQL query for extracting metadata from processed data
SQL query for extracting asset catalog items (by ISRC) from raw royalty data. Derived from source schema column mapping
SQL query for extracting product catalog items (by UPC) from raw royalty data. Derived from source schema column mapping
Default currency code (e.g., USD, GBP). Overridable per-tenant via TenantRoyaltySource settings
3"USD"
Default fee rate as decimal (e.g., 0.015 = 1.5%). Overridable per-tenant
0.015
Fee calculation type
percentage, fixed "percentage"
Human-readable fee description
"Merlin distribution fee"
Foreign exchange conversion strategy used in SQL queries
cte, inline, external_table Whether the fee multiplier is embedded in the SQL query (true) or applied externally (false)
Parent source ID for versioned sources (e.g., merlin_vevo variants)
Source category for classification
aggregator, dsp, publisher, label, other "dsp"