# POST /companies/bulk-create

**Resource:** [Companies](./companies.md)  
**Scopes:** `companies:write`  
**Write operation:** yes

Create up to 100 companies in a single request. Built for historical migrations and bulk imports. Set skip_automations: true to suppress customer_created triggers across all records. Returns a created array and an errors array. Legacy alias: POST /customers/bulk-create.

## Parameters

| Name | In | Type | Required | Description |
|------|----|------|----------|-------------|
| `records` | body | object[] | yes | Array of company objects (max 100). Each requires name plus any optional fields (email, phone, landline, industry, website, notes, metadata, etc.). |
| `skip_automations` | body | boolean | no | Set true to suppress customer_created triggers across all records. Strongly recommended for historical imports. |

## Request example

```bash
curl -X POST \
  "https://api.trustpager.com/functions/v1/api/v1/companies/bulk-create" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "skip_automations": true,
    "records": [
      { "name": "Acme Corp", "email": "info@acme.com", "landline": "+61290001234" },
      { "name": "Globex Inc", "email": "contact@globex.com" }
    ]
  }'
```

## Response example

```json
{
  "data": {
    "created": [
      { "index": 0, "id": "company-uuid-1", "name": "Acme Corp", ... },
      { "index": 1, "id": "company-uuid-2", "name": "Globex Inc", ... }
    ],
    "errors": [],
    "created_count": 2,
    "error_count": 0
  },
  "meta": { "credits_remaining": 9480 }
}
```

---
Base URL: `https://api.trustpager.com/functions/v1/api/v1` — Auth: `Authorization: Bearer YOUR_API_KEY`