Tackle.io Partners API

Look up partner organizations in Microsoft Partner Center. Use the returned `organizationId` when adding a non-Microsoft partner via `inviteContexts`.

Operations 2

POST /api/partnerLookup Lookup partner details in Partner Center #
GET /partners List AWS Marketplace Partners #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/tackleio-partners-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

tackleio-partners-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Tackleio Partners API
  version: '1.0'
  description: 'Operations tagged Partners across 2 of this provider''s published API definitions: tackleio-cosell-msft-openapi.json, tackleio-offers-aws-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://msft.cosell.tackle.io
  description: Microsoft Co-Sell production endpoint
- url: https://aws.offers.tackle.io/api
  description: AWS Offers Service
tags:
- name: Partners
  description: 'Look up partner organizations in Microsoft Partner Center.

    Use the returned `organizationId` when adding a non-Microsoft

    partner via `inviteContexts`.'
paths:
  /api/partnerLookup:
    post:
      operationId: partnerLookup
      summary: Lookup partner details in Partner Center
      description: 'Searches Microsoft Partner Center for partner organizations

        matching the supplied search text. Use the returned

        `organizationId` when adding a non-Microsoft partner to a

        referral via `inviteContexts`. Returns an empty `partners`

        array when no matches are found.'
      tags:
      - Partners
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                searchText:
                  type: string
                  description: Search text used to lookup the partner
                  example: Example Corporation
              required:
              - searchText
      responses:
        '200':
          description: Response containing the results of the partner lookup
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: integer
                    format: int64
                    description: The number of matching partners in the response
                    example: 1
                  partners:
                    type: array
                    items:
                      $ref: '#/components/schemas/Partner'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/InternalServerError'
      security:
      - bearerAuth: []
    servers:
    - url: https://msft.cosell.tackle.io
      description: Microsoft Co-Sell production endpoint
  /partners:
    get:
      summary: List AWS Marketplace Partners
      description: 'Returns a curated list of AWS Marketplace resale partners with their

        company names and AWS account IDs. Use this list to populate a

        partner picker when creating a partner (resale) private offer.


        **Required RBAC permission:** `offers:CreateDraftOffer`'
      operationId: listPartners
      tags:
      - Partners
      security:
      - TackleJwt: []
      responses:
        '200':
          description: List of AWS Marketplace partners.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Partner_2'
        '401':
          $ref: '#/components/responses/Unauthorized_2'
        '403':
          $ref: '#/components/responses/Forbidden_2'
    servers:
    - url: https://aws.offers.tackle.io/api
      description: AWS Offers Service
components:
  schemas:
    Error:
      type: object
      description: 'Standard error envelope returned by this API. The `message` field is included

        for most 4xx responses raised by request validation. For 401, 403, and 500

        responses (and for `GET /api/referrals/{referral_id}` 404 responses) the body is

        either `{}` or omitted entirely.'
      properties:
        message:
          type: string
          description: Human-readable description of the error condition.
          example: Your request could not be processed.
    Partner:
      type: object
      properties:
        organizationId:
          type: string
          description: The organization ID of the partner.
          example: 26adabec-cc1c-42ed-a63b-849dbf47b95d
        name:
          type: string
          description: The name of the partner.
          example: Example Corporation
        address:
          type: object
          description: The address of the partner.
          properties:
            addressLine1:
              type: string
              example: 1 Example Way
            addressLine2:
              type: string
            city:
              type: string
              example: Redmond
            state:
              type: string
              example: Washington
            postalCode:
              type: string
              example: '98053'
            region:
              type: string
              example: United States
            country:
              type: string
              description: Two digit country code
              example: US
    Partner_2:
      type: object
      description: AWS Marketplace partner (reseller).
      properties:
        name:
          type: string
          description: Partner company name.
          example: RiskQ, Inc,
        awsAccountId:
          type: string
          description: AWS account ID (12-digit string).
          pattern: ^\d{12}$
          example: '977757234053'
      required:
      - awsAccountId
    Error_2:
      type: object
      description: 'Error response. Endpoints in the **Private Offers** and **Marketplace**

        tags return the error in a `message` field. The **Partners** endpoint

        returns the error in an `error` field. At least one of the two will

        always be populated.

        '
      properties:
        message:
          type: string
          description: Error message (Private Offers and Marketplace endpoints).
          example: private offer not found
        error:
          type: string
          description: Error message (Partners endpoint).
          example: authorization failed
  responses:
    Forbidden:
      description: 'The authenticated principal does not have permission to perform this operation.

        The response body is `{}` — the `message` field is omitted.'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example: {}
    InternalServerError:
      description: 'An unexpected error occurred while processing the request. The response body is

        empty.'
    BadRequest:
      description: 'The request was malformed or could not be processed. Returned when the JSON body

        cannot be parsed, when a required field is missing, when an unsupported

        `tackle-operation-id` is supplied, or when a referenced CRM ID is invalid.'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            message: Your request could not be processed.
    Unauthorized:
      description: 'The request did not include a valid Tackle MTM access token, so no principal

        could be established. The response body is `{}` — the `message` field is omitted.'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example: {}
    Forbidden_2:
      description: Caller is authenticated but not authorized for this resource.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error_2'
    Unauthorized_2:
      description: Missing or invalid Tackle JWT.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error_2'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: MTM JWT
      description: 'Tackle machine-to-machine access token sent as `Authorization: Bearer <access_token>`.'
    TackleJwt:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: 'Tackle-issued JWT bearer token. Pass as

        `Authorization: Bearer <jwt>`. The token must include a vendor ID

        claim and the principal must hold the per-endpoint RBAC permission

        listed in each operation''s description.

        '
x-refined-from:
- tackleio-cosell-msft-openapi.json
- tackleio-offers-aws-openapi.json