# Submit and Enrich Personal Data Submits user-provided personal data (DPI, phone, address) for a specific onboarding process. Cybersign enriches this data using government/external sources and returns the combined data for user review. Triggered when the company shows the initial info form to the end user. Endpoint: POST /onboarding/{onboarding_process_ulid}/data-enrichment Version: 1.1.0 Security: user_bearer_auth ## Path parameters: - `onboarding_process_ulid` (string, required) The unique identifier (ULID) for the user's onboarding process, obtained after login confirmation. Example: "01ARZ3NDEKTSV4RRFFQ69G5FAV" ## Request fields (application/json): - `dpi` (string, required) Documento Personal de Identificación (e.g., Guatemalan National ID number). Define specific format constraints if known. Example: "1234567890101" - `telephone` (string, required) The user's primary phone number, including country code (E.164 format recommended). Example: "+50212345678" - `address` (string, required) The user's primary residential address. Example: "1 Calle 1-23 Zona 4, Guatemala City" ## Response 200 fields (application/json): - `full_name` (string, required) The user's full name as retrieved from verified sources. Example: "Juan José Pérez López" - `date_of_birth` (string, required) The user's date of birth as retrieved from verified sources. Example: "1990-05-15" - `national_id_number` (string, required) The user's national ID number (e.g., DPI) as retrieved/verified. Example: "1234567890101" - `tax_id` (string,null) The user's tax identification number (e.g., NIT), if available/retrieved. Null if not found or applicable. Example: "1234567-8" - `telephone` (string, required) The user's primary phone number, including country code (E.164 format recommended). Example: "+50212345678" - `address` (string, required) The user's primary residential address. Example: "1 Calle 1-23 Zona 4, Guatemala City" ## Response 400 fields (application/json): - `code` (string, required) An application-specific error code string. Example: "INVALID_OTP" - `message` (string, required) A human-readable explanation specific to this occurrence of the problem. Example: "The OTP provided is invalid or has expired." ## Response 401 fields (application/json): - `code` (string, required) An application-specific error code string. Example: "INVALID_OTP" - `message` (string, required) A human-readable explanation specific to this occurrence of the problem. Example: "The OTP provided is invalid or has expired." ## Response 404 fields (application/json): - `code` (string, required) An application-specific error code string. Example: "INVALID_OTP" - `message` (string, required) A human-readable explanation specific to this occurrence of the problem. Example: "The OTP provided is invalid or has expired." ## Response 500 fields (application/json): - `code` (string, required) An application-specific error code string. Example: "INVALID_OTP" - `message` (string, required) A human-readable explanation specific to this occurrence of the problem. Example: "The OTP provided is invalid or has expired."