Create entity record

Changed on

<Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Adds a record to one of the app's entities and returns it.

Only the fields the entity's schema declares are stored, so a misspelled name is left out of the record instead of failing the call. Base44 always assigns id, created_date, updated_date, created_by, and created_by_id automatically, and ignores any of them you send.

Row-level security applies, so the call is rejected when the entity's rls create rule doesn't cover the record you send.

Creating a record triggers the app's webhooks and any automation or workflow that listens for this entity.

<Note>This endpoint accepts a personal API key belonging to a user with access to the app. A read-only key is refused, and workspace API keys are not accepted.</Note>

post/api/apps/{app_id}/entities/{entity_name}

Request

  • Base URL: https://app.base44.com
  • URL: https://app.base44.com/api/apps/{app_id}/entities/{entity_name}
  • Auth: HTTP bearer

Path parameters

app_idstring required

ID of the app that owns the entity.

entity_namestring required

Name of the entity, exactly as List entity schemas reports it. Don't pass User here. It doesn't fail, but it reads and writes a separate, disconnected set of records stored under that name, not the app's real user accounts, which are managed through their own endpoints.

Request body

object required

The record's fields, as a flat JSON object using the names the entity's schema declares.

Response

The created record.

idstring nullable

ID of the record. Pass it as entity_id to Get entity record, Update entity record or Delete entity record.

created_datestring nullable

When the record was created, as a UTC timestamp in ISO 8601 format. A record Base44 has just created carries a Z suffix, and a record read back from storage does not.

updated_datestring nullable

When the record last changed, as a UTC timestamp in ISO 8601 format. A record Base44 has just created carries a Z suffix, and a record read back from storage does not.

created_bystring nullable

Email of the app user who created the record, or anonymous when a visitor created it on an app that needs no login. Apps that hide record authorship leave this field out of the response.

created_by_idstring nullable

ID of the app user who created the record, or anonymous when a visitor created it on an app that needs no login.

is_sampleboolean nullable

Whether Base44 stored the record as sample data while the app was being built. A record you create reports false.

Example response

{
  "id": "6886b8d390dc7e2f4a2c91b3",
  "created_date": "2026-06-01T09:23:41.481000",
  "updated_date": "2026-06-04T14:07:02.115000",
  "created_by": "jane@acme.com",
  "created_by_id": "6874b0c2e1a94d0031bb77de"
}

Changes