> For the complete documentation index, see [llms.txt](https://partner.doc.bunq.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://partner.doc.bunq.com/documentation/bunq-as-a-service/chapter-7-compliance/user-information-inquiry.md).

# User Information Inquiry

## List User Information Inquiries

> Returns all \`UserInformationInquiry\` objects for the given provisioned user.\
> \
> Partners have \*\*read-only\*\* access to inquiries. Inquiries are created internally by bunq\
> based on compliance or onboarding triggers — partners cannot create or update them.\
> \
> \*\*Merging behavior\*\*: When multiple inquiries are created for the same user under the same\
> context, bunq merges them into a single inquiry and appends new entries to it.\
> \
> \*\*Polling recommendation\*\*: Use \`status=EXPECTING\_REPLY\_FROM\_USER\` to find open inquiries\
> that still require user action.<br>

```json
{"openapi":"3.1.0","info":{"title":"bunq Partner API","version":"1.0.0"},"tags":[{"name":"User Information Inquiry","description":"Read-only access to compliance and onboarding information requests for provisioned users"}],"servers":[{"url":"https://partner-api.sandbox.bunq.com","description":"Sandbox Partner API Server"},{"url":"https://api.partner.bunq.com","description":"Production Partner API Server"}],"security":[{"SessionAuth":[]},{"ClientSignature":[]}],"components":{"securitySchemes":{"SessionAuth":{"type":"apiKey","in":"header","name":"X-Bunq-Client-Authentication","description":"Session token received from POST /session-server"},"ClientSignature":{"type":"apiKey","in":"header","name":"X-Bunq-Client-Signature","description":"HMAC-SHA256 signature of request body using private key"}},"parameters":{"CacheControl":{"name":"Cache-Control","in":"header","required":false,"schema":{"type":"string","default":"no-cache"}},"UserAgent":{"name":"User-Agent","in":"header","required":false,"schema":{"type":"string"}},"BunqLanguage":{"name":"X-Bunq-Language","in":"header","required":false,"schema":{"type":"string","default":"en_US"}},"BunqRegion":{"name":"X-Bunq-Region","in":"header","required":false,"schema":{"type":"string","default":"NL"}},"BunqGeolocation":{"name":"X-Bunq-Geolocation","in":"header","required":false,"schema":{"type":"string"}},"BunqClientRequestId":{"name":"X-Bunq-Client-Request-Id","in":"header","required":false,"schema":{"type":"string"}},"BunqClientAuthentication":{"name":"X-Bunq-Client-Authentication","in":"header","required":true,"schema":{"type":"string","description":"Session token from POST /session-server"}},"BunqClientSignature":{"name":"X-Bunq-Client-Signature","in":"header","required":true,"schema":{"type":"string","description":"HMAC-SHA256 signature of request"}}},"schemas":{"UserInformationInquiry":{"type":"object","required":["id","created","updated","user_id","status","all_entry"],"properties":{"id":{"type":"integer"},"created":{"type":"string","format":"date-time"},"updated":{"type":"string","format":"date-time"},"user_id":{"type":"integer","description":"The ID of the user the inquiry is addressed to."},"title":{"type":"string","description":"Translated display title for the inquiry."},"subtitle":{"type":"string","description":"Translated display subtitle."},"purpose":{"type":"string","description":"Why this inquiry was created. Common values:\n- `ONBOARDING`: Initial user onboarding verification\n- `COMPLIANCE_TRANSACTION_MONITORING`: Triggered by transaction monitoring\n- `COMPLIANCE_SCREENING`: Compliance screening review\n- `DOCUMENT_EXPIRY_RENEWAL`: An existing document has expired and needs renewal\n- `EMPLOYMENT_STATUS_VERIFY`: Employment status verification\n"},"status":{"type":"string","enum":["EXPECTING_REPLY_FROM_USER","EXPECTING_REPLY_FROM_BUNQ","FINALIZED"],"description":"Current status of the overall inquiry:\n- `EXPECTING_REPLY_FROM_USER`: Open and awaiting user action\n- `EXPECTING_REPLY_FROM_BUNQ`: User has responded; bunq is processing\n- `FINALIZED`: Fully resolved\n"},"all_entry":{"type":"array","description":"List of individual information requests.","items":{"$ref":"#/components/schemas/UserInformationInquiryEntry"}},"assistant_conversation":{"type":["object","null"],"description":"The associated AI conversation (backward-compatible field)."},"finn_conversation":{"type":["object","null"],"description":"The Finn AI conversation linked to this inquiry."},"time_expiry":{"type":["string","null"],"format":"date-time","description":"Deadline by which the inquiry must be completed. Null if no deadline."},"external_model_name":{"type":"string","description":"The type of the model this inquiry is about (e.g. USER_PERSON)."},"external_model_id":{"type":"integer","description":"The ID of the model this inquiry is about (typically the user ID)."}}},"UserInformationInquiryEntry":{"type":"object","required":["id","created","updated","type","status","all_data_submitted","entry_description"],"properties":{"id":{"type":"integer"},"created":{"type":"string","format":"date-time"},"updated":{"type":"string","format":"date-time"},"type":{"type":"string","description":"The specific kind of information being requested. Selected examples:\n- `USER_PERSON_INVOLVEMENT_IN_POLITICS`: Whether the user is politically exposed\n- `USER_PERSON_SOURCE_OF_INCOME`: User's source of income\n- `USER_PERSON_SOURCE_OF_FUND`: User's source of funds\n- `USER_PERSON_COUNTRY_OF_BIRTH`: User's country of birth\n- `USER_PERSON_ACCOUNT_PURPOSE`: Intended purpose of the bank account\n- `IDENTIFICATION_DOCUMENT_VERIFY`: Identity document verification\n- `USER_COMPANY_RECORD_OF_SHAREHOLDERS`: Shareholder register for a company\n- `USER_COMPANY_SOURCE_OF_FUND`: Company's source of funds\n"},"status":{"type":"string","enum":["PENDING","SUBMITTED","WAITING_FOR_REVIEW","AUTO_APPROVED","AUTO_REJECTED","APPROVED","REJECTED","CANCELLED"],"description":"Current status of this entry:\n- `PENDING`: Not yet addressed by the user\n- `SUBMITTED`: User has submitted a response via the conversation\n- `WAITING_FOR_REVIEW`: Submission received and queued for review\n- `AUTO_APPROVED`: Automatically approved by evaluation\n- `AUTO_REJECTED`: Automatically rejected by evaluation\n- `APPROVED`: Manually approved\n- `REJECTED`: Manually rejected\n- `CANCELLED`: No longer requires action\n"},"all_data_submitted":{"type":"array","description":"Data submitted by the user for this entry. Present once submission has occurred.","items":{"type":"object"}},"assistant_conversation":{"type":["object","null"],"description":"The AI conversation for this specific entry."},"context":{"type":"object","description":"Additional context provided when the inquiry was created (e.g. a specific transaction). Empty if not applicable."},"reject_reason":{"type":["string","null"],"description":"Reason for rejection, if the entry was rejected."},"entry_description":{"type":"string","description":"Human-readable label for the entry type."}}},"Pagination":{"type":"object","properties":{"future_url":{"type":["string","null"],"description":"URL to poll for results newer than the current real-time window (useful for long-polling; null if not applicable)."},"newer_url":{"type":["string","null"],"description":"URL to fetch the next newer page relative to the current result set (null if at newest page)."},"older_url":{"type":["string","null"],"description":"URL to fetch an older page (null if none)."}}},"Error":{"type":"object","properties":{"Error":{"type":"array","items":{"type":"object","properties":{"error_description":{"type":"string"},"error_description_translated":{"type":"string"}}}}}}}},"paths":{"/user/{userId}/user-information-inquiry":{"get":{"tags":["User Information Inquiry"],"summary":"List User Information Inquiries","description":"Returns all `UserInformationInquiry` objects for the given provisioned user.\n\nPartners have **read-only** access to inquiries. Inquiries are created internally by bunq\nbased on compliance or onboarding triggers — partners cannot create or update them.\n\n**Merging behavior**: When multiple inquiries are created for the same user under the same\ncontext, bunq merges them into a single inquiry and appends new entries to it.\n\n**Polling recommendation**: Use `status=EXPECTING_REPLY_FROM_USER` to find open inquiries\nthat still require user action.\n","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"integer"},"description":"ID of the provisioned user."},{"name":"status","in":"query","required":false,"schema":{"type":"array","items":{"type":"string","enum":["EXPECTING_REPLY_FROM_USER","EXPECTING_REPLY_FROM_BUNQ","FINALIZED"]}},"description":"Filter by inquiry status (comma-separated values supported):\n- `EXPECTING_REPLY_FROM_USER`: Open inquiries awaiting user action\n- `EXPECTING_REPLY_FROM_BUNQ`: User has responded; bunq is processing\n- `FINALIZED`: Resolved inquiries\n","style":"form","explode":false},{"name":"type","in":"query","required":false,"schema":{"type":"string"},"description":"Filter by inquiry type, e.g. `USER_PERSON` or `USER_COMPANY` (comma-separated)."},{"name":"purpose","in":"query","required":false,"schema":{"type":"string"},"description":"Filter by inquiry purpose, e.g. `ONBOARDING` (comma-separated)."},{"name":"fulfillment_type","in":"query","required":false,"schema":{"type":"string"},"description":"Filter by fulfillment type (comma-separated)."},{"$ref":"#/components/parameters/CacheControl"},{"$ref":"#/components/parameters/UserAgent"},{"$ref":"#/components/parameters/BunqLanguage"},{"$ref":"#/components/parameters/BunqRegion"},{"$ref":"#/components/parameters/BunqGeolocation"},{"$ref":"#/components/parameters/BunqClientRequestId"},{"$ref":"#/components/parameters/BunqClientAuthentication"},{"$ref":"#/components/parameters/BunqClientSignature"}],"responses":{"200":{"description":"List of user information inquiries","content":{"application/json":{"schema":{"type":"object","properties":{"Response":{"type":"array","items":{"type":"object","properties":{"UserInformationInquiry":{"$ref":"#/components/schemas/UserInformationInquiry"}}}},"Pagination":{"$ref":"#/components/schemas/Pagination"}}}}}},"400":{"description":"Bad request - invalid parameters","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}}}
```

## Submit answer for inquiry entry

> Submit an answer for a specific \`UserInformationInquiryEntry\` on behalf of the provisioned\
> user. This is how partners provide the information bunq has requested.\
> \
> Each entry can be answered with either:\
> \- \*\*Attachments\*\* (\`all\_attachment\_id\`): for document-based entries (e.g. ID verification,\
> &#x20; bank statements). Upload the files first via \`POST /user/{userId}/attachment\`, then\
> &#x20; pass the resulting attachment IDs here.\
> \- \*\*Free text\*\* (\`answer\`): for open-ended questions (e.g. source of income, account\
> &#x20; purpose). Both fields are optional but at least one must be provided.\
> \
> After a successful PUT the entry status transitions to \`WAITING\_FOR\_REVIEW\`. Once all\
> entries in the inquiry are in \`WAITING\_FOR\_REVIEW\`, the inquiry status moves to\
> \`EXPECTING\_REPLY\_FROM\_BUNQ\`.\
> \
> \*\*Constraints:\*\*\
> \- Only entries with status \`PENDING\` can be updated. Submitting against a non-pending\
> &#x20; entry (e.g. \`CANCELLED\`, \`APPROVED\`) returns HTTP 400.\
> \- Attachments must belong to the provisioned user. Passing an attachment owned by a\
> &#x20; different user returns HTTP 400.<br>

```json
{"openapi":"3.1.0","info":{"title":"bunq Partner API","version":"1.0.0"},"tags":[{"name":"User Information Inquiry","description":"Read-only access to compliance and onboarding information requests for provisioned users"}],"servers":[{"url":"https://partner-api.sandbox.bunq.com","description":"Sandbox Partner API Server"},{"url":"https://api.partner.bunq.com","description":"Production Partner API Server"}],"security":[{"SessionAuth":[]},{"ClientSignature":[]}],"components":{"securitySchemes":{"SessionAuth":{"type":"apiKey","in":"header","name":"X-Bunq-Client-Authentication","description":"Session token received from POST /session-server"},"ClientSignature":{"type":"apiKey","in":"header","name":"X-Bunq-Client-Signature","description":"HMAC-SHA256 signature of request body using private key"}},"parameters":{"CacheControl":{"name":"Cache-Control","in":"header","required":false,"schema":{"type":"string","default":"no-cache"}},"UserAgent":{"name":"User-Agent","in":"header","required":false,"schema":{"type":"string"}},"BunqLanguage":{"name":"X-Bunq-Language","in":"header","required":false,"schema":{"type":"string","default":"en_US"}},"BunqRegion":{"name":"X-Bunq-Region","in":"header","required":false,"schema":{"type":"string","default":"NL"}},"BunqGeolocation":{"name":"X-Bunq-Geolocation","in":"header","required":false,"schema":{"type":"string"}},"BunqClientRequestId":{"name":"X-Bunq-Client-Request-Id","in":"header","required":false,"schema":{"type":"string"}},"BunqClientAuthentication":{"name":"X-Bunq-Client-Authentication","in":"header","required":true,"schema":{"type":"string","description":"Session token from POST /session-server"}},"BunqClientSignature":{"name":"X-Bunq-Client-Signature","in":"header","required":true,"schema":{"type":"string","description":"HMAC-SHA256 signature of request"}}},"schemas":{"Id":{"type":"object","properties":{"id":{"type":"integer","description":"The ID of the created resource"}}},"Error":{"type":"object","properties":{"Error":{"type":"array","items":{"type":"object","properties":{"error_description":{"type":"string"},"error_description_translated":{"type":"string"}}}}}}}},"paths":{"/user/{userId}/user-information-inquiry/{inquiryId}/partner-user-information-inquiry-entry/{entryId}":{"put":{"tags":["User Information Inquiry"],"summary":"Submit answer for inquiry entry","description":"Submit an answer for a specific `UserInformationInquiryEntry` on behalf of the provisioned\nuser. This is how partners provide the information bunq has requested.\n\nEach entry can be answered with either:\n- **Attachments** (`all_attachment_id`): for document-based entries (e.g. ID verification,\n  bank statements). Upload the files first via `POST /user/{userId}/attachment`, then\n  pass the resulting attachment IDs here.\n- **Free text** (`answer`): for open-ended questions (e.g. source of income, account\n  purpose). Both fields are optional but at least one must be provided.\n\nAfter a successful PUT the entry status transitions to `WAITING_FOR_REVIEW`. Once all\nentries in the inquiry are in `WAITING_FOR_REVIEW`, the inquiry status moves to\n`EXPECTING_REPLY_FROM_BUNQ`.\n\n**Constraints:**\n- Only entries with status `PENDING` can be updated. Submitting against a non-pending\n  entry (e.g. `CANCELLED`, `APPROVED`) returns HTTP 400.\n- Attachments must belong to the provisioned user. Passing an attachment owned by a\n  different user returns HTTP 400.\n","parameters":[{"name":"userId","in":"path","required":true,"schema":{"type":"integer"},"description":"ID of the provisioned user."},{"name":"inquiryId","in":"path","required":true,"schema":{"type":"integer"},"description":"ID of the inquiry the entry belongs to."},{"name":"entryId","in":"path","required":true,"schema":{"type":"integer"},"description":"ID of the entry to submit an answer for."},{"$ref":"#/components/parameters/CacheControl"},{"$ref":"#/components/parameters/UserAgent"},{"$ref":"#/components/parameters/BunqLanguage"},{"$ref":"#/components/parameters/BunqRegion"},{"$ref":"#/components/parameters/BunqGeolocation"},{"$ref":"#/components/parameters/BunqClientRequestId"},{"$ref":"#/components/parameters/BunqClientAuthentication"},{"$ref":"#/components/parameters/BunqClientSignature"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"all_attachment_id":{"type":"array","description":"IDs of attachments to submit for this entry. Upload files first via\n`POST /user/{userId}/attachment`. Use for document-based entries.\n","items":{"type":"integer"}},"answer":{"type":"string","description":"Free-text answer for open-ended entries (e.g. source of income,\naccount purpose, involvement in politics).\n"}}}}}},"responses":{"200":{"description":"Entry submitted successfully. Returns the ID of the updated entry.","content":{"application/json":{"schema":{"type":"object","properties":{"Response":{"type":"array","items":{"type":"object","properties":{"Id":{"$ref":"#/components/schemas/Id"}}}}}}}}},"400":{"description":"Bad request. Possible causes:\n- Entry is not in `PENDING` status\n- One or more attachment IDs belong to a different user\n","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}}}
```
