Lease documents

Request an upload session for a new document

Starts an upload for a PDF you want to turn into a lease document. Send the file to the endpoint you get back, then pass the sessionId to the create-document endpoint.

POST
https://api.portal.magicdoor.com/company-app/lease-documents/upload-sessions

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.

Query parameters

leaseIdstringrequired

The lease the document will belong to. A Snowflake id, sent as a decimal string.

example: 1830472847398404096

Body

application/json

Describe the file you are about to upload as a lease document.

fileNamestringrequired

Name to store the file under. 1 to 250 characters.

example: inspection-report.pdf
fileSizeintegerrequired

Size of the file in bytes. At least 1.

example: 284193
contentTypestringrequired

MIME type of the file. 1 to 200 characters.

example: application/pdf

Response

200 · Where to send the file.

sessionIdstring

Id of the upload session. Pass this back when you attach the finished file. A Snowflake id, sent as a decimal string.

endpointstring

Absolute URL to send the file to.

methodstring

HTTP method to use against endpoint.

fieldsobject

Form fields that must accompany the upload, exactly as given.

expiresstring · date-time

When the session stops accepting the upload, in the company's timezone.

400 · The request failed validation. `errors` maps each field name to what was wrong with it.

401 · The access token is missing, expired, or not for this company.

404 · No lease matched the id, or it belongs to another company.

How an upload works

Uploading is three calls. Ask for an upload session here, POST the file itself to the endpoint the session names with the fields it gives you, then hand the sessionId back to the endpoint that attaches the file. This endpoint does not receive the file.