---
title: Create managed company
description: >-
  Creates a new managed company under the current MSP account. Returns `202
  Accepted` as provisioning is asynchronous.
category: API Reference
lastModified: '2026-05-18'
url: >-
  https://developer.lastpass.com/business/docs/managed-companies/create-managed-company.md
---

# Create managed company

`POST /v1/managed-companies`

**Operation ID**: `createManagedCompany`

## Quick Start

```http
POST https://api.lastpass.com/business/v1/managed-companies
Authorization: api-key <your-api-key>
Content-Type: application/json

{
  "name": "string",
  "licenseLimit": 0,
  "type": "managed",
  "addons": [
    "mfa"
  ],
  "parentId": 0
}
```

Creates a new managed company under the current MSP account. Returns `202 Accepted` as provisioning is asynchronous.

## Request Body

New managed company details

### Schema

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `name` | string | No | Display name of the new managed company. |
| `licenseLimit` | integer | No | Maximum number of user licenses for the company. Only used for warning when reached. |
| `type` | ManagedCompanyType | No | The type of a managed company. - `managed` — A standard managed company. - `managed-msp` — A managed service provider (MSP) managed by an MSP. *(allowed: managed, managed-msp)* |
| `addons` | array of ManagedCompanyAddon | No | List of add-ons to enable for the company. *(allowed: mfa, sso)* |
| `parentId` | integer | No | Unique identifier of the parent company; null if top-level. *(nullable)* |

### Example

```json
{
  "name": "string",
  "licenseLimit": 0,
  "type": "managed",
  "addons": [
    "mfa"
  ],
  "parentId": 0
}
```

## Responses

### 202

Accepted

#### Schema

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `id` | integer | No | Unique identifier of the asynchronous request. |
| `url` | string | No | URL to poll the result of the asynchronous request. |
| `message` | string | No | Human-readable description of the accepted request. |

#### Example

```json
{
  "id": 0,
  "url": "string",
  "message": "string"
}
```

### 400

Bad Request

#### Schema

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `title` | string | No | Short, human-readable summary of the problem type. *(nullable)* |
| `status` | integer | No | HTTP status code. *(nullable)* |
| `detail` | string | No | Human-readable explanation specific to this occurrence of the problem. *(nullable)* |
| `instance` | string | No | URI reference identifying the specific occurrence of the problem. *(nullable)* |
| `errors` | array of ProblemDetailsError | No | List of individual field-level validation errors, if applicable. *(nullable)* |

#### Example

```json
{
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "errors": [
    {
      "detail": "string",
      "pointer": "string"
    }
  ]
}
```

### 401

Unauthorized

#### Schema

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `title` | string | No | Short, human-readable summary of the problem type. *(nullable)* |
| `status` | integer | No | HTTP status code. *(nullable)* |
| `detail` | string | No | Human-readable explanation specific to this occurrence of the problem. *(nullable)* |
| `instance` | string | No | URI reference identifying the specific occurrence of the problem. *(nullable)* |
| `errors` | array of ProblemDetailsError | No | List of individual field-level validation errors, if applicable. *(nullable)* |

#### Example

```json
{
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "errors": [
    {
      "detail": "string",
      "pointer": "string"
    }
  ]
}
```

### 402

Subscription Expired

#### Schema

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `title` | string | No | Short, human-readable summary of the problem type. *(nullable)* |
| `status` | integer | No | HTTP status code. *(nullable)* |
| `detail` | string | No | Human-readable explanation specific to this occurrence of the problem. *(nullable)* |
| `instance` | string | No | URI reference identifying the specific occurrence of the problem. *(nullable)* |
| `errors` | array of ProblemDetailsError | No | List of individual field-level validation errors, if applicable. *(nullable)* |

#### Example

```json
{
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "errors": [
    {
      "detail": "string",
      "pointer": "string"
    }
  ]
}
```

### 403

Forbidden

#### Schema

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `title` | string | No | Short, human-readable summary of the problem type. *(nullable)* |
| `status` | integer | No | HTTP status code. *(nullable)* |
| `detail` | string | No | Human-readable explanation specific to this occurrence of the problem. *(nullable)* |
| `instance` | string | No | URI reference identifying the specific occurrence of the problem. *(nullable)* |
| `errors` | array of ProblemDetailsError | No | List of individual field-level validation errors, if applicable. *(nullable)* |

#### Example

```json
{
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "errors": [
    {
      "detail": "string",
      "pointer": "string"
    }
  ]
}
```

### 404

Not Found

#### Schema

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `title` | string | No | Short, human-readable summary of the problem type. *(nullable)* |
| `status` | integer | No | HTTP status code. *(nullable)* |
| `detail` | string | No | Human-readable explanation specific to this occurrence of the problem. *(nullable)* |
| `instance` | string | No | URI reference identifying the specific occurrence of the problem. *(nullable)* |
| `errors` | array of ProblemDetailsError | No | List of individual field-level validation errors, if applicable. *(nullable)* |

#### Example

```json
{
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "errors": [
    {
      "detail": "string",
      "pointer": "string"
    }
  ]
}
```

### 415

Unsupported Media Type

#### Schema

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `title` | string | No | Short, human-readable summary of the problem type. *(nullable)* |
| `status` | integer | No | HTTP status code. *(nullable)* |
| `detail` | string | No | Human-readable explanation specific to this occurrence of the problem. *(nullable)* |
| `instance` | string | No | URI reference identifying the specific occurrence of the problem. *(nullable)* |
| `errors` | array of ProblemDetailsError | No | List of individual field-level validation errors, if applicable. *(nullable)* |

#### Example

```json
{
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "errors": [
    {
      "detail": "string",
      "pointer": "string"
    }
  ]
}
```

### 429

Too Many Requests

#### Schema

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `title` | string | No | Short, human-readable summary of the problem type. *(nullable)* |
| `status` | integer | No | HTTP status code. *(nullable)* |
| `detail` | string | No | Human-readable explanation specific to this occurrence of the problem. *(nullable)* |
| `instance` | string | No | URI reference identifying the specific occurrence of the problem. *(nullable)* |
| `errors` | array of ProblemDetailsError | No | List of individual field-level validation errors, if applicable. *(nullable)* |

#### Example

```json
{
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "errors": [
    {
      "detail": "string",
      "pointer": "string"
    }
  ]
}
```

### 500

Internal Server Error

#### Schema

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `title` | string | No | Short, human-readable summary of the problem type. *(nullable)* |
| `status` | integer | No | HTTP status code. *(nullable)* |
| `detail` | string | No | Human-readable explanation specific to this occurrence of the problem. *(nullable)* |
| `instance` | string | No | URI reference identifying the specific occurrence of the problem. *(nullable)* |
| `errors` | array of ProblemDetailsError | No | List of individual field-level validation errors, if applicable. *(nullable)* |

#### Example

```json
{
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "errors": [
    {
      "detail": "string",
      "pointer": "string"
    }
  ]
}
```

