API Documentation

API Endpoint

Revenue Distributions

Revenue Distributions

For more details on Revenue Distributions please refer to the help article.

The Revenue Distribution object represents a time based distribution of projected revenue attributed to a specific deal. A deal can have multiple distributions spanning its total value. Revenue Distributions are then equally broken down per-day (internally) in the duration of the distribution, for reporting purposes. This breakdown can be seen in the Financial Items report as “Revenue item”.

The following diagram shows Revenue Distributions in our data hierarchy:

Revenue Distribution diagram

Supported filter params

  • id (array)

  • deal_id (array)

  • creator_id (array)

  • start_on (date)

  • end_on (date)

  • created_at (date)

  • amount_percent (number)

  • amount (number)

Supported sort params

  • id

  • deal (name string)

  • deal_id

  • start_on

  • end_on

  • created_at

  • amount_percent

  • amount

GET /api/v2/revenue_distributions
Requestsreturns revenue_distributions

GET  /api/v2/revenue_distributions

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Responses200
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "data": [
    {
      "id": "1",
      "type": "revenue_distributions",
      "attributes": {
        "start_on": "2025-09-20",
        "end_on": "2025-09-20",
        "amount_percent": "100.0",
        "amount": 10000,
        "amount_default": 12500,
        "amount_normalized": 10000
      },
      "relationships": {
        "organization": {
          "data": {
            "type": "organizations",
            "id": "2278"
          }
        },
        "deal": {
          "meta": {
            "included": false
          }
        }
      }
    },
    {
      "id": "2",
      "type": "revenue_distributions",
      "attributes": {
        "start_on": "2025-09-20",
        "end_on": "2025-09-20",
        "amount_percent": "100.0",
        "amount": 10000,
        "amount_default": 12500,
        "amount_normalized": 10000
      },
      "relationships": {
        "organization": {
          "data": {
            "type": "organizations",
            "id": "2278"
          }
        },
        "deal": {
          "meta": {
            "included": false
          }
        }
      }
    }
  ],
  "links": {
    "first": "http://api-test.productive.io/api/v2/revenue_distributions?page%5Bnumber%5D=1&page%5Bsize%5D=30",
    "last": "http://api-test.productive.io/api/v2/revenue_distributions?page%5Bnumber%5D=1&page%5Bsize%5D=30"
  },
  "meta": {
    "current_page": 1,
    "total_pages": 1,
    "total_count": 2,
    "page_size": 30,
    "max_page_size": 200
  }
}

Get revenue distributions
GET/api/v2/revenue_distributions


GET /api/v2/revenue_distributions/1
Requestsreturns revenue_distribution

GET  /api/v2/revenue_distributions/3

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Responses200
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "data": {
    "id": "3",
    "type": "revenue_distributions",
    "attributes": {
      "start_on": "2025-09-20",
      "end_on": "2025-09-20",
      "amount_percent": "100.0",
      "amount": 10000,
      "amount_default": 12500,
      "amount_normalized": 10000
    },
    "relationships": {
      "organization": {
        "data": {
          "type": "organizations",
          "id": "2279"
        }
      },
      "deal": {
        "meta": {
          "included": false
        }
      }
    }
  },
  "meta": {}
}

Gets a revenue distribution
GET/api/v2/revenue_distributions/{id}

URI Parameters
HideShow
id
number (required) Example: 1

Revenue distribution ID


POST /api/v2/revenue_distributions
Requestsreturns unprocessable entityreturns created

POST  /api/v2/revenue_distributions

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "revenue_distributions",
    "attributes": {
      "start_on": "2025-09-20",
      "end_on": "2025-09-20",
      "amount_percent": "100"
    }
  }
}
Responses422
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "errors": [
    {
      "status": "422",
      "code": "invalid_attribute",
      "title": "Invalid Attribute",
      "detail": "attribute is invalid",
      "source": {
        "pointer": "data/attributes/deal"
      }
    }
  ]
}

POST  /api/v2/revenue_distributions

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "revenue_distributions",
    "attributes": {
      "start_on": "2025-09-20",
      "end_on": "2025-09-20",
      "amount_percent": "100"
    },
    "relationships": {
      "deal": {
        "data": {
          "type": "deals",
          "id": "1871"
        }
      }
    }
  }
}
Responses201
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "data": {
    "id": "4",
    "type": "revenue_distributions",
    "attributes": {
      "start_on": "2025-09-20",
      "end_on": "2025-09-20",
      "amount_percent": "100.0",
      "amount": 0,
      "amount_default": 0,
      "amount_normalized": 0
    },
    "relationships": {
      "organization": {
        "data": {
          "type": "organizations",
          "id": "2281"
        }
      },
      "deal": {
        "meta": {
          "included": false
        }
      }
    }
  },
  "meta": {}
}

Create a revenue distribution
POST/api/v2/revenue_distributions

URI Parameters
HideShow
deal_id
number (required) Example: 1

Related deal ID

start_on
date (required) Example: 2025-08-01

Start date of revenue distribution

end_on
date (required) Example: 2018-08-31

End date of revenue distribution

amount_percent
number (required) Example: 100.0

Amount % of deal value to be distributed across period


PATCH /api/v2/revenue_distributions/
Requestsupdates revenue distribution

PATCH  /api/v2/revenue_distributions/5

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
  "data": {
    "type": "revenue_distributions",
    "attributes": {
      "amount_percent": "50"
    },
    "relationships": {
      "deal": {
        "data": {
          "type": "deals",
          "id": "1872"
        }
      }
    }
  }
}
Responses200
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
  "data": {
    "id": "5",
    "type": "revenue_distributions",
    "attributes": {
      "start_on": "2025-09-20",
      "end_on": "2025-09-20",
      "amount_percent": "50.0",
      "amount": 0,
      "amount_default": 0,
      "amount_normalized": 0
    },
    "relationships": {
      "organization": {
        "data": {
          "type": "organizations",
          "id": "2282"
        }
      },
      "deal": {
        "meta": {
          "included": false
        }
      }
    }
  },
  "meta": {}
}

Update a revenue distribution
PATCH/api/v2/revenue_distributions/

URI Parameters
HideShow
start_on
date (required) Example: 2025-08-01

Start date of revenue distribution

end_on
date (required) Example: 2018-08-31

End date of revenue distribution

amount_percent
number (required) Example: 100.0

Amount % of deal value to be distributed across period


DELETE /api/v2/revenue_distributions/1
Requestsdeletes revenue distribution

DELETE  /api/v2/revenue_distributions/6

Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Responses204
This response has no content.

Deletes a revenue distribution
DELETE/api/v2/revenue_distributions/{id}

URI Parameters
HideShow
id
number (required) Example: 1

Revenue distribution ID


Generated by aglio on 20 Sep 2025