Bulk Create Entities
Bulk create multiple entities in a single request.
This endpoint is a generic bulk create API for any entity that uses
GeneralizedEntityAPIRouter. It delegates to the shared accountsession
bulk infrastructure:
- Manager layer:
GeneralizedManager.bulk_create_entities() - DB layer:
DBSessionBulkOps.bulk_create_entities()
The operation is partial-safe:
- If some entities fail to create, successful creates are still committed.
- The HTTP status is set to
206 Partial Contentwhen at least one entity fails.
Args: entities_info: List of entity payloads to create (same shape as the regular create endpoint's body). Each item: - Must include all required fields for the entity. - May include custom-field values, which are processed after the base rows are inserted. user: Authenticated user performing the bulk operation. response: FastAPI response object, used to set HTTP status to 206 when needed.
Returns:
JSON object with:
- successfulCount (int): number of entities created successfully
- failedCount (int): number of entities that failed to create
- successfulIds (List[str]): IDs of created entities
- failedIds (List[str]): IDs (when available) or indices of failed entities
- errors (Dict[str,str]): mapping of index or ID → error description
Body·Entities Info
- Type: array of accountsession__api__messages__create_eased_base_model___locals___EasedBaseModel__1Properties: 15
Responses
- application/json
- application/json
curl https://crm.dreamhub.ai/api/v1/users/bulk/create \
--request POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
--data '[
{
"lastName": "Smith",
"displayName": "John Smith",
"department": 1,
"areaOfResponsibility": 1,
"email": "john.smith@company.com",
"role": 1,
"jobTitle": "Account Executive",
"userLanguage": "en",
"avatarUrl": "https://example.com/avatars/user123.jpg",
"groupIds": [
"g-sales",
"g-enterprise"
],
"quotaPlan": 1,
"managerId": "u-manager123",
"timezone": "America/New_York",
"firstName": "John",
"additionalProperty": "anything"
}
]'
{
"additionalProperty": "anything"
}
