---
title: "Create a sales opportunity"
method: POST
path: "/v1/finance/salesOpportunities"
tags: ["SalesOpportunities"]
---

# Create a sales opportunity

`POST /v1/finance/salesOpportunities`

Create a new sales opportunity (required scope finance:write)

## Headers

- `Customer-Id` integer, required

## Request body

- CreateSalesOpportunityModel — Represents a model that holds information about creating a sales opportunity
  - `contactId` integer — The unique identifier of the contact associated with this sales opportunity
  - `subject` string — The subject of the sales opportunity
  - `status` 'created' | 'onHold' | 'completedWon' | 'completedLost' — Represents the status of a sales opportunity.<p>Possible values:</p><ul><li><b>created</b>: The sales opportunity has been created.</li><li><b>onHold</b>: The sales opportunity is on hold.</li><li><b>completedWon</b>: The sales opportunity has been completed and won.</li><li><b>completedLost</b>: The sales opportunity has been completed and lost.</li></ul>
  - `dueAt` string, date-time — The due date of the sales opportunity
  - `stageId` integer — The unique identifier of the stage associated with the sales opportunity
  - `probabilityId` integer — The unique identifier of the probability associated with the sales opportunity
  - `notes` string, nullable — Notes associated with the sales opportunity
  - `reference` string, nullable — The reference for the sales opportunity
  - `customFields` CustomFieldWriteModel[], nullable — Custom fields to set on the sales opportunity. If a custom field is omitted, its value will be set to the default value for that field
    - `definitionId` integer, required — The unique identifier of the associated custom field definition
    - `value` string, nullable — The value of this custom field. If set to null, any existing value will be unset

## Response `201`

Created

- PostResponseInt64 — Represents a response for a POST request, containing the ID of the newly created record
  - `id` integer — Identifier of the newly created record

## Other responses

- `400` — Bad Request
- `403` — Forbidden
- `422` — Unprocessable Content
- `500` — Internal Server Error

---

[API](https://skmtc.net/bigchange/apis/bigchange-dx.md) · [All operations](https://skmtc.net/bigchange/apis/bigchange-dx/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/bigchange/bigchange-dx/revisions/916e669fc527/schema)
