Skip to main content
POST
/
revenue
/
Create Revenue
curl --request POST \
  --url https://server26-dot-royalti-project.uc.r.appspot.com/revenue/ \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "title": "Streaming Revenue - January 2024",
  "amount": 2500.5,
  "currency": "USD",
  "source": "streaming",
  "transactionDate": "2024-01-15T10:30:00Z",
  "artist": "artist-uuid-123",
  "asset": "asset-uuid-456",
  "splits": [
    {
      "user": "user-uuid-1",
      "percentage": 60,
      "amount": 1500.3
    },
    {
      "user": "user-uuid-2",
      "percentage": 40,
      "amount": 1000.2
    }
  ],
  "metadata": {
    "platform": "Spotify",
    "region": "US",
    "period": "2024-01"
  },
  "memo": "Monthly streaming revenue distribution"
}'
{
  "message": "Revenue recorded with splits",
  "revenue": {
    "id": "revenue-uuid-123",
    "title": "Streaming Revenue - January 2024",
    "amount": 2500.5,
    "currency": "USD",
    "source": "streaming",
    "transactionDate": "2024-01-15T10:30:00Z",
    "createdAt": "2024-01-15T10:30:00Z",
    "updatedAt": "2024-01-15T10:30:00Z"
  }
}
Create Revenue Description:
The /revenue/ endpoint allows creation of revenue records with detailed information including source, amount, splits, and associated metadata.
Method:
POST
Request Payload:
ParameterTypeDescription
titlestringTitle/description of the revenue
amountnumberRevenue amount
currencystringCurrency code (e.g., USD, EUR)
sourcestringSource of the revenue (e.g., streaming, sales)
transactionDatestringDate of the revenue transaction
artiststringAssociated artist ID
assetstringAssociated asset ID
productstringAssociated product ID
splitsarrayRevenue split information
metadataobjectAdditional metadata
memostringAdditional notes

Authentication

This endpoint requires authentication. Include your bearer token in the Authorization header.

Request Body

Example Request

{
  "title": "Streaming Revenue - January 2024",
  "amount": 2500.5,
  "currency": "USD",
  "source": "streaming",
  "transactionDate": "2024-01-15T10:30:00Z",
  "artist": "artist-uuid-123",
  "asset": "asset-uuid-456",
  "splits": [
    {
      "user": "user-uuid-1",
      "percentage": 60,
      "amount": 1500.3
    },
    {
      "user": "user-uuid-2",
      "percentage": 40,
      "amount": 1000.2
    }
  ],
  "metadata": {
    "platform": "Spotify",
    "region": "US",
    "period": "2024-01"
  },
  "memo": "Monthly streaming revenue distribution"
}

Request Schema

FieldTypeRequiredDescription
titlestringTitle/description of the revenue
amountnumberRevenue amount
currencystringCurrency code (e.g., USD, EUR)
sourcestringSource of the revenue
transactionDatestringDate of the revenue transaction
artiststringAssociated artist ID
assetstringAssociated asset ID
productstringAssociated product ID
splitsarrayRevenue split information
metadataobjectAdditional metadata
memostringAdditional notes

Responses

✅ 201 - Success

⚠️ 400 - Bad Request

⚠️ 401 - Unauthorized

⚠️ 404 - Not Found

❌ 500 - Internal Server Error

Tags

Revenue

Authorizations

Authorization
string
header
required

JWT Authorization header using the Bearer scheme. Format: "Bearer {token}"

Body

application/json
title
string
required

Title/description of the revenue

amount
number
required

Revenue amount

currency
string
default:USD
required

Currency code (e.g., USD, EUR)

source
enum<string>
required

Source of the revenue

Available options:
streaming,
sales,
licensing,
sync,
merchandise,
live_performance,
other
transactionDate
string<date-time>
required

Date of the revenue transaction

artist
string

Associated artist ID

asset
string

Associated asset ID

product
string

Associated product ID

splits
object[]

Revenue split information

metadata
object

Additional metadata

memo
string

Additional notes

Response

Success

message
string
revenue
object
I