Tackle Partners API

AWS Marketplace partner (reseller) reference data.

OpenAPI Specification

tackle-partners-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Tackle Authentication Partners API
  description: Authenticated programmatic access to Tackle's webhooks, metering, private offers, and more.
  version: 1.0.0
  contact:
    name: Tackle Support
    email: support@tackle.io
    url: https://tackle.io
servers:
- url: https://api.tackle.io
tags:
- name: Partners
  description: AWS Marketplace partner (reseller) reference data.
paths:
  /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'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
components:
  responses:
    Forbidden:
      description: Caller is authenticated but not authorized for this resource.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Unauthorized:
      description: Missing or invalid Tackle JWT.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  schemas:
    Error:
      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
    Partner:
      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
  securitySchemes:
    BearerAuth:
      description: The Tackle API requires a JWT for authentication. You can get this by [getting your API credentials](https://developers.tackle.io/docs/how-to-get-an-m2m-client-id-and-secret) from the Tackle Platform then [retrieving your Access Token](https://developers.tackle.io/docs/getting-an-access-token) using our Authentication endpoint.
      type: http
      scheme: bearer
      bearerFormat: JWT
    BasicAuthCallback:
      description: Use `basic` for [basic HTTP authentication](https://en.wikipedia.org/wiki/Basic_access_authentication); this is only used for `callbacks`
      type: http
      scheme: basic
    HeaderApiKeyAuthCallback:
      description: Use `header_api_key` to specify a custom HTTP request header for authentication. Requests from Tackle will use the specified HTTP header for outbound requests to your Webhook URL; this is only used for `callbacks`'
      type: apiKey
      name: subscription-key
      in: header
    Oauth2AuthCallback:
      description: This auth-type is for `oauth2` client credentials flow. We will use the client_id and client_secret to call the token_url to get an access token; this is only used for `callbacks`'
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: /oauth/token
externalDocs:
  description: Tackle Developer Hub and API Documentation
  url: https://developers.tackle.io
x-readme:
  explorer-enabled: false
  proxy-enabled: true
  samples-enabled: true