---
title: "Create Case"
method: POST
path: "/Case"
tags: ["Case"]
---

# Create Case

`POST /Case`

Create a new 'Case' record.

## Headers

- `X-Skip-Duplicate-Check` 'true' | 'false'
- `X-Duplicate-Source-Id` string

## Request body

- CaseCreate
  - `id` string — An ID.
  - `name` string — A one-line string.
  - `number` integer — An auto-increment number.
  - `status` 'New' | 'Assigned' | 'Pending' | 'Closed' | 'Rejected' | 'Duplicate'
  - `priority` 'Low' | 'Normal' | 'High' | 'Urgent'
  - `type` 'Question' | 'Incident' | 'Problem', nullable
  - `description` string, nullable — A multi-line text.
  - `accountId` string, nullable — An ID of the record of the Account type.
  - `accountName` string, nullable — A foreign record name.
  - `leadId` string, nullable — An ID of the record of the Lead type.
  - `leadName` string, nullable — A foreign record name.
  - `contactId` string, nullable — An ID of the record of the Contact type.
  - `contactName` string, nullable — A foreign record name.
  - `contactsIds` string[], nullable — IDs of records of the Contact type.
  - `contactsNames` object, nullable — An {ID => record name} map.
  - `inboundEmailId` string, nullable — An ID of the record of the InboundEmail type.
  - `inboundEmailName` string, nullable — A foreign record name.
  - `originalEmailId` string, nullable
  - `originalEmailName` string, nullable — A foreign record name.
  - `isInternal` boolean
  - `createdAt` string, nullable — A timestamp in UTC.
  - `modifiedAt` string, nullable — A timestamp in UTC.
  - `createdById` string, nullable — An ID of the record of the User type.
  - `createdByName` string, nullable — A foreign record name.
  - `modifiedById` string, nullable — An ID of the record of the User type.
  - `modifiedByName` string, nullable — A foreign record name.
  - `assignedUserId` string, nullable — An ID of the record of the User type.
  - `assignedUserName` string, nullable — A foreign record name.
  - `teamsIds` string[], nullable — IDs of records of the Team type.
  - `teamsNames` object, nullable — An {ID => record name} map.
  - `collaboratorsIds` string[], nullable — IDs of records of the User type.
  - `collaboratorsNames` object, nullable — An {ID => record name} map.
  - `streamUpdatedAt` string, nullable — A timestamp in UTC.

## Response `200`

Success.

- Case
  - `id` string — An ID.
  - `name` string — A one-line string.
  - `number` integer — An auto-increment number.
  - `status` 'New' | 'Assigned' | 'Pending' | 'Closed' | 'Rejected' | 'Duplicate'
  - `priority` 'Low' | 'Normal' | 'High' | 'Urgent'
  - `type` 'Question' | 'Incident' | 'Problem', nullable
  - `description` string, nullable — A multi-line text.
  - `accountId` string, nullable — An ID of the record of the Account type.
  - `accountName` string, nullable — A foreign record name.
  - `leadId` string, nullable — An ID of the record of the Lead type.
  - `leadName` string, nullable — A foreign record name.
  - `contactId` string, nullable — An ID of the record of the Contact type.
  - `contactName` string, nullable — A foreign record name.
  - `contactsIds` string[], nullable — IDs of records of the Contact type.
  - `contactsNames` object, nullable — An {ID => record name} map.
  - `inboundEmailId` string, nullable — An ID of the record of the InboundEmail type.
  - `inboundEmailName` string, nullable — A foreign record name.
  - `originalEmailId` string, nullable
  - `originalEmailName` string, nullable — A foreign record name.
  - `isInternal` boolean
  - `createdAt` string, nullable — A timestamp in UTC.
  - `modifiedAt` string, nullable — A timestamp in UTC.
  - `createdById` string, nullable — An ID of the record of the User type.
  - `createdByName` string, nullable — A foreign record name.
  - `modifiedById` string, nullable — An ID of the record of the User type.
  - `modifiedByName` string, nullable — A foreign record name.
  - `assignedUserId` string, nullable — An ID of the record of the User type.
  - `assignedUserName` string, nullable — A foreign record name.
  - `teamsIds` string[], nullable — IDs of records of the Team type.
  - `teamsNames` object, nullable — An {ID => record name} map.
  - `collaboratorsIds` string[], nullable — IDs of records of the User type.
  - `collaboratorsNames` object, nullable — An {ID => record name} map.
  - `streamUpdatedAt` string, nullable — A timestamp in UTC.

## Other responses

- `400` — Bad request. Might be a validation error. Check logs for details.
- `403` — Forbidden. Might be an access control error. Check logs for details.
- `409` — Conflict. May be a possible duplicate. Use X-Skip-Duplicate-Check to skip check.

---

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