{
"message": "Rule application queued.",
"data": {
"id": "<string>",
"rule_id": "<string>",
"status": "<string>",
"changed": "<string>",
"total": "<string>",
"financial_account_ids": "<string>",
"booking_date_after": "<string>",
"message": "The application could not finish. Some transactions may already have changed. Review the application logs before trying again.",
"started_at": "<string>",
"completed_at": "<string>",
"rule_logs_url": "<string>",
"created_at": "<string>"
}
}
{
"message": "<string>"
}
{
"message": "<string>"
}
{
"message": "<string>"
}
{
"message": "<string>",
"data": {
"id": "<string>",
"rule_id": "<string>",
"status": "<string>",
"changed": "<string>",
"total": "<string>",
"financial_account_ids": "<string>",
"booking_date_after": "<string>",
"message": "The application could not finish. Some transactions may already have changed. Review the application logs before trying again.",
"started_at": "<string>",
"completed_at": "<string>",
"rule_logs_url": "<string>",
"created_at": "<string>"
}
}
{
"message": "<string>",
"errors": {}
}
Apply a rule to existing transactions
Runs a BANK-scope rule over transactions already stored, exactly as a sync would: actions, rule logs,
counterparty pairing and destination updates. With dry_run (the default) nothing changes and the
response counts what would (would_change), what already matches (already_matching) and a sample of
ids. A real run is queued and returns 202 with the application to poll; one run per rule at a time
(409 otherwise). Undo a run with PUT /rule-logs/undo-bulk over the logs at rule_logs_url.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Synci API","description":"Fetch, transform, and transfer banking and financial data with the Synci API.","colors":{"primary":"#202020","light":"#65cfa0","dark":"#202020"},"logo":{"light":"https://mintcdn.com/synci/6HoxVjb_wmNxVtbF/logo/light.svg?fit=max\u0026auto=format\u0026n=6HoxVjb_wmNxVtbF\u0026q=85\u0026s=0d2b9ee1337fd0bec1fe8a9e9fccec80","dark":"https://mintcdn.com/synci/6HoxVjb_wmNxVtbF/logo/dark.svg?fit=max\u0026auto=format\u0026n=6HoxVjb_wmNxVtbF\u0026q=85\u0026s=59cf18a61b2bc59cf0bfc4713f0611ae","href":"https://synci.io"},"favicon":"https://mintcdn.com/synci/6HoxVjb_wmNxVtbF/favicon.svg?fit=max\u0026auto=format\u0026n=6HoxVjb_wmNxVtbF\u0026q=85\u0026s=feecb7ee405b94d707a26995dd7b7442","api":{"params":{"expanded":"closed"},"playground":{"display":"interactive"},"examples":{"defaults":"required","languages":["curl","javascript","python","php","go"]}},"background":{"color":{"light":"#f7f7f6","dark":"#1c1b19"}},"navbar":{"links":[{"href":"https://help.synci.io","label":"Help center"}],"primary":{"type":"button","label":"Dashboard","href":"https://app.synci.io"}},"footer":{"socials":{"website":"https://synci.io","github":"https://github.com/synciio","bluesky":"https://bsky.app/profile/synci.io","reddit":"https://www.reddit.com/r/synci"},"links":[{"header":"Product","items":[{"label":"Synci","href":"https://synci.io"},{"label":"Dashboard","href":"https://app.synci.io"},{"label":"Help center","href":"https://help.synci.io"}]},{"header":"Developers","items":[{"label":"Authentication","href":"/guides/authentication"},{"label":"Building OAuth apps","href":"/guides/oauth"},{"label":"Webhooks","href":"/guides/webhooks"}]}]},"search":{"prompt":"Search the Synci API docs"},"seo":{"indexing":"navigable"},"icons":{"library":"lucide"},"styling":{"eyebrows":"breadcrumbs","codeblocks":"dark","latex":false},"contextual":{"options":["copy","view","chatgpt","claude","mcp","cursor","vscode","download-spec"],"display":"header"},"navigation":{"global":{"anchors":[{"anchor":"Help center","icon":"life-buoy","href":"https://help.synci.io"},{"anchor":"Dashboard","icon":"layout-dashboard","href":"https://app.synci.io"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"synci","hasAudioNarration":false,"actualSubdomain":"synci","customDomains":["docs.synci.io"],"gitSource":{"type":"github","owner":"matiastonning","repo":"synci-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6aeba0587d81581225f1e596","collectionId":"087f8e1d-ebef-4eaa-beea-44378417faf5","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6aeba0587d81581225f1e596"},"feedback":{"thumbs":true,"agentFeedback":true},"entitlements":{},"buildId":"6aeba0587d81581225f1e596","clientVersion":"0.0.4067","searchFilterCounts":[{"language":"default","tag":"API reference","count":155},{"language":"default","tag":"Destinations","count":58},{"language":"default","tag":"Rules","count":36},{"language":"default","tag":"Finance","count":30},{"language":"default","tag":"Endpoints","count":24},{"language":"default","tag":"Accounts","count":20},{"language":"default","tag":"Managed Users API","count":17},{"language":"default","tag":"YNAB","count":14},{"language":"default","tag":"Google Sheets","count":13},{"language":"default","tag":"Notion","count":13}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"privacy":{"consentBanner":{"enabled":true}},"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":".dark{--primary-dark: 101 207 160}.dark #topbar-cta-button .text-white,.dark #topbar-cta-button [class*=\"text-white\"]{color:#183324}[role=\"tooltip\"]{background-color:#272a28!important;color:#f7f7f6!important;border-color:transparent!important;border-radius:8px!important}.dark [role=\"tooltip\"]{background-color:#f1efea!important;color:#1c1b19!important}h1{letter-spacing:-0.035em}h2,h3{letter-spacing:-0.02em}"}],"page":{"pagePath":"api-reference/rules/apply-a-rule-to-existing-transactions","slug":"/api-reference/rules/apply-a-rule-to-existing-transactions","pageMetadata":{"title":"Apply a rule to existing transactions","description":"Runs a `BANK`-scope rule over transactions already stored, exactly as a sync would: actions, rule logs,\ncounterparty pairing and destination updates. With `dry_run` (the default) nothing changes and the\nresponse counts what would (`would_change`), what already matches (`already_matching`) and a sample of\nids. A real run is queued and returns `202` with the application to poll; one run per rule at a time\n(`409` otherwise). Undo a run with `PUT /rule-logs/undo-bulk` over the logs at `rule_logs_url`.","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /rules/{ruleId}/apply","href":"/api-reference/rules/apply-a-rule-to-existing-transactions","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Runs a \", _jsx(_components.code, {\n children: \"BANK\"\n }), \"-scope rule over transactions already stored, exactly as a sync would: actions, rule logs,\\ncounterparty pairing and destination updates. With \", _jsx(_components.code, {\n children: \"dry_run\"\n }), \" (the default) nothing changes and the\\nresponse counts what would (\", _jsx(_components.code, {\n children: \"would_change\"\n }), \"), what already matches (\", _jsx(_components.code, {\n children: \"already_matching\"\n }), \") and a sample of\\nids. A real run is queued and returns \", _jsx(_components.code, {\n children: \"202\"\n }), \" with the application to poll; one run per rule at a time\\n(\", _jsx(_components.code, {\n children: \"409\"\n }), \" otherwise). Undo a run with \", _jsx(_components.code, {\n children: \"PUT /rule-logs/undo-bulk\"\n }), \" over the logs at \", _jsx(_components.code, {\n children: \"rule_logs_url\"\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":{"codeStyling":"dark","config":{},"pageMetadata":{"title":"Apply a rule to existing transactions","description":"Runs a `BANK`-scope rule over transactions already stored, exactly as a sync would: actions, rule logs,\ncounterparty pairing and destination updates. With `dry_run` (the default) nothing changes and the\nresponse counts what would (`would_change`), what already matches (`already_matching`) and a sample of\nids. A real run is queued and returns `202` with the application to poll; one run per rule at a time\n(`409` otherwise). Undo a run with `PUT /rule-logs/undo-bulk` over the logs at `rule_logs_url`.","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /rules/{ruleId}/apply","href":"/api-reference/rules/apply-a-rule-to-existing-transactions","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"rules.apply","description":"Runs a `BANK`-scope rule over transactions already stored, exactly as a sync would: actions, rule logs,\ncounterparty pairing and destination updates. With `dry_run` (the default) nothing changes and the\nresponse counts what would (`would_change`), what already matches (`already_matching`) and a sample of\nids. A real run is queued and returns `202` with the application to poll; one run per rule at a time\n(`409` otherwise). Undo a run with `PUT /rule-logs/undo-bulk` over the logs at `rule_logs_url`.","summary":"Apply a rule to existing transactions","tags":["Rules"],"parameters":["dec6df2e-1716-424f-9f7e-277872916816"],"requestBody":"c738a91c-e5d3-4445-b1d8-ea3462775388","responses":{"200":"fc1dab43-6935-46e1-935a-301ab7665f8a","202":"5698281c-7ce7-490c-8ec2-d4d40ec45c98","401":"be30c996-db32-4a43-8005-b9dafa2cb0cf","403":"cfbda545-d184-4b03-8133-41d55756f513","404":"b5795940-26b3-4689-8680-8f1ba622cb1b","409":"e158faee-a189-401d-a946-675020354f35","422":"77290532-f13f-47a7-b91f-b6566898fab9"},"method":"post","type":"path","servers":["2f1b3b51-ec47-4944-8596-a27703622525"],"security":["dc81c440-001e-43f7-aecb-e77be972661b","dedb45e1-c15a-47c7-8b7a-0b978bddcdb8"],"path":"/rules/{ruleId}/apply","baseUrlOptions":["https://api.synci.io/api/v1"],"title":"Apply a rule to existing transactions","codeSamples":[],"requestExampleLanguages":["bash","javascript","python","php","go"],"requiredOnlyExamples":true,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"dec6df2e-1716-424f-9f7e-277872916816":{"name":"ruleId","in":"path","required":true,"description":"The rule ID","schema":{"type":"integer","isRequired":true,"description":"The rule ID","uniqueKey":"","typeLabel":"integer"}}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"dry_run":{"type":"boolean","description":"When true (the default) nothing is changed: the response counts what a real run would change.","uniqueKey":"dry_run","typeLabel":"boolean"},"booking_date_after":{"oneOf":[{"type":"string","format":"date-time","description":"Only consider transactions booked on or after this date. Default: no limit.","uniqueKey":"booking_date_after.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"Only consider transactions booked on or after this date. Default: no limit.","uniqueKey":"booking_date_after.oneOf.1","typeLabel":"null"}],"uniqueKey":"booking_date_after","typeLabel":"string\u003cdate-time> | null"},"financial_account_ids":{"oneOf":[{"type":"array","description":"Restrict the run to these accounts. Default: every account the rule is attached to. Each must be attached to the rule.","items":{"type":"integer","uniqueKey":"financial_account_ids.oneOf.0.items.[INDEX]","typeLabel":"integer"},"uniqueKey":"financial_account_ids.oneOf.0","typeLabel":"integer[]"},{"type":"null","description":"Restrict the run to these accounts. Default: every account the rule is attached to. Each must be attached to the rule.","items":{"type":"integer"},"uniqueKey":"financial_account_ids.oneOf.1","typeLabel":"null"}],"uniqueKey":"financial_account_ids","typeLabel":"integer[] | null"}},"title":"ApplyRuleRequest","uniqueKey":"","typeLabel":"ApplyRuleRequest · object"},"examples":{"Example":{"title":"Example","value":{"dry_run":true,"booking_date_after":"2023-11-07T05:31:56Z","financial_account_ids":[123]}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"fc1dab43-6935-46e1-935a-301ab7665f8a":{"description":"","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"would_change":{"type":"integer","const":0,"isRequired":true,"uniqueKey":"data.would_change","typeLabel":"integer"},"already_matching":{"type":"integer","const":0,"isRequired":true,"uniqueKey":"data.already_matching","typeLabel":"integer"},"sample_transaction_ids":{"type":"array","items":{"type":"string","uniqueKey":"data.sample_transaction_ids.items.[INDEX]","typeLabel":"string"},"minItems":0,"maxItems":0,"isRequired":true,"uniqueKey":"data.sample_transaction_ids","typeLabel":"string[]"}},"required":["would_change","already_matching","sample_transaction_ids"],"isRequired":true,"uniqueKey":"data","typeLabel":"object"}},"required":["data"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"data":{"would_change":0,"already_matching":0,"sample_transaction_ids":["\u003cstring>"]}}}},"exampleType":"generated"}},"exampleType":"generated"},"5698281c-7ce7-490c-8ec2-d4d40ec45c98":{"description":"","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","const":"Rule application queued.","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"data":{"type":"object","properties":{"id":{"type":"string","isRequired":true,"uniqueKey":"data.id","typeLabel":"string"},"rule_id":{"type":"string","description":"The rule that was applied.","isRequired":true,"uniqueKey":"data.rule_id","typeLabel":"string"},"status":{"type":"string","description":"`QUEUED`, `RUNNING`, `COMPLETED` or `FAILED`.","isRequired":true,"uniqueKey":"data.status","typeLabel":"string"},"changed":{"type":"string","description":"Transactions the rule's actions changed so far.","isRequired":true,"uniqueKey":"data.changed","typeLabel":"string"},"total":{"type":"string","description":"Transactions whose conditions matched so far.","isRequired":true,"uniqueKey":"data.total","typeLabel":"string"},"financial_account_ids":{"type":"string","description":"The accounts the run covered; null means every account the rule is attached to.","isRequired":true,"uniqueKey":"data.financial_account_ids","typeLabel":"string"},"booking_date_after":{"oneOf":[{"type":"string","description":"Only transactions booked on or after this date were considered; null means no limit.","isRequired":true,"uniqueKey":"data.booking_date_after.oneOf.0","typeLabel":"string"},{"type":"null","description":"Only transactions booked on or after this date were considered; null means no limit.","isRequired":true,"uniqueKey":"data.booking_date_after.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.booking_date_after","typeLabel":"string | null"},"message":{"oneOf":[{"type":"string","description":"Recovery guidance; stored exception details are private diagnostics.","enum":["The application could not finish. Some transactions may already have changed. Review the application logs before trying again.",null],"isRequired":true,"uniqueKey":"data.message.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"Recovery guidance; stored exception details are private diagnostics.","enum":["The application could not finish. Some transactions may already have changed. Review the application logs before trying again.",null],"isRequired":true,"uniqueKey":"data.message.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.message","typeLabel":"enum\u003cstring> | null"},"started_at":{"type":"string","isRequired":true,"uniqueKey":"data.started_at","typeLabel":"string"},"completed_at":{"type":"string","isRequired":true,"uniqueKey":"data.completed_at","typeLabel":"string"},"rule_logs_url":{"type":"string","description":"The rule logs written by this run, for \"undo this application\" via `PUT /rule-logs/undo-bulk`.","isRequired":true,"uniqueKey":"data.rule_logs_url","typeLabel":"string"},"created_at":{"type":"string","isRequired":true,"uniqueKey":"data.created_at","typeLabel":"string"}},"required":["id","rule_id","status","changed","total","financial_account_ids","booking_date_after","message","started_at","completed_at","rule_logs_url","created_at"],"title":"RuleApplicationResource","isRequired":true,"uniqueKey":"data","typeLabel":"RuleApplicationResource · object"}},"required":["message","data"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"message":"Rule application queued.","data":{"id":"\u003cstring>","rule_id":"\u003cstring>","status":"\u003cstring>","changed":"\u003cstring>","total":"\u003cstring>","financial_account_ids":"\u003cstring>","booking_date_after":"\u003cstring>","message":"The application could not finish. Some transactions may already have changed. Review the application logs before trying again.","started_at":"\u003cstring>","completed_at":"\u003cstring>","rule_logs_url":"\u003cstring>","created_at":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"be30c996-db32-4a43-8005-b9dafa2cb0cf":{"description":"Unauthenticated","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","description":"Error overview.","isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"required":["message"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"message":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"cfbda545-d184-4b03-8133-41d55756f513":{"description":"Authorization error","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","description":"Error overview.","isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"required":["message"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"message":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"b5795940-26b3-4689-8680-8f1ba622cb1b":{"description":"Not found","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","description":"Error overview.","isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"required":["message"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"message":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"e158faee-a189-401d-a946-675020354f35":{"description":"","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"data":{"type":"object","properties":{"id":{"type":"string","isRequired":true,"uniqueKey":"data.id","typeLabel":"string"},"rule_id":{"type":"string","description":"The rule that was applied.","isRequired":true,"uniqueKey":"data.rule_id","typeLabel":"string"},"status":{"type":"string","description":"`QUEUED`, `RUNNING`, `COMPLETED` or `FAILED`.","isRequired":true,"uniqueKey":"data.status","typeLabel":"string"},"changed":{"type":"string","description":"Transactions the rule's actions changed so far.","isRequired":true,"uniqueKey":"data.changed","typeLabel":"string"},"total":{"type":"string","description":"Transactions whose conditions matched so far.","isRequired":true,"uniqueKey":"data.total","typeLabel":"string"},"financial_account_ids":{"type":"string","description":"The accounts the run covered; null means every account the rule is attached to.","isRequired":true,"uniqueKey":"data.financial_account_ids","typeLabel":"string"},"booking_date_after":{"oneOf":[{"type":"string","description":"Only transactions booked on or after this date were considered; null means no limit.","isRequired":true,"uniqueKey":"data.booking_date_after.oneOf.0","typeLabel":"string"},{"type":"null","description":"Only transactions booked on or after this date were considered; null means no limit.","isRequired":true,"uniqueKey":"data.booking_date_after.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.booking_date_after","typeLabel":"string | null"},"message":{"oneOf":[{"type":"string","description":"Recovery guidance; stored exception details are private diagnostics.","enum":["The application could not finish. Some transactions may already have changed. Review the application logs before trying again.",null],"isRequired":true,"uniqueKey":"data.message.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"Recovery guidance; stored exception details are private diagnostics.","enum":["The application could not finish. Some transactions may already have changed. Review the application logs before trying again.",null],"isRequired":true,"uniqueKey":"data.message.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.message","typeLabel":"enum\u003cstring> | null"},"started_at":{"type":"string","isRequired":true,"uniqueKey":"data.started_at","typeLabel":"string"},"completed_at":{"type":"string","isRequired":true,"uniqueKey":"data.completed_at","typeLabel":"string"},"rule_logs_url":{"type":"string","description":"The rule logs written by this run, for \"undo this application\" via `PUT /rule-logs/undo-bulk`.","isRequired":true,"uniqueKey":"data.rule_logs_url","typeLabel":"string"},"created_at":{"type":"string","isRequired":true,"uniqueKey":"data.created_at","typeLabel":"string"}},"required":["id","rule_id","status","changed","total","financial_account_ids","booking_date_after","message","started_at","completed_at","rule_logs_url","created_at"],"title":"RuleApplicationResource","isRequired":true,"uniqueKey":"data","typeLabel":"RuleApplicationResource · object"}},"required":["message","data"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"message":"\u003cstring>","data":{"id":"\u003cstring>","rule_id":"\u003cstring>","status":"\u003cstring>","changed":"\u003cstring>","total":"\u003cstring>","financial_account_ids":"\u003cstring>","booking_date_after":"\u003cstring>","message":"The application could not finish. Some transactions may already have changed. Review the application logs before trying again.","started_at":"\u003cstring>","completed_at":"\u003cstring>","rule_logs_url":"\u003cstring>","created_at":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"77290532-f13f-47a7-b91f-b6566898fab9":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","description":"Errors overview.","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"errors":{"type":"object","description":"A detailed description of each field that failed validation.","additionalProperties":{"type":"array","items":{"type":"string","uniqueKey":"errors.additionalProperties.items.[INDEX]","typeLabel":"string"},"uniqueKey":"errors.additionalProperties","typeLabel":"string[]"},"isRequired":true,"uniqueKey":"errors","typeLabel":"object"}},"required":["message","errors"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"message":"\u003cstring>","errors":{}}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"dc81c440-001e-43f7-aecb-e77be972661b":{"oauth2":{"type":"oauth2","flows":{"authorizationCode":{"authorizationUrl":"https://api.synci.io/oauth/authorize","tokenUrl":"https://api.synci.io/oauth/token","scopes":{"profile:read":"View your name, email, and profile details","accounts:read":"View your connected financial accounts and balances","accounts:write":"Update, sync, and remove your financial accounts, and change their settings","transactions:read":"View your transactions","transactions:write":"Create, update, and delete your transactions","sensitive:read":"See sensitive identifiers like account numbers and account holder names","transfer-links:read":"View your transfer links and their transfer history","transfer-links:write":"Create, update, and delete transfer links, and undo transfers","rules:read":"View your rules and rule activity","rules:write":"Create, update, and delete rules, and undo rule actions","webhooks:read":"View your webhook endpoints","webhooks:write":"Create, update, and delete webhook endpoints, and rotate their secrets","destinations:read":"View your connected destinations","destinations:write":"Connect, update, and remove destinations","financial-connections:read":"View your connected institutions","financial-connections:write":"Manage your connected institutions"}}},"scopes":[],"schemeName":"oauth2"}},"dedb45e1-c15a-47c7-8b7a-0b978bddcdb8":{"http":{"type":"http","description":"Bearer token (personal access token or OAuth access token)","scheme":"bearer","scopes":[],"schemeName":"http"}}},"servers":{"2f1b3b51-ec47-4944-8596-a27703622525":{"url":"https://api.synci.io/api/v1"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"oauth2","flows":{"authorizationCode":{"authorizationUrl":"https://api.synci.io/oauth/authorize","tokenUrl":"https://api.synci.io/oauth/token","scopes":{"profile:read":"View your name, email, and profile details","accounts:read":"View your connected financial accounts and balances","accounts:write":"Update, sync, and remove your financial accounts, and change their settings","transactions:read":"View your transactions","transactions:write":"Create, update, and delete your transactions","sensitive:read":"See sensitive identifiers like account numbers and account holder names","transfer-links:read":"View your transfer links and their transfer history","transfer-links:write":"Create, update, and delete transfer links, and undo transfers","rules:read":"View your rules and rule activity","rules:write":"Create, update, and delete rules, and undo rule actions","webhooks:read":"View your webhook endpoints","webhooks:write":"Create, update, and delete webhook endpoints, and rotate their secrets","destinations:read":"View your connected destinations","destinations:write":"Connect, update, and remove destinations","financial-connections:read":"View your connected institutions","financial-connections:write":"Manage your connected institutions"}}},"scopes":[],"schemeName":"oauth2"},"schema":{"title":"OAuth2 Auth","type":"string","isRequired":true,"description":"The access token received from the authorization server in the OAuth 2.0 flow.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"oauth2","name":"Authorization"}],"title":"oauth2"},{"schemes":[{"scheme":{"type":"http","description":"Bearer token (personal access token or OAuth access token)","scheme":"bearer","scopes":[],"schemeName":"http"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer token (personal access token or OAuth access token)","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"http","name":"Authorization"}],"title":"http"}]},"originalFileLocation":"openapi/v1.json"},"subdomain":"synci","siteName":"Synci API","title":"Apply a rule to existing transactions - Synci API","navMaps":{"firstHrefInVersion":{"v1":{"href":"/api-reference/rules/apply-a-rule-to-existing-transactions","matchLevel":0},"v2":{"href":"/api-reference/v2/introduction","matchLevel":3}},"firstHrefInLanguage":{}},"lastModified":"2026-11-04T21:15:22.824Z","originalFileLocation":"api-reference/rules/apply-a-rule-to-existing-transactions.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=\"Runs a BANK-scope rule over transactions already stored, exactly as a sync would: actions, rule logs, counterparty pairing and destination updates. With dry_run (the default) nothing changes and the response counts what would (would_change), what already matches (already_matching) and a sample of ids. A real run is queued and returns 202 with the application to poll; one run per rule at a time (409 otherwise). Undo a run with PUT /rule-logs/undo-bulk over the logs at rule_logs_url.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Synci API\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/synci/_F7xK8wI5Zq_eYiI/_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/synci/_F7xK8wI5Zq_eYiI/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/synci/_F7xK8wI5Zq_eYiI/_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/synci/_F7xK8wI5Zq_eYiI/_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/synci/_F7xK8wI5Zq_eYiI/_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/synci/_F7xK8wI5Zq_eYiI/_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/synci/_F7xK8wI5Zq_eYiI/_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/synci/_F7xK8wI5Zq_eYiI/_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/synci/_F7xK8wI5Zq_eYiI/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Apply a rule to existing transactions - Synci API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Runs a BANK-scope rule over transactions already stored, exactly as a sync would: actions, rule logs, counterparty pairing and destination updates. With dry_run (the default) nothing changes and the response counts what would (would_change), what already matches (already_matching) and a sample of ids. A real run is queued and returns 202 with the application to poll; one run per rule at a time (409 otherwise). Undo a run with PUT /rule-logs/undo-bulk over the logs at rule_logs_url.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Synci API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.synci.io/api-reference/rules/apply-a-rule-to-existing-transactions\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://synci.mintlify.app/_mintlify/api/og/v2?division=Rules\u0026amp;title=Apply+a+rule+to+existing+transactions\u0026amp;description=Runs+a+%60BANK%60-scope+rule+over+transactions+already+stored%2C+exactly+as+a+sync+would%3A+actions%2C+rule+logs%2C%0Acounterparty+pairing+and+destination+updates.+With+%60dry_\u0026amp;theme=90b174a997ab814bdabb5584\u0026amp;signature=7a7bb24230f616877d301a48f31fc555dbe266eb4a00ee9e8d8c24fbd78b21eb\">\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=\"Apply a rule to existing transactions - Synci API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Runs a BANK-scope rule over transactions already stored, exactly as a sync would: actions, rule logs, counterparty pairing and destination updates. With dry_run (the default) nothing changes and the response counts what would (would_change), what already matches (already_matching) and a sample of ids. A real run is queued and returns 202 with the application to poll; one run per rule at a time (409 otherwise). Undo a run with PUT /rule-logs/undo-bulk over the logs at rule_logs_url.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://synci.mintlify.app/_mintlify/api/og/v2?division=Rules\u0026amp;title=Apply+a+rule+to+existing+transactions\u0026amp;description=Runs+a+%60BANK%60-scope+rule+over+transactions+already+stored%2C+exactly+as+a+sync+would%3A+actions%2C+rule+logs%2C%0Acounterparty+pairing+and+destination+updates.+With+%60dry_\u0026amp;theme=90b174a997ab814bdabb5584\u0026amp;signature=7a7bb24230f616877d301a48f31fc555dbe266eb4a00ee9e8d8c24fbd78b21eb\">\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/synci/_F7xK8wI5Zq_eYiI/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Synci API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#202020\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.synci.io/api-reference/rules/apply-a-rule-to-existing-transactions\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/rules/apply-a-rule-to-existing-transactions.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.synci.io/#organization\",\"name\":\"Synci API\",\"url\":\"https://docs.synci.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/synci/6HoxVjb_wmNxVtbF/logo/light.svg?fit=max\u0026auto=format\u0026n=6HoxVjb_wmNxVtbF\u0026q=85\u0026s=0d2b9ee1337fd0bec1fe8a9e9fccec80\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.synci.io#website\",\"name\":\"Synci API\",\"url\":\"https://docs.synci.io\",\"publisher\":{\"@id\":\"https://docs.synci.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.synci.io/api-reference/rules/apply-a-rule-to-existing-transactions#webpage\",\"url\":\"https://docs.synci.io/api-reference/rules/apply-a-rule-to-existing-transactions\",\"name\":\"Apply a rule to existing transactions\",\"description\":\"Runs a BANK-scope rule over transactions already stored, exactly as a sync would: actions, rule logs, counterparty pairing and destination updates. With dry_run (the default) nothing changes and the response counts what would (would_change), what already matches (already_matching) and a sample of ids. A real run is queued and returns 202 with the application to poll; one run per rule at a time (409 otherwise). Undo a run with PUT /rule-logs/undo-bulk over the logs at rule_logs_url.\",\"dateModified\":\"2026-11-04T21:15:22.824Z\",\"isPartOf\":{\"@id\":\"https://docs.synci.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.synci.io/api-reference/rules/apply-a-rule-to-existing-transactions#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.synci.io/api-reference/rules/apply-a-rule-to-existing-transactions#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Rules\",\"item\":\"https://docs.synci.io/api-reference/rules/list-all-rules\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Rules\",\"item\":\"https://docs.synci.io/api-reference/rules/list-all-rules\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Apply a rule to existing transactions\",\"item\":\"https://docs.synci.io/api-reference/rules/apply-a-rule-to-existing-transactions\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.synci.io/api-reference/rules/apply-a-rule-to-existing-transactions#apireference\",\"headline\":\"Apply a rule to existing transactions\",\"name\":\"Apply a rule to existing transactions\",\"description\":\"Runs a BANK-scope rule over transactions already stored, exactly as a sync would: actions, rule logs, counterparty pairing and destination updates. With dry_run (the default) nothing changes and the response counts what would (would_change), what already matches (already_matching) and a sample of ids. A real run is queued and returns 202 with the application to poll; one run per rule at a time (409 otherwise). Undo a run with PUT /rule-logs/undo-bulk over the logs at rule_logs_url.\",\"url\":\"https://docs.synci.io/api-reference/rules/apply-a-rule-to-existing-transactions\",\"mainEntityOfPage\":{\"@id\":\"https://docs.synci.io/api-reference/rules/apply-a-rule-to-existing-transactions#webpage\"},\"dateModified\":\"2026-11-04T21:15:22.824Z\",\"publisher\":{\"@id\":\"https://docs.synci.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.synci.io#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Synci API\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Synci API","nav":{"global":{"anchors":[{"anchor":"Help center","icon":"life-buoy","href":"https://help.synci.io"},{"anchor":"Dashboard","icon":"layout-dashboard","href":"https://app.synci.io"}]},"tabs":[{"tab":"Documentation","icon":"book-open","pages":[{"title":"Documentation","href":""}]},{"tab":"API reference","icon":"code","versions":[{"version":"v1","default":true,"tag":"Stable","groups":[{"group":"Finance","pages":[{"group":"Connections","pages":[{"title":"List all financial connections","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /finance/connections","href":"/api-reference/connections/list-all-financial-connections"},{"title":"Create a new financial connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /finance/connections","href":"/api-reference/connections/create-a-new-financial-connection"},{"title":"Get financial connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /finance/connections/{connectionId}","href":"/api-reference/connections/get-financial-connection"},{"title":"Delete financial connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json delete /finance/connections/{connectionId}","href":"/api-reference/connections/delete-financial-connection"},{"title":"Disable financial connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /finance/connections/{connectionId}/disable","href":"/api-reference/connections/disable-financial-connection"},{"title":"Reconfirm the consent of a financial connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /finance/connections/{connectionId}/reauthorize","href":"/api-reference/connections/reconfirm-the-consent-of-a-financial-connection"},{"title":"Choose the accounts to keep","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /finance/connections/{connectionId}/setup/accounts","href":"/api-reference/connections/choose-the-accounts-to-keep"},{"title":"Complete the setup","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /finance/connections/{connectionId}/setup/complete","href":"/api-reference/connections/complete-the-setup"}]},{"group":"Accounts","pages":[{"title":"List all financial accounts","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /finance/accounts","href":"/api-reference/accounts/list-all-financial-accounts"},{"title":"Get financial account","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /finance/accounts/{accountId}","href":"/api-reference/accounts/get-financial-account"},{"title":"Update financial account","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /finance/accounts/{accountId}","href":"/api-reference/accounts/update-financial-account"},{"title":"Delete financial account","deprecated":null,"version":null,"openapi":"/openapi/v1.json delete /finance/accounts/{accountId}","href":"/api-reference/accounts/delete-financial-account"},{"title":"Bulk delete financial accounts","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /finance/accounts/bulk-delete","href":"/api-reference/accounts/bulk-delete-financial-accounts"},{"title":"Sync financial account data","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /finance/accounts/{accountId}/sync","href":"/api-reference/accounts/sync-financial-account-data"},{"title":"Reset financial account config to defaults","deprecated":null,"version":null,"openapi":"/openapi/v1.json delete /finance/accounts/{accountId}/reset-config","href":"/api-reference/accounts/reset-financial-account-config-to-defaults"},{"title":"List all account balance entries","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /finance/accounts/{accountId}/balances","href":"/api-reference/accounts/list-all-account-balance-entries"},{"title":"Get account balance entry","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /finance/accounts/{accountId}/balances/{balanceId}","href":"/api-reference/accounts/get-account-balance-entry"},{"title":"List account holdings","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /finance/accounts/{accountId}/holdings","href":"/api-reference/accounts/list-account-holdings"},{"title":"Get account holding","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /finance/accounts/{accountId}/holdings/{holdingId}","href":"/api-reference/accounts/get-account-holding"},{"title":"Get enrichment backfill status","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /finance/accounts/{accountId}/enrichment-status","href":"/api-reference/accounts/get-enrichment-backfill-status"}]},{"group":"Transactions","pages":[{"title":"List all transactions","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /finance/transactions","href":"/api-reference/transactions/list-all-transactions"},{"title":"Create a new transaction","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /finance/transactions","href":"/api-reference/transactions/create-a-new-transaction"},{"title":"Get transaction","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /finance/transactions/{transactionId}","href":"/api-reference/transactions/get-transaction"},{"title":"Update transaction","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /finance/transactions/{transactionId}","href":"/api-reference/transactions/update-transaction"},{"title":"Delete transaction","deprecated":null,"version":null,"openapi":"/openapi/v1.json delete /finance/transactions/{transactionId}","href":"/api-reference/transactions/delete-transaction"},{"title":"Bulk delete transactions","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /finance/transactions/bulk-delete","href":"/api-reference/transactions/bulk-delete-transactions"},{"title":"Pairing candidates","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /finance/transactions/{transactionId}/pairing-candidates","href":"/api-reference/transactions/pairing-candidates"}]},{"group":"Institutions","pages":[{"title":"Get supported countries","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /finance/institutions/countries","href":"/api-reference/institutions/get-supported-countries"},{"title":"List all supported institutions","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /finance/institutions","href":"/api-reference/institutions/list-all-supported-institutions"},{"title":"Get supported institution","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /finance/institutions/{institutionId}","href":"/api-reference/institutions/get-supported-institution"}]}]},{"group":"Loans","pages":[{"title":"Create a manual account","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /finance/accounts/manual","href":"/api-reference/loans/create-a-manual-account"},{"title":"Update loan terms","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /finance/accounts/{accountId}/loan","href":"/api-reference/loans/update-loan-terms"},{"title":"Add a rate period","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /finance/accounts/{accountId}/loan/rate-periods","href":"/api-reference/loans/add-a-rate-period"},{"title":"Remove a rate period","deprecated":null,"version":null,"openapi":"/openapi/v1.json delete /finance/accounts/{accountId}/loan/rate-periods/{effectiveFrom}","href":"/api-reference/loans/remove-a-rate-period"},{"title":"Verify the balance","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /finance/accounts/{accountId}/loan/checkpoints","href":"/api-reference/loans/verify-the-balance"},{"title":"Dismiss a payment change","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /finance/accounts/{accountId}/loan/dismiss-payment-change","href":"/api-reference/loans/dismiss-a-payment-change"},{"title":"Suggest loan payments","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /finance/accounts/{accountId}/loan/candidate-payments","href":"/api-reference/loans/suggest-loan-payments"},{"title":"Derived loan balance on a date","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /finance/accounts/{accountId}/loan/balance","href":"/api-reference/loans/derived-loan-balance-on-a-date"}]},{"group":"Manual accounts","pages":[{"title":"Derived balance on a date","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /finance/accounts/{accountId}/balance","href":"/api-reference/manual-accounts/derived-balance-on-a-date"},{"title":"Verify the balance","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /finance/accounts/{accountId}/balance-checkpoints","href":"/api-reference/manual-accounts/verify-the-balance"}]},{"group":"Imports","pages":[{"title":"List imports","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /finance/accounts/{accountId}/imports","href":"/api-reference/imports/list-imports"},{"title":"Upload a statement file","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /finance/accounts/{accountId}/imports","href":"/api-reference/imports/upload-a-statement-file"},{"title":"Get an import","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /finance/accounts/{accountId}/imports/{importId}","href":"/api-reference/imports/get-an-import"},{"title":"Discard an import","deprecated":null,"version":null,"openapi":"/openapi/v1.json delete /finance/accounts/{accountId}/imports/{importId}","href":"/api-reference/imports/discard-an-import"},{"title":"List an import's rows","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /finance/accounts/{accountId}/imports/{importId}/rows","href":"/api-reference/imports/list-an-imports-rows"},{"title":"Change the CSV mapping","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /finance/accounts/{accountId}/imports/{importId}/mapping","href":"/api-reference/imports/change-the-csv-mapping"},{"title":"Commit an import","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /finance/accounts/{accountId}/imports/{importId}/commit","href":"/api-reference/imports/commit-an-import"},{"title":"Undo an import","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /finance/accounts/{accountId}/imports/{importId}/undo","href":"/api-reference/imports/undo-an-import"}]},{"group":"Destinations","pages":[{"group":"YNAB","pages":[{"title":"List all YNAB connections","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/ynab/connections","href":"/api-reference/ynab/list-all-ynab-connections"},{"title":"Create new YNAB connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /destinations/ynab/connections","href":"/api-reference/ynab/create-new-ynab-connection"},{"title":"Get YNAB connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/ynab/connections/{connectionId}","href":"/api-reference/ynab/get-ynab-connection"},{"title":"Update YNAB connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /destinations/ynab/connections/{connectionId}","href":"/api-reference/ynab/update-ynab-connection"},{"title":"Delete YNAB connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json delete /destinations/ynab/connections/{connectionId}","href":"/api-reference/ynab/delete-ynab-connection"},{"title":"Refresh YNAB connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /destinations/ynab/connections/{connectionId}/refresh","href":"/api-reference/ynab/refresh-ynab-connection"},{"title":"List all YNAB budgets","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/ynab/connections/{connectionId}/budgets","href":"/api-reference/ynab/list-all-ynab-budgets"},{"title":"Get YNAB budget","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/ynab/connections/{connectionId}/budgets/{budgetId}","href":"/api-reference/ynab/get-ynab-budget"},{"title":"Update YNAB budget","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /destinations/ynab/connections/{connectionId}/budgets/{budgetId}","href":"/api-reference/ynab/update-ynab-budget"},{"title":"Delete YNAB budget","deprecated":null,"version":null,"openapi":"/openapi/v1.json delete /destinations/ynab/connections/{connectionId}/budgets/{budgetId}","href":"/api-reference/ynab/delete-ynab-budget"},{"title":"List all YNAB budget accounts","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/ynab/connections/{connectionId}/budgets/{budgetId}/accounts","href":"/api-reference/ynab/list-all-ynab-budget-accounts"},{"title":"Create YNAB budget account","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /destinations/ynab/connections/{connectionId}/budgets/{budgetId}/accounts","href":"/api-reference/ynab/create-ynab-budget-account"},{"title":"Get YNAB budget account","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/ynab/connections/{connectionId}/budgets/{budgetId}/accounts/{budgetAccountId}","href":"/api-reference/ynab/get-ynab-budget-account"},{"title":"Delete YNAB budget account","deprecated":null,"version":null,"openapi":"/openapi/v1.json delete /destinations/ynab/connections/{connectionId}/budgets/{budgetId}/accounts/{budgetAccountId}","href":"/api-reference/ynab/delete-ynab-budget-account"}]},{"group":"Lunch Money","pages":[{"title":"List all Lunch Money connections","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/lunch-money/connections","href":"/api-reference/lunch-money/list-all-lunch-money-connections"},{"title":"Create new Lunch Money connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /destinations/lunch-money/connections","href":"/api-reference/lunch-money/create-new-lunch-money-connection"},{"title":"Get Lunch Money connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/lunch-money/connections/{connectionId}","href":"/api-reference/lunch-money/get-lunch-money-connection"},{"title":"Update Lunch Money connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /destinations/lunch-money/connections/{connectionId}","href":"/api-reference/lunch-money/update-lunch-money-connection"},{"title":"Delete Lunch Money connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json delete /destinations/lunch-money/connections/{connectionId}","href":"/api-reference/lunch-money/delete-lunch-money-connection"},{"title":"Refresh Lunch Money connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /destinations/lunch-money/connections/{connectionId}/refresh","href":"/api-reference/lunch-money/refresh-lunch-money-connection"},{"title":"List all Lunch Money accounts","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/lunch-money/connections/{connectionId}/accounts","href":"/api-reference/lunch-money/list-all-lunch-money-accounts"},{"title":"Create Lunch Money account","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /destinations/lunch-money/connections/{connectionId}/accounts","href":"/api-reference/lunch-money/create-lunch-money-account"},{"title":"Get Lunch Money account","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/lunch-money/connections/{connectionId}/accounts/{accountId}","href":"/api-reference/lunch-money/get-lunch-money-account"},{"title":"Delete Lunch Money account","deprecated":null,"version":null,"openapi":"/openapi/v1.json delete /destinations/lunch-money/connections/{connectionId}/accounts/{accountId}","href":"/api-reference/lunch-money/delete-lunch-money-account"}]},{"group":"Google Sheets","pages":[{"title":"List all Google Sheets connections","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/google-sheets/connections","href":"/api-reference/google-sheets/list-all-google-sheets-connections"},{"title":"Create new Google Sheets connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /destinations/google-sheets/connections","href":"/api-reference/google-sheets/create-new-google-sheets-connection"},{"title":"Get Google Sheets connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/google-sheets/connections/{connectionId}","href":"/api-reference/google-sheets/get-google-sheets-connection"},{"title":"Update Google Sheets connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /destinations/google-sheets/connections/{connectionId}","href":"/api-reference/google-sheets/update-google-sheets-connection"},{"title":"Delete Google Sheets connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json delete /destinations/google-sheets/connections/{connectionId}","href":"/api-reference/google-sheets/delete-google-sheets-connection"},{"title":"Refresh Google Sheets connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /destinations/google-sheets/connections/{connectionId}/refresh","href":"/api-reference/google-sheets/refresh-google-sheets-connection"},{"title":"List destination spreadsheets for a connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/google-sheets/connections/{connectionId}/sheets","href":"/api-reference/google-sheets/list-destination-spreadsheets-for-a-connection"},{"title":"Register a destination spreadsheet","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /destinations/google-sheets/connections/{connectionId}/sheets","href":"/api-reference/google-sheets/register-a-destination-spreadsheet"},{"title":"Get a destination spreadsheet","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/google-sheets/connections/{connectionId}/sheets/{sheetId}","href":"/api-reference/google-sheets/get-a-destination-spreadsheet"},{"title":"Update a destination spreadsheet","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /destinations/google-sheets/connections/{connectionId}/sheets/{sheetId}","href":"/api-reference/google-sheets/update-a-destination-spreadsheet"},{"title":"Delete a destination spreadsheet","deprecated":null,"version":null,"openapi":"/openapi/v1.json delete /destinations/google-sheets/connections/{connectionId}/sheets/{sheetId}","href":"/api-reference/google-sheets/delete-a-destination-spreadsheet"},{"title":"List the worksheets (tabs) of a spreadsheet","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/google-sheets/connections/{connectionId}/sheets/{sheetId}/tabs","href":"/api-reference/google-sheets/list-the-worksheets-tabs-of-a-spreadsheet"},{"title":"Create a new worksheet (tab) in a spreadsheet","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /destinations/google-sheets/connections/{connectionId}/sheets/{sheetId}/tabs","href":"/api-reference/google-sheets/create-a-new-worksheet-tab-in-a-spreadsheet"}]},{"group":"SimpleFIN","pages":[{"title":"List all SimpleFIN connections","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/simplefin/connections","href":"/api-reference/simplefin/list-all-simplefin-connections"},{"title":"Create new SimpleFIN connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /destinations/simplefin/connections","href":"/api-reference/simplefin/create-new-simplefin-connection"},{"title":"Get SimpleFIN connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/simplefin/connections/{connectionId}","href":"/api-reference/simplefin/get-simplefin-connection"},{"title":"Update SimpleFIN connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /destinations/simplefin/connections/{connectionId}","href":"/api-reference/simplefin/update-simplefin-connection"},{"title":"Delete SimpleFIN connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json delete /destinations/simplefin/connections/{connectionId}","href":"/api-reference/simplefin/delete-simplefin-connection"},{"title":"Regenerate setup token","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /destinations/simplefin/connections/{connectionId}/regenerate-token","href":"/api-reference/simplefin/regenerate-setup-token"},{"title":"Revoke access credentials","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /destinations/simplefin/connections/{connectionId}/revoke","href":"/api-reference/simplefin/revoke-access-credentials"},{"title":"List accounts observed syncing","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/simplefin/connections/{connectionId}/accounts","href":"/api-reference/simplefin/list-accounts-observed-syncing"}]},{"group":"Notion","pages":[{"title":"List all Notion connections","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/notion/connections","href":"/api-reference/notion/list-all-notion-connections"},{"title":"Create new Notion connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /destinations/notion/connections","href":"/api-reference/notion/create-new-notion-connection"},{"title":"Get Notion connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/notion/connections/{connectionId}","href":"/api-reference/notion/get-notion-connection"},{"title":"Update Notion connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /destinations/notion/connections/{connectionId}","href":"/api-reference/notion/update-notion-connection"},{"title":"Delete Notion connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json delete /destinations/notion/connections/{connectionId}","href":"/api-reference/notion/delete-notion-connection"},{"title":"Refresh Notion connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /destinations/notion/connections/{connectionId}/refresh","href":"/api-reference/notion/refresh-notion-connection"},{"title":"Search pages shared with Synci","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/notion/connections/{connectionId}/pages","href":"/api-reference/notion/search-pages-shared-with-synci"},{"title":"Search databases shared with Synci","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/notion/connections/{connectionId}/data-sources","href":"/api-reference/notion/search-databases-shared-with-synci"},{"title":"List destination databases for a connection","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/notion/connections/{connectionId}/databases","href":"/api-reference/notion/list-destination-databases-for-a-connection"},{"title":"Register a destination database","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /destinations/notion/connections/{connectionId}/databases","href":"/api-reference/notion/register-a-destination-database"},{"title":"Get a destination database","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /destinations/notion/connections/{connectionId}/databases/{databaseId}","href":"/api-reference/notion/get-a-destination-database"},{"title":"Update a destination database","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /destinations/notion/connections/{connectionId}/databases/{databaseId}","href":"/api-reference/notion/update-a-destination-database"},{"title":"Delete a destination database","deprecated":null,"version":null,"openapi":"/openapi/v1.json delete /destinations/notion/connections/{connectionId}/databases/{databaseId}","href":"/api-reference/notion/delete-a-destination-database"}]}]},{"group":"Account","pages":[{"group":"Webhooks","pages":[{"title":"List all webhook events","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /webhooks/events","href":"/api-reference/webhooks/list-all-webhook-events"},{"title":"List all webhook endpoints","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /webhooks","href":"/api-reference/webhooks/list-all-webhook-endpoints"},{"title":"Create new webhook endpoint","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /webhooks","href":"/api-reference/webhooks/create-new-webhook-endpoint"},{"title":"Get webhook endpoint","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /webhooks/{webhookEndpointId}","href":"/api-reference/webhooks/get-webhook-endpoint"},{"title":"Update webhook endpoint","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /webhooks/{webhookEndpointId}","href":"/api-reference/webhooks/update-webhook-endpoint"},{"title":"Delete webhook endpoint","deprecated":null,"version":null,"openapi":"/openapi/v1.json delete /webhooks/{webhookEndpointId}","href":"/api-reference/webhooks/delete-webhook-endpoint"},{"title":"Test webhook endpoint","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /webhooks/{webhookEndpointId}/test","href":"/api-reference/webhooks/test-webhook-endpoint"},{"title":"Rotate webhook secret","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /webhooks/{webhookEndpointId}/rotate-secret","href":"/api-reference/webhooks/rotate-webhook-secret"}]},{"group":"User","pages":[{"title":"Get the authenticated user","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /user","href":"/api-reference/user/get-the-authenticated-user"}]}]},{"group":"Rules","pages":[{"group":"Rules","pages":[{"title":"List all rules","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /rules","href":"/api-reference/rules/list-all-rules"},{"title":"Create a new rule","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /rules","href":"/api-reference/rules/create-a-new-rule"},{"title":"Get rule","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /rules/{ruleId}","href":"/api-reference/rules/get-rule"},{"title":"Update rule","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /rules/{ruleId}","href":"/api-reference/rules/update-rule"},{"title":"Delete rule","deprecated":null,"version":null,"openapi":"/openapi/v1.json delete /rules/{ruleId}","href":"/api-reference/rules/delete-rule"},{"title":"Reorder rules for a financial account","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /rules/{ruleId}/accounts/{financialAccountId}","href":"/api-reference/rules/reorder-rules-for-a-financial-account"},{"title":"Attach rule to a financial account","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /rules/{ruleId}/accounts/{financialAccountId}","href":"/api-reference/rules/attach-rule-to-a-financial-account"},{"title":"Detach rule from financial account","deprecated":null,"version":null,"openapi":"/openapi/v1.json delete /rules/{ruleId}/accounts/{financialAccountId}","href":"/api-reference/rules/detach-rule-from-financial-account"},{"title":"Reorder rules for a transfer link","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /rules/{ruleId}/transfer-links/{transferLinkId}","href":"/api-reference/rules/reorder-rules-for-a-transfer-link"},{"title":"Attach rule to transfer link","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /rules/{ruleId}/transfer-links/{transferLinkId}","href":"/api-reference/rules/attach-rule-to-transfer-link"},{"title":"Detach rule from transfer link","deprecated":null,"version":null,"openapi":"/openapi/v1.json delete /rules/{ruleId}/transfer-links/{transferLinkId}","href":"/api-reference/rules/detach-rule-from-transfer-link"},{"title":"Suggest an internal-transfer rule from examples","description":"Derives a `BANK`-scope rule that marks transactions like the given examples as moves to the counterparty\naccount, strongest signal first: the counterparty account number (`HIGH` confidence), a shared prefix of\nthe counterparty name or remittance text (`MEDIUM`), or an amount band (`LOW`). The candidate rule is run\nover the account's last 365 days so the response lists what it would match (ids capped at 500).\n`unmatched_example_ids` names examples the derived rule would not catch. Nothing is saved: open the\nreturned rule in the editor and create it with **Create a new rule**.","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /rules/suggest","href":"/api-reference/rules/suggest-an-internal-transfer-rule-from-examples"},{"title":"Apply a rule to existing transactions","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /rules/{ruleId}/apply","href":"/api-reference/rules/apply-a-rule-to-existing-transactions"},{"title":"Get a rule application","description":"The state of one run started with **Apply a rule to existing transactions**; poll it until `status` is\n`COMPLETED` or `FAILED`.","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /rules/{ruleId}/applications/{applicationId}","href":"/api-reference/rules/get-a-rule-application"},{"title":"Rule field catalog","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /rules/field-catalog","href":"/api-reference/rules/rule-field-catalog"},{"title":"Preview a rule against transactions (dry-run)","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /rules/preview","href":"/api-reference/rules/preview-a-rule-against-transactions-dry-run"}]},{"group":"Rule Logs","pages":[{"title":"List all rule logs","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /rule-logs","href":"/api-reference/rule-logs/list-all-rule-logs"},{"title":"Get rule log","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /rule-logs/{logId}","href":"/api-reference/rule-logs/get-rule-log"},{"title":"Undo multiple rule actions","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /rule-logs/undo-bulk","href":"/api-reference/rule-logs/undo-multiple-rule-actions"},{"title":"Undo a rule action","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /rule-logs/{logId}/undo","href":"/api-reference/rule-logs/undo-a-rule-action"}]}]},{"group":"Transfers","pages":[{"group":"Transfer Links","pages":[{"title":"List all transfer links","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /transfer-links","href":"/api-reference/transfer-links/list-all-transfer-links"},{"title":"Create a new transfer link","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /transfer-links","href":"/api-reference/transfer-links/create-a-new-transfer-link"},{"title":"Get transfer link","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /transfer-links/{transferLinkId}","href":"/api-reference/transfer-links/get-transfer-link"},{"title":"Update transfer link","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /transfer-links/{transferLinkId}","href":"/api-reference/transfer-links/update-transfer-link"},{"title":"Delete transfer link","deprecated":null,"version":null,"openapi":"/openapi/v1.json delete /transfer-links/{transferLinkId}","href":"/api-reference/transfer-links/delete-transfer-link"},{"title":"Retry transfers for all transfer links","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /transfer-links/retry-transfers","href":"/api-reference/transfer-links/retry-transfers-for-all-transfer-links"},{"title":"Retry transfers for a specific transfer link","deprecated":null,"version":null,"openapi":"/openapi/v1.json post /transfer-links/{transferLinkId}/retry-transfers","href":"/api-reference/transfer-links/retry-transfers-for-a-specific-transfer-link"}]},{"group":"Transfer Logs","pages":[{"title":"List all transfer logs","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /transfer-logs","href":"/api-reference/transfer-logs/list-all-transfer-logs"},{"title":"Get transfer log","deprecated":null,"version":null,"openapi":"/openapi/v1.json get /transfer-logs/{transferLogId}","href":"/api-reference/transfer-logs/get-transfer-log"},{"title":"Undo a transfer","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /transfer-logs/{transferLogId}/undo","href":"/api-reference/transfer-logs/undo-a-transfer"},{"title":"Undo multiple transfers","deprecated":null,"version":null,"openapi":"/openapi/v1.json put /transfer-logs/undo-bulk","href":"/api-reference/transfer-logs/undo-multiple-transfers"}]}]}]},{"version":"v2","tag":"Alpha","pages":[{"title":"v2","href":"/api-reference/v2/introduction"}]}]},{"tab":"Managed Users API","icon":"users","pages":[{"title":"Managed Users API","href":"/api-reference/managed/introduction"}]}]},"basePath":"","title":"Apply a rule to existing transactions - Synci API","buildId":"dpl_9VVk5y1P8k1ATeJguVngy9Q3cmbD","deploymentId":"dpl_9VVk5y1P8k1ATeJguVngy9Q3cmbD","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DX1Meug0.js","utils-B_OMIQVC.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-ChxhRPMa.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-CuKvD8Iv.js","snippetPresets-C5d7p2hp.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CfHcE8m4.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C1zZV314.js","shallow-CmQhqCJn.js","getApiPlaygroundDisplay-YRo9s1O7.js","CodeSnippet-RN1MTdfk.js","CodeSnippets-DKLPHxJA.js","Page-BAvA99GL.js","getPastedJson-bz0M41mU.js","icon-CsmhpPrv.js","MethodPill-CNGsVE77.js","DuplicateIcon-DilfU_Z2.js","createIcon-BdsYzQck.js","DynamicMarkdown-CbqEDjbV.js","SectionHeading-O6hXpFCN.js","axios-vUo_bRtp.js","Markdown-nKm-uidQ.js","clsx-ClVdStUn.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CIQkMg3R.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-ImrFS4Fy.js"]}