curl --request GET \
--url https://api.entendre.finance/v1/assets \
--header 'X-API-Key: <api-key>'const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.entendre.finance/v1/assets', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.entendre.finance/v1/assets"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text){
"data": [
{
"id": "ast_abc123",
"asset_type": "ETH",
"quantity": "10.5",
"remaining_quantity": "8.25",
"cost_basis": "15750.00",
"currency": "USD",
"date_received": null,
"chain": null,
"legal_entity_id": null,
"ledger_account_id": null,
"transaction_id": null,
"source_id": null,
"is_manual": false,
"created_at": null,
"updated_at": null
}
],
"has_more": false,
"next_cursor": null
}{
"error": {
"code": "VALIDATION_ERROR",
"message": "Invalid path, query or request body.",
"request_id": "req_example"
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "Invalid or expired API Key",
"request_id": "req_example",
"suggested_action": "Send an API key in X-API-Key, or an OAuth access token as Authorization: Bearer. Refresh an expired access token.",
"documentation_url": "https://entendre.ai/docs/get-started/authentication"
}
}{
"error": {
"code": "FORBIDDEN",
"message": "Insufficient access to organization",
"request_id": "req_example"
}
}{
"error": {
"code": "RESOURCE_NOT_FOUND",
"message": "Resource not found",
"request_id": "req_example"
}
}{
"error": {
"code": "RATE_LIMITED",
"message": "Rate limit exceeded. Retry after 30s.",
"request_id": "req_example"
}
}{
"error": {
"code": "INTERNAL_ERROR",
"message": "Internal server error",
"request_id": "req_example"
}
}{
"error": {
"code": "SERVICE_UNAVAILABLE",
"message": "Service unavailable.",
"request_id": "req_example"
}
}List assets
Lists asset acquisition records with their remaining quantities and cost basis.
curl --request GET \
--url https://api.entendre.finance/v1/assets \
--header 'X-API-Key: <api-key>'const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.entendre.finance/v1/assets', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.entendre.finance/v1/assets"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text){
"data": [
{
"id": "ast_abc123",
"asset_type": "ETH",
"quantity": "10.5",
"remaining_quantity": "8.25",
"cost_basis": "15750.00",
"currency": "USD",
"date_received": null,
"chain": null,
"legal_entity_id": null,
"ledger_account_id": null,
"transaction_id": null,
"source_id": null,
"is_manual": false,
"created_at": null,
"updated_at": null
}
],
"has_more": false,
"next_cursor": null
}{
"error": {
"code": "VALIDATION_ERROR",
"message": "Invalid path, query or request body.",
"request_id": "req_example"
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "Invalid or expired API Key",
"request_id": "req_example",
"suggested_action": "Send an API key in X-API-Key, or an OAuth access token as Authorization: Bearer. Refresh an expired access token.",
"documentation_url": "https://entendre.ai/docs/get-started/authentication"
}
}{
"error": {
"code": "FORBIDDEN",
"message": "Insufficient access to organization",
"request_id": "req_example"
}
}{
"error": {
"code": "RESOURCE_NOT_FOUND",
"message": "Resource not found",
"request_id": "req_example"
}
}{
"error": {
"code": "RATE_LIMITED",
"message": "Rate limit exceeded. Retry after 30s.",
"request_id": "req_example"
}
}{
"error": {
"code": "INTERNAL_ERROR",
"message": "Internal server error",
"request_id": "req_example"
}
}{
"error": {
"code": "SERVICE_UNAVAILABLE",
"message": "Service unavailable.",
"request_id": "req_example"
}
}asset_type identifies the asset, such as ETH. One asset can have several acquisition records.Authorizations
Your organization API key. See Authentication.
Query Parameters
Exact asset IDs. Combine with other filters to narrow the result.
1 - 100 elementsAsset ID returned by this API.
Sort field.
date_received, asset_type, quantity, cost_basis, created_at Sort direction.
asc, desc Filter by one or more legal entity IDs. Omit to include all authorized entities. An empty list is invalid.
Prefixed ledger account IDs (lac_). Up to 100 IDs.
Filter by asset type (such as ETH, BTC).
Filter by blockchain chain.
Filter assets received on or after this date (ISO 8601).
Filter assets received on or before this date (ISO 8601).
Maximum number of records to return.
1 <= x <= 100The next_cursor value from the previous page. Keep the other filters unchanged.
Add the existing full asset valuation for each selected row. Omit to keep the current response and avoid pricing work. Canonical lot quantities, basis and timestamps do not change.
valuation Valuation date. Requires expand=valuation. This does not change acquisition-date filters.
Owned period for valuation. Requires expand=valuation. A period outside the current month uses its end date; otherwise selected_date or the current time applies.