add_case_tags
ChatGPTcase_id. Parameters: - case_id: the id of the case to tag - tags: tag labels or ids (use list_tags to find them) The tags must already exist in the workspace; use create_tag first if needed.By Dotfile
Dotfile is the compliance platform for KYC and KYB onboarding. Connect your Dotfile account to ask where a case stands and what blocks it, read its history, audit your screening, identity verification and document checks, follow your team's workload and time to decision, and understand how your templates and automations are set up. The assistant can also act for you where your role allows it: assign, tag, approve, reject or delete cases and checks, add notes, send communications, and apply one of these actions to a whole selection of cases, checks, individuals or companies as a bulk action. It can also buy fresh company data and order registry documents from the business data vendors your workspace is set up with: each new request is a real purchase under your workspace's vendor contract, billed by the vendor on your own contract or by Dotfile on its contract, as it is from the Dotfile console; the assistant sells no Dotfile subscription, plan or credit. It sees only the workspaces your Dotfile account can see and every action runs with your own permissions. It does not take or return a person's social security or tax identification number through the fields that hold them, nor identity document numbers or the files that show them.
case_id. Parameters: - case_id: the id of the case to tag - tags: tag labels or ids (use list_tags to find them) The tags must already exist in the workspace; use create_tag first if needed.case_id. Parameters: - case_id: the id of the case the note belongs to - content: the note or comment text — required for add_note, update_note (max 10,000 characters) and add_comment, update_comment (max 3,000 characters) - note_id: required for update_note, delete_note and add_comment (use list_notes to find it) - comment_id: required for update_comment and delete_comment (use list_notes to find it) Use notes to document observations, findings, decisions or rationale on the case; use comments to reply to an existing note.case_id. Parameters: - case_id: the id of the case the note belongs to - content: the note or comment text — required for add_note, update_note (max 10,000 characters) and add_comment, update_comment (max 3,000 characters) - note_id: required for update_note, delete_note and add_comment (use list_notes to find it) - comment_id: required for update_comment and delete_comment (use list_notes to find it) Use notes to document observations, findings, decisions or rationale on the case; use comments to reply to an existing note.case_id. Records an approval decision and moves the case to the approved status. Parameters: - case_id: the id of the case to approve - comment: optional note explaining the decision (the workspace may require one) Approval can be blocked when the case template requires all controls to be completed first.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'add_case_tags' every invocation receives. 'add_case_tags' gets case_id from the selected case and action = add from this tool; neither can be passed. Every invocation needs tags, from args or from its item's args. A parameter 'add_case_tags' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. Tell the user how many cases it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'add_case_tags': Attach existing workspace tags to a case. Attach or detach one or more existing tags on the case identified by case_id. Parameters: - case_id: the id of the case to tag - tags: tag labels or ids (use list_tags to find them) The tags must already exist in the workspace; use create_tag first if needed.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'add_document_order_file_to_check' every invocation receives. 'add_document_order_file_to_check' gets check_id from the selected check; neither can be passed. Every invocation needs document_order_id, from args or from its item's args. A parameter 'add_document_order_file_to_check' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the checks with exactly one of: - entity_ids: the ids of the checks to target. - filter: a json-logic filter selecting every matching check, with the column keys of the console check table. Tell the user how many checks it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per check. The same check may appear more than once. About 'add_document_order_file_to_check': Attach the file of a completed document order to a document check. Parameters: - document_order_id: The id of the document order whose file to attach (from list_document_orders); only completed orders have a file - check_id: The id of the document check to attach the file to; the check must accept new files (not approved or already under review) After the document analysis, the check is submitted for review so it becomes eligible for AI review.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'add_note' every invocation receives. 'add_note' gets case_id from the selected case and action = add_note from this tool; neither can be passed. Every invocation needs content, from args or from its item's args. A parameter 'add_note' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. Tell the user how many cases it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'add_note': Add a note to a case. Create, update or delete notes and note comments (replies) on the case identified by case_id. Parameters: - case_id: the id of the case the note belongs to - content: the note or comment text — required for add_note, update_note (max 10,000 characters) and add_comment, update_comment (max 3,000 characters) - note_id: required for update_note, delete_note and add_comment (use list_notes to find it) - comment_id: required for update_comment and delete_comment (use list_notes to find it) Use notes to document observations, findings, decisions or rationale on the case; use comments to reply to an existing note.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'add_note_comment' every invocation receives. 'add_note_comment' gets case_id from the selected case and action = add_comment from this tool; neither can be passed. Every invocation needs note_id, content, from args or from its item's args. A parameter 'add_note_comment' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. Tell the user how many cases it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'add_note_comment': Reply to a note on a case with a comment. Create, update or delete notes and note comments (replies) on the case identified by case_id. Parameters: - case_id: the id of the case the note belongs to - content: the note or comment text — required for add_note, update_note (max 10,000 characters) and add_comment, update_comment (max 3,000 characters) - note_id: required for update_note, delete_note and add_comment (use list_notes to find it) - comment_id: required for update_comment and delete_comment (use list_notes to find it) Use notes to document observations, findings, decisions or rationale on the case; use comments to reply to an existing note.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'approve_case' every invocation receives. 'approve_case' gets case_id from the selected case; neither can be passed. A parameter 'approve_case' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. Tell the user how many cases it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'approve_case': Approve the case identified by case_id. Records an approval decision and moves the case to the approved status. Parameters: - case_id: the id of the case to approve - comment: optional note explaining the decision (the workspace may require one) Approval can be blocked when the case template requires all controls to be completed first.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'buy_company_data' every invocation receives. 'buy_company_data' gets company_id from the selected company; neither can be passed. A parameter 'buy_company_data' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the companies with exactly one of: - entity_ids: the ids of the companies to target. - filter: a json-logic filter selecting every matching company, with the column keys of the console company table. Tell the user how many companies it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per company. The same company may appear more than once. About 'buy_company_data': Buy fresh company profile data for an existing company from a business data vendor, under the vendor contract the workspace is configured with (Dotfile's or the workspace's own), as a company data fetch from the console does. Every call is a new purchase request to the vendor. Once the vendor returns the data, the purchase is recorded as company data usage of the workspace and counts toward its plan limit; a call is refused once the limit is reached. On the workspace's own contract the vendor bills the workspace; on Dotfile's contract Dotfile bills the usage, except on trial and internal workspaces. There is no deduplication, so buying twice is a second purchase. This tool sells no Dotfile subscription, plan or credit. Check how recent the current data is before buying; the result includes when the previous data was fetched. Parameters: - company_id: The id of the company to buy data for - vendor: The vendor to buy from; omit to buy from the vendor of the company's most recent purchase After a purchase, use get_company_data_changes to compare the refreshed data with the previous snapshot.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'close_case' every invocation receives. 'close_case' gets case_id from the selected case; neither can be passed. A parameter 'close_case' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. Tell the user how many cases it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'close_case': Close the case identified by case_id. Records a closing decision and moves the case to the closed status. Parameters: - case_id: the id of the case to close - comment: optional note explaining the decision (the workspace may require one)bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'create_check' every invocation receives. 'create_check' gets entityId from the selected company and entityType = company from this tool; neither can be passed. Every invocation needs type, from args or from its item's args. A parameter 'create_check' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the companies with exactly one of: - entity_ids: the ids of the companies to target. - filter: a json-logic filter selecting every matching company, with the column keys of the console company table. Tell the user how many companies it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per company. The same company may appear more than once. About 'create_check': Create a check on an individual or company. Supports 10 check types with entity compatibility validation. Check types: - aml (AML screening) — AML screening against PEP, sanctions, and adverse-media watchlists. Individual or company. - company_monitoring (Company monitoring) — Ongoing monitoring of a company's legal and financial status. Company only. - id_verification (Identity verification) — Automated identity verification of an individual, completed in the identity verification vendor's own hosted flow. Individual only. - id_document (Identity document) — Upload and review of a government-issued identity document. Individual only. - document (Document) — Upload and review of a specific document type required for the case. Individual or company. - ekyc (eKYC) — Comprehensive electronic KYC flow combining identity document verification, identity verification and watchlist screening in a single journey hosted by the vendor. Individual only. - electronic_signature (Electronic signature) — Electronic signature collection on a document template. Individual only. - email_phone_verification (Email & Phone verification) — Verification of an individual's email address and phone number, with the fraud and trust signals the vendor returns alongside them. Individual only. - fraud_database (Fraud Database) — Screening against fraud databases (bank-account, identity-fraud lists). Individual or company. - online_reputation (Online Reputation) — Analysis of a company's public online presence and reputation. Company only. Identity verification and eKYC checks send the individual to the vendor's hosted flow, which collects the document and face capture: this tool never receives images or biometric data. Parameters: - type: The type of check to create. Pick the exact type the user asked for; never substitute a similar-sounding or related type. - entityId: The ID of the individual or company to run the check on. - entityType: Whether the entity is an individual or a company. - settings: Optional check-type-specific settings.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'create_check' every invocation receives. 'create_check' gets entityId from the selected individual and entityType = individual from this tool; neither can be passed. Every invocation needs type, from args or from its item's args. A parameter 'create_check' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the individuals with exactly one of: - entity_ids: the ids of the individuals to target. - filter: a json-logic filter selecting every matching individual, with the column keys of the console individual table. Tell the user how many individuals it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per individual. The same individual may appear more than once. About 'create_check': Create a check on an individual or company. Supports 10 check types with entity compatibility validation. Check types: - aml (AML screening) — AML screening against PEP, sanctions, and adverse-media watchlists. Individual or company. - company_monitoring (Company monitoring) — Ongoing monitoring of a company's legal and financial status. Company only. - id_verification (Identity verification) — Automated identity verification of an individual, completed in the identity verification vendor's own hosted flow. Individual only. - id_document (Identity document) — Upload and review of a government-issued identity document. Individual only. - document (Document) — Upload and review of a specific document type required for the case. Individual or company. - ekyc (eKYC) — Comprehensive electronic KYC flow combining identity document verification, identity verification and watchlist screening in a single journey hosted by the vendor. Individual only. - electronic_signature (Electronic signature) — Electronic signature collection on a document template. Individual only. - email_phone_verification (Email & Phone verification) — Verification of an individual's email address and phone number, with the fraud and trust signals the vendor returns alongside them. Individual only. - fraud_database (Fraud Database) — Screening against fraud databases (bank-account, identity-fraud lists). Individual or company. - online_reputation (Online Reputation) — Analysis of a company's public online presence and reputation. Company only. Identity verification and eKYC checks send the individual to the vendor's hosted flow, which collects the document and face capture: this tool never receives images or biometric data. Parameters: - type: The type of check to create. Pick the exact type the user asked for; never substitute a similar-sounding or related type. - entityId: The ID of the individual or company to run the check on. - entityType: Whether the entity is an individual or a company. - settings: Optional check-type-specific settings.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'delete_case' every invocation receives. 'delete_case' gets case_id from the selected case; neither can be passed. A parameter 'delete_case' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. Tell the user how many cases it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'delete_case': Delete the case identified by case_id. This soft-deletes the case and everything attached to it. Use with care — prefer rejecting or closing a case over deleting it.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'delete_check' every invocation receives. 'delete_check' gets check_id from the selected check; neither can be passed. A parameter 'delete_check' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the checks with exactly one of: - entity_ids: the ids of the checks to target. - filter: a json-logic filter selecting every matching check, with the column keys of the console check table. Tell the user how many checks it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per check. The same check may appear more than once. About 'delete_check': Delete a check. Parameters: - check_id: the id of the check to delete (use query_entities to find it)bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'delete_note' every invocation receives. 'delete_note' gets case_id from the selected case and action = delete_note from this tool; neither can be passed. Every invocation needs note_id, from args or from its item's args. A parameter 'delete_note' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. Tell the user how many cases it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'delete_note': Delete a note from a case. Create, update or delete notes and note comments (replies) on the case identified by case_id. Parameters: - case_id: the id of the case the note belongs to - content: the note or comment text — required for add_note, update_note (max 10,000 characters) and add_comment, update_comment (max 3,000 characters) - note_id: required for update_note, delete_note and add_comment (use list_notes to find it) - comment_id: required for update_comment and delete_comment (use list_notes to find it) Use notes to document observations, findings, decisions or rationale on the case; use comments to reply to an existing note.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'delete_note_comment' every invocation receives. 'delete_note_comment' gets case_id from the selected case and action = delete_comment from this tool; neither can be passed. Every invocation needs comment_id, from args or from its item's args. A parameter 'delete_note_comment' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. Tell the user how many cases it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'delete_note_comment': Delete a comment from a note. Create, update or delete notes and note comments (replies) on the case identified by case_id. Parameters: - case_id: the id of the case the note belongs to - content: the note or comment text — required for add_note, update_note (max 10,000 characters) and add_comment, update_comment (max 3,000 characters) - note_id: required for update_note, delete_note and add_comment (use list_notes to find it) - comment_id: required for update_comment and delete_comment (use list_notes to find it) Use notes to document observations, findings, decisions or rationale on the case; use comments to reply to an existing note.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. Each invocation's result is kept on its item of the bulk action, in the Dotfile console; it does not come back through this connector. args holds the parameters of 'get_entity_timeline' every invocation receives. 'get_entity_timeline' gets entity_id from the selected case and entity_type = case from this tool; neither can be passed. A parameter 'get_entity_timeline' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'get_entity_timeline': Read the activity journal of one case, company, individual, case control or check — the same feed the console shows on the entity. Returns the events newest first, each with its date, its author and, when the event changed fields, the previous and next value of each one. Use this to reconstruct a history and attribute it: who created the case, who applied the template and when, every status the case went through, who approved or rejected a check, why a communication was cancelled. The author is named whenever the platform knows it: a workspace member or a business contact by their name, an API key by its name. Events the platform performed on its own are attributed to the system, and an event an AI agent performed says so. Filter with source_events to follow one thread of the history — the status changes, the check decisions — and leave it out to read everything. Events recorded before the platform started storing which event produced them carry no source event, so a filtered read skips that older history. Pass a check id for a check, not the id of its result data. Ids come from query_entities for a case, company, individual or check, and from list_case_controls for a control.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. Each invocation's result is kept on its item of the bulk action, in the Dotfile console; it does not come back through this connector. args holds the parameters of 'get_check' every invocation receives. 'get_check' gets check_id from the selected check; neither can be passed. A parameter 'get_check' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the checks with exactly one of: - entity_ids: the ids of the checks to target. - filter: a json-logic filter selecting every matching check, with the column keys of the console check table. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per check. The same check may appear more than once. About 'get_check': Read a single check's details and outcome as readable text: - header: check type, id and status - Result: the latest decision (approved, rejected, error) or pending - Review: who reviewed it (user, system or api), when, and their comment - Findings: each analysis result with its outcome, expected and received values - Details: the remaining result data (extracted information, screening hits, settings, provider findings). Files appear by id, name and mime type. - Files: every attached file with its role (front, back, document…), name, mime type and file_id, to read its text or download it Storage locations, raw provider payloads and internal bookkeeping fields are not returned. Use this to inspect a check before acting on it — for example to see why it needs review, or what an AI/human review concluded. Parameters: - check_id: the id of the check to read (use query_entities to find it)bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. Each invocation's result is kept on its item of the bulk action, in the Dotfile console; it does not come back through this connector. args holds the parameters of 'get_entity_timeline' every invocation receives. 'get_entity_timeline' gets entity_id from the selected check and entity_type = check from this tool; neither can be passed. A parameter 'get_entity_timeline' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the checks with exactly one of: - entity_ids: the ids of the checks to target. - filter: a json-logic filter selecting every matching check, with the column keys of the console check table. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per check. The same check may appear more than once. About 'get_entity_timeline': Read the activity journal of one case, company, individual, case control or check — the same feed the console shows on the entity. Returns the events newest first, each with its date, its author and, when the event changed fields, the previous and next value of each one. Use this to reconstruct a history and attribute it: who created the case, who applied the template and when, every status the case went through, who approved or rejected a check, why a communication was cancelled. The author is named whenever the platform knows it: a workspace member or a business contact by their name, an API key by its name. Events the platform performed on its own are attributed to the system, and an event an AI agent performed says so. Filter with source_events to follow one thread of the history — the status changes, the check decisions — and leave it out to read everything. Events recorded before the platform started storing which event produced them carry no source event, so a filtered read skips that older history. Pass a check id for a check, not the id of its result data. Ids come from query_entities for a case, company, individual or check, and from list_case_controls for a control.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. Each invocation's result is kept on its item of the bulk action, in the Dotfile console; it does not come back through this connector. args holds the parameters of 'get_company_data_changes' every invocation receives. 'get_company_data_changes' gets company_id from the selected company; neither can be passed. A parameter 'get_company_data_changes' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the companies with exactly one of: - entity_ids: the ids of the companies to target. - filter: a json-logic filter selecting every matching company, with the column keys of the console company table. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per company. The same company may appear more than once. About 'get_company_data_changes': Compare the two most recent purchased data snapshots of a company and return the changes as categorized old/new value pairs (same categories as company monitoring alerts). The comparison is computed deterministically in code; nothing is purchased and nothing is billed. Parameters: - company_id: The id of the company to compare snapshots for - vendor: Compare the two latest snapshots from this vendor; omit to use the vendor of the most recent snapshot Use after buy_company_data to detect discrepancies between the previous and the refreshed profile.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. Each invocation's result is kept on its item of the bulk action, in the Dotfile console; it does not come back through this connector. args holds the parameters of 'get_entity_timeline' every invocation receives. 'get_entity_timeline' gets entity_id from the selected company and entity_type = company from this tool; neither can be passed. A parameter 'get_entity_timeline' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the companies with exactly one of: - entity_ids: the ids of the companies to target. - filter: a json-logic filter selecting every matching company, with the column keys of the console company table. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per company. The same company may appear more than once. About 'get_entity_timeline': Read the activity journal of one case, company, individual, case control or check — the same feed the console shows on the entity. Returns the events newest first, each with its date, its author and, when the event changed fields, the previous and next value of each one. Use this to reconstruct a history and attribute it: who created the case, who applied the template and when, every status the case went through, who approved or rejected a check, why a communication was cancelled. The author is named whenever the platform knows it: a workspace member or a business contact by their name, an API key by its name. Events the platform performed on its own are attributed to the system, and an event an AI agent performed says so. Filter with source_events to follow one thread of the history — the status changes, the check decisions — and leave it out to read everything. Events recorded before the platform started storing which event produced them carry no source event, so a filtered read skips that older history. Pass a check id for a check, not the id of its result data. Ids come from query_entities for a case, company, individual or check, and from list_case_controls for a control.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. Each invocation's result is kept on its item of the bulk action, in the Dotfile console; it does not come back through this connector. args holds the parameters of 'get_entity_timeline' every invocation receives. 'get_entity_timeline' gets entity_id from the selected individual and entity_type = individual from this tool; neither can be passed. A parameter 'get_entity_timeline' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the individuals with exactly one of: - entity_ids: the ids of the individuals to target. - filter: a json-logic filter selecting every matching individual, with the column keys of the console individual table. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per individual. The same individual may appear more than once. About 'get_entity_timeline': Read the activity journal of one case, company, individual, case control or check — the same feed the console shows on the entity. Returns the events newest first, each with its date, its author and, when the event changed fields, the previous and next value of each one. Use this to reconstruct a history and attribute it: who created the case, who applied the template and when, every status the case went through, who approved or rejected a check, why a communication was cancelled. The author is named whenever the platform knows it: a workspace member or a business contact by their name, an API key by its name. Events the platform performed on its own are attributed to the system, and an event an AI agent performed says so. Filter with source_events to follow one thread of the history — the status changes, the check decisions — and leave it out to read everything. Events recorded before the platform started storing which event produced them carry no source event, so a filtered read skips that older history. Pass a check id for a check, not the id of its result data. Ids come from query_entities for a case, company, individual or check, and from list_case_controls for a control.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. Each invocation's result is kept on its item of the bulk action, in the Dotfile console; it does not come back through this connector. args holds the parameters of 'list_available_documents' every invocation receives. 'list_available_documents' gets company_id from the selected company; neither can be passed. A parameter 'list_available_documents' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the companies with exactly one of: - entity_ids: the ids of the companies to target. - filter: a json-logic filter selecting every matching company, with the column keys of the console company table. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per company. The same company may appear more than once. About 'list_available_documents': List the official documents that can be ordered for a company from the registry vendors. Parameters: - company_id: The id of the company to list available documents for Each result includes a productRef, the vendor, a price tier and the expected delivery time. The productRef identifies the document in an order.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. Each invocation's result is kept on its item of the bulk action, in the Dotfile console; it does not come back through this connector. args holds the parameters of 'list_case_controls' every invocation receives. 'list_case_controls' gets case_id from the selected case; neither can be passed. A parameter 'list_case_controls' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'list_case_controls': List the controls on the case identified by case_id. Returns each one's id, control label, type and completion status. Use this to review the case's controls — for example before marking one as completed or uncompleted, to find the case control id.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. Each invocation's result is kept on its item of the bulk action, in the Dotfile console; it does not come back through this connector. args holds the parameters of 'list_communications' every invocation receives. 'list_communications' gets case_id from the selected case; neither can be passed. A parameter 'list_communications' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'list_communications': List the communications (emails) on the case identified by case_id, most recent first. Returns each message's id, thread id, subject, status and sent date. Use this to read the communication history — for example before replying to a contact, to find the communication id to reply to. The history is paginated: one call returns at most limit messages and says how many the case holds. When more remain, the response gives a cursor; call again with it to read the next, older messages, until the response says the history is complete.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. Each invocation's result is kept on its item of the bulk action, in the Dotfile console; it does not come back through this connector. args holds the parameters of 'list_document_orders' every invocation receives. 'list_document_orders' gets company_id from the selected company; neither can be passed. A parameter 'list_document_orders' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the companies with exactly one of: - entity_ids: the ids of the companies to target. - filter: a json-logic filter selecting every matching company, with the column keys of the console company table. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per company. The same company may appear more than once. About 'list_document_orders': List the documents already ordered for a company, with their status (created, processing, completed, failed). Parameters: - company_id: The id of the company to list ordered documents for Use get_document_download_link to get a download link for a completed order.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. Each invocation's result is kept on its item of the bulk action, in the Dotfile console; it does not come back through this connector. args holds the parameters of 'list_notes' every invocation receives. 'list_notes' gets case_id from the selected case; neither can be passed. A parameter 'list_notes' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'list_notes': List the notes on the case identified by case_id. Returns each note and reply with its id, author, creation date and content as Markdown. Use this to read existing documentation, observations or comments — for example before updating or deleting a note, to find the note id.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'place_document_order' every invocation receives. 'place_document_order' gets company_id from the selected company; neither can be passed. Every invocation needs product_ref, from args or from its item's args. A parameter 'place_document_order' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the companies with exactly one of: - entity_ids: the ids of the companies to target. - filter: a json-logic filter selecting every matching company, with the column keys of the console company table. Tell the user how many companies it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per company. The same company may appear more than once. About 'place_document_order': Place an order for exactly one document with a registry vendor, under the vendor contract the workspace is configured with (Dotfile's or the workspace's own), as an order from the console does. A new order is a purchase from the vendor and counts toward the workspace's document order plan limit; an order is refused once the limit is reached. On the workspace's own contract the vendor bills it, which list_available_documents shows as billed by the provider. On Dotfile's contract Dotfile bills it at the price tier resolved when the order is placed, usually the one list_available_documents shows, except on trial and internal workspaces. This tool sells no Dotfile subscription, plan or credit. The order may still be processing when this tool returns. Parameters: - company_id: The id of the company to order the document for - product_ref: The productRef of the document to order, among the documents available for that company Ordering the same document again for the company returns the existing order instead of ordering and billing it twice; only a failed order is placed again.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'reject_case' every invocation receives. 'reject_case' gets case_id from the selected case; neither can be passed. A parameter 'reject_case' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. Tell the user how many cases it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'reject_case': Reject the case identified by case_id. Records a rejection decision and moves the case to the rejected status. Parameters: - case_id: the id of the case to reject - comment: optional note explaining the decision (the workspace may require one)bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'remove_case_tags' every invocation receives. 'remove_case_tags' gets case_id from the selected case and action = remove from this tool; neither can be passed. Every invocation needs tags, from args or from its item's args. A parameter 'remove_case_tags' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. Tell the user how many cases it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'remove_case_tags': Detach tags from a case. Attach or detach one or more existing tags on the case identified by case_id. Parameters: - case_id: the id of the case to tag - tags: tag labels or ids (use list_tags to find them) The tags must already exist in the workspace; use create_tag first if needed.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'reopen_case' every invocation receives. 'reopen_case' gets case_id from the selected case; neither can be passed. A parameter 'reopen_case' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. Tell the user how many cases it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'reopen_case': Reopen the case identified by case_id, moving it back to the open status. Only a decided case (approved, rejected or closed) can be reopened.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'send_communication' every invocation receives. 'send_communication' gets case_id from the selected case; neither can be passed. Every invocation needs recipient, from args or from its item's args. A parameter 'send_communication' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. Tell the user how many cases it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'send_communication': Send an email communication. Parameters: - recipient: who to reach - business_contact: email a named business contact of a case. The email is recorded in the case's communication history and wrapped in the workspace's branded template (header, logo, footer), so write only the message itself — no greeting/signature template or HTML page layout. Requires case_id, individual_id, subject and content; optional client_portal_id and reply_to_communication_id. - case_contact: same email, but the relevant business contact of the case is resolved automatically — use it when you know the case and not which individual to email. When the case has no reachable business contact, nothing is sent and the tool reports it. Requires case_id, subject and content; optional client_portal_id. - workspace_member: email a member of the workspace — a colleague, not a case contact. Plain email (no branded template), NOT recorded in any case's communication history. Requires user_id, subject and content. - reminder: schedule a reminder for the business contacts of a case, generated from its pending checks and sent by the communication worker; a reminder already scheduled for a contact is not duplicated. Requires case_id only. - case_id: the case to email about (business_contact, case_contact and reminder) - individual_id: the business contact to email (business_contact only; use query_entities or list the case individuals to find it) - user_id: the workspace member's user id (workspace_member only; use list_workspace_members to find it) - subject / content: the email subject and body — required for every recipient but reminder; content is Markdown (headings, lists, bold, links), rendered to HTML - client_portal_id: optional client portal to link to from the email (business_contact and case_contact; use list_client_portals to turn a portal name into its id and see its link access). Depending on that access, the contact either enters the portal directly from the link or first confirms their email with a one-time login link; the result says which, so relay it rather than promising direct access - reply_to_communication_id: optional id of a communication to reply to, keeping the same thread (business_contact only)bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'set_assignee' every invocation receives. 'set_assignee' gets case_id from the selected case; neither can be passed. Every invocation needs assigneeId, from args or from its item's args. A parameter 'set_assignee' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. Tell the user how many cases it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'set_assignee': Change the assignee of the case identified by case_id. Use this tool to assign the case to a different team member or unassign it. Parameters: - case_id: The id of the case to assign - assigneeId: The user ID of the new assignee (or null to unassign) - assigneeName: Optional display name for confirmation Use this when the user wants to: - Assign the case to themselves - Assign the case to another team member - Unassign the case (make it available for others)bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'set_control_state' every invocation receives. 'set_control_state' gets case_id from the selected case; neither can be passed. Every invocation needs case_control_id, state, from args or from its item's args. A parameter 'set_control_state' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. Tell the user how many cases it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'set_control_state': Mark a manual control on the case identified by case_id as completed, or as uncompleted (reopen it). Parameters: - case_id: the id of the case the control belongs to - case_control_id: the id of the case control (use list_case_controls to find it) - state: completed or uncompleted - comment: an optional note explaining the change Only manual controls can be marked; automatic controls are computed by the engine.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'set_risk' every invocation receives. 'set_risk' gets case_id from the selected case; neither can be passed. Every invocation needs mode, from args or from its item's args. A parameter 'set_risk' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. Tell the user how many cases it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'set_risk': Set the risk of the case identified by case_id: a manual risk level, or re-enable the automatic assessment. Parameters: - case_id: the id of the case to set the risk of - mode: manual or automatic - level: required for manual — the new risk level (low, medium, high, critical, prohibited or not_defined to remove the risk) - comment: optional comment explaining the change (manual only) automatic re-promotes the case's latest automatic risk to be the current one, replacing a manual override; the case must have a current manual risk and at least one automatic risk.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'set_template' every invocation receives. 'set_template' gets case_id from the selected case; neither can be passed. Every invocation needs templateId, from args or from its item's args. A parameter 'set_template' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. Tell the user how many cases it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'set_template': Apply a template to the case identified by case_id. This assigns the template and triggers the automation pipeline to create checks and controls based on template rules.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'start_ai_review' every invocation receives. 'start_ai_review' gets checkId from the selected check; neither can be passed. A parameter 'start_ai_review' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the checks with exactly one of: - entity_ids: the ids of the checks to target. - filter: a json-logic filter selecting every matching check, with the column keys of the console check table. Tell the user how many checks it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per check. The same check may appear more than once. About 'start_ai_review': Run an AI review on a single check. The agent type is resolved from the check type — no agent type input is needed. A check is eligible when its status is need_review and its type is one of: id_verification (AI agent: review_id_verification_check), id_document (AI agent: review_id_document_check), aml (AI agent: review_aml_check), document (AI agent: review_document_check). The call dispatches the review and returns immediately: the review runs in the background, so there is no decision yet. Once the review has finished, its outcome is recorded on the check: a recommended decision, or no decision when the agent could not reach one.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'update_case' every invocation receives. 'update_case' gets case_id from the selected case; neither can be passed. A parameter 'update_case' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. Tell the user how many cases it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'update_case': Update the editable fields of the case identified by case_id. Parameters (provide only what should change): - case_id: the id of the case to update (always required) - name: the case name - external_id: the external id (null to clear it) - custom_properties: a map of custom property key to value Status, assignee and template are not changed here — use the dedicated decision, assignee and template tools.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'update_company' every invocation receives. 'update_company' gets company_id from the selected company; neither can be passed. A parameter 'update_company' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the companies with exactly one of: - entity_ids: the ids of the companies to target. - filter: a json-logic filter selecting every matching company, with the column keys of the console company table. Tell the user how many companies it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per company. The same company may appear more than once. About 'update_company': Update the fields of the company identified by company_id: legal identity, registration, address, identifiers and custom property values. Provide only what should change; pass null to clear an optional field. Within address, the fields you omit keep their current value. custom_properties is keyed by the custom property keys the workspace defines; an unknown key is rejected.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'update_individual' every invocation receives. 'update_individual' gets individual_id from the selected individual; neither can be passed. A parameter 'update_individual' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the individuals with exactly one of: - entity_ids: the ids of the individuals to target. - filter: a json-logic filter selecting every matching individual, with the column keys of the console individual table. Tell the user how many individuals it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per individual. The same individual may appear more than once. About 'update_individual': Update the fields of the individual identified by individual_id: identity, contact details, address, identifiers and custom property values. Provide only what should change; pass null to clear an optional field. Within address, the fields you omit keep their current value — the country of residence is address.country. nationalities replaces the whole list. custom_properties is keyed by the custom property keys the workspace defines; an unknown key is rejected. Roles, ownership and the other relations to the case are not changed here. This connector does not take social_security_number or tax_identification_number, which are government identifiers: set them in the Dotfile console.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'update_note' every invocation receives. 'update_note' gets case_id from the selected case and action = update_note from this tool; neither can be passed. Every invocation needs note_id, content, from args or from its item's args. A parameter 'update_note' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. Tell the user how many cases it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'update_note': Replace the content of a note on a case. Create, update or delete notes and note comments (replies) on the case identified by case_id. Parameters: - case_id: the id of the case the note belongs to - content: the note or comment text — required for add_note, update_note (max 10,000 characters) and add_comment, update_comment (max 3,000 characters) - note_id: required for update_note, delete_note and add_comment (use list_notes to find it) - comment_id: required for update_comment and delete_comment (use list_notes to find it) Use notes to document observations, findings, decisions or rationale on the case; use comments to reply to an existing note.bulkActionId as soon as the job is dispatched; follow its status and counters with get_bulk_action_result or list_bulk_actions, and stop the remaining invocations with cancel_bulk_action. An invocation that already ran is not undone. args holds the parameters of 'update_note_comment' every invocation receives. 'update_note_comment' gets case_id from the selected case and action = update_comment from this tool; neither can be passed. Every invocation needs comment_id, content, from args or from its item's args. A parameter 'update_note_comment' does not take, or a missing required one, refuses the call before the job starts; a requirement that depends on another parameter is checked per invocation, which then fails. Select the cases with exactly one of: - entity_ids: the ids of the cases to target. - filter: a json-logic filter selecting every matching case, with the column keys of the console case table. Tell the user how many cases it matches before running a write they cannot take back. - items: one entry per invocation, with its own parameters merged over args, for a parameter that differs per case. The same case may appear more than once. About 'update_note_comment': Replace the content of a comment on a note. Create, update or delete notes and note comments (replies) on the case identified by case_id. Parameters: - case_id: the id of the case the note belongs to - content: the note or comment text — required for add_note, update_note (max 10,000 characters) and add_comment, update_comment (max 3,000 characters) - note_id: required for update_note, delete_note and add_comment (use list_notes to find it) - comment_id: required for update_comment and delete_comment (use list_notes to find it) Use notes to document observations, findings, decisions or rationale on the case; use comments to reply to an existing note.bulkActionId. Only a pending or running bulk action can be cancelled — already-settled items keep their outcome. Items still waiting are cancelled; items already in flight finish on their own.case_id. Records a closing decision and moves the case to the closed status. Parameters: - case_id: the id of the case to close - comment: optional note explaining the decision (the workspace may require one)search_ref is a searchRef from a search_company_data result: this tool then fetches detailed company data and creates the case with its beneficial owners and affiliated companies. company is the company's own fields, for data you already hold (a spreadsheet, a user's input): only name is required, and the case holds that company alone. Prefer search_ref whenever the company can be found, it yields a far richer case - first_name / last_name: required for individual - birth_date (yyyy-MM-dd), birth_country (ISO 3166-1 alpha-2), email: optional, individual only - case_name: optional custom case name. Defaults to "KYB - {companyName}" or "KYC - {firstName} {lastName}" - template_id: optional case template IDcase_id. This soft-deletes the case and everything attached to it. Use with care — prefer rejecting or closing a case over deleting it.case_id. Parameters: - case_id: the id of the case the note belongs to - content: the note or comment text — required for add_note, update_note (max 10,000 characters) and add_comment, update_comment (max 3,000 characters) - note_id: required for update_note, delete_note and add_comment (use list_notes to find it) - comment_id: required for update_comment and delete_comment (use list_notes to find it) Use notes to document observations, findings, decisions or rationale on the case; use comments to reply to an existing note.case_id. Parameters: - case_id: the id of the case the note belongs to - content: the note or comment text — required for add_note, update_note (max 10,000 characters) and add_comment, update_comment (max 3,000 characters) - note_id: required for update_note, delete_note and add_comment (use list_notes to find it) - comment_id: required for update_comment and delete_comment (use list_notes to find it) Use notes to document observations, findings, decisions or rationale on the case; use comments to reply to an existing note.groupable cannot be used as a breakdown; one that is not filterable cannot appear in filters.bulkActionId, including pending and terminal jobs. Status partial means processing completed with failed or skipped items, not full success. failed and cancelled are terminal failures; pending and running are not terminal. Missing or inaccessible jobs return an error, never success. For an AI review (start_ai_review) this returns each reviewed check's decision (approved / rejected) with the reviewer's reasoning, plus the aggregate counts. Use job status and item counters to wait for completion; the review fields (total, approved, rejected, undecided, items) describe only linked AI reviews, not overall job progress. Returns at most 50 per-item rows (the counts always reflect the full set).$.input, and reaches a level by calling $.set_risk with it. Read it to explain why a case got the level it did, or to see what a level depends on before changing it. Parameters: - version_id: the id of the version to read — use list_risk_engines to find itid is one the workspace created and can take a widget; one with a null id is a Dotfile dashboard and is read-only.enabled rules are evaluated, in ascending position order, and the first rule whose condition matches wins — later rules are not considered. A case that already has an assignee is skipped entirely. It also returns the field paths a condition may reference, per scope, including this workspace's custom properties. Read them before writing a condition: a path that is not in that list is rejected.bulkActionId of a running action to cancel it.case_id. Returns each one's id, control label, type and completion status. Use this to review the case's controls — for example before marking one as completed or uncompleted, to find the case control id.case_id, most recent first. Returns each message's id, thread id, subject, status and sent date. Use this to read the communication history — for example before replying to a contact, to find the communication id to reply to. The history is paginated: one call returns at most limit messages and says how many the case holds. When more remain, the response gives a cursor; call again with it to read the next, older messages, until the response says the history is complete.case_id. Returns each note and reply with its id, author, creation date and content as Markdown. Use this to read existing documentation, observations or comments — for example before updating or deleting a note, to find the note id.entity__mappingType__snake_case (e.g. check__default__status, case__relation__assignee, individual__custom__<your_custom_property_key>). A query on one entity can also filter and select columns of the entities it hangs off — checks reach company, individual and case columns; companies and individuals reach case columns. A rejected key comes back with the valid ones. Values of relation columns (assignee, template, tags) are the ids of workspace members, templates or tags. Scope: reads the whole workspace (a space member sees their space). Add a case__default__id rule to read only one case's rows.case_id. Records a rejection decision and moves the case to the rejected status. Parameters: - case_id: the id of the case to reject - comment: optional note explaining the decision (the workspace may require one)case_id. Parameters: - case_id: the id of the case to tag - tags: tag labels or ids (use list_tags to find them) The tags must already exist in the workspace; use create_tag first if needed.case_id, moving it back to the open status. Only a decided case (approved, rejected or closed) can be reopened.dashboardId for a dashboard that already exists, OR dashboardName to have one created and the chart added to it in a single step; never both. The call writes to the workspace. Only a custom dashboard can take a widget: Dotfile’s own dashboards are read-only, and their ids are not accepted. A dashboard created through dashboardName is visible to the whole workspace; the user can narrow it to themselves from the dashboard list. On a validation error it answers with a sentence saying exactly what is wrong — fix it and call again.case_id. Use this tool to assign the case to a different team member or unassign it. Parameters: - case_id: The id of the case to assign - assigneeId: The user ID of the new assignee (or null to unassign) - assigneeName: Optional display name for confirmation Use this when the user wants to: - Assign the case to themselves - Assign the case to another team member - Unassign the case (make it available for others)case_id as completed, or as uncompleted (reopen it). Parameters: - case_id: the id of the case the control belongs to - case_control_id: the id of the case control (use list_case_controls to find it) - state: completed or uncompleted - comment: an optional note explaining the change Only manual controls can be marked; automatic controls are computed by the engine.case_id: a manual risk level, or re-enable the automatic assessment. Parameters: - case_id: the id of the case to set the risk of - mode: manual or automatic - level: required for manual — the new risk level (low, medium, high, critical, prohibited or not_defined to remove the risk) - comment: optional comment explaining the change (manual only) automatic re-promotes the case's latest automatic risk to be the current one, replacing a manual override; the case must have a current manual risk and at least one automatic risk.case_id. This assigns the template and triggers the automation pipeline to create checks and controls based on template rules.type for the question: kpi for one number, line for a trend over time, bar for comparing categories or a trend over time (optionally split by category), donut for a distribution across one dimension, pivot for two dimensions crossed, table for one row per group. Dimension, count and numeric keys must be the exact keys of an analytic dataset. Prefer windowMode: state_snapshot for questions about the present ("how many cases are open now"), which ignores the time window; the default bounds events to it. For the same question asked over time ("how many were open at the end of each week"), use windowMode: state_as_of_bucket with a timeBucket — it reads the state as of each bucket rather than counting what moved in it, and needs a dataset of periods (supportsAsOfBucket). On a validation error it answers with a sentence saying exactly what is wrong — fix it and call again.need_review and its type is one of: id_verification (AI agent: review_id_verification_check), id_document (AI agent: review_id_document_check), aml (AI agent: review_aml_check), document (AI agent: review_document_check). The call dispatches the review and returns immediately: the review runs in the background, so there is no decision yet. Once the review has finished, its outcome is recorded on the check: a recommended decision, or no decision when the agent could not reach one.case_id. Parameters (provide only what should change): - case_id: the id of the case to update (always required) - name: the case name - external_id: the external id (null to clear it) - custom_properties: a map of custom property key to value Status, assignee and template are not changed here — use the dedicated decision, assignee and template tools.company_id: legal identity, registration, address, identifiers and custom property values. Provide only what should change; pass null to clear an optional field. Within address, the fields you omit keep their current value. custom_properties is keyed by the custom property keys the workspace defines; an unknown key is rejected.individual_id: identity, contact details, address, identifiers and custom property values. Provide only what should change; pass null to clear an optional field. Within address, the fields you omit keep their current value — the country of residence is address.country. nationalities replaces the whole list. custom_properties is keyed by the custom property keys the workspace defines; an unknown key is rejected. Roles, ownership and the other relations to the case are not changed here. This connector does not take social_security_number or tax_identification_number, which are government identifiers: set them in the Dotfile console.case_id. Parameters: - case_id: the id of the case the note belongs to - content: the note or comment text — required for add_note, update_note (max 10,000 characters) and add_comment, update_comment (max 3,000 characters) - note_id: required for update_note, delete_note and add_comment (use list_notes to find it) - comment_id: required for update_comment and delete_comment (use list_notes to find it) Use notes to document observations, findings, decisions or rationale on the case; use comments to reply to an existing note.case_id. Parameters: - case_id: the id of the case the note belongs to - content: the note or comment text — required for add_note, update_note (max 10,000 characters) and add_comment, update_comment (max 3,000 characters) - note_id: required for update_note, delete_note and add_comment (use list_notes to find it) - comment_id: required for update_comment and delete_comment (use list_notes to find it) Use notes to document observations, findings, decisions or rationale on the case; use comments to reply to an existing note.Click any prompt to copy it.