Onboarding Questionnaire - Admin

File a document received out of band (admin-supplied)

Attach a document the dealer sent us outside the questionnaire.

The case this exists for: onboarding is finished, the questionnaire is closed, and the certidão permanente arrives by email weeks later. Without this the only way to file it is to reopen a completed questionnaire and wait for the client to re-upload — a state transition and a round trip to record a PDF somebody already sent us.

Rate limited per USER, not per IP: signed-in traffic reaches us through a handful of CloudFront edge addresses, so an IP bucket here would throttle unrelated tenants together (services/rate_limit.py says so explicitly).

⚠️ This route MUST stay under the /api/admin/onboarding-questionnaires prefix. That prefix is in the audit middleware's _BODY_OMIT_PREFIXES, so the middleware never calls await request.body() on it — which is what keeps a 10MB PDF out of both the audit table and the middleware's buffer. It is the only multipart POST on the audited /api surface.

Ambient-tenant rule: the company is whatever the loaded questionnaire row says, never user["idcompany"].

post/api/admin/onboarding-questionnaires/{questionnaire_id}/uploads/{kind}

Request

  • Base URL
    https://api.multigest.pt (the document declares no server; this is the origin it was published from)
  • URL
    https://api.multigest.pt/api/admin/onboarding-questionnaires/{questionnaire_id}/uploads/{kind}
  • Auth
    API key in header x-api-token and API key in header x-origin-verify

Path parameters

questionnaire_idinteger required
kindstring required

certidao_permanente | proof_of_address

Headers

x-api-tokenstring nullable

Request body multipart/form-data

filestring binary required

Response

Successful Response

unknown required

Changes

No recorded changes to this operation across all 21 revisions of this API.