---
title: "Creates a new company."
method: POST
path: "/companies"
tags: ["companies"]
---

# Creates a new company.

`POST /companies`

<Check title="Required Permissions" icon="key">The user must be an admin or have `company-master-data:write` permissions.</Check>

## Headers

- `Authorization` string, required

## Request body

- CompanyForm — The POST/PUT company model.
  - `name` string, required — The company name.
  - `description` string, nullable — The company description.
  - `industry` string, nullable — The company's industry.

## Response `200`

OK

- Company — The GET company model.
  - `name` string, required — The company name.
  - `description` string, nullable — The company description.
  - `industry` string, nullable — The company's industry.
  - `id` string, uuid — The id of the company.
  - `hasImage` boolean — Whether the company has an image.
  - `companyContactInfos` ContactInfoForCompanies[], nullable — The company infos assigned to this company.
    - `label` string, nullable — The label of the contact info. Only necessary if type 'custom' is used.
    - `value` string, nullable — The value of the contact info.
    - `type` string, required — The type of the contact info. Possible values are: 'phone', 'email', 'address', 'custom'.
    - `subType` string, nullable — The subtype of the contact info, Possible values are: phone: [ 'central', 'other' ] email: [ 'central', 'invoice', 'other' ] address: [ 'central', 'invoice', 'other' ] url: [ 'primary', 'other']
    - `addressLine1` string, nullable — The first address line of the contact info.
    - `addressLine2` string, nullable — The second address line of the contact info.
    - `zipCode` string, nullable — The zipcode of the contact info.
    - `city` string, nullable — The city of the contact info.
    - `state` string, nullable — The state of the contact info.
    - `country` string, nullable — The 2 letter iso code of the country.
    - `isAddress` boolean — Flags whether this contact info is an address. If it's an address, the address fields are required.
    - `id` string, uuid — The Id of the contact info.
    - `createdOn` string, date-time — The date this entity was created.
    - `createdBy` string, uuid — The id of the user who created this entity.
    - `updatedOn` string, date-time — The date this entity was last modified.
    - `updatedBy` string, uuid — The id of the user who last modified this entity.
  - `createdOn` string, date-time — The date this entity was created.
  - `createdBy` string, uuid — The id of the user who created this entity.
  - `updatedOn` string, date-time — The date this entity was last modified.
  - `updatedBy` string, uuid — The id of the user who last modified this entity.
  - `resourceVersion` integer — The version of the entity, updated on every modification, to the ticks in UTC. Not identical to UpdatedOn.
  - `tags` CompanyTagModel[], nullable — The tags for this company.
    - `id` string, uuid
    - `name` string, nullable — The name of the tag.
    - `color` string, nullable — The color of the tag.
  - `projectsCount` integer — The number of all projects related to the company.
  - `projectsInProgressCount` integer — The number of all projects in status 'progress' related to the company.
  - `isExternal` boolean — True if this entity is coming from an external workspace (awork Connect).

## Other responses

- `400` — Bad Request

---

[API](https://skmtc.net/awork-io/apis/api-v1-reference.md) · [All operations](https://skmtc.net/awork-io/apis/api-v1-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/awork-io/api-v1-reference/versions/f784a53f60df/schema)
