---
title: "Changes to Update a company user record"
method: POST
path: "/api/v1/company_users"
---

# Changes to Update a company user record

`POST /api/v1/company_users`

> Every recorded change to this operation, newest first.

## Timeline

Changed in 21 of 90 revisions.

- **2026-04-20** `69a36036d334`: 2 info
- **2026-03-12** `6e30c707b405`: 2 info
- **2026-02-09** `c85938f55efd`: 1 breaking, 1 info
- **2025-11-22** `00ad5cc89fad`: 9 info
- **2025-09-26** `536b69720520`: 1 breaking, 3 warning
- **2024-11-17** `99be70714dc9`: 2 breaking, 32 warning, 2 info
- **2024-10-06** `b4c604539739`: 1 breaking, 11 warning, 18 info
- **2024-06-06** `6076410c150f`: 1 warning
- **2024-06-06** `8e82a2bd77e0`: 3 breaking, 81 info
- **2024-06-05** `e61df65649e2`: 2 breaking, 2 warning, 12 info
- **2024-06-05** `4ca478d85068`: 1 breaking, 12 warning
- **2024-03-09** `6fb37dc54b39`: 5 info
- **2024-03-07** `71171a40d629`: 5 breaking, 19 info
- **2024-02-18** `88bbc1f38ff7`: 5 breaking, 19 warning
- **2024-02-10** `4ad0fff44c6c`: 2 breaking, 4 info
- **2024-01-24** `9dab078a46b5`: 1 info
- **2024-01-20** `70cd94370516`: 1 breaking
- **2023-11-29** `5aa374897078`: 1 info
- **2023-10-01** `1ebd18413bca`: 17 info
- **2023-07-08** `627936439128`: 4 breaking
- **2023-07-02** `77415bea7529`: 53 info

## Changes

- **2026-04-20** `69a36036d334`: 2 info
  - the response optional property `account/id` became read-only for the status `200`
  - the response optional property `company/id` became read-only for the status `200`
- **2026-03-12** `6e30c707b405`: 2 info
  - added the optional property `user/passkey_count` to the response with the `200` status
  - added the optional property `user/passkey_enabled` to the response with the `200` status
- **2026-02-09** `c85938f55efd`: 1 breaking, 1 info
  - the response property `company/smtp_encryption` became nullable for the status `200`
  - removed the `undefined` enum value from the `company/smtp_encryption` response property for the response status `200`
- **2025-11-22** `00ad5cc89fad`: 9 info
  - added the optional property `company/convert_rate_to_client` to the response with the `200` status
  - added the optional property `company/e_invoicing_token` to the response with the `200` status
  - added the optional property `company/enable_shop_api` to the response with the `200` status
  - added the optional property `company/markdown_email_enabled` to the response with the `200` status
  - added the optional property `company/use_comma_as_decimal_place` to the response with the `200` status
  - added the optional property `user/oauth_user_refresh_token` to the response with the `200` status
  - added the optional property `user/oauth_user_token` to the response with the `200` status
  - added the optional property `user/shopify_user_id` to the response with the `200` status
  - added the optional property `user/user_logged_in_notification` to the response with the `200` status
- **2025-09-26** `536b69720520`: 1 breaking, 3 warning
  - the `company/settings/show_all_tasks_client_portal` response's property type changed from `boolean` to `string` for status `200`
  - added the new `all` enum value to the `company/settings/show_all_tasks_client_portal` response property for the response status `200`
  - added the new `invoiced` enum value to the `company/settings/show_all_tasks_client_portal` response property for the response status `200`
  - added the new `uninvoiced` enum value to the `company/settings/show_all_tasks_client_portal` response property for the response status `200`
- **2024-11-17** `99be70714dc9`: 2 breaking, 32 warning, 2 info
  - the `company/settings/company_logo` response's property type changed from `object` to `string` for status `200`
  - the `company/settings/lock_invoices` response's property type changed from `enum` to `string` for status `200`
  - added the new `after_due_date` enum value to the `company/settings/schedule_reminder1` response property for the response status `200`
  - added the new `after_due_date` enum value to the `company/settings/schedule_reminder2` response property for the response status `200`
  - added the new `after_due_date` enum value to the `company/settings/schedule_reminder3` response property for the response status `200`
  - added the new `after_invoice_date` enum value to the `company/settings/schedule_reminder1` response property for the response status `200`
  - added the new `after_invoice_date` enum value to the `company/settings/schedule_reminder2` response property for the response status `200`
  - added the new `after_invoice_date` enum value to the `company/settings/schedule_reminder3` response property for the response status `200`
  - added the new `always` enum value to the `company/settings/auto_bill` response property for the response status `200`
  - added the new `api.eu.mailgun.net` enum value to the `company/settings/mailgun_endpoint` response property for the response status `200`
  - added the new `api.mailgun.net` enum value to the `company/settings/mailgun_endpoint` response property for the response status `200`
  - added the new `before_due_date` enum value to the `company/settings/schedule_reminder1` response property for the response status `200`
  - added the new `before_due_date` enum value to the `company/settings/schedule_reminder2` response property for the response status `200`
  - added the new `before_due_date` enum value to the `company/settings/schedule_reminder3` response property for the response status `200`
  - added the new `center` enum value to the `company/settings/email_alignment` response property for the response status `200`
  - added the new `center` enum value to the `company/settings/page_numbering_alignment` response property for the response status `200`
  - added the new `custom` enum value to the `company/settings/email_style` response property for the response status `200`
  - added the new `dark` enum value to the `company/settings/email_style` response property for the response status `200`
  - added the new `left` enum value to the `company/settings/email_alignment` response property for the response status `200`
  - added the new `left` enum value to the `company/settings/page_numbering_alignment` response property for the response status `200`
  - added the new `light` enum value to the `company/settings/email_style` response property for the response status `200`
  - added the new `off` enum value to the `company/settings/auto_bill` response property for the response status `200`
  - added the new `on_due_date` enum value to the `company/settings/auto_bill_date` response property for the response status `200`
  - added the new `on_send_date` enum value to the `company/settings/auto_bill_date` response property for the response status `200`
  - added the new `optin` enum value to the `company/settings/auto_bill` response property for the response status `200`
  - added the new `optout` enum value to the `company/settings/auto_bill` response property for the response status `200`
  - added the new `plain` enum value to the `company/settings/email_style` response property for the response status `200`
  - added the new `right` enum value to the `company/settings/email_alignment` response property for the response status `200`
  - added the new `right` enum value to the `company/settings/page_numbering_alignment` response property for the response status `200`
  - added the new `when_paid` enum value to the `company/settings/counter_number_applied` response property for the response status `200`
  - added the new `when_saved` enum value to the `company/settings/counter_number_applied` response property for the response status `200`
  - added the new `when_saved` enum value to the `company/settings/quote_number_applied` response property for the response status `200`
  - added the new `when_sent` enum value to the `company/settings/counter_number_applied` response property for the response status `200`
  - added the new `when_sent` enum value to the `company/settings/quote_number_applied` response property for the response status `200`
  - the `company/settings/primary_color` response's property pattern `^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$` was added for the status `200`
  - the `company/settings/secondary_color` response's property pattern `^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$` was added for the status `200`
- **2024-10-06** `b4c604539739`: 1 breaking, 11 warning, 18 info
  - the `company/settings/lock_invoices` response's property type changed from `boolean` to `enum` for status `200`
  - added the new `client_brevo` enum value to the `company/settings/email_sending_method` response property for the response status `200`
  - added the new `client_mailgun` enum value to the `company/settings/email_sending_method` response property for the response status `200`
  - added the new `client_postmark` enum value to the `company/settings/email_sending_method` response property for the response status `200`
  - added the new `default` enum value to the `company/settings/email_sending_method` response property for the response status `200`
  - added the new `end_of_month` enum value to the `company/settings/lock_invoices` response property for the response status `200`
  - added the new `gmail` enum value to the `company/settings/email_sending_method` response property for the response status `200`
  - added the new `mailgun` enum value to the `company/settings/email_sending_method` response property for the response status `200`
  - added the new `off` enum value to the `company/settings/lock_invoices` response property for the response status `200`
  - added the new `office365` enum value to the `company/settings/email_sending_method` response property for the response status `200`
  - added the new `when_paid` enum value to the `company/settings/lock_invoices` response property for the response status `200`
  - added the new `when_sent` enum value to the `company/settings/lock_invoices` response property for the response status `200`
  - added the optional property `company/e_invoice` to the response with the `200` status
  - added the optional property `company/expense_mailbox` to the response with the `200` status
  - added the optional property `company/expense_mailbox_active` to the response with the `200` status
  - added the optional property `company/inbound_mailbox_allow_clients` to the response with the `200` status
  - added the optional property `company/inbound_mailbox_allow_company_users` to the response with the `200` status
  - added the optional property `company/inbound_mailbox_allow_unknown` to the response with the `200` status
  - added the optional property `company/inbound_mailbox_allow_vendors` to the response with the `200` status
  - added the optional property `company/inbound_mailbox_blacklist` to the response with the `200` status
  - added the optional property `company/inbound_mailbox_whitelist` to the response with the `200` status
  - added the optional property `company/legal_entity_id` to the response with the `200` status
  - added the optional property `company/settings/credit_footer` to the response with the `200` status
  - added the optional property `company/settings/credit_terms` to the response with the `200` status
  - added the optional property `company/settings/valid_until` to the response with the `200` status
  - added the optional property `company/smtp_encryption` to the response with the `200` status
  - added the optional property `company/smtp_host` to the response with the `200` status
  - added the optional property `company/smtp_local_domain` to the response with the `200` status
  - added the optional property `company/smtp_port` to the response with the `200` status
  - added the optional property `company/smtp_verify_peer` to the response with the `200` status
- **2024-06-06** `6076410c150f`: 1 warning
  - removed the optional property `user/company_user` from the response with the `200` status
- **2024-06-06** `8e82a2bd77e0`: 3 breaking, 81 info
  - the response's body type changed from no type to `object` for status `default`
  - the `company` response's property type changed from no type to `object` for status `200`
  - the `token` response's property type changed from no type to `object` for status `200`
  - added the optional property `code` to the response with the `default` status
  - added the optional property `company/auto_start_tasks` to the response with the `200` status
  - added the optional property `company/calculate_expense_tax_by_amount` to the response with the `200` status
  - added the optional property `company/calculate_taxes` to the response with the `200` status
  - added the optional property `company/client_can_register` to the response with the `200` status
  - added the optional property `company/client_registration_fields` to the response with the `200` status
  - added the optional property `company/company_key` to the response with the `200` status
  - added the optional property `company/convert_expense_currency` to the response with the `200` status
  - added the optional property `company/convert_payment_currency` to the response with the `200` status
  - added the optional property `company/convert_products` to the response with the `200` status
  - added the optional property `company/custom_fields` to the response with the `200` status
  - added the optional property `company/custom_surcharge_taxes1` to the response with the `200` status
  - added the optional property `company/custom_surcharge_taxes2` to the response with the `200` status
  - added the optional property `company/custom_surcharge_taxes3` to the response with the `200` status
  - added the optional property `company/custom_surcharge_taxes4` to the response with the `200` status
  - added the optional property `company/db` to the response with the `200` status
  - added the optional property `company/default_auto_bill` to the response with the `200` status
  - added the optional property `company/default_password_timeout` to the response with the `200` status
  - added the optional property `company/default_quantity` to the response with the `200` status
  - added the optional property `company/default_task_is_date_based` to the response with the `200` status
  - added the optional property `company/e_invoice_certificate` to the response with the `200` status
  - added the optional property `company/e_invoice_certificate_passphrase` to the response with the `200` status
  - added the optional property `company/enable_applying_payments` to the response with the `200` status
  - added the optional property `company/enable_product_cost` to the response with the `200` status
  - added the optional property `company/enable_product_discount` to the response with the `200` status
  - added the optional property `company/enable_product_quantity` to the response with the `200` status
  - added the optional property `company/enabled_expense_tax_rates` to the response with the `200` status
  - added the optional property `company/enabled_item_tax_rates` to the response with the `200` status
  - added the optional property `company/enabled_modules` to the response with the `200` status
  - added the optional property `company/enabled_tax_rates` to the response with the `200` status
  - added the optional property `company/expense_inclusive_taxes` to the response with the `200` status
  - added the optional property `company/fill_products` to the response with the `200` status
  - added the optional property `company/first_day_of_week` to the response with the `200` status
  - added the optional property `company/first_month_of_year` to the response with the `200` status
  - added the optional property `company/google_analytics_key` to the response with the `200` status
  - added the optional property `company/id` to the response with the `200` status
  - added the optional property `company/industry_id` to the response with the `200` status
  - …44 more
- **2024-06-05** `e61df65649e2`: 2 breaking, 2 warning, 12 info
  - the response's body type changed from no type to `object` for status `200`
  - the response's body type changed from `object` to no type for status `default`
  - removed the optional property `code` from the response with the `default` status
  - removed the optional property `message` from the response with the `default` status
  - added the optional property `account` to the response with the `200` status
  - added the optional property `company` to the response with the `200` status
  - added the optional property `deleted_at` to the response with the `200` status
  - added the optional property `is_admin` to the response with the `200` status
  - added the optional property `is_locked` to the response with the `200` status
  - added the optional property `is_owner` to the response with the `200` status
  - added the optional property `permissions` to the response with the `200` status
  - added the optional property `react_settings` to the response with the `200` status
  - added the optional property `settings` to the response with the `200` status
  - added the optional property `token` to the response with the `200` status
  - added the optional property `updated_at` to the response with the `200` status
  - added the optional property `user` to the response with the `200` status
- **2024-06-05** `4ca478d85068`: 1 breaking, 12 warning
  - the response's body type changed from `object` to no type for status `200`
  - removed the optional property `account` from the response with the `200` status
  - removed the optional property `company` from the response with the `200` status
  - removed the optional property `deleted_at` from the response with the `200` status
  - removed the optional property `is_admin` from the response with the `200` status
  - removed the optional property `is_locked` from the response with the `200` status
  - removed the optional property `is_owner` from the response with the `200` status
  - removed the optional property `permissions` from the response with the `200` status
  - removed the optional property `react_settings` from the response with the `200` status
  - removed the optional property `settings` from the response with the `200` status
  - removed the optional property `token` from the response with the `200` status
  - removed the optional property `updated_at` from the response with the `200` status
  - removed the optional property `user` from the response with the `200` status
- **2024-03-09** `6fb37dc54b39`: 5 info
  - the response optional property `is_admin` became read-only for the status `200`
  - the response optional property `is_locked` became read-only for the status `200`
  - the response optional property `is_owner` became read-only for the status `200`
  - the response optional property `react_settings` became read-only for the status `200`
  - the response optional property `settings` became read-only for the status `200`
- **2024-03-07** `71171a40d629`: 5 breaking, 19 info
  - the response's body type changed from no type to `object` for status `200`
  - the response's body type changed from no type to `object` for status `401`
  - the response's body type changed from no type to `object` for status `403`
  - the response's body type changed from no type to `object` for status `422`
  - the response's body type changed from no type to `object` for status `default`
  - added the optional property `account` to the response with the `200` status
  - added the optional property `code` to the response with the `default` status
  - added the optional property `company` to the response with the `200` status
  - added the optional property `deleted_at` to the response with the `200` status
  - added the optional property `errors` to the response with the `403` status
  - added the optional property `errors` to the response with the `422` status
  - added the optional property `is_admin` to the response with the `200` status
  - added the optional property `is_locked` to the response with the `200` status
  - added the optional property `is_owner` to the response with the `200` status
  - added the optional property `message` to the response with the `401` status
  - added the optional property `message` to the response with the `403` status
  - added the optional property `message` to the response with the `422` status
  - added the optional property `message` to the response with the `default` status
  - added the optional property `permissions` to the response with the `200` status
  - added the optional property `react_settings` to the response with the `200` status
  - added the optional property `settings` to the response with the `200` status
  - added the optional property `token` to the response with the `200` status
  - added the optional property `updated_at` to the response with the `200` status
  - added the optional property `user` to the response with the `200` status
- **2024-02-18** `88bbc1f38ff7`: 5 breaking, 19 warning
  - the response's body type changed from `object` to no type for status `200`
  - the response's body type changed from `object` to no type for status `401`
  - the response's body type changed from `object` to no type for status `403`
  - the response's body type changed from `object` to no type for status `422`
  - the response's body type changed from `object` to no type for status `default`
  - removed the optional property `account` from the response with the `200` status
  - removed the optional property `code` from the response with the `default` status
  - removed the optional property `company` from the response with the `200` status
  - removed the optional property `deleted_at` from the response with the `200` status
  - removed the optional property `errors` from the response with the `403` status
  - removed the optional property `errors` from the response with the `422` status
  - removed the optional property `is_admin` from the response with the `200` status
  - removed the optional property `is_locked` from the response with the `200` status
  - removed the optional property `is_owner` from the response with the `200` status
  - removed the optional property `message` from the response with the `401` status
  - removed the optional property `message` from the response with the `403` status
  - removed the optional property `message` from the response with the `422` status
  - removed the optional property `message` from the response with the `default` status
  - removed the optional property `permissions` from the response with the `200` status
  - removed the optional property `react_settings` from the response with the `200` status
  - removed the optional property `settings` from the response with the `200` status
  - removed the optional property `token` from the response with the `200` status
  - removed the optional property `updated_at` from the response with the `200` status
  - removed the optional property `user` from the response with the `200` status
- **2024-02-10** `4ad0fff44c6c`: 2 breaking, 4 info
  - the `company/default_auto_bill` response's property type changed from `enum` to `string` for status `200`
  - the `react_settings` response's property type changed from `object'` to `object` for status `200`
  - added the media type `application/json` for the response with the status `401`
  - added the media type `application/json` for the response with the status `403`
  - added the media type `application/json` for the response with the status `422`
  - added the media type `application/json` for the response with the status `default`
- **2024-01-24** `9dab078a46b5`: 1 info
  - endpoint added
- **2024-01-20** `70cd94370516`: 1 breaking
  - api path removed without deprecation
- **2023-11-29** `5aa374897078`: 1 info
  - added the optional property `user/company_user` to the response with the `200` status
- **2023-10-01** `1ebd18413bca`: 17 info
  - added the optional property `company/settings/classification` to the response with the `200` status
  - added the optional property `user/custom_value1` to the response with the `200` status
  - added the optional property `user/custom_value2` to the response with the `200` status
  - added the optional property `user/custom_value3` to the response with the `200` status
  - added the optional property `user/custom_value4` to the response with the `200` status
  - added the optional property `user/google_2fa_secret` to the response with the `200` status
  - added the optional property `user/has_password` to the response with the `200` status
  - added the optional property `user/is_deleted` to the response with the `200` status
  - added the optional property `user/language_id` to the response with the `200` status
  - added the optional property `user/last_confirmed_email_address` to the response with the `200` status
  - added the optional property `user/oauth_user_token_expiry` to the response with the `200` status
  - added the optional property `user/sms_verification_code` to the response with the `200` status
  - added the optional property `user/verified_phone_number` to the response with the `200` status
  - the response optional property `user/accepted_terms_version` became read-only for the status `200`
  - the response optional property `user/id` became read-only for the status `200`
  - the response optional property `user/oauth_provider_id` became read-only for the status `200`
  - the response optional property `user/oauth_user_id` became read-only for the status `200`
- **2023-07-08** `627936439128`: 4 breaking
  - removed the media type `application/json` for the response with the status `401`
  - removed the media type `application/json` for the response with the status `403`
  - removed the media type `application/json` for the response with the status `422`
  - removed the media type `application/json` for the response with the status `default`
- **2023-07-02** `77415bea7529`: 53 info
  - added the optional property `company/auto_start_tasks` to the response with the `200` status
  - added the optional property `company/calculate_expense_tax_by_amount` to the response with the `200` status
  - added the optional property `company/calculate_taxes` to the response with the `200` status
  - added the optional property `company/client_can_register` to the response with the `200` status
  - added the optional property `company/client_registration_fields` to the response with the `200` status
  - added the optional property `company/company_key` to the response with the `200` status
  - added the optional property `company/convert_expense_currency` to the response with the `200` status
  - added the optional property `company/convert_payment_currency` to the response with the `200` status
  - added the optional property `company/db` to the response with the `200` status
  - added the optional property `company/default_auto_bill` to the response with the `200` status
  - added the optional property `company/default_password_timeout` to the response with the `200` status
  - added the optional property `company/default_task_is_date_based` to the response with the `200` status
  - added the optional property `company/e_invoice_certificate` to the response with the `200` status
  - added the optional property `company/e_invoice_certificate_passphrase` to the response with the `200` status
  - added the optional property `company/enable_applying_payments` to the response with the `200` status
  - added the optional property `company/enable_product_discount` to the response with the `200` status
  - added the optional property `company/enabled_expense_tax_rates` to the response with the `200` status
  - added the optional property `company/enabled_item_tax_rates` to the response with the `200` status
  - added the optional property `company/enabled_modules` to the response with the `200` status
  - added the optional property `company/expense_inclusive_taxes` to the response with the `200` status
  - added the optional property `company/first_day_of_week` to the response with the `200` status
  - added the optional property `company/first_month_of_year` to the response with the `200` status
  - added the optional property `company/inventory_notification_threshold` to the response with the `200` status
  - added the optional property `company/invoice_expense_documents` to the response with the `200` status
  - added the optional property `company/invoice_task_datelog` to the response with the `200` status
  - added the optional property `company/invoice_task_documents` to the response with the `200` status
  - added the optional property `company/invoice_task_hours` to the response with the `200` status
  - added the optional property `company/invoice_task_item_description` to the response with the `200` status
  - added the optional property `company/invoice_task_lock` to the response with the `200` status
  - added the optional property `company/invoice_task_project` to the response with the `200` status
  - added the optional property `company/invoice_task_project_header` to the response with the `200` status
  - added the optional property `company/invoice_task_timelog` to the response with the `200` status
  - added the optional property `company/is_disabled` to the response with the `200` status
  - added the optional property `company/is_large` to the response with the `200` status
  - added the optional property `company/mark_expenses_invoiceable` to the response with the `200` status
  - added the optional property `company/mark_expenses_paid` to the response with the `200` status
  - added the optional property `company/markdown_enabled` to the response with the `200` status
  - added the optional property `company/matomo_id` to the response with the `200` status
  - added the optional property `company/matomo_url` to the response with the `200` status
  - added the optional property `company/notify_vendor_when_paid` to the response with the `200` status
  - …13 more

---

[Operation](https://skmtc.dev/invoiceninja/apis/invoice-ninja-api-reference/docs/api/v1/company_users/post.md) - [API](https://skmtc.dev/invoiceninja/apis/invoice-ninja-api-reference.md) - [Page](https://skmtc.dev/invoiceninja/apis/invoice-ninja-api-reference/changes/api/v1/company_users/post)
