{
"detail": "Invalid request parameters",
"error_code": "VALIDATION_ERROR",
"errors": [
{
"field": "amount",
"message": "Amount must be a positive decimal string",
"type": "value_error"
}
]
}
{
"detail": "Invalid API key",
"error_code": "UNAUTHORIZED"
}
{
"detail": "API key does not have permission for this operation",
"error_code": "FORBIDDEN"
}
{
"detail": "Resource not found",
"error_code": "NOT_FOUND"
}
{
"detail": "Validation failed for one or more fields",
"error_code": "VALIDATION_ERROR",
"doc_url": "https://docs.bachs.io/api-reference/error-reference#general",
"errors": [
{
"field": "name",
"message": "This field is required",
"type": "missing"
}
]
}
{
"detail": "Rate limit exceeded. Please retry after a few seconds.",
"error_code": "TOO_MANY_REQUESTS"
}
Persons
Update a person
Edit one person in place. Keys you omit are left alone; sending a key as null clears it.
{
"detail": "Invalid request parameters",
"error_code": "VALIDATION_ERROR",
"errors": [
{
"field": "amount",
"message": "Amount must be a positive decimal string",
"type": "value_error"
}
]
}
{
"detail": "Invalid API key",
"error_code": "UNAUTHORIZED"
}
{
"detail": "API key does not have permission for this operation",
"error_code": "FORBIDDEN"
}
{
"detail": "Resource not found",
"error_code": "NOT_FOUND"
}
{
"detail": "Validation failed for one or more fields",
"error_code": "VALIDATION_ERROR",
"doc_url": "https://docs.bachs.io/api-reference/error-reference#general",
"errors": [
{
"field": "name",
"message": "This field is required",
"type": "missing"
}
]
}
{
"detail": "Rate limit exceeded. Please retry after a few seconds.",
"error_code": "TOO_MANY_REQUESTS"
}
Authorizations
Authorization
string
header
required
Bearer token authentication. Pass your API key as Authorization: Bearer sk_.... See Authentication for keys, scopes, and sandbox vs production.
Scopes
connected_accounts:write
Path Parameters
account_id
string
required
The account to act on. It must be one of your own accounts; any other ID returns 404.
person_id
string
required
The person on that account.
Body
application/json
On edit, omitted keys are left alone and an explicit null clears the field. Naming one relationship flag leaves the others as they were.
first_name
string
The person's given name as it appears on their government ID, since a mismatch against the document is the most common reason identity verification is rejected. On an update, omitting this key leaves the stored value alone and sending it as null clears it.
Example:
"Ada"
last_name
string
The person's family name as it appears on their government ID, checked against the document alongside first_name. On an update, omitting this key leaves the stored value alone and sending it as null clears it.
Example:
"Obi"
dob
string
ISO-8601 date, YYYY-MM-DD.
address
object
The person's residential address, as an object with line1, city, state and country (two-letter ISO 3166-1), plus an optional postal_code. It is written whole rather than merged, so send every key you want kept; on an update, omitting this key leaves the stored address alone and sending it as null clears it.
phone
string
A contact number for this person, kept with their identity record and passed on when their identity is checked, 32 characters or fewer. On an update, omitting this key leaves the stored value alone and sending it as null clears it.
Example:
"+2348012345678"
email
string<email>
This person's own email address, separate from the account's contact_email, and used for correspondence about their verification rather than the account's. It must be a valid address or the request fails with 422; on an update, omitting this key leaves the stored value alone and sending it as null clears it.
Example:
"ada@example.com"
id_number
string
The person's government ID number. It is write-only: it is never echoed back, and the response reports id_number_provided instead. On an update, omitting this key leaves the stored number alone and sending it as null clears it.
Example:
"22345678901"
relationship
object
Role flags. One person is commonly several of these at once, which is why they are flags on one person rather than separate collections.
Show child attributes
id_numbers
object[]
Every identifier the person holds, in one list. Add a BVN, NIN or tax ID as another entry. See The persons shape.
Show child attributes
Response
The updated person.
id
string
The person's identifier, prefixed per_. Requirement keys are anchored to it, so persons.per_3a91c0d7.id_document names exactly who owes a document.
Example:
"per_3a91c0d7"
first_name
string | null
The person's given name as recorded, or null when it has not been supplied yet. It is the name their identity document is checked against.
Example:
"Ada"
last_name
string | null
The person's family name as recorded, or null when it has not been supplied yet. It is checked against the identity document alongside first_name.
Example:
"Obi"
dob
string | null
ISO-8601 date, YYYY-MM-DD.
Example:
"1990-04-12"
address
object | null
The person's residential address, carrying the line1, city, state, postal_code and country keys that were written, or null when no address has been supplied. It is stored whole, so a later write replaces it rather than merging into it.
phone
string | null
The contact number recorded for this person, returned exactly as it was sent, or null when none has been supplied.
Example:
"+2348012345678"
email
string | null
The email address recorded for this person, or null when none has been supplied. It belongs to the person, not to the account, so it differs from the account's contact_email.
Example:
"ada@example.com"
id_number_provided
boolean
true when a government ID number is held for this person, false when none has been supplied. The number itself is write-only and never returned, so this flag is how you tell whether you still need to collect one.
Example:
true
relationship
object
Role flags. One person is commonly several of these at once, which is why they are flags on one person rather than separate collections.
Show child attributes
verification
object
What has been established about this person. How it was established is not reported.
Show child attributes
created_at
string<date-time>
When the person was added to the account, ISO 8601 in UTC.
Example:
"2026-08-10T09:31:12.000Z"
updated_at
string<date-time>
When the person record last changed, ISO 8601 in UTC. A verification outcome we record moves it as well as your own writes, so do not read it as the time of your last edit.
Example:
"2026-08-11T14:05:40.219Z"
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Bachs","description":"Payments and billing infrastructure for internet businesses. Accept payments globally through hosted or overlay checkout, run subscriptions and free trials, and settle in your currency. REST API with a full sandbox.","colors":{"primary":"#5266eb","light":"#8fb6fb","dark":"#5266eb"},"logo":{"light":"https://mintcdn.com/bachs/8QOZkInmSDP5Ad7N/logo.png?fit=max\u0026auto=format\u0026n=8QOZkInmSDP5Ad7N\u0026q=85\u0026s=9d4369b7a7ceeb9d196f647822f4ea01","dark":"https://mintcdn.com/bachs/8QOZkInmSDP5Ad7N/logo-dark.png?fit=max\u0026auto=format\u0026n=8QOZkInmSDP5Ad7N\u0026q=85\u0026s=a6ad42659c02e7126806019cafab7bae"},"favicon":"https://mintcdn.com/bachs/OmvT4wSHNg_ay0Sy/favicon.png?fit=max\u0026auto=format\u0026n=OmvT4wSHNg_ay0Sy\u0026q=85\u0026s=fa1681d092d772a654316ae4012045fb","api":{"openapi":"docs/openapi/openapi.json","playground":{"display":"interactive"},"examples":{"defaults":"all","languages":["bash","javascript","python","go"],"prefill":true,"autogenerate":true}},"appearance":{"default":"dark","strict":false},"background":{"color":{"light":"#fbfcfd","dark":"#1e1e2a"}},"navbar":{"links":[{"href":"https://cal.com/bolu-dada/bachs","label":"Book a Demo"}],"primary":{"type":"button","label":"Get Started","href":"https://app.bachs.io/signup"}},"footer":{"socials":{"x":"https://x.com/bachs_hq","website":"https://bachs.io"},"links":[{"header":"Bachs","items":[{"label":"Dashboard","href":"https://app.bachs.io"},{"label":"llms.txt","href":"https://docs.bachs.io/llms.txt"},{"label":"Support","href":"mailto:support@bachs.io"}]}]},"seo":{"metatags":{"google-site-verification":"xCFt-c27YambrzzvRTU4CiqeElNFKGVJZw_8o9IgpdA"}},"fonts":{"heading":{"family":"Geist","weight":600},"body":{"family":"Geist"}},"styling":{"codeblocks":"dark","latex":true},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"variables":{"api-url":"https://api.bachs.io"},"markdown":{"instructions":["Money is always a decimal string at the currency's precision (for example \"29.00\"), paired with an ISO 4217 currency field. Never use minor units.","Build against the sandbox first: base URL https://sandbox-api.bachs.io with sk_sandbox_ keys. Production is https://api.bachs.io with sk_live_ keys; going live is a key swap.","Treat webhooks (for example collection.succeeded) as the source of truth for fulfilment, never client-side events or redirects.","Subscriptions are created by completing a checkout for a recurring product. There is no direct create-subscription endpoint.","IDs carry resource prefixes (cust_, prod_, sub_, chk_, inv_, ref_) and timestamps are ISO 8601 UTC."]},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"bachs","hasAudioNarration":false,"actualSubdomain":"bachs","customDomains":["docs.bachs.io"],"gitSource":{"type":"github","owner":"bachsdev","repo":"bachs-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"entitlements":{},"buildId":"6af7a15776407ecc270c8b4c","clientVersion":"0.0.4143","searchFilterCounts":[{"language":"default","tag":"API reference","count":98},{"language":"default","tag":"Developers","count":60},{"language":"default","tag":"Webhooks","count":46},{"language":"default","tag":"Connect (Sub accounts)","count":37},{"language":"default","tag":"Get started","count":31},{"language":"default","tag":"Events","count":29},{"language":"default","tag":"Payments","count":26},{"language":"default","tag":"Payouts","count":16},{"language":"default","tag":"Subscriptions","count":14},{"language":"default","tag":"Endpoint API","count":14}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":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":"custom-rbac-roles","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":"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":"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":"editor-metadata","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},{"name":"live-agents","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}],"googleFontsInlined":true},"customCss":[{"filePath":"style.css","content":"@import url(\"https://fonts.googleapis.com/css2?family=Geist+Mono:wght@400;500;600\u0026display=swap\");@font-face{font-family:\"Geist Pixel\";src:url(\"/fonts/GeistPixel-Square.woff2\") format(\"woff2\");font-weight:400;font-display:swap}code,pre,kbd,samp,.font-mono{font-family:\"Geist Mono\", ui-monospace, Consolas, monospace}.pixel{font-family:\"Geist Pixel\", \"Geist Mono\", monospace;font-weight:400;letter-spacing:0.01em}#navbar img{height:24px;width:auto}.section-cover{border-radius:1rem;width:100%;max-width:600px;height:auto;display:block}.home-hero{background:#5266eb url(\"/images/home/pixels.svg\") center / cover no-repeat;color:#fff;border-radius:1.5rem}.home-hero h1,.home-hero p{color:#fff}.home-btn{display:inline-block;background:#1e1e2a;color:#fff!important;font-weight:600;border-radius:0.6rem;padding:0.8rem 1.3rem;text-decoration:none!important}.home-btn:hover{background:#0b1a6e}.home-btn-ghost{background:rgba(255, 255, 255, 0.14);border:1px solid rgba(255, 255, 255, 0.4)}.home-btn-ghost:hover{background:rgba(255, 255, 255, 0.24)}body:has(.home) #header{display:none}.home{max-width:1160px;margin:0 auto;padding:1.5rem 1.5rem 5rem}.home>h2{margin:3.5rem 0 1.25rem;font-size:1.75rem;font-weight:600;letter-spacing:-0.01em;color:#1e1e2a}.dark .home>h2{color:#f4f5f9}.home{overflow-x:clip}.home-hero{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;padding:3.5rem 3rem;overflow:hidden}.home-eyebrow{font-family:\"Geist Mono\", monospace;font-size:0.8rem;letter-spacing:0.12em;text-transform:uppercase;opacity:0.8;margin:0 0 1rem}.home-hero h1{font-size:3rem;line-height:1.08;font-weight:600;letter-spacing:-0.02em;margin:0 0 1.25rem}.home-hero h1 .pixel{font-size:0.92em}.home-copy>p:not(.home-eyebrow){font-size:1.125rem;line-height:1.6;opacity:0.92;margin:0 0 1.75rem;max-width:34rem}.home-actions{display:flex;gap:0.75rem;flex-wrap:wrap}.home-collage{position:relative;height:400px}.shot{position:absolute;border-radius:12px;box-shadow:0 24px 60px rgba(11, 26, 110, 0.45);background:#fff center / cover no-repeat}.shot-checkout{right:0;bottom:0;width:80%;aspect-ratio:1200 / 788;background-image:url(\"/images/home/hero-checkout.webp\")}.shot-event{right:-3%;top:0;width:34%;aspect-ratio:620 / 941;opacity:0.78;background-image:url(\"/images/home/hero-event.webp\")}.shot-balance{left:0;top:5%;width:44%;aspect-ratio:900 / 725;opacity:0.78;background-image:url(\"/images/home/hero-balance.webp\")}@media (min-width: 1280px){body:not(:has(.home)) #content-container{max-width:1080px}}.shot-row{display:grid;grid-template-columns:1fr 1.5fr;gap:2.5rem;align-items:center}.shot-row>div>:first-child{margin-top:0}.mdx-content img[src*=\"images/product/\"]{max-width:820px;margin-left:auto;margin-right:auto}.shot-row img{margin:0;width:100%;height:auto!important;aspect-ratio:auto!important}.shot-row [data-as=\"p\"],.build [data-as=\"p\"]{display:block;margin:0 0 1rem}.card.rounded-2xl{border-radius:0.6rem}.card .px-6.py-5{padding:1rem 1.25rem}.card h2.not-prose{color:#5266eb;font-weight:500;font-size:0.95rem}.dark .card h2.not-prose{color:#8f9cf7}.card .prose{font-size:0.875rem;line-height:1.45}@media (max-width: 760px){.shot-row{grid-template-columns:minmax(0, 1fr)}}.home-tasks,.home-products{display:grid;grid-template-columns:repeat(4, 1fr);gap:2rem}.home-tasks{margin-top:3rem}.home-tasks h3,.home-products h3{font-size:0.95rem;font-weight:600;margin:0 0 0.75rem;color:#1e1e2a}.dark .home-tasks h3,.dark .home-products h3{color:#f4f5f9}.home-tasks a{display:block;margin:0 0 0.55rem;color:#5266eb;font-weight:500;text-decoration:none}.dark .home-tasks a{color:#8f9cf7}.home-products a{display:block;margin:0 0 1rem;text-decoration:none}.home-products strong{display:block;font-weight:600;color:#5266eb}.dark .home-products strong{color:#8f9cf7}.home-products span{display:block;font-size:0.9rem;line-height:1.45;color:#62647b}.dark .home-products span{color:#b4b8cc}.home-tasks a:hover,.home-products a:hover strong{text-decoration:underline}.build{display:grid;grid-template-columns:1fr 1.5fr;gap:2rem;align-items:start;border:1px solid rgba(112, 115, 147, 0.2);border-radius:1.25rem;padding:1.75rem;background:#f4f5f9}.dark .build{background:rgba(255, 255, 255, 0.03);border-color:rgba(255, 255, 255, 0.1)}.build h3{margin:0 0 0.75rem;font-size:1.25rem}.build>div:first-child p{color:#62647b}.dark .build>div:first-child p{color:#b4b8cc}.build>div:first-child p a{color:#5266eb;font-weight:600}.build .code-group,.build .code-block{margin:0!important}@media (max-width: 760px){.home-hero,.build{grid-template-columns:1fr}.home-tasks,.home-products{grid-template-columns:1fr 1fr}.home-hero{padding:2rem 1.5rem}.home-hero h1{font-size:2.1rem}.home{padding:0.5rem 1rem 4rem}.home-collage{height:auto}.shot-balance,.shot-event{display:none}.shot-checkout{position:relative;width:100%}}.project-modal-overlay{display:none}.project-modal-overlay:target{display:flex;position:fixed;top:var(--scroll-mt, 6rem);right:0;bottom:0;left:0;align-items:center;justify-content:center;z-index:999;padding:24px;pointer-events:none}.project-modal-box{width:100%;max-width:560px;max-height:100%;overflow-y:auto;border-radius:1rem;padding:2rem 1.5rem 1.5rem;position:relative;box-shadow:0 20px 50px rgba(0, 0, 0, 0.25);pointer-events:auto;scrollbar-width:thin;scrollbar-color:rgba(0, 0, 0, 0.25) transparent}.dark .project-modal-box{box-shadow:0 20px 50px rgba(0, 0, 0, 0.5);scrollbar-color:rgba(255, 255, 255, 0.25) transparent}.project-modal-box::-webkit-scrollbar{width:8px}.project-modal-box::-webkit-scrollbar-track{background:transparent}.project-modal-box::-webkit-scrollbar-thumb{background:rgba(0, 0, 0, 0.2);border-radius:9999px}.dark .project-modal-box::-webkit-scrollbar-thumb{background:rgba(255, 255, 255, 0.2)}.project-modal-close{position:absolute;top:0.75rem;right:0.75rem;width:1.75rem;height:1.75rem;display:flex;align-items:center;justify-content:center;border-radius:9999px;font-size:1.25rem;line-height:1;text-decoration:none}.project-modal-close:hover{background:rgba(128, 128, 128, 0.15)}.project-modal-box .prose{--tw-prose-body: inherit}.project-modal-box .prose>*:first-child{margin-top:0}.project-modal-box .prose>*:last-child{margin-bottom:0}"},{"filePath":"figures.css","content":"/* cyrillic-ext */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* greek-ext */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2');\n unicode-range: U+1F00-1FFF;\n}\n/* greek */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format('woff2');\n unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;\n}\n/* vietnamese */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* cyrillic-ext */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* greek-ext */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2');\n unicode-range: U+1F00-1FFF;\n}\n/* greek */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format('woff2');\n unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;\n}\n/* vietnamese */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* cyrillic-ext */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* greek-ext */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2');\n unicode-range: U+1F00-1FFF;\n}\n/* greek */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format('woff2');\n unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;\n}\n/* vietnamese */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n.pshot{--ink: #1a1a27;--body: #2f2f42;--cap: #72728c;--line: rgba(167, 167, 184, .32);--fill: #f0f0f3;--tint: #f3f3fb;--accent: #4c5fd5;--green: #188554;position:relative;padding:4px 0 28px;font:400 13.5px/1.45 Inter, system-ui, sans-serif;color:var(--body)}.pshot *{box-sizing:border-box;margin:0}.pshot b{font-weight:600;color:var(--ink)}.pshot .card{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.pshot .float{position:absolute;z-index:1;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 22px 44px -16px rgba(15, 18, 40, .38), 0 2px 6px rgba(15, 18, 40, .08)}.pshot .pad{padding:18px 20px}.pshot .h{font-size:17px;font-weight:600;color:var(--ink);letter-spacing:-.01em}.pshot .cap{color:var(--cap);font-size:12.5px}.pshot .row{display:flex;align-items:center;justify-content:space-between;gap:12px}.pshot .btn{display:inline-block;padding:8px 18px;border-radius:999px;background:var(--accent);color:#fff;font-weight:500}.pshot .btn.off{background:#b9c1f6}.pshot .chip{display:inline-block;padding:2px 9px;border-radius:999px;background:var(--fill);font-size:12px;font-weight:500}.pshot .tag{display:inline-block;padding:1px 7px;border-radius:5px;background:var(--accent);color:#fff;font-size:10.5px;font-weight:600;letter-spacing:.05em}.pshot .win-bar{display:flex;align-items:center;gap:6px;padding:9px 12px;border-bottom:1px solid var(--line);background:#fafafc}.pshot .win-bar i{width:8px;height:8px;border-radius:50%;background:#dcdde6}.pshot .win-url{margin:0 auto;padding:2px 40px;border-radius:6px;background:var(--fill);font-size:11px;color:var(--cap)}.pshot .split2{display:grid;grid-template-columns:1fr 1.15fr}.pshot .summary{background:var(--tint);padding:22px 20px 26px}.pshot .price{font-size:26px;font-weight:600;color:var(--ink);letter-spacing:-.02em;margin-top:2px}.pshot .picker{display:inline-flex;align-items:center;gap:6px;margin-top:14px;padding:6px 10px;border:1px solid var(--line);border-radius:9px;background:#fff;font-weight:500;color:var(--ink)}.pshot .totals{margin-top:18px;border-top:1px solid var(--line)}.pshot .totals .row{padding:9px 0;border-bottom:1px solid var(--line)}.pshot .methods{padding:18px 18px 20px}.pshot .expires{display:table;margin:0 0 12px auto;padding:3px 10px;border-radius:999px;background:#fff4e5;color:#a8640b;font-size:12px;font-weight:500}.pshot .mlist{border:1px solid var(--line);border-radius:12px;overflow:hidden}.pshot .m{display:flex;align-items:center;gap:10px;padding:11px 12px;border-top:1px solid var(--line);color:var(--ink)}.pshot .m:first-child{border-top:0}.pshot .m.on{flex-wrap:wrap;box-shadow:inset 0 0 0 1.5px var(--accent);border-radius:12px}.pshot .radio{flex:none;width:15px;height:15px;border-radius:50%;border:1.5px solid #b9b9c8}.pshot .on .radio{border:5px solid var(--accent)}.pshot .m .note{flex-basis:100%;padding:9px 11px;border:1px solid var(--line);border-radius:9px;color:var(--cap);font-size:12.5px}.pshot .m .btn{flex-basis:100%;text-align:center}.pshot .secure{margin-top:12px;text-align:center;color:var(--cap);font-size:12px}.pshot .menu{padding:5px}.pshot .menu div{display:flex;align-items:center;gap:9px;padding:6px 10px;border-radius:7px;color:var(--ink);font-weight:500}.pshot .menu .sel{background:var(--fill)}.pshot .flag{width:18px;height:12px;border-radius:2px;flex:none}.pshot .tabs{display:flex;gap:20px;margin-top:14px;border-bottom:1px solid var(--line);font-weight:500;color:#3d3f52}.pshot .tabs span{padding-bottom:9px}.pshot .tabs .sel{color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent)}.pshot .list{margin-top:14px;border:1px solid var(--line);border-radius:10px;overflow:hidden}.pshot .item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-top:1px solid var(--line)}.pshot .item:first-child{border-top:0}.pshot .item.done{background:#f7f7fb}.pshot .num{flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:12px;border:1px solid #dcdde8;color:var(--cap);background:#fff}.pshot .done .num{border-color:#8f9cf7;background:#eef0fe;color:var(--accent)}.pshot .item .grow{flex:1}.pshot .item small{display:block;color:var(--cap);font-size:12px}.pshot .ok{color:var(--green);font-weight:500;font-size:12.5px}.pshot .bar{height:4px;border-radius:4px;background:#e6e7ef;margin-top:8px}.pshot .bar i{display:block;height:100%;border-radius:4px;background:var(--accent)}.pshot .field{margin-top:12px}.pshot .input{margin-top:5px;padding:8px 11px;border:1px solid var(--line);border-radius:8px;color:var(--ink)}.pshot .group{margin-top:10px;font-size:12px;font-weight:600;color:var(--ink)}.pshot .check{display:flex;align-items:center;gap:8px;margin-top:6px}.pshot .box{flex:none;width:15px;height:15px;border-radius:4px;border:1.5px solid #c3c6dd}.pshot .box.on{border:0;background:var(--accent) url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E\") center / 13px no-repeat}.pshot .kv .row{padding:9px 0;border-top:1px solid var(--line)}.pshot .pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.pshot code{font:12px \"Geist Mono\", ui-monospace, monospace;color:var(--ink)}@media (max-width: 760px){.pshot{padding-bottom:8px!important}.pshot .card,.pshot .term,.pshot .float{width:100%!important}.pshot .float{position:static;margin-top:12px;box-shadow:none}.pshot .spacer{display:none}}[role=\"tabpanel\"]:has(.pshot){overflow:visible}.pshot .opts{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.pshot .opt{padding:6px 12px;border:1px solid var(--line);border-radius:9px}.pshot .opt.sel{border-color:transparent;box-shadow:inset 0 0 0 1.5px var(--accent);color:var(--accent);font-weight:500}.pshot .select{display:flex;justify-content:space-between;margin-top:5px;padding:8px 11px;border:1px solid var(--line);border-radius:6px;color:var(--ink)}.pshot .select::after{content:\"\\2304\";color:var(--cap)}.pshot .toggle{flex:none;width:30px;height:17px;border-radius:999px;background:#d9d9e2;position:relative}.pshot .toggle::after{content:\"\";position:absolute;left:2px;top:2px;width:13px;height:13px;border-radius:50%;background:#fff}.pshot .choice{display:flex;align-items:center;gap:10px;margin-top:8px;padding:10px 12px;border:1px solid var(--line);border-radius:10px}.pshot .choice.on{border-color:transparent;box-shadow:inset 0 0 0 1.5px var(--accent)}.pshot .choice small{display:block;color:var(--cap);font-size:12px}.pshot .center{text-align:center;margin-top:14px}.pshot .item .grow.cap{white-space:nowrap}.pshot .toggle.on{background:var(--accent)}.pshot .toggle.on::after{left:15px}.pshot .toggle.dim{opacity:.45}.pshot table{width:100%;border-collapse:collapse}.pshot th{text-align:left;font-weight:400;color:var(--cap);font-size:12px;padding:7px 10px;border-bottom:1px solid var(--line)}.pshot td{padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap}.pshot tr:last-child td{border-bottom:0}.pshot .badge{padding:2px 7px;border-radius:6px;font-size:11.5px;font-weight:500;background:#e8f6ee;color:var(--green)}.pshot .badge.red{background:#fdecec;color:#c8323c}.pshot .filters{display:flex;gap:6px;margin-top:12px}.pshot .filters span{padding:6px 10px;border:1px solid var(--line);border-radius:8px;color:var(--cap);font-size:12.5px}.pshot .grid3{display:grid;grid-template-columns:repeat(3, 1fr);gap:10px;margin-top:12px}.pshot .grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pshot .mini{border:1px solid var(--line);border-radius:10px;padding:11px 12px}.pshot .mini .t{font-size:12px;font-weight:500;color:var(--ink);text-decoration:underline dotted #b9b9c8;text-underline-offset:3px}.pshot .bars{display:flex;align-items:flex-end;gap:6px;height:74px;margin-top:10px}.pshot .bars i{flex:1;border-radius:4px 4px 0 0;background:#c9cef8}.pshot .bars i:last-child{background:var(--accent)}.pshot .dot{display:inline-block;width:9px;height:6px;border-radius:3px;margin-right:6px}.pshot .dim-page{background:#e9eaf0}.pshot .sandbox{padding:7px 14px;background:#fff7e0;color:#8a5a00;font-size:11.5px;text-align:center}.pshot .drag{color:#b4b6c6;letter-spacing:-2px;margin-right:4px}.pshot .x{margin-left:auto;color:var(--cap)}.pshot .plus{margin-left:auto;color:var(--accent);font-size:16px}.pshot .badge,.pshot code{white-space:nowrap}.pshot .badge.blue{background:#eef0fe;color:var(--accent)}.pshot .btn.red{background:#b42318}.pshot .label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--cap)}.pshot .btn,.pshot .nowrap{white-space:nowrap}.pshot .code{margin-top:6px;padding:10px 12px;border-radius:8px;background:var(--fill);font:11.5px/1.55 \"Geist Mono\", ui-monospace, monospace;color:#8a2a2a;white-space:pre;overflow:hidden}.pshot .side{padding:7px 10px;border-radius:7px;color:var(--body)}.pshot .side.on{background:var(--fill);color:var(--ink);font-weight:500}.pshot.narrow{max-width:620px}.pshot .badge.grey{background:var(--fill);color:var(--cap)}.pshot .notice{margin-top:10px;padding:10px 12px;border-radius:9px;background:#fff4e5;color:#8a5a00;font-size:12.5px}.pshot.diag{max-width:820px;margin:0 auto;padding-bottom:8px}.pshot .term{border-radius:12px;background:#16172a;color:#e9eaf5;overflow:hidden}.pshot .tbar{padding:8px 14px;font-size:12px;color:#a9acc6;background:rgba(255, 255, 255, .04)}.pshot .term pre{margin:0;padding:12px 14px;font:11.5px/1.6 \"Geist Mono\", ui-monospace, monospace;white-space:pre;color:#e9eaf5;overflow:hidden}.pshot .badge.amber{background:#fff4e5;color:#a8640b}.pshot .steps4{display:flex;gap:6px;margin-top:12px}.pshot .steps4 i{flex:1;height:3px;border-radius:2px;background:#e6e7ef}.pshot .steps4 i.on{background:var(--accent)}.pshot .fbox{margin-top:12px;padding:9px 12px;border:1px solid var(--line);border-radius:10px}.pshot .tick{width:44px;height:44px;margin:16px auto 8px;border-radius:50%;border:2px solid var(--accent);color:var(--accent);display:grid;place-items:center;font-size:20px}.pshot .tl{margin-top:12px;padding:8px 12px;border-radius:10px;background:var(--fill)}.pshot .tl div{display:flex;align-items:center;gap:10px;padding:5px 0}.pshot .tl .grow{flex:1}.pshot .tl i{width:8px;height:8px;border-radius:50%;background:#cfd0dc}.pshot .tl .d i{background:#376c47}.pshot .tl .c i{background:#fff;box-shadow:0 0 0 2px #376c47}"}],"page":{"pagePath":"api-reference/persons/update-a-person","slug":"/api-reference/persons/update-a-person","pageMetadata":{"title":"Update a person","description":"Edit one person in place. Keys you omit are left alone; sending a key as `null` clears it.","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts/{account_id}/persons/{person_id}","href":"/api-reference/persons/update-a-person","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: [\"Edit one person in place. Keys you omit are left alone; sending a key as \", _jsx(_components.code, {\n children: \"null\"\n }), \" clears it.\"]\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":"Update a person","description":"Edit one person in place. Keys you omit are left alone; sending a key as `null` clears it.","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts/{account_id}/persons/{person_id}","href":"/api-reference/persons/update-a-person","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Persons"],"summary":"Update a person","description":"Edit one person in place. Keys you omit are left alone; sending a key as `null` clears it.","operationId":"updateConnectedAccountPerson","security":["c4d7c66f-4254-4c58-bc4d-6c9f7f0d7f2e"],"parameters":["b3755fa9-242c-4501-b28c-68eee775921d","0eb374ff-e5c6-4f5c-aefe-b794360049c5"],"requestBody":"4b50f6af-3ceb-42e2-adff-25bdb98fecc2","responses":{"200":"50c6f7cf-97a5-4d7f-b1dd-cabdfb81c7eb","400":"22c5923a-82ed-458c-9440-e91acd80ef26","401":"87735fb9-1c3a-4cdb-9d74-eec9ef34d796","403":"0b8512bb-a239-4f07-8537-999aca0389ba","404":"01991259-5b30-4973-bb4c-ebe4a2848737","422":"c85919eb-736e-4aaf-b3c1-a166376223ca","429":"87f373ac-02f6-4a00-91e9-bb28cd12d51a"},"method":"post","type":"path","servers":["b6bdb0c4-2e36-4f68-8a92-7d4f6baca10a","05c29608-074a-41fe-8247-0f116f352743"],"path":"/v1/accounts/{account_id}/persons/{person_id}","baseUrlOptions":["https://api.bachs.io","https://sandbox-api.bachs.io"],"title":"Update a person","codeSamples":[],"requestExampleLanguages":["bash","javascript","python","go"],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated","prefillPlaygroundWithExample":true,"prefillPlaygroundExamples":[{"body.last_name":"Obi-Nwosu","body.phone":null,"body.relationship.director":true}]},"dependencies":{"parameters":{"b3755fa9-242c-4501-b28c-68eee775921d":{"name":"account_id","in":"path","required":true,"schema":{"type":"string","isRequired":true,"description":"The account to act on. It must be one of your own accounts; any other ID returns `404`.","uniqueKey":"","typeLabel":"string"},"description":"The account to act on. It must be one of your own accounts; any other ID returns `404`.","example":"acct_3Wq8ZfT1yHnJ5sVe"},"0eb374ff-e5c6-4f5c-aefe-b794360049c5":{"name":"person_id","in":"path","required":true,"schema":{"type":"string","isRequired":true,"description":"The person on that account.","uniqueKey":"","typeLabel":"string"},"description":"The person on that account.","example":"per_3a91c0d7"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","description":"On edit, omitted keys are left alone and an explicit `null` clears the field. Naming one relationship flag leaves the others as they were.","properties":{"first_name":{"type":"string","description":"The person's given name as it appears on their government ID, since a mismatch against the document is the most common reason identity verification is rejected. On an update, omitting this key leaves the stored value alone and sending it as `null` clears it.","example":"Ada","uniqueKey":"first_name","typeLabel":"string"},"last_name":{"type":"string","description":"The person's family name as it appears on their government ID, checked against the document alongside `first_name`. On an update, omitting this key leaves the stored value alone and sending it as `null` clears it.","example":"Obi","uniqueKey":"last_name","typeLabel":"string"},"dob":{"type":"string","description":"ISO-8601 date, `YYYY-MM-DD`.","uniqueKey":"dob","typeLabel":"string"},"address":{"type":"object","additionalProperties":true,"description":"The person's residential address, as an object with `line1`, `city`, `state` and `country` (two-letter ISO 3166-1), plus an optional `postal_code`. It is written whole rather than merged, so send every key you want kept; on an update, omitting this key leaves the stored address alone and sending it as `null` clears it.","uniqueKey":"address","typeLabel":"object"},"phone":{"type":"string","description":"A contact number for this person, kept with their identity record and passed on when their identity is checked, 32 characters or fewer. On an update, omitting this key leaves the stored value alone and sending it as `null` clears it.","example":"+2348012345678","uniqueKey":"phone","typeLabel":"string"},"email":{"type":"string","format":"email","description":"This person's own email address, separate from the account's `contact_email`, and used for correspondence about their verification rather than the account's. It must be a valid address or the request fails with `422`; on an update, omitting this key leaves the stored value alone and sending it as `null` clears it.","example":"ada@example.com","uniqueKey":"email","typeLabel":"string\u003cemail>"},"id_number":{"type":"string","description":"The person's government ID number. It is write-only: it is never echoed back, and the response reports `id_number_provided` instead. On an update, omitting this key leaves the stored number alone and sending it as `null` clears it.","example":"22345678901","uniqueKey":"id_number","typeLabel":"string"},"relationship":{"type":"object","description":"Role flags. One person is commonly several of these at once, which is why they are flags on one person rather than separate collections.","properties":{"representative":{"type":"boolean","description":"The person who controls the account and acts for it.","uniqueKey":"relationship.representative","typeLabel":"boolean"},"owner":{"type":"boolean","description":"A beneficial owner at or above the ownership threshold.","uniqueKey":"relationship.owner","typeLabel":"boolean"},"director":{"type":"boolean","description":"`true` when the person sits on the board of the company behind the account. It is independent of the other flags, so setting it does not clear `representative`, `owner` or `executive`.","example":false,"uniqueKey":"relationship.director","typeLabel":"boolean"},"executive":{"type":"boolean","description":"`true` when the person is a senior manager of the company behind the account. It is independent of the other flags, so setting it does not clear `representative`, `owner` or `director`.","example":false,"uniqueKey":"relationship.executive","typeLabel":"boolean"},"percent_ownership":{"oneOf":[{"type":"integer","description":"Percentage owned, when known.","uniqueKey":"relationship.percent_ownership.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Percentage owned, when known.","uniqueKey":"relationship.percent_ownership.oneOf.1","typeLabel":"null"}],"uniqueKey":"relationship.percent_ownership","typeLabel":"integer | null"},"title":{"oneOf":[{"type":"string","description":"The person's job title at the company behind the account, for example `Founder` or `Chief Financial Officer`, or `null` when none was given.","example":"Founder","uniqueKey":"relationship.title.oneOf.0","typeLabel":"string"},{"type":"null","description":"The person's job title at the company behind the account, for example `Founder` or `Chief Financial Officer`, or `null` when none was given.","example":"Founder","uniqueKey":"relationship.title.oneOf.1","typeLabel":"null"}],"uniqueKey":"relationship.title","typeLabel":"string | null"}},"uniqueKey":"relationship","typeLabel":"object"},"id_numbers":{"type":"array","items":{"type":"object","required":["type","value"],"properties":{"type":{"type":"string","description":"The scheme: `nin`, `bvn`, `passport`, `id_card`, `drivers_license`, `residence_permit` or `tax_id`.","example":"nin","isRequired":true,"uniqueKey":"id_numbers.items.[INDEX].type","typeLabel":"string"},"value":{"type":"string","example":"12345678901","isRequired":true,"uniqueKey":"id_numbers.items.[INDEX].value","typeLabel":"string"},"issuing_country":{"type":"string","description":"Two-letter ISO code of the country that issued it.","example":"NG","uniqueKey":"id_numbers.items.[INDEX].issuing_country","typeLabel":"string"}},"uniqueKey":"id_numbers.items.[INDEX]","typeLabel":"object"},"description":"Every identifier the person holds, in one list. Add a BVN, NIN or tax ID as another entry. See [The `persons` shape](/connect/requirements#the-persons-shape).","uniqueKey":"id_numbers","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"example":{"last_name":"Obi-Nwosu","phone":null,"relationship":{"director":true}},"examples":{"Example":{"title":"Example","value":{"last_name":"Obi-Nwosu","phone":null,"relationship":{"director":true}}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"50c6f7cf-97a5-4d7f-b1dd-cabdfb81c7eb":{"description":"The updated person.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","example":"per_3a91c0d7","description":"The person's identifier, prefixed `per_`. Requirement keys are anchored to it, so `persons.per_3a91c0d7.id_document` names exactly who owes a document.","uniqueKey":"id","typeLabel":"string"},"first_name":{"oneOf":[{"type":"string","description":"The person's given name as recorded, or `null` when it has not been supplied yet. It is the name their identity document is checked against.","example":"Ada","uniqueKey":"first_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"The person's given name as recorded, or `null` when it has not been supplied yet. It is the name their identity document is checked against.","example":"Ada","uniqueKey":"first_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"first_name","typeLabel":"string | null"},"last_name":{"oneOf":[{"type":"string","description":"The person's family name as recorded, or `null` when it has not been supplied yet. It is checked against the identity document alongside `first_name`.","example":"Obi","uniqueKey":"last_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"The person's family name as recorded, or `null` when it has not been supplied yet. It is checked against the identity document alongside `first_name`.","example":"Obi","uniqueKey":"last_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"last_name","typeLabel":"string | null"},"dob":{"oneOf":[{"type":"string","description":"ISO-8601 date, `YYYY-MM-DD`.","example":"1990-04-12","uniqueKey":"dob.oneOf.0","typeLabel":"string"},{"type":"null","description":"ISO-8601 date, `YYYY-MM-DD`.","example":"1990-04-12","uniqueKey":"dob.oneOf.1","typeLabel":"null"}],"uniqueKey":"dob","typeLabel":"string | null"},"address":{"oneOf":[{"type":"object","additionalProperties":true,"description":"The person's residential address, carrying the `line1`, `city`, `state`, `postal_code` and `country` keys that were written, or `null` when no address has been supplied. It is stored whole, so a later write replaces it rather than merging into it.","uniqueKey":"address.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":true,"description":"The person's residential address, carrying the `line1`, `city`, `state`, `postal_code` and `country` keys that were written, or `null` when no address has been supplied. It is stored whole, so a later write replaces it rather than merging into it.","uniqueKey":"address.oneOf.1","typeLabel":"null"}],"uniqueKey":"address","typeLabel":"object | null"},"phone":{"oneOf":[{"type":"string","description":"The contact number recorded for this person, returned exactly as it was sent, or `null` when none has been supplied.","example":"+2348012345678","uniqueKey":"phone.oneOf.0","typeLabel":"string"},{"type":"null","description":"The contact number recorded for this person, returned exactly as it was sent, or `null` when none has been supplied.","example":"+2348012345678","uniqueKey":"phone.oneOf.1","typeLabel":"null"}],"uniqueKey":"phone","typeLabel":"string | null"},"email":{"oneOf":[{"type":"string","description":"The email address recorded for this person, or `null` when none has been supplied. It belongs to the person, not to the account, so it differs from the account's `contact_email`.","example":"ada@example.com","uniqueKey":"email.oneOf.0","typeLabel":"string"},{"type":"null","description":"The email address recorded for this person, or `null` when none has been supplied. It belongs to the person, not to the account, so it differs from the account's `contact_email`.","example":"ada@example.com","uniqueKey":"email.oneOf.1","typeLabel":"null"}],"uniqueKey":"email","typeLabel":"string | null"},"id_number_provided":{"type":"boolean","description":"`true` when a government ID number is held for this person, `false` when none has been supplied. The number itself is write-only and never returned, so this flag is how you tell whether you still need to collect one.","example":true,"uniqueKey":"id_number_provided","typeLabel":"boolean"},"relationship":{"type":"object","description":"Role flags. One person is commonly several of these at once, which is why they are flags on one person rather than separate collections.","properties":{"representative":{"type":"boolean","description":"The person who controls the account and acts for it.","uniqueKey":"relationship.representative","typeLabel":"boolean"},"owner":{"type":"boolean","description":"A beneficial owner at or above the ownership threshold.","uniqueKey":"relationship.owner","typeLabel":"boolean"},"director":{"type":"boolean","description":"`true` when the person sits on the board of the company behind the account. It is independent of the other flags, so setting it does not clear `representative`, `owner` or `executive`.","example":false,"uniqueKey":"relationship.director","typeLabel":"boolean"},"executive":{"type":"boolean","description":"`true` when the person is a senior manager of the company behind the account. It is independent of the other flags, so setting it does not clear `representative`, `owner` or `director`.","example":false,"uniqueKey":"relationship.executive","typeLabel":"boolean"},"percent_ownership":{"oneOf":[{"type":"integer","description":"Percentage owned, when known.","uniqueKey":"relationship.percent_ownership.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Percentage owned, when known.","uniqueKey":"relationship.percent_ownership.oneOf.1","typeLabel":"null"}],"uniqueKey":"relationship.percent_ownership","typeLabel":"integer | null"},"title":{"oneOf":[{"type":"string","description":"The person's job title at the company behind the account, for example `Founder` or `Chief Financial Officer`, or `null` when none was given.","example":"Founder","uniqueKey":"relationship.title.oneOf.0","typeLabel":"string"},{"type":"null","description":"The person's job title at the company behind the account, for example `Founder` or `Chief Financial Officer`, or `null` when none was given.","example":"Founder","uniqueKey":"relationship.title.oneOf.1","typeLabel":"null"}],"uniqueKey":"relationship.title","typeLabel":"string | null"}},"uniqueKey":"relationship","typeLabel":"object"},"verification":{"type":"object","description":"What has been established about this person. How it was established is not reported.","properties":{"status":{"type":"string","enum":["unverified","pending","verified","failed","not_required"],"description":"unverified: no decision yet. pending: a check is running. verified or failed: the decision. not_required: nothing the account asked for needs this person's identity checked, so no decision will be made.","uniqueKey":"verification.status","typeLabel":"enum\u003cstring>"},"document_provided":{"type":"boolean","description":"Whether an identity document is held.","uniqueKey":"verification.document_provided","typeLabel":"boolean"},"failure_reason":{"oneOf":[{"type":"string","description":"Written for display to the account holder.","uniqueKey":"verification.failure_reason.oneOf.0","typeLabel":"string"},{"type":"null","description":"Written for display to the account holder.","uniqueKey":"verification.failure_reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"verification.failure_reason","typeLabel":"string | null"}},"uniqueKey":"verification","typeLabel":"object"},"created_at":{"type":"string","format":"date-time","description":"When the person was added to the account, ISO 8601 in UTC.","example":"2026-08-10T09:31:12.000Z","uniqueKey":"created_at","typeLabel":"string\u003cdate-time>"},"updated_at":{"type":"string","format":"date-time","description":"When the person record last changed, ISO 8601 in UTC. A verification outcome we record moves it as well as your own writes, so do not read it as the time of your last edit.","example":"2026-08-11T14:05:40.219Z","uniqueKey":"updated_at","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"","typeLabel":"object"},"example":{"id":"per_3a91c0d7","first_name":"Ada","last_name":"Obi-Nwosu","dob":"1990-04-12","address":{"line1":"14 Balogun Street","city":"Lagos","state":"Lagos","postal_code":"101241","country":"NG"},"phone":null,"email":"ada@example.com","id_number_provided":true,"relationship":{"representative":true,"owner":true,"director":true,"executive":false,"percent_ownership":60,"title":"Founder"},"verification":{"status":"verified","document_provided":true,"failure_reason":null},"created_at":"2026-08-10T09:31:12.000Z","updated_at":"2026-08-11T16:22:03.884Z"},"examples":{"Example":{"title":"Example","value":{"id":"per_3a91c0d7","first_name":"Ada","last_name":"Obi-Nwosu","dob":"1990-04-12","address":{"line1":"14 Balogun Street","city":"Lagos","state":"Lagos","postal_code":"101241","country":"NG"},"phone":null,"email":"ada@example.com","id_number_provided":true,"relationship":{"representative":true,"owner":true,"director":true,"executive":false,"percent_ownership":60,"title":"Founder"},"verification":{"status":"verified","document_provided":true,"failure_reason":null},"created_at":"2026-08-10T09:31:12.000Z","updated_at":"2026-08-11T16:22:03.884Z"}}},"exampleType":"examples"}},"exampleType":"examples"},"22c5923a-82ed-458c-9440-e91acd80ef26":{"description":"Bad Request - Validation errors or invalid request format. Check the `details` object for field-specific validation errors. Common causes: missing required fields, invalid data types, values outside allowed ranges, or invalid formats.","content":{"application/json":{"schema":{"type":"object","description":"Standard error response format used across all API endpoints","properties":{"detail":{"type":"string","description":"Human-readable error message explaining what went wrong.","example":"Invalid request parameters","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error_code":{"type":"string","description":"Machine-readable error code. Use this to handle errors programmatically. Common codes: VALIDATION_ERROR, UNAUTHORIZED, FORBIDDEN, NOT_FOUND, CONFLICT, TOO_MANY_REQUESTS, INTERNAL_SERVER_ERROR, BAD_GATEWAY, SERVICE_UNAVAILABLE.","example":"VALIDATION_ERROR","isRequired":true,"uniqueKey":"error_code","typeLabel":"string"},"errors":{"type":"array","description":"Optional field-level details on some validation errors. Other validation responses contain only detail and error_code. Entry fields depend on the validation source.","items":{"type":"object","properties":{"field":{"type":"string","description":"The field that failed validation.","example":"amount","isRequired":true,"uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"},"message":{"type":"string","description":"Description of the validation failure.","example":"Amount must be a positive decimal string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"type":{"type":"string","description":"Error type identifier.","example":"value_error","uniqueKey":"errors.items.[INDEX].type","typeLabel":"string"},"code":{"type":"string","description":"Optional requirement-field rejection code. Some validation entries provide code instead of type.","example":"currency_not_supported","uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"}},"required":["field","message"],"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"},"doc_url":{"type":"string","description":"Optional link to documentation for this error; some errors omit it.","example":"https://docs.bachs.io/api-reference/error-reference#general","uniqueKey":"doc_url","typeLabel":"string"}},"required":["detail","error_code"],"uniqueKey":"","typeLabel":"object"},"example":{"detail":"Invalid request parameters","error_code":"VALIDATION_ERROR","errors":[{"field":"amount","message":"Amount must be a positive decimal string","type":"value_error"}]},"examples":{"Example":{"title":"Example","value":{"detail":"Invalid request parameters","error_code":"VALIDATION_ERROR","errors":[{"field":"amount","message":"Amount must be a positive decimal string","type":"value_error"}]}}},"exampleType":"examples"}},"headers":{"X-RateLimit-Limit":{"description":"Maximum number of requests allowed per minute","schema":{"type":"integer","example":100}},"X-RateLimit-Remaining":{"description":"Number of requests remaining in the current window","schema":{"type":"integer","example":95}},"X-RateLimit-Reset":{"description":"Unix timestamp when the rate limit window resets","schema":{"type":"integer","example":1706102400}}},"exampleType":"examples"},"87735fb9-1c3a-4cdb-9d74-eec9ef34d796":{"description":"Unauthorized - Invalid, missing, or expired API key. Verify your API key is correctly formatted and included in the Authorization header as `Bearer sk_sandbox_...` or `Bearer sk_live_...`. Check that your key hasn't been revoked.","content":{"application/json":{"schema":{"type":"object","description":"Standard error response format used across all API endpoints","properties":{"detail":{"type":"string","description":"Human-readable error message explaining what went wrong.","example":"Invalid request parameters","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error_code":{"type":"string","description":"Machine-readable error code. Use this to handle errors programmatically. Common codes: VALIDATION_ERROR, UNAUTHORIZED, FORBIDDEN, NOT_FOUND, CONFLICT, TOO_MANY_REQUESTS, INTERNAL_SERVER_ERROR, BAD_GATEWAY, SERVICE_UNAVAILABLE.","example":"VALIDATION_ERROR","isRequired":true,"uniqueKey":"error_code","typeLabel":"string"},"errors":{"type":"array","description":"Optional field-level details on some validation errors. Other validation responses contain only detail and error_code. Entry fields depend on the validation source.","items":{"type":"object","properties":{"field":{"type":"string","description":"The field that failed validation.","example":"amount","isRequired":true,"uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"},"message":{"type":"string","description":"Description of the validation failure.","example":"Amount must be a positive decimal string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"type":{"type":"string","description":"Error type identifier.","example":"value_error","uniqueKey":"errors.items.[INDEX].type","typeLabel":"string"},"code":{"type":"string","description":"Optional requirement-field rejection code. Some validation entries provide code instead of type.","example":"currency_not_supported","uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"}},"required":["field","message"],"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"},"doc_url":{"type":"string","description":"Optional link to documentation for this error; some errors omit it.","example":"https://docs.bachs.io/api-reference/error-reference#general","uniqueKey":"doc_url","typeLabel":"string"}},"required":["detail","error_code"],"uniqueKey":"","typeLabel":"object"},"example":{"detail":"Invalid API key","error_code":"UNAUTHORIZED"},"examples":{"Example":{"title":"Example","value":{"detail":"Invalid API key","error_code":"UNAUTHORIZED"}}},"exampleType":"examples"}},"headers":{"X-RateLimit-Limit":{"description":"Maximum number of requests allowed per minute","schema":{"type":"integer","example":100}},"X-RateLimit-Remaining":{"description":"Number of requests remaining in the current window","schema":{"type":"integer","example":95}},"X-RateLimit-Reset":{"description":"Unix timestamp when the rate limit window resets","schema":{"type":"integer","example":1706102400}}},"exampleType":"examples"},"0b8512bb-a239-4f07-8537-999aca0389ba":{"description":"Forbidden - API key does not have permission for the requested resource. Verify you're using the correct account's API key and that you're not trying to access another account's data.","content":{"application/json":{"schema":{"type":"object","description":"Standard error response format used across all API endpoints","properties":{"detail":{"type":"string","description":"Human-readable error message explaining what went wrong.","example":"Invalid request parameters","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error_code":{"type":"string","description":"Machine-readable error code. Use this to handle errors programmatically. Common codes: VALIDATION_ERROR, UNAUTHORIZED, FORBIDDEN, NOT_FOUND, CONFLICT, TOO_MANY_REQUESTS, INTERNAL_SERVER_ERROR, BAD_GATEWAY, SERVICE_UNAVAILABLE.","example":"VALIDATION_ERROR","isRequired":true,"uniqueKey":"error_code","typeLabel":"string"},"errors":{"type":"array","description":"Optional field-level details on some validation errors. Other validation responses contain only detail and error_code. Entry fields depend on the validation source.","items":{"type":"object","properties":{"field":{"type":"string","description":"The field that failed validation.","example":"amount","isRequired":true,"uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"},"message":{"type":"string","description":"Description of the validation failure.","example":"Amount must be a positive decimal string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"type":{"type":"string","description":"Error type identifier.","example":"value_error","uniqueKey":"errors.items.[INDEX].type","typeLabel":"string"},"code":{"type":"string","description":"Optional requirement-field rejection code. Some validation entries provide code instead of type.","example":"currency_not_supported","uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"}},"required":["field","message"],"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"},"doc_url":{"type":"string","description":"Optional link to documentation for this error; some errors omit it.","example":"https://docs.bachs.io/api-reference/error-reference#general","uniqueKey":"doc_url","typeLabel":"string"}},"required":["detail","error_code"],"uniqueKey":"","typeLabel":"object"},"example":{"detail":"API key does not have permission for this operation","error_code":"FORBIDDEN"},"examples":{"Example":{"title":"Example","value":{"detail":"API key does not have permission for this operation","error_code":"FORBIDDEN"}}},"exampleType":"examples"}},"headers":{"X-RateLimit-Limit":{"description":"Maximum number of requests allowed per minute","schema":{"type":"integer","example":100}},"X-RateLimit-Remaining":{"description":"Number of requests remaining in the current window","schema":{"type":"integer","example":95}},"X-RateLimit-Reset":{"description":"Unix timestamp when the rate limit window resets","schema":{"type":"integer","example":1706102400}}},"exampleType":"examples"},"01991259-5b30-4973-bb4c-ebe4a2848737":{"description":"Not Found - The requested resource does not exist. Verify the resource ID is correct and that it belongs to your account.","content":{"application/json":{"schema":{"type":"object","description":"Standard error response format used across all API endpoints","properties":{"detail":{"type":"string","description":"Human-readable error message explaining what went wrong.","example":"Invalid request parameters","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error_code":{"type":"string","description":"Machine-readable error code. Use this to handle errors programmatically. Common codes: VALIDATION_ERROR, UNAUTHORIZED, FORBIDDEN, NOT_FOUND, CONFLICT, TOO_MANY_REQUESTS, INTERNAL_SERVER_ERROR, BAD_GATEWAY, SERVICE_UNAVAILABLE.","example":"VALIDATION_ERROR","isRequired":true,"uniqueKey":"error_code","typeLabel":"string"},"errors":{"type":"array","description":"Optional field-level details on some validation errors. Other validation responses contain only detail and error_code. Entry fields depend on the validation source.","items":{"type":"object","properties":{"field":{"type":"string","description":"The field that failed validation.","example":"amount","isRequired":true,"uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"},"message":{"type":"string","description":"Description of the validation failure.","example":"Amount must be a positive decimal string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"type":{"type":"string","description":"Error type identifier.","example":"value_error","uniqueKey":"errors.items.[INDEX].type","typeLabel":"string"},"code":{"type":"string","description":"Optional requirement-field rejection code. Some validation entries provide code instead of type.","example":"currency_not_supported","uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"}},"required":["field","message"],"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"},"doc_url":{"type":"string","description":"Optional link to documentation for this error; some errors omit it.","example":"https://docs.bachs.io/api-reference/error-reference#general","uniqueKey":"doc_url","typeLabel":"string"}},"required":["detail","error_code"],"uniqueKey":"","typeLabel":"object"},"example":{"detail":"Resource not found","error_code":"NOT_FOUND"},"examples":{"Example":{"title":"Example","value":{"detail":"Resource not found","error_code":"NOT_FOUND"}}},"exampleType":"examples"}},"headers":{"X-RateLimit-Limit":{"description":"Maximum number of requests allowed per minute","schema":{"type":"integer","example":100}},"X-RateLimit-Remaining":{"description":"Number of requests remaining in the current window","schema":{"type":"integer","example":95}},"X-RateLimit-Reset":{"description":"Unix timestamp when the rate limit window resets","schema":{"type":"integer","example":1706102400}}},"exampleType":"examples"},"c85919eb-736e-4aaf-b3c1-a166376223ca":{"description":"Validation Error - one or more fields failed validation. Inspect `errors[]` for the field, the message, and the failure type, correct them, and retry.","content":{"application/json":{"schema":{"type":"object","description":"Standard error response format used across all API endpoints","properties":{"detail":{"type":"string","description":"Human-readable error message explaining what went wrong.","example":"Invalid request parameters","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error_code":{"type":"string","description":"Machine-readable error code. Use this to handle errors programmatically. Common codes: VALIDATION_ERROR, UNAUTHORIZED, FORBIDDEN, NOT_FOUND, CONFLICT, TOO_MANY_REQUESTS, INTERNAL_SERVER_ERROR, BAD_GATEWAY, SERVICE_UNAVAILABLE.","example":"VALIDATION_ERROR","isRequired":true,"uniqueKey":"error_code","typeLabel":"string"},"errors":{"type":"array","description":"Optional field-level details on some validation errors. Other validation responses contain only detail and error_code. Entry fields depend on the validation source.","items":{"type":"object","properties":{"field":{"type":"string","description":"The field that failed validation.","example":"amount","isRequired":true,"uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"},"message":{"type":"string","description":"Description of the validation failure.","example":"Amount must be a positive decimal string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"type":{"type":"string","description":"Error type identifier.","example":"value_error","uniqueKey":"errors.items.[INDEX].type","typeLabel":"string"},"code":{"type":"string","description":"Optional requirement-field rejection code. Some validation entries provide code instead of type.","example":"currency_not_supported","uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"}},"required":["field","message"],"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"},"doc_url":{"type":"string","description":"Optional link to documentation for this error; some errors omit it.","example":"https://docs.bachs.io/api-reference/error-reference#general","uniqueKey":"doc_url","typeLabel":"string"}},"required":["detail","error_code"],"uniqueKey":"","typeLabel":"object"},"example":{"detail":"Validation failed for one or more fields","error_code":"VALIDATION_ERROR","doc_url":"https://docs.bachs.io/api-reference/error-reference#general","errors":[{"field":"name","message":"This field is required","type":"missing"}]},"examples":{"Example":{"title":"Example","value":{"detail":"Validation failed for one or more fields","error_code":"VALIDATION_ERROR","doc_url":"https://docs.bachs.io/api-reference/error-reference#general","errors":[{"field":"name","message":"This field is required","type":"missing"}]}}},"exampleType":"examples"}},"headers":{"X-RateLimit-Limit":{"description":"Maximum number of requests allowed per minute","schema":{"type":"integer","example":100}},"X-RateLimit-Remaining":{"description":"Number of requests remaining in the current window","schema":{"type":"integer","example":95}},"X-RateLimit-Reset":{"description":"Unix timestamp when the rate limit window resets","schema":{"type":"integer","example":1706102400}}},"exampleType":"examples"},"87f373ac-02f6-4a00-91e9-bb28cd12d51a":{"description":"Too Many Requests - Rate limit exceeded. Standard tier allows 100 requests per minute per API key. Wait a few seconds before retrying. Check X-RateLimit-Reset header for when the window resets.","content":{"application/json":{"schema":{"type":"object","description":"Standard error response format used across all API endpoints","properties":{"detail":{"type":"string","description":"Human-readable error message explaining what went wrong.","example":"Invalid request parameters","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"error_code":{"type":"string","description":"Machine-readable error code. Use this to handle errors programmatically. Common codes: VALIDATION_ERROR, UNAUTHORIZED, FORBIDDEN, NOT_FOUND, CONFLICT, TOO_MANY_REQUESTS, INTERNAL_SERVER_ERROR, BAD_GATEWAY, SERVICE_UNAVAILABLE.","example":"VALIDATION_ERROR","isRequired":true,"uniqueKey":"error_code","typeLabel":"string"},"errors":{"type":"array","description":"Optional field-level details on some validation errors. Other validation responses contain only detail and error_code. Entry fields depend on the validation source.","items":{"type":"object","properties":{"field":{"type":"string","description":"The field that failed validation.","example":"amount","isRequired":true,"uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"},"message":{"type":"string","description":"Description of the validation failure.","example":"Amount must be a positive decimal string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"type":{"type":"string","description":"Error type identifier.","example":"value_error","uniqueKey":"errors.items.[INDEX].type","typeLabel":"string"},"code":{"type":"string","description":"Optional requirement-field rejection code. Some validation entries provide code instead of type.","example":"currency_not_supported","uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"}},"required":["field","message"],"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"},"doc_url":{"type":"string","description":"Optional link to documentation for this error; some errors omit it.","example":"https://docs.bachs.io/api-reference/error-reference#general","uniqueKey":"doc_url","typeLabel":"string"}},"required":["detail","error_code"],"uniqueKey":"","typeLabel":"object"},"example":{"detail":"Rate limit exceeded. Please retry after a few seconds.","error_code":"TOO_MANY_REQUESTS"},"examples":{"Example":{"title":"Example","value":{"detail":"Rate limit exceeded. Please retry after a few seconds.","error_code":"TOO_MANY_REQUESTS"}}},"exampleType":"examples"}},"headers":{"X-RateLimit-Limit":{"description":"Maximum number of requests allowed per minute","schema":{"type":"integer","example":100}},"X-RateLimit-Remaining":{"description":"Number of requests remaining in the current window (will be 0)","schema":{"type":"integer","example":0}},"X-RateLimit-Reset":{"description":"Unix timestamp when the rate limit window resets","schema":{"type":"integer","example":1706102400}},"Retry-After":{"description":"Number of seconds to wait before retrying","schema":{"type":"integer","example":30}}},"exampleType":"examples"}},"security":{"c4d7c66f-4254-4c58-bc4d-6c9f7f0d7f2e":{"ApiKeyAuth":{"type":"http","scheme":"bearer","bearerFormat":"API Key","description":"Bearer token authentication. Pass your API key as `Authorization: Bearer sk_...`. See [Authentication](/authentication) for keys, scopes, and sandbox vs production.","scopes":["connected_accounts:write"],"schemeName":"ApiKeyAuth"}}},"servers":{"b6bdb0c4-2e36-4f68-8a92-7d4f6baca10a":{"url":"https://api.bachs.io","description":"Production"},"05c29608-074a-41fe-8247-0f116f352743":{"url":"https://sandbox-api.bachs.io","description":"Sandbox"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","bearerFormat":"API Key","description":"Bearer token authentication. Pass your API key as `Authorization: Bearer sk_...`. See [Authentication](/authentication) for keys, scopes, and sandbox vs production.","scopes":["connected_accounts:write"],"schemeName":"ApiKeyAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer token authentication. Pass your API key as `Authorization: Bearer sk_...`. See [Authentication](/authentication) for keys, scopes, and sandbox vs production.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"ApiKeyAuth","name":"Authorization"}],"title":"ApiKeyAuth"}]},"originalFileLocation":"docs/openapi/openapi.json"},"subdomain":"bachs","siteName":"Bachs","title":"Update a person - Bachs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-12T14:06:47.580Z","originalFileLocation":"api-reference/persons/update-a-person.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=\"dark\"}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=\"Edit one person in place. Keys you omit are left alone; sending a key as null clears it.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Bachs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/bachs/G65YpENXbxC-6e23/_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/bachs/G65YpENXbxC-6e23/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/bachs/G65YpENXbxC-6e23/_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/bachs/G65YpENXbxC-6e23/_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/bachs/G65YpENXbxC-6e23/_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/bachs/G65YpENXbxC-6e23/_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/bachs/G65YpENXbxC-6e23/_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/bachs/G65YpENXbxC-6e23/_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/bachs/G65YpENXbxC-6e23/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Update a person - Bachs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Edit one person in place. Keys you omit are left alone; sending a key as null clears it.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Bachs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.bachs.io/api-reference/persons/update-a-person\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://bachs.mintlify.site/_mintlify/api/og/v2?division=Persons\u0026amp;title=Update+a+person\u0026amp;description=Edit+one+person+in+place.+Keys+you+omit+are+left+alone%3B+sending+a+key+as+%60null%60+clears+it.\u0026amp;theme=6365cd32178e755cedc188f0\u0026amp;signature=bee01c1699c56b076667b19e0452c76af81cfcd8a4c8ae44d158724bafa70e59\">\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=\"Update a person - Bachs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Edit one person in place. Keys you omit are left alone; sending a key as null clears it.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://bachs.mintlify.site/_mintlify/api/og/v2?division=Persons\u0026amp;title=Update+a+person\u0026amp;description=Edit+one+person+in+place.+Keys+you+omit+are+left+alone%3B+sending+a+key+as+%60null%60+clears+it.\u0026amp;theme=6365cd32178e755cedc188f0\u0026amp;signature=bee01c1699c56b076667b19e0452c76af81cfcd8a4c8ae44d158724bafa70e59\">\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/bachs/G65YpENXbxC-6e23/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Bachs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#5266eb\">\u003cmeta data-mint-head name=\"google-site-verification\" content=\"xCFt-c27YambrzzvRTU4CiqeElNFKGVJZw_8o9IgpdA\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.bachs.io/api-reference/persons/update-a-person\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/persons/update-a-person.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.bachs.io/#organization\",\"name\":\"Bachs\",\"url\":\"https://docs.bachs.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/bachs/8QOZkInmSDP5Ad7N/logo.png?fit=max\u0026auto=format\u0026n=8QOZkInmSDP5Ad7N\u0026q=85\u0026s=9d4369b7a7ceeb9d196f647822f4ea01\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.bachs.io#website\",\"name\":\"Bachs\",\"url\":\"https://docs.bachs.io\",\"publisher\":{\"@id\":\"https://docs.bachs.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.bachs.io/api-reference/persons/update-a-person#webpage\",\"url\":\"https://docs.bachs.io/api-reference/persons/update-a-person\",\"name\":\"Update a person\",\"description\":\"Edit one person in place. Keys you omit are left alone; sending a key as null clears it.\",\"dateModified\":\"2026-11-12T14:06:47.580Z\",\"isPartOf\":{\"@id\":\"https://docs.bachs.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.bachs.io/api-reference/persons/update-a-person#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.bachs.io/api-reference/persons/update-a-person#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Persons\",\"item\":\"https://docs.bachs.io/api-reference/persons/list-persons\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Update a person\",\"item\":\"https://docs.bachs.io/api-reference/persons/update-a-person\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.bachs.io/api-reference/persons/update-a-person#apireference\",\"headline\":\"Update a person\",\"name\":\"Update a person\",\"description\":\"Edit one person in place. Keys you omit are left alone; sending a key as null clears it.\",\"url\":\"https://docs.bachs.io/api-reference/persons/update-a-person\",\"mainEntityOfPage\":{\"@id\":\"https://docs.bachs.io/api-reference/persons/update-a-person#webpage\"},\"dateModified\":\"2026-11-12T14:06:47.580Z\",\"publisher\":{\"@id\":\"https://docs.bachs.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.bachs.io#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Bachs\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Bachs\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/persons/update-a-person.md","siteName":"Bachs","nav":{"global":null,"tabs":[{"tab":"Get started","pages":[{"title":"Get started","href":"/get-started"}]},{"tab":"Payments","pages":[{"title":"Payments","href":"/guides/payments/overview"}]},{"tab":"Billing","pages":[{"title":"Billing","href":"/guides/billing/overview"}]},{"tab":"Payouts","pages":[{"title":"Payouts","href":"/guides/payouts/overview"}]},{"tab":"Connect (Sub accounts)","pages":[{"title":"Connect (Sub accounts)","href":"/connect/overview"}]},{"tab":"Developers","pages":[{"title":"Developers","href":"/developers/overview"}]},{"tab":"API reference","groups":[{"group":"General","pages":[{"title":"Introduction","mode":"wide","href":"/api-reference/overview"},{"title":"API Standards","mode":"wide","href":"/api-reference/api-standards"},{"title":"Permissions","mode":"wide","href":"/api-reference/permissions"},{"title":"Success responses","mode":"wide","href":"/api-reference/success-responses"},{"title":"Error Reference","mode":"wide","href":"/api-reference/error-reference"},{"title":"Errors","mode":"wide","href":"/errors"},{"title":"Pagination","mode":"wide","href":"/guides/pagination"},{"title":"Idempotency","mode":"wide","href":"/guides/idempotency"}]},{"group":"Checkout Sessions","pages":[{"title":"The checkout session object","mode":"wide","href":"/api-reference/checkout-sessions/object"},{"title":"Create a checkout session","deprecated":null,"version":null,"sidebarTitle":"Create checkout session","openapi":"/docs/openapi/openapi.json post /v1/checkout-sessions","href":"/api-reference/payments/create-checkout-session"},{"title":"Retrieve a checkout session","deprecated":null,"version":null,"sidebarTitle":"Get checkout session","openapi":"/docs/openapi/openapi.json get /v1/checkout-sessions/{checkout_id}","href":"/api-reference/checkout-sessions/get-checkout-session"}]},{"group":"Connected Accounts","pages":[{"title":"Create an account","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts","href":"/api-reference/accounts/create-an-account"},{"title":"List accounts","deprecated":null,"version":null,"sidebarTitle":"List connected accounts","openapi":"/docs/openapi/openapi.json get /v1/accounts","href":"/api-reference/organizations/list-connected-accounts"},{"title":"Get an account","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/accounts/{account_id}","href":"/api-reference/accounts/get-an-account"},{"title":"Update an account","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts/{account_id}","href":"/api-reference/accounts/update-an-account"},{"title":"Create an account link","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts/{account_id}/account-links","href":"/api-reference/accounts/create-an-account-link"},{"title":"Create a login link","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts/{account_id}/login_links","href":"/api-reference/accounts/create-a-login-link"},{"title":"Send a dashboard invite","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts/{account_id}/dashboard_invite","href":"/api-reference/accounts/send-a-dashboard-invite"},{"title":"Attach a company document","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts/{account_id}/documents","href":"/api-reference/connected-accounts/attach-a-company-document"},{"title":"List capabilities","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/accounts/{account_id}/capabilities","href":"/api-reference/accounts/list-capabilities"}]},{"group":"Products","pages":[{"title":"The product object","mode":"wide","href":"/api-reference/products/object"},{"title":"Create a product","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/products","href":"/api-reference/products/create-a-product"},{"title":"Retrieve a product","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/products/{product_id}","href":"/api-reference/products/retrieve-a-product"},{"title":"Update a product","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json patch /v1/products/{product_id}","href":"/api-reference/products/update-a-product"},{"title":"List products","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/products","href":"/api-reference/products/list-products"},{"title":"Archive a product","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/products/{product_id}/archive","href":"/api-reference/products/archive-a-product"},{"title":"Unarchive a product","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/products/{product_id}/unarchive","href":"/api-reference/products/unarchive-a-product"}]},{"group":"Subscriptions","pages":[{"title":"The subscription object","mode":"wide","href":"/api-reference/subscriptions/object"},{"title":"List subscriptions","deprecated":null,"version":null,"sidebarTitle":"List subscriptions","openapi":"/docs/openapi/openapi.json get /v1/subscriptions","href":"/api-reference/subscriptions/list-subscriptions"},{"title":"Retrieve a subscription","deprecated":null,"version":null,"sidebarTitle":"Get subscription","openapi":"/docs/openapi/openapi.json get /v1/subscriptions/{subscription_id}","href":"/api-reference/subscriptions/get-subscription"},{"title":"Update a subscription","deprecated":null,"version":null,"sidebarTitle":"Update subscription","openapi":"/docs/openapi/openapi.json patch /v1/subscriptions/{subscription_id}","href":"/api-reference/subscriptions/update-subscription"},{"title":"Cancel a subscription","deprecated":null,"version":null,"sidebarTitle":"Cancel subscription","openapi":"/docs/openapi/openapi.json delete /v1/subscriptions/{subscription_id}","href":"/api-reference/subscriptions/cancel-subscription"}]},{"group":"Customers","pages":[{"title":"The customer object","mode":"wide","href":"/api-reference/customers/object"},{"title":"Create a customer","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/customers","href":"/api-reference/customers/create-a-customer"},{"title":"Retrieve a customer","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/customers/{customer_id}","href":"/api-reference/customers/retrieve-a-customer"},{"title":"Update a customer","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json patch /v1/customers/{customer_id}","href":"/api-reference/customers/update-a-customer"},{"title":"List customers","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/customers","href":"/api-reference/customers/list-customers"}]},{"group":"Customer sessions","pages":[{"title":"The customer session object","mode":"wide","href":"/api-reference/customer-sessions/object"},{"title":"Create a customer portal session","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/customers/{customer_id}/portal-sessions","href":"/api-reference/customer-sessions/create-a-customer-portal-session"}]},{"group":"Payments","pages":[{"title":"The payment object","mode":"wide","href":"/api-reference/payments/object"},{"title":"List payments","deprecated":null,"version":null,"sidebarTitle":"List payments","openapi":"/docs/openapi/openapi.json get /v1/payments","href":"/api-reference/payments/list-payments"},{"title":"Retrieve a payment","deprecated":null,"version":null,"sidebarTitle":"Get payment","openapi":"/docs/openapi/openapi.json get /v1/payments/{payment_id}","href":"/api-reference/payments/get-payment"},{"title":"Create a charge","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/charges","href":"/api-reference/payments/create-a-charge"}]},{"group":"Refunds","pages":[{"title":"The refund object","mode":"wide","href":"/api-reference/refunds/object"},{"title":"Create a refund","deprecated":null,"version":null,"sidebarTitle":"Create refund","openapi":"/docs/openapi/openapi.json post /v1/refunds","href":"/api-reference/refunds/create-refund"},{"title":"List refunds","deprecated":null,"version":null,"sidebarTitle":"List refunds","openapi":"/docs/openapi/openapi.json get /v1/refunds","href":"/api-reference/refunds/list-refunds"},{"title":"Retrieve a refund","deprecated":null,"version":null,"sidebarTitle":"Get refund","openapi":"/docs/openapi/openapi.json get /v1/refunds/{refund_id}","href":"/api-reference/refunds/get-refund"},{"title":"Retrieve a refund by charge","deprecated":null,"version":null,"sidebarTitle":"Get refund by charge","openapi":"/docs/openapi/openapi.json get /v1/refunds/by-charge/{payment_id}","href":"/api-reference/refunds/get-refund-by-charge"}]},{"group":"Disputes","pages":[{"title":"Get Dispute","deprecated":null,"version":null,"sidebarTitle":"Get dispute","openapi":"/docs/openapi/openapi.json get /v1/disputes/{dispute_id}","href":"/api-reference/disputes/get-dispute"},{"title":"List Disputes","deprecated":null,"version":null,"sidebarTitle":"List disputes","openapi":"/docs/openapi/openapi.json get /v1/disputes","href":"/api-reference/disputes/list-disputes"},{"title":"Submit Dispute","deprecated":null,"version":null,"sidebarTitle":"Submit dispute","openapi":"/docs/openapi/openapi.json post /v1/disputes/{dispute_id}/submit","href":"/api-reference/disputes/submit-dispute"},{"title":"Update Dispute Evidence","deprecated":null,"version":null,"sidebarTitle":"Update dispute evidence","openapi":"/docs/openapi/openapi.json patch /v1/disputes/{dispute_id}/evidence","href":"/api-reference/disputes/update-dispute-evidence"},{"title":"Upload Dispute Document","deprecated":null,"version":null,"sidebarTitle":"Upload dispute document","openapi":"/docs/openapi/openapi.json post /v1/disputes/uploads","href":"/api-reference/disputes/upload-dispute-document"}]},{"group":"Conversions","hidden":true,"pages":[{"title":"Create Conversion Quote","deprecated":null,"version":null,"sidebarTitle":"Create conversion quote","openapi":"/docs/openapi/openapi.json post /v1/conversions/quotes","href":"/api-reference/conversions/create-conversion-quote"},{"title":"Execute Conversion","deprecated":null,"version":null,"sidebarTitle":"Execute conversion","openapi":"/docs/openapi/openapi.json post /v1/conversions","href":"/api-reference/conversions/execute-conversion"},{"title":"Get Conversion","deprecated":null,"version":null,"sidebarTitle":"Get conversion","openapi":"/docs/openapi/openapi.json get /v1/conversions/{conversion_id}","href":"/api-reference/conversions/get-conversion"},{"title":"List Conversions","deprecated":null,"version":null,"sidebarTitle":"List conversions","openapi":"/docs/openapi/openapi.json get /v1/conversions","href":"/api-reference/conversions/list-conversions"}]},{"group":"Payouts","pages":[{"title":"The payout object","mode":"wide","href":"/api-reference/payouts/object"},{"title":"Create Payout","deprecated":null,"version":null,"sidebarTitle":"Create payout","openapi":"/docs/openapi/openapi.json post /v1/payouts","href":"/api-reference/payouts/create-payout"},{"title":"Create Payout Quote","deprecated":null,"version":null,"sidebarTitle":"Create payout quote","openapi":"/docs/openapi/openapi.json post /v1/payouts/quotes","href":"/api-reference/payouts/create-payout-quote"},{"title":"Get Payout","deprecated":null,"version":null,"sidebarTitle":"Get payout","openapi":"/docs/openapi/openapi.json get /v1/payouts/{withdrawal_id}","href":"/api-reference/payouts/get-payout"},{"title":"List Payouts","deprecated":null,"version":null,"sidebarTitle":"List payouts","openapi":"/docs/openapi/openapi.json get /v1/payouts","href":"/api-reference/payouts/list-payouts"}]},{"group":"Payout Destinations","pages":[{"title":"The payout destination object","mode":"wide","href":"/api-reference/payout-destinations/object"},{"title":"Create Payout Destination","deprecated":null,"version":null,"sidebarTitle":"Create payout destination","openapi":"/docs/openapi/openapi.json post /v1/payouts/destinations","href":"/api-reference/payouts/create-payout-destination"},{"title":"List Payout Destinations","deprecated":null,"version":null,"sidebarTitle":"List payout destinations","openapi":"/docs/openapi/openapi.json get /v1/payouts/destinations","href":"/api-reference/payouts/list-payout-destinations"},{"title":"Get Payout Destination","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/payouts/destinations/{destination_id}","href":"/api-reference/payouts/get-payout-destination"},{"title":"Update Payout Destination","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json patch /v1/payouts/destinations/{destination_id}","href":"/api-reference/payouts/update-payout-destination"},{"title":"Delete Payout Destination","deprecated":null,"version":null,"sidebarTitle":"Delete payout destination","openapi":"/docs/openapi/openapi.json delete /v1/payouts/destinations/{destination_id}","href":"/api-reference/payouts/delete-payout-destination"}]},{"group":"Balance","pages":[{"title":"The balance object","mode":"wide","href":"/api-reference/balance/object"},{"title":"Retrieve balances","deprecated":null,"version":null,"sidebarTitle":"Get balances","openapi":"/docs/openapi/openapi.json get /v1/balances","href":"/api-reference/accounts/get-balances"},{"title":"Get payout schedule","deprecated":null,"version":null,"sidebarTitle":"Get payout schedule","openapi":"/docs/openapi/openapi.json get /v1/balance_settings","href":"/api-reference/payouts/get-payout-schedule"},{"title":"Update payout schedule","deprecated":null,"version":null,"sidebarTitle":"Update payout schedule","openapi":"/docs/openapi/openapi.json post /v1/balance_settings","href":"/api-reference/payouts/update-payout-schedule"}]},{"group":"Virtual accounts","pages":[{"title":"The virtual account object","mode":"wide","href":"/api-reference/virtual-accounts/object"},{"title":"Create a virtual account","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/virtual-accounts","href":"/api-reference/virtual-accounts/create-a-virtual-account"},{"title":"Get a virtual account","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/virtual-accounts","href":"/api-reference/virtual-accounts/get-a-virtual-account"}]},{"group":"Your account","pages":[{"title":"Get your own account","deprecated":null,"version":null,"sidebarTitle":"Get my organization","openapi":"/docs/openapi/openapi.json get /v1/accounts/me","href":"/api-reference/organizations/get-my-organization"},{"title":"Get checkout settings","deprecated":null,"version":null,"sidebarTitle":"Get checkout settings","openapi":"/docs/openapi/openapi.json get /v1/accounts/checkout/settings","href":"/api-reference/organizations/get-checkout-settings"},{"title":"Update checkout settings","deprecated":null,"version":null,"sidebarTitle":"Update checkout settings","openapi":"/docs/openapi/openapi.json put /v1/accounts/checkout/settings","href":"/api-reference/organizations/update-checkout-settings"}]},{"group":"Files","pages":[{"title":"Upload a compliance file","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/files","href":"/api-reference/files/upload-a-compliance-file"}]},{"group":"Media","pages":[{"title":"Upload a file","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/utilities/uploads","href":"/api-reference/media/upload-a-file"},{"title":"Retrieve an upload","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/utilities/uploads/{upload_id}","href":"/api-reference/media/retrieve-an-upload"},{"title":"Delete an upload","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json delete /v1/utilities/uploads/{upload_id}","href":"/api-reference/media/delete-an-upload"}]},{"group":"Product Groups","hidden":true,"pages":[{"title":"Create Product Group","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/product-groups","href":"/api-reference/product-groups/create-product-group"},{"title":"List Product Groups","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/product-groups","href":"/api-reference/product-groups/list-product-groups"},{"title":"Get Product Group","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/product-groups/{group_id}","href":"/api-reference/product-groups/get-product-group"},{"title":"Update Product Group","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json patch /v1/product-groups/{group_id}","href":"/api-reference/product-groups/update-product-group"},{"title":"Delete Product Group","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json delete /v1/product-groups/{group_id}","href":"/api-reference/product-groups/delete-product-group"}]},{"group":"Misc","pages":[{"title":"List payment methods","deprecated":null,"version":null,"sidebarTitle":"List payment methods","openapi":"/docs/openapi/openapi.json get /v1/payment-methods","href":"/api-reference/payments/list-payment-methods"},{"title":"List payment rails","deprecated":null,"version":null,"sidebarTitle":"List payment rails","openapi":"/docs/openapi/openapi.json get /v1/payment-methods/rails","href":"/api-reference/payments/list-payment-rails"},{"title":"List payout supported currencies","deprecated":null,"version":null,"sidebarTitle":"List payout supported currencies","openapi":"/docs/openapi/openapi.json get /v1/currencies/payout-supported","href":"/api-reference/payments/list-payout-supported-currencies"},{"title":"List supported currencies","deprecated":null,"version":null,"sidebarTitle":"List supported currencies","openapi":"/docs/openapi/openapi.json get /v1/currencies/supported","href":"/api-reference/payments/list-supported-currencies"}]},{"group":"Transfers","pages":[{"title":"Create a transfer","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/transfers","href":"/api-reference/transfers/create-a-transfer"},{"title":"List transfers","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/transfers","href":"/api-reference/transfers/list-transfers"},{"title":"Get a transfer","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/transfers/{transfer_id}","href":"/api-reference/transfers/get-a-transfer"}]},{"group":"Persons","pages":[{"title":"List persons","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/accounts/{account_id}/persons","href":"/api-reference/persons/list-persons"},{"title":"Add a person","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts/{account_id}/persons","href":"/api-reference/persons/add-a-person"},{"title":"Read a person","description":"Read one person. Requirement keys are anchored to the person id, so `persons.per_3a91c0d7.id_document` names exactly who this is about.","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/accounts/{account_id}/persons/{person_id}","href":"/api-reference/persons/read-a-person"},{"title":"Update a person","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts/{account_id}/persons/{person_id}","href":"/api-reference/persons/update-a-person"},{"title":"Attach a document to a person","description":"Point one of a person's document slots at an already-uploaded file. Upload the file first with [`POST /v1/files`](/api-reference/files/upload-a-compliance-file), using `purpose=identity_document` and `X-Account-Id` set to this account, then reference the returned `id` here as `file`. The file must belong to the account in the URL. A file uploaded under your platform account returns `404 NOT_FOUND` with `Attachment not found`. `document` is `primary_verification` (government ID) or `secondary_verification` (address evidence); a two-sided card is two attachments, each with its own `side`. Attaching does not verify: a reviewer accepting the document is what moves the person's `verification.status` to `passed`. See [Verify an account's identity](/connect/guides/identity-verification).","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/accounts/{account_id}/persons/{person_id}/documents","href":"/api-reference/persons/attach-a-document-to-a-person"},{"title":"Remove a person","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json delete /v1/accounts/{account_id}/persons/{person_id}","href":"/api-reference/persons/remove-a-person"}]},{"group":"Platform Fees","pages":[{"title":"List platform fees","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/platform_fees","href":"/api-reference/platform-fees/list-platform-fees"},{"title":"Get a platform fee","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/platform_fees/{fee_id}","href":"/api-reference/platform-fees/get-a-platform-fee"}]},{"group":"Reference","pages":[{"title":"List banks","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/reference/banks","href":"/api-reference/reference/list-banks"},{"title":"List mobile money providers","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/reference/momo","href":"/api-reference/reference/list-mobile-money-providers"},{"title":"List business structures","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/reference/business-structures","href":"/api-reference/reference/list-business-structures"},{"title":"List product categories","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json get /v1/reference/product-categories","href":"/api-reference/reference/list-product-categories"},{"title":"Resolve a bank account","deprecated":null,"version":null,"openapi":"/docs/openapi/openapi.json post /v1/misc/bank-accounts/resolve","href":"/api-reference/misc/resolve-a-bank-account"}]}]}]},"basePath":"","title":"Update a person - Bachs","buildId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","deploymentId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DdEMm2kG.js","utils-BMo572L7.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-C-4m9KAx.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DPLK2Oq9.js","snippetPresets-BKjfJMC9.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-DTsgtCEj.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C8vmhyQM.js","shallow-r9w8LQGS.js","getApiPlaygroundDisplay-DjPI64HQ.js","CodeSnippet-C8Bvhl16.js","CodeSnippets-BtWUwcMy.js","Page-BIYvYBgk.js","getPastedJson-Dcm_3Pgl.js","icon-BXwrTpjc.js","MethodPill-CcjfVmmy.js","DuplicateIcon-BuKIbXAQ.js","createIcon-DaL9yXsO.js","DynamicMarkdown-Co5nikxh.js","SectionHeading-P4UNTsMZ.js","axios-vUo_bRtp.js","Markdown-CEfymfIH.js","clsx-Dq9TQuNi.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-D2J8knkn.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BgZ2ThuU.js"]}