Model Types

Get characteristics of available entities, including their associated attributes, attributes required for creation, and which attributes are editable. Use this API alongside the Entities API to discover, create, and edit entities more easily.

We generally use the term "model type" for a kind of entity. However, this API was written to use "entity type". They mean the same thing. This API provides model type information.

Base route/v1/entity_types
EndpointsGET
/v1/entity_types
/v1/entity_types/:id
ProducesJSON
PaginationNo
Application permissions required"API Access: Create, edit, and delete" is required to retrieve available model types.
OAuth scopesENTITIES or ENTITIES_WRITE

Resource overview

Types are described by the below resource object attributes and will appear in successful GET responses.

AttributeDescriptionExample
display_nameDisplay name of the model type. String."Person"
categoryCategory for the model type. String."Security"
ownership_typeThe model type's ownership type. String."share_based"
entity_attributesAttribute properties. Object.See model type attributes

Model type attributes

AttributeDescriptionExample
keyThe attribute's name. String."currency_factor"
requiredSpecifies if attribute is required for entity creation or modification. Boolean.true
writabilityIndicates whether attribute can be modified. String.

- MUTABLE: Can be edited with permission.
- IMMUTABLE: Cannot be set or modified.
- FINAL: Can be set upon entity creation but cannot be modified.
- RESTRICTED_FOR_ONLINE: Requires "edit online data" permissions to modify.
"MUTABLE"

Supported model types

NameAPI display nameOwnership type
HouseholdhouseholdPercent-based
Clientperson_nodePercent-based
ProspectprospectPercent-based
Managed fundmanaged_partnershipShare-based or value-based
Holding companyholding_companyPercent-based
ManagermanagerPercent-based
Private fundfundValue-based
TrusttrustPercent-based
VehiclevehiclePercent-based
Holding Accountfinancial_accountPercent-based
SleevesleevePercent-based
AnnuityannuityValue-based
BondbondShare-based
Certificate of depositcertificate_of_depositShare-based
Closed end fundclosed_end_fundShare-based
CMOcmoShare-based
Convertible noteconvertible_noteShare-based
Custom asset, or any other custom investment type that's not in this list, like "hedge fund" or "real estate"generic_assetAny
CurrencycashShare-based
Digital assetdigital_assetShare-based
ETFetfShare-based
ETNetnShare-based
Forward contractforward_contractShare-based
Futures contractfutures_contractShare-based
Historical segmenthistorical_segmentValue-based
LoanloanValue-based
Master limited partnershipmaster_limited_partnershipShare-based
Money market fundmoney_market_fundShare-based
Mutual fundmutual_fundShare-based
OptionoptionShare-based
Preferred stockpreferred_stockShare-based
REITreitShare-based
StockstockShare-based
Structured productstructured_productShare-based
UITuitShare-based
Unknown securityunknown_securityShare-based
WarrantwarrantShare-based

Get all model types

Returns a list of all model types.

GET /v1/entity_types

Example:

GET https://examplefirm.addepar.com/api/v1/entity_types
HTTP/1.1 200

{
    "data": [
      {
        "id": "person_node",
        "type": "entity_types",
        "attributes": {
          "entity_attributes": [
            {
              "key": "currency_factor",
              "required": true,
              "writability": "MUTABLE"
            },
            {
              "key": "original_name",
              "required": false,
              "writability": "MUTABLE"
            },
            {
              "key": "display_name",
              "required": false,
              "writability": "MUTABLE"
            }
          ],
          "display_name": "Person",
        },
        "links": {
          "self": "/v1/entity_types/person_node"
        }
      },
      {
        "id": "stock",
        "type": "entity_types",
        "attributes": {
          "ownership_type": "share_based",
          "entity_attributes": [
            {
              "key": "currency_factor",
              "required": true,
              "writability": "IMMUTABLE"
            },
            {
              "key": "original_name",
              "required": true,
              "writability": "IMMUTABLE"
            },
            {
              "key": "ownership_type",
              "required": true,
              "writability": "IMMUTABLE"
            },
            {
              "key": "ticker_symbol",
              "required": false,
              "writability": "IMMUTABLE"
            },
            {
              "key": "display_name",
              "required": false,
              "writability": "MUTABLE"
            },
            {
              "key": "cusip",
              "required": false,
              "writability": "IMMUTABLE"
            },
            {
              "key": "isin",
              "required": false,
              "writability": "IMMUTABLE"
            },
            {
              "key": "sedol",
              "required": false,
              "writability": "IMMUTABLE"
            },
            {
              "key": "secid_id",
              "required": false,
              "writability": "IMMUTABLE"
            },
            {
              "key": "secid_element_type",
              "required": false,
              "writability": "IMMUTABLE"
            },
            {
              "key": "secid_verification_state",
              "required": false,
              "writability": "IMMUTABLE"
            }
          ],
          "category": "Security",
          "display_name": "Stock",
        },
        "links": {
          "self": "/v1/entity_types/stock"
        }
      }
    ],
    "included": [],
    "links": {
        "next": null
    }
}

Response Codes:

  • 200 OK: Success
  • 403 Forbidden: Insufficient application permissions or appropriate scope not granted

Get a model type

Returns details about a specified model type.

GET /v1/entity_types/:id

GET https://examplefirm.addepar.com/api/v1/entity_types/bond
HTTP/1.1 200

{
  "data": {
    "id": "bond",
    "type": "entity_types",
    "attributes": {
      "ownership_type": "share_based",
      "entity_attributes": [
        {
          "key": "currency_factor",
          "required": true,
          "writability": "MUTABLE"
        },
        {
          "key": "original_name",
          "required": true,
          "writability": "IMMUTABLE"
        },
        {
          "key": "ownership_type",
          "required": true,
          "writability": "IMMUTABLE"
        },
        {
          "key": "display_name",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "cusip",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "isin",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "sedol",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "bond_type",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "coupon_rate",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "coupon_type",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "bond_frequency",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "original_principal_per_share",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "issue_date",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "dated_date",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "accrual_start_date",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "first_payment_date",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "last_payment_date",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "maturity_date",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "day_count_convention",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "call_info",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "is_prerefunded",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "secid_id",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "secid_element_type",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "secid_verification_state",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "coupon_cap",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "coupon_floor",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "reset_frequency",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "first_variable_coupon_date",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "floating_index",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "floating_spread",
          "required": false,
          "writability": "IMMUTABLE"
        },
        {
          "key": "actual_security_type",
          "required": false,
          "writability": "IMMUTABLE"
        }
      ],
      "category": "Security",
      "display_name": "Bond",
    },
    "links": {
      "self": "/v1/entity_types/bond"
    }
  },
  "included": []
}

Response Codes:

  • 200 OK: Success
  • 403 Forbidden: Insufficient application permissions or appropriate scope not granted
  • 404 Not Found: Invalid model type