NAV
Alternatives
Partner API

Authentication

Last updated: 5 May 2026

Every request to the Partner API must include a Bearer token in the Authorization header.

Obtaining a Token

Exchange your API key for a short-lived access token:

curl -X POST https://api.altdmp.io/v3/token/issue/ \
  -H "Content-Type: application/json" \
  -d '{"api_key": "YOUR_API_KEY"}'
import requests

resp = requests.post(
    "https://api.altdmp.io/v3/token/issue/",
    json={"api_key": "YOUR_API_KEY"},
)
token = resp.json()["access_token"]

Response:

{
  "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6Ij...",
  "token_duration": 1440,
  "expires_at": "2024-11-21T06:29:30.396717Z"
}

The token is valid for 24 hours (token_duration is in minutes).

Contact support@alternatives.pe to obtain your API key.

Using the Token

Include the token in the Authorization header on every request:

curl https://api.altdmp.io/v3/partners/capital-receivers/ \
  -H "Authorization: Bearer YOUR_TOKEN"
headers = {"Authorization": f"Bearer {token}"}
resp = requests.get(
    "https://api.altdmp.io/v3/partners/capital-receivers/",
    headers=headers,
)

Subscription and Access Control

Authentication alone is not sufficient. Each endpoint is also protected by entitlements that are enabled according to your subscription. Your organisation must hold the appropriate entitlements for the resources you need to access.

Entitlements are provisioned automatically when your subscription is activated. Different subscription tiers unlock access to different endpoints and data types. Contact support@alternatives.pe to review or upgrade your subscription.

A 403 Forbidden response means your organisation’s subscription does not include access to that endpoint. Contact support to adjust your subscription.

Error Responses

StatusMeaning
401 UnauthorizedMissing or invalid Bearer token
403 ForbiddenToken is valid but your organisation’s subscription does not include access to that endpoint
429 Too Many RequestsRate limit exceeded — back off and retry

Migrating from v2 to v3

Last updated: 5 May 2026

The v3 Partner API is a complete redesign of the legacy VentureCap v2 API. This guide covers everything you need to update your integration.

What Changed at a Glance

Areav2v3
Base URLhttps://api.alternatives.pe/api/v2/https://api.altdmp.io/v3/
AuthenticationOAuth2 client credentials → /api/v2/oauth/tokenBearer token → POST /v3/token/issue/
IdentifiersInteger IDs (company_id: 1234)UUIDs (uuid: "c16a0ffd-…")
Paginationpage / page_sizelimit / offset
Orderingsort / directionordering (DRF-style, prefix - for descending)
FilteringQuery-string onlyQuery-string and JSON body (POST)
Companies/api/v2/companies//v3/partners/capital-receivers/
Investors/api/v2/investors//v3/partners/capital-allocators/ + /v3/partners/investors/
Funds/api/v2/funds//v3/partners/funds/
People/api/v2/directors/, /api/v2/founders//v3/partners/people/ (unified)

Authentication

v2

curl -X POST https://api.alternatives.pe/api/v2/oauth/token \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "client_id=YOUR_ID&client_secret=YOUR_SECRET"

v3

curl -X POST https://api.altdmp.io/v3/token/issue/ \
  -H "Content-Type: application/json" \
  -d '{"api_key": "YOUR_API_KEY"}'
# v3 token issuance
import requests

token = requests.post(
    "https://api.altdmp.io/v3/token/issue/",
    json={"api_key": "YOUR_API_KEY"},
).json()["access_token"]

headers = {"Authorization": f"Bearer {token}"}

Endpoint Mapping

Companies → Capital Receivers

v2 Endpointv3 Equivalent
GET /api/v2/companies/GET /v3/partners/capital-receivers/
POST /api/v2/companies/POST /v3/partners/capital-receivers/
GET /api/v2/companies/{id}/GET /v3/partners/capital-receivers/{uuid}/
GET /api/v2/companies/{id}/financials/GET /v3/partners/capital-receivers/{uuid}/financials/
GET /api/v2/companies/{id}/shareholders/GET /v3/partners/capital-receivers/{uuid}/captable/ or /investors/
GET /api/v2/companies/{id}/deals/GET /v3/partners/capital-receivers/{uuid}/deals/

Capital Providers → Capital Allocators

v2 Endpointv3 Equivalent
GET /api/v2/investors/GET /v3/partners/capital-allocators/
GET /api/v2/investors/{id}/GET /v3/partners/capital-allocators/{uuid}/
GET /api/v2/investors/{id}/portfolio/GET /v3/partners/capital-allocators/{uuid}/investments/
GET /api/v2/investors/{id}/commitments/GET /v3/partners/capital-allocators/{uuid}/commitments/

Funds

v2 Endpointv3 Equivalent
GET /api/v2/funds/GET /v3/partners/funds/
GET /api/v2/funds/{id}/GET /v3/partners/funds/{uuid}/
GET /api/v2/funds/{id}/performance/GET /v3/partners/funds/{uuid}/performance/
GET /api/v2/funds/{id}/lps/GET /v3/partners/funds/{uuid}/commitments/

People

v2 had separate /directors/ and /founders/ endpoints. v3 unifies them under /people/ with a role_type_key filter:

v2 Endpointv3 Equivalent
GET /api/v2/directors/GET /v3/partners/people/?role_type_key=person_association_director
GET /api/v2/founders/GET /v3/partners/people/?role_type_key=person_association_founder
GET /api/v2/directors/{id}/GET /v3/partners/people/{uuid}/

New in v3 (No v2 Equivalent)

EndpointWhat It Provides
GET /v3/partners/investors/Unified cross-entity investor search
GET /v3/partners/service-providers/Auditors and professional-services firms
GET /v3/partners/legal-entities/Underlying registered company lookup
GET /v3/partners/reference-data/Taxonomies and filter enumerations
GET /v3/partners/people/{uuid}/roles/Organisational roles per person
GET /v3/partners/capital-receivers/{uuid}/captable/Full cap table (managed and snapshot)

Identifier Change: Integer IDs → UUIDs

v2 used integer IDs throughout. v3 uses UUIDs.

# v2
GET /api/v2/companies/4821/

# v3
GET /v3/partners/capital-receivers/c16a0ffd-4dbb-4f7b-a9ca-a3a47f93be67/
# v3 — store uuid from list results for later detail calls
results = requests.get(f"{BASE}/capital-receivers/?search=shopback", headers=headers).json()
uuid = results["results"][0]["uuid"]
detail = requests.get(f"{BASE}/capital-receivers/{uuid}/", headers=headers).json()

There is no mapping endpoint between v2 integer IDs and v3 UUIDs. Re-query by name or registration number to find the corresponding v3 UUID.

Pagination

# v2
GET /api/v2/companies/?page=2&page_size=20

# v3
GET /v3/partners/capital-receivers/?limit=20&offset=20

Ordering

# v2
GET /api/v2/companies/?sort=name&direction=asc

# v3 (prefix field with - for descending)
GET /v3/partners/capital-receivers/?ordering=display_name
GET /v3/partners/capital-receivers/?ordering=-last_updated_at

Filtering

v2 supported query-string filters only. v3 adds a JSON body filter (via POST) for complex conditions:

# v3 — advanced filter via POST body
curl -X POST https://api.altdmp.io/v3/partners/capital-receivers/ \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "filters": {
      "all": [
        {"op": "eq",  "field": "headquarters_country_iso_alpha3", "value": "SGP"},
        {"op": "gte", "field": "latest_valuation_usd", "value": 50000000}
      ]
    },
    "limit": 20,
    "offset": 0
  }'
resp = requests.post(
    f"{BASE}/capital-receivers/",
    headers=headers,
    json={
        "filters": {
            "all": [
                {"op": "eq",  "field": "headquarters_country_iso_alpha3", "value": "SGP"},
                {"op": "gte", "field": "latest_valuation_usd", "value": 50_000_000},
            ]
        },
        "limit": 20,
        "offset": 0,
    },
)

Filter Operators

OperatorMeaning
eqEqual to
neqNot equal to
inValue is in a list
ninValue is not in a list
gtGreater than
gteGreater than or equal to
ltLess than
lteLess than or equal to
containsString contains (case-insensitive)

v3 wraps raw registration data under a legal_entity object:

# v2 flat field
"uen": "201411189G"

# v3 nested
"legal_entity": {
  "registration_numbers": [
    {
      "reg_number": "201411189G",
      "authority_name": "Accounting and Corporate Regulatory Authority",
      "authority_label": "UEN"
    }
  ]
}

Key Field Mappings

Companies → Capital Receivers

v2 Fieldv3 Field
company_iduuid
namedisplay_name
uenlegal_entity.registration_numbers[].reg_number
countrylegal_entity.domicile_country.name
statuslegal_entity.trading_status.name
latest_roundfunding.latest_investment_stage_name
latest_round_datefunding.latest_investment_date
total_equity_raisedfunding.equity_funding_amount_usd
valuationfunding.latest_valuation_usd
revenuelatest_financials.operating_revenue_usd
female_founderlegal_entity.is_female_founder

Capital Providers → Capital Allocators

v2 Fieldv3 Field
investor_iduuid
namedisplay_name
typetypes[].name
countrylegal_entity.domicile_country.name
aumlatest_aum.aum_value_usd
stagespreferred_allocation_deal_types[].name

Fund Performance

v2 Fieldv3 Field
irrirr
dpidpi
tvpinet_multiple
drawdowndrawdowns_usd
committed_capitalcommitted_capital_usd
as_of_datedate

Migration Checklist

Capital Receivers

Last updated: 5 May 2026

Capital receivers are companies and startups that have received investment. This is the most frequently accessed entity type in the Partner API.

Endpoints

MethodEndpointAccess
GET/v3/partners/capital-receivers/Subscription required
POST/v3/partners/capital-receivers/Subscription required
GET/v3/partners/capital-receivers/{uuid}/Subscription required
GET/v3/partners/capital-receivers/{uuid}/financials/Subscription required
GET/v3/partners/capital-receivers/{uuid}/captable/Subscription required
GET/v3/partners/capital-receivers/{uuid}/investors/Subscription required
GET/v3/partners/capital-receivers/{uuid}/deals/Subscription required
POST/v3/partners/capital-receivers/{uuid}/deals/Subscription required

List Capital Receivers

Returns a paginated list of capital receiver profiles.

curl "https://api.altdmp.io/v3/partners/capital-receivers/?search=shopback" \
  -H "Authorization: Bearer YOUR_TOKEN"
import requests

BASE = "https://api.altdmp.io/v3/partners"
headers = {"Authorization": "Bearer YOUR_TOKEN"}

resp = requests.get(f"{BASE}/capital-receivers/", params={"search": "shopback"}, headers=headers)
data = resp.json()
# data["results"] is the list, data["count"] is total matches

Example response (ShopBack):

{
  "count": 1,
  "next": null,
  "previous": null,
  "results": [
    {
      "uuid": "c16a0ffd-4dbb-4f7b-a9ca-a3a47f93be67",
      "display_name": "Shopback",
      "year_founded": 2014,
      "is_raising_now": false,
      "last_updated_at": "2025-10-16T07:33:30Z",
      "captable_source": {"type": "managed"},
      "legal_entity": {
        "uuid": "fee788ac-cffe-46f0-9bb5-fedb62992bd8",
        "registration_numbers": [{"reg_number": "201411189G", "authority_name": "ACRA", "authority_label": "UEN"}],
        "trading_status": {"name": "Operating", "key": "operating"},
        "domicile_country": {"name": "Singapore", "iso_alpha3": "SGP"},
        "headquarters": {"country_name": "Singapore", "country_iso_alpha3": "SGP", "city_name": "Singapore"},
        "is_female_founder": true,
        "description": "ShopBack operates a consumer-facing cashback and rewards platform."
      },
      "funding": {
        "latest_investment_stage_name": "Series F",
        "latest_investment_stage_key": "series_f",
        "latest_investment_date": "2022-12-13"
      },
      "latest_financials": {
        "financial_year_end": "2025-03-31",
        "operating_revenue_usd": 96318754.34,
        "operating_revenue_growth_yoy_pct": -2.4
      }
    }
  ]
}

List Query Parameters

ParameterTypeDescription
searchstringFull-text search on company name
orderingstringField to sort by. Prefix with - for descending (e.g. -last_updated_at)
limitintegerResults per page (default: 20)
offsetintegerPagination offset
total_funding_minnumberMinimum total equity raised (USD)
total_funding_maxnumberMaximum total equity raised (USD)
is_raising_nowbooleanFilter to companies currently raising

Advanced Filter (POST)

Use POST with a JSON body for complex filters — range queries, multi-value matches, and boolean logic.

# Singapore companies at Series B or later
curl -X POST https://api.altdmp.io/v3/partners/capital-receivers/ \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "filters": {
      "all": [
        {"op": "eq", "field": "headquarters_country_iso_alpha3", "value": "SGP"},
        {"op": "in", "field": "latest_investment_stage_name",
         "value": ["Series B", "Series C", "Series D", "Series E", "Series F"]}
      ]
    },
    "limit": 20,
    "offset": 0
  }'
resp = requests.post(
    f"{BASE}/capital-receivers/",
    headers=headers,
    json={
        "filters": {
            "all": [
                {"op": "eq", "field": "headquarters_country_iso_alpha3", "value": "SGP"},
                {"op": "in", "field": "latest_investment_stage_name",
                 "value": ["Series B", "Series C", "Series D", "Series E", "Series F"]},
            ]
        },
        "limit": 20,
        "offset": 0,
    },
)

Common Filter Fields

FieldTypeExample
headquarters_country_iso_alpha3string"SGP"
latest_investment_stage_namestring"Series A"
latest_investment_stage_keystring"series_a"
latest_valuation_usdnumber50000000
is_female_founderbooleantrue
is_raising_nowbooleanfalse
year_foundedinteger2018

Get Capital Receiver Detail

Returns the full profile for a single capital receiver, including additional fields not present in the list response.

curl "https://api.altdmp.io/v3/partners/capital-receivers/c16a0ffd-4dbb-4f7b-a9ca-a3a47f93be67/" \
  -H "Authorization: Bearer YOUR_TOKEN"
uuid = "c16a0ffd-4dbb-4f7b-a9ca-a3a47f93be67"
detail = requests.get(f"{BASE}/capital-receivers/{uuid}/", headers=headers).json()

Additional fields in the detail response:

{
  "funding": {
    "equity_funding_amount_usd": 203586016.85,
    "latest_valuation_usd": 925652927.23,
    "funding_status": "active"
  },
  "has_vc_transactions": true,
  "has_pe_transactions": false,
  "has_ma_transactions": false,
  "has_debt_transactions": false,
  "has_liquidity_events": false,
  "has_partial_exits": true,
  "has_distressed_transactions": false,
  "legal_entity": {
    "founders": [
      {"uuid": "f2eac778-...", "name": "Shanru Lai"},
      {"uuid": "...", "name": "Henry Chan"},
      {"uuid": "...", "name": "Joel Leong Yong Siang"}
    ],
    "directors": [
      {"uuid": "...", "name": "Willson Cuaca"},
      {"uuid": "...", "name": "Kien Nguyen"},
      {"uuid": "...", "name": "Dan Neary"}
    ],
    "auditors": [{"uuid": "...", "name": "Ernst & Young LLP"}]
  }
}

Cap Table

Returns the current shareholding structure. The shape of the response depends on captable_source.type — always check this field before interpreting results.

curl "https://api.altdmp.io/v3/partners/capital-receivers/c16a0ffd-4dbb-4f7b-a9ca-a3a47f93be67/captable/" \
  -H "Authorization: Bearer YOUR_TOKEN"
captable = requests.get(f"{BASE}/capital-receivers/{uuid}/captable/", headers=headers).json()
source_type = captable["captable_source"]["type"]  # "managed" or "snapshot"

Managed Cap Table Response

When captable_source.type is "managed", the cap table is computed from transaction records. Investment amounts and deal-stage breakdowns are available.

{
  "captable_source": {"type": "managed"},
  "as_of_date": "2026-05-05",
  "aggregations": {
    "total_shares_issued": 26000000,
    "total_shares_held": 26000000
  },
  "results": [
    {
      "shareholder": {
        "uuid": "...",
        "name": "East Ventures Fund 2",
        "type": "CapitalAllocatorProfile"
      },
      "shares_currently_held_absolute": 1250000,
      "percentage_held_absolute": "4.80",
      "shares_issued_absolute": 1500000,
      "shares_sold_absolute": 250000
    }
  ]
}

Snapshot Cap Table Response

When captable_source.type is "snapshot", data is sourced from a periodic shareholder register. Investment-amount data is not available.

{
  "captable_source": {"type": "snapshot"},
  "as_of_date": "2024-12-31",
  "aggregations": null,
  "results": [
    {
      "shareholder": {"uuid": "...", "name": "Temasek Holdings", "type": "LegalEntity"},
      "number_of_shares": 5000000,
      "percentage_held": "35.00000",
      "is_former_shareholder": false,
      "start_date": "2021-03-15",
      "end_date": null
    }
  ]
}

/investors/ returns HTTP 400 for snapshot companies — use /captable/ instead.


Investors

Returns investor-centric aggregates for companies with a managed cap table. Each row represents one investor’s aggregate position.

curl "https://api.altdmp.io/v3/partners/capital-receivers/c16a0ffd-4dbb-4f7b-a9ca-a3a47f93be67/investors/" \
  -H "Authorization: Bearer YOUR_TOKEN"
investors = requests.get(f"{BASE}/capital-receivers/{uuid}/investors/", headers=headers).json()

Example response row (ShopBack):

{
  "uuid": "...",
  "name": "East Ventures Fund 2",
  "investor_type": "fund",
  "registration_numbers": [{"reg_number": "...", "authority_name": "ACRA"}],
  "shares_currently_held": 1250000,
  "current_share_holding_percentage": 4.8,
  "total_shares_allocated": 1500000,
  "total_shares_sold": 250000,
  "total_secondary_shares": 0,
  "amount_invested_usd": 7500000.00,
  "investment_by_stage_amount_usd": {
    "seed": 0,
    "series_a": 7500000,
    "other": 0
  },
  "first_investment_date": "2019-04-30",
  "latest_investment_date": "2022-03-01"
}

Deals

Returns funding rounds and individual transactions for a capital receiver. ShopBack, for example, has 25 recorded deals.

curl "https://api.altdmp.io/v3/partners/capital-receivers/c16a0ffd-4dbb-4f7b-a9ca-a3a47f93be67/deals/" \
  -H "Authorization: Bearer YOUR_TOKEN"
deals = requests.get(f"{BASE}/capital-receivers/{uuid}/deals/", headers=headers).json()

Example deal row (ShopBack Series F):

{
  "date": "2022-12-13",
  "investment_quarter": "Q4 2022",
  "first_investment_date": "2022-07-20",
  "last_investment_date": "2023-05-08",
  "self_declared_label": "Series F",
  "allocation_deal_type_name": "Series F",
  "allocation_deal_type_key": "series_f",
  "allocation_type_name": "Equity",
  "allocation_type_key": "equity",
  "allocation_subtype_name": "Venture Capital (VC)",
  "allocation_subtype_key": "venture_capital",
  "no_shares_issued": 23023201,
  "post_money_valuation_usd": 925652927.23,
  "deal_size_usd": null,
  "reported_deal_size_usd": null,
  "count_of_transactions": 14,
  "transactions": [
    {
      "buyer": {"uuid": "...", "name": "GIC Private Limited", "type": "LegalEntity"},
      "seller": {"uuid": "...", "name": "ShopBack", "type": "CapitalReceiverProfile"},
      "share_class": "Series F Preferred",
      "number_of_shares": 2000000,
      "transaction_size_usd": 80000000.00,
      "price_per_share_usd": 40.00
    }
  ]
}

Filter Deals via POST

# Only equity rounds after 2020
curl -X POST "https://api.altdmp.io/v3/partners/capital-receivers/c16a0ffd-4dbb-4f7b-a9ca-a3a47f93be67/deals/" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "filters": {
      "all": [
        {"op": "eq",  "field": "allocation_type_key", "value": "equity"},
        {"op": "gte", "field": "date", "value": "2020-01-01"}
      ]
    }
  }'

Financials

Returns historical financial snapshots (annual revenue, EBIT, liabilities).

curl "https://api.altdmp.io/v3/partners/capital-receivers/c16a0ffd-4dbb-4f7b-a9ca-a3a47f93be67/financials/" \
  -H "Authorization: Bearer YOUR_TOKEN"
financials = requests.get(f"{BASE}/capital-receivers/{uuid}/financials/", headers=headers).json()

Example financials row:

{
  "financial_year_end": "2024-03-31",
  "operating_revenue_usd": 96318754.34,
  "operating_revenue_growth_yoy_pct": -2.4,
  "ebit_usd": 3200000.00,
  "total_liabilities_usd": 45000000.00,
  "reporting_currency": {"iso_code": "SGD"}
}

Capital Allocators

Last updated: 5 May 2026

Capital allocators are the entities that deploy capital — VC firms, private equity firms, family offices, corporate venture arms, sovereign wealth funds, and more.

Endpoints

MethodEndpointAccess
GET/v3/partners/capital-allocators/Subscription required
POST/v3/partners/capital-allocators/Subscription required
GET/v3/partners/capital-allocators/{uuid}/Subscription required
GET/v3/partners/capital-allocators/{uuid}/investments/Subscription required
GET/v3/partners/capital-allocators/{uuid}/aum/Subscription required
GET/v3/partners/capital-allocators/{uuid}/commitments/Subscription required

List Capital Allocators

curl "https://api.altdmp.io/v3/partners/capital-allocators/?search=Wavemaker" \
  -H "Authorization: Bearer YOUR_TOKEN"
import requests

BASE = "https://api.altdmp.io/v3/partners"
headers = {"Authorization": "Bearer YOUR_TOKEN"}

resp = requests.get(
    f"{BASE}/capital-allocators/",
    params={"search": "Wavemaker"},
    headers=headers,
)

Advanced Filter (POST)

# VC firms in Singapore that invest at Seed and Series A
curl -X POST https://api.altdmp.io/v3/partners/capital-allocators/ \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "filters": {
      "all": [
        {"op": "eq", "field": "domicile_country_iso_alpha3", "value": "SGP"},
        {"op": "in", "field": "preferred_allocation_deal_type_name", "value": ["Seed", "Series A"]}
      ]
    }
  }'
resp = requests.post(
    f"{BASE}/capital-allocators/",
    headers=headers,
    json={
        "filters": {
            "all": [
                {"op": "eq", "field": "domicile_country_iso_alpha3", "value": "SGP"},
                {"op": "in", "field": "preferred_allocation_deal_type_name",
                 "value": ["Seed", "Series A"]},
            ]
        }
    },
)

Get Capital Allocator Detail

curl "https://api.altdmp.io/v3/partners/capital-allocators/f80754f5-16c7-4aac-9cab-4149285c7220/" \
  -H "Authorization: Bearer YOUR_TOKEN"
uuid = "f80754f5-16c7-4aac-9cab-4149285c7220"
detail = requests.get(f"{BASE}/capital-allocators/{uuid}/", headers=headers).json()

Full profile response:

{
  "uuid": "f80754f5-16c7-4aac-9cab-4149285c7220",
  "display_name": "Meridian Ventures Pte. Ltd.",
  "description": "Meridian Ventures is a Singapore-based early-stage VC firm investing across Southeast Asia, with a focus on B2B SaaS, FinTech, and HealthTech.",
  "profile_type": "legalentity",
  "types": [{"name": "Venture Capital Firm", "key": "ca_type_venture_capital_firm"}],
  "preferred_allocation_deal_types": [
    {"name": "Seed", "key": "seed"},
    {"name": "Series A", "key": "series_a"},
    {"name": "Series B", "key": "series_b"}
  ],
  "preferred_countries": [
    {"name": "Indonesia", "iso_alpha3": "IDN"},
    {"name": "Singapore", "iso_alpha3": "SGP"},
    {"name": "Vietnam", "iso_alpha3": "VNM"}
  ],
  "preferred_themes": [
    {"name": "Payments", "key": "themes_payments"},
    {"name": "Business Applications / SaaS", "key": "themes_business_applications_saas"}
  ],
  "cheque_size_avg": 3000000,
  "cheque_size_min": 500000,
  "cheque_size_max": 10000000,
  "dry_powder": 85000000,
  "median_valuation": 45000000,
  "current_allocation": 115000000,
  "target_allocation": 200000000,
  "stated_count_of_investments": 38,
  "is_open_to_co_investment": true,
  "last_updated_at": "2025-10-16T07:33:30Z",
  "latest_aum": {
    "aum_value_usd": 200000000,
    "aum_value_date": "2024-12-31",
    "reporting_currency": {"iso_code": "USD"}
  },
  "actual_count_of_investments": 52,
  "actual_allocation_deal_types": ["Pre-Seed", "Seed", "Series A", "Series B", "Series C"],
  "actual_countries": ["SGP", "IDN", "MYS", "PHL", "THA", "VNM"],
  "actual_min_investment_amount_usd": 250000.00,
  "actual_max_investment_amount_usd": 8500000.00
}

Profile Fields

FieldTypeDescription
uuidstringCapital allocator profile UUID
display_namestringFirm or individual name
profile_typestring"legalentity" or "person"
typesarrayFirm-type classification (e.g. Venture Capital Firm, Family Office)
preferred_allocation_deal_typesarrayStated preferred deal stages
preferred_countriesarrayTarget geographies
preferred_themesarrayTarget investment themes
preferred_horizontalsarrayTarget horizontal tech categories
preferred_business_modelsarrayTarget business models
preferred_techsarrayTarget technology focus areas
cheque_size_avgnumberAverage cheque size in USD
cheque_size_minnumberMinimum cheque size in USD
cheque_size_maxnumberMaximum cheque size in USD
dry_powdernumberUndeployed capital in USD
current_allocationnumberCapital currently deployed in USD
target_allocationnumberTarget total allocation in USD
stated_count_of_investmentsintegerSelf-stated portfolio company count
is_open_to_co_investmentbooleanOpen to co-investment
actual_count_of_investmentsintegerActual count from transaction records
actual_allocation_deal_typesarrayDeal stages the firm has actually invested in
actual_countriesarrayCountries of portfolio companies
latest_aumobjectMost recent AUM record

actual_* fields are derived from real transaction records on the platform. preferred_* fields are self-declared by the firm. Compare the two to assess stated vs. actual investment behaviour.


Investments

Returns the portfolio — all companies this allocator has invested in.

curl "https://api.altdmp.io/v3/partners/capital-allocators/f80754f5-16c7-4aac-9cab-4149285c7220/investments/" \
  -H "Authorization: Bearer YOUR_TOKEN"
investments = requests.get(
    f"{BASE}/capital-allocators/{uuid}/investments/", headers=headers
).json()

AUM History

Returns a time series of assets under management records.

curl "https://api.altdmp.io/v3/partners/capital-allocators/f80754f5-16c7-4aac-9cab-4149285c7220/aum/" \
  -H "Authorization: Bearer YOUR_TOKEN"
aum = requests.get(f"{BASE}/capital-allocators/{uuid}/aum/", headers=headers).json()

Example AUM row:

{
  "aum_value_usd": 200000000,
  "aum_value_date": "2024-12-31",
  "reporting_currency": {"iso_code": "USD", "name": "US Dollar"}
}

LP Commitments

Returns commitments made by this allocator to funds (i.e. where this allocator acts as an LP).

Access to this endpoint is subject to your subscription.

curl "https://api.altdmp.io/v3/partners/capital-allocators/f80754f5-16c7-4aac-9cab-4149285c7220/commitments/" \
  -H "Authorization: Bearer YOUR_TOKEN"
commitments = requests.get(
    f"{BASE}/capital-allocators/{uuid}/commitments/", headers=headers
).json()

Example commitment row:

{
  "uuid": "...",
  "date": "2022-03-15",
  "investment_amount_usd": 25000000.00,
  "transaction_currency": {"iso_code": "USD"},
  "buyer": {"name": "Meridian Ventures Pte. Ltd.", "uuid": "f80754f5-...", "type": "capital_allocator"},
  "seller": {"name": "Acme Growth Fund III", "uuid": "...", "type": "fund"}
}

Funds

Last updated: 5 May 2026

Fund profiles represent individual fund vehicles — each managed by one or more capital allocators. This covers venture capital funds, private equity funds, and other structured vehicles.

Endpoints

MethodEndpointAccess
GET/v3/partners/funds/Subscription required
POST/v3/partners/funds/Subscription required
GET/v3/partners/funds/{uuid}/Subscription required
GET/v3/partners/funds/{uuid}/performance/Subscription required
GET/v3/partners/funds/{uuid}/aum/Subscription required
GET/v3/partners/funds/{uuid}/commitments/Subscription required
GET/v3/partners/funds/{uuid}/investments/Subscription required

List Funds

curl "https://api.altdmp.io/v3/partners/funds/?search=Wavemaker" \
  -H "Authorization: Bearer YOUR_TOKEN"
import requests

BASE = "https://api.altdmp.io/v3/partners"
headers = {"Authorization": "Bearer YOUR_TOKEN"}

resp = requests.get(
    f"{BASE}/funds/",
    params={"search": "Wavemaker"},
    headers=headers,
)

Get Fund Detail

# Wavemaker Pacific 1
curl "https://api.altdmp.io/v3/partners/funds/73541611-0738-46fb-abbd-7e9dcf74b00c/" \
  -H "Authorization: Bearer YOUR_TOKEN"
uuid = "73541611-0738-46fb-abbd-7e9dcf74b00c"
fund = requests.get(f"{BASE}/funds/{uuid}/", headers=headers).json()

Full fund profile response:

{
  "uuid": "73541611-0738-46fb-abbd-7e9dcf74b00c",
  "display_name": "Meridian SEA Fund II",
  "description": "Meridian SEA Fund II is a $200M Series A and Series B fund focused on B2B SaaS and FinTech across Southeast Asia.",
  "vintage_year": 2022,
  "fund_managers": [
    {"display_name": "Meridian Ventures Pte. Ltd.", "uuid": "f80754f5-..."}
  ],
  "status": {"name": "Closed", "key": "fund_status_closed"},
  "is_raising_now": false,
  "term_years": 10,
  "structure": {"name": "Limited Partnership", "key": "fund_structure_lp"},
  "currency": {"iso_code": "USD", "name": "US Dollar"},
  "target_close_date": "2022-06-30",
  "latest_fund_size": {
    "aum_value_usd": 200000000.00,
    "aum_value_date": "2024-12-31"
  },
  "preferred_allocation_deal_types": [
    {"name": "Series A", "key": "series_a"},
    {"name": "Series B", "key": "series_b"}
  ],
  "preferred_countries": [
    {"name": "Singapore", "iso_alpha3": "SGP"},
    {"name": "Indonesia", "iso_alpha3": "IDN"},
    {"name": "Vietnam", "iso_alpha3": "VNM"}
  ],
  "preferred_themes": [
    {"name": "Payments", "key": "themes_payments"},
    {"name": "Business Applications / SaaS", "key": "themes_business_applications_saas"}
  ],
  "management_fee_percentage": 2.0,
  "gp_commitment_percentage": 2.0,
  "hurdle_percentage": 8.0,
  "carry_percentage": 20.0,
  "is_first_time_fund": false,
  "is_single_deal_fund": false,
  "is_continuation_fund": false,
  "last_updated_at": "2025-10-16T07:33:30Z"
}

Fund Profile Fields

FieldTypeDescription
uuidstringFund profile UUID
display_namestringFund name
vintage_yearintegerYear the fund was established / first close
fund_managersarrayManaging capital allocator(s)
statusobjectFund lifecycle status
is_raising_nowbooleanCurrently in fundraise
term_yearsintegerFund term in years
structureobjectLegal structure (e.g. Limited Partnership)
latest_fund_sizeobjectMost recent AUM record
management_fee_percentagenumberAnnual management fee %
gp_commitment_percentagenumberGP co-investment alongside LPs %
hurdle_percentagenumberPreferred return before carry %
carry_percentagenumberCarried interest %
is_first_time_fundbooleanManager’s first fund
is_single_deal_fundbooleanSPV / single-deal vehicle
is_continuation_fundbooleanContinuation vehicle
is_hybrid_fundbooleanHybrid structure

Real Funds for Testing

FundUUIDSizeVintage
Wavemaker Pacific 173541611-0738-46fb-abbd-7e9dcf74b00c$66M2017
Bain Capital Asia III50280c30-d626-44db-8aff-7cdf1eb323bb$3B2016

Fund Performance

Returns quarterly / annual performance metrics (IRR, DPI, TVPI). Each row is one reporting period.

curl "https://api.altdmp.io/v3/partners/funds/50280c30-d626-44db-8aff-7cdf1eb323bb/performance/" \
  -H "Authorization: Bearer YOUR_TOKEN"
performance = requests.get(
    f"{BASE}/funds/50280c30-d626-44db-8aff-7cdf1eb323bb/performance/",
    headers=headers,
).json()

Example performance row (Bain Capital Asia III, Q4 2024):

{
  "uuid": "...",
  "fund_uuid": "50280c30-d626-44db-8aff-7cdf1eb323bb",
  "date": "2024-12-31",
  "year": 2024,
  "quarter": "Q4",
  "irr": 0.18,
  "dpi": 1.3,
  "rvpi": 0.8,
  "net_multiple": 2.1,
  "profit_usd": 540000000.00,
  "drawdowns_usd": 2800000000.00,
  "committed_capital_usd": 3000000000.00,
  "source": "LP Reported",
  "source_type_key": "lp_reported",
  "currency": {"iso_code": "USD", "name": "US Dollar"},
  "last_updated_at": "2025-01-15T10:22:00Z"
}

Performance Fields

FieldTypeDescription
irrnumberInternal Rate of Return (e.g. 0.18 = 18%)
dpinumberDistributions to Paid-In multiple
rvpinumberResidual Value to Paid-In multiple
net_multiplenumberTotal Value to Paid-In (TVPI)
profit_usdnumberProfit in USD
drawdowns_usdnumberCapital drawn down in USD
committed_capital_usdnumberTotal committed capital in USD
sourcestringData source label
source_type_keystringMachine-readable source type

AUM History

Returns a time series of fund size records.

curl "https://api.altdmp.io/v3/partners/funds/73541611-0738-46fb-abbd-7e9dcf74b00c/aum/" \
  -H "Authorization: Bearer YOUR_TOKEN"
aum = requests.get(f"{BASE}/funds/{uuid}/aum/", headers=headers).json()

LP Commitments

Returns LP commitments into this fund — who invested and how much.

curl "https://api.altdmp.io/v3/partners/funds/50280c30-d626-44db-8aff-7cdf1eb323bb/commitments/" \
  -H "Authorization: Bearer YOUR_TOKEN"
commitments = requests.get(
    f"{BASE}/funds/50280c30-d626-44db-8aff-7cdf1eb323bb/commitments/",
    headers=headers,
).json()

Example commitment row (Bain Capital Asia III LP):

{
  "uuid": "...",
  "date": "2016-08-15",
  "investment_amount_usd": 50000000.00,
  "transaction_currency": {"iso_code": "USD"},
  "buyer": {
    "name": "GIC Private Limited",
    "uuid": "...",
    "type": "capital_allocator"
  },
  "seller": {
    "name": "Bain Capital Asia III",
    "uuid": "50280c30-d626-44db-8aff-7cdf1eb323bb",
    "type": "fund"
  }
}

Portfolio Investments

Returns companies this fund has invested in directly.

curl "https://api.altdmp.io/v3/partners/funds/73541611-0738-46fb-abbd-7e9dcf74b00c/investments/" \
  -H "Authorization: Bearer YOUR_TOKEN"
investments = requests.get(f"{BASE}/funds/{uuid}/investments/", headers=headers).json()

Investors

Last updated: 5 May 2026

The Investors endpoint is a unified cross-entity search across all investor types — VC firms, family offices, fund vehicles, legal entities, and individual people — in a single query. Use this when you know an entity invests but don’t know their entity type.

Endpoints

MethodEndpointAccess
GET/v3/partners/investors/Subscription required
POST/v3/partners/investors/Subscription required

List Investors

Each result row represents one investor × allocation type combination. An investor with both equity and debt investments appears as two separate rows.

curl "https://api.altdmp.io/v3/partners/investors/?search=Wavemaker" \
  -H "Authorization: Bearer YOUR_TOKEN"
import requests

BASE = "https://api.altdmp.io/v3/partners"
headers = {"Authorization": "Bearer YOUR_TOKEN"}

resp = requests.get(
    f"{BASE}/investors/",
    params={"search": "Wavemaker"},
    headers=headers,
)

Example response row:

{
  "uuid": "...",
  "name": "Wavemaker Group",
  "investor_type": "capital_allocator",
  "allocation_type_key": "equity",
  "allocation_type_name": "Equity",
  "total_invested_usd": 87500000.00,
  "no_of_invested_companies": 47,
  "first_investment_date": "2015-03-01",
  "latest_investment_date": "2024-11-20",
  "investments_by_deal_type": {
    "seed": {
      "amount_invested_usd": 12000000,
      "no_of_invested_companies": 18
    },
    "series_a": {
      "amount_invested_usd": 35000000,
      "no_of_invested_companies": 19
    },
    "series_b": {
      "amount_invested_usd": 40500000,
      "no_of_invested_companies": 10
    }
  }
}

Response Fields

FieldTypeDescription
uuidstringUUID of the investor entity
namestringInvestor display name
investor_typestringEntity type: legal_entity, capital_allocator, fund, person
allocation_type_keystringAsset class: equity, debt, commitment, other
allocation_type_namestringAsset class display name
total_invested_usdnumberTotal primary capital deployed (USD)
no_of_invested_companiesintegerDistinct companies invested in
first_investment_datestringDate of very first investment
latest_investment_datestringDate of most recent investment
investments_by_deal_typeobjectBreakdown by deal stage (amount + company count)

Query Parameters

ParameterDescription
searchFull-text search on investor name
investor_typeFilter by entity type: legal_entity, capital_allocator, fund, person
invested_in_stageFilter by deal stage key (e.g. seed, series_a)
invested_on_fromInvestments on or after this date (YYYY-MM-DD)
invested_on_toInvestments on or before this date (YYYY-MM-DD)
orderingSort field, prefix with - for descending
limitResults per page
offsetPagination offset

Filtering Examples

# All equity investors who made a Seed investment after 2022
curl "https://api.altdmp.io/v3/partners/investors/?invested_in_stage=seed&invested_on_from=2022-01-01" \
  -H "Authorization: Bearer YOUR_TOKEN"

# All investor types matching "Temasek"
curl "https://api.altdmp.io/v3/partners/investors/?search=Temasek" \
  -H "Authorization: Bearer YOUR_TOKEN"
# Seed investors after 2022
resp = requests.get(
    f"{BASE}/investors/",
    params={"invested_in_stage": "seed", "invested_on_from": "2022-01-01"},
    headers=headers,
)

# Search for Temasek
resp = requests.get(f"{BASE}/investors/", params={"search": "Temasek"}, headers=headers)

Advanced Filter (POST)

# Capital allocators named Wavemaker or East Ventures
curl -X POST https://api.altdmp.io/v3/partners/investors/ \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "filters": {
      "all": [
        {"op": "eq", "field": "investor_type", "value": "capital_allocator"},
        {"op": "in", "field": "name", "value": ["Wavemaker Group", "East Ventures"]}
      ]
    }
  }'
resp = requests.post(
    f"{BASE}/investors/",
    headers=headers,
    json={
        "filters": {
            "all": [
                {"op": "eq", "field": "investor_type", "value": "capital_allocator"},
                {"op": "in", "field": "name", "value": ["Wavemaker Group", "East Ventures"]},
            ]
        }
    },
)

Tip: To get full detail on an investor returned here, take the uuid and investor_type and call the corresponding detail endpoint: /capital-allocators/{uuid}/, /funds/{uuid}/, /legal-entities/{uuid}/, or /people/{uuid}/.

People

Last updated: 5 May 2026

The People resource covers founders, directors, employees, advisors, and other individuals linked to companies or funds.

Endpoints

MethodEndpointAccess
GET/v3/partners/people/Subscription required
POST/v3/partners/people/Subscription required
GET/v3/partners/people/{uuid}/Subscription required
GET/v3/partners/people/{uuid}/roles/Subscription required
GET/v3/partners/people/{uuid}/investments/Subscription required

List People

# All founders at Singapore companies
curl "https://api.altdmp.io/v3/partners/people/?role_type_key=person_association_founder" \
  -H "Authorization: Bearer YOUR_TOKEN"

# Directors named "Chan"
curl "https://api.altdmp.io/v3/partners/people/?role_type_key=person_association_director&search=Chan" \
  -H "Authorization: Bearer YOUR_TOKEN"
import requests

BASE = "https://api.altdmp.io/v3/partners"
headers = {"Authorization": "Bearer YOUR_TOKEN"}

# All founders
founders = requests.get(
    f"{BASE}/people/",
    params={"role_type_key": "person_association_founder"},
    headers=headers,
).json()

# Directors named Chan
directors = requests.get(
    f"{BASE}/people/",
    params={"role_type_key": "person_association_director", "search": "Chan"},
    headers=headers,
).json()

List Query Parameters

ParameterDescription
searchFull-text search on name
role_type_keyFilter by role: person_association_founder, person_association_director, person_association_employee, person_association_advisor
orderingSort field
limitResults per page
offsetPagination offset

Get Person Detail

# ShopBack co-founder Shanru Lai
curl "https://api.altdmp.io/v3/partners/people/f2eac778-a47b-497e-a4c6-ddd71335a404/" \
  -H "Authorization: Bearer YOUR_TOKEN"
uuid = "f2eac778-a47b-497e-a4c6-ddd71335a404"
person = requests.get(f"{BASE}/people/{uuid}/", headers=headers).json()

Example response:

{
  "uuid": "f2eac778-a47b-497e-a4c6-ddd71335a404",
  "given_name": "Shanru",
  "family_name": "Lai",
  "email": "...",
  "linkedin_url": "https://linkedin.com/in/..."
}

Roles

Returns all organisational roles held by a person across their career.

curl "https://api.altdmp.io/v3/partners/people/f2eac778-a47b-497e-a4c6-ddd71335a404/roles/" \
  -H "Authorization: Bearer YOUR_TOKEN"
roles = requests.get(f"{BASE}/people/{uuid}/roles/", headers=headers).json()

Example role row:

{
  "role_type": {
    "name": "Founder",
    "key": "person_association_founder"
  },
  "organisation": {
    "display_name": "Shopback",
    "uuid": "fee788ac-cffe-46f0-9bb5-fedb62992bd8"
  },
  "start_date": "2014-01-01",
  "end_date": null,
  "job_title": "Co-founder & CEO"
}

Role Type Keys

KeyDescription
person_association_founderFounder
person_association_directorBoard Director
person_association_employeeEmployee
person_association_advisorAdvisor

end_date: null means the person is currently in the role.


Personal Investments

Returns direct investments made by this person.

curl "https://api.altdmp.io/v3/partners/people/f2eac778-a47b-497e-a4c6-ddd71335a404/investments/" \
  -H "Authorization: Bearer YOUR_TOKEN"
investments = requests.get(f"{BASE}/people/{uuid}/investments/", headers=headers).json()

Service Providers

Last updated: 5 May 2026

Service providers are professional-services firms linked to companies — most commonly auditors, but also legal counsel, fund administrators, placement agents, and more.

Endpoints

MethodEndpointAccess
GET/v3/partners/service-providers/Subscription required
POST/v3/partners/service-providers/Subscription required
GET/v3/partners/service-providers/{uuid}/Subscription required

List Service Providers

# All auditors
curl "https://api.altdmp.io/v3/partners/service-providers/?service_type=service_provider_type_audit" \
  -H "Authorization: Bearer YOUR_TOKEN"

# Find Ernst & Young
curl "https://api.altdmp.io/v3/partners/service-providers/?search=Ernst+%26+Young" \
  -H "Authorization: Bearer YOUR_TOKEN"
import requests

BASE = "https://api.altdmp.io/v3/partners"
headers = {"Authorization": "Bearer YOUR_TOKEN"}

# All auditors
auditors = requests.get(
    f"{BASE}/service-providers/",
    params={"service_type": "service_provider_type_audit"},
    headers=headers,
).json()

# Find EY
ey = requests.get(
    f"{BASE}/service-providers/",
    params={"search": "Ernst & Young"},
    headers=headers,
).json()

Query Parameters

ParameterDescription
searchFull-text search on firm name
service_typeFilter by service type key (see table below)
orderingSort field
limitResults per page
offsetPagination offset

Service Type Keys

KeyDescription
service_provider_type_auditAuditor
service_provider_type_taxTax advisor
service_provider_type_complianceCompliance advisor
service_provider_type_law_firmLaw firm
service_provider_type_investment_bankInvestment bank
service_provider_type_placement_agentPlacement agent
service_provider_type_fund_administratorFund administrator
service_provider_type_lenderLender
service_provider_type_valuation_firmValuation firm
service_provider_type_management_consultantManagement consultant

Get Service Provider Detail

curl "https://api.altdmp.io/v3/partners/service-providers/{uuid}/" \
  -H "Authorization: Bearer YOUR_TOKEN"
uuid = "..."
provider = requests.get(f"{BASE}/service-providers/{uuid}/", headers=headers).json()

Example response (Ernst & Young LLP):

{
  "uuid": "...",
  "display_name": "Ernst & Young LLP",
  "service_types": [
    {"name": "Auditor", "key": "service_provider_type_audit"}
  ],
  "legal_entity": {
    "uuid": "...",
    "display_name": "Ernst & Young LLP",
    "domicile_country": {"name": "Singapore", "iso_alpha3": "SGP"},
    "registration_numbers": [
      {"reg_number": "...", "authority_name": "ACRA", "authority_label": "UEN"}
    ]
  }
}

Legal Entities

Last updated: 5 May 2026

Legal entities are the underlying registered companies behind every profile in the platform. Every capital receiver, capital allocator, fund, person, and service provider profile is associated with one or more legal entities.

Use the legal entities endpoint for:

Endpoints

MethodEndpointAccess
GET/v3/partners/legal-entities/Subscription required
POST/v3/partners/legal-entities/Subscription required
GET/v3/partners/legal-entities/{uuid}/Subscription required
GET/v3/partners/legal-entities/{uuid}/news/Subscription required
GET/v3/partners/legal-entities/{uuid}/investments/Subscription required

# Look up by UEN registration number
curl "https://api.altdmp.io/v3/partners/legal-entities/?registration_number=201411189G" \
  -H "Authorization: Bearer YOUR_TOKEN"

# Search by name
curl "https://api.altdmp.io/v3/partners/legal-entities/?search=ShopBack" \
  -H "Authorization: Bearer YOUR_TOKEN"
import requests

BASE = "https://api.altdmp.io/v3/partners"
headers = {"Authorization": "Bearer YOUR_TOKEN"}

# Look up by registration number (e.g. Singapore UEN)
resp = requests.get(
    f"{BASE}/legal-entities/",
    params={"registration_number": "201411189G"},
    headers=headers,
)

# Search by name
resp = requests.get(
    f"{BASE}/legal-entities/",
    params={"search": "ShopBack"},
    headers=headers,
)

Query Parameters

ParameterDescription
searchFull-text search on entity name
registration_numberLook up by exact registration number
orderingSort field
limitResults per page
offsetPagination offset

# ShopBack's underlying legal entity
curl "https://api.altdmp.io/v3/partners/legal-entities/fee788ac-cffe-46f0-9bb5-fedb62992bd8/" \
  -H "Authorization: Bearer YOUR_TOKEN"
uuid = "fee788ac-cffe-46f0-9bb5-fedb62992bd8"
entity = requests.get(f"{BASE}/legal-entities/{uuid}/", headers=headers).json()

Example response:

{
  "uuid": "fee788ac-cffe-46f0-9bb5-fedb62992bd8",
  "display_name": "Shopback",
  "year_founded": 2014,
  "registration_numbers": [
    {
      "reg_number": "201411189G",
      "authority_name": "Accounting and Corporate Regulatory Authority",
      "authority_label": "UEN"
    }
  ],
  "trading_status": {"name": "Operating", "key": "operating"},
  "domicile_country": {"name": "Singapore", "iso_alpha3": "SGP"},
  "headquarters": {
    "country_name": "Singapore",
    "country_iso_alpha3": "SGP",
    "city_name": "Singapore"
  },
  "description": "ShopBack operates a consumer-facing cashback and rewards platform.",
  "capital_receiver_profiles": [{"uuid": "c16a0ffd-4dbb-4f7b-a9ca-a3a47f93be67"}],
  "capital_allocator_profiles": [],
  "fund_profiles": []
}

Response Fields

FieldTypeDescription
uuidstringLegal entity UUID
display_namestringRegistered entity name
year_foundedintegerYear established
registration_numbersarrayOfficial identifiers (UEN, CIMA, etc.)
trading_statusobjectoperating, inactive, or closed
domicile_countryobjectCountry of incorporation
headquartersobjectPhysical HQ location
descriptionstringBusiness description
capital_receiver_profilesarrayLinked company profile UUIDs
capital_allocator_profilesarrayLinked investor profile UUIDs
fund_profilesarrayLinked fund profile UUIDs

News

Returns news articles linked to this legal entity.

curl "https://api.altdmp.io/v3/partners/legal-entities/fee788ac-cffe-46f0-9bb5-fedb62992bd8/news/" \
  -H "Authorization: Bearer YOUR_TOKEN"
news = requests.get(f"{BASE}/legal-entities/{uuid}/news/", headers=headers).json()

Investments

Returns investments made directly by this legal entity.

curl "https://api.altdmp.io/v3/partners/legal-entities/fee788ac-cffe-46f0-9bb5-fedb62992bd8/investments/" \
  -H "Authorization: Bearer YOUR_TOKEN"
investments = requests.get(f"{BASE}/legal-entities/{uuid}/investments/", headers=headers).json()

Reference Data

Last updated: 5 May 2026

The reference data endpoint exposes the full set of taxonomies and lookup lists used across the Partner API. Use it to build filter dropdowns, validate field values, and understand what keys are valid.

Cache this response. Reference data changes infrequently. Fetch it once at startup and cache it locally rather than calling it on every user interaction.

Endpoint

MethodEndpointAccess
GET/v3/partners/reference-data/Subscription required

Fetch All Reference Data

curl "https://api.altdmp.io/v3/partners/reference-data/" \
  -H "Authorization: Bearer YOUR_TOKEN"
import requests

BASE = "https://api.altdmp.io/v3/partners"
headers = {"Authorization": "Bearer YOUR_TOKEN"}

ref = requests.get(f"{BASE}/reference-data/", headers=headers).json()

Fetch Specific Sections

Use the type parameter to request only the data you need:

# Only enums and countries
curl "https://api.altdmp.io/v3/partners/reference-data/?type=enums,countries" \
  -H "Authorization: Bearer YOUR_TOKEN"

# Only specific enum categories
curl "https://api.altdmp.io/v3/partners/reference-data/?type=enums&enum_categories=allocation_types,themes" \
  -H "Authorization: Bearer YOUR_TOKEN"
# Fetch only enums
enums = requests.get(
    f"{BASE}/reference-data/",
    params={"type": "enums"},
    headers=headers,
).json()

# Fetch specific categories
resp = requests.get(
    f"{BASE}/reference-data/",
    params={"type": "enums", "enum_categories": "allocation_types,themes"},
    headers=headers,
).json()

type Parameter Values

ValueReturns
enumsAll enumerated choice values grouped by category
countriesAll countries with iso_alpha3 and name
citiesCities with name, state_name, and country_iso_alpha3
industriesIndustry codes with code and description
business_sic_codesBusiness SIC codes with code, description, and country_iso_alpha3

Omit type to fetch all sections at once.


Enum Categories

When type=enums is requested, use enum_categories to narrow to specific groups:

Category KeyExample Values
allocation_typesEquity, Debt, Commitment, Other
allocation_subtypesVenture Capital (VC), Private Equity (PE), M&A, Distressed Transactions, Liquidity Events
allocation_deal_typesPre-Seed, Seed, Series A–F, Buyout / LBO, Growth / Expansion, IPO, Secondary Transaction, Convertible Debt, Term Loan, Bridge Loan
capital_allocator_typesVenture Capital Firm, Private Equity Firm, Family Office – Single, Family Office – Multi, Sovereign Wealth Fund, Pension Fund, Endowment Fund Manager, Fund of Funds Manager, Corporate Investor, Banking Institution, Development Finance Institution (DFI), Wealth / Asset Manager
capital_allocator_allocates_fromFund, Balance Sheet, Both
person_role_typesFounder, Director, Employee, Advisor
service_typesAudit, Tax, Compliance, Law Firm, Investment Bank, Placement Agent, Fund Administrator, Lender, Valuation Firm, Management Consultant
preferred_fund_typesVenture Capital, Private Equity, Hedge Fund, Real Estate, Infrastructure
fund_statusesAnnounced, Raising, First Close, Second Close, Open, Closed, Evergreen, Liquidated, Upcoming
trading_statusesOperating, Inactive, Closed
deal_provenancesFiled with Regulator, Self-Declared, News / Media, Research
fund_performance_sourcesLimited Partner, General Partner
business_modelsB2B (Business-to-Business), B2C (Business-to-Consumer), P2P (Peer-to-Peer)
techsAgriTech, BioTech, CleanTech, DeepTech, EduTech, EnergyTech, FinTech, GovTech, HealthTech, HRTech, InsurTech, LegalTech, MarTech, PropTech
themesAI / GenAI / ML, Business Applications / SaaS, Buy Now Pay Later (BNPL), Climate / Green / Clean, Cybersecurity, Data Management & Analytics, Digital / Neo Banking, Digital Health Solutions, Payments, Quantum Computing, Smart City, Web 3 / Blockchain, Wellness
horizontalsAI / GenAI / ML, AR / VR / XR / Spatial Computing, Cloud / Edge Computing, Collaboration & Productivity Suites, Connectivity & Communications, Data Management & Analytics, IoT (Internet of Things), Marketplaces

Example Response Structure

{
  "enums": {
    "allocation_types": [
      {"name": "Equity", "key": "equity"},
      {"name": "Debt", "key": "debt"},
      {"name": "Commitment", "key": "commitment"},
      {"name": "Other", "key": "other"}
    ],
    "allocation_deal_types": [
      {"name": "Pre-Seed", "key": "pre_seed"},
      {"name": "Seed", "key": "seed"},
      {"name": "Series A", "key": "series_a"},
      {"name": "Series B", "key": "series_b"}
    ],
    "themes": [
      {"name": "AI / GenAI / ML", "key": "themes_ai_genai_ml"},
      {"name": "FinTech", "key": "themes_fintech"},
      {"name": "Payments", "key": "themes_payments"}
    ]
  },
  "countries": [
    {"name": "Singapore", "iso_alpha3": "SGP"},
    {"name": "Indonesia", "iso_alpha3": "IDN"},
    {"name": "Malaysia", "iso_alpha3": "MYS"},
    {"name": "Philippines", "iso_alpha3": "PHL"},
    {"name": "Thailand", "iso_alpha3": "THA"},
    {"name": "Vietnam", "iso_alpha3": "VNM"}
  ]
}

Usage Pattern

# Load reference data once at startup and cache
ref = requests.get(f"{BASE}/reference-data/?type=enums,countries", headers=headers).json()

# Build a lookup: key -> display name for deal types
deal_type_map = {
    item["key"]: item["name"]
    for item in ref["enums"]["allocation_deal_types"]
}

# Use it to label API results
for deal in deals["results"]:
    label = deal_type_map.get(deal["allocation_deal_type_key"], deal["allocation_deal_type_key"])
    print(f"{deal['date']}: {label}")