---
title: "Update a KLARA business company"
method: PUT
path: "/core/v2/tenants/companies"
tags: ["Company"]
---

# Update a KLARA business company

`PUT /core/v2/tenants/companies`

## Request

- Base URL: `https://api.klara.ch`
- URL: `https://api.klara.ch/core/v2/tenants/companies`
- Auth: one of:
  - API key in header `X-API-KEY`
  - HTTP bearer

A Klara user might have multiple tenants. Use this endpoint to update a KLARA business company. Use your KLARA token from your username & password & tenant-id.

## Request body

- BusinessCompany: A business company.
  - `name` string, required: Name of the company
  - `legalForm` 'LIMITED_LIABILITY' | 'CORPORATION' | 'OR' | 'INDIVIDUALLY_OWNED_COMPANY' | 'ASSOCIATION' | 'SIMPLE_PARTNERSHIP' | 'GENERAL_PARTNERSHIP' | 'LIMITED_PARTNERSHIP' | 'COOPERATIVE_COMPANY' | 'FOUNDATION' | 'IOER', required: Legal form of the company. Send the value as one of the LegalForm constants below; the German abbreviation in brackets is also accepted on input, but responses always carry the constant. <ul><li><code>LIMITED_LIABILITY</code> - limited liability company (GmbH)</li><li><code>CORPORATION</code> - public limited company (AG)</li><li><code>INDIVIDUALLY_OWNED_COMPANY</code> - individually owned company (EU)</li><li><code>ASSOCIATION</code> - association (V)</li><li><code>SIMPLE_PARTNERSHIP</code> - simple partnership (EG)</li><li><code>GENERAL_PARTNERSHIP</code> - general partnership (KG)</li><li><code>LIMITED_PARTNERSHIP</code> - limited partnership (KDG)</li><li><code>COOPERATIVE_COMPANY</code> - cooperative company (G)</li><li><code>FOUNDATION</code> - foundation (S)</li><li><code>OR</code> - simple company under the Swiss Code of Obligations (OR)</li><li><code>IOER</code> - institution of public law</li></ul>
  - `phones` Phone[], required: Phone numbers of the company
    - `id` string: Id of this Phone. <strong>Does not need to be included</strong> when creating customer.
    - `phoneNumber` string, required
    - `type` 'PRIVATE' | 'OFFICE' | 'FAX' | 'WORK' | 'MOBILE', required: Type of this phone number. For company, only <strong>OFFICE</strong> type is supported. The full set of accepted values is the PhoneType schema.
  - `emails` Email[], required: Emails of this company
    - `id` string: Id of this Email. <strong>Does not need to be included</strong> when creating customer
    - `emailAddress` string: Email address
    - `type` 'PRIVATE' | 'WORK' | 'OFFICE' | 'OTHER', required: Type of this email address. The full set of accepted values is the EmailType schema.
  - `addresses` Address[], required: Address list of this company, at least one should be add. For company, address type <strong>MUST</strong> be <strong>PRIVATE</strong>
    - `id` string: Id of this Address. Does not need to be included when creating customer
    - `validFrom` string, date: The timestamp from which this address is valid
    - `validTo` string, date: The timestamp to which this address is valid
    - `addressLines` string, required: The address lines for this Address
    - `addressType` string, required: The type of address, could be [PRIVATE, WORK, SHIPPING]. For company, address type <strong>MUST</strong> be <strong>PRIVATE</strong>.
    - `cityName` string, required: Name of this City
    - `cityZipCode` string: The postal code of the city for this address. <strong>Required for Switzerland addresses</strong> (countryIso2Code = CH), where it is matched against the KLARA city register together with cityName; a missing or non-matching combination is rejected with 400. Ignored for every other country, where cityName is taken as given. Conditional on another field, so it is not marked required.
    - `countryIso2Code` string, required: 2 letter country code. For company, only accept Switzerland
    - `countryIso3Code` string: 3 letter country code. For company, only accept Switzerland
    - `countryNumericCode` string: ISO-numeric code. For company, only accept Switzerland
    - `city_href` string: The path to get City object by city's id, /cities/{}
    - `definitionName` string: definition name of this address; in case main address, value is null; else value is not blank
    - `additionalAddress` string: Additional address for more specific
  - `language` 'de' | 'en' | 'fr' | 'it', required: Preferred language of the company. Supported: English, German, French, Italian
  - `corporateIdentificationNumber` string: Every business active in Switzerland is given a unique enterprise identification number (UID). To ensure that numbers are correctly allocated and managed, the UID register is run by the Federal Statistical Office
  - `foundingDate` string, date: Founding date of this company in ISO 8601 format (yyyy-mm-dd)

## Response `201`

Company updated

- BusinessCompany: A business company.
  - `name` string, required: Name of the company
  - `legalForm` 'LIMITED_LIABILITY' | 'CORPORATION' | 'OR' | 'INDIVIDUALLY_OWNED_COMPANY' | 'ASSOCIATION' | 'SIMPLE_PARTNERSHIP' | 'GENERAL_PARTNERSHIP' | 'LIMITED_PARTNERSHIP' | 'COOPERATIVE_COMPANY' | 'FOUNDATION' | 'IOER', required: Legal form of the company. Send the value as one of the LegalForm constants below; the German abbreviation in brackets is also accepted on input, but responses always carry the constant. <ul><li><code>LIMITED_LIABILITY</code> - limited liability company (GmbH)</li><li><code>CORPORATION</code> - public limited company (AG)</li><li><code>INDIVIDUALLY_OWNED_COMPANY</code> - individually owned company (EU)</li><li><code>ASSOCIATION</code> - association (V)</li><li><code>SIMPLE_PARTNERSHIP</code> - simple partnership (EG)</li><li><code>GENERAL_PARTNERSHIP</code> - general partnership (KG)</li><li><code>LIMITED_PARTNERSHIP</code> - limited partnership (KDG)</li><li><code>COOPERATIVE_COMPANY</code> - cooperative company (G)</li><li><code>FOUNDATION</code> - foundation (S)</li><li><code>OR</code> - simple company under the Swiss Code of Obligations (OR)</li><li><code>IOER</code> - institution of public law</li></ul>
  - `phones` Phone[], required: Phone numbers of the company
    - `id` string: Id of this Phone. <strong>Does not need to be included</strong> when creating customer.
    - `phoneNumber` string, required
    - `type` 'PRIVATE' | 'OFFICE' | 'FAX' | 'WORK' | 'MOBILE', required: Type of this phone number. For company, only <strong>OFFICE</strong> type is supported. The full set of accepted values is the PhoneType schema.
  - `emails` Email[], required: Emails of this company
    - `id` string: Id of this Email. <strong>Does not need to be included</strong> when creating customer
    - `emailAddress` string: Email address
    - `type` 'PRIVATE' | 'WORK' | 'OFFICE' | 'OTHER', required: Type of this email address. The full set of accepted values is the EmailType schema.
  - `addresses` Address[], required: Address list of this company, at least one should be add. For company, address type <strong>MUST</strong> be <strong>PRIVATE</strong>
    - `id` string: Id of this Address. Does not need to be included when creating customer
    - `validFrom` string, date: The timestamp from which this address is valid
    - `validTo` string, date: The timestamp to which this address is valid
    - `addressLines` string, required: The address lines for this Address
    - `addressType` string, required: The type of address, could be [PRIVATE, WORK, SHIPPING]. For company, address type <strong>MUST</strong> be <strong>PRIVATE</strong>.
    - `cityName` string, required: Name of this City
    - `cityZipCode` string: The postal code of the city for this address. <strong>Required for Switzerland addresses</strong> (countryIso2Code = CH), where it is matched against the KLARA city register together with cityName; a missing or non-matching combination is rejected with 400. Ignored for every other country, where cityName is taken as given. Conditional on another field, so it is not marked required.
    - `countryIso2Code` string, required: 2 letter country code. For company, only accept Switzerland
    - `countryIso3Code` string: 3 letter country code. For company, only accept Switzerland
    - `countryNumericCode` string: ISO-numeric code. For company, only accept Switzerland
    - `city_href` string: The path to get City object by city's id, /cities/{}
    - `definitionName` string: definition name of this address; in case main address, value is null; else value is not blank
    - `additionalAddress` string: Additional address for more specific
  - `language` 'de' | 'en' | 'fr' | 'it', required: Preferred language of the company. Supported: English, German, French, Italian
  - `corporateIdentificationNumber` string: Every business active in Switzerland is given a unique enterprise identification number (UID). To ensure that numbers are correctly allocated and managed, the UID register is run by the Federal Statistical Office
  - `foundingDate` string, date: Founding date of this company in ISO 8601 format (yyyy-mm-dd)

## Other responses

- `400`: Invalid company data<br/><br/>Failures detected by a downstream service carry that service's own <code>code</code>, which this reference does not enumerate, so the <code>code</code> field may hold a value not documented here. Treat an unrecognised code as a generic failure of the status it arrives with, and do not branch on a code this reference does not list.
- `401`: Invalid credentials<br/><br/>Failures detected by a downstream service carry that service's own <code>code</code>, which this reference does not enumerate, so the <code>code</code> field may hold a value not documented here. Treat an unrecognised code as a generic failure of the status it arrives with, and do not branch on a code this reference does not list.
- `403`: The user has been disabled<br/><br/>Failures detected by a downstream service carry that service's own <code>code</code>, which this reference does not enumerate, so the <code>code</code> field may hold a value not documented here. Treat an unrecognised code as a generic failure of the status it arrives with, and do not branch on a code this reference does not list.
- `429`: API rate limit exceeded<br/><br/>Failures detected by a downstream service carry that service's own <code>code</code>, which this reference does not enumerate, so the <code>code</code> field may hold a value not documented here. Treat an unrecognised code as a generic failure of the status it arrives with, and do not branch on a code this reference does not list.
- `500`: Something went wrong when updating tenant<br/><br/>Failures detected by a downstream service carry that service's own <code>code</code>, which this reference does not enumerate, so the <code>code</code> field may hold a value not documented here. Treat an unrecognised code as a generic failure of the status it arrives with, and do not branch on a code this reference does not list.

---

[API](https://skmtc.dev/klara/apis/klara-public-api.md) · [All operations](https://skmtc.dev/klara/apis/klara-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/klara/apis/klara-public-api/revisions/490b1a879fc2?raw)
