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

Tackle.io Opportunities API

Create, read, update, and list co-sell opportunities — the partner-originated (Outbound / Partner Referral) and AWS-originated (Inbound/ AWS Referral) deals tracked in AWS Partner Central. Includes theopportunity history endpoint for inspecting cloud-side request andresponse detail.

Tackle.io Opportunities API is one of 27 APIs that Tackle.io 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 and an API reference.

This API exposes 8 operations across 5 paths, and defines 82 schemas. It is described by OpenAPI 3.2.0, at version 1.0.

Requests are made against 2 base URLs: https://aws.cosell.tackle.io, https://gcp.cosell.tackle.io.

8 operations 5 paths 82 schemas 5 GET3 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
1.0
Base URL
https://api.tackle.io
Authentication
HTTP Bearer
Resource Areas
1

Authentication & Security 1

Tackle.io Opportunities API declares 1 security scheme for authenticating requests. It accepts HTTP bearer tokens (MTM JWT) (bearerAuth). By default, every request must be authenticated.

  • bearerAuth — Tackle machine-to-machine access token sent as Authorization: Bearer .

Paths & Operations 8

Across 5 paths, the API surfaces 8 operations — 5 GET, 3 POST. Each is listed below with its method, path, parameters, and response codes.

Opportunities 8

Create, read, update, and list co-sell opportunities — the partner- originated (Outbound / Partner Referral) and AWS-originated (Inbound / AWS Referral) deals tracked in AWS Partn…

GET
/api/opportunities
List co-sell opportunities
listOpportunities 17 params → 200400401500
POST
/api/opportunities
Create a co-sell opportunity
createOpportunity 1 param body → 202400401409500
GET
/api/opportunities/{opportunity_id}
Get a co-sell opportunity
getOpportunity 1 param → 200401404500
POST
/api/opportunities/{opportunity_id}
Update a co-sell opportunity
updateOpportunity 2 params body → 202400401404409423500
GET
/api/opportunities/{opportunity_id}/events
List opportunity events
listOpportunityEvents 2 params → 200401500
GET
/api/opportunities/{id}
Get an opportunity by ID
getApiOpportunitiesById 1 param → 200400401403404500
POST
/api/opportunities/{id}
Update an opportunity
postApiOpportunitiesById 2 params body → 202400401403404409423500
GET
/api/opportunities/{id}/events
List the event history for an opportunity
listOpportunityHistory 3 params → 200400401403500

Schemas 82

The contract defines 82 schemas that model the data the API accepts and returns. The most detailed are Opportunity_2 (26 properties), ListOpportunitiesResponseItem (19 properties), OpportunityMetadata (19 properties), QualificationInfo (16 properties). Each schema is shown below with its type and property counts.

Account
object
7 properties
Error
object
Error envelope returned for typed error responses. Some 4xx and 5xx responses (such as direct Unauthorized and Internal Server Error responses) may instead ret…
1 property
DataMapper
object
1 property
Customer
object
2 properties
OpportunityResponse
object
9 properties
Address
object
5 properties
OpportunityInput
object
1 property
Marketing
object
5 properties
AwsOpportunityTeam
object
4 properties
ListOpportunitiesResponseItem
object
19 properties
SoftwareRevenue
object
4 properties
Insights
object
AWS-derived insights about the opportunity, populated by AWS Partner Central when available.
2 properties
LifeCycle
object
8 properties
Project
object
12 properties
ListOpportunitiesResponse
object
5 properties
Opportunity
object
12 properties
ListOpportunityEvents
object
8 properties 3 required
CreateOpportunityInput
object
4 properties
Contacts
array
OpportunityMetadata
object
19 properties 4 required
ExtensionStatus
string
Rebate extension status. Output only.
ExtensionReason
string
Rebate extension reason. Output only.
DecisionPhase
string
Decision phase for the opportunity.
QualificationInfo
object
Qualification information for the opportunity.
16 properties
Error_2
object
Error response body. The service emits only a human-readable message. A request identifier may be included in response headers for support and troubleshooting.
1 property
OpportunityTeamMember
object
Opportunity team member. Output only.
3 properties
ContractVehicle
string
Contract vehicle for an ISV opportunity.
Money
object
An amount of money with its currency type. The whole Money object is replaced atomically when included on update — there is no per-field merge of currencyCode,…
3 properties
OpportunityCRMInfo
object
CRM linkage for the opportunity. Both fields are nullable so that callers can explicitly clear them.
2 properties
HistoryOperationId
string
Operation identifier stored on history events returned by GET /api/opportunities/{id}/events. Treated as a free-form string on the wire: the documented values…
CustomerInfo
object
Customer information provided during opportunity creation.
3 properties
PhoneNumber
object
Wire-format phone number. See https://github.com/google/libphonenumber.
3 properties
Source
string
Indicates the origin of the opportunity: - SOURCEUNKNOWN — origin not recorded; should not be observed on supported responses. - GOOGLE — sourced by a Google s…
Region
string
Geographical region where the end customer is located. The partner needs sell authorization in this region to qualify for deal registration incentives.
Contact
object
Contact details.
4 properties
PartnerReadyToClose
string
Partner ready-to-close indicator. Can be edited after the opportunity is accepted. Setting to MIGRATIONIMPL corresponds to Closed/Won; setting to CLOSEDLOST co…
ProductFamily
string
Product family that the opportunity belongs to.
Stage
string
Sales stage of the opportunity. The STAGEUNSPECIFIED, MIGRATIONIMPL, CLOSEDLOST, and CLOSEDADMIN values are set only by the API on the integrator's behalf base…
Budget
string
Budget qualification. Required for regular and 2-tier opportunities; optional for ISV opportunities.
ProductCategory
string
Product category that the opportunity belongs to.
Industry
string
Customer's primary industry.
Role
string
Role of a customer contact. Most values are role categories that apply to any opportunity; CHRONICLESIEMCONTACT and CHRONICLESOARCONTACT are specific to engage…
OpportunityType
string
Indicates if the opportunity is a regular / ISV / 2-tier deal. If not specified, treated as REGULAR. Cannot be edited after the opportunity is accepted.
SupportLevel
string
Support level for an ISV opportunity.
IsvSolutionConnectInfo
object
Information for an opportunity that goes through Google's ISV Solution Connect program.
7 properties
OpportunityHistoryEventCloudRequest
object
One Google Cloud Channel call made on behalf of an opportunity history event. A single event may include multiple cloud requests (for example, when a sub-flow…
4 properties 3 required
OpportunityInfo
object
Contains details about the opportunity.
9 properties
Timeline
string
Timeline qualification.
CreateOpportunityResponse
object
2 properties 2 required
ExtensionRejectionReason
string
Rebate extension rejection reason. Output only.
SalesCycle
object
Information on the sales cycle.
4 properties
WinLossInfo
object
Win / loss details. Populated after the opportunity is closed. Output only.
7 properties
State
string
Lifecycle state of the opportunity: - STATEUNSPECIFIED — placeholder default; should not be sent on requests. - DRAFT — saved but not yet submitted to Google.…
ListOpportunityHistoryResponse
object
2 properties 1 required
UpdateOpportunityResponse
object
1 property 1 required
PostalAddress
object
A structured postal address compatible with Google's address formatting model. For most regions, populate regionCode, addressLines, locality, and postalCode; t…
11 properties
RebateExtension
object
Rebate extension. Output only.
5 properties
Authority
string
Authority qualification.
CreateOpportunityRequest
Tackle-shaped opportunity payload for create. The API validates up front that opportunityInfo and qualificationInfo are present and that qualificationInfo.lega…
Date
object
A calendar date. Any field may be zero to represent a partial date (for example, year: 2026, month: 0, day: 0 for "sometime in 2026"). The whole Date object is…
3 properties
PartnerInfo
object
Partner information populated after the opportunity is accepted.
11 properties
DeliveryModel
string
Delivery model for an ISV opportunity.
IncentiveType
string
Output only. Incentive program the opportunity is eligible for: - INCENTIVETYPEUNSPECIFIED — eligibility not yet determined. - DEALREGISTRATION — partner regis…
PhoneNumberShortCode
object
A short code — region-restricted phone number.
2 properties
OpportunityHistoryEventActivityDetails
object
Human-readable details about a history event, intended for display in opportunity audit trails.
2 properties
TackleOperationIdCreate
string
Tackle-side operation identifier accepted on the tackle-operation-id header by POST /api/opportunities. Only these two values are accepted; any other value (in…
CustomerContact
object
Customer contact. Output only.
5 properties
PartnerViewType
string
Indicates what view the partner has access to. Non-sourcing service partners have limited view; no updates are allowed on the opportunity in LIMITED view. Outp…
OpportunityLine
object
Opportunity line item. Output only.
7 properties
OpportunityHistoryEventCloudResponse
object
The Google Cloud Channel response received for a corresponding OpportunityHistoryEventCloudRequest.
5 properties 2 required
OpportunityAttributeSyncing
object
Subscription information for opportunities whose attributes are kept in sync with an upstream data source through Tackle's Data Mapper feature. Present only wh…
1 property
AccessLevel
string
Access level for an opportunity team member.
ListOpportunitiesResponse_2
object
5 properties 4 required
UpdateOpportunityRequest
Tackle-shaped opportunity payload for update. Only the fields the caller wants to change need to be present; the server merges with the existing opportunity. T…
Opportunity_2
object
Tackle's opportunity payload. Mirrors the Google Cloud Channel Opportunity (v1alpha1) schema and adds a $tkl-metadata block carrying Tackle-specific state — CR…
26 properties
OperationType
string
Transaction type for the opportunity: - OPERATIONTYPEUNSPECIFIED — placeholder default; should not be sent on create. - NEW — net-new transaction with a new cu…
TackleOperationIdUpdate
string
Tackle-side operation identifier accepted on the tackle-operation-id header by POST /api/opportunities/{id}. The create-side values (createOpportunity, createD…
OpportunityHistoryEvent
object
10 properties 4 required
OpportunityHistoryEventPrincipal
object
Actor attribution for a history event. For test-environment-only operations (acceptOpportunity, rejectOpportunity, closeByAdminOpportunity, confirmCloseWonOppo…
6 properties
CustomerDetails
object
Customer details used to create a new customer or map to an existing one.
5 properties
Need
string
Need qualification.
OpportunityMetadata_2
object
Tackle-specific metadata attached to every opportunity. Carried in the $tkl-metadata key of the payload.
13 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

tackleio-opportunities-api-openapi.yml Raw ↑

Other APIs Tackle.io publishes across the network.

Tackle.io Authentication API
Tackle.io Contracts API
Tackle.io Currencies API
Tackle.io Customers API
Tackle.io Disbursements API
Tackle.io Entitlements API
Tackle.io Groups API
Tackle.io Invitations API
Tackle.io Invoices API
Tackle.io Marketplace API
Tackle.io Metering API
Tackle.io Notifications API
Where this information came from

This is an independent, third-party profile of Tackle.io 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.