For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
HomepageProduct HelpLog inTry for Free
Developers HomeAPI ReferenceMCP
Developers HomeAPI ReferenceMCP
  • Getting Started
    • Introduction
    • Authentication with API Keys
    • Authentication with OAuth
    • API Clients
    • Pagination
    • Specifying Fields
    • Filter Parameters
    • HTTP Response Codes
    • Rate Limits
    • Timezone Offsets
    • Rich Text Fields
    • Changelog
  • CRM Core
    • Leads
    • Contacts
    • Opportunities
      • GETList or filter opportunities
      • POSTCreate an opportunity
      • GETRetrieve an opportunity
      • PUTUpdate an opportunity
      • DELDelete an opportunity
    • Tasks
    • Files
    • Custom Objects
    • Comments
  • Activities
    • Activities
    • Notes
    • Calls
    • Emails
    • Email Threads
    • WhatsApp Messages
    • Meetings
    • Custom Activities
    • Creations
    • Form Submissions
    • Lead Status Changes
    • Opportunity Status Changes
    • Lead Merges
    • Task Completions
  • Events & Webhooks
    • Webhooks
    • Events
  • Search & Reporting
    • Advanced Filtering
    • Smart Views
    • Reporting
  • Automation & Bulk Actions
    • Sequences (Workflows)
    • Bulk Actions
    • Exports
    • AI Field Enrichment
  • CRM Configuration
    • Custom Fields
    • Custom Activity Types
    • Custom Object Types
    • Pipelines
    • Opportunity Statuses
    • Lead Statuses
    • Integration Links
    • Forms
  • Communication Configuration
    • Email Templates
    • SMS Templates
    • Outcomes
    • Playbooks
    • Scheduling Links Guide
    • Scheduling Links
    • Connected Accounts
    • Send As
    • Unsubscribed Emails
    • Phone Numbers
    • Blocked Phone Numbers
    • Dialers
  • Users & Organizations
    • Users
    • Organizations
    • Memberships
    • Roles
    • Groups
Close

Product

OverviewCommunicationAutomationIntegrationsReportingSMSCallingSecurityForms

Pricing & Use Cases

PricingClose vs Other CRMsCustomer Stories

Resources

Sales BlogSales ResourcesSales GuidesWebinarsOn-Demand DemoSales Tools

Company

AboutCareersPartner with CloseBrand GuidelinesTermsPrivacyGDPRCCPA

Get Help

+1-833-GO-CLOSEHelp CenterDownload the Close AppProduct UpdatesSystem Status
LogoLogo
HomepageProduct HelpLog inTry for Free
CRM CoreOpportunities

List or filter opportunities

||View as Markdown|
GET
https://api.close.com/api/v1/opportunity/
GET
/api/v1/opportunity/
$curl https://api.close.com/api/v1/opportunity/ \
> -u "<CLOSE_API_KEY>:"
1{
2 "data": [
3 {
4 "annualized_expected_value": 225000,
5 "annualized_value": 300000,
6 "confidence": 75,
7 "contact_id": null,
8 "created_by": null,
9 "date_created": "2013-02-01T00:54:51.321000+00:00",
10 "date_lost": null,
11 "date_updated": "2013-02-01T00:54:51.321000+00:00",
12 "date_won": null,
13 "expected_value": 225000,
14 "id": "oppo_KXyJj2PT74U1wOPvhBDO37jCC89mmrnoW0DylcDDWrL",
15 "lead_id": "lead_s6vHFTK1TSRoH6otXOexWDO9jM4xyb1kELHDoU7Fdsp",
16 "note": "Gob's ready to buy a $3,000 suit.",
17 "organization_id": "orga_RbREgmiiwcr1w2b4cOnCMQaQPSIFxMqAD2Dh243uxcH",
18 "status_id": "stat_4ZdiZqcSIkoGVnNOyxiEY58eTGQmFNG3LPlEVQ4V7Nk",
19 "updated_by": null,
20 "user_id": "user_N6KhMpzHRCYQHdn4gRNIFNN5JExnsrprKA6ekxM63XA",
21 "value": 300000,
22 "value_period": "one_time",
23 "lead_name": "Bluth Company (Sample Lead)",
24 "pipeline_id": "pipe_04fC628PVB0HjK2Qq5EqEf",
25 "pipeline_name": "Sales",
26 "status_label": "Active",
27 "status_type": "active",
28 "user_name": "John Doe",
29 "value_currency": "USD",
30 "value_formatted": "$3,000"
31 },
32 {
33 "annualized_expected_value": 37500,
34 "annualized_value": 50000,
35 "confidence": 75,
36 "contact_id": null,
37 "created_by": null,
38 "date_created": "2013-02-01T00:54:51.337000+00:00",
39 "date_lost": null,
40 "date_updated": "2013-02-01T00:54:51.337000+00:00",
41 "date_won": null,
42 "expected_value": 37500,
43 "id": "oppo_8eB77gAdf8FMy6GsNHEy84f7uoeEWv55slvUjKQZpJt",
44 "lead_id": "lead_IIDHIStmFcFQZZP0BRe99V1MCoXWz2PGCm6EDmR9v2O",
45 "note": "Bruce needs new software for the Bat Cave.",
46 "organization_id": "orga_RbREgmiiwcr1w2b4cOnCMQaQPSIFxMqAD2Dh243uxcH",
47 "status_id": "stat_4ZdiZqcSIkoGVnNOyxiEY58eTGQmFNG3LPlEVQ4V7Nk",
48 "updated_by": null,
49 "user_id": "user_N6KhMpzHRCYQHdn4gRNIFNN5JExnsrprKA6ekxM63XA",
50 "value": 50000,
51 "value_period": "annual",
52 "lead_name": "Wayne Enterprises (Sample Lead)",
53 "pipeline_id": "pipe_04fC628PVB0HjK2Qq5EqEf",
54 "pipeline_name": "Sales",
55 "status_label": "Active",
56 "status_type": "active",
57 "user_name": "John Doe",
58 "value_currency": "USD",
59 "value_formatted": "$500"
60 },
61 {
62 "annualized_expected_value": 30000,
63 "annualized_value": 60000,
64 "confidence": 50,
65 "contact_id": null,
66 "created_by": null,
67 "date_created": "2013-02-01T00:54:51.337000+00:00",
68 "date_lost": null,
69 "date_updated": "2013-02-01T00:54:51.337000+00:00",
70 "date_won": null,
71 "expected_value": 2500,
72 "id": "oppo_klajsdflf8FMy6GsNHEy84f7uoeEWv55slvUjKQZpJt",
73 "lead_id": "lead_IIDHIStmFcFQZZP0BRe99V1MCoXWz2PGCm6EDmR9v2O",
74 "note": "Bat Cave monthly maintenance cost",
75 "organization_id": "orga_RbREgmiiwcr1w2b4cOnCMQaQPSIFxMqAD2Dh243uxcH",
76 "status_id": "stat_4ZdiZqcSIkoGVnNOyxiEY58eTGQmFNG3LPlEVQ4V7Nk",
77 "updated_by": null,
78 "user_id": "user_N6KhMpzHRCYQHdn4gRNIFNN5JExnsrprKA6ekxM63XA",
79 "value": 5000,
80 "value_period": "monthly",
81 "lead_name": "Wayne Enterprises (Sample Lead)",
82 "pipeline_id": "pipe_04fC628PVB0HjK2Qq5EqEf",
83 "pipeline_name": "Sales",
84 "status_label": "Active",
85 "status_type": "active",
86 "user_name": "John Doe",
87 "value_currency": "USD",
88 "value_formatted": "$50 monthly",
89 "custom.cf_j0P7kHmgFTZZnYBFtyPSZ3uQw4dpW8xKcW7Krps8atj": "https://www.example.com/contract.pdf"
90 }
91 ],
92 "has_more": false,
93 "count_by_value_period": {
94 "annual": 1,
95 "monthly": 1,
96 "one_time": 1
97 },
98 "expected_value_annual": 37500,
99 "expected_value_annual_formatted": "$375",
100 "expected_value_annualized": 292500,
101 "expected_value_annualized_formatted": "$2,925",
102 "expected_value_monthly": 2500,
103 "expected_value_monthly_formatted": "$25",
104 "expected_value_one_time": 225000,
105 "expected_value_one_time_formatted": "$2,250",
106 "total_results": 3,
107 "total_value_annual": 50000,
108 "total_value_annual_formatted": "$500",
109 "total_value_annualized": 410000,
110 "total_value_annualized_formatted": "$4,100",
111 "total_value_monthly": 5000,
112 "total_value_monthly_formatted": "$50",
113 "total_value_one_time": 300000,
114 "total_value_one_time_formatted": "$3,000"
115}
* All opportunity list responses contain the following aggregate values about all the matching objects (regardless of pagination / limits): * `total_results`: the total number of objects, * `count_by_value_period`: a dictionary containing the number of opportunities by value period, e.g. `{ 'one_time': 2, 'annual': 1, 'monthly': 1 }`, * `total_value_one_time`: the sum of the values of all one time opportunities, * `total_value_monthly`: the sum of the values of all monthly opportunities, * `total_value_annual`: the sum of the values of all annual opportunities, * `total_value_annualized`: the sum of the values of all opportunities where monthly opportunity values are multiplied by 12, * `expected_value_one_time`: the sum of the values of all one time opportunities multiplied by their confidence, * `expected_value_monthly`: the sum of the values of all monthly opportunities multiplied by their confidence, * `expected_value_annual`: the sum of the values of all annual opportunities multiplied by their confidence, * `expected_value_annualized`: the sum of the values of all opportunities multiplied by their confidence where monthly opportunity values are multiplied by 12, * `query` is an optional search query filter. Only opportunity properties may be used in the filter. For example, `note:important` will only show opportunities which contain the text `important` in their note. Or, `status_change(old_status:active new_status:won date:yesterday)` will only show opportunities that transitioned from status `active` to status `won` on the previous day. * `_order_by` allows: `date_won`, `date_updated`, `date_created`, `confidence`, `user_name`, `value`, `annualized_value`, `annualized_expected_value` (each of them allows descending order by prepending a minus, e.g. `_order_by=-date_won`). * `value_period` allows: `one_time`, `monthly`, `annual`. * Multiple values for `user_id`, `status_id`, `status_label`, `status_type` and `value_period` can be specified using the *in* operator, e.g. `status_type__in=active,won`. * `_group_by` allows: `user_id`, `date_won__week`, `date_won__month`, `date_won__quarter` `date_won__year` to group results by the given criteria. When grouping results, the `data` array contains a list of groups instead of objects. A group consists of the following fields: * `key` containing a unique group key, * `objects` containing the list of objects for the given group, * `total_results` containing the number of total objects for the given group, * all aggregate values for the given group, * if grouping by year: `year`, containing the year for the given group, * if grouping by month: `year` and `month`, containing the year and month (1-12) for the given group, * if grouping by quarter: `year` and `quarter`, containing the year and quarter (1-4) for the given group, * if grouping by week: `weekyear` and `week`, containing the ISO week year and ISO week number for the given group, * if grouping by user: `user_id` and `user_name`, containing the user ID and full name of the user for the given group. Note that pagination still applies to objects and not groups. The last or first group may be cut off during pagination, therefore `total_results` may not match the length of `objects`. When paginating, the `key` value may be used to combine groups across multiple pages. Sorting using `_order_by` may be applied and sorts the items within each of the groups. Group order can be reversed by prepending a minus. For example, `_group_by=-date_won__week` will show the most recent weeks first. When grouping by `user_id`, results are ordered by the user's full name. * `lead_saved_search_id` is an optional lead Smart View filter. * (deprecated) `lead_query` is an optional lead search text-based query filter. This parameter is now deprecated in favor of using the `lead_saved_search_id` Smart View ID parameter.
Was this page helpful?
Previous

Opportunities

Next

Create an opportunity

Built with
  • All opportunity list responses contain the following aggregate values about all the matching objects (regardless of pagination / limits):

    • total_results: the total number of objects,
    • count_by_value_period: a dictionary containing the number of opportunities by value period, e.g. { 'one_time': 2, 'annual': 1, 'monthly': 1 },
    • total_value_one_time: the sum of the values of all one time opportunities,
    • total_value_monthly: the sum of the values of all monthly opportunities,
    • total_value_annual: the sum of the values of all annual opportunities,
    • total_value_annualized: the sum of the values of all opportunities where monthly opportunity values are multiplied by 12,
    • expected_value_one_time: the sum of the values of all one time opportunities multiplied by their confidence,
    • expected_value_monthly: the sum of the values of all monthly opportunities multiplied by their confidence,
    • expected_value_annual: the sum of the values of all annual opportunities multiplied by their confidence,
    • expected_value_annualized: the sum of the values of all opportunities multiplied by their confidence where monthly opportunity values are multiplied by 12,
  • query is an optional search query filter. Only opportunity properties may be used in the filter. For example, note:important will only show opportunities which contain the text important in their note. Or, status_change(old_status:active new_status:won date:yesterday) will only show opportunities that transitioned from status active to status won on the previous day.

  • _order_by allows: date_won, date_updated, date_created, confidence, user_name, value, annualized_value, annualized_expected_value (each of them allows descending order by prepending a minus, e.g. _order_by=-date_won).

  • value_period allows: one_time, monthly, annual.

  • Multiple values for user_id, status_id, status_label, status_type and value_period can be specified using the in operator, e.g. status_type__in=active,won.

  • _group_by allows: user_id, date_won__week, date_won__month, date_won__quarter date_won__year to group results by the given criteria.

    When grouping results, the data array contains a list of groups instead of objects. A group consists of the following fields:

    • key containing a unique group key,
    • objects containing the list of objects for the given group,
    • total_results containing the number of total objects for the given group,
    • all aggregate values for the given group,
    • if grouping by year: year, containing the year for the given group,
    • if grouping by month: year and month, containing the year and month (1-12) for the given group,
    • if grouping by quarter: year and quarter, containing the year and quarter (1-4) for the given group,
    • if grouping by week: weekyear and week, containing the ISO week year and ISO week number for the given group,
    • if grouping by user: user_id and user_name, containing the user ID and full name of the user for the given group.

    Note that pagination still applies to objects and not groups. The last or first group may be cut off during pagination, therefore total_results may not match the length of objects. When paginating, the key value may be used to combine groups across multiple pages. Sorting using _order_by may be applied and sorts the items within each of the groups. Group order can be reversed by prepending a minus. For example, _group_by=-date_won__week will show the most recent weeks first. When grouping by user_id, results are ordered by the user’s full name.

  • lead_saved_search_id is an optional lead Smart View filter.

  • (deprecated) lead_query is an optional lead search text-based query filter. This parameter is now deprecated in favor of using the lead_saved_search_id Smart View ID parameter.

Authentication

AuthorizationBasic
Use your API key as the username and leave the password empty.
OR
AuthorizationBearer

Bearer authentication of the form Bearer <token>, where token is your auth token.

Query parameters

_limitintegerOptionalDefaults to 100
Number of results to return.
_skipintegerOptionalDefaults to 0
Number of results to skip before returning, for pagination.
_fieldsstringOptional

Comma-separated list of fields to include in the response.

lead_idstring or nullOptional
organization_idstring or nullOptional
user_idstring or nullOptional
user_id__instring or nullOptional
status_idstring or nullOptional
status_id__instring or nullOptional
status_typestring or nullOptional
status_type__instring or nullOptional
status_labelstring or nullOptional
status_label__instring or nullOptional
statusstring or nullOptional
status__instring or nullOptional
date_wonstring or nullOptional
date_won__gtestring or nullOptional
date_won__gtstring or nullOptional
date_won__ltestring or nullOptional
date_won__ltstring or nullOptional
date_createdstring or nullOptional
date_created__gtestring or nullOptional
date_created__gtstring or nullOptional
date_created__ltestring or nullOptional
date_created__ltstring or nullOptional
date_updatedstring or nullOptional
date_updated__gtestring or nullOptional
date_updated__gtstring or nullOptional
date_updated__ltestring or nullOptional
date_updated__ltstring or nullOptional
value_periodstring or nullOptional
value_period__instring or nullOptional
querystring or nullOptional
lead_querystring or nullOptional
lead_saved_search_idstring or nullOptional
is_stalledstring or nullOptional
_order_bystring or nullOptional
_group_bystring or nullOptional

Response

Successful response
datalist of objects
has_moreboolean

Errors

400
Bad Request Error
401
Unauthorized Error
404
Not Found Error