/deals Create a deal
Creates a deal on a contact. contact_id and name are required (name up to 60 characters; longer names are truncated). status defaults to pending; stage is a per-pipeline integer and applies to pending deals only. amount is the per-month deal value; for recurring deals the total is amount multiplied by the number of months.
Request body
contact_idstringbson-idID of the contact, to whom the deal belongs
owner_idstringbson-idID of the user, to whom the deal belongs. Defaults to the logged API user's ID.
pipeline_idstringbson-idID of a pipeline the deal belongs to
sales_pipeline_idstringbson-idID of a sales pipeline the deal belongs to
namestringName of the deal
textstringExtra notes related to the deal (supports `[b]bold[/b]` and `[i]italic[/i]` formatting)
stageintegerint32A numerical representation of the progress of a pending deal (number ranging from 0 to 100 exclusive)
statusstringStatus of the deal
enum: pending · won · lost
expected_close_datestringdateThe date the deal is expected to close (status should be `pending`). Defaults to today's date.
close_datestringdateThe date the deal actually closed (status should be `won` or `lost`). Defaults to today's date.
datestringdateCreation date of the deal. Defaults to today's date.
amountnumberfloatThe monitary value of the deal (per month, if multi-month deal)
monthsintegerint32Number of months the deal is to be paid for (1 for regular deals, 2+ for multi-month)
costnumberfloatThe monitary cost of the deal
commission_basestringBase used to calculate the commission of the deal
enum: amount · margin
commission_typestringType of commission for the deal
enum: none · percentage · absolute
commissionnumberfloatCommission payable for the deal
commission_percentagenumberfloatCommission percentage for the deal
deal_fieldsarray<object>Extra user-configurable data fields for Deals. Only editable by admins.
array item fields →
deal_fieldobjectobject fields →
idstringbson-idID of the deal field
valuestringValue for the deal field
has_deal_itemsbooleanMust to be `true` to create or keep deal items (if `false`, deal items will be removed)
deal_itemsarray<object>List of deal items associated with the deal
array item fields →
namestringrequiredName of the deal item
descriptionstringrequiredDescription text of the deal item
costnumberfloatrequiredCost of the deal item
pricenumberfloatrequiredPrice of the deal item
qtyintegerint32requiredQuantity of deal items
predefined_item_idstringbson-idID of the predefined item used for deal item creation (can be empty)
Responses
201 Created
statusintegerint32Response code
messagestringResponse message
timestampintegerunix-timestampResponse time
dataobjectobject fields →
dealobjectRepresent (potential) financial transactions with your contacts. Deals include information like amount, deal stage, closed date or expected close date. Deals support file attachments.
object fields →
idstringbson-idID of the deal
contact_idstringbson-idrequiredID of the contact, to whom the deal belongs
owner_idstringbson-idrequiredID of the user, to whom the deal belongs. Defaults to the logged API user's ID.
pipeline_idstringbson-idID of a pipeline the deal belongs to
sales_pipeline_idstringbson-idID of a sales pipeline the deal belongs to
namestringrequiredName of the deal
textstringExtra notes related to the deal (supports `[b]bold[/b]` and `[i]italic[/i]` formatting)
stageintegerint32A numerical representation of the progress of a pending deal (number ranging from 0 to 100 exclusive)
statusstringStatus of the deal
enum: pending · won · lost
expected_close_datestringdateThe date the deal is expected to close (status should be `pending`). Defaults to today's date.
close_datestringdateThe date the deal actually closed (status should be `won` or `lost`). Defaults to today's date.
datestringdateCreation date of the deal. Defaults to today's date.
amountnumberfloatThe monitary value of the deal (per month, if multi-month deal)
monthsintegerint32Number of months the deal is to be paid for (1 for regular deals, 2+ for multi-month)
costnumberfloatThe monitary cost of the deal
marginnumberfloatProfit margin for the deal (`amount` minus `cost`)
total_amountnumberfloatProduct of amount and months (will only differ from `amount` field, if multi-month deal)
total_costnumberfloatProduct of cost and months (will only differ from `cost` field, if multi-month deal)
commission_basestringBase used to calculate the commission of the deal
enum: amount · margin
commission_typestringType of commission for the deal
enum: none · percentage · absolute
commissionnumberfloatCommission payable for the deal
commission_percentagenumberfloatCommission percentage for the deal
reason_lost_idstringbson-idID of the reason lost
deal_fieldsarray<object>Custom field values on the deal.
array item fields →
deal_fieldobjectExtra user-configurable data fields for Deals. Only editable by admins.
object fields →
idstringbson-idID of the deal field
namestringrequiredName of the deal field
typestringrequiredType of the deal field. There are several types of custom fields that may store data in different formats. External ID type is a special type introduced for referencing entities in the external systems. Its value is unique amid the whole system. Section divider type is introduced just for visual purpose: it allows grouping custom fields. If custom fields in the section don't have values then they are hidden in the 'view' UI (but always shown in 'edit' UI). This logic is applied in the API: if a deal doesn't have values for all the custom fields in the section then this section divider custom field isn't exposed in the API (along with other custom fields inside the section).
enum: date · multi_line_text · multiple_choice · number · select_box · single_line_text · external_id · section_divider
positionintegerint32The position of the deal field in the list
choicesarray<string>A list of possible choices (for fields of type `multiple_choice` or `select_box`)
valuestringValue for the deal field
has_deal_itemsbooleanDoes the deal have deal items?
deal_itemsarray<object>Line items on the deal — each with a name, quantity, price, cost and amount.
array item fields →
idstringbson-idID of the deal item
namestringrequiredName of the deal item
descriptionstringrequiredDescription text of the deal item
costnumberfloatrequiredCost of the deal item
pricenumberfloatrequiredPrice of the deal item
amountnumberfloatAmount of the deal items
qtyintegerint32requiredQuantity of deal items
deal_idstringbson-idID of the parent deal
predefined_item_idstringbson-idID of the predefined item used for deal item creation (can be empty)
positionintegerint32Position of the predefined item in the items list
created_atstringdate-timeCreation time of the deal item
modified_atstringdate-timeLast modification time of the deal item
authorstringShortened name of the creator of the deal. Defaults to the logged API user.
has_related_notesbooleanDoes the deal have related notes?
attachmentsarray<object>Files attached to the deal.
array item fields →
idstringbson-idID of the attachment
filenamestringrequiredName of the attachment file
custom_filenamestringCustom name of the attachment file
pinnedbooleanShow if the attachment is pinned to its owner contact
pinned_atstringShows pinned at timestamp. Is null if pinned == false
sizeintegerint32requiredSize of the attachment file (in bytes)
storage_providerstringName of the storage provider (where the attachment file is stored)
enum: amazon · google_drive · dropbox · evernote
urlstringExternal URL of the attachment file
url_expires_atstringdate-timeThe time the attachment URL expires
thumbnailobjectAn image preview of the attachment file (if one exists)
object fields →
urlstringExternal URL of the attachment's thumbnail
contact_infoobjectInformation about the contact, to whom the deal belongs (read only).
object fields →
contact_namestringName of the contact associated with the deal
companystringName of the company associated with the deal
ownerobjectInformation about the deal owner (read only).
object fields →
idstringID of the deal owner
namestringName of the deal owner
emailstringEmail address of the deal owner
previous_pipeline_stagesobjectReturns the last stage in which the deal was for each pipeline (pipeline_id => stage) This field is returned only when 'include_history=true' param is supplied in query string
created_atstringdate-timeCreation time of the deal
modified_atstringdate-timeLast modification time of the deal
linked_contactsarray<object>Short form of contacts linked to the deal. Always returned with the deal payload (on both `GET /deals` and `GET /deals/{deal_id}`). For full contact objects use `fields=contacts(all)` on `GET /deals`.
array item fields →
idstringbson-idID of the linked contact
contact_namestringFull display name of the linked contact
companystringDisplay name of the company the contact belongs to (empty string if none)
photo_urlstringURL of the contact's profile picture (empty string if none)
Standard error responses: 400 · 401 · 403 · 404 · 409 · 500 — shared across the API. See Errors.