Owner tax documents

Create or replace one owner's tax document

Generates a 1099-MISC for one owner and tax year with the amounts you supply, replacing any document already generated for that owner and year. Generation is asynchronous — the returned document starts in notStarted or inProgress and only carries a documentUrl once status reaches completed.

PUT
https://api.portal.magicdoor.com/company-app/owners/tax-documents/{ownerId}/{taxType}/{calendarYear}

Authorization

Authorizationstringrequired
Bearer token — Send your API token in the Authorization header as Bearer <token>. Requests without a valid token are rejected with 401 Unauthorized.

Path parameters

ownerIdstringrequired

The owner the document is for. A Snowflake id sent as a decimal string.

example: 1812910038475120640
taxTypeenum<string>required

Which form to generate. Owners take misc — the 1099-MISC. nec is rejected for an owner.

example: miscmiscnec
calendarYearintegerrequired

The tax year the document reports.

example: 2025

Body

application/json

accountId is part of this body but the owner actually used is the one in the path.

accountIdstringrequired

The owner the amounts belong to. A Snowflake id sent as a decimal string.

rentAmountnumberrequired

Rents paid to the owner over the year, in dollars and cents — box 1 of the 1099-MISC.

otherAmountnumberrequired

Other income paid to the owner over the year, in dollars and cents.

Response

200 · The tax document. Poll the list endpoints until `status` is `completed` before using `documentUrl`.

idstring

The tax document. A Snowflake id sent as a decimal string.

calendarYearinteger

The tax year the document reports.

taxDocumentTypeenum<string>

Which 1099 form this is. misc is the 1099-MISC used for owners; nec is the 1099-NEC used for vendors.

miscnec
entityIdstring

The owner or vendor the document is for, depending on which endpoint returned it. Absent when the record has no account on it.

entityNamestring

That owner's or vendor's name, for display. Absent when the account could not be resolved.

amountnumber

Rents paid to the owner over the year, in dollars and cents — box 1 of the 1099-MISC.

otherAmountnumber

Other income paid to the owner over the year, in dollars and cents — the 1099-MISC's other-income box.

statusenum<string>

How far generating the PDF has got. Only completed means documentUrl is there to download.

notStartedinProgresscompletedfailednotFound
taskErrorMessagestring

Why generation failed. Absent unless status is failed.

documentNamestring

The file name of the generated PDF. Absent until it has been generated.

documentUrlstring

A signed, time-limited URL to download the generated PDF. Absent until it has been generated.

irsStatusstring

Where this document sits in an IRS electronic filing, when it has been included in one. Absent when it has not been filed.

annotationsobject[]

Where each value is drawn on the PDF form. Only needed to render or overlay the form yourself.

createdAtstring · date-time

When the document was created, in the company's timezone.

updatedAtstring · date-time

When it last changed, in the company's timezone. Absent when it has never changed.

400 · `taxType` is not valid for an owner, or an amount is missing or not a currency value.

401 · The access token is missing, expired, or does not belong to a property manager.

404 · No owner with that id exists for the caller's company.