How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Keap Opportunities API

Keap Opportunity API — 26 operations across 13 paths on the Keap REST v2 contract, read from Keap's own published OpenAPI 3.1 document.

Keap Opportunities API is one of 51 APIs that Keap publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Opportunities. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, an API reference, and authentication docs.

This API exposes 33 operations across 17 paths, and defines 52 schemas. It is described by OpenAPI 3.2.0, at version 1.0.

Requests are made against a single base URL, https://api.infusionsoft.com/crm.

33 operations 17 paths 52 schemas 5 DELETE15 GET6 PATCH6 POST1 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
1.0
Base URL
https://api.infusionsoft.com/crm/rest/v2
Authentication
OAuth 2.0
Contact
License
Terms of Service
Resource Areas
1

Authentication & Security 1

Keap Opportunities API declares 1 security scheme for authenticating requests. It supports OAuth 2.0 (oauth2) using the authorizationCode flow. By default, every request must be authenticated.

Paths & Operations 33

Across 17 paths, the API surfaces 33 operations — 5 DELETE, 15 GET, 6 PATCH, 6 POST, 1 PUT. Each is listed below with its method, path, parameters, and response codes.

Opportunity 33

Opportunities-Endpoint

GET
/rest/v1/opportunities
List Opportunities
listOpportunities 1 param → 400401500403409404501405
PUT
/rest/v1/opportunities
Replace an Opportunity
updateOpportunity body → 400401500403409404501405
POST
/rest/v1/opportunities
Create an Opportunity
createOpportunity body → 400401500403409404501405
GET
/rest/v1/opportunities/{opportunityId}
Retrieve an Opportunity
getOpportunity 2 params → 400401500403409404501405
PATCH
/rest/v1/opportunities/{opportunityId}
Update an Opportunity
updatePropertiesOnOpportunity 1 param → 400401500403409404501405
GET
/rest/v1/opportunity/stage_pipeline
List Opportunity Stage Pipeline
listOpportunityStagePipelines → 400401500403409404501405
GET
/rest/v1/opportunities/model
Retrieve Opportunity Model
retrieveOpportunityModel → 400401500403409404501405
GET
/rest/v2/opportunities
List Opportunities
listOpportunities 5 params → 401404403409500501400405
POST
/rest/v2/opportunities
Create an Opportunity
createOpportunity 1 param body → 401404403409500501400405
GET
/rest/v2/opportunities/stages
List of Opportunity Stages
listOpportunityStages 4 params → 401404403409500501400405
POST
/rest/v2/opportunities/stages
Create an Opportunity Stage
createOpportunityStage body → 401404403409500501400405
POST
/rest/v2/opportunities/model/customFields
Create an Opportunity Custom Field
createOpportunityCustomFields body → 401404403409500501400405
GET
/rest/v2/opportunities/model/customFields/tabs
List Opportunity Custom Field Tabs
listOpportunityCustomFieldTabs → 401404403409500501400405
POST
/rest/v2/opportunities/model/customFields/tabs
Create an Opportunity Custom Field Tab
createOpportunityCustomFieldTab body → 401404403409500501400405
GET
/rest/v2/opportunities/model/customFields/groups
List Opportunity Custom Field Groups
listOpportunityCustomFieldGroups 1 param → 401404403409500501400405
POST
/rest/v2/opportunities/model/customFields/groups
Create an Opportunity Custom Field Group
createOpportunityCustomFieldGroup body → 401404403409500501400405
GET
/rest/v2/opportunities/{opportunity_id}
Retrieve a Opportunity
getOpportunity 2 params → 401404403409500501400405
DELETE
/rest/v2/opportunities/{opportunity_id}
Delete an Opportunity
deleteOpportunity 1 param → 401404403409500501400405
PATCH
/rest/v2/opportunities/{opportunity_id}
Update an opportunity
updateOpportunity 3 params body → 401404403409500501400405
GET
/rest/v2/opportunities/stages/{stage_id}
Retrieve an Opportunity Stage
getOpportunityStage 1 param → 401404403409500501400405
DELETE
/rest/v2/opportunities/stages/{stage_id}
Delete an Opportunity Stage
deleteOpportunityStage 1 param → 401404403409500501400405
PATCH
/rest/v2/opportunities/stages/{stage_id}
Update an Opportunity Stage
updateOpportunityStage 2 params body → 401404403409500501400405
DELETE
/rest/v2/opportunities/model/customFields/{custom_field_id}
Delete an Opportunity Custom Field
deleteOpportunitiesCustomField 1 param → 401404403409500501400405
PATCH
/rest/v2/opportunities/model/customFields/{custom_field_id}
Update a Opportunity's Custom Field
updateOpportunityCustomField 2 params body → 401404403409500501400405
GET
/rest/v2/opportunities/model/customFields/tabs/{tab_id}
Retrieve an Opportunity Custom Field Tab
getOpportunityCustomFieldTab 1 param → 401404403409500501400405
DELETE
/rest/v2/opportunities/model/customFields/tabs/{tab_id}
Delete an Opportunity Custom Field Tab
deleteOpportunityCustomFieldTab 1 param → 401404403409500501400405
PATCH
/rest/v2/opportunities/model/customFields/tabs/{tab_id}
Update an Opportunity Custom Field Tab
updateOpportunityCustomFieldTab 2 params body → 401404403409500501400405
GET
/rest/v2/opportunities/model/customFields/groups/{group_id}
Retrieve an Opportunity Custom Field Group
getOpportunityCustomFieldGroup 1 param → 401404403409500501400405
DELETE
/rest/v2/opportunities/model/customFields/groups/{group_id}
Delete an Opportunity Custom Field Group
deleteOpportunityCustomFieldGroup 1 param → 401404403409500501400405
PATCH
/rest/v2/opportunities/model/customFields/groups/{group_id}
Update an Opportunity Custom Field Group
updateOpportunityCustomFieldGroup 2 params body → 401404403409500501400405
GET
/rest/v2/opportunities/stageMoves
List Opportunity Stage Moves
listOpportunityStageMoves 4 params → 401404403409500501400405
GET
/rest/v2/opportunities/stageMoves/{stage_move_id}
Retrieve an Opportunity Stage Move
getOpportunityStageMove 1 param → 401404403409500501400405
GET
/rest/v2/opportunities/model
Retrieve Opportunity Custom Field Model
retrieveOpportunityCustomFieldModel → 401404403409500501400405

Schemas 52

The contract defines 52 schemas that model the data the API accepts and returns. The most detailed are RestV2Opportunity (25 properties), Opportunity (16 properties), UpdateOpportunityRequest (16 properties), CreateOpportunityRequest (13 properties). Each schema is shown below with its type and property counts.

DefaultHttpStatusCode
SimpleUser
object
3 properties
OpportunitySearchCommand
object
6 properties
OpportunityContact
object
9 properties 1 required
Opportunity
object
16 properties 3 required
SalesPipeline
object
6 properties
UpdateOpportunityRequest
object
opportunity
16 properties 3 required
HttpStatus
HttpStatusCode
object
6 properties
SimpleOpportunityStage
object
4 properties 1 required
StageDetails
object
4 properties
ObjectModel
object
2 properties
CustomFieldValue
object
2 properties
CustomFieldMetaData
object
7 properties
View
object
1 property
ModelAndView
object
7 properties
OpportunityList
object
4 properties
CustomFieldOption
object
2 properties
CheckListItemDetails
object
6 properties
UpdateOpportunityStageChecklistItem
object
4 properties 3 required
RestV2Opportunity
object
25 properties 3 required
ErrorDetails
object
2 properties
RestOpportunityStage
object
8 properties
UpdateCustomFieldMetaDataRequest
object
3 properties 1 required
ListOpportunityStagesResponse
object
2 properties
OpportunityContact_2
object
9 properties 1 required
UpdateOpportunityRequestV2
object
13 properties
ListCustomFieldTabsResponse
object
1 property
CreateCustomFieldOptionRequest
object
1 property
ListOpportunitiesResponse
object
2 properties
CreateOpportunityRequest
object
opportunity
13 properties 3 required
CreateCustomFieldRequest
object
5 properties 2 required
ChecklistItem
object
4 properties
CreateCustomFieldTabRequest
object
1 property
CustomFieldGroup
object
5 properties
OpportunityStage
object
4 properties 1 required
OpportunityStageMove
object
Historical record of an opportunity moving from one pipeline stage to another
9 properties
CreateOpportunityStageRequest
object
opportunity
5 properties 4 required
Error
object
4 properties
CustomField
object
2 properties
StageDetails_2
object
4 properties
CustomFieldTab
object
4 properties
CreateCustomFieldGroupRequest
object
2 properties
UpdateCustomFieldGroupRequest
object
3 properties
ObjectModel_2
object
2 properties
UpdateCustomFieldTabRequest
object
2 properties
CustomFieldMetaData_2
object
Metadata describing a custom field, including its type and options
9 properties
ListOpportunityStageMoveResponse
object
2 properties
RestV2User
object
3 properties
ListCustomFieldGroupsResponse
object
1 property
UpdateOpportunityStageRequest
object
5 properties
CreateOpportunityStageChecklistItem
object
3 properties 3 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

keap-opportunity-api-openapi.yml Raw ↑

Other APIs Keap publishes across the network.

Keap Affiliate API
Keap Automation API
Keap Campaigns API
Keap Category Discounts API
Keap Companies API
Keap Contacts API
Keap Email API
Keap Files API
Keap Free Trial Discounts API
Keap Lead Source Categories API
Keap Lead Source Expenses API
Keap Lead Source Recurring Expenses API
Where this information came from

This is an independent, third-party profile of Keap Opportunities API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.