Fixes a failed import by running a stored row again with corrected
transformations or guards, without sending the data again. It applies to
rows stored by Import Entity (createFmv1Import); rows stored by Import
Rows (ingestFmv1ImportRows), and attempts made by an import job, are run
again by queueing another job with Queue Import Job (queueFmv1ImportJob).
Find the failed row or attempt with List Import Attempts
(listFmv1ImportAttempts).
Retries a stored import row: fixes a failed import with new transformations
or guards, without sending the data again. Name the row by importRowId, to
retry it with the transformations and guards you send, or by
importAttemptId, to retry that attempt’s row with the attempt’s own.
The retry reads the row’s data and entity type, then runs the steps of
Import Entity after the row is stored: the transformations turn
data.<entityKey> into an entity, the guards run against it, and the
entity is created, or updated when the transformed entity carries an
id. A row that already created its entity creates another unless the
transformations set id, such as with LOOKUP. A row cannot be retried as
another entity type.
Every retry of a row you can import answers 201 with the new import
attempt, linked to the same row, whether or not the entity was written:
check importAttempt.writeResult. Its attemptBatch is the request’s. No
row is stored.
A malformed request is a 400, and records nothing: both ids or neither,
transformations or guards sent with an importAttemptId, an id that is
not a UUID, a blank attemptBatch, a body key this endpoint does not take,
or any query parameter.
There is no Idempotency-Key: sending the same retry twice records two
attempts, and may write twice.
Required permission:<entityType>.import for the stored row’s entity
type, such as submission.import to retry a Submission row. The row’s type
is known only once it is read, so a caller holding no import permission is
a 403, and a row or attempt of a type you cannot import is a 404, the
same as an id that exists nowhere.
User-principal OAuth 2.0 Bearer authentication. Send a user-scoped Auth0 access token (audience = the app API audience) as Authorization: Bearer <jwt>. The request resolves to the user's identity and is authorized by their Role on the {companyId} in the path — the same role-based permissions the web app enforces. This is the path the MCP connector uses to act on a user's behalf; endpoints that accept it list both BearerAuth and ApiKeyAuth.
Path Parameters
companyId
string<uuid>
required
Company identifier
Body
application/json
A new attempt on a stored import row. Name the row by exactly one of
importRowId or importAttemptId:
importRowId retries the row with the transformations and guards
you send (none of each when omitted, as on Import Entity).
importAttemptId retries that attempt's row with the attempt's own
transformations and guards. Sending either alongside it is a 400;
retry by importRowId to change them.
The data is the row's, as it was first sent, and so is the entity type: a row
cannot be retried as another entity type.
importRowId
string<uuid>
The import row to retry, from an Import Entity response or List Import Rows.
importAttemptId
string<uuid>
An attempt whose row to retry, reusing its transformations and guards.
transformations
object
Only with importRowId; none when omitted. The same format as Import
Entity's.
Show child attributes
guards
object[]
Only with importRowId; none when omitted. The same format as Import
Entity's.
Show child attributes
attemptBatch
string | null
Your key grouping this retry with others for later review, stored as the
new attempt's attemptBatch. The row keeps its own importBatch, so List
Import Attempts by importBatch still finds the retry. Omit it or send
null for none; a blank key is refused.
Response
A new attempt was recorded on the row. Whether the entity was written is
the attempt's writeResult.
The stored import row's id and the attempt this request recorded.
importRowId
string<uuid>
required
The import row storing data as sent. Read it with Get Import Row; a failed
import is fixed by retrying this row, not by sending the data again.
importAttempt
object
required
One import attempt: a single transform → guard → write pass over an
import row. An import request records the first attempt on its row, and each
retryImport records another. Attempts are stored whether or not the write
happened.
The attempt is recorded before its first step runs, with every result null,
and each step's result is stored on it as the step completes:
transformationResult and action, then guardResult, then writeResult.
The import and retryImport responses answer with the finished attempt.
writeResult is stored in the same transaction as the entity write, so the
two commit together or not at all. An attempt whose guardResult passed and
whose writeResult is null wrote no entity: it is still in progress, or it
crashed before its write committed. Its import row can be retried; the retry
cannot create a second entity alongside one the crashed attempt wrote.
Show child attributes
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"AI Insurance","colors":{"primary":"#714CC5","light":"#D3BFFF","dark":"#A887F3"},"logo":{"light":"https://mintcdn.com/ai-insurance-fmv1/HtPQvD-FDA5nbM7L/logo/dark.jpg?fit=max\u0026auto=format\u0026n=HtPQvD-FDA5nbM7L\u0026q=85\u0026s=14ace86d6e87c6eab47960c514760266","dark":"https://mintcdn.com/ai-insurance-fmv1/HtPQvD-FDA5nbM7L/logo/dark.jpg?fit=max\u0026auto=format\u0026n=HtPQvD-FDA5nbM7L\u0026q=85\u0026s=14ace86d6e87c6eab47960c514760266","href":"https://go.aiinsurance.io"},"favicon":"https://mintcdn.com/ai-insurance-fmv1/HtPQvD-FDA5nbM7L/logo/dark.jpg?fit=max\u0026auto=format\u0026n=HtPQvD-FDA5nbM7L\u0026q=85\u0026s=14ace86d6e87c6eab47960c514760266","navbar":{"links":[{"href":"mailto:support@aiinsurance.io","label":"Support"}],"primary":{"type":"button","label":"Dashboard","href":"https://go.aiinsurance.io"}},"footer":{"socials":{"linkedin":"https://www.linkedin.com/company/a-i-insurance-inc"}},"seo":{"metatags":{"canonical":"https://docs.go.aiinsurance.io"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity"],"display":"header"},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"ai-insurance-fmv1","hasAudioNarration":false,"actualSubdomain":"ai-insurance-fmv1","customDomains":["docs.go.aiinsurance.io"],"gitSource":{"type":"github","owner":"ai-insurance","repo":"docs-mirror","deployBranch":"main","contentDirectory":"docs","isPrivate":true,"mountPath":"","label":"","_id":"6af4b096ee8edba08e00c669"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6af7498e75f3e5c02082a680","clientVersion":"0.0.4131","searchFilterCounts":[{"language":"default","tag":"API","count":244},{"language":"default","tag":"Financials","count":94},{"language":"default","tag":"App","count":35},{"language":"default","tag":"Policy Transactions","count":34},{"language":"default","tag":"Company Files","count":28},{"language":"default","tag":"Entities","count":25},{"language":"default","tag":"Record Emails","count":23},{"language":"default","tag":"Configuration","count":23},{"language":"default","tag":"Forms","count":18},{"language":"default","tag":"Guides","count":18}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/imports/retry-import","slug":"/api-reference/imports/retry-import","pageMetadata":{"title":"Retry Import","description":"Fixes a failed import by running a stored row again with corrected\n`transformations` or `guards`, without sending the data again. It applies to\nrows stored by Import Entity (`createFmv1Import`); rows stored by Import\nRows (`ingestFmv1ImportRows`), and attempts made by an import job, are run\nagain by queueing another job with Queue Import Job (`queueFmv1ImportJob`).\nFind the failed row or attempt with List Import Attempts\n(`listFmv1ImportAttempts`).\n\nRetries a stored import row: fixes a failed import with new transformations\nor guards, without sending the data again. Name the row by `importRowId`, to\nretry it with the transformations and guards you send, or by\n`importAttemptId`, to retry that attempt's row with the attempt's own.\n\nThe retry reads the row's `data` and entity type, then runs the steps of\nImport Entity after the row is stored: the **transformations** turn\n`data.\u003centityKey>` into an entity, the **guards** run against it, and the\nentity is **created**, or **updated** when the transformed entity carries an\n`id`. A row that already created its entity creates another unless the\ntransformations set `id`, such as with `LOOKUP`. A row cannot be retried as\nanother entity type.\n\nEvery retry of a row you can import answers `201` with the new **import\nattempt**, linked to the same row, whether or not the entity was written:\ncheck `importAttempt.writeResult`. Its `attemptBatch` is the request's. No\nrow is stored.\n\nA malformed request is a `400`, and records nothing: both ids or neither,\n`transformations` or `guards` sent with an `importAttemptId`, an id that is\nnot a UUID, a blank `attemptBatch`, a body key this endpoint does not take,\nor any query parameter.\n\nThere is no `Idempotency-Key`: sending the same retry twice records two\nattempts, and may write twice.\n\n**Required permission:** `\u003centityType>.import` for the stored row's entity\ntype, such as `submission.import` to retry a Submission row. The row's type\nis known only once it is read, so a caller holding no import permission is\na `403`, and a row or attempt of a type you cannot import is a `404`, the\nsame as an id that exists nowhere.\n","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/imports/retry","href":"/api-reference/imports/retry-import","autogeneratedByOpenApi":true,"hidden":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n strong: \"strong\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsxs(_components.p, {\n children: [\"Fixes a failed import by running a stored row again with corrected\\n\", _jsx(_components.code, {\n children: \"transformations\"\n }), \" or \", _jsx(_components.code, {\n children: \"guards\"\n }), \", without sending the data again. It applies to\\nrows stored by Import Entity (\", _jsx(_components.code, {\n children: \"createFmv1Import\"\n }), \"); rows stored by Import\\nRows (\", _jsx(_components.code, {\n children: \"ingestFmv1ImportRows\"\n }), \"), and attempts made by an import job, are run\\nagain by queueing another job with Queue Import Job (\", _jsx(_components.code, {\n children: \"queueFmv1ImportJob\"\n }), \").\\nFind the failed row or attempt with List Import Attempts\\n(\", _jsx(_components.code, {\n children: \"listFmv1ImportAttempts\"\n }), \").\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Retries a stored import row: fixes a failed import with new transformations\\nor guards, without sending the data again. Name the row by \", _jsx(_components.code, {\n children: \"importRowId\"\n }), \", to\\nretry it with the transformations and guards you send, or by\\n\", _jsx(_components.code, {\n children: \"importAttemptId\"\n }), \", to retry that attempt’s row with the attempt’s own.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"The retry reads the row’s \", _jsx(_components.code, {\n children: \"data\"\n }), \" and entity type, then runs the steps of\\nImport Entity after the row is stored: the \", _jsx(_components.strong, {\n children: \"transformations\"\n }), \" turn\\n\", _jsx(_components.code, {\n children: \"data.\u003centityKey>\"\n }), \" into an entity, the \", _jsx(_components.strong, {\n children: \"guards\"\n }), \" run against it, and the\\nentity is \", _jsx(_components.strong, {\n children: \"created\"\n }), \", or \", _jsx(_components.strong, {\n children: \"updated\"\n }), \" when the transformed entity carries an\\n\", _jsx(_components.code, {\n children: \"id\"\n }), \". A row that already created its entity creates another unless the\\ntransformations set \", _jsx(_components.code, {\n children: \"id\"\n }), \", such as with \", _jsx(_components.code, {\n children: \"LOOKUP\"\n }), \". A row cannot be retried as\\nanother entity type.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Every retry of a row you can import answers \", _jsx(_components.code, {\n children: \"201\"\n }), \" with the new \", _jsx(_components.strong, {\n children: \"import\\nattempt\"\n }), \", linked to the same row, whether or not the entity was written:\\ncheck \", _jsx(_components.code, {\n children: \"importAttempt.writeResult\"\n }), \". Its \", _jsx(_components.code, {\n children: \"attemptBatch\"\n }), \" is the request’s. No\\nrow is stored.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"A malformed request is a \", _jsx(_components.code, {\n children: \"400\"\n }), \", and records nothing: both ids or neither,\\n\", _jsx(_components.code, {\n children: \"transformations\"\n }), \" or \", _jsx(_components.code, {\n children: \"guards\"\n }), \" sent with an \", _jsx(_components.code, {\n children: \"importAttemptId\"\n }), \", an id that is\\nnot a UUID, a blank \", _jsx(_components.code, {\n children: \"attemptBatch\"\n }), \", a body key this endpoint does not take,\\nor any query parameter.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"There is no \", _jsx(_components.code, {\n children: \"Idempotency-Key\"\n }), \": sending the same retry twice records two\\nattempts, and may write twice.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [_jsx(_components.strong, {\n children: \"Required permission:\"\n }), \" \", _jsx(_components.code, {\n children: \"\u003centityType>.import\"\n }), \" for the stored row’s entity\\ntype, such as \", _jsx(_components.code, {\n children: \"submission.import\"\n }), \" to retry a Submission row. The row’s type\\nis known only once it is read, so a caller holding no import permission is\\na \", _jsx(_components.code, {\n children: \"403\"\n }), \", and a row or attempt of a type you cannot import is a \", _jsx(_components.code, {\n children: \"404\"\n }), \", the\\nsame as an id that exists nowhere.\"]\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Retry Import","description":"Fixes a failed import by running a stored row again with corrected\n`transformations` or `guards`, without sending the data again. It applies to\nrows stored by Import Entity (`createFmv1Import`); rows stored by Import\nRows (`ingestFmv1ImportRows`), and attempts made by an import job, are run\nagain by queueing another job with Queue Import Job (`queueFmv1ImportJob`).\nFind the failed row or attempt with List Import Attempts\n(`listFmv1ImportAttempts`).\n\nRetries a stored import row: fixes a failed import with new transformations\nor guards, without sending the data again. Name the row by `importRowId`, to\nretry it with the transformations and guards you send, or by\n`importAttemptId`, to retry that attempt's row with the attempt's own.\n\nThe retry reads the row's `data` and entity type, then runs the steps of\nImport Entity after the row is stored: the **transformations** turn\n`data.\u003centityKey>` into an entity, the **guards** run against it, and the\nentity is **created**, or **updated** when the transformed entity carries an\n`id`. A row that already created its entity creates another unless the\ntransformations set `id`, such as with `LOOKUP`. A row cannot be retried as\nanother entity type.\n\nEvery retry of a row you can import answers `201` with the new **import\nattempt**, linked to the same row, whether or not the entity was written:\ncheck `importAttempt.writeResult`. Its `attemptBatch` is the request's. No\nrow is stored.\n\nA malformed request is a `400`, and records nothing: both ids or neither,\n`transformations` or `guards` sent with an `importAttemptId`, an id that is\nnot a UUID, a blank `attemptBatch`, a body key this endpoint does not take,\nor any query parameter.\n\nThere is no `Idempotency-Key`: sending the same retry twice records two\nattempts, and may write twice.\n\n**Required permission:** `\u003centityType>.import` for the stored row's entity\ntype, such as `submission.import` to retry a Submission row. The row's type\nis known only once it is read, so a caller holding no import permission is\na `403`, and a row or attempt of a type you cannot import is a `404`, the\nsame as an id that exists nowhere.\n","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/imports/retry","href":"/api-reference/imports/retry-import","autogeneratedByOpenApi":true,"hidden":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"retryFmv1Import","security":["b01f4a40-8f71-431a-b936-5b67ee9a53f8","129e785b-2456-41f4-9d40-25ddb483355b"],"summary":"Retry Import","description":"Fixes a failed import by running a stored row again with corrected\n`transformations` or `guards`, without sending the data again. It applies to\nrows stored by Import Entity (`createFmv1Import`); rows stored by Import\nRows (`ingestFmv1ImportRows`), and attempts made by an import job, are run\nagain by queueing another job with Queue Import Job (`queueFmv1ImportJob`).\nFind the failed row or attempt with List Import Attempts\n(`listFmv1ImportAttempts`).\n\nRetries a stored import row: fixes a failed import with new transformations\nor guards, without sending the data again. Name the row by `importRowId`, to\nretry it with the transformations and guards you send, or by\n`importAttemptId`, to retry that attempt's row with the attempt's own.\n\nThe retry reads the row's `data` and entity type, then runs the steps of\nImport Entity after the row is stored: the **transformations** turn\n`data.\u003centityKey>` into an entity, the **guards** run against it, and the\nentity is **created**, or **updated** when the transformed entity carries an\n`id`. A row that already created its entity creates another unless the\ntransformations set `id`, such as with `LOOKUP`. A row cannot be retried as\nanother entity type.\n\nEvery retry of a row you can import answers `201` with the new **import\nattempt**, linked to the same row, whether or not the entity was written:\ncheck `importAttempt.writeResult`. Its `attemptBatch` is the request's. No\nrow is stored.\n\nA malformed request is a `400`, and records nothing: both ids or neither,\n`transformations` or `guards` sent with an `importAttemptId`, an id that is\nnot a UUID, a blank `attemptBatch`, a body key this endpoint does not take,\nor any query parameter.\n\nThere is no `Idempotency-Key`: sending the same retry twice records two\nattempts, and may write twice.\n\n**Required permission:** `\u003centityType>.import` for the stored row's entity\ntype, such as `submission.import` to retry a Submission row. The row's type\nis known only once it is read, so a caller holding no import permission is\na `403`, and a row or attempt of a type you cannot import is a `404`, the\nsame as an id that exists nowhere.\n","tags":["Imports"],"parameters":["1ba65c0e-fef1-402c-8b06-aabffa2df343"],"requestBody":"46dfa969-4be8-442c-b9e0-d553c793f6ec","responses":{"201":"c85f146e-b492-4299-ab35-5ce8b2253925","400":"eb73fdea-0e58-47b6-926f-64e28c3cd898","401":"c9dfc5ca-fac7-41bd-9651-c48f392d13fb","403":"6c40a3d6-9665-4e4e-aaf0-89775d2bbb63","404":"7143cda3-886c-40b5-ab69-54f7e4131cca","500":"89cae63e-21d1-498b-9114-593a853ee561"},"method":"post","type":"path","servers":["b4993f5b-e21e-4dbd-8ace-9c59b5197d8e"],"path":"/api/v1/companies/{companyId}/imports/retry","baseUrlOptions":["https://go.aiinsurance.io"],"title":"Retry Import","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"1ba65c0e-fef1-402c-8b06-aabffa2df343":{"name":"companyId","in":"path","required":true,"schema":{"type":"string","format":"uuid","isRequired":true,"description":"Company identifier","uniqueKey":"","typeLabel":"string\u003cuuid>"},"description":"Company identifier"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","description":"A new attempt on a stored import row. Name the row by exactly one of\n`importRowId` or `importAttemptId`:\n\n- **`importRowId`** retries the row with the `transformations` and `guards`\n you send (none of each when omitted, as on Import Entity).\n- **`importAttemptId`** retries that attempt's row with the attempt's own\n `transformations` and `guards`. Sending either alongside it is a `400`;\n retry by `importRowId` to change them.\n\nThe data is the row's, as it was first sent, and so is the entity type: a row\ncannot be retried as another entity type.\n","additionalProperties":false,"properties":{"importRowId":{"type":"string","format":"uuid","description":"The import row to retry, from an Import Entity response or List Import Rows.","uniqueKey":"importRowId","typeLabel":"string\u003cuuid>"},"importAttemptId":{"type":"string","format":"uuid","description":"An attempt whose row to retry, reusing its transformations and guards.\n","uniqueKey":"importAttemptId","typeLabel":"string\u003cuuid>"},"transformations":{"type":"object","description":"Only with `importRowId`; none when omitted. The same format as Import\nEntity's.\n","additionalProperties":{"oneOf":[{"type":"string","description":"A JEXL expression.","uniqueKey":"transformations.additionalProperties.oneOf.0","typeLabel":"string"},{"type":"object","required":["mapOver","values"],"properties":{"mapOver":{"type":"string","description":"A dotted path into `data` that resolves to a list, such as\n`submission.locations`; a numeric segment indexes a list.\n","isRequired":true,"uniqueKey":"transformations.additionalProperties.oneOf.1.mapOver","typeLabel":"string"},"values":{"$circularRef":"1106134a-9755-4288-9127-c72427f285b1","type":"object","description":"One expression or nested mapping per child object key.","isRequired":true,"uniqueKey":"transformations.additionalProperties.oneOf.1.values","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"transformations.additionalProperties.oneOf.1","typeLabel":"object"},{"type":"object","required":["values"],"properties":{"values":{"$circularRef":"1106134a-9755-4288-9127-c72427f285b1","description":"Construct one object in the surrounding scope, including nested mappings.","isRequired":true,"uniqueKey":"transformations.additionalProperties.oneOf.2.values","typeLabel":"any"}},"additionalProperties":false,"uniqueKey":"transformations.additionalProperties.oneOf.2","typeLabel":"object"}],"uniqueKey":"transformations.additionalProperties","typeLabel":"string · object · object"},"uniqueKey":"transformations","typeLabel":"object"},"guards":{"type":"array","items":{"type":"object","required":["condition","errorMessage"],"additionalProperties":false,"properties":{"condition":{"type":"string","description":"A JEXL condition.","isRequired":true,"uniqueKey":"guards.items.[INDEX].condition","typeLabel":"string"},"errorMessage":{"type":"string","description":"Reported on the attempt when the condition does not hold.","isRequired":true,"uniqueKey":"guards.items.[INDEX].errorMessage","typeLabel":"string"}},"uniqueKey":"guards.items.[INDEX]","typeLabel":"object"},"description":"Only with `importRowId`; none when omitted. The same format as Import\nEntity's.\n","uniqueKey":"guards","typeLabel":"object[]"},"attemptBatch":{"oneOf":[{"type":"string","description":"Your key grouping this retry with others for later review, stored as the\nnew attempt's `attemptBatch`. The row keeps its own `importBatch`, so List\nImport Attempts by `importBatch` still finds the retry. Omit it or send\n`null` for none; a blank key is refused.\n","uniqueKey":"attemptBatch.oneOf.0","typeLabel":"string"},{"type":"null","description":"Your key grouping this retry with others for later review, stored as the\nnew attempt's `attemptBatch`. The row keeps its own `importBatch`, so List\nImport Attempts by `importBatch` still finds the retry. Omit it or send\n`null` for none; a blank key is refused.\n","uniqueKey":"attemptBatch.oneOf.1","typeLabel":"null"}],"uniqueKey":"attemptBatch","typeLabel":"string | null"}},"uniqueKey":"","typeLabel":"object"},"examples":{"retryRowWithNewTransformations":{"title":"retryRowWithNewTransformations","value":{"importRowId":"9c5e1a3d-7f2b-4d8e-a6c4-1b9f3e7d2a58","transformations":{"locations":{"mapOver":"submission.sites","values":{"state":"region"}}},"attemptBatch":"october-fix"}},"retryAttemptUnderNewBatch":{"title":"retryAttemptUnderNewBatch","description":"Reuses the attempt's transformations and guards, such as after the\ncompany's configuration or a referenced record has been fixed.\n","value":{"importAttemptId":"2d6b9f3a-8e1c-4a7d-b2e9-6f4c1a8d3e57","attemptBatch":"october-rerun"}},"fixWithLookup":{"title":"fixWithLookup","description":"The first attempt sent the employer's tax id where the field model\ntakes the Organization's id, and the write was refused. The retry\nsets `employer` to the id of the one Organization with that tax id.\n","value":{"importRowId":"6f2a9d4c-1e7b-4c3a-8b59-3d1e7f9a2c04","transformations":{"employer":"LOOKUP('Organization', { taxId: source.employerTaxId })"},"attemptBatch":"october-fix"}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"c85f146e-b492-4299-ab35-5ce8b2253925":{"description":"A new attempt was recorded on the row. Whether the entity was written is\nthe attempt's `writeResult`.\n","content":{"application/json":{"schema":{"type":"object","description":"The stored import row's id and the attempt this request recorded.","required":["importRowId","importAttempt"],"properties":{"importRowId":{"type":"string","format":"uuid","description":"The import row storing `data` as sent. Read it with Get Import Row; a failed\nimport is fixed by retrying this row, not by sending the data again.\n","isRequired":true,"uniqueKey":"importRowId","typeLabel":"string\u003cuuid>"},"importAttempt":{"type":"object","description":"One **import attempt**: a single transform → guard → write pass over an\nimport row. An `import` request records the first attempt on its row, and each\n`retryImport` records another. Attempts are stored whether or not the write\nhappened.\n\nThe attempt is recorded before its first step runs, with every result `null`,\nand each step's result is stored on it as the step completes:\n`transformationResult` and `action`, then `guardResult`, then `writeResult`.\nThe `import` and `retryImport` responses answer with the finished attempt.\n\n`writeResult` is stored in the same transaction as the entity write, so the\ntwo commit together or not at all. An attempt whose `guardResult` passed and\nwhose `writeResult` is `null` wrote no entity: it is still in progress, or it\ncrashed before its write committed. Its import row can be retried; the retry\ncannot create a second entity alongside one the crashed attempt wrote.\n","required":["id","importRowId","entityType","action","attemptBatch","transformations","guards","transformationResult","guardResult","writeResult","createdAt","updatedAt"],"properties":{"id":{"type":"string","format":"uuid","description":"The import attempt id.","isRequired":true,"uniqueKey":"importAttempt.id","typeLabel":"string\u003cuuid>"},"importRowId":{"type":"string","format":"uuid","description":"The import row this attempt ran against.","isRequired":true,"uniqueKey":"importAttempt.importRowId","typeLabel":"string\u003cuuid>"},"entityType":{"type":"string","enum":["Event","Exposure","Quote","Submission","Person","Organization","Policy"],"description":"The job target type, or the original row type for a synchronous attempt.","isRequired":true,"uniqueKey":"importAttempt.entityType","typeLabel":"enum\u003cstring>"},"action":{"oneOf":[{"type":"string","enum":["create","update",null],"description":"`update` when the transformed entity carried an `id`, else `create`.\n`null` until the transformations succeed, and for good when they failed\nbefore the transformed entity existed.\n","isRequired":true,"uniqueKey":"importAttempt.action.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["create","update",null],"description":"`update` when the transformed entity carried an `id`, else `create`.\n`null` until the transformations succeed, and for good when they failed\nbefore the transformed entity existed.\n","isRequired":true,"uniqueKey":"importAttempt.action.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"importAttempt.action","typeLabel":"enum\u003cstring> | null"},"attemptBatch":{"oneOf":[{"type":"string","description":"The caller's optional key grouping attempts. An attempt recorded by an\n`import` request takes that request's `importBatch`; a retry carries the\n`attemptBatch` it was sent with.\n","isRequired":true,"uniqueKey":"importAttempt.attemptBatch.oneOf.0","typeLabel":"string"},{"type":"null","description":"The caller's optional key grouping attempts. An attempt recorded by an\n`import` request takes that request's `importBatch`; a retry carries the\n`attemptBatch` it was sent with.\n","isRequired":true,"uniqueKey":"importAttempt.attemptBatch.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"importAttempt.attemptBatch","typeLabel":"string | null"},"transformations":{"type":"object","additionalProperties":true,"description":"The transformations the attempt ran with, as sent: one entry per FMV1\nfield reference id, each a JEXL expression string or a\n`{ \"mapOver\": \"\u003cdata path>\", \"values\": { \"\u003cchildKey>\": \"\u003cexpression>\" } }`\nmapping. Stored even when they are invalid; the failure is then reported in\n`transformationResult`.\n","isRequired":true,"uniqueKey":"importAttempt.transformations","typeLabel":"object"},"guards":{"type":"array","description":"The guards the attempt ran with, as sent. Each is\n`{ \"condition\": \"\u003cJEXL>\", \"errorMessage\": \"\u003ctext>\" }`.\n","items":{"oneOf":[{}],"uniqueKey":"importAttempt.guards.items.[INDEX]","typeLabel":"any"},"isRequired":true,"uniqueKey":"importAttempt.guards","typeLabel":"any[]"},"transformationResult":{"oneOf":[{"description":"The outcome of applying the transformations; `null` until they have\nrun. `status: ok` carries the\ntransformed `entity`. `status: failed` carries a partial `entity`, with\nevery failed field absent, and one entry in `errors` per failure.\n","type":"object","required":["status","entity"],"properties":{"status":{"type":"string","enum":["ok","failed"],"isRequired":true,"uniqueKey":"importAttempt.transformationResult.oneOf.0.status","typeLabel":"enum\u003cstring>"},"entity":{"type":"object","additionalProperties":true,"description":"The transformed entity, before it was written.","isRequired":true,"uniqueKey":"importAttempt.transformationResult.oneOf.0.entity","typeLabel":"object"},"errors":{"type":"array","description":"Present only when `status` is `failed`.","items":{"type":"object","required":["field","code","message"],"properties":{"field":{"type":"string","description":"The transformation's field reference id; empty when the failure is\nthe whole input's, such as a missing entity key in `data`.\n","isRequired":true,"uniqueKey":"importAttempt.transformationResult.oneOf.0.errors.items.[INDEX].field","typeLabel":"string"},"code":{"type":"string","description":"Why it failed, such as `IMPORT_ENTITY_DATA_MISSING`,\n`IMPORT_INVALID_TRANSFORMATIONS`, `IMPORT_MAP_OVER_NOT_A_LIST` or\n`JEXL_EVALUATION_ERROR`. A `LOOKUP` failure is\n`IMPORT_LOOKUP_AMBIGUOUS` (several entities match),\n`IMPORT_LOOKUP_FORBIDDEN` (the caller may not read the entity\ntype) or `IMPORT_LOOKUP_INVALID` (arguments it cannot run).\n","isRequired":true,"uniqueKey":"importAttempt.transformationResult.oneOf.0.errors.items.[INDEX].code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"importAttempt.transformationResult.oneOf.0.errors.items.[INDEX].message","typeLabel":"string"},"path":{"type":"string","description":"Where inside a `mapOver` field, such as `locations[2].state`.","uniqueKey":"importAttempt.transformationResult.oneOf.0.errors.items.[INDEX].path","typeLabel":"string"}},"uniqueKey":"importAttempt.transformationResult.oneOf.0.errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"importAttempt.transformationResult.oneOf.0.errors","typeLabel":"object[]"}},"isRequired":true,"uniqueKey":"importAttempt.transformationResult.oneOf.0","typeLabel":"object"},{"description":"The outcome of applying the transformations; `null` until they have\nrun. `status: ok` carries the\ntransformed `entity`. `status: failed` carries a partial `entity`, with\nevery failed field absent, and one entry in `errors` per failure.\n","type":"null","required":["status","entity"],"properties":{"status":{"type":"string","enum":["ok","failed"]},"entity":{"type":"object","additionalProperties":true,"description":"The transformed entity, before it was written."},"errors":{"type":"array","description":"Present only when `status` is `failed`.","items":{"type":"object","required":["field","code","message"],"properties":{"field":{"type":"string","description":"The transformation's field reference id; empty when the failure is\nthe whole input's, such as a missing entity key in `data`.\n"},"path":{"type":"string","description":"Where inside a `mapOver` field, such as `locations[2].state`."},"code":{"type":"string","description":"Why it failed, such as `IMPORT_ENTITY_DATA_MISSING`,\n`IMPORT_INVALID_TRANSFORMATIONS`, `IMPORT_MAP_OVER_NOT_A_LIST` or\n`JEXL_EVALUATION_ERROR`. A `LOOKUP` failure is\n`IMPORT_LOOKUP_AMBIGUOUS` (several entities match),\n`IMPORT_LOOKUP_FORBIDDEN` (the caller may not read the entity\ntype) or `IMPORT_LOOKUP_INVALID` (arguments it cannot run).\n"},"message":{"type":"string"}}}}},"isRequired":true,"uniqueKey":"importAttempt.transformationResult.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"importAttempt.transformationResult","typeLabel":"object | null"},"guardResult":{"oneOf":[{"description":"The outcome of the guards; `null` until the guards have run, and for\ngood when the transformations failed. `passed:\nfalse` lists every guard that did not hold, not only the first.\n","type":"object","required":["passed"],"properties":{"passed":{"type":"boolean","isRequired":true,"uniqueKey":"importAttempt.guardResult.oneOf.0.passed","typeLabel":"boolean"},"failures":{"type":"array","description":"Present only when `passed` is `false`.","items":{"type":"object","required":["index","errorMessage","reason"],"properties":{"index":{"type":"integer","description":"The guard's position in `guards`.","isRequired":true,"uniqueKey":"importAttempt.guardResult.oneOf.0.failures.items.[INDEX].index","typeLabel":"integer"},"errorMessage":{"type":"string","description":"For `refused`, the guard's `errorMessage`. For `error`, the\nguard could not be evaluated and the message is\n`The entity invariant \"\u003cerrorMessage>\" could not be checked.`\n","isRequired":true,"uniqueKey":"importAttempt.guardResult.oneOf.0.failures.items.[INDEX].errorMessage","typeLabel":"string"},"reason":{"type":"string","enum":["refused","error"],"description":"`refused` — the condition gave anything but `true`. `error` — the\ncondition could not be evaluated.\n","isRequired":true,"uniqueKey":"importAttempt.guardResult.oneOf.0.failures.items.[INDEX].reason","typeLabel":"enum\u003cstring>"}},"uniqueKey":"importAttempt.guardResult.oneOf.0.failures.items.[INDEX]","typeLabel":"object"},"uniqueKey":"importAttempt.guardResult.oneOf.0.failures","typeLabel":"object[]"}},"isRequired":true,"uniqueKey":"importAttempt.guardResult.oneOf.0","typeLabel":"object"},{"description":"The outcome of the guards; `null` until the guards have run, and for\ngood when the transformations failed. `passed:\nfalse` lists every guard that did not hold, not only the first.\n","type":"null","required":["passed"],"properties":{"passed":{"type":"boolean"},"failures":{"type":"array","description":"Present only when `passed` is `false`.","items":{"type":"object","required":["index","errorMessage","reason"],"properties":{"index":{"type":"integer","description":"The guard's position in `guards`."},"errorMessage":{"type":"string","description":"For `refused`, the guard's `errorMessage`. For `error`, the\nguard could not be evaluated and the message is\n`The entity invariant \"\u003cerrorMessage>\" could not be checked.`\n"},"reason":{"type":"string","enum":["refused","error"],"description":"`refused` — the condition gave anything but `true`. `error` — the\ncondition could not be evaluated.\n"}}}}},"isRequired":true,"uniqueKey":"importAttempt.guardResult.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"importAttempt.guardResult","typeLabel":"object | null"},"writeResult":{"oneOf":[{"type":"object","description":"The outcome of the create or update; `null` when no write was attempted,\nbecause the transformations or a guard failed, and until the write's\noutcome is stored. It is stored in the same transaction as the write, so\n`null` on an attempt whose guards passed means no entity was written:\nthe attempt is in progress, or it crashed.\n\n`status: ok` names the entity written in `entityId`, and `created` says\nwhether this attempt created it (`false`: it updated it). Policy writes also\nrequire a nonempty ordered list of committed transaction receipts. `status: validated` is a policy\ndry-run plan (refused for other entity types), with no entity or transaction IDs\nand no persisted policy writes.\nWhole-policy execution and dry runs produce these results. Both policy modes support execution and dry runs.\n`status: failed` is the refusal the entity create or update endpoint\nwould have answered with: its `httpStatus`, and the error's `code`,\n`message`, `userMessages` and `details`.\n","required":["status"],"properties":{"status":{"type":"string","enum":["ok","failed","validated"],"isRequired":true,"uniqueKey":"importAttempt.writeResult.oneOf.0.status","typeLabel":"enum\u003cstring>"},"dryRun":{"type":"boolean","enum":[true],"description":"Present only for a validated policy dry run.","uniqueKey":"importAttempt.writeResult.oneOf.0.dryRun","typeLabel":"enum\u003cboolean>"},"transactions":{"type":"array","minItems":1,"description":"Ordered committed receipts when status is ok; planned action/date entries when status is validated.","items":{"oneOf":[{"type":"object","required":["transactionId","policyId","policyVersion","action","effectiveDate"],"properties":{"transactionId":{"type":"string","format":"uuid","isRequired":true,"uniqueKey":"importAttempt.writeResult.oneOf.0.transactions.items.[INDEX].oneOf.0.transactionId","typeLabel":"string\u003cuuid>"},"policyId":{"type":"string","format":"uuid","isRequired":true,"uniqueKey":"importAttempt.writeResult.oneOf.0.transactions.items.[INDEX].oneOf.0.policyId","typeLabel":"string\u003cuuid>"},"policyVersion":{"type":"integer","minimum":1,"isRequired":true,"uniqueKey":"importAttempt.writeResult.oneOf.0.transactions.items.[INDEX].oneOf.0.policyVersion","typeLabel":"integer"},"action":{"type":"string","enum":["NEW_BUSINESS","ENDORSE","CANCEL","REINSTATE","RENEW"],"isRequired":true,"uniqueKey":"importAttempt.writeResult.oneOf.0.transactions.items.[INDEX].oneOf.0.action","typeLabel":"enum\u003cstring>"},"effectiveDate":{"type":"string","format":"date","isRequired":true,"uniqueKey":"importAttempt.writeResult.oneOf.0.transactions.items.[INDEX].oneOf.0.effectiveDate","typeLabel":"string\u003cdate>"}},"additionalProperties":false,"uniqueKey":"importAttempt.writeResult.oneOf.0.transactions.items.[INDEX].oneOf.0","typeLabel":"object"},{"type":"object","required":["action","effectiveDate"],"properties":{"action":{"type":"string","enum":["NEW_BUSINESS","ENDORSE","CANCEL","REINSTATE","RENEW"],"isRequired":true,"uniqueKey":"importAttempt.writeResult.oneOf.0.transactions.items.[INDEX].oneOf.1.action","typeLabel":"enum\u003cstring>"},"effectiveDate":{"type":"string","format":"date","isRequired":true,"uniqueKey":"importAttempt.writeResult.oneOf.0.transactions.items.[INDEX].oneOf.1.effectiveDate","typeLabel":"string\u003cdate>"}},"additionalProperties":false,"uniqueKey":"importAttempt.writeResult.oneOf.0.transactions.items.[INDEX].oneOf.1","typeLabel":"object"}],"uniqueKey":"importAttempt.writeResult.oneOf.0.transactions.items.[INDEX]","typeLabel":"object"},"uniqueKey":"importAttempt.writeResult.oneOf.0.transactions","typeLabel":"object[]"},"entityId":{"type":"string","description":"Present only when `status` is `ok`.","uniqueKey":"importAttempt.writeResult.oneOf.0.entityId","typeLabel":"string"},"created":{"type":"boolean","description":"Present only when `status` is `ok`.","uniqueKey":"importAttempt.writeResult.oneOf.0.created","typeLabel":"boolean"},"httpStatus":{"type":"integer","description":"Present only when `status` is `failed`.","uniqueKey":"importAttempt.writeResult.oneOf.0.httpStatus","typeLabel":"integer"},"code":{"type":"string","description":"Present only when `status` is `failed`.","uniqueKey":"importAttempt.writeResult.oneOf.0.code","typeLabel":"string"},"message":{"type":"string","description":"Present only when `status` is `failed`.","uniqueKey":"importAttempt.writeResult.oneOf.0.message","typeLabel":"string"},"userMessages":{"type":"array","description":"Present only when `status` is `failed`.","items":{"type":"string","uniqueKey":"importAttempt.writeResult.oneOf.0.userMessages.items.[INDEX]","typeLabel":"string"},"uniqueKey":"importAttempt.writeResult.oneOf.0.userMessages","typeLabel":"string[]"},"details":{"type":"array","description":"May be present when `status` is `failed`: the same entries the entity\nendpoints' error responses carry.\n","items":{"type":"object","required":["message"],"properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"importAttempt.writeResult.oneOf.0.details.items.[INDEX].message","typeLabel":"string"},"field":{"type":"string","uniqueKey":"importAttempt.writeResult.oneOf.0.details.items.[INDEX].field","typeLabel":"string"},"code":{"type":"string","uniqueKey":"importAttempt.writeResult.oneOf.0.details.items.[INDEX].code","typeLabel":"string"},"reason":{"type":"string","uniqueKey":"importAttempt.writeResult.oneOf.0.details.items.[INDEX].reason","typeLabel":"string"},"expected":{"type":"string","uniqueKey":"importAttempt.writeResult.oneOf.0.details.items.[INDEX].expected","typeLabel":"string"}},"uniqueKey":"importAttempt.writeResult.oneOf.0.details.items.[INDEX]","typeLabel":"object"},"uniqueKey":"importAttempt.writeResult.oneOf.0.details","typeLabel":"object[]"}},"isRequired":true,"uniqueKey":"importAttempt.writeResult.oneOf.0","typeLabel":"object"},{"type":"null","description":"The outcome of the create or update; `null` when no write was attempted,\nbecause the transformations or a guard failed, and until the write's\noutcome is stored. It is stored in the same transaction as the write, so\n`null` on an attempt whose guards passed means no entity was written:\nthe attempt is in progress, or it crashed.\n\n`status: ok` names the entity written in `entityId`, and `created` says\nwhether this attempt created it (`false`: it updated it). Policy writes also\nrequire a nonempty ordered list of committed transaction receipts. `status: validated` is a policy\ndry-run plan (refused for other entity types), with no entity or transaction IDs\nand no persisted policy writes.\nWhole-policy execution and dry runs produce these results. Both policy modes support execution and dry runs.\n`status: failed` is the refusal the entity create or update endpoint\nwould have answered with: its `httpStatus`, and the error's `code`,\n`message`, `userMessages` and `details`.\n","required":["status"],"properties":{"status":{"type":"string","enum":["ok","failed","validated"]},"dryRun":{"type":"boolean","enum":[true],"description":"Present only for a validated policy dry run."},"transactions":{"type":"array","minItems":1,"description":"Ordered committed receipts when status is ok; planned action/date entries when status is validated.","items":{"oneOf":[{"type":"object","required":["transactionId","policyId","policyVersion","action","effectiveDate"],"properties":{"transactionId":{"type":"string","format":"uuid"},"policyId":{"type":"string","format":"uuid"},"policyVersion":{"type":"integer","minimum":1},"action":{"type":"string","enum":["NEW_BUSINESS","ENDORSE","CANCEL","REINSTATE","RENEW"]},"effectiveDate":{"type":"string","format":"date"}},"additionalProperties":false},{"type":"object","required":["action","effectiveDate"],"properties":{"action":{"type":"string","enum":["NEW_BUSINESS","ENDORSE","CANCEL","REINSTATE","RENEW"]},"effectiveDate":{"type":"string","format":"date"}},"additionalProperties":false}]}},"entityId":{"type":"string","description":"Present only when `status` is `ok`."},"created":{"type":"boolean","description":"Present only when `status` is `ok`."},"httpStatus":{"type":"integer","description":"Present only when `status` is `failed`."},"code":{"type":"string","description":"Present only when `status` is `failed`."},"message":{"type":"string","description":"Present only when `status` is `failed`."},"userMessages":{"type":"array","description":"Present only when `status` is `failed`.","items":{"type":"string"}},"details":{"type":"array","description":"May be present when `status` is `failed`: the same entries the entity\nendpoints' error responses carry.\n","items":{"type":"object","required":["message"],"properties":{"field":{"type":"string"},"code":{"type":"string"},"reason":{"type":"string"},"expected":{"type":"string"},"message":{"type":"string"}}}}},"isRequired":true,"uniqueKey":"importAttempt.writeResult.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"importAttempt.writeResult","typeLabel":"object | null"},"createdAt":{"type":"string","format":"date-time","description":"When the attempt was recorded, before its first step ran.","isRequired":true,"uniqueKey":"importAttempt.createdAt","typeLabel":"string\u003cdate-time>"},"updatedAt":{"type":"string","format":"date-time","description":"When a step's result was last stored on the attempt. On an attempt with a\n`null` result still to come, an `updatedAt` long past means it crashed.\n","isRequired":true,"uniqueKey":"importAttempt.updatedAt","typeLabel":"string\u003cdate-time>"},"jobId":{"oneOf":[{"type":"string","format":"uuid","description":"Owning transformation job, or null for a synchronous attempt.","uniqueKey":"importAttempt.jobId.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","format":"uuid","description":"Owning transformation job, or null for a synchronous attempt.","uniqueKey":"importAttempt.jobId.oneOf.1","typeLabel":"null"}],"uniqueKey":"importAttempt.jobId","typeLabel":"string\u003cuuid> | null"},"sourceRowIds":{"oneOf":[{"type":"array","items":{"type":"string","format":"uuid","uniqueKey":"importAttempt.sourceRowIds.oneOf.0.items.[INDEX]","typeLabel":"string\u003cuuid>"},"description":"Every source row for this result, in evaluation order. Null for synchronous attempts; importRowId always identifies the first source row.","uniqueKey":"importAttempt.sourceRowIds.oneOf.0","typeLabel":"string\u003cuuid>[]"},{"type":"null","items":{"type":"string","format":"uuid"},"description":"Every source row for this result, in evaluation order. Null for synchronous attempts; importRowId always identifies the first source row.","uniqueKey":"importAttempt.sourceRowIds.oneOf.1","typeLabel":"null"}],"uniqueKey":"importAttempt.sourceRowIds","typeLabel":"string\u003cuuid>[] | null"}},"isRequired":true,"uniqueKey":"importAttempt","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"retriedRow":{"title":"retriedRow","value":{"importRowId":"9c5e1a3d-7f2b-4d8e-a6c4-1b9f3e7d2a58","importAttempt":{"id":"4a8d2f6c-3e1b-4b7a-9c05-6e2d8f1a3b97","importRowId":"9c5e1a3d-7f2b-4d8e-a6c4-1b9f3e7d2a58","entityType":"Submission","action":"create","attemptBatch":"october-fix","transformations":{"locations":{"mapOver":"submission.sites","values":{"state":"region"}}},"guards":[],"transformationResult":{"status":"ok","entity":{"name":"Acme Logistics","sites":[{"region":"CA"}],"locations":[{"state":"CA"}]}},"guardResult":{"passed":true},"writeResult":{"status":"ok","entityId":"1f8d3b7a-6e2c-4a9d-8b51-4c7e2a9f3d06","created":true},"createdAt":"2026-10-23T16:12:40.318Z","updatedAt":"2026-10-23T16:12:40.702Z"}}},"retriedAttempt":{"title":"retriedAttempt","value":{"importRowId":"3a9f7c1e-2d6b-4e8a-9b45-7c1e3f9d2b60","importAttempt":{"id":"8b3e1d7f-5a2c-4f9e-a6d1-2c7b9e4f1a35","importRowId":"3a9f7c1e-2d6b-4e8a-9b45-7c1e3f9d2b60","entityType":"Submission","action":"create","attemptBatch":"october-rerun","transformations":{},"guards":[],"transformationResult":{"status":"ok","entity":{"submissionName":"Acme Logistics","effectiveDate":"2026-01-01","expirationDate":"2027-01-01"}},"guardResult":{"passed":true},"writeResult":{"status":"ok","entityId":"7d2c9a4e-1f6b-4e3a-8c57-9b1e4d7a2f60","created":true},"createdAt":"2026-10-23T16:14:05.772Z","updatedAt":"2026-10-23T16:14:06.156Z"}}},"fixedWithLookup":{"title":"fixedWithLookup","value":{"importRowId":"6f2a9d4c-1e7b-4c3a-8b59-3d1e7f9a2c04","importAttempt":{"id":"5c1e8a3f-9d4b-4a2e-b7f6-3a9d1c5e8b72","importRowId":"6f2a9d4c-1e7b-4c3a-8b59-3d1e7f9a2c04","entityType":"Person","action":"create","attemptBatch":"october-fix","transformations":{"employer":"LOOKUP('Organization', { taxId: source.employerTaxId })"},"guards":[],"transformationResult":{"status":"ok","entity":{"name":"Pat Lee","employer":"4b9e2d7a-1c5f-4a3e-8d62-9f1b3e7c2a85"}},"guardResult":{"passed":true},"writeResult":{"status":"ok","entityId":"2e7b4d9a-6c1f-4a8e-b3d5-8f2a1c6e9b47","created":true},"createdAt":"2026-10-23T16:15:31.209Z","updatedAt":"2026-10-23T16:15:31.593Z"}}}},"exampleType":"examples"}},"exampleType":"examples"},"eb73fdea-0e58-47b6-926f-64e28c3cd898":{"description":"Bad Request — the request is malformed, and nothing was recorded: both\nids or neither, `transformations` or `guards` beside an\n`importAttemptId`, an id that is not a UUID, a transformation or guard of\nthe wrong shape, a blank `attemptBatch`, a body key this endpoint does\nnot take (`entityType` included), or any query parameter.\n","content":{"application/json":{"schema":{"type":"object","description":"Standard error response for all external API endpoints","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","description":"Machine-readable error code","example":"VALIDATION_ERROR","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable error message","example":"submissionId: Required field is missing","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"userMessages":{"type":"array","description":"Clean, verbatim-displayable messages — one entry per failure, free of error-code tags, field paths, and internal noise. Suitable for showing to end users as-is.","items":{"type":"string","uniqueKey":"error.userMessages.items.[INDEX]","typeLabel":"string"},"example":["Exposures of type 'company' require an address"],"uniqueKey":"error.userMessages","typeLabel":"string[]"},"details":{"type":"array","description":"Additional details for validation errors (field-level errors)","items":{"type":"object","properties":{"field":{"type":"string","description":"The field that caused the error","example":"submissionId","uniqueKey":"error.details.items.[INDEX].field","typeLabel":"string"},"code":{"type":"string","description":"Stable problem code for this individual validation failure","example":"BLANK_LIST_ELEMENT","uniqueKey":"error.details.items.[INDEX].code","typeLabel":"string"},"reason":{"type":"string","description":"Stable reason the value violates its canonical contract","example":"blank-list-element","uniqueKey":"error.details.items.[INDEX].reason","typeLabel":"string"},"expected":{"type":"string","description":"The expected canonical value contract","example":"nonblank trimmed string","uniqueKey":"error.details.items.[INDEX].expected","typeLabel":"string"},"message":{"type":"string","description":"Description of the field error","example":"Required field is missing","uniqueKey":"error.details.items.[INDEX].message","typeLabel":"string"}},"uniqueKey":"error.details.items.[INDEX]","typeLabel":"object"},"uniqueKey":"error.details","typeLabel":"object[]"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"notExactlyOneId":{"title":"notExactlyOneId","value":{"error":{"code":"VALIDATION_ERROR","message":"Send exactly one of importRowId or importAttemptId.","userMessages":["Send exactly one of importRowId or importAttemptId."],"details":[{"message":"Send exactly one of importRowId or importAttemptId."}]}}},"transformationsWithAttempt":{"title":"transformationsWithAttempt","value":{"error":{"code":"VALIDATION_ERROR","message":"transformations: A retry by importAttemptId reuses that attempt’s transformations and guards; send importRowId to retry with new ones.","userMessages":["A retry by importAttemptId reuses that attempt’s transformations and guards; send importRowId to retry with new ones."],"details":[{"field":"transformations","message":"A retry by importAttemptId reuses that attempt’s transformations and guards; send importRowId to retry with new ones."}]}}},"invalidImportRowId":{"title":"invalidImportRowId","value":{"error":{"code":"INVALID_IMPORT_ROW_ID","message":"Invalid importRowId: must be a UUID.","userMessages":["Invalid importRowId: must be a UUID."]}}},"invalidImportAttemptId":{"title":"invalidImportAttemptId","value":{"error":{"code":"INVALID_IMPORT_ATTEMPT_ID","message":"Invalid importAttemptId: must be a UUID.","userMessages":["Invalid importAttemptId: must be a UUID."]}}}},"exampleType":"examples"}},"exampleType":"examples"},"c9dfc5ca-fac7-41bd-9651-c48f392d13fb":{"description":"Unauthorized - Invalid or missing API key","content":{"application/json":{"schema":{"type":"object","description":"Standard error response for all external API endpoints","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","description":"Machine-readable error code","example":"VALIDATION_ERROR","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable error message","example":"submissionId: Required field is missing","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"userMessages":{"type":"array","description":"Clean, verbatim-displayable messages — one entry per failure, free of error-code tags, field paths, and internal noise. Suitable for showing to end users as-is.","items":{"type":"string","uniqueKey":"error.userMessages.items.[INDEX]","typeLabel":"string"},"example":["Exposures of type 'company' require an address"],"uniqueKey":"error.userMessages","typeLabel":"string[]"},"details":{"type":"array","description":"Additional details for validation errors (field-level errors)","items":{"type":"object","properties":{"field":{"type":"string","description":"The field that caused the error","example":"submissionId","uniqueKey":"error.details.items.[INDEX].field","typeLabel":"string"},"code":{"type":"string","description":"Stable problem code for this individual validation failure","example":"BLANK_LIST_ELEMENT","uniqueKey":"error.details.items.[INDEX].code","typeLabel":"string"},"reason":{"type":"string","description":"Stable reason the value violates its canonical contract","example":"blank-list-element","uniqueKey":"error.details.items.[INDEX].reason","typeLabel":"string"},"expected":{"type":"string","description":"The expected canonical value contract","example":"nonblank trimmed string","uniqueKey":"error.details.items.[INDEX].expected","typeLabel":"string"},"message":{"type":"string","description":"Description of the field error","example":"Required field is missing","uniqueKey":"error.details.items.[INDEX].message","typeLabel":"string"}},"uniqueKey":"error.details.items.[INDEX]","typeLabel":"object"},"uniqueKey":"error.details","typeLabel":"object[]"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"missingApiKey":{"title":"missingApiKey","value":{"error":{"code":"AuthenticationError","message":"API key authentication required","userMessages":["API key authentication required"]}}},"invalidApiKey":{"title":"invalidApiKey","value":{"error":{"code":"AuthenticationError","message":"Invalid API key","userMessages":["Invalid API key"]}}}},"exampleType":"examples"}},"exampleType":"examples"},"6c40a3d6-9665-4e4e-aaf0-89775d2bbb63":{"description":"Forbidden - Insufficient permissions","content":{"application/json":{"schema":{"type":"object","description":"Standard error response for all external API endpoints","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","description":"Machine-readable error code","example":"VALIDATION_ERROR","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable error message","example":"submissionId: Required field is missing","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"userMessages":{"type":"array","description":"Clean, verbatim-displayable messages — one entry per failure, free of error-code tags, field paths, and internal noise. Suitable for showing to end users as-is.","items":{"type":"string","uniqueKey":"error.userMessages.items.[INDEX]","typeLabel":"string"},"example":["Exposures of type 'company' require an address"],"uniqueKey":"error.userMessages","typeLabel":"string[]"},"details":{"type":"array","description":"Additional details for validation errors (field-level errors)","items":{"type":"object","properties":{"field":{"type":"string","description":"The field that caused the error","example":"submissionId","uniqueKey":"error.details.items.[INDEX].field","typeLabel":"string"},"code":{"type":"string","description":"Stable problem code for this individual validation failure","example":"BLANK_LIST_ELEMENT","uniqueKey":"error.details.items.[INDEX].code","typeLabel":"string"},"reason":{"type":"string","description":"Stable reason the value violates its canonical contract","example":"blank-list-element","uniqueKey":"error.details.items.[INDEX].reason","typeLabel":"string"},"expected":{"type":"string","description":"The expected canonical value contract","example":"nonblank trimmed string","uniqueKey":"error.details.items.[INDEX].expected","typeLabel":"string"},"message":{"type":"string","description":"Description of the field error","example":"Required field is missing","uniqueKey":"error.details.items.[INDEX].message","typeLabel":"string"}},"uniqueKey":"error.details.items.[INDEX]","typeLabel":"object"},"uniqueKey":"error.details","typeLabel":"object[]"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"insufficientPermissions":{"title":"insufficientPermissions","value":{"error":{"code":"AuthorizationError","message":"User is not authorized to perform the requested action","userMessages":["User is not authorized to perform the requested action"]}}},"companyMismatch":{"title":"companyMismatch","value":{"error":{"code":"AuthorizationError","message":"API key is not scoped to the requested company","userMessages":["API key is not scoped to the requested company"]}}}},"exampleType":"examples"}},"exampleType":"examples"},"7143cda3-886c-40b5-ab69-54f7e4131cca":{"description":"No row or attempt with that id that you can import: unknown, another\ncompany's, or of an entity type you hold no import permission for.\n","content":{"application/json":{"schema":{"type":"object","description":"Standard error response for all external API endpoints","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","description":"Machine-readable error code","example":"VALIDATION_ERROR","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable error message","example":"submissionId: Required field is missing","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"userMessages":{"type":"array","description":"Clean, verbatim-displayable messages — one entry per failure, free of error-code tags, field paths, and internal noise. Suitable for showing to end users as-is.","items":{"type":"string","uniqueKey":"error.userMessages.items.[INDEX]","typeLabel":"string"},"example":["Exposures of type 'company' require an address"],"uniqueKey":"error.userMessages","typeLabel":"string[]"},"details":{"type":"array","description":"Additional details for validation errors (field-level errors)","items":{"type":"object","properties":{"field":{"type":"string","description":"The field that caused the error","example":"submissionId","uniqueKey":"error.details.items.[INDEX].field","typeLabel":"string"},"code":{"type":"string","description":"Stable problem code for this individual validation failure","example":"BLANK_LIST_ELEMENT","uniqueKey":"error.details.items.[INDEX].code","typeLabel":"string"},"reason":{"type":"string","description":"Stable reason the value violates its canonical contract","example":"blank-list-element","uniqueKey":"error.details.items.[INDEX].reason","typeLabel":"string"},"expected":{"type":"string","description":"The expected canonical value contract","example":"nonblank trimmed string","uniqueKey":"error.details.items.[INDEX].expected","typeLabel":"string"},"message":{"type":"string","description":"Description of the field error","example":"Required field is missing","uniqueKey":"error.details.items.[INDEX].message","typeLabel":"string"}},"uniqueKey":"error.details.items.[INDEX]","typeLabel":"object"},"uniqueKey":"error.details","typeLabel":"object[]"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"importRowNotFound":{"title":"importRowNotFound","value":{"error":{"code":"IMPORT_ROW_NOT_FOUND","message":"Import row 9c5e1a3d-7f2b-4d8e-a6c4-1b9f3e7d2a58 not found"}}},"importAttemptNotFound":{"title":"importAttemptNotFound","value":{"error":{"code":"IMPORT_ATTEMPT_NOT_FOUND","message":"Import attempt 2d6b9f3a-8e1c-4a7d-b2e9-6f4c1a8d3e57 not found"}}}},"exampleType":"examples"}},"exampleType":"examples"},"89cae63e-21d1-498b-9114-593a853ee561":{"description":"Internal Server Error - Unexpected error occurred","content":{"application/json":{"schema":{"type":"object","description":"Standard error response for all external API endpoints","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","description":"Machine-readable error code","example":"VALIDATION_ERROR","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable error message","example":"submissionId: Required field is missing","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"userMessages":{"type":"array","description":"Clean, verbatim-displayable messages — one entry per failure, free of error-code tags, field paths, and internal noise. Suitable for showing to end users as-is.","items":{"type":"string","uniqueKey":"error.userMessages.items.[INDEX]","typeLabel":"string"},"example":["Exposures of type 'company' require an address"],"uniqueKey":"error.userMessages","typeLabel":"string[]"},"details":{"type":"array","description":"Additional details for validation errors (field-level errors)","items":{"type":"object","properties":{"field":{"type":"string","description":"The field that caused the error","example":"submissionId","uniqueKey":"error.details.items.[INDEX].field","typeLabel":"string"},"code":{"type":"string","description":"Stable problem code for this individual validation failure","example":"BLANK_LIST_ELEMENT","uniqueKey":"error.details.items.[INDEX].code","typeLabel":"string"},"reason":{"type":"string","description":"Stable reason the value violates its canonical contract","example":"blank-list-element","uniqueKey":"error.details.items.[INDEX].reason","typeLabel":"string"},"expected":{"type":"string","description":"The expected canonical value contract","example":"nonblank trimmed string","uniqueKey":"error.details.items.[INDEX].expected","typeLabel":"string"},"message":{"type":"string","description":"Description of the field error","example":"Required field is missing","uniqueKey":"error.details.items.[INDEX].message","typeLabel":"string"}},"uniqueKey":"error.details.items.[INDEX]","typeLabel":"object"},"uniqueKey":"error.details","typeLabel":"object[]"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"internalError":{"title":"internalError","value":{"error":{"code":"UncaughtActionError","message":"Uncaught error occurred in \u003cactionName>","userMessages":["An unexpected error occurred. Please try again later."]}}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"b01f4a40-8f71-431a-b936-5b67ee9a53f8":{"BearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"User-principal OAuth 2.0 Bearer authentication. Send a user-scoped Auth0 access token (audience = the app API audience) as `Authorization: Bearer \u003cjwt>`. The request resolves to the user's identity and is authorized by their Role on the `{companyId}` in the path — the same role-based permissions the web app enforces. This is the path the MCP connector uses to act on a user's behalf; endpoints that accept it list both `BearerAuth` and `ApiKeyAuth`.","scopes":[],"schemeName":"BearerAuth"}},"129e785b-2456-41f4-9d40-25ddb483355b":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"Authorization","description":"API key authentication. Send your raw API key as the `Authorization` header value with NO scheme prefix — `Authorization: YOUR-API-KEY`. Do NOT prefix it with `Bearer ` or `ApiKey `, and do not use an `X-API-Key` header; those are not accepted.","scopes":[],"schemeName":"ApiKeyAuth"}}},"servers":{"b4993f5b-e21e-4dbd-8ace-9c59b5197d8e":{"url":"https://go.aiinsurance.io","description":"Production"}},"schemas":{"1106134a-9755-4288-9127-c72427f285b1":{"type":"object","description":"How `data.\u003centityKey>` becomes an entity in this company's field model: one\nentry per field reference id (camelCase). Each value is either a JEXL\nexpression string that reads the data's top-level keys by name\n(`submission.name`, `broker.email`), or a mapping for a list of child\nobjects:\n`{ \"mapOver\": \"\u003cdata path>\", \"values\": { \"\u003cchildKey>\": \"\u003cexpression>\" } }`.\nInside `values`, bare names and `me` are the current element, `parent` is\nthe object holding the list and `root` is the whole `data`. A child value may\nitself be a mapping; its `mapOver` path reads the current scope (for example\n`me.locations`). A `{ \"values\": { ... } }` constructor without `mapOver` builds\none object in the surrounding scope and can contain mapped lists. At every\ndepth, `root` remains the original data.\n\nEvery field of `data.\u003centityKey>` without a transformation is kept as sent.\nA transformed entity with an `id` updates that entity; otherwise one is\ncreated. Keys the company's field model does not declare are dropped before\nan entity write. Policy jobs instead construct the whole-policy or single-transaction\ncommand envelope; envelope keys are validated by that contract.\n","additionalProperties":{"oneOf":[{"type":"string","description":"A JEXL expression."},{"type":"object","required":["mapOver","values"],"properties":{"mapOver":{"type":"string","description":"A dotted path into `data` that resolves to a list, such as\n`submission.locations`; a numeric segment indexes a list.\n","isRequired":true},"values":{"$circularRef":"1106134a-9755-4288-9127-c72427f285b1","type":"object","description":"One expression or nested mapping per child object key.","isRequired":true}},"additionalProperties":false},{"type":"object","required":["values"],"properties":{"values":{"$circularRef":"1106134a-9755-4288-9127-c72427f285b1","description":"Construct one object in the surrounding scope, including nested mappings.","isRequired":true}},"additionalProperties":false}]}}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"User-principal OAuth 2.0 Bearer authentication. Send a user-scoped Auth0 access token (audience = the app API audience) as `Authorization: Bearer \u003cjwt>`. The request resolves to the user's identity and is authorized by their Role on the `{companyId}` in the path — the same role-based permissions the web app enforces. This is the path the MCP connector uses to act on a user's behalf; endpoints that accept it list both `BearerAuth` and `ApiKeyAuth`.","scopes":[],"schemeName":"BearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"User-principal OAuth 2.0 Bearer authentication. Send a user-scoped Auth0 access token (audience = the app API audience) as `Authorization: Bearer \u003cjwt>`. The request resolves to the user's identity and is authorized by their Role on the `{companyId}` in the path — the same role-based permissions the web app enforces. This is the path the MCP connector uses to act on a user's behalf; endpoints that accept it list both `BearerAuth` and `ApiKeyAuth`.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"BearerAuth","name":"Authorization"}],"title":"BearerAuth"},{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"Authorization","description":"API key authentication. Send your raw API key as the `Authorization` header value with NO scheme prefix — `Authorization: YOUR-API-KEY`. Do NOT prefix it with `Bearer ` or `ApiKey `, and do not use an `X-API-Key` header; those are not accepted.","scopes":[],"schemeName":"ApiKeyAuth"},"schema":{"title":"Authorization","type":"string","description":"API key authentication. Send your raw API key as the `Authorization` header value with NO scheme prefix — `Authorization: YOUR-API-KEY`. Do NOT prefix it with `Bearer ` or `ApiKey `, and do not use an `X-API-Key` header; those are not accepted.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"ApiKeyAuth","name":"Authorization"}],"title":"ApiKeyAuth"}]},"originalFileLocation":"openapi/generated-external-api.yaml"},"subdomain":"ai-insurance-fmv1","siteName":"AI Insurance","title":"Retry Import - AI Insurance","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-13T17:32:14.829Z","originalFileLocation":"api-reference/imports/retry-import.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Fixes a failed import by running a stored row again with corrected transformations or guards, without sending the data again. It applies to rows stored by Import Entity (createFmv1Import); rows stored by Import Rows (ingestFmv1ImportRows), and attempts made by an import job, are run again by queueing another job with Queue Import Job (queueFmv1ImportJob). Find the failed row or attempt with List Import Attempts (listFmv1ImportAttempts). Retries a stored import row: fixes a failed import with new transformations or guards, without sending the data again. Name the row by importRowId, to retry it with the transformations and guards you send, or by importAttemptId, to retry that attempt\u0026#x27;s row with the attempt\u0026#x27;s own. The retry reads the row\u0026#x27;s data and entity type, then runs the steps of Import Entity after the row is stored: the transformations turn data. into an entity, the guards run against it, and the entity is created, or updated when the transformed entity carries an id. A row that already created its entity creates another unless the transformations set id, such as with LOOKUP. A row cannot be retried as another entity type. Every retry of a row you can import answers 201 with the new import attempt, linked to the same row, whether or not the entity was written: check importAttempt.writeResult. Its attemptBatch is the request\u0026#x27;s. No row is stored. A malformed request is a 400, and records nothing: both ids or neither, transformations or guards sent with an importAttemptId, an id that is not a UUID, a blank attemptBatch, a body key this endpoint does not take, or any query parameter. There is no Idempotency-Key: sending the same retry twice records two attempts, and may write twice. Required permission: .import for the stored row\u0026#x27;s entity type, such as submission.import to retry a Submission row. The row\u0026#x27;s type is known only once it is read, so a caller holding no import permission is a 403, and a row or attempt of a type you cannot import is a 404, the same as an id that exists nowhere.\">\u003cmeta data-mint-head name=\"application-name\" content=\"AI Insurance\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003cmeta data-mint-head name=\"robots\" content=\"noindex\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/ai-insurance-fmv1/OV-zcpS7BkiQB75q/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/ai-insurance-fmv1/OV-zcpS7BkiQB75q/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/ai-insurance-fmv1/OV-zcpS7BkiQB75q/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/ai-insurance-fmv1/OV-zcpS7BkiQB75q/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/ai-insurance-fmv1/OV-zcpS7BkiQB75q/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/ai-insurance-fmv1/OV-zcpS7BkiQB75q/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/ai-insurance-fmv1/OV-zcpS7BkiQB75q/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/ai-insurance-fmv1/OV-zcpS7BkiQB75q/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/ai-insurance-fmv1/OV-zcpS7BkiQB75q/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Retry Import - AI Insurance\">\u003cmeta data-mint-head property=\"og:description\" content=\"Fixes a failed import by running a stored row again with corrected transformations or guards, without sending the data again. It applies to rows stored by Import Entity (createFmv1Import); rows stored by Import Rows (ingestFmv1ImportRows), and attempts made by an import job, are run again by queueing another job with Queue Import Job (queueFmv1ImportJob). Find the failed row or attempt with List Import Attempts (listFmv1ImportAttempts). Retries a stored import row: fixes a failed import with new transformations or guards, without sending the data again. Name the row by importRowId, to retry it with the transformations and guards you send, or by importAttemptId, to retry that attempt\u0026#x27;s row with the attempt\u0026#x27;s own. The retry reads the row\u0026#x27;s data and entity type, then runs the steps of Import Entity after the row is stored: the transformations turn data. into an entity, the guards run against it, and the entity is created, or updated when the transformed entity carries an id. A row that already created its entity creates another unless the transformations set id, such as with LOOKUP. A row cannot be retried as another entity type. Every retry of a row you can import answers 201 with the new import attempt, linked to the same row, whether or not the entity was written: check importAttempt.writeResult. Its attemptBatch is the request\u0026#x27;s. No row is stored. A malformed request is a 400, and records nothing: both ids or neither, transformations or guards sent with an importAttemptId, an id that is not a UUID, a blank attemptBatch, a body key this endpoint does not take, or any query parameter. There is no Idempotency-Key: sending the same retry twice records two attempts, and may write twice. Required permission: .import for the stored row\u0026#x27;s entity type, such as submission.import to retry a Submission row. The row\u0026#x27;s type is known only once it is read, so a caller holding no import permission is a 403, and a row or attempt of a type you cannot import is a 404, the same as an id that exists nowhere.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"AI Insurance\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.go.aiinsurance.io/api-reference/imports/retry-import\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://ai-insurance-fmv1.mintlify.site/_mintlify/api/og/v2?division=Imports\u0026amp;title=Retry+Import\u0026amp;description=Fixes+a+failed+import+by+running+a+stored+row+again+with+corrected%0A%60transformations%60+or+%60guards%60%2C+without+sending+the+data+again.+It+applies+to%0Arows+stored+by+I\u0026amp;theme=0995c531691aeb9df7f9b066\u0026amp;signature=9f362879e71677bc04d948e076ad6eb59d9caa385bb5f4ce3d738d3cf4709632\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Retry Import - AI Insurance\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Fixes a failed import by running a stored row again with corrected transformations or guards, without sending the data again. It applies to rows stored by Import Entity (createFmv1Import); rows stored by Import Rows (ingestFmv1ImportRows), and attempts made by an import job, are run again by queueing another job with Queue Import Job (queueFmv1ImportJob). Find the failed row or attempt with List Import Attempts (listFmv1ImportAttempts). Retries a stored import row: fixes a failed import with new transformations or guards, without sending the data again. Name the row by importRowId, to retry it with the transformations and guards you send, or by importAttemptId, to retry that attempt\u0026#x27;s row with the attempt\u0026#x27;s own. The retry reads the row\u0026#x27;s data and entity type, then runs the steps of Import Entity after the row is stored: the transformations turn data. into an entity, the guards run against it, and the entity is created, or updated when the transformed entity carries an id. A row that already created its entity creates another unless the transformations set id, such as with LOOKUP. A row cannot be retried as another entity type. Every retry of a row you can import answers 201 with the new import attempt, linked to the same row, whether or not the entity was written: check importAttempt.writeResult. Its attemptBatch is the request\u0026#x27;s. No row is stored. A malformed request is a 400, and records nothing: both ids or neither, transformations or guards sent with an importAttemptId, an id that is not a UUID, a blank attemptBatch, a body key this endpoint does not take, or any query parameter. There is no Idempotency-Key: sending the same retry twice records two attempts, and may write twice. Required permission: .import for the stored row\u0026#x27;s entity type, such as submission.import to retry a Submission row. The row\u0026#x27;s type is known only once it is read, so a caller holding no import permission is a 403, and a row or attempt of a type you cannot import is a 404, the same as an id that exists nowhere.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://ai-insurance-fmv1.mintlify.site/_mintlify/api/og/v2?division=Imports\u0026amp;title=Retry+Import\u0026amp;description=Fixes+a+failed+import+by+running+a+stored+row+again+with+corrected%0A%60transformations%60+or+%60guards%60%2C+without+sending+the+data+again.+It+applies+to%0Arows+stored+by+I\u0026amp;theme=0995c531691aeb9df7f9b066\u0026amp;signature=9f362879e71677bc04d948e076ad6eb59d9caa385bb5f4ce3d738d3cf4709632\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/ai-insurance-fmv1/OV-zcpS7BkiQB75q/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"AI Insurance\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#714CC5\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.go.aiinsurance.io/api-reference/imports/retry-import\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/imports/retry-import.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.go.aiinsurance.io/#organization\",\"name\":\"AI Insurance\",\"url\":\"https://docs.go.aiinsurance.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/ai-insurance-fmv1/HtPQvD-FDA5nbM7L/logo/dark.jpg?fit=max\u0026auto=format\u0026n=HtPQvD-FDA5nbM7L\u0026q=85\u0026s=14ace86d6e87c6eab47960c514760266\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.go.aiinsurance.io#website\",\"name\":\"AI Insurance\",\"url\":\"https://docs.go.aiinsurance.io\",\"publisher\":{\"@id\":\"https://docs.go.aiinsurance.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.go.aiinsurance.io/api-reference/imports/retry-import#webpage\",\"url\":\"https://docs.go.aiinsurance.io/api-reference/imports/retry-import\",\"name\":\"Retry Import\",\"description\":\"Fixes a failed import by running a stored row again with corrected transformations or guards, without sending the data again. It applies to rows stored by Import Entity (createFmv1Import); rows stored by Import Rows (ingestFmv1ImportRows), and attempts made by an import job, are run again by queueing another job with Queue Import Job (queueFmv1ImportJob). Find the failed row or attempt with List Import Attempts (listFmv1ImportAttempts). Retries a stored import row: fixes a failed import with new transformations or guards, without sending the data again. Name the row by importRowId, to retry it with the transformations and guards you send, or by importAttemptId, to retry that attempt's row with the attempt's own. The retry reads the row's data and entity type, then runs the steps of Import Entity after the row is stored: the transformations turn data. into an entity, the guards run against it, and the entity is created, or updated when the transformed entity carries an id. A row that already created its entity creates another unless the transformations set id, such as with LOOKUP. A row cannot be retried as another entity type. Every retry of a row you can import answers 201 with the new import attempt, linked to the same row, whether or not the entity was written: check importAttempt.writeResult. Its attemptBatch is the request's. No row is stored. A malformed request is a 400, and records nothing: both ids or neither, transformations or guards sent with an importAttemptId, an id that is not a UUID, a blank attemptBatch, a body key this endpoint does not take, or any query parameter. There is no Idempotency-Key: sending the same retry twice records two attempts, and may write twice. Required permission: .import for the stored row's entity type, such as submission.import to retry a Submission row. The row's type is known only once it is read, so a caller holding no import permission is a 403, and a row or attempt of a type you cannot import is a 404, the same as an id that exists nowhere.\",\"dateModified\":\"2026-11-13T17:32:14.829Z\",\"isPartOf\":{\"@id\":\"https://docs.go.aiinsurance.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.go.aiinsurance.io/api-reference/imports/retry-import#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.go.aiinsurance.io/api-reference/imports/retry-import#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Imports\",\"item\":\"https://docs.go.aiinsurance.io/api-reference/imports/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Retry Import\",\"item\":\"https://docs.go.aiinsurance.io/api-reference/imports/retry-import\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.go.aiinsurance.io/api-reference/imports/retry-import#apireference\",\"headline\":\"Retry Import\",\"name\":\"Retry Import\",\"description\":\"Fixes a failed import by running a stored row again with corrected transformations or guards, without sending the data again. It applies to rows stored by Import Entity (createFmv1Import); rows stored by Import Rows (ingestFmv1ImportRows), and attempts made by an import job, are run again by queueing another job with Queue Import Job (queueFmv1ImportJob). Find the failed row or attempt with List Import Attempts (listFmv1ImportAttempts). Retries a stored import row: fixes a failed import with new transformations or guards, without sending the data again. Name the row by importRowId, to retry it with the transformations and guards you send, or by importAttemptId, to retry that attempt's row with the attempt's own. The retry reads the row's data and entity type, then runs the steps of Import Entity after the row is stored: the transformations turn data. into an entity, the guards run against it, and the entity is created, or updated when the transformed entity carries an id. A row that already created its entity creates another unless the transformations set id, such as with LOOKUP. A row cannot be retried as another entity type. Every retry of a row you can import answers 201 with the new import attempt, linked to the same row, whether or not the entity was written: check importAttempt.writeResult. Its attemptBatch is the request's. No row is stored. A malformed request is a 400, and records nothing: both ids or neither, transformations or guards sent with an importAttemptId, an id that is not a UUID, a blank attemptBatch, a body key this endpoint does not take, or any query parameter. There is no Idempotency-Key: sending the same retry twice records two attempts, and may write twice. Required permission: .import for the stored row's entity type, such as submission.import to retry a Submission row. The row's type is known only once it is read, so a caller holding no import permission is a 403, and a row or attempt of a type you cannot import is a 404, the same as an id that exists nowhere.\",\"url\":\"https://docs.go.aiinsurance.io/api-reference/imports/retry-import\",\"mainEntityOfPage\":{\"@id\":\"https://docs.go.aiinsurance.io/api-reference/imports/retry-import#webpage\"},\"dateModified\":\"2026-11-13T17:32:14.829Z\",\"publisher\":{\"@id\":\"https://docs.go.aiinsurance.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.go.aiinsurance.io#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"AI Insurance\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"AI Insurance\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/imports/retry-import.md","siteName":"AI Insurance","nav":{"global":null,"tabs":[{"tab":"Home","pages":[{"title":"Home","href":"/homepage"}]},{"tab":"App","pages":[{"title":"App","href":"/app/getting-started/overview"}]},{"tab":"Entities","pages":[{"title":"Entities","href":"/entities/overview"}]},{"tab":"Markets","pages":[{"title":"Markets","href":"/markets/overview"}]},{"tab":"Financials","pages":[{"title":"Financials","href":"/financials/overview"}]},{"tab":"API","groups":[{"group":"Getting Started","pages":[{"title":"Overview","href":"/api-reference/overview"},{"title":"Roadmap","href":"/api-reference/roadmap"},{"title":"Generating API Keys","href":"/api-reference/authentication"},{"title":"MCP Connector (Beta)","href":"/api-reference/mcp-connector"}]},{"group":"User","pages":[{"title":"Get my profile","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/me","href":"/api-reference/user/get-my-profile"},{"title":"List my accessible companies","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/me/companies","href":"/api-reference/user/list-my-accessible-companies"}]},{"group":"Companies","pages":[{"title":"Companies","href":"/api-reference/companies/overview"},{"title":"Get Company Metadata","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}","href":"/api-reference/companies/get-company-metadata"},{"title":"List Company Members","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/members","href":"/api-reference/companies/list-company-members"},{"title":"Get Company Lifecycle","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/lifecycle","href":"/api-reference/companies/get-company-lifecycle"},{"title":"Reset Sandbox","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/reset","href":"/api-reference/companies/reset-sandbox"},{"title":"Get Company Email Branding","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/email-branding","href":"/api-reference/companies/get-company-email-branding"},{"title":"Set Company Email Branding","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml put /api/v1/companies/{companyId}/email-branding","href":"/api-reference/companies/set-company-email-branding"}]},{"group":"Entities","pages":[{"title":"Overview","href":"/api-reference/entities/overview"},{"title":"List Entity Types","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/entity-types","href":"/api-reference/entities/list-entity-types"},{"title":"Get Page Layout","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/pages/{pageKey}/layout","href":"/api-reference/entities/get-page-layout"},{"title":"Get Entity Configuration","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/entities/{entityType}/configuration","href":"/api-reference/entities/get-entity-configuration"},{"title":"Create Entity","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/entities/{entityType}","href":"/api-reference/entities/create-entity"},{"title":"Create Entity Batch","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/entities/batch","href":"/api-reference/entities/create-entity-batch"},{"title":"List Entities","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/entities/{entityType}","href":"/api-reference/entities/list-entities"},{"title":"Start Entity Export Run","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/entities/{entityType}/export-runs","href":"/api-reference/entities/start-entity-export-run"},{"title":"Get Entity Export Run","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/entities/{entityType}/export-runs/{runId}","href":"/api-reference/entities/get-entity-export-run"},{"title":"Download Entity Export Run","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/entities/{entityType}/export-runs/{runId}/download","href":"/api-reference/entities/download-entity-export-run"},{"title":"List Export Presets For Member","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/export-presets","href":"/api-reference/entities/list-export-presets-for-member"},{"title":"Create Export Preset For Member","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/export-presets","href":"/api-reference/entities/create-export-preset-for-member"},{"title":"Replace Export Preset For Member","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml put /api/v1/companies/{companyId}/export-presets/{presetId}","href":"/api-reference/entities/replace-export-preset-for-member"},{"title":"Delete Export Preset For Member","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml delete /api/v1/companies/{companyId}/export-presets/{presetId}","href":"/api-reference/entities/delete-export-preset-for-member"},{"title":"Get Entity","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/entities/{entityType}/{entityId}","href":"/api-reference/entities/get-entity"},{"title":"Update Entity","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml patch /api/v1/companies/{companyId}/entities/{entityType}/{entityId}","href":"/api-reference/entities/update-entity"},{"title":"Delete Entity","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml delete /api/v1/companies/{companyId}/entities/{entityType}/{entityId}","href":"/api-reference/entities/delete-entity"}]},{"group":"Submission and Quote Lifecycle","pages":[{"title":"Rate, Quote, Bind","href":"/api-reference/rate-quote-bind"},{"title":"Close Submission","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/submissions/{submissionId}/close","href":"/api-reference/submission-and-quote-lifecycle/close-submission"},{"title":"Reopen Submission","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/submissions/{submissionId}/reopen","href":"/api-reference/submission-and-quote-lifecycle/reopen-submission"},{"title":"Cancel Quote","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/quotes/{quoteId}/cancel","href":"/api-reference/submission-and-quote-lifecycle/cancel-quote"}]},{"group":"Event Lifecycle","pages":[{"title":"Overview","href":"/api-reference/event-lifecycle/overview"},{"title":"Close Event","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/events/{eventId}/close","href":"/api-reference/event-lifecycle/close-event"},{"title":"Re-open Event","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/events/{eventId}/reopen","href":"/api-reference/event-lifecycle/re-open-event"},{"title":"Replace Event Open/Close History","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml put /api/v1/companies/{companyId}/events/{eventId}/open-close-history","href":"/api-reference/event-lifecycle/replace-event-openclose-history"}]},{"group":"Record Emails","pages":[{"title":"Overview","href":"/api-reference/record-emails/overview"},{"title":"List Record Email Conversations","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/entities/{entityType}/{entityId}/email-conversations","href":"/api-reference/record-emails/list-record-email-conversations"},{"title":"Get Record Email Conversation","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/entities/{entityType}/{entityId}/email-conversations/{threadId}","href":"/api-reference/record-emails/get-record-email-conversation"},{"title":"Remove Record Email Conversation","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/entities/{entityType}/{entityId}/email-conversations/{threadId}/remove","href":"/api-reference/record-emails/remove-record-email-conversation"},{"title":"Link Earlier Record Emails","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/entities/{entityType}/{entityId}/email-people/{personId}/link-earlier","href":"/api-reference/record-emails/link-earlier-record-emails"},{"title":"Unlink Record Person Emails","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/entities/{entityType}/{entityId}/email-people/{personId}/unlink","href":"/api-reference/record-emails/unlink-record-person-emails"},{"title":"List Record Email Link Events","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/entities/{entityType}/{entityId}/email-link-events","href":"/api-reference/record-emails/list-record-email-link-events"},{"title":"List Record Sendable Email Templates","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/entities/{entityType}/{entityId}/sendable-email-templates","href":"/api-reference/record-emails/list-record-sendable-email-templates"},{"title":"Preview Record Email","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/entities/{entityType}/{entityId}/emails/preview","href":"/api-reference/record-emails/preview-record-email"},{"title":"Send Record Email","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/entities/{entityType}/{entityId}/emails","href":"/api-reference/record-emails/send-record-email"},{"title":"Retry Record Email Delivery","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/entities/{entityType}/{entityId}/email-deliveries/{deliveryId}/retry","href":"/api-reference/record-emails/retry-record-email-delivery"},{"title":"List Record Packet Emails","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/entities/{entityType}/{entityId}/packet-emails","href":"/api-reference/record-emails/list-record-packet-emails"},{"title":"List Policy Email Conversations","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/policies/{policyId}/email-conversations","href":"/api-reference/record-emails/list-policy-email-conversations"},{"title":"Get Policy Email Conversation","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/policies/{policyId}/email-conversations/{threadId}","href":"/api-reference/record-emails/get-policy-email-conversation"},{"title":"Remove Policy Email Conversation","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/policies/{policyId}/email-conversations/{threadId}/remove","href":"/api-reference/record-emails/remove-policy-email-conversation"},{"title":"Link Earlier Policy Emails","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/policies/{policyId}/email-people/{personId}/link-earlier","href":"/api-reference/record-emails/link-earlier-policy-emails"},{"title":"Unlink Policy Person Emails","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/policies/{policyId}/email-people/{personId}/unlink","href":"/api-reference/record-emails/unlink-policy-person-emails"},{"title":"List Policy Email Link Events","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/policies/{policyId}/email-link-events","href":"/api-reference/record-emails/list-policy-email-link-events"},{"title":"List Policy Sendable Email Templates","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/policies/{policyId}/sendable-email-templates","href":"/api-reference/record-emails/list-policy-sendable-email-templates"},{"title":"Preview Policy Email","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/policies/{policyId}/emails/preview","href":"/api-reference/record-emails/preview-policy-email"},{"title":"Send Policy Email","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/policies/{policyId}/emails","href":"/api-reference/record-emails/send-policy-email"},{"title":"Retry Policy Email Delivery","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/policies/{policyId}/email-deliveries/{deliveryId}/retry","href":"/api-reference/record-emails/retry-policy-email-delivery"},{"title":"List Policy Packet Emails","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/policies/{policyId}/packet-emails","href":"/api-reference/record-emails/list-policy-packet-emails"}]},{"group":"OFAC Screening","pages":[{"title":"Overview","href":"/api-reference/ofac-screening/overview"},{"title":"Screen Exposure For OFAC","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/ofac/screen","href":"/api-reference/ofac-screening/screen-exposure-for-ofac"}]},{"group":"Policy Transactions","pages":[{"title":"Overview","href":"/api-reference/policies/overview"},{"title":"Concepts","href":"/api-reference/policies/concepts"},{"title":"Effective Dates \u0026 the Policy Timeline","href":"/api-reference/policies/effective-dates"},{"title":"Lifecycle Walkthrough","href":"/api-reference/policies/lifecycle-walkthrough"},{"group":"Configuration","pages":[{"title":"Get Policy Configuration","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/policies/configuration","href":"/api-reference/field-model-policy-configuration/get-policy-configuration"}]},{"group":"Reset","pages":[{"title":"Delete All Policies","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/policies/deleteAll","href":"/api-reference/policies/delete-all-policies"}]},{"group":"Transactions","pages":[{"title":"New Business Transaction","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/policies/transaction/new-business","href":"/api-reference/field-model-policy-transactions/new-business-transaction"},{"title":"Endorse Policy Transaction","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/policies/{policyId}/transaction/endorse","href":"/api-reference/field-model-policy-transactions/endorse-policy-transaction"},{"title":"Cancel Policy Transaction","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/policies/{policyId}/transaction/cancel","href":"/api-reference/field-model-policy-transactions/cancel-policy-transaction"},{"title":"Reinstate Policy Transaction","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/policies/{policyId}/transaction/reinstate","href":"/api-reference/field-model-policy-transactions/reinstate-policy-transaction"},{"title":"Renew Policy Transaction","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/policies/transaction/renew","href":"/api-reference/field-model-policy-transactions/renew-policy-transaction"},{"title":"Generate Quote from Policy (Stateless)","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/quotes/generate","href":"/api-reference/field-model-policies/generate-quote-from-policy-stateless"},{"title":"Bind Quote","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/quotes/{quoteId}/bind","href":"/api-reference/field-model-policy-transactions/bind-quote"},{"title":"Bind Quote by Reference or by Value","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/quotes/bind","href":"/api-reference/field-model-policy-transactions/bind-quote-by-reference-or-by-value"},{"title":"Delete Policy Transaction","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml delete /api/v1/companies/{companyId}/policies/{policyId}/transactions/{transactionId}","href":"/api-reference/field-model-policy-transactions/delete-policy-transaction"},{"title":"Get Policy Version","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/policies/{policyId}/versions/{version}","href":"/api-reference/field-model-policy-transactions/get-policy-version"},{"title":"List Single Policy Versions","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/policies/{policyId}/versions","href":"/api-reference/field-model-policy-transactions/list-single-policy-versions"},{"title":"List Policy Transactions","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/policies/{policyId}/transactions","href":"/api-reference/field-model-policy-transactions/list-policy-transactions"},{"title":"Get Policy Transaction","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/policies/{policyId}/transactions/{transactionId}","href":"/api-reference/field-model-policy-transactions/get-policy-transaction"},{"title":"Update Transaction Display Author","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml patch /api/v1/companies/{companyId}/policies/{policyId}/transactions/{transactionId}","href":"/api-reference/field-model-policy-transactions/update-transaction-display-author"}]},{"group":"Contacts","pages":[{"title":"List Policy Contacts","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/policies/{policyId}/contacts","href":"/api-reference/field-model-policy-transactions/list-policy-contacts"},{"title":"Add Policy Contact","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/policies/{policyId}/contacts","href":"/api-reference/field-model-policy-transactions/add-policy-contact"},{"title":"Remove Policy Contact","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml delete /api/v1/companies/{companyId}/policies/{policyId}/contacts/{personId}","href":"/api-reference/field-model-policy-transactions/remove-policy-contact"}]},{"group":"Bordereau","pages":[{"title":"List Bordereau Rows","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/policies/bordereau","href":"/api-reference/field-model-bordereau/list-bordereau-rows"},{"title":"Start Bordereau Export Run","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/policies/bordereau/export-runs","href":"/api-reference/field-model-bordereau/start-bordereau-export-run"},{"title":"Get Bordereau Export Run","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/policies/bordereau/export-runs/{runId}","href":"/api-reference/field-model-bordereau/get-bordereau-export-run"},{"title":"Download Bordereau Export Run","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/policies/bordereau/export-runs/{runId}/download","href":"/api-reference/field-model-bordereau/download-bordereau-export-run"},{"title":"Send Bordereau Export Run to Google Drive","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/policies/bordereau/export-runs/{runId}/drive","href":"/api-reference/field-model-bordereau/send-bordereau-export-run-to-google-drive"}]},{"group":"Listing Policies","pages":[{"title":"List Policies","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/policies/list","href":"/api-reference/field-model-policy-transactions/list-policies"},{"title":"List Policy Versions","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/policies/versions","href":"/api-reference/field-model-policy-transactions/list-policy-versions"}]},{"group":"Validation","pages":[{"title":"Check Bind Conditions","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/quotes/{quoteId}/bind-conditions","href":"/api-reference/field-model-policy-validation/check-bind-conditions"},{"title":"Validate Policy","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/policies/{policyId}/validate","href":"/api-reference/field-model-policy-validation/validate-policy"},{"title":"Validate Policies (Batch)","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/policies/validate","href":"/api-reference/field-model-policy-validation/validate-policies-batch"},{"title":"Repair Policies","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/policies/repair","href":"/api-reference/field-model-policy-transactions/repair-policies"}]}]},{"group":"Policy Invoicing","pages":[{"title":"Invoicing a policy","href":"/api-reference/invoicing/overview"},{"title":"Invoice plans","href":"/api-reference/invoicing/invoice-plans"},{"title":"Quote Invoicing Overview","sidebarTitle":"Quote Invoicing Overview","href":"/api-reference/invoicing/quote-invoicing"},{"group":"Quote Invoicing","pages":[{"title":"Get Quote Invoicing","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/quotes/{quoteId}/invoicing","href":"/api-reference/policy-invoicing/get-quote-invoicing"},{"title":"Replace Quote Invoice Settings","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml put /api/v1/companies/{companyId}/quotes/{quoteId}/invoicing/settings","href":"/api-reference/policy-invoicing/replace-quote-invoice-settings"},{"title":"Generate Quote Invoices","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/quotes/{quoteId}/invoicing/generate","href":"/api-reference/policy-invoicing/generate-quote-invoices"},{"title":"Attach Quote Invoice Plan","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml put /api/v1/companies/{companyId}/quotes/{quoteId}/invoicing/plan","href":"/api-reference/policy-invoicing/attach-quote-invoice-plan"},{"title":"Clear Quote Invoice Plan","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml delete /api/v1/companies/{companyId}/quotes/{quoteId}/invoicing/plan","href":"/api-reference/policy-invoicing/clear-quote-invoice-plan"}]},{"group":"Pricing Stack","pages":[{"title":"The pricing stack","href":"/api-reference/invoicing/pricing-stack"},{"title":"Get Quote Pricing Stack Intended Layer","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/quotes/{quoteId}/pricing-stack-intended-layer","href":"/api-reference/policy-invoicing/get-quote-pricing-stack-intended-layer"},{"title":"Set Quote Pricing Stack Intended Layer","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml put /api/v1/companies/{companyId}/quotes/{quoteId}/pricing-stack-intended-layer","href":"/api-reference/policy-invoicing/set-quote-pricing-stack-intended-layer"},{"title":"Clear Quote Rating","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml delete /api/v1/companies/{companyId}/quotes/{quoteId}/rating","href":"/api-reference/policy-invoicing/clear-quote-rating"}]},{"title":"Update Policy Invoices","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/policies/{policyId}/invoices/batch","href":"/api-reference/financials/update-policy-invoices"}]},{"group":"Financials","pages":[{"title":"Overview","href":"/api-reference/financials/overview"},{"group":"Invoices","pages":[{"title":"List Invoices","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/financials/invoices","href":"/api-reference/financials/list-invoices"},{"title":"Create Invoice","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/invoices","href":"/api-reference/financials/create-invoice"},{"title":"Get Invoice","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/financials/invoices/{invoiceId}","href":"/api-reference/financials/get-invoice"},{"title":"Update Invoice","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml put /api/v1/companies/{companyId}/financials/invoices/{invoiceId}","href":"/api-reference/financials/update-invoice"},{"title":"Delete Invoice","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml delete /api/v1/companies/{companyId}/financials/invoices/{invoiceId}","href":"/api-reference/financials/delete-invoice"},{"title":"Re-link Invoice","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/invoices/{invoiceId}/relink","href":"/api-reference/financials/re-link-invoice"}]},{"group":"Invoice Lifecycle","pages":[{"title":"Approve Invoice","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/invoices/{invoiceId}/approve","href":"/api-reference/financials/approve-invoice"},{"title":"Unapprove Invoice","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/invoices/{invoiceId}/unapprove","href":"/api-reference/financials/unapprove-invoice"},{"title":"Finalize Invoice","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/invoices/{invoiceId}/finalize","href":"/api-reference/financials/finalize-invoice"},{"title":"Void Invoice","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/invoices/{invoiceId}/void","href":"/api-reference/financials/void-invoice"},{"title":"Restore Invoice","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/invoices/{invoiceId}/restore","href":"/api-reference/financials/restore-invoice"}]},{"group":"Bill Review","pages":[{"title":"Start Invoice Bill Review","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/invoices/{invoiceId}/bill-review","href":"/api-reference/financials/start-invoice-bill-review"},{"title":"Get Invoice Bill Review","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/financials/invoices/{invoiceId}/bill-review","href":"/api-reference/financials/get-invoice-bill-review"}]},{"group":"Payments","pages":[{"title":"Record Payment","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/invoices/{invoiceId}/payments","href":"/api-reference/financials/record-payment"},{"title":"Remove Payment","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml delete /api/v1/companies/{companyId}/financials/invoices/{invoiceId}/payments/{paymentId}","href":"/api-reference/financials/remove-payment"}]},{"group":"Payees","pages":[{"title":"Change Invoice Payee","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/invoices/{invoiceId}/payee","href":"/api-reference/financials/change-invoice-payee"},{"title":"Merge Payee","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/payees/{payeeId}/merge","href":"/api-reference/financials/merge-payee"}]},{"group":"Reserves","pages":[{"title":"Set Reserves","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml put /api/v1/companies/{companyId}/financials/events/{eventId}/reserves/{categoryId}","href":"/api-reference/financials/set-reserves"},{"title":"Reset Reserve History","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/events/{eventId}/reserves/{categoryId}/history-reset","href":"/api-reference/financials/reset-reserve-history"},{"title":"List Reserve Updates","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/financials/events/{eventId}/reserve-updates","href":"/api-reference/financials/list-reserve-updates"},{"title":"List Company Reserve Updates","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/financials/reserve-updates","href":"/api-reference/financials/list-company-reserve-updates"}]},{"group":"Balances","pages":[{"title":"Get Balances","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/financials/balances","href":"/api-reference/financials/get-balances"},{"title":"Get Entity Balances","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/financials/entities/{entityType}/{entityId}/balances","href":"/api-reference/financials/get-entity-balances"}]},{"group":"Configuration","pages":[{"title":"Export Financials Configuration","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/config/export","href":"/api-reference/financials/export-financials-configuration"},{"title":"Import Financials Configuration","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/config/import","href":"/api-reference/financials/import-financials-configuration"},{"title":"List Transaction Categories","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/financials/config/categories","href":"/api-reference/financials/list-transaction-categories"},{"title":"Set Transaction Category Money-Out Approval","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml put /api/v1/companies/{companyId}/financials/config/categories/{categoryId}/money-out-approval","href":"/api-reference/financials/set-transaction-category-money-out-approval"},{"title":"List Policy Invoice Types","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/financials/config/policy-invoice-types","href":"/api-reference/financials/list-policy-invoice-types"},{"title":"Create Policy Invoice Type","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/config/policy-invoice-types","href":"/api-reference/financials/create-policy-invoice-type"},{"title":"List Policy Line Item Types","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/financials/config/policy-line-item-types","href":"/api-reference/financials/list-policy-line-item-types"},{"title":"Create Policy Line Item Type","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/config/policy-line-item-types","href":"/api-reference/financials/create-policy-line-item-type"},{"title":"Rename Policy Invoice Type","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml patch /api/v1/companies/{companyId}/financials/config/policy-invoice-types/{categoryId}","href":"/api-reference/financials/rename-policy-invoice-type"},{"title":"Delete Policy Invoice Type","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml delete /api/v1/companies/{companyId}/financials/config/policy-invoice-types/{categoryId}","href":"/api-reference/financials/delete-policy-invoice-type"},{"title":"Deprecate Policy Invoice Type","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/config/policy-invoice-types/{categoryId}/deprecate","href":"/api-reference/financials/deprecate-policy-invoice-type"},{"title":"Reactivate Policy Invoice Type","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/config/policy-invoice-types/{categoryId}/reactivate","href":"/api-reference/financials/reactivate-policy-invoice-type"},{"title":"Rename Policy Line Item Type","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml patch /api/v1/companies/{companyId}/financials/config/policy-line-item-types/{lineItemTypeId}","href":"/api-reference/financials/rename-policy-line-item-type"},{"title":"Delete Policy Line Item Type","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml delete /api/v1/companies/{companyId}/financials/config/policy-line-item-types/{lineItemTypeId}","href":"/api-reference/financials/delete-policy-line-item-type"},{"title":"Deprecate Policy Line Item Type","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/config/policy-line-item-types/{lineItemTypeId}/deprecate","href":"/api-reference/financials/deprecate-policy-line-item-type"},{"title":"Reactivate Policy Line Item Type","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/config/policy-line-item-types/{lineItemTypeId}/reactivate","href":"/api-reference/financials/reactivate-policy-line-item-type"},{"title":"Set Policy Invoice Type Direction","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml put /api/v1/companies/{companyId}/financials/config/policy-invoice-types/{categoryId}/expected-direction","href":"/api-reference/financials/set-policy-invoice-type-direction"},{"title":"Set Policy Invoice Type Payee Defaults","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml put /api/v1/companies/{companyId}/financials/config/policy-invoice-types/{categoryId}/payee-defaults","href":"/api-reference/financials/set-policy-invoice-type-payee-defaults"},{"title":"Set Policy Invoice Type Presets","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml put /api/v1/companies/{companyId}/financials/config/policy-invoice-types/{categoryId}/presets","href":"/api-reference/financials/set-policy-invoice-type-presets"},{"title":"Set Policy Invoice Type Money-Out Approval","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml put /api/v1/companies/{companyId}/financials/config/policy-invoice-types/{categoryId}/money-out-approval","href":"/api-reference/financials/set-policy-invoice-type-money-out-approval"},{"title":"Set Policy Line Item Associations","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/config/policy-line-item-types/associations","href":"/api-reference/financials/set-policy-line-item-associations"},{"title":"Reset Approval Config","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml delete /api/v1/companies/{companyId}/financials/config/approvals","href":"/api-reference/financials/reset-approval-config"}]},{"group":"Maintenance","pages":[{"title":"Import Event Financials","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/events/{eventId}/import","href":"/api-reference/financials/import-event-financials"},{"title":"Check Financials Read-State Consistency","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/financials/validation/check","href":"/api-reference/financials/check-financials-read-state-consistency"},{"title":"Rebuild Financials Read-State","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/validation/sync","href":"/api-reference/financials/rebuild-financials-read-state"},{"title":"Delete All Financial Data","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/financials/deleteAll","href":"/api-reference/financials/delete-all-financial-data"}]}]},{"group":"Rating","pages":[{"title":"Overview","href":"/api-reference/rating/overview"},{"title":"Rate Quote (Read-Only)","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/quotes/rate","href":"/api-reference/field-model-rating/rate-quote-read-only"},{"title":"Rate Saved Quote by Id","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/quotes/{quoteId}/rate","href":"/api-reference/field-model-rating/rate-saved-quote-by-id"}]},{"group":"Notes","pages":[{"title":"Overview","href":"/api-reference/notes/overview"},{"title":"List Notes","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/notes","href":"/api-reference/field-model-notes/list-notes"},{"title":"Create Note","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/notes","href":"/api-reference/field-model-notes/create-note"},{"title":"Get Note","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/notes/{noteId}","href":"/api-reference/field-model-notes/get-note"},{"title":"Update Note","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml patch /api/v1/companies/{companyId}/notes/{noteId}","href":"/api-reference/field-model-notes/update-note"},{"title":"Delete Note","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml delete /api/v1/companies/{companyId}/notes/{noteId}","href":"/api-reference/field-model-notes/delete-note"}]},{"group":"Tasks","pages":[{"title":"Overview","href":"/api-reference/tasks/overview"},{"title":"List Tasks","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/tasks","href":"/api-reference/tasks/list-tasks"},{"title":"Get Task","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/tasks/{taskId}","href":"/api-reference/tasks/get-task"},{"title":"Create Task","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/tasks","href":"/api-reference/tasks/create-task"},{"title":"Update Task","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml patch /api/v1/companies/{companyId}/tasks/{taskId}","href":"/api-reference/tasks/update-task"},{"title":"Delete Task","description":"Soft-deletes a to-do (task) so it no longer appears in List Tasks\n(`listTasks`) or Get Task (`getTask`).\n\n**Required permission:** `task.delete`\n","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml delete /api/v1/companies/{companyId}/tasks/{taskId}","href":"/api-reference/tasks/delete-task"}]},{"group":"Imports","hidden":true,"pages":[{"title":"Overview","description":"Store source rows once, then queue independent transformation jobs","href":"/api-reference/imports/overview"},{"title":"Import Rows","description":"Stores up to 1000 records from a spreadsheet or another system, as JSON\nvalues, without mapping or writing any records yet. It is the first step of\na bulk load or migration; tag the rows with an `importBatch`, then map them\ninto records with Queue Import Job (`queueFmv1ImportJob`). For one record\nwith an immediate result, use Import Entity (`createFmv1Import`).\n\nStores each element of `rows` unchanged as a separate import row. No entity type, mapping, guard or FMV1 configuration is needed. No attempt or entity is created. Returns the IDs in request order. Queue an import job to transform them, now or later.\n\nA request accepts 1 to 1000 arbitrary JSON values; send multiple batches for larger loads. Repeating a request stores additional rows. Storage preserves JSON values, not the original JSON text's whitespace or key order.\n\nFor an indivisible source record too large for an ordinary request, send\n`rowsGzipBase64` instead of `rows`: standard padded base64 of gzip-compressed\nUTF-8 JSON for the whole rows array. The server authenticates before decoding,\naccepts at most 16 MiB compressed and 128 MiB expanded, then validates and\nstores the original values. Never send both alternatives. Encoded source\npayloads are excluded from audit logs.\n\n**Required permission:** any one of `event.import`, `exposure.import`, `quote.import`, `submission.import`, `person.import`, `organization.import` or `policy.import`. Untyped rows are readable by any caller holding one of these permissions in the company.\n","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/imports/rows","href":"/api-reference/imports/import-rows"},{"title":"Queue Import Job","description":"Maps stored import rows into records in bulk, in the background, for a\nmigration or spreadsheet load. Store the rows first with Import Rows\n(`ingestFmv1ImportRows`), then follow the job with Get Import Job\n(`getFmv1ImportJob`) and List Import Attempts (`listFmv1ImportAttempts`)\nfiltered by `jobId`. To fix failed rows or change the mapping, queue another\njob; for one record with an immediate result, use Import Entity\n(`createFmv1Import`).\n\nQueues transformations over stored import rows. The response contains the job ID and returns before mapping or writing. A new job is also how to retry or change a mapping; no re-import is needed. Jobs run in queue order within a company, with one attempt per result. Different jobs can map the same row into different entity types.\n\nExpressions read `row` (the first source JSON value) and `rows` (all source JSON values for this result). Mapping starts with an empty target entity. Use `groupBy` to combine related rows. Within a result rows are ordered by storage time, then row ID; do not assume a source record kind is first.\n\nSelectors are snapshotted when the job is accepted. Mapping and guard failures are recorded on attempts and processing continues. Queue dispatch failures leave the job queued for automatic recovery. GET the job and list attempts with `jobId` to follow progress.\n\nPolicy jobs require `policyMode: whole-policy` or `single-transaction` and refuse `groupBy`. Their transformations produce the corresponding policy command envelope. Both modes support execution and `dryRun: true`. Single commands return one receipt; whole-policy rows return ordered transaction receipts. See [Policy import contracts](/api-reference/imports/overview#policy-import-contracts).\n\n**Required permission:** the target entity type's import permission (`policy.import` for `Policy`, `exposure.import` for `Exposure`, for example). Selecting rows stored by the synchronous endpoint additionally requires their original entity type's import permission. Permissions and API-key revocation are checked again by the worker.\n","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/imports/jobs","href":"/api-reference/imports/queue-import-job"},{"title":"Get Import Job","description":"Returns an import job's definition, status, and result counts. Poll it after\nQueue Import Job (`queueFmv1ImportJob`). A completed job can contain failed\nattempts, so inspect each result and its source row IDs with List Import\nAttempts (`listFmv1ImportAttempts`) filtered by `jobId`.\n\nAn unknown, cross-company or unauthorized job returns 404.\n\n**Required permission:** the job entity type's import permission, for example `exposure.import`.\n","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/imports/jobs/{jobId}","href":"/api-reference/imports/get-import-job"},{"title":"Import Entity","description":"Imports one record from another system, or one spreadsheet row sent as JSON,\nas a claim (`Event`), exposure, quote, submission, person, or organization,\nmapping your source fields with `transformations` and checking them with\n`guards`. Use it to load or migrate records one at a time with an immediate\nresult; for a bulk load, store the rows with Import Rows\n(`ingestFmv1ImportRows`) and map them with Queue Import Job\n(`queueFmv1ImportJob`). The row is stored even when the import fails, so fix\nit with Retry Import (`retryFmv1Import`) rather than sending it again.\n\nImports one record from another system as an FMV1 entity, in the shape you\nhold it rather than the company's field model.\n\n1. **`data` is stored as an import row**, as sent, before anything else can\n fail.\n2. The **transformations** turn `data.\u003centityKey>` into an entity in this\n company's field model.\n3. The **guards** run against the transformed entity.\n4. If both succeeded, the entity is **created**, or **updated** when the\n transformed entity carries an `id`. Keys the field model does not declare\n are dropped first; the write is then held to every rule an ordinary\n entity create or update is, including the company's own invariants.\n\nEvery request that gets past validation stores its row and answers `201`\nwith the **import attempt** recording each step, whether or not the entity\nwas written: check `importAttempt.writeResult`. A refused write is reported\nthere as the error the entity endpoint would have answered with. The attempt\nis the one Get Import Attempt returns; the request's `importBatch` is its\n`attemptBatch`.\n\nThe attempt is recorded before the transformations run, and each step's\nresult is stored on it as the step completes. The entity write and its\n`writeResult` commit together, so if the request fails part-way (a `5xx`\nor a dropped connection), read the row's attempts: one whose guards passed\nand whose `writeResult` is `null` wrote nothing, and retrying it cannot\nleave two entities.\n\nA malformed request is a `400`, and stores nothing.\n\nThere is no `Idempotency-Key`: sending the same request twice stores two\nrows, and may write twice. To try a stored row again, retry it rather than\nsending the request again.\n\n**Required permission:** `\u003centityType>.import` for the request's\n`entityType`, such as `submission.import` to import a Submission. The\npermission is the target entity type's own `import` verb; one type's\npermission does not import another type.\n","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/imports","href":"/api-reference/imports/import-entity"},{"title":"Retry Import","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/imports/retry","href":"/api-reference/imports/retry-import"},{"title":"List Import Rows","description":"Lists the source data stored for imports, newest first, exactly as it\narrived through Import Entity (`createFmv1Import`) or Import Rows\n(`ingestFmv1ImportRows`). Use it to check what a migration or spreadsheet\nload sent, filtered by `importBatch` or `entityType`; to see how each row\nwas mapped and whether it failed, use List Import Attempts\n(`listFmv1ImportAttempts`).\n\nReturns a page of the company's **import rows**, newest first. An import row\nis the data an Import Entity request or an Import Rows request received,\nstored as it arrived, before any\ntransformation.\n\nFilter by `entityType` and by `importBatch`, the batch key the `import`\nrequests carried. `totalCount` counts every matching row, ignoring the\npagination. Continue while `page * pageSize \u003c totalCount`.\n\nAny query parameter not listed here is a `400`.\n\nUntyped rows are visible to any importer in the company. Synchronous rows retain their entity-type permissions: a key holding\n`person.import` alone sees untyped rows and Person rows, and `totalCount` counts only\nthose.\n\n**Required permission:** `\u003centityType>.import` for the `entityType` filter\n(`person.import` for `Person`); without the filter, any one of\n`event.import`, `exposure.import`, `quote.import`, `submission.import`,\n`person.import`, `organization.import` or `policy.import`.\n","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/imports/rows","href":"/api-reference/imports/list-import-rows"},{"title":"Get Import Row","description":"Returns one import row, the source data exactly as it arrived before any\nmapping. Use it to see what was sent for a row an import attempt or job\nresult names; to see how the row was mapped and whether it failed, use Get\nImport Attempt (`getFmv1ImportAttempt`).\n\nA row whose entity type you may not import reads as `404`, exactly as an id\nthat exists nowhere does.\n\n**Required permission:** any one of `event.import`, `exposure.import`,\n`quote.import`, `submission.import`, `person.import` or\n`organization.import` or `policy.import`; the row's own type's `import` to read it.\n","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/imports/rows/{importRowId}","href":"/api-reference/imports/get-import-row"},{"title":"List Import Attempts","description":"Lists import attempts, newest first. Each attempt is one try at mapping an\nimport row into a record and writing it, with what failed if it did. Use it\nto find failed import rows, filtered by `jobId` for an import job or by\n`importBatch` for a batch, and open one with Get Import Attempt\n(`getFmv1ImportAttempt`).\n\nLists the company's **import attempts**, newest first. Each attempt is one\ntransform → guard → write pass over an import row, recorded whether or not\nthe write happened, with the transformations and guards it ran with and what\neach stage produced. Each item is the whole attempt, as\n**`GET /imports/attempts/{importAttemptId}`** returns it.\n\n### Filtering\n\nEvery filter is optional and exact-match; filters combine with AND.\n\n- **`importBatch`** — attempts on import rows sent with that `importBatch`.\n This finds every attempt on a batch's rows, including retries that carry an\n `attemptBatch` of their own.\n- **`attemptBatch`** — attempts recorded with that `attemptBatch`. An\n attempt made by an `import` request takes the request's `importBatch`; a\n retry carries the `attemptBatch` it was sent with.\n- **`jobId`** — attempts made by that import job.\n- **`importRowId`**, **`entityType`**, **`action`** — attempts on one row, of\n one entity type, or that created or updated.\n\nAn unknown query parameter, or a filter value outside its allowed values, is\na `400`, never an unfiltered or empty page.\n\n### Paging\n\n`page` and `pageSize` are the standard 1-based pagination parameters.\n`totalCount` counts every attempt matching the filters, ignoring the paging.\nContinue while `page * pageSize \u003c totalCount`.\n\nOnly attempts whose entity type you may import are listed: a key holding\n`person.import` alone sees only Person attempts, and `totalCount` counts\nonly those.\n\n**Required permission:** `\u003centityType>.import` for the `entityType` filter\n(`person.import` for `Person`); without the filter, any one of\n`event.import`, `exposure.import`, `quote.import`, `submission.import`,\n`person.import`, `organization.import` or `policy.import`.\n","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/imports/attempts","href":"/api-reference/imports/list-import-attempts"},{"title":"Get Import Attempt","description":"Returns one import attempt, showing how an import row was mapped, which\nguards failed, and whether the record was created or updated. Use it to see\nwhy a row failed to import, then fix it with Retry Import\n(`retryFmv1Import`) or, for an attempt made by an import job, queue another\njob with Queue Import Job (`queueFmv1ImportJob`).\n\nReturns one **import attempt**: a single transform → guard → write pass\nover an import row, with the transformations and guards it ran with and what\neach stage produced.\n\nThe attempt is recorded before its first step runs, and each stage's\nresult is stored as that stage completes, so a `null` result is one the\nattempt has not reached, or never reached.\n\n- **`transformationResult`** — the transformed entity, or the fields that\n failed to transform.\n- **`guardResult`** — whether every guard held, and each one that did not.\n `null` when the guards never ran.\n- **`writeResult`** — the outcome of the create or update. `null` when no\n write was attempted, because the transformations or a guard failed. It is\n stored in the same transaction as the write, so on an attempt whose\n guards passed, `null` means no entity was written: the attempt is in\n progress, or it crashed before its write committed.\n\nAttempt ids are scoped to their company: an id belonging to another company\nreturns `404`, exactly as an id that exists nowhere does.\n\nAn attempt whose entity type you may not import reads as `404`, exactly as\nan id that exists nowhere does.\n\n**Required permission:** any one of `event.import`, `exposure.import`,\n`quote.import`, `submission.import`, `person.import` or\n`organization.import` or `policy.import`; the attempt's own type's `import` to read it.\n","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/imports/attempts/{importAttemptId}","href":"/api-reference/imports/get-import-attempt"},{"title":"Replace Record Legacy Activity","description":"Preserves a record's activity from the legacy system. The body carries the\nrecord's whole legacy activity feed, each entry already worded as the\nlegacy system displayed it, and replaces whatever was preserved on the\nrecord before. Repeating the request leaves the same entries, so a\nmigration can be rerun. Send an empty `entries` array to clear the record.\n\nThe entries appear on the record's Activity tab under **Before migration**,\nnewest first, below the activity recorded since. They are read-only and are\nshown as sent.\n\nAn entry is held by one record at a time. When a `sourceId` in the request\nis already preserved on another record, the entry moves to this record, and\n`movedEntryCount` counts such entries.\n\nTo check that every legacy activity row was preserved, add up\n`sourceRowCount` across the migrated records and compare it with the legacy\nsystem's row count.\n\n**Required permission:** `\u003cresource>.import` for the path's `{entityType}`\n(`event.import`, `exposure.import`, `policy.import`, `quote.import`,\n`submission.import`). An entry with `privileged: true` also requires\n`note.view-privileged`.\n","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml put /api/v1/companies/{companyId}/entities/{entityType}/{entityId}/legacy-activity","href":"/api-reference/imports/replace-record-legacy-activity"}]},{"group":"Configuration Management","pages":[{"title":"Overview","description":null,"href":"/api-reference/configuration/overview"},{"title":"Conversion Rules","href":"/api-reference/configuration/conversion-rules"},{"title":"Author JEXL expressions","href":"/api-reference/configuration/jexl-authoring"},{"title":"JEXL reference","href":"/api-reference/configuration/jexl-reference"},{"group":"Inspect","pages":[{"title":"Export Configuration","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/configuration/export","href":"/api-reference/fmv1-configuration/export-configuration"},{"title":"Describe Configuration (run-down)","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/configuration/describe","href":"/api-reference/fmv1-configuration/describe-configuration-run-down"},{"title":"Describe Configuration Entity (fields of one entity or custom object)","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/configuration/describe/{entityOrObjectKey}","href":"/api-reference/fmv1-configuration/describe-configuration-entity-fields-of-one-entity-or-custom-object"},{"title":"Get Configuration Metadata","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/configuration/metadata","href":"/api-reference/fmv1-configuration/get-configuration-metadata"},{"title":"Get Configuration JSON Schema","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/configuration/schema","href":"/api-reference/fmv1-configuration/get-configuration-json-schema"}]},{"group":"Validate \u0026 Compare","pages":[{"title":"Validate Configuration","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/configuration/validate","href":"/api-reference/fmv1-configuration/validate-configuration"},{"title":"Compare Configuration","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/configuration/compare","href":"/api-reference/fmv1-configuration/compare-configuration"},{"title":"Start Data Validation Run","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/configuration/data-validation-runs","href":"/api-reference/fmv1-configuration/start-data-validation-run"},{"title":"Get Data Validation Run","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/configuration/data-validation-runs/{runId}","href":"/api-reference/fmv1-configuration/get-data-validation-run"},{"title":"List Data Validation Run Findings","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/configuration/data-validation-runs/{runId}/findings","href":"/api-reference/fmv1-configuration/list-data-validation-run-findings"}]},{"group":"Apply Changes","pages":[{"title":"Import Configuration","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/configuration/import","href":"/api-reference/fmv1-configuration/import-configuration"},{"title":"Patch Configuration (typed changes)","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/configuration/patch","href":"/api-reference/fmv1-configuration/patch-configuration-typed-changes"}]}]},{"group":"Company Files","pages":[{"title":"Overview","href":"/api-reference/company-files/overview"},{"title":"List File Categories","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/files/categories","href":"/api-reference/company-files/list-file-categories"},{"group":"Uploads","pages":[{"title":"Create Upload Intent","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/files","href":"/api-reference/company-files/create-upload-intent"},{"title":"Finalize Upload","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/files/{fileId}/finalize","href":"/api-reference/company-files/finalize-upload"}]},{"group":"Migrations","pages":[{"title":"Prepare File Migration","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/files/migrations/prepare","href":"/api-reference/company-files/prepare-file-migration"},{"title":"Get File Migration State","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/files/migrations/state","href":"/api-reference/company-files/get-file-migration-state"},{"title":"Refresh File Migration Upload","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/files/migrations/refresh","href":"/api-reference/company-files/refresh-file-migration-upload"},{"title":"Finalize File Migration","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/files/migrations/finalize","href":"/api-reference/company-files/finalize-file-migration"},{"title":"Reconcile File Migration Metadata","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/files/migrations/reconcile","href":"/api-reference/company-files/reconcile-file-migration-metadata"}]},{"group":"Files","pages":[{"title":"List Files","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/files","href":"/api-reference/company-files/list-files"},{"title":"Get File Metadata","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/files/{fileId}","href":"/api-reference/company-files/get-file-metadata"},{"title":"Rename, Move, or Categorize File","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml patch /api/v1/companies/{companyId}/files/{fileId}","href":"/api-reference/company-files/rename-move-or-categorize-file"},{"title":"Bulk Move Files","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/files/bulk-move","href":"/api-reference/company-files/bulk-move-files"},{"title":"Delete File","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml delete /api/v1/companies/{companyId}/files/{fileId}","href":"/api-reference/company-files/delete-file"}]},{"group":"Downloads","pages":[{"title":"Get Download URL","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/files/{fileId}/download-url","href":"/api-reference/company-files/get-download-url"},{"title":"Batch Download URLs","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/files/download-urls","href":"/api-reference/company-files/batch-download-urls"}]},{"group":"Versions","pages":[{"title":"List File Versions","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/files/{fileId}/versions","href":"/api-reference/company-files/list-file-versions"},{"title":"Create Re-upload Intent","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/files/{fileId}/versions","href":"/api-reference/company-files/create-re-upload-intent"},{"title":"Restore File Version","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/files/{fileId}/versions/{versionId}/restore","href":"/api-reference/company-files/restore-file-version"}]},{"group":"Placements","pages":[{"title":"List File Placements","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/files/{fileId}/placements","href":"/api-reference/company-files/list-file-placements"},{"title":"Add File Placement (Share to Another Entity)","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/files/{fileId}/placements","href":"/api-reference/company-files/add-file-placement-share-to-another-entity"},{"title":"Update File Placement (Move / Categorize per Entity)","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml patch /api/v1/companies/{companyId}/files/{fileId}/placements/{placementId}","href":"/api-reference/company-files/update-file-placement-move-categorize-per-entity"},{"title":"Remove File Placement","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml delete /api/v1/companies/{companyId}/files/{fileId}/placements/{placementId}","href":"/api-reference/company-files/remove-file-placement"}]},{"group":"Folders","pages":[{"title":"Create Folder","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/folders","href":"/api-reference/company-files/create-folder"},{"title":"Get Folder Tree","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/folders","href":"/api-reference/company-files/get-folder-tree"},{"title":"List Folder Contents","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/folders/{folderId}","href":"/api-reference/company-files/list-folder-contents"},{"title":"Rename, Move or Categorize Folder","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml patch /api/v1/companies/{companyId}/folders/{folderId}","href":"/api-reference/company-files/rename-move-or-categorize-folder"},{"title":"Delete Folder","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml delete /api/v1/companies/{companyId}/folders/{folderId}","href":"/api-reference/company-files/delete-folder"}]}]},{"group":"Forms","pages":[{"title":"Overview","href":"/api-reference/forms/overview"},{"title":"List Forms","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/forms","href":"/api-reference/forms/list-forms"},{"title":"Download Form","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/forms/{number}","href":"/api-reference/forms/download-form"},{"title":"Rename Form","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml patch /api/v1/companies/{companyId}/forms/{number}","href":"/api-reference/forms/rename-form"},{"title":"Delete Form","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml delete /api/v1/companies/{companyId}/forms/{number}","href":"/api-reference/forms/delete-form"},{"group":"Templates","pages":[{"title":"Upload Form Template","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/forms/template","href":"/api-reference/forms/upload-form-template"},{"title":"Replace Form Template","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml put /api/v1/companies/{companyId}/forms/template/{number}","href":"/api-reference/forms/replace-form-template"},{"title":"Touch Form Template","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/forms/template/{number}/touch","href":"/api-reference/forms/touch-form-template"},{"title":"Audit Form Template Smart Tags","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/forms/template/{number}/smart-tag-audit","href":"/api-reference/forms/audit-form-template-smart-tags"}]},{"group":"Static Forms","pages":[{"title":"Upload Static Form","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/forms/static","href":"/api-reference/forms/upload-static-form"},{"title":"Replace Static Form","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml put /api/v1/companies/{companyId}/forms/static/{number}","href":"/api-reference/forms/replace-static-form"}]},{"group":"Generated Forms","pages":[{"title":"List Generated Forms","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/forms/generated","href":"/api-reference/forms/list-generated-forms"},{"title":"Upload Event Form","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/forms/generated","href":"/api-reference/forms/upload-event-form"},{"title":"Touch Generated Form","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/forms/generated/{id}/touch","href":"/api-reference/forms/touch-generated-form"},{"title":"Audit Generated Form Smart Tags","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/forms/generated/{id}/smart-tag-audit","href":"/api-reference/forms/audit-generated-form-smart-tags"}]},{"group":"Packets","pages":[{"title":"List Form Packets","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/forms/packets","href":"/api-reference/forms/list-form-packets"},{"title":"Import Historical Form Packet","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/forms/packets/import","href":"/api-reference/forms/import-historical-form-packet"},{"title":"Get Form Packet Download URL","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/forms/packets/{packetId}/download-url","href":"/api-reference/forms/get-form-packet-download-url"}]}]},{"group":"Document Generation","pages":[{"title":"Overview","href":"/api-reference/documents/overview"}]},{"group":"Submission Parsing","pages":[{"title":"Overview","href":"/api-reference/parsing/overview"},{"title":"Trigger Parse","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml post /api/v1/companies/{companyId}/files/trigger-parse","href":"/api-reference/submission-parsing/trigger-parse"},{"title":"List Parse Runs","deprecated":null,"version":null,"openapi":"/openapi/generated-external-api.yaml get /api/v1/companies/{companyId}/files/parse-runs","href":"/api-reference/submission-parsing/list-parse-runs"}]},{"group":"Reference","pages":[{"title":"Structured Field Values","href":"/api-reference/field-values/overview"},{"title":"Data Models","href":"/api-reference/data-models"},{"title":"API Changelog","href":"/api-reference/changelog"}]}]}]},"basePath":"","title":"Retry Import - AI Insurance","buildId":"dpl_5joLUXmnJgwqjrHAS4dxZrQTdxgh","deploymentId":"dpl_5joLUXmnJgwqjrHAS4dxZrQTdxgh","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DPDWPCdE.js","utils-DyjUHyLo.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-BWYE1cdS.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-COAzxpEw.js","snippetPresets-DNiD_S52.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-CjwVt80x.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-ByHQMk7z.js","shallow-CaZuw1AO.js","getApiPlaygroundDisplay-DPVPOknm.js","CodeSnippet-B31CH-Mp.js","CodeSnippets-BxTYZWz6.js","Page-DDHbuAIY.js","getPastedJson-DhoAwiNO.js","icon-Dhq8z75J.js","MethodPill-DLXmKOwr.js","DuplicateIcon-jzdVwyRU.js","createIcon-eD0b3klN.js","DynamicMarkdown-BfddVCX7.js","SectionHeading-2pSCIo17.js","axios-vUo_bRtp.js","Markdown-DsWjhwJ4.js","clsx-B2t_mZQG.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CUljsAY7.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-Cf70306N.js"]}