---
title: "Pipeline data model"
url: "https://docs.unified.to/crm/pipeline/model"
description: "The Pipeline data model object in Unified's Pipeline API: 8 fields, including created_at, updated_at and name, with types and enum values."
---
# Pipeline data model

 View field support, webhooks, and list parameters for each integration on the [Supported Integrations](https://docs.unified.to/crm/integrations.md) page. 

| Field                        | Type                                                                   | Required | Description                              |
| ---------------------------- | ---------------------------------------------------------------------- | -------- | ---------------------------------------- |
| id                           | string                                                                 | No       |                                          |
| created\_at                  | string (date-time)                                                     | No       | (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format) |
| updated\_at                  | string (date-time)                                                     | No       | (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format) |
| name                         | string                                                                 | No       |                                          |
| is\_active                   | boolean                                                                | No       |                                          |
| deal\_probability            | number                                                                 | No       |                                          |
| display\_order               | number                                                                 | No       |                                          |
| stages                       | [CrmStage](https://docs.unified.to/crm/pipeline/model.md#CrmStage)\[\] | No       |                                          |
| stages\[\].id                | string                                                                 | No       |                                          |
| stages\[\].created\_at       | string (date-time)                                                     | No       | (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format) |
| stages\[\].updated\_at       | string (date-time)                                                     | No       | (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format) |
| stages\[\].name              | string                                                                 | No       |                                          |
| stages\[\].active            | boolean                                                                | No       |                                          |
| stages\[\].deal\_probability | number                                                                 | No       |                                          |
| stages\[\].is\_closed        | boolean                                                                | No       |                                          |
| stages\[\].display\_order    | number                                                                 | No       |                                          |

## TypeScript

```typescript
export type CrmPipeline = {
	id?: string;
	created_at?: string-time; // (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	updated_at?: string-time; // (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	name?: string;
	is_active?: boolean;
	deal_probability?: number;
	display_order?: number;
	stages?: [];
	raw?: any;
} 
```

## Zod

```typescript
import { z } from 'zod';

export const ZodCrmPipeline = z.object({
	id: z.string().optional(),
	created_at: z.string-time().optional().describe("(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	updated_at: z.string-time().optional().describe("(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	name: z.string().optional(),
	is_active: z.boolean().optional(),
	deal_probability: z.number().optional(),
	display_order: z.number().optional(),
	stages: z.array().optional(),

});
```

## Python

```python
import dataclasses

@dataclasses.dataclass
class CrmPipeline:
	id: Optional[str]
	"""(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	created_at: Optional[str]
	"""(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	updated_at: Optional[str]
	name: Optional[str]
	is_active: Optional[bool]
	deal_probability: Optional[int]
	display_order: Optional[int]
	stages: Optional[PropertyCrmPipelineStages]

```
