Developers

POST/v3/update_document/{uuid}

Update a registration profile

Submit complete editable profile details and handle the legacy success format.

On this page
  1. Replace a profile’s editable details
  2. Update request
  3. Advanced: add pre-uploaded proofs
  4. Legacy success and failure responses
  5. Current update limits and recovery

Replace a profile’s editable details

Update an existing account-owned registration profile using its local UUID from create_document or documents. This operation changes account and upstream carrier data. It does not change the stored Personal/Business identity type and is not a partial-field PATCH.

Update request

Authenticate with your enabled MultiTEL API account from an allowed IP address. Examples use credentials in environment variables and fictional data. Read JSON status.code and status.msg as well as the HTTP response.

curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
  --header 'Content-Type: application/json' \
  --data @registration-profile-update.json \
  "https://api.multitel.net/v3/update_document/$DOCUMENT_UUID"
{
  "first_name": "Example",
  "last_name": "Person",
  "phone_number": "12025550123",
  "email": "end-user@example.com",
  "city": "Example City",
  "postal_code": "00000",
  "address": "1 Example Street",
  "country": "US",
  "nationality": "US",
  "signature": "BASE64_PNG_OF_THE_AUTHORIZED_END_USER_SIGNATURE",
  "id_number": "",
  "personal_tax_id": "",
  "birth_date": "",
  "description": "Example profile",
  "company_name": "",
  "company_reg_number": "",
  "incorporation_country": "",
  "vat_id": "",
  "address_description": ""
}

The example illustrates a Personal profile; replace it with the end-user’s complete intended details and authorized signature. Do not submit placeholder signatures or empty values as a way to preserve data. JSON and form-encoded input are supported.

Update field requirements
FieldsBehavior
first_name, last_name, city, postal_code, addressRequired; each at most 64 characters.
phone_numberRequired numeric value of at least eight characters; use international digits including country code.
signatureRequired. The portal supplies Base64 PNG bytes without the data URL prefix.
countrySupply an address-country ISO code from the registration catalogue. It is resolved by the handler, although the reviewed address update does not change the country relationship.
nationalityRequired country ISO code for an existing Personal profile.
company_name, incorporation_countryRequired for an existing Business profile; company name at most 64 characters and incorporation country an ISO code.
emailOptional valid email up to 254 characters. Omit to preserve the stored contact email; send an empty value to clear it locally.
id_number, personal_tax_id, birth_date, description, company_reg_number, vat_idSend the intended current values. Omitted values default to empty and can overwrite existing stored values.

The country-specific registration rules may require additional information or formats. Do not reconstruct a complete update from get_document alone: its limited response omits country selectors, email and entity IDs. Keep your authorized source data or use the portal’s document editor.

Advanced: add pre-uploaded proofs

Optional identity_encryptfiles and address_encryptfiles arrays accept active, account-owned references from create_encrypt_files. Match the upload’s entity category and submit before reference expiry. Each file is attached in a separate proof request, even if several share a proof type. For a multi-file identity proof, use the later proof attachment workflow with one array.

If a later address proof is rejected for a newly created address, do not substitute the profile UUID or recreate the identity repeatedly. Stop and check the profile in the portal or with support. The address-proof readback/lookup path remains a review limitation.

Legacy success and failure responses

{
  "status": {
    "code": "success",
    "msg": "Successfully Saved."
  },
  "response": ""
}

This endpoint’s normal success code is the string success, rather than numeric 200. A normal upstream/local failure may use the string error. Numeric 400 covers invalid fields or proof failures, 404 a missing profile or invalid uploaded-file reference, and 500 an empty body or unresolved country. Read the message and any validation entries; do not treat HTTP 200 alone as success.

Current update limits and recovery

A reported success does not guarantee that every upstream field changed. The reviewed code can save the local profile after an upstream address update fails. The upstream identity update does not include email. Address-country changes and address-description synchronization are not established by this path. If you need those changes, review the result in the portal and contact support rather than assuming the upstream registration was updated.

The update is not one atomic transaction: identity changes and proof attachments can precede a later failure. No idempotency key is exposed. After an uncertain response, inspect the profile and attachments before retrying; repeated proof submissions can create duplicates. Updating a profile does not establish proof approval or activate a number.