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

# ID prefixes

> Prefixed string IDs used across API v2 requests and responses

# ID prefixes

API v2 uses **prefixed string IDs** everywhere in requests and responses. The prefix identifies the resource type. There is no separate "public ID" concept in the API — these strings are the `id` fields you send and receive.

## Prefix reference

| Prefix  | Resource                                                 | Example       | Used in                                                                 |
| ------- | -------------------------------------------------------- | ------------- | ----------------------------------------------------------------------- |
| `clt_`  | Contact or company (client)                              | `clt_abc123`  | `clientId`, contact/company `id`, deal filters                          |
| `dpl_`  | Deal pipeline                                            | `dpl_abc123`  | `pipelineId`, deal filters                                              |
| `dps_`  | Deal pipeline stage                                      | `dps_abc123`  | `stageId`, deal filters                                                 |
| `dl_`   | Deal                                                     | `dl_abc123`   | Deal `id`, quotation `dealId`, task `entityId` when `entity` is `deals` |
| `qtn_`  | Quotation                                                | `qtn_abc123`  | Quotation `id`                                                          |
| `tpl_`  | Document template (quotations, invoices, proforma, etc.) | `tpl_abc123`  | Quotation `templateId`                                                  |
| `txr_`  | Tax rate                                                 | `txr_abc123`  | Line item `taxRateId` on quotations and deals                           |
| `tsk_`  | Task                                                     | `tsk_abc123`  | Task `id`                                                               |
| `usr_`  | Team user                                                | `usr_abc123`  | `ownerUserId`, `assigneeIds`, filters                                   |
| `tag_`  | Tag                                                      | `tag_abc123`  | `tags`, `tagIds`, filters                                               |
| `cs_`   | Client stage                                             | `cs_abc123`   | Contact/company `stageId`                                               |
| `lstg_` | Lead stage                                               | `lstg_abc123` | `leadStageId`                                                           |
| `src_`  | CRM source                                               | `src_abc123`  | `sourceId`, `crmSourceId`                                               |
| `lst_`  | List                                                     | `lst_abc123`  | List filters                                                            |
| `prd_`  | Product                                                  | `prd_abc123`  | Deal line items, `services` filter                                      |
| `ld_`   | Lead                                                     | `ld_abc123`   | `leadId`, task `entityId` when `entity` is `leads`                      |
| `prj_`  | Project                                                  | `prj_abc123`  | Project `id`, project filters                                           |
| `ppl_`  | Project pipeline                                         | `ppl_abc123`  | Project `pipelineId`, project filters                                   |
| `pps_`  | Project pipeline stage                                   | `pps_abc123`  | Project `stageId`, project filters                                      |

## Discovering IDs

| You need                                | Call                                                                      |
| --------------------------------------- | ------------------------------------------------------------------------- |
| Pipeline and stage IDs                  | `GET /pipelines` or `GET /pipelines/{id}`                                 |
| Project pipeline and stage IDs          | `GET /project-pipelines` or `GET /project-pipelines/{id}`                 |
| User IDs                                | `GET /users`                                                              |
| Tag IDs                                 | `GET /tags`                                                               |
| Client stage IDs                        | `GET /client-stages`                                                      |
| Source IDs                              | `GET /sources`                                                            |
| Product IDs                             | `GET /products`                                                           |
| Custom field keys (`cf_*`)              | `GET /custom-fields?entity=deals` (and other entities)                    |
| Document template IDs                   | `GET /document-templates` (use `type=quotations` for quotation templates) |
| Contact/company/deal/quotation/task IDs | List or create the resource                                               |

## Response consistency

All resource IDs in API v2 responses use the same prefixed string format as requests — including `pipelineId`, `stageId`, `clientId`, and `ownerUserId` on deals.
