---
title: "Bulk Create Accounts"
method: POST
path: "/accounts/bulk_create"
tags: ["Accounts"]
---

# Bulk Create Accounts

`POST /accounts/bulk_create`

This endpoint doesn't consume Apollo credits. Learn more about [API pricing and credits](https://docs.apollo.io/docs/api-pricing).

An <a href="https://knowledge.apollo.io/hc/en-us/articles/5995865049229-View-and-Edit-Accounts" target="_blank">account</a> is a company saved in Apollo.<br><br>Use the bulk create accounts endpoint to create up to one hundred accounts in a single API request. This endpoint supports intelligent deduplication and returns separate arrays for newly created and existing accounts. <br><br>**Important**: This endpoint creates new accounts but doesn't update existing ones. Existing accounts that match the criteria are returned in the <code>existing_accounts</code> array without modification. <br><br>To update existing accounts, use the <a href="https://docs.apollo.io/reference/bulk-update-accounts">Bulk Update Accounts endpoint</a>.

## Request body

- object
  - `accounts` object[], required — Array of account attribute objects (maximum 100 accounts per request)
    - `name` string — Account name
    - `domain` string — Company domain (e.g., 'example.com')
    - `owner_id` string — Account owner user ID (BSON::ObjectId format). Defaults to current user if not provided
    - `phone` string — Company phone number
    - `phone_status_cd` string — Phone validation status
    - `raw_address` string — Company address
    - `linkedin_url` string — LinkedIn company page URL
    - `facebook_url` string — Facebook page URL
    - `twitter_url` string — Twitter profile URL
    - `salesforce_id` string — Salesforce account ID for CRM integration
    - `hubspot_id` string — HubSpot company ID for CRM integration
    - `merged_crm_ids` string[] — Additional CRM IDs for deduplication
    - `organization_id` string — Apollo organization ID
    - `parent_account_id` string — Parent account ID for account hierarchy (BSON::ObjectId format)
    - `account_stage_id` string — Account stage/pipeline stage ID (BSON::ObjectId format)
    - `typed_custom_fields` object — Custom field values as key-value pairs where key is the field_id and value is the field_value
  - `append_label_names` string[] — Array of label names to add to ALL accounts in this request
  - `run_dedupe` boolean — Enable aggressive deduplication by domain, organization_id, and name. When false (default), only matches by CRM IDs. When true, also matches by domain, organization_id, and name. Existing accounts are returned without modification in both modes

## Response `200`

200 - Successful bulk create operation

- object
  - `created_accounts` object[] — Array of newly created accounts
    - `id` string — Account ID
    - `name` string — Account name
    - `domain` string — Company domain
    - `team_id` string — Team ID
    - `owner_id` string — Account owner ID
    - `account_stage_id` string — Account stage ID
    - `phone` string — Company phone number
    - `created_at` string, date-time — Account creation timestamp
    - `updated_at` string, date-time — Account last update timestamp
  - `existing_accounts` object[] — Array of existing accounts that matched deduplication criteria (returned without modification)
    - `id` string — Account ID
    - `name` string — Account name
    - `domain` string — Company domain
    - `team_id` string — Team ID
    - `owner_id` string — Account owner ID
    - `created_at` string, date-time — Account creation timestamp
    - `updated_at` string, date-time — Account last update timestamp

## Other responses

- `401` — 401 - Unauthorized
- `422` — 422 - Unprocessable Entity
- `429` — 429 - Too Many Requests
- `500` — 500 - Internal Server Error

---

[API](https://skmtc.dev/apollo/apis/apollo-rest-api.md) · [All operations](https://skmtc.dev/apollo/apis/apollo-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/apollo/apollo-rest-api/revisions/c715a05fa6e2/schema)
