Tax Lots
Cost basis tracking, tax lot inventory, and disposal history
Generate a tax report
Authorization
bearerAuth Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....
In: header
Query Parameters
uuid"schedule_d" | "form_8949" | "liability_summary" | "vat_reconciliation" | "withholding_register" | "provision_vs_cash"Required for schedule_d and form_8949.
uuidRequired for schedule_d and form_8949. The calendar year to report on.
Response format. pdf returns a PDF binary (schedule_d only). Default: json.
"json" | "pdf"Start date for non-capital-gains reports.
dateEnd date for non-capital-gains reports.
dateResponse Body
application/json
application/json
curl -X GET "https://app.axiomatic.software/api/tax-reports?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08&report=schedule_d"{}{
"error": "string"
}{
"error": "string"
}List tax lots, disposals, or summary
Authorization
bearerAuth Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....
In: header
Query Parameters
uuiduuidResponse shape: lots (default), disposals, or summary.
"lots" | "disposals" | "summary"Filter lots by asset symbol (e.g. ETH). Only applies when view=lots.
Set to open to return only lots with remaining quantity > 0. Only applies when view=lots.
"open"Response Body
application/json
application/json
application/json
curl -X GET "https://app.axiomatic.software/api/tax-lots?entityId=497f6eca-6276-4993-bfeb-53cbbbba6f08"[
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"entityId": "156e622c-6cdf-4c27-9bc9-2f2db69919f5",
"bookId": "710266f4-0087-48f9-97e1-4b13ac48f353",
"asset": "string",
"assetType": "EQUITY",
"quantity": "string",
"remainingQuantity": "string",
"costBasisPerUnit": "string",
"totalCostBasis": "string",
"acquiredDate": "2019-08-24",
"source": "NATIVE",
"method": "ONCHAIN",
"status": "OPEN",
"eventId": "d6703cc8-9e79-415d-ac03-a4dc7f6ab43c",
"externalRef": "string",
"metadata": {},
"createdAt": "2019-08-24T14:15:22Z"
}
]{
"error": "string"
}{
"error": "string"
}Import broker-reported tax lots
Authorization
bearerAuth Create keys under Settings → API keys. Prefix ak_. Send as Authorization: Bearer ak_....
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
curl -X POST "https://app.axiomatic.software/api/tax-lots" \ -H "Content-Type: application/json" \ -d '{ "entityId": "156e622c-6cdf-4c27-9bc9-2f2db69919f5", "bookId": "710266f4-0087-48f9-97e1-4b13ac48f353", "action": "import", "brokerName": "string", "lots": [ { "asset": "string", "quantity": "string", "costBasis": "string", "acquiredDate": "2019-08-24" } ] }'{
"imported": 0,
"lots": [
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"entityId": "156e622c-6cdf-4c27-9bc9-2f2db69919f5",
"bookId": "710266f4-0087-48f9-97e1-4b13ac48f353",
"asset": "string",
"assetType": "EQUITY",
"quantity": "string",
"remainingQuantity": "string",
"costBasisPerUnit": "string",
"totalCostBasis": "string",
"acquiredDate": "2019-08-24",
"source": "NATIVE",
"method": "ONCHAIN",
"status": "OPEN",
"eventId": "d6703cc8-9e79-415d-ac03-a4dc7f6ab43c",
"externalRef": "string",
"metadata": {},
"createdAt": "2019-08-24T14:15:22Z"
}
]
}{
"error": "string"
}{
"error": "string"
}