> ## Documentation Index
> Fetch the complete documentation index at: https://help.hoopai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create a Record

> API reference for creating custom object records in the HoopAI platform.

<Note>
  Currently only **Custom Objects** are supported in the Records API. Support for standard objects (Contacts, Companies) will be added in a future release.
</Note>

## Endpoint

```
POST /objects/{customObjectKey}/records
```

### Path parameter

| Parameter           | Description                                                                                                                                                   |
| ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `{customObjectKey}` | The internal key assigned to the Custom Object at creation time. Immutable. All keys are prefixed with `custom_objects.` — e.g. `custom_objects.event_ticket` |

***

## Request body

| Parameter    | Type      | Required | Description                                                                                                                      |
| ------------ | --------- | -------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `locationId` | string    | Yes      | Location ID where the record will be created.                                                                                    |
| `owners`     | string\[] | No       | Owner user IDs. Limited to 1.                                                                                                    |
| `followers`  | string\[] | No       | Follower user IDs. Limited to 10.                                                                                                |
| `properties` | object    | No       | Key-value pairs of field data. Keys are the internal unique keys of the custom object fields (without `custom_objects.` prefix). |

### Example request body

```json theme={null}
{
  "locationId": "5DP41231LkQsiKESj6rh",
  "owner": ["sx6wyHhbFdRXh302Lunr"],
  "followers": ["sx6wyHhbFdRXh302Lunr", "v5cEPM428h8vShlRW1KT"],
  "properties": {
    "customer_number": 1424,
    "ticket_name": "Customer not able to login",
    "phone_number": "+917000000000",
    "money": { "currency": "default", "value": 100 },
    "type_of_ticket": "option_1_internal_key",
    "section_of_app": ["contacts", "smartlist"],
    "recieved_on": "2024-07-11",
    "my_files": [{ "url": "https://example.com/file.pdf" }],
    "my_textbox_list.label_1_key": "Value 1",
    "my_textbox_list.label_2_key": "Value 2"
  }
}
```

***

## Field types reference

| Field                          | Type       | Notes                                                                            |
| ------------------------------ | ---------- | -------------------------------------------------------------------------------- |
| **Standard fields**            |            |                                                                                  |
| `owner`                        | `string[]` |                                                                                  |
| `followers`                    | `string[]` |                                                                                  |
| **Custom fields (properties)** |            |                                                                                  |
| Single Line                    | `string`   |                                                                                  |
| Multi Line                     | `string`   |                                                                                  |
| Textbox List                   | `string`   | Format: `{field_key}.{label_key}` — pass each label as a separate key.           |
| Number                         | `number`   |                                                                                  |
| Phone                          | `string`   | Must include country code with `+`. No leading `0`.                              |
| Monetary                       | `object`   | `{ "currency": "default", "value": 100 }` — only location currency is supported. |
| Dropdown (Single)              | `string`   | Pass the option **key**, not the label.                                          |
| Dropdown (Multiple)            | `string[]` | Pass option **keys**, not labels.                                                |
| Radio                          | `string`   | Pass the option **key**, not the label.                                          |
| Checkbox                       | `string[]` | Pass option **keys**, not labels.                                                |
| Date Picker                    | `string`   | Format: `YYYY-MM-DD` (ISO 8601)                                                  |
| File Upload                    | `object[]` | `[{ "url": "https://..." }]` — URL must be valid.                                |

<Warning>
  For Dropdown, Radio, and Checkbox fields, always pass the internal option **key** — not the display label.
</Warning>
