<!-- Source: https://docs.vinsi.ai/api-docs/crm-deals -->
# Get Deals

List CRM deals in your organization with owner, contact and company names. Send paginated=true for a paged response that also includes counts and totals (pipeline amount, MRR, annual); without it the endpoint returns a plain array of every deal. Paged filters: search (deal name), activeTab (open | won | lost | my | all, default open), filterStage, filterPriority and filterDealType (comma-separated lists), filterCreated (today | week | month | 3months), sortBy (dealName, dealStage, amount, amountEffective, closeDate, priority, pipeline, createdAt, updatedAt), sortDir (asc | desc, default desc). pageSize defaults to 25, max 100.

```http
GET https://dashboard.vinsi.ai/api/crm/deals
```

## Authentication

Send your API key in the `x-api-key` header. Create keys in the VINSI dashboard under Settings → API Keys.

## Headers

| Name | Type | Required |
|---|---|---|
| Content-Type | string | yes (application/json) |
| x-api-key | string | yes |

## Query parameters

| Name | Required | Example |
|---|---|---|
| paginated | no | true |
| page | no | 1 |
| pageSize | no | 25 |
| search | no | annual |
| activeTab | no | open |
| filterStage | no | Appointment Scheduled |
| filterPriority | no | High |
| filterDealType | no | New Business |
| filterCreated | no | month |
| sortBy | no | amount |
| sortDir | no | desc |

## Example request

```bash
curl -X GET 'https://dashboard.vinsi.ai/api/crm/deals' \
  -H 'x-api-key: YOUR_API_KEY'
```

## Example response

```json
{
  "items": [
    {
      "id": 77,
      "dealName": "Acme Dental - Annual Plan",
      "dealStage": "Appointment Scheduled",
      "pipeline": "Sales Pipeline",
      "dealType": "New Business",
      "priority": "High",
      "amount": 12000,
      "type": "one-time",
      "billingFrequency": null,
      "recurringAmount": null,
      "closeDate": "2026-10-31T00:00:00.000Z",
      "contactId": 1042,
      "companyId": 318,
      "dealOwnerId": "cmexampleuser0000000000001",
      "organizationId": "cmexampleorg00000000000001",
      "createdAt": "2026-09-05T16:00:00.000Z",
      "updatedAt": "2026-09-05T16:00:00.000Z",
      "dealOwnerName": "Jane Doe",
      "contactName": "Alex Morgan",
      "companyName": "Acme Dental",
      "companyLogoUrl": null,
      "hasEngagement": false
    }
  ],
  "total": 1,
  "page": 1,
  "pageSize": 25,
  "counts": {
    "my": 1,
    "all": 20,
    "open": 14,
    "won": 4,
    "lost": 2
  },
  "totals": {
    "pipeline": 12000,
    "mrr": 0,
    "annual": 0,
    "seats": 0
  }
}
```

