Application questionnaire

Answer the application questionnaire

Records answers to the questionnaire on this application. Each entry points at one answer option by its position in the question tree and says whether it is selected. Requires the rental_applications:write permission.

PUT
https://services.magicdoor.com/leasing/company-portal/rental-applications/{applicationId}/application-questions

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

applicationIdstringrequired

The rental application to work with. A Snowflake id, sent as a decimal string.

example: 1830472847398404096

Body

application/json

Answers are merged into the stored questionnaire — options you do not mention keep their current state. Send every entry for one save in a single call; the whole batch is applied together or not at all.

answersAnswer[]required

The answer options to set.

Response

204 · The answers were saved. The response has no body — re-read the application to see the merged questionnaire.

400 · One of the entries broke a rule. The `errorCode` says which: `invalid_answer_path` for a path that is malformed, out of range, does not end on an answer, or is repeated in the same call; `not_multi_select` for selecting more than one option on a single-select question; `freeform_not_allowed` for text on an option that takes none, empty text on a selected freeform option, or text over 500 characters; `orphan_followup` for answering a follow-up whose parent option ends up unselected. Every one of them carries the offending `path`.

401 · The access token is missing, expired, or not valid.

403 · The caller is authenticated but does not hold the `rental_applications:write` permission.

404 · No questionnaire with this id exists on this rental application, or the rental application itself was not found.

Allowed in every application status

This is not gated on the application's status — it works on a draft, on a submitted application, and on a retracted one. Only the applicant-facing portal locks an application once it is submitted.

Read questions from the rental application first. It is an object keyed by question category — general and employment — and each value is an ordered list of questions. A path walks that structure using zero-based positions:

PathWhat it points at
general.0.answers.1Second option of the first general question
employment.2.answers.0First option of the third employment question
general.0.answers.1.followUps.0.answers.2Third option of the first follow-up under that second option
Unselecting a parent orphans its follow-ups

If the result of your batch leaves a follow-up answer selected under an option that is not selected, the whole call is rejected with orphan_followup. Unselect the follow-ups in the same call as the parent.