---
title: "Create a company"
method: POST
path: "/v6/company"
tags: ["Company Management"]
---

# Create a company

`POST /v6/company`

Create a company in the Tight API

## Request body

- CompanyPostDto
  - `id` string — Id of the company, required to update an existing company
  - `name` string, required — Name of the company
  - `apiCompanyId` string — Id of the company in your DB (defaults to userId if not specified)
  - `entityType` 'SOLE_PROPRIETORSHIP' | 'LLP' | 'LLC' | 'S_CORP' | 'C_CORP', required — The type of entity
  - `owners` object[], nullable, required
    - `userId` string, required — Id of the user in your DB
    - `email` string — Email address for the user
    - `firstName` string — First name for the user
    - `lastName` string — Last name for the user
  - `address` AddressPostDto — Address of the vendor
    - `state` string — State/Province of the address
    - `city` string — City of the address
    - `zip` string — Zip/Postal code of the address
    - `phoneWork` string — The US/CA phone number in E.164 format (e.g., +14155551234)
    - `address1` string — First line of the address
    - `address2` string — Second line of the address
  - `accountingMethod` 'ACCRUAL' | 'CASH' — Accounting method used by the company
  - `businessTypeId` string, required — Id of the business type of the company
  - `availableFeatures` FeaturesPostDto — Available features for the company
    - `bankTransactions` boolean — Whether bank transactions are enabled for this user. Defaults to true.
    - `bills` boolean — Whether bills are enabled for this user. Defaults to true.
    - `bookkeeping` boolean — Whether bookkeeping is enabled for this user. Defaults to true.
    - `imports` boolean — Whether imports are enabled for this user. Defaults to true.
    - `invoicing` boolean — Whether invoicing is enabled for this user. Defaults to true.
    - `payroll` boolean — Whether payroll is enabled for this user. Defaults to true.
    - `reporting` boolean — Whether financial reporting is enabled for this user. Defaults to true.
    - `taxes` boolean — Whether tax estimates are enabled for this user. Defaults to true.
    - `timeTracking` boolean — Whether time tracking is enabled for this user. Defaults to true.
    - `mileage` boolean — Whether mileage is enabled for this user. Defaults to true.

## Response `200`

Success

- CompanyRtlResponse
  - `result` 'SUCCESS' | 'FAILURE' — The result of the action performed.
  - `data` CompanyGetDto — The data generated by the action performed.
    - `id` string — Id of the company, required to update an existing company
    - `name` string, required — Name of the company
    - `apiCompanyId` string — Id of the company in your DB
    - `entityType` 'SOLE_PROPRIETORSHIP' | 'LLP' | 'LLC' | 'S_CORP' | 'C_CORP' — The type of entity
    - `owners` OwnerGetDto[], required
      - `userId` string, required — Id of the user in your DB
      - `email` string — Email address for the user
      - `firstName` string — First name for the user
      - `lastName` string — Last name for the user
      - `language` 'EN' | 'ES' | 'FR' | 'ZH' | 'ID' — Language used by the user
    - `address` AddressGetDto, nullable — Address of the vendor
      - `countryCode` 'USA' | 'CAN' | 'GBR' — Country Code of the address
      - `state` string — State/Province of the address
      - `city` string — City of the address
      - `zip` string — Zip/Postal code of the address
      - `phoneWork` string — The phone number
      - `address1` string — First line of the address
      - `address2` string — Second line of the address
    - `accountingMethod` 'ACCRUAL' | 'CASH' — Accounting method used by the company
    - `businessType` BusinessTypeInfo — Business type of the company
      - `id` string — Id of the business type
      - `name` string — Name of the business type
    - `availableFeatures` FeaturesGetDto — Available features for the company
      - `bankTransactions` boolean — Whether bank transactions are enabled for this user. Defaults to true.
      - `bills` boolean — Whether bills are enabled for this user. Defaults to true.
      - `bookkeeping` boolean — Whether bookkeeping is enabled for this user. Defaults to true.
      - `imports` boolean — Whether imports are enabled for this user. Defaults to true.
      - `invoicing` boolean — Whether invoicing is enabled for this user. Defaults to true.
      - `payroll` boolean — Whether payroll is enabled for this user. Defaults to true.
      - `reporting` boolean — Whether financial reporting is enabled for this user. Defaults to true.
      - `taxes` boolean — Whether tax estimates are enabled for this user. Defaults to true.
      - `timeTracking` boolean — Whether time tracking is enabled for this user. Defaults to true.
      - `mileage` boolean — Whether mileage is enabled for this user. Defaults to true.
    - `accessLevel` 'READ_WRITE' | 'READ_ONLY' | 'NONE' | 'READ_WRITE' | 'READ_ONLY' | 'NONE', nullable — The bookkeeper's access level for this company. Null otherwise
    - `status` 'ACTIVE' | 'INACTIVE' | 'REMOVED' — Status of the company
  - `readyToLaunchUrl` string — For customer-partners utilizing Tight's Ready-to-Launch product, you can redirect the user to this URL.

## Other responses

- `400` — Bad request
- `401` — Not authenticated
- `403` — Not authorized
- `404` — Endpoint not found
- `500` — Internal server error

---

[API](https://skmtc.net/tight/apis/tight-api.md) · [All operations](https://skmtc.net/tight/apis/tight-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/tight/tight-api/revisions/e9f0790a89af/schema)
