Update the currently authenticated user’s profile information.
Allows users to modify their personal information including first and last name.
Only the fields provided in the request body will be updated. Omitted fields
remain unchanged. The user is automatically identified from their authentication credentials.
Context:
Only first_name and last_name can be updated via this endpoint
Password field in request body is reserved for future use (not implemented)
Email, role, status, and organization cannot be changed by users
Updates are immediate and reflected in database upon success
Full user profile returned in response with updated values
Behavior:
Extracts user_id from authenticated user context
Validates request body fields (min/max length constraints)
Queries database to verify user exists
Updates only first_name and last_name if provided
Persists changes to database with updated_at timestamp
Returns complete updated user profile
Use Cases:
User wants to correct misspelled name
User prefers different name display (nickname vs full name)
User changes last name after marriage or legal name change
Profile updates during onboarding or account setup
Internationalization of name display
Field Update Rules:
first_name: 1-100 characters if provided, unchanged if null
last_name: 1-100 characters if provided, unchanged if null
password: Not currently implemented, reserved for future use
All other fields (email, role, status): Use admin endpoints to modify
Related Endpoints:
GET /profile/me - Retrieve current user profile
PUT /admin/users/ - Admin endpoint to update any user
POST /auth/change-password - Change password (separate auth flow)
Request model for updating the authenticated user's profile information.
All fields are optional. Only provided fields will be updated,
allowing partial updates without affecting other user attributes.
Omitted fields remain unchanged in the database.
User's first name. Used for display in the UI and in email communications. Must be at least 1 character if provided. Set to null or omit to leave unchanged.
User's last name or family name. Combined with first_name for full name display. Must be at least 1 character if provided. Set to null or omit to leave unchanged.
New password for the user account. Note: Password updates are currently not implemented in the API. This field is reserved for future functionality. Password changes should be handled through the authentication service.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"SuperAI Flows","description":"Build reliable, scalable workflows that orchestrate AI models, data processing, and business logic through a simple API.","colors":{"primary":"#7443ff","light":"#9775f7","dark":"#6c40f5"},"logo":{"light":"https://mintcdn.com/superai-flows-docs/mOFmLJuUNWWCPrgW/logo/light.svg?fit=max\u0026auto=format\u0026n=mOFmLJuUNWWCPrgW\u0026q=85\u0026s=763a91d73e6886f99fbebba85459ee15","dark":"https://mintcdn.com/superai-flows-docs/mOFmLJuUNWWCPrgW/logo/dark.svg?fit=max\u0026auto=format\u0026n=mOFmLJuUNWWCPrgW\u0026q=85\u0026s=5e03ccaedeb7b9890d260cd5f28ba690","href":"https://flows.super.ai"},"favicon":"https://mintcdn.com/superai-flows-docs/mOFmLJuUNWWCPrgW/favicon.png?fit=max\u0026auto=format\u0026n=mOFmLJuUNWWCPrgW\u0026q=85\u0026s=a54a72f5610b7af45f895302bd9fec95","navbar":{"links":[{"href":"mailto:support@super.ai","label":"Support"},{"href":"https://status.super.ai","label":"Status"}],"primary":{"type":"button","label":"Dashboard","href":"https://flows.super.ai"}},"footer":{"socials":{"website":"https://super.ai","x":"https://x.com/mysuperai","linkedin":"https://www.linkedin.com/company/mysuperai"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"superai-flows-docs","hasAudioNarration":false,"actualSubdomain":"superai-flows-docs","customDomains":["docs.flows.super.ai"],"gitSource":{"type":"github","owner":"mysuperai","repo":"superai-flows-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"collectionId":"4c020797-e5c5-4927-8e18-f9ead2828ae7","liveDeploymentHistoryId":"6adb511a124faf20fe6181b8","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6adb511a124faf20fe6181b8"},"entitlements":{},"buildId":"6adb511a124faf20fe6181b8","clientVersion":"0.0.3966","searchFilterCounts":[{"language":"default","tag":"API Reference","count":159},{"language":"default","tag":"Endpoints","count":155},{"language":"default","tag":"integrations","count":37},{"language":"default","tag":"flows","count":31},{"language":"default","tag":"organizations","count":15},{"language":"default","tag":"plugins","count":11},{"language":"default","tag":"auth","count":9},{"language":"default","tag":"service-accounts","count":9},{"language":"default","tag":"flow-executions","count":8},{"language":"default","tag":"human-review-tasks","count":8}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","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":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","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":"per-site-search-delta","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":"editor-private-page-search","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":"editor-nav-generations","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":"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":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","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}],"isAtlas":false,"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/profile/update-current-user-profile","slug":"/api-reference/profile/update-current-user-profile","pageMetadata":{"title":"Update current user profile","description":"Update the currently authenticated user's profile information.\n\nAllows users to modify their personal information including first and last name.\nOnly the fields provided in the request body will be updated. Omitted fields\nremain unchanged. The user is automatically identified from their authentication credentials.\n\nContext:\n - Only first_name and last_name can be updated via this endpoint\n - Password field in request body is reserved for future use (not implemented)\n - Email, role, status, and organization cannot be changed by users\n - Updates are immediate and reflected in database upon success\n - Full user profile returned in response with updated values\n\nBehavior:\n 1. Extracts user_id from authenticated user context\n 2. Validates request body fields (min/max length constraints)\n 3. Queries database to verify user exists\n 4. Updates only first_name and last_name if provided\n 5. Persists changes to database with updated_at timestamp\n 6. Returns complete updated user profile\n\nUse Cases:\n - User wants to correct misspelled name\n - User prefers different name display (nickname vs full name)\n - User changes last name after marriage or legal name change\n - Profile updates during onboarding or account setup\n - Internationalization of name display\n\nField Update Rules:\n - first_name: 1-100 characters if provided, unchanged if null\n - last_name: 1-100 characters if provided, unchanged if null\n - password: Not currently implemented, reserved for future use\n - All other fields (email, role, status): Use admin endpoints to modify\n\nRelated Endpoints:\n - GET /profile/me - Retrieve current user profile\n - PUT /admin/users/{user_id} - Admin endpoint to update any user\n - POST /auth/change-password - Change password (separate auth flow)","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json patch /api/profile/me","href":"/api-reference/profile/update-current-user-profile","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n li: \"li\",\n ol: \"ol\",\n p: \"p\",\n ul: \"ul\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsx(_components.p, {\n children: \"Update the currently authenticated user’s profile information.\"\n }), \"\\n\", _jsx(_components.p, {\n children: \"Allows users to modify their personal information including first and last name.\\nOnly the fields provided in the request body will be updated. Omitted fields\\nremain unchanged. The user is automatically identified from their authentication credentials.\"\n }), \"\\n\", _jsx(_components.p, {\n children: \"Context:\"\n }), \"\\n\", _jsxs(_components.ul, {\n children: [\"\\n\", _jsx(_components.li, {\n children: \"Only first_name and last_name can be updated via this endpoint\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"Password field in request body is reserved for future use (not implemented)\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"Email, role, status, and organization cannot be changed by users\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"Updates are immediate and reflected in database upon success\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"Full user profile returned in response with updated values\"\n }), \"\\n\"]\n }), \"\\n\", _jsx(_components.p, {\n children: \"Behavior:\"\n }), \"\\n\", _jsxs(_components.ol, {\n children: [\"\\n\", _jsx(_components.li, {\n children: \"Extracts user_id from authenticated user context\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"Validates request body fields (min/max length constraints)\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"Queries database to verify user exists\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"Updates only first_name and last_name if provided\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"Persists changes to database with updated_at timestamp\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"Returns complete updated user profile\"\n }), \"\\n\"]\n }), \"\\n\", _jsx(_components.p, {\n children: \"Use Cases:\"\n }), \"\\n\", _jsxs(_components.ul, {\n children: [\"\\n\", _jsx(_components.li, {\n children: \"User wants to correct misspelled name\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"User prefers different name display (nickname vs full name)\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"User changes last name after marriage or legal name change\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"Profile updates during onboarding or account setup\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"Internationalization of name display\"\n }), \"\\n\"]\n }), \"\\n\", _jsx(_components.p, {\n children: \"Field Update Rules:\"\n }), \"\\n\", _jsxs(_components.ul, {\n children: [\"\\n\", _jsx(_components.li, {\n children: \"first_name: 1-100 characters if provided, unchanged if null\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"last_name: 1-100 characters if provided, unchanged if null\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"password: Not currently implemented, reserved for future use\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"All other fields (email, role, status): Use admin endpoints to modify\"\n }), \"\\n\"]\n }), \"\\n\", _jsx(_components.p, {\n children: \"Related Endpoints:\"\n }), \"\\n\", _jsxs(_components.ul, {\n children: [\"\\n\", _jsx(_components.li, {\n children: \"GET /profile/me - Retrieve current user profile\"\n }), \"\\n\", _jsxs(_components.li, {\n children: [\"PUT /admin/users/\", \" - Admin endpoint to update any user\"]\n }), \"\\n\", _jsx(_components.li, {\n children: \"POST /auth/change-password - Change password (separate auth flow)\"\n }), \"\\n\"]\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Update current user profile","description":"Update the currently authenticated user's profile information.\n\nAllows users to modify their personal information including first and last name.\nOnly the fields provided in the request body will be updated. Omitted fields\nremain unchanged. The user is automatically identified from their authentication credentials.\n\nContext:\n - Only first_name and last_name can be updated via this endpoint\n - Password field in request body is reserved for future use (not implemented)\n - Email, role, status, and organization cannot be changed by users\n - Updates are immediate and reflected in database upon success\n - Full user profile returned in response with updated values\n\nBehavior:\n 1. Extracts user_id from authenticated user context\n 2. Validates request body fields (min/max length constraints)\n 3. Queries database to verify user exists\n 4. Updates only first_name and last_name if provided\n 5. Persists changes to database with updated_at timestamp\n 6. Returns complete updated user profile\n\nUse Cases:\n - User wants to correct misspelled name\n - User prefers different name display (nickname vs full name)\n - User changes last name after marriage or legal name change\n - Profile updates during onboarding or account setup\n - Internationalization of name display\n\nField Update Rules:\n - first_name: 1-100 characters if provided, unchanged if null\n - last_name: 1-100 characters if provided, unchanged if null\n - password: Not currently implemented, reserved for future use\n - All other fields (email, role, status): Use admin endpoints to modify\n\nRelated Endpoints:\n - GET /profile/me - Retrieve current user profile\n - PUT /admin/users/{user_id} - Admin endpoint to update any user\n - POST /auth/change-password - Change password (separate auth flow)","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json patch /api/profile/me","href":"/api-reference/profile/update-current-user-profile","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"description":"Update the currently authenticated user's profile information.\n\nAllows users to modify their personal information including first and last name.\nOnly the fields provided in the request body will be updated. Omitted fields\nremain unchanged. The user is automatically identified from their authentication credentials.\n\nContext:\n - Only first_name and last_name can be updated via this endpoint\n - Password field in request body is reserved for future use (not implemented)\n - Email, role, status, and organization cannot be changed by users\n - Updates are immediate and reflected in database upon success\n - Full user profile returned in response with updated values\n\nBehavior:\n 1. Extracts user_id from authenticated user context\n 2. Validates request body fields (min/max length constraints)\n 3. Queries database to verify user exists\n 4. Updates only first_name and last_name if provided\n 5. Persists changes to database with updated_at timestamp\n 6. Returns complete updated user profile\n\nUse Cases:\n - User wants to correct misspelled name\n - User prefers different name display (nickname vs full name)\n - User changes last name after marriage or legal name change\n - Profile updates during onboarding or account setup\n - Internationalization of name display\n\nField Update Rules:\n - first_name: 1-100 characters if provided, unchanged if null\n - last_name: 1-100 characters if provided, unchanged if null\n - password: Not currently implemented, reserved for future use\n - All other fields (email, role, status): Use admin endpoints to modify\n\nRelated Endpoints:\n - GET /profile/me - Retrieve current user profile\n - PUT /admin/users/{user_id} - Admin endpoint to update any user\n - POST /auth/change-password - Change password (separate auth flow)","operationId":"update_current_user_api_profile_me_patch","requestBody":"fd806392-fb15-472f-bc20-d3d9eb6707a9","responses":{"200":"d5d94e04-4b8f-4f14-b2ce-51e2cde1c558","401":"87b64f62-53b9-42c0-940f-19f3dd2ba366","404":"9f85252c-a52e-45fd-a7b6-66dd64ff5734","422":"64445a79-801d-448b-82bc-2a528c00d4eb","500":"7dbf4720-e474-4ef1-be9f-a57279e4775d"},"security":["f5b7e644-1808-4a78-944e-c6bd65c0260a","f87ee355-e8ed-424f-96ec-eca12c9eaa84"],"summary":"Update current user profile","tags":["profile"],"method":"patch","type":"path","servers":["4d0b7ba2-10f8-42a9-8f2d-c56b9c660af5"],"path":"/api/profile/me","baseUrlOptions":["https://flows.super.ai"],"title":"Update current user profile","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"content":{"application/json":{"schema":{"description":"Request model for updating the authenticated user's profile information.\n\nAll fields are optional. Only provided fields will be updated,\nallowing partial updates without affecting other user attributes.\nOmitted fields remain unchanged in the database.","properties":{"first_name":{"oneOf":[{"type":"string","title":"First Name","description":"User's first name. Used for display in the UI and in email communications. Must be at least 1 character if provided. Set to null or omit to leave unchanged.","maxLength":100,"minLength":1,"example":"John","uniqueKey":"first_name.oneOf.0","typeLabel":"string"},{"type":"null","title":"First Name","description":"User's first name. Used for display in the UI and in email communications. Must be at least 1 character if provided. Set to null or omit to leave unchanged.","example":"John","uniqueKey":"first_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"first_name","typeLabel":"string | null"},"last_name":{"oneOf":[{"type":"string","title":"Last Name","description":"User's last name or family name. Combined with first_name for full name display. Must be at least 1 character if provided. Set to null or omit to leave unchanged.","maxLength":100,"minLength":1,"example":"Doe","uniqueKey":"last_name.oneOf.0","typeLabel":"string"},{"type":"null","title":"Last Name","description":"User's last name or family name. Combined with first_name for full name display. Must be at least 1 character if provided. Set to null or omit to leave unchanged.","example":"Doe","uniqueKey":"last_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"last_name","typeLabel":"string | null"},"password":{"oneOf":[{"type":"string","title":"Password","description":"New password for the user account. Note: Password updates are currently not implemented in the API. This field is reserved for future functionality. Password changes should be handled through the authentication service.","maxLength":128,"minLength":8,"example":"MySecureP@ssw0rd123","uniqueKey":"password.oneOf.0","typeLabel":"string"},{"type":"null","title":"Password","description":"New password for the user account. Note: Password updates are currently not implemented in the API. This field is reserved for future functionality. Password changes should be handled through the authentication service.","example":"MySecureP@ssw0rd123","uniqueKey":"password.oneOf.1","typeLabel":"null"}],"uniqueKey":"password","typeLabel":"string | null"},"settings":{"oneOf":[{"type":"object","title":"UserSettingsUpdateRequest","description":"User UI preferences to update (partial updates supported)","properties":{"data_tables":{"oneOf":[{"type":"object","title":"Data Tables","maxProperties":1000,"additionalProperties":{"oneOf":[{"type":"object","title":"DataTableLayout","properties":{"views":{"additionalProperties":{"properties":{"column_sizes":{"additionalProperties":{"type":"integer","uniqueKey":"settings.oneOf.0.data_tables.oneOf.0.additionalProperties.oneOf.0.views.additionalProperties.column_sizes.additionalProperties","typeLabel":"integer"},"maxProperties":500,"title":"Column Sizes","type":"object","uniqueKey":"settings.oneOf.0.data_tables.oneOf.0.additionalProperties.oneOf.0.views.additionalProperties.column_sizes","typeLabel":"Column Sizes · object"}},"title":"DataTableViewLayout","type":"object","uniqueKey":"settings.oneOf.0.data_tables.oneOf.0.additionalProperties.oneOf.0.views.additionalProperties","typeLabel":"DataTableViewLayout · object"},"maxProperties":200,"title":"Views","type":"object","uniqueKey":"settings.oneOf.0.data_tables.oneOf.0.additionalProperties.oneOf.0.views","typeLabel":"Views · object"}},"uniqueKey":"settings.oneOf.0.data_tables.oneOf.0.additionalProperties.oneOf.0","typeLabel":"DataTableLayout · object"},{"type":"null","uniqueKey":"settings.oneOf.0.data_tables.oneOf.0.additionalProperties.oneOf.1","typeLabel":"null"}],"uniqueKey":"settings.oneOf.0.data_tables.oneOf.0.additionalProperties","typeLabel":"DataTableLayout · object | null"},"uniqueKey":"settings.oneOf.0.data_tables.oneOf.0","typeLabel":"Data Tables · object"},{"type":"null","title":"Data Tables","uniqueKey":"settings.oneOf.0.data_tables.oneOf.1","typeLabel":"null"}],"uniqueKey":"settings.oneOf.0.data_tables","typeLabel":"Data Tables · object | null"},"default_flow_views":{"oneOf":[{"type":"object","title":"Default Flow Views","maxProperties":1000,"additionalProperties":{"oneOf":[{"type":"string","format":"uuid","uniqueKey":"settings.oneOf.0.default_flow_views.oneOf.0.additionalProperties.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"string","const":"runs","uniqueKey":"settings.oneOf.0.default_flow_views.oneOf.0.additionalProperties.oneOf.1","typeLabel":"string"},{"type":"null","uniqueKey":"settings.oneOf.0.default_flow_views.oneOf.0.additionalProperties.oneOf.2","typeLabel":"null"}],"uniqueKey":"settings.oneOf.0.default_flow_views.oneOf.0.additionalProperties","typeLabel":"string\u003cuuid> | string | null"},"uniqueKey":"settings.oneOf.0.default_flow_views.oneOf.0","typeLabel":"Default Flow Views · object"},{"type":"null","title":"Default Flow Views","uniqueKey":"settings.oneOf.0.default_flow_views.oneOf.1","typeLabel":"null"}],"uniqueKey":"settings.oneOf.0.default_flow_views","typeLabel":"Default Flow Views · object | null"},"hub_favorite_flow_ids":{"oneOf":[{"type":"array","items":{"format":"uuid","type":"string","uniqueKey":"settings.oneOf.0.hub_favorite_flow_ids.oneOf.0.items.[INDEX]","typeLabel":"string\u003cuuid>"},"title":"Hub Favorite Flow Ids","maxItems":1000,"uniqueKey":"settings.oneOf.0.hub_favorite_flow_ids.oneOf.0","typeLabel":"string\u003cuuid>[]"},{"type":"null","title":"Hub Favorite Flow Ids","uniqueKey":"settings.oneOf.0.hub_favorite_flow_ids.oneOf.1","typeLabel":"null"}],"uniqueKey":"settings.oneOf.0.hub_favorite_flow_ids","typeLabel":"string\u003cuuid>[] | null"},"hub_sort":{"oneOf":[{"type":"string","title":"Hub Sort","enum":["created_at_desc","created_at_asc","updated_at_desc","updated_at_asc","display_name_asc","display_name_desc","flow_executions_count_asc","flow_executions_count_desc","last_execution_activity_at_asc","last_execution_activity_at_desc","error_executions_count_asc","error_executions_count_desc","awaiting_hitl_executions_count_asc","awaiting_hitl_executions_count_desc","awaiting_input_executions_count_asc","awaiting_input_executions_count_desc"],"uniqueKey":"settings.oneOf.0.hub_sort.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","title":"Hub Sort","uniqueKey":"settings.oneOf.0.hub_sort.oneOf.1","typeLabel":"null"}],"uniqueKey":"settings.oneOf.0.hub_sort","typeLabel":"enum\u003cstring> | null"},"hub_tag_filters":{"oneOf":[{"type":"array","items":{"properties":{"mode":{"default":"contains_any","enum":["contains_any","contains_all","not_contains_any"],"title":"Mode","type":"string","uniqueKey":"settings.oneOf.0.hub_tag_filters.oneOf.0.items.[INDEX].mode","typeLabel":"enum\u003cstring>"},"values":{"items":{"type":"string","uniqueKey":"settings.oneOf.0.hub_tag_filters.oneOf.0.items.[INDEX].values.items.[INDEX]","typeLabel":"string"},"title":"Values","type":"array","uniqueKey":"settings.oneOf.0.hub_tag_filters.oneOf.0.items.[INDEX].values","typeLabel":"string[]"}},"title":"HubTagFilter","type":"object","uniqueKey":"settings.oneOf.0.hub_tag_filters.oneOf.0.items.[INDEX]","typeLabel":"HubTagFilter · object"},"title":"Hub Tag Filters","uniqueKey":"settings.oneOf.0.hub_tag_filters.oneOf.0","typeLabel":"HubTagFilter · object[]"},{"type":"null","title":"Hub Tag Filters","uniqueKey":"settings.oneOf.0.hub_tag_filters.oneOf.1","typeLabel":"null"}],"uniqueKey":"settings.oneOf.0.hub_tag_filters","typeLabel":"HubTagFilter · object[] | null"},"hub_view":{"oneOf":[{"type":"string","title":"HubViewPreference","enum":["cards","list"],"uniqueKey":"settings.oneOf.0.hub_view.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","uniqueKey":"settings.oneOf.0.hub_view.oneOf.1","typeLabel":"null"}],"uniqueKey":"settings.oneOf.0.hub_view","typeLabel":"enum\u003cstring> | null"},"my_work_tables":{"oneOf":[{"type":"object","title":"My Work Tables","maxProperties":1000,"additionalProperties":{"oneOf":[{"type":"object","title":"MyWorkTableLayout","properties":{"column_order":{"items":{"type":"string","uniqueKey":"settings.oneOf.0.my_work_tables.oneOf.0.additionalProperties.oneOf.0.column_order.items.[INDEX]","typeLabel":"string"},"maxItems":100,"title":"Column Order","type":"array","uniqueKey":"settings.oneOf.0.my_work_tables.oneOf.0.additionalProperties.oneOf.0.column_order","typeLabel":"string[]"},"column_sizes":{"additionalProperties":{"type":"integer","uniqueKey":"settings.oneOf.0.my_work_tables.oneOf.0.additionalProperties.oneOf.0.column_sizes.additionalProperties","typeLabel":"integer"},"maxProperties":100,"title":"Column Sizes","type":"object","uniqueKey":"settings.oneOf.0.my_work_tables.oneOf.0.additionalProperties.oneOf.0.column_sizes","typeLabel":"Column Sizes · object"},"hidden_columns":{"items":{"type":"string","uniqueKey":"settings.oneOf.0.my_work_tables.oneOf.0.additionalProperties.oneOf.0.hidden_columns.items.[INDEX]","typeLabel":"string"},"maxItems":100,"title":"Hidden Columns","type":"array","uniqueKey":"settings.oneOf.0.my_work_tables.oneOf.0.additionalProperties.oneOf.0.hidden_columns","typeLabel":"string[]"},"pinned_left":{"items":{"type":"string","uniqueKey":"settings.oneOf.0.my_work_tables.oneOf.0.additionalProperties.oneOf.0.pinned_left.items.[INDEX]","typeLabel":"string"},"maxItems":100,"title":"Pinned Left","type":"array","uniqueKey":"settings.oneOf.0.my_work_tables.oneOf.0.additionalProperties.oneOf.0.pinned_left","typeLabel":"string[]"},"pinned_right":{"items":{"type":"string","uniqueKey":"settings.oneOf.0.my_work_tables.oneOf.0.additionalProperties.oneOf.0.pinned_right.items.[INDEX]","typeLabel":"string"},"maxItems":100,"title":"Pinned Right","type":"array","uniqueKey":"settings.oneOf.0.my_work_tables.oneOf.0.additionalProperties.oneOf.0.pinned_right","typeLabel":"string[]"}},"uniqueKey":"settings.oneOf.0.my_work_tables.oneOf.0.additionalProperties.oneOf.0","typeLabel":"MyWorkTableLayout · object"},{"type":"null","uniqueKey":"settings.oneOf.0.my_work_tables.oneOf.0.additionalProperties.oneOf.1","typeLabel":"null"}],"uniqueKey":"settings.oneOf.0.my_work_tables.oneOf.0.additionalProperties","typeLabel":"MyWorkTableLayout · object | null"},"uniqueKey":"settings.oneOf.0.my_work_tables.oneOf.0","typeLabel":"My Work Tables · object"},{"type":"null","title":"My Work Tables","uniqueKey":"settings.oneOf.0.my_work_tables.oneOf.1","typeLabel":"null"}],"uniqueKey":"settings.oneOf.0.my_work_tables","typeLabel":"My Work Tables · object | null"},"runs_per_page":{"oneOf":[{"type":"integer","title":"Runs Per Page","uniqueKey":"settings.oneOf.0.runs_per_page.oneOf.0","typeLabel":"integer"},{"type":"null","title":"Runs Per Page","uniqueKey":"settings.oneOf.0.runs_per_page.oneOf.1","typeLabel":"null"}],"uniqueKey":"settings.oneOf.0.runs_per_page","typeLabel":"integer | null"},"sidebar_open":{"oneOf":[{"type":"boolean","title":"Sidebar Open","uniqueKey":"settings.oneOf.0.sidebar_open.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Sidebar Open","uniqueKey":"settings.oneOf.0.sidebar_open.oneOf.1","typeLabel":"null"}],"uniqueKey":"settings.oneOf.0.sidebar_open","typeLabel":"boolean | null"},"sidebar_tab":{"oneOf":[{"type":"string","title":"Sidebar Tab","enum":["chats","flows"],"uniqueKey":"settings.oneOf.0.sidebar_tab.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","title":"Sidebar Tab","uniqueKey":"settings.oneOf.0.sidebar_tab.oneOf.1","typeLabel":"null"}],"uniqueKey":"settings.oneOf.0.sidebar_tab","typeLabel":"enum\u003cstring> | null"},"templates_collapsed":{"oneOf":[{"type":"boolean","title":"Templates Collapsed","uniqueKey":"settings.oneOf.0.templates_collapsed.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Templates Collapsed","uniqueKey":"settings.oneOf.0.templates_collapsed.oneOf.1","typeLabel":"null"}],"uniqueKey":"settings.oneOf.0.templates_collapsed","typeLabel":"boolean | null"}},"additionalProperties":false,"uniqueKey":"settings.oneOf.0","typeLabel":"UserSettingsUpdateRequest · object"},{"type":"null","description":"User UI preferences to update (partial updates supported)","uniqueKey":"settings.oneOf.1","typeLabel":"null"}],"uniqueKey":"settings","typeLabel":"UserSettingsUpdateRequest · object | null"}},"title":"UserUpdateRequest","type":"object","uniqueKey":"","typeLabel":"UserUpdateRequest · object"},"examples":{"Example":{"title":"Example","value":{"first_name":"John","last_name":"Doe","password":"MySecureP@ssw0rd123","settings":{"data_tables":{},"default_flow_views":{},"hub_favorite_flow_ids":["3c90c3cc-0d44-4b50-8888-8dd25736052a"],"hub_tag_filters":[{"mode":"contains_any","values":["\u003cstring>"]}],"my_work_tables":{},"runs_per_page":123,"sidebar_open":true,"templates_collapsed":true}}}},"exampleType":"generated"}},"required":true,"exampleType":"generated"},"responses":{"d5d94e04-4b8f-4f14-b2ce-51e2cde1c558":{"content":{"application/json":{"schema":{"description":"User model","properties":{"email":{"title":"Email","type":"string","isRequired":true,"uniqueKey":"email","typeLabel":"string"},"first_name":{"title":"First Name","type":"string","isRequired":true,"uniqueKey":"first_name","typeLabel":"string"},"last_name":{"title":"Last Name","type":"string","isRequired":true,"uniqueKey":"last_name","typeLabel":"string"},"organization_id":{"format":"uuid","title":"Organization Id","type":"string","isRequired":true,"uniqueKey":"organization_id","typeLabel":"string\u003cuuid>"},"age_attested_at":{"oneOf":[{"type":"string","title":"Age Attested At","format":"date-time","uniqueKey":"age_attested_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","title":"Age Attested At","uniqueKey":"age_attested_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"age_attested_at","typeLabel":"string\u003cdate-time> | null"},"created_at":{"format":"date-time","title":"Created At","type":"string","uniqueKey":"created_at","typeLabel":"string\u003cdate-time>"},"deleted":{"default":false,"title":"Deleted","type":"boolean","uniqueKey":"deleted","typeLabel":"boolean"},"id":{"format":"uuid","title":"Id","type":"string","uniqueKey":"id","typeLabel":"string\u003cuuid>"},"marketing_consent_at":{"oneOf":[{"type":"string","title":"Marketing Consent At","format":"date-time","uniqueKey":"marketing_consent_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","title":"Marketing Consent At","uniqueKey":"marketing_consent_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"marketing_consent_at","typeLabel":"string\u003cdate-time> | null"},"modified_by":{"title":"Modified By","type":"string","uniqueKey":"modified_by","typeLabel":"string"},"role":{"enum":["org_admin","backoffice","app_user","worker","publisher","integration"],"title":"UserRole","type":"string","default":"app_user","uniqueKey":"role","typeLabel":"enum\u003cstring>"},"settings":{"oneOf":[{"type":"object","title":"Settings","additionalProperties":true,"uniqueKey":"settings.oneOf.0","typeLabel":"Settings · object"},{"type":"null","title":"Settings","uniqueKey":"settings.oneOf.1","typeLabel":"null"}],"uniqueKey":"settings","typeLabel":"Settings · object | null"},"status":{"enum":["pending","active","inactive"],"title":"UserStatus","type":"string","default":"pending","uniqueKey":"status","typeLabel":"enum\u003cstring>"},"updated_at":{"format":"date-time","title":"Updated At","type":"string","uniqueKey":"updated_at","typeLabel":"string\u003cdate-time>"},"user_auth_id":{"oneOf":[{"type":"string","title":"User Auth Id","format":"uuid","uniqueKey":"user_auth_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","title":"User Auth Id","uniqueKey":"user_auth_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"user_auth_id","typeLabel":"string\u003cuuid> | null"}},"required":["first_name","last_name","email","organization_id"],"title":"User","type":"object","uniqueKey":"","typeLabel":"User · object"},"examples":{"Example":{"title":"Example","value":{"email":"\u003cstring>","first_name":"\u003cstring>","last_name":"\u003cstring>","organization_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","age_attested_at":"2023-11-07T05:31:56Z","created_at":"2023-11-07T05:31:56Z","deleted":false,"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","marketing_consent_at":"2023-11-07T05:31:56Z","modified_by":"\u003cstring>","role":"app_user","settings":{},"status":"pending","updated_at":"2023-11-07T05:31:56Z","user_auth_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a"}}},"exampleType":"generated"}},"description":"User profile updated successfully with new values","exampleType":"generated"},"87b64f62-53b9-42c0-940f-19f3dd2ba366":{"content":{"application/json":{"examples":{"invalid_token":{"title":"invalid_token","value":{"error":{"code":"unauthorized","message":"Invalid authentication token"},"request_id":"01K8KACP7D2XFGHJ9KLM4NPQR8"}},"missing_token":{"title":"missing_token","value":{"error":{"code":"unauthorized","message":"Authentication required"},"request_id":"01K8KABR6S16YETA2SZPVBS9SP"}}},"schema":{"description":"Standard API error response structure.\n\nAll error responses from the API follow this format, ensuring\nconsistent error handling for API consumers.\n\nExample:\n {\n \"error\": {\n \"message\": \"Flow not found\",\n \"code\": \"not_found\"\n },\n \"request_id\": \"01K8KABR6S16YETA2SZPVBS9SP\"\n }","examples":[{"error":{"code":"not_found","message":"Resource not found"},"request_id":"01K8KABR6S16YETA2SZPVBS9SP"}],"properties":{"error":{"description":"Standard error detail structure.\n\nThis model matches the error format returned by the centralized\nexception handlers in app/api/errors/handlers.py.","properties":{"message":{"description":"Human-readable error message","title":"Message","type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"code":{"oneOf":[{"type":"string","title":"Code","description":"Machine-readable error code for programmatic handling","uniqueKey":"error.code.oneOf.0","typeLabel":"string"},{"type":"null","title":"Code","description":"Machine-readable error code for programmatic handling","uniqueKey":"error.code.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.code","typeLabel":"string | null"},"details":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"error.details.oneOf.0.items.[INDEX]","typeLabel":"string"},"title":"Details","description":"Additional error context, validation errors, or debugging information","uniqueKey":"error.details.oneOf.0","typeLabel":"string[]"},{"type":"array","items":{"additionalProperties":true,"type":"object","uniqueKey":"error.details.oneOf.1.items.[INDEX]","typeLabel":"object"},"title":"Details","description":"Additional error context, validation errors, or debugging information","uniqueKey":"error.details.oneOf.1","typeLabel":"Details · object[]"},{"type":"object","title":"Details","description":"Additional error context, validation errors, or debugging information","additionalProperties":true,"uniqueKey":"error.details.oneOf.2","typeLabel":"Details · object"},{"type":"null","title":"Details","description":"Additional error context, validation errors, or debugging information","uniqueKey":"error.details.oneOf.3","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"string[] | Details · object[] | Details · object | null"}},"required":["message"],"title":"ErrorDetail","type":"object","isRequired":true,"uniqueKey":"error","typeLabel":"ErrorDetail · object"},"request_id":{"oneOf":[{"type":"string","title":"Request Id","description":"Unique request identifier in ULID format for debugging and support. Example: 01K8KABR6S16YETA2SZPVBS9SP","uniqueKey":"request_id.oneOf.0","typeLabel":"string"},{"type":"null","title":"Request Id","description":"Unique request identifier in ULID format for debugging and support. Example: 01K8KABR6S16YETA2SZPVBS9SP","uniqueKey":"request_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"request_id","typeLabel":"string | null"}},"required":["error"],"title":"ErrorResponse","type":"object","uniqueKey":"","typeLabel":"ErrorResponse · object"},"exampleType":"examples"}},"description":"Unauthorized - Missing or invalid authentication credentials","exampleType":"examples"},"9f85252c-a52e-45fd-a7b6-66dd64ff5734":{"content":{"application/json":{"schema":{"description":"Standard API error response structure.\n\nAll error responses from the API follow this format, ensuring\nconsistent error handling for API consumers.\n\nExample:\n {\n \"error\": {\n \"message\": \"Flow not found\",\n \"code\": \"not_found\"\n },\n \"request_id\": \"01K8KABR6S16YETA2SZPVBS9SP\"\n }","examples":[{"error":{"code":"not_found","message":"Resource not found"},"request_id":"01K8KABR6S16YETA2SZPVBS9SP"}],"properties":{"error":{"description":"Standard error detail structure.\n\nThis model matches the error format returned by the centralized\nexception handlers in app/api/errors/handlers.py.","properties":{"message":{"description":"Human-readable error message","title":"Message","type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"code":{"oneOf":[{"type":"string","title":"Code","description":"Machine-readable error code for programmatic handling","uniqueKey":"error.code.oneOf.0","typeLabel":"string"},{"type":"null","title":"Code","description":"Machine-readable error code for programmatic handling","uniqueKey":"error.code.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.code","typeLabel":"string | null"},"details":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"error.details.oneOf.0.items.[INDEX]","typeLabel":"string"},"title":"Details","description":"Additional error context, validation errors, or debugging information","uniqueKey":"error.details.oneOf.0","typeLabel":"string[]"},{"type":"array","items":{"additionalProperties":true,"type":"object","uniqueKey":"error.details.oneOf.1.items.[INDEX]","typeLabel":"object"},"title":"Details","description":"Additional error context, validation errors, or debugging information","uniqueKey":"error.details.oneOf.1","typeLabel":"Details · object[]"},{"type":"object","title":"Details","description":"Additional error context, validation errors, or debugging information","additionalProperties":true,"uniqueKey":"error.details.oneOf.2","typeLabel":"Details · object"},{"type":"null","title":"Details","description":"Additional error context, validation errors, or debugging information","uniqueKey":"error.details.oneOf.3","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"string[] | Details · object[] | Details · object | null"}},"required":["message"],"title":"ErrorDetail","type":"object","isRequired":true,"uniqueKey":"error","typeLabel":"ErrorDetail · object"},"request_id":{"oneOf":[{"type":"string","title":"Request Id","description":"Unique request identifier in ULID format for debugging and support. Example: 01K8KABR6S16YETA2SZPVBS9SP","uniqueKey":"request_id.oneOf.0","typeLabel":"string"},{"type":"null","title":"Request Id","description":"Unique request identifier in ULID format for debugging and support. Example: 01K8KABR6S16YETA2SZPVBS9SP","uniqueKey":"request_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"request_id","typeLabel":"string | null"}},"required":["error"],"title":"ErrorResponse","type":"object","uniqueKey":"","typeLabel":"ErrorResponse · object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"not_found","message":"Resource not found"},"request_id":"01K8KABR6S16YETA2SZPVBS9SP"}}},"exampleType":"generated"}},"description":"User account not found in database despite valid authentication token","exampleType":"generated"},"64445a79-801d-448b-82bc-2a528c00d4eb":{"content":{"application/json":{"examples":{"type_error":{"title":"type_error","value":{"error":{"code":"validation_error","details":[{"input":"not-a-uuid","loc":["path","flow_id"],"msg":"Input should be a valid UUID","type":"uuid_parsing"}],"message":"Request validation failed"},"request_id":"01K8KACP7D2XFGHJ9KLM4NPQR8"}},"validation_error":{"title":"validation_error","value":{"error":{"code":"validation_error","details":[{"loc":["body","name"],"msg":"Field required","type":"missing"}],"message":"Request validation failed"},"request_id":"01K8KABR6S16YETA2SZPVBS9SP"}}},"schema":{"description":"Standard API error response structure.\n\nAll error responses from the API follow this format, ensuring\nconsistent error handling for API consumers.\n\nExample:\n {\n \"error\": {\n \"message\": \"Flow not found\",\n \"code\": \"not_found\"\n },\n \"request_id\": \"01K8KABR6S16YETA2SZPVBS9SP\"\n }","examples":[{"error":{"code":"not_found","message":"Resource not found"},"request_id":"01K8KABR6S16YETA2SZPVBS9SP"}],"properties":{"error":{"description":"Standard error detail structure.\n\nThis model matches the error format returned by the centralized\nexception handlers in app/api/errors/handlers.py.","properties":{"message":{"description":"Human-readable error message","title":"Message","type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"code":{"oneOf":[{"type":"string","title":"Code","description":"Machine-readable error code for programmatic handling","uniqueKey":"error.code.oneOf.0","typeLabel":"string"},{"type":"null","title":"Code","description":"Machine-readable error code for programmatic handling","uniqueKey":"error.code.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.code","typeLabel":"string | null"},"details":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"error.details.oneOf.0.items.[INDEX]","typeLabel":"string"},"title":"Details","description":"Additional error context, validation errors, or debugging information","uniqueKey":"error.details.oneOf.0","typeLabel":"string[]"},{"type":"array","items":{"additionalProperties":true,"type":"object","uniqueKey":"error.details.oneOf.1.items.[INDEX]","typeLabel":"object"},"title":"Details","description":"Additional error context, validation errors, or debugging information","uniqueKey":"error.details.oneOf.1","typeLabel":"Details · object[]"},{"type":"object","title":"Details","description":"Additional error context, validation errors, or debugging information","additionalProperties":true,"uniqueKey":"error.details.oneOf.2","typeLabel":"Details · object"},{"type":"null","title":"Details","description":"Additional error context, validation errors, or debugging information","uniqueKey":"error.details.oneOf.3","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"string[] | Details · object[] | Details · object | null"}},"required":["message"],"title":"ErrorDetail","type":"object","isRequired":true,"uniqueKey":"error","typeLabel":"ErrorDetail · object"},"request_id":{"oneOf":[{"type":"string","title":"Request Id","description":"Unique request identifier in ULID format for debugging and support. Example: 01K8KABR6S16YETA2SZPVBS9SP","uniqueKey":"request_id.oneOf.0","typeLabel":"string"},{"type":"null","title":"Request Id","description":"Unique request identifier in ULID format for debugging and support. Example: 01K8KABR6S16YETA2SZPVBS9SP","uniqueKey":"request_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"request_id","typeLabel":"string | null"}},"required":["error"],"title":"ErrorResponse","type":"object","uniqueKey":"","typeLabel":"ErrorResponse · object"},"exampleType":"examples"}},"description":"Unprocessable Entity - Request validation failed","exampleType":"examples"},"7dbf4720-e474-4ef1-be9f-a57279e4775d":{"content":{"application/json":{"examples":{"internal_error":{"title":"internal_error","value":{"error":{"code":"internal_error","message":"Internal server error"},"request_id":"01K8KABR6S16YETA2SZPVBS9SP"}},"repository_error":{"title":"repository_error","value":{"error":{"code":"repository_error","message":"Database operation failed"},"request_id":"01K8KACP7D2XFGHJ9KLM4NPQR8"}}},"schema":{"description":"Standard API error response structure.\n\nAll error responses from the API follow this format, ensuring\nconsistent error handling for API consumers.\n\nExample:\n {\n \"error\": {\n \"message\": \"Flow not found\",\n \"code\": \"not_found\"\n },\n \"request_id\": \"01K8KABR6S16YETA2SZPVBS9SP\"\n }","examples":[{"error":{"code":"not_found","message":"Resource not found"},"request_id":"01K8KABR6S16YETA2SZPVBS9SP"}],"properties":{"error":{"description":"Standard error detail structure.\n\nThis model matches the error format returned by the centralized\nexception handlers in app/api/errors/handlers.py.","properties":{"message":{"description":"Human-readable error message","title":"Message","type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"code":{"oneOf":[{"type":"string","title":"Code","description":"Machine-readable error code for programmatic handling","uniqueKey":"error.code.oneOf.0","typeLabel":"string"},{"type":"null","title":"Code","description":"Machine-readable error code for programmatic handling","uniqueKey":"error.code.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.code","typeLabel":"string | null"},"details":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"error.details.oneOf.0.items.[INDEX]","typeLabel":"string"},"title":"Details","description":"Additional error context, validation errors, or debugging information","uniqueKey":"error.details.oneOf.0","typeLabel":"string[]"},{"type":"array","items":{"additionalProperties":true,"type":"object","uniqueKey":"error.details.oneOf.1.items.[INDEX]","typeLabel":"object"},"title":"Details","description":"Additional error context, validation errors, or debugging information","uniqueKey":"error.details.oneOf.1","typeLabel":"Details · object[]"},{"type":"object","title":"Details","description":"Additional error context, validation errors, or debugging information","additionalProperties":true,"uniqueKey":"error.details.oneOf.2","typeLabel":"Details · object"},{"type":"null","title":"Details","description":"Additional error context, validation errors, or debugging information","uniqueKey":"error.details.oneOf.3","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"string[] | Details · object[] | Details · object | null"}},"required":["message"],"title":"ErrorDetail","type":"object","isRequired":true,"uniqueKey":"error","typeLabel":"ErrorDetail · object"},"request_id":{"oneOf":[{"type":"string","title":"Request Id","description":"Unique request identifier in ULID format for debugging and support. Example: 01K8KABR6S16YETA2SZPVBS9SP","uniqueKey":"request_id.oneOf.0","typeLabel":"string"},{"type":"null","title":"Request Id","description":"Unique request identifier in ULID format for debugging and support. Example: 01K8KABR6S16YETA2SZPVBS9SP","uniqueKey":"request_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"request_id","typeLabel":"string | null"}},"required":["error"],"title":"ErrorResponse","type":"object","uniqueKey":"","typeLabel":"ErrorResponse · object"},"exampleType":"examples"}},"description":"Internal Server Error - An unexpected error occurred","exampleType":"examples"}},"security":{"f5b7e644-1808-4a78-944e-c6bd65c0260a":{"BearerAuth":{"bearerFormat":"JWT","description":"JWT Bearer token authentication. Include your access token in the Authorization header as: `Bearer YOUR_ACCESS_TOKEN`\n\nExample:\n```\nAuthorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...\n```","scheme":"bearer","type":"http","scopes":[],"schemeName":"BearerAuth"}},"f87ee355-e8ed-424f-96ec-eca12c9eaa84":{"APIKeyAuth":{"description":"API key authentication. Include your API key in the X-API-Key header as: `X-API-Key YOUR_API_KEY`\n\nExample:\n```\nX-API-Key: saf_1234567890\n```","in":"header","name":"X-API-Key","type":"apiKey","scopes":[],"schemeName":"APIKeyAuth"}}},"servers":{"4d0b7ba2-10f8-42a9-8f2d-c56b9c660af5":{"description":"Production server","url":"https://flows.super.ai"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"bearerFormat":"JWT","description":"JWT Bearer token authentication. Include your access token in the Authorization header as: `Bearer YOUR_ACCESS_TOKEN`\n\nExample:\n```\nAuthorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...\n```","scheme":"bearer","type":"http","scopes":[],"schemeName":"BearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"JWT Bearer token authentication. Include your access token in the Authorization header as: `Bearer YOUR_ACCESS_TOKEN`\n\nExample:\n```\nAuthorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...\n```","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"BearerAuth","name":"Authorization"}],"title":"BearerAuth"},{"schemes":[{"scheme":{"description":"API key authentication. Include your API key in the X-API-Key header as: `X-API-Key YOUR_API_KEY`\n\nExample:\n```\nX-API-Key: saf_1234567890\n```","in":"header","name":"X-API-Key","type":"apiKey","scopes":[],"schemeName":"APIKeyAuth"},"schema":{"title":"X-API-Key","type":"string","description":"API key authentication. Include your API key in the X-API-Key header as: `X-API-Key YOUR_API_KEY`\n\nExample:\n```\nX-API-Key: saf_1234567890\n```","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"APIKeyAuth","name":"X-API-Key"}],"title":"APIKeyAuth"}]},"originalFileLocation":"openapi/superai-flows-openapi.json"},"subdomain":"superai-flows-docs","siteName":"SuperAI Flows","title":"Update current user profile - SuperAI Flows","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-23T12:20:52.516Z","originalFileLocation":"api-reference/profile/update-current-user-profile.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Update the currently authenticated user\u0026#x27;s profile information. Allows users to modify their personal information including first and last name. Only the fields provided in the request body will be updated. Omitted fields remain unchanged. The user is automatically identified from their authentication credentials. Context: - Only first_name and last_name can be updated via this endpoint - Password field in request body is reserved for future use (not implemented) - Email, role, status, and organization cannot be changed by users - Updates are immediate and reflected in database upon success - Full user profile returned in response with updated values Behavior: 1. Extracts user_id from authenticated user context 2. Validates request body fields (min/max length constraints) 3. Queries database to verify user exists 4. Updates only first_name and last_name if provided 5. Persists changes to database with updated_at timestamp 6. Returns complete updated user profile Use Cases: - User wants to correct misspelled name - User prefers different name display (nickname vs full name) - User changes last name after marriage or legal name change - Profile updates during onboarding or account setup - Internationalization of name display Field Update Rules: - first_name: 1-100 characters if provided, unchanged if null - last_name: 1-100 characters if provided, unchanged if null - password: Not currently implemented, reserved for future use - All other fields (email, role, status): Use admin endpoints to modify Related Endpoints: - GET /profile/me - Retrieve current user profile - PUT /admin/users/{user_id} - Admin endpoint to update any user - POST /auth/change-password - Change password (separate auth flow)\">\u003cmeta data-mint-head name=\"application-name\" content=\"SuperAI Flows\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/superai-flows-docs/qpT9WA2q8_qrkdpL/_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/superai-flows-docs/qpT9WA2q8_qrkdpL/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/superai-flows-docs/qpT9WA2q8_qrkdpL/_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/superai-flows-docs/qpT9WA2q8_qrkdpL/_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/superai-flows-docs/qpT9WA2q8_qrkdpL/_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/superai-flows-docs/qpT9WA2q8_qrkdpL/_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/superai-flows-docs/qpT9WA2q8_qrkdpL/_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/superai-flows-docs/qpT9WA2q8_qrkdpL/_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/superai-flows-docs/qpT9WA2q8_qrkdpL/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Update current user profile - SuperAI Flows\">\u003cmeta data-mint-head property=\"og:description\" content=\"Update the currently authenticated user\u0026#x27;s profile information. Allows users to modify their personal information including first and last name. Only the fields provided in the request body will be updated. Omitted fields remain unchanged. The user is automatically identified from their authentication credentials. Context: - Only first_name and last_name can be updated via this endpoint - Password field in request body is reserved for future use (not implemented) - Email, role, status, and organization cannot be changed by users - Updates are immediate and reflected in database upon success - Full user profile returned in response with updated values Behavior: 1. Extracts user_id from authenticated user context 2. Validates request body fields (min/max length constraints) 3. Queries database to verify user exists 4. Updates only first_name and last_name if provided 5. Persists changes to database with updated_at timestamp 6. Returns complete updated user profile Use Cases: - User wants to correct misspelled name - User prefers different name display (nickname vs full name) - User changes last name after marriage or legal name change - Profile updates during onboarding or account setup - Internationalization of name display Field Update Rules: - first_name: 1-100 characters if provided, unchanged if null - last_name: 1-100 characters if provided, unchanged if null - password: Not currently implemented, reserved for future use - All other fields (email, role, status): Use admin endpoints to modify Related Endpoints: - GET /profile/me - Retrieve current user profile - PUT /admin/users/{user_id} - Admin endpoint to update any user - POST /auth/change-password - Change password (separate auth flow)\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"SuperAI Flows\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.flows.super.ai/api-reference/profile/update-current-user-profile\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://superai-flows-docs.mintlify.app/_mintlify/api/og/v2?division=profile\u0026amp;title=Update+current+user+profile\u0026amp;description=Update+the+currently+authenticated+user%27s+profile+information.%0A%0AAllows+users+to+modify+their+personal+information+including+first+and+last+name.%0AOnly+the+fields\u0026amp;theme=ab5065c76c8574caf1b0798b\u0026amp;signature=5516673e7b4008bd564313f28d6fb30fb906ec6ad84bc24f48bba9c870494e8b\">\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 current user profile - SuperAI Flows\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Update the currently authenticated user\u0026#x27;s profile information. Allows users to modify their personal information including first and last name. Only the fields provided in the request body will be updated. Omitted fields remain unchanged. The user is automatically identified from their authentication credentials. Context: - Only first_name and last_name can be updated via this endpoint - Password field in request body is reserved for future use (not implemented) - Email, role, status, and organization cannot be changed by users - Updates are immediate and reflected in database upon success - Full user profile returned in response with updated values Behavior: 1. Extracts user_id from authenticated user context 2. Validates request body fields (min/max length constraints) 3. Queries database to verify user exists 4. Updates only first_name and last_name if provided 5. Persists changes to database with updated_at timestamp 6. Returns complete updated user profile Use Cases: - User wants to correct misspelled name - User prefers different name display (nickname vs full name) - User changes last name after marriage or legal name change - Profile updates during onboarding or account setup - Internationalization of name display Field Update Rules: - first_name: 1-100 characters if provided, unchanged if null - last_name: 1-100 characters if provided, unchanged if null - password: Not currently implemented, reserved for future use - All other fields (email, role, status): Use admin endpoints to modify Related Endpoints: - GET /profile/me - Retrieve current user profile - PUT /admin/users/{user_id} - Admin endpoint to update any user - POST /auth/change-password - Change password (separate auth flow)\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://superai-flows-docs.mintlify.app/_mintlify/api/og/v2?division=profile\u0026amp;title=Update+current+user+profile\u0026amp;description=Update+the+currently+authenticated+user%27s+profile+information.%0A%0AAllows+users+to+modify+their+personal+information+including+first+and+last+name.%0AOnly+the+fields\u0026amp;theme=ab5065c76c8574caf1b0798b\u0026amp;signature=5516673e7b4008bd564313f28d6fb30fb906ec6ad84bc24f48bba9c870494e8b\">\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/superai-flows-docs/qpT9WA2q8_qrkdpL/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"SuperAI Flows\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#7443ff\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.flows.super.ai/api-reference/profile/update-current-user-profile\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/profile/update-current-user-profile.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.flows.super.ai/#organization\",\"name\":\"SuperAI Flows\",\"url\":\"https://docs.flows.super.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/superai-flows-docs/mOFmLJuUNWWCPrgW/logo/light.svg?fit=max\u0026auto=format\u0026n=mOFmLJuUNWWCPrgW\u0026q=85\u0026s=763a91d73e6886f99fbebba85459ee15\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.flows.super.ai#website\",\"name\":\"SuperAI Flows\",\"url\":\"https://docs.flows.super.ai\",\"publisher\":{\"@id\":\"https://docs.flows.super.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.flows.super.ai/api-reference/profile/update-current-user-profile#webpage\",\"url\":\"https://docs.flows.super.ai/api-reference/profile/update-current-user-profile\",\"name\":\"Update current user profile\",\"description\":\"Update the currently authenticated user's profile information. Allows users to modify their personal information including first and last name. Only the fields provided in the request body will be updated. Omitted fields remain unchanged. The user is automatically identified from their authentication credentials. Context: - Only first_name and last_name can be updated via this endpoint - Password field in request body is reserved for future use (not implemented) - Email, role, status, and organization cannot be changed by users - Updates are immediate and reflected in database upon success - Full user profile returned in response with updated values Behavior: 1. Extracts user_id from authenticated user context 2. Validates request body fields (min/max length constraints) 3. Queries database to verify user exists 4. Updates only first_name and last_name if provided 5. Persists changes to database with updated_at timestamp 6. Returns complete updated user profile Use Cases: - User wants to correct misspelled name - User prefers different name display (nickname vs full name) - User changes last name after marriage or legal name change - Profile updates during onboarding or account setup - Internationalization of name display Field Update Rules: - first_name: 1-100 characters if provided, unchanged if null - last_name: 1-100 characters if provided, unchanged if null - password: Not currently implemented, reserved for future use - All other fields (email, role, status): Use admin endpoints to modify Related Endpoints: - GET /profile/me - Retrieve current user profile - PUT /admin/users/{user_id} - Admin endpoint to update any user - POST /auth/change-password - Change password (separate auth flow)\",\"dateModified\":\"2026-10-23T12:20:52.516Z\",\"isPartOf\":{\"@id\":\"https://docs.flows.super.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.flows.super.ai/api-reference/profile/update-current-user-profile#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.flows.super.ai/api-reference/profile/update-current-user-profile#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Endpoints\",\"item\":\"https://docs.flows.super.ai/api-reference/auth/submit-a-self-service-access-request\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"profile\",\"item\":\"https://docs.flows.super.ai/api-reference/profile/record-the-callers-acceptance-of-one-or-more-documents\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Update current user profile\",\"item\":\"https://docs.flows.super.ai/api-reference/profile/update-current-user-profile\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.flows.super.ai/api-reference/profile/update-current-user-profile#apireference\",\"headline\":\"Update current user profile\",\"name\":\"Update current user profile\",\"description\":\"Update the currently authenticated user's profile information. Allows users to modify their personal information including first and last name. Only the fields provided in the request body will be updated. Omitted fields remain unchanged. The user is automatically identified from their authentication credentials. Context: - Only first_name and last_name can be updated via this endpoint - Password field in request body is reserved for future use (not implemented) - Email, role, status, and organization cannot be changed by users - Updates are immediate and reflected in database upon success - Full user profile returned in response with updated values Behavior: 1. Extracts user_id from authenticated user context 2. Validates request body fields (min/max length constraints) 3. Queries database to verify user exists 4. Updates only first_name and last_name if provided 5. Persists changes to database with updated_at timestamp 6. Returns complete updated user profile Use Cases: - User wants to correct misspelled name - User prefers different name display (nickname vs full name) - User changes last name after marriage or legal name change - Profile updates during onboarding or account setup - Internationalization of name display Field Update Rules: - first_name: 1-100 characters if provided, unchanged if null - last_name: 1-100 characters if provided, unchanged if null - password: Not currently implemented, reserved for future use - All other fields (email, role, status): Use admin endpoints to modify Related Endpoints: - GET /profile/me - Retrieve current user profile - PUT /admin/users/{user_id} - Admin endpoint to update any user - POST /auth/change-password - Change password (separate auth flow)\",\"url\":\"https://docs.flows.super.ai/api-reference/profile/update-current-user-profile\",\"mainEntityOfPage\":{\"@id\":\"https://docs.flows.super.ai/api-reference/profile/update-current-user-profile#webpage\"},\"dateModified\":\"2026-10-23T12:20:52.516Z\",\"publisher\":{\"@id\":\"https://docs.flows.super.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.flows.super.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"SuperAI Flows\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"SuperAI Flows","nav":{"global":null,"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":""}]},{"tab":"API Reference","groups":[{"group":"Overview","pages":[{"title":"Overview","icon":"code","href":"/api-reference/introduction"},{"title":"Authentication","icon":"lock","href":"/api-reference/authentication"},{"title":"Error Codes","icon":"triangle-exclamation","href":"/api-reference/errors"},{"title":"MCP Server","icon":"robot","href":"/api-reference/mcp-server"}]},{"group":"Endpoints","pages":[{"group":"auth","pages":[{"title":"Submit a self-service access request","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/auth/access-request","href":"/api-reference/auth/submit-a-self-service-access-request"},{"title":"Retrieve authentication API key","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/auth/anon-key","href":"/api-reference/auth/retrieve-authentication-api-key"},{"title":"Human-verification challenge configuration for the sign-in and signup forms","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/auth/captcha-config","href":"/api-reference/auth/human-verification-challenge-configuration-for-the-sign-in-and-signup-forms"},{"title":"Resolve login method for an email","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/auth/login-method","href":"/api-reference/auth/resolve-login-method-for-an-email"},{"title":"Public compliance configuration for the signup and sign-in surfaces","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/auth/public-config","href":"/api-reference/auth/public-compliance-configuration-for-the-signup-and-sign-in-surfaces"},{"title":"Resend user invitation email","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/auth/resend-invite","href":"/api-reference/auth/resend-user-invitation-email"},{"title":"Reset Password","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/auth/reset-password","href":"/api-reference/auth/reset-password"},{"title":"Pre-flight signup email policy check for magic link","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/auth/signup-email-policy","href":"/api-reference/auth/pre-flight-signup-email-policy-check-for-magic-link"},{"title":"The authenticated caller's terms-acceptance state","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/auth/terms-status","href":"/api-reference/auth/the-authenticated-callers-terms-acceptance-state"}]},{"group":"files","pages":[{"title":"Download file by URI (with redirect)","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/files/download","href":"/api-reference/files/download-file-by-uri-with-redirect"},{"title":"Resolve storage URI to download URL","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/files/resolve","href":"/api-reference/files/resolve-storage-uri-to-download-url"}]},{"group":"flow-executions","pages":[{"title":"List flow executions with filtering and pagination","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/flow-executions","href":"/api-reference/flow-executions/list-flow-executions-with-filtering-and-pagination"},{"title":"Create and start a flow execution","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/flow-executions","href":"/api-reference/flow-executions/create-and-start-a-flow-execution"},{"title":"List the execution IDs of one filtered, sorted runs-table page","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/flow-executions/page-ids","href":"/api-reference/flow-executions/list-the-execution-ids-of-one-filtered-sorted-runs-table-page"},{"title":"Retrieve a specific flow execution","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/flow-executions/{flow_execution_id}","href":"/api-reference/flow-executions/retrieve-a-specific-flow-execution"},{"title":"Soft delete a flow execution","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json delete /api/flow-executions/{flow_execution_id}","href":"/api-reference/flow-executions/soft-delete-a-flow-execution"},{"title":"Cancel a flow execution","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/flow-executions/{flow_execution_id}/cancel","href":"/api-reference/flow-executions/cancel-a-flow-execution"},{"title":"Re-execute a flow execution","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/flow-executions/{flow_execution_id}/execute","href":"/api-reference/flow-executions/re-execute-a-flow-execution"},{"title":"Add task status updates (Internal API)","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/flow-executions/{flow_execution_id}/task-status","href":"/api-reference/flow-executions/add-task-status-updates-internal-api"}]},{"group":"webhook-data","pages":[{"title":"Submit webhook data for a waiting task","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/flow-executions/{flow_execution_id}/webhook-data","href":"/api-reference/webhook-data/submit-webhook-data-for-a-waiting-task"}]},{"group":"flows","pages":[{"title":"List all flows","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/flows","href":"/api-reference/flows/list-all-flows"},{"title":"Create a new flow","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/flows","href":"/api-reference/flows/create-a-new-flow"},{"title":"Get available flow tags for autocomplete","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/flows/available-tags","href":"/api-reference/flows/get-available-flow-tags-for-autocomplete"},{"title":"Generate file download URL","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/flows/download-url","href":"/api-reference/flows/generate-file-download-url"},{"title":"Retrieve a flow by ID","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/flows/{flow_id}","href":"/api-reference/flows/retrieve-a-flow-by-id"},{"title":"Delete a flow","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json delete /api/flows/{flow_id}","href":"/api-reference/flows/delete-a-flow"},{"title":"Partially update a flow","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json patch /api/flows/{flow_id}","href":"/api-reference/flows/partially-update-a-flow"},{"title":"Get clone info for a flow","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/flows/{flow_id}/clone-info","href":"/api-reference/flows/get-clone-info-for-a-flow"},{"title":"Update flow definition","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json put /api/flows/{flow_id}/definition","href":"/api-reference/flows/update-flow-definition"},{"title":"List flow files","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/flows/{flow_id}/files","href":"/api-reference/flows/list-flow-files"},{"title":"List flow invitations","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/flows/{flow_id}/invitations","href":"/api-reference/flows/list-flow-invitations"},{"title":"Upsert user invitations to a flow","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json put /api/flows/{flow_id}/invitations","href":"/api-reference/flows/upsert-user-invitations-to-a-flow"},{"title":"Remove user invitations from a flow","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json delete /api/flows/{flow_id}/invitations","href":"/api-reference/flows/remove-user-invitations-from-a-flow"},{"title":"Get distinct metadata keys for a flow","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/flows/{flow_id}/metadata/keys","href":"/api-reference/flows/get-distinct-metadata-keys-for-a-flow"},{"title":"Get distinct values for a metadata key","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/flows/{flow_id}/metadata/values","href":"/api-reference/flows/get-distinct-values-for-a-metadata-key"},{"title":"Get tag suggestions for a flow","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/flows/{flow_id}/tag-suggestions","href":"/api-reference/flows/get-tag-suggestions-for-a-flow"},{"title":"Get tag usage for a flow","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/flows/{flow_id}/tag-usage","href":"/api-reference/flows/get-tag-usage-for-a-flow"},{"title":"Get tags for flow executions","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/flows/{flow_id}/tags","href":"/api-reference/flows/get-tags-for-flow-executions"},{"title":"Permanently delete tags from a flow","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json delete /api/flows/{flow_id}/tags","href":"/api-reference/flows/permanently-delete-tags-from-a-flow"},{"title":"Update a single task in flow","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json put /api/flows/{flow_id}/task","href":"/api-reference/flows/update-a-single-task-in-flow"},{"title":"List team invitations for a flow","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/flows/{flow_id}/team-invitations","href":"/api-reference/flows/list-team-invitations-for-a-flow"},{"title":"Upsert team (worker group) invitations to a flow","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json put /api/flows/{flow_id}/team-invitations","href":"/api-reference/flows/upsert-team-worker-group-invitations-to-a-flow"},{"title":"Remove team invitations from a flow","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json delete /api/flows/{flow_id}/team-invitations","href":"/api-reference/flows/remove-team-invitations-from-a-flow"},{"title":"Generate file upload URL","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/flows/{flow_id}/upload-url","href":"/api-reference/flows/generate-file-upload-url"},{"title":"Validate a flow definition without persisting","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/flows/{flow_id}/validate","href":"/api-reference/flows/validate-a-flow-definition-without-persisting"},{"title":"List all versions of a flow","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/flows/{flow_id}/versions","href":"/api-reference/flows/list-all-versions-of-a-flow"},{"title":"List version summaries for a flow","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/flows/{flow_id}/versions/summary","href":"/api-reference/flows/list-version-summaries-for-a-flow"},{"title":"Get specific flow version","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/flows/{flow_id}/versions/{version}","href":"/api-reference/flows/get-specific-flow-version"},{"title":"Update version metadata","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json patch /api/flows/{flow_id}/versions/{version}","href":"/api-reference/flows/update-version-metadata"},{"title":"Restore a past version","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/flows/{flow_id}/versions/{version}/restore","href":"/api-reference/flows/restore-a-past-version"},{"title":"List task summaries for flow version","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/flows/{flow_id}/versions/{version}/summary","href":"/api-reference/flows/list-task-summaries-for-flow-version"}]},{"group":"human-review-tasks","pages":[{"title":"List human review tasks assigned to the current user","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/human-review-tasks","href":"/api-reference/human-review-tasks/list-human-review-tasks-assigned-to-the-current-user"},{"title":"Create a new human review task","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/human-review-tasks","href":"/api-reference/human-review-tasks/create-a-new-human-review-task"},{"title":"List human review tasks for a flow execution (org-level access)","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/human-review-tasks/by-execution","href":"/api-reference/human-review-tasks/list-human-review-tasks-for-a-flow-execution-org-level-access"},{"title":"Get a human review task by ID","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/human-review-tasks/{task_id}","href":"/api-reference/human-review-tasks/get-a-human-review-task-by-id"},{"title":"List all assignments for a human review task","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/human-review-tasks/{task_id}/assignments","href":"/api-reference/human-review-tasks/list-all-assignments-for-a-human-review-task"},{"title":"Complete a human review task","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/human-review-tasks/{task_id}/complete","href":"/api-reference/human-review-tasks/complete-a-human-review-task"},{"title":"Start a human review task","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/human-review-tasks/{task_id}/start","href":"/api-reference/human-review-tasks/start-a-human-review-task"},{"title":"Unstart a human review task assignment","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/human-review-tasks/{task_id}/unstart","href":"/api-reference/human-review-tasks/unstart-a-human-review-task-assignment"}]},{"group":"integrations","pages":[{"title":"List integration catalog","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/integrations/catalog","href":"/api-reference/integrations/list-integration-catalog"},{"title":"List user credentials","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/integrations/credentials","href":"/api-reference/integrations/list-user-credentials"},{"title":"Create integration credentials","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/integrations/credentials","href":"/api-reference/integrations/create-integration-credentials"},{"title":"List credentials by provider","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/integrations/credentials/provider/{provider}","href":"/api-reference/integrations/list-credentials-by-provider"},{"title":"Get credential by ID","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/integrations/credentials/{credential_id}","href":"/api-reference/integrations/get-credential-by-id"},{"title":"Delete credential","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json delete /api/integrations/credentials/{credential_id}","href":"/api-reference/integrations/delete-credential"},{"title":"Update credential","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json patch /api/integrations/credentials/{credential_id}","href":"/api-reference/integrations/update-credential"},{"title":"Get credential secrets","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/integrations/credentials/{credential_id}/credentials","href":"/api-reference/integrations/get-credential-secrets"},{"title":"List user databases","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/integrations/database","href":"/api-reference/integrations/list-user-databases"},{"title":"Create Database","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/integrations/database","href":"/api-reference/integrations/create-database"},{"title":"Create managed database","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/integrations/database/managed","href":"/api-reference/integrations/create-managed-database"},{"title":"List tables in managed database","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/integrations/database/managed/tables","href":"/api-reference/integrations/list-tables-in-managed-database"},{"title":"Create table in managed database","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/integrations/database/managed/tables","href":"/api-reference/integrations/create-table-in-managed-database"},{"title":"Get table columns from managed database","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/integrations/database/managed/tables/{table_name}/columns","href":"/api-reference/integrations/get-table-columns-from-managed-database"},{"title":"Get table data from managed database","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/integrations/database/managed/tables/{table_name}/data","href":"/api-reference/integrations/get-table-data-from-managed-database"},{"title":"Query a managed-DB table with exact-match filters","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/integrations/database/managed/tables/{table_name}/query","href":"/api-reference/integrations/query-a-managed-db-table-with-exact-match-filters"},{"title":"Insert one row into a managed-DB table","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/integrations/database/managed/tables/{table_name}/rows","href":"/api-reference/integrations/insert-one-row-into-a-managed-db-table"},{"title":"Get database by ID","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/integrations/database/{db_id}","href":"/api-reference/integrations/get-database-by-id"},{"title":"Delete database","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json delete /api/integrations/database/{db_id}","href":"/api-reference/integrations/delete-database"},{"title":"Get database columns","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/integrations/database/{db_id}/columns","href":"/api-reference/integrations/get-database-columns"},{"title":"Get Download Url","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/integrations/database/{db_id}/download","href":"/api-reference/integrations/get-download-url"},{"title":"Generate database upload URL","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/integrations/database/{db_id}/upload-url","href":"/api-reference/integrations/generate-database-upload-url"},{"title":"Compare Csv For Replace","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/integrations/database/{db_id}/upload/compare","href":"/api-reference/integrations/compare-csv-for-replace"},{"title":"Complete File Upload","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/integrations/database/{db_id}/upload/complete","href":"/api-reference/integrations/complete-file-upload"},{"title":"Preview CSV file before import","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/integrations/database/{db_id}/upload/preview","href":"/api-reference/integrations/preview-csv-file-before-import"},{"title":"Replace File Upload","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/integrations/database/{db_id}/upload/replace","href":"/api-reference/integrations/replace-file-upload"},{"title":"Process Emails","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/integrations/email/process","href":"/api-reference/integrations/process-emails"},{"title":"Create Email Task","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/integrations/email/tasks","href":"/api-reference/integrations/create-email-task"},{"title":"Deactivate Email Task","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json delete /api/integrations/email/tasks","href":"/api-reference/integrations/deactivate-email-task"},{"title":"Get Email Task Status","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/integrations/email/tasks/{task_id}","href":"/api-reference/integrations/get-email-task-status"},{"title":"List all registered plugins","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/integrations/plugins/","href":"/api-reference/integrations/list-all-registered-plugins"},{"title":"Execute Postgres Plugin Task","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/integrations/plugins/postgres/execute","href":"/api-reference/integrations/execute-postgres-plugin-task"},{"title":"Test Postgres Plugin Connection","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/integrations/plugins/postgres/test-connection","href":"/api-reference/integrations/test-postgres-plugin-connection"},{"title":"Get plugin capabilities","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/integrations/plugins/{plugin_name}/capabilities","href":"/api-reference/integrations/get-plugin-capabilities"},{"title":"Test Postgres Connection","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/integrations/postgres/test-connection","href":"/api-reference/integrations/test-postgres-connection"},{"title":"Test Postgres Connection By Credential Id","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/integrations/postgres/test-connection/{credential_id}","href":"/api-reference/integrations/test-postgres-connection-by-credential-id"},{"title":"Test Sftp Connection","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/integrations/sftp/test-connection","href":"/api-reference/integrations/test-sftp-connection"}]},{"group":"models","pages":[{"title":"List available models","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/models","href":"/api-reference/models/list-available-models"}]},{"group":"organizations","pages":[{"title":"Why this account is restricted, if it is","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/organizations/account-restriction","href":"/api-reference/organizations/why-this-account-is-restricted-if-it-is"},{"title":"Get credit balance for current user's organization","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/organizations/credits","href":"/api-reference/organizations/get-credit-balance-for-current-users-organization"},{"title":"List the email domains this organization has claimed","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/organizations/domains","href":"/api-reference/organizations/list-the-email-domains-this-organization-has-claimed"},{"title":"Claim an email domain for this organization","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/organizations/domains","href":"/api-reference/organizations/claim-an-email-domain-for-this-organization"},{"title":"Release a claimed email domain","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json delete /api/organizations/domains/{claim_id}","href":"/api-reference/organizations/release-a-claimed-email-domain"},{"title":"List signups waiting on this organization's review","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/organizations/join-requests","href":"/api-reference/organizations/list-signups-waiting-on-this-organizations-review"},{"title":"Decline a signup request","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/organizations/join-requests/{request_id}/reject","href":"/api-reference/organizations/decline-a-signup-request"},{"title":"Update organization settings","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json put /api/organizations/settings","href":"/api-reference/organizations/update-organization-settings"},{"title":"List all worker groups","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/organizations/worker-groups","href":"/api-reference/organizations/list-all-worker-groups"},{"title":"Create a worker group","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/organizations/worker-groups","href":"/api-reference/organizations/create-a-worker-group"},{"title":"Get a worker group","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/organizations/worker-groups/{group_id}","href":"/api-reference/organizations/get-a-worker-group"},{"title":"Update a worker group","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json put /api/organizations/worker-groups/{group_id}","href":"/api-reference/organizations/update-a-worker-group"},{"title":"Delete a worker group","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json delete /api/organizations/worker-groups/{group_id}","href":"/api-reference/organizations/delete-a-worker-group"},{"title":"Add or remove members from a worker group","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/organizations/worker-groups/{group_id}/members","href":"/api-reference/organizations/add-or-remove-members-from-a-worker-group"},{"title":"Get organization by ID","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/organizations/{organization_id}","href":"/api-reference/organizations/get-organization-by-id"}]},{"group":"plugins","pages":[{"title":"List Instances","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/plugins/instances","href":"/api-reference/plugins/list-instances"},{"title":"List Integrations","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/plugins/{plugin_name}/instances","href":"/api-reference/plugins/list-integrations"},{"title":"Create Integration","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/plugins/{plugin_name}/instances","href":"/api-reference/plugins/create-integration"},{"title":"Update Integration","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json put /api/plugins/{plugin_name}/instances/{integration_id}","href":"/api-reference/plugins/update-integration"},{"title":"Delete Integration","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json delete /api/plugins/{plugin_name}/instances/{integration_id}","href":"/api-reference/plugins/delete-integration"},{"title":"Execute Integration","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/plugins/{plugin_name}/instances/{integration_id}/execute","href":"/api-reference/plugins/execute-integration"},{"title":"Poll Integration","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/plugins/{plugin_name}/instances/{integration_id}/poll","href":"/api-reference/plugins/poll-integration"},{"title":"Get Ui Schema","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/plugins/{plugin_name}/instances/{integration_id}/ui_schema","href":"/api-reference/plugins/get-ui-schema"},{"title":"Handle Webhook","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/plugins/{plugin_name}/instances/{integration_id}/webhook/callback","href":"/api-reference/plugins/handle-webhook"},{"title":"Oauth Authorize","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/plugins/{plugin_name}/oauth/authorize","href":"/api-reference/plugins/oauth-authorize"},{"title":"Oauth Callback","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/plugins/{plugin_name}/{provider_name}/oauth/callback","href":"/api-reference/plugins/oauth-callback"}]},{"group":"profile","pages":[{"title":"Record the caller's acceptance of one or more documents","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/profile/accept-terms","href":"/api-reference/profile/record-the-callers-acceptance-of-one-or-more-documents"},{"title":"Whether this account has a password and whether it is SSO-managed","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/profile/credential-state","href":"/api-reference/profile/whether-this-account-has-a-password-and-whether-it-is-sso-managed"},{"title":"Grant or withdraw marketing consent","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/profile/marketing-consent","href":"/api-reference/profile/grant-or-withdraw-marketing-consent"},{"title":"Get current user profile","description":"Retrieve complete profile information for the currently authenticated user.\n\nReturns the full user profile including personal information, role, status,\norganization membership with organization name, AND landing page configuration\nfor workers.\n\nContext:\n - Returns user regardless of active/inactive/pending status\n - Includes organization_id AND organization_name for multi-tenant access control\n - Organization name used by frontend to enable/disable features (e.g., \"super-ai\" org)\n - Landing page config included for worker roles (reviewers, publishers)\n - Profile data is read-only via this endpoint (use PATCH /profile/me to update)\n - User role determines API permissions across the platform\n\nBehavior:\n 1. Extracts user_id from authenticated user context\n 2. Calls UserService.get_profile() which handles:\n - User profile retrieval from database\n - Organization details retrieval\n - Landing page configuration (for workers only)\n 3. Returns complete user profile with landing page config\n 4. Raises 404 if user exists in auth system but not in database (rare edge case)\n\nUse Cases:\n - Display user name and email in application header\n - Check user role to show/hide UI features (org_admin, app_user, etc.)\n - Check organization name for feature gating (e.g., credits visible for \"super-ai\")\n - Verify user's organization for multi-tenant data filtering\n - Determine user status for account activation workflows\n - Fetch user details after authentication to initialize session\n - **NEW**: Determine landing page redirect for workers on login\n\nRelated Endpoints:\n - PATCH /profile/me - Update current user's name\n - GET /admin/users/{user_id} - Admin endpoint to view any user\n - GET /admin/organizations/{org_id}/users - List users in organization\n - GET /organizations/{org_id}/credits - View organization credit balance","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/profile/me","href":"/api-reference/profile/get-current-user-profile"},{"title":"Update current user profile","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json patch /api/profile/me","href":"/api-reference/profile/update-current-user-profile"},{"title":"Change the authenticated user's password","description":"Verify the current password, then write the new one (FLO-2735 G-2).\n\nThe verification is unconditional for an account that has a password, which is\nwhy this is a server endpoint and not a ``supabase.auth.updateUser`` call: GoTrue\nskips its own current-password check for any session whose AMR is ``otp``,\n``magiclink`` or ``recovery``, and every email-link sign-in produces one. See the\nmodule docstring in ``password_service.py`` for the full reasoning, including what\nthis does and does not protect against.\n\nThe caller's bearer token is forwarded to GoTrue for the write itself so that\nsession bookkeeping matches the direct client call this replaces: this device\nstays signed in, every other one is signed out.\n\nNOT used by ``/set-password`` (invited user) or ``/reset-password`` (recovery).\nThose hold a session minted seconds earlier by the emailed credential, have no\ncurrent password to give, and keep calling Supabase directly.","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/profile/password","href":"/api-reference/profile/change-the-authenticated-users-password"}]},{"group":"service-accounts","pages":[{"title":"List all service accounts","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/service-accounts","href":"/api-reference/service-accounts/list-all-service-accounts"},{"title":"Create a new service account","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/service-accounts","href":"/api-reference/service-accounts/create-a-new-service-account"},{"title":"Get a specific service account","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/service-accounts/{service_account_id}","href":"/api-reference/service-accounts/get-a-specific-service-account"},{"title":"Delete a service account","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json delete /api/service-accounts/{service_account_id}","href":"/api-reference/service-accounts/delete-a-service-account"},{"title":"Update a service account","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json patch /api/service-accounts/{service_account_id}","href":"/api-reference/service-accounts/update-a-service-account"},{"title":"List API keys for a service account","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/service-accounts/{service_account_id}/api-keys","href":"/api-reference/service-accounts/list-api-keys-for-a-service-account"},{"title":"Create an API key for a service account","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/service-accounts/{service_account_id}/api-keys","href":"/api-reference/service-accounts/create-an-api-key-for-a-service-account"},{"title":"Delete an API key","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json delete /api/service-accounts/{service_account_id}/api-keys/{api_key_id}","href":"/api-reference/service-accounts/delete-an-api-key"},{"title":"Update an API key","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json patch /api/service-accounts/{service_account_id}/api-keys/{api_key_id}","href":"/api-reference/service-accounts/update-an-api-key"}]},{"group":"sso","pages":[{"title":"Get SSO configuration for organization","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/sso","href":"/api-reference/sso/get-sso-configuration-for-organization"},{"title":"Create SSO configuration for organization","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/sso","href":"/api-reference/sso/create-sso-configuration-for-organization"},{"title":"Remove SSO configuration for organization","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json delete /api/sso","href":"/api-reference/sso/remove-sso-configuration-for-organization"},{"title":"Update SSO metadata configuration","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json patch /api/sso","href":"/api-reference/sso/update-sso-metadata-configuration"},{"title":"Proxy SAML metadata to avoid CORS issues","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/sso/metadata","href":"/api-reference/sso/proxy-saml-metadata-to-avoid-cors-issues"},{"title":"Get Supabase SAML service-provider URLs","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/sso/service-provider-details","href":"/api-reference/sso/get-supabase-saml-service-provider-urls"}]},{"group":"task-data","pages":[{"title":"Analyze flow definition and extract schemas","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/task-data","href":"/api-reference/task-data/analyze-flow-definition-and-extract-schemas"}]},{"group":"task-executions","pages":[{"title":"List task executions with filtering","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/task-executions","href":"/api-reference/task-executions/list-task-executions-with-filtering"},{"title":"Update task execution and optionally re-execute flow","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json put /api/task-executions","href":"/api-reference/task-executions/update-task-execution-and-optionally-re-execute-flow"},{"title":"Create a task execution record","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/task-executions","href":"/api-reference/task-executions/create-a-task-execution-record"},{"title":"Retrieve a specific task execution","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/task-executions/{task_execution_id}","href":"/api-reference/task-executions/retrieve-a-specific-task-execution"}]},{"group":"task-executors","pages":[{"title":"List all available task executors","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/task-executors","href":"/api-reference/task-executors/list-all-available-task-executors"}]},{"group":"task-outputs","pages":[{"title":"List all task outputs","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/task-outputs","href":"/api-reference/task-outputs/list-all-task-outputs"},{"title":"Create task output","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json post /api/task-outputs","href":"/api-reference/task-outputs/create-task-output"},{"title":"Get task output by ID","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/task-outputs/{task_output_id}","href":"/api-reference/task-outputs/get-task-output-by-id"}]},{"group":"task-tags","pages":[{"title":"List active task tags for a flow execution","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json get /api/task-tags","href":"/api-reference/task-tags/list-active-task-tags-for-a-flow-execution"},{"title":"Add or remove task tags in batch","deprecated":null,"version":null,"openapi":"/openapi/superai-flows-openapi.json patch /api/task-tags","href":"/api-reference/task-tags/add-or-remove-task-tags-in-batch"}]}]}]},{"tab":"Changelog","icon":"bullhorn","pages":[{"title":"Changelog","href":"/changelog"}]}]},"title":"Update current user profile - SuperAI Flows","buildId":"dpl_cadrRc5H9XQiJQbDFN5mcYRs2PAj","deploymentId":"dpl_cadrRc5H9XQiJQbDFN5mcYRs2PAj","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DKJwRUt2.js","utils-CWD_VS3u.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-oFjciODD.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-C76WsxC3.js","snippetPresets-DvPMxpX_.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CuNQfndH.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BVFpVUoF.js","shallow-t59Jg5Kr.js","getApiPlaygroundDisplay-C_JZ4amX.js","CodeSnippet-CLRDnx_h.js","CodeSnippets-C2myU4kc.js","Page-7TwLLapg.js","getPastedJson-B-JaVXw7.js","icon-BA-iDhH3.js","MethodPill-D4qZABFp.js","DuplicateIcon-THIDKO1O.js","createIcon-CYYJwgFd.js","DynamicMarkdown-UGQuxDKp.js","SectionHeading-jYELb23h.js","axios-vUo_bRtp.js","Markdown-DKsLa3wy.js","clsx-CefdjKz2.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BaREnp3o.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-sgx_0XzF.js"]}