> ## Documentation Index
> Fetch the complete documentation index at: https://docs.knotapi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List Merchants

> Retrieve a list of available merchants.



## OpenAPI

````yaml POST /merchant/list
openapi: 3.1.0
info:
  title: Knot API
  description: An API to interact with the Knot merchant connectivity platform.
  version: 1.0.0
servers:
  - url: https://development.knotapi.com
    description: Development server
security:
  - basicAuth: []
paths:
  /merchant/list:
    post:
      description: Retrieve a list of available merchants.
      operationId: merchant_list
      requestBody:
        description: The input parameters required for retrieving merchants.
        content:
          application/json:
            schema:
              type: object
              properties:
                type:
                  type: string
                  enum:
                    - card_switcher
                    - transaction_link
                    - shopping
                    - vault
                    - subscription_manager
                  description: Product for which the merchants are available.
                  example: card_switcher
                platform:
                  type: string
                  enum:
                    - ios
                    - android
                    - web
                  description: Platform for which the merchants are available.
                  example: ios
                search:
                  type: string
                  description: Name of a specific merchant.
                external_user_id:
                  type: string
                  description: >-
                    Your unique identifier for the user. The values of the
                    `status` parameter returned in the response when sending
                    `external_user_id` can be found
                    [here](https://docs.knotapi.com/api-reference/merchants/list-merchants-status).
                  deprecated: true
              required:
                - type
            example:
              type: card_switcher
              platform: ios
      responses:
        '200':
          description: Successful request.
          content:
            application/json:
              schema:
                description: Array of available merchants.
                oneOf:
                  - title: With platform in the request
                    type: array
                    description: '`Platform` included in the request'
                    items:
                      type: object
                      properties:
                        id:
                          type: integer
                          description: >-
                            Static unique ID of the merchant (across all
                            environments). This ID remains constant and does not
                            change.
                          example: 10
                        name:
                          type: string
                          description: Name of the merchant.
                          example: Uber
                        category:
                          type: string
                          description: Category of the merchant.
                          example: Transportation
                        logo:
                          type: string
                          description: Logo URL for the merchant.
                          example: >-
                            https://knot.imgix.net/merchants/KBQ5j6cN010PPpwbO7RpKGyDrCpsZ91FRhwnZp5u.png
                        popular:
                          type: boolean
                          description: >-
                            Whether the merchant is a popular merchant amongst
                            your unique audience.
                          example: true
                        min_sdk_version:
                          type: string
                          description: >-
                            The minimum SDK version (on the platform provided in
                            the request) for which the merchant is available.
                          example: 2.0.5
                  - title: Without platform in the request
                    type: array
                    description: No `platform` in the request
                    items:
                      type: object
                      properties:
                        id:
                          type: integer
                          description: >-
                            Static unique ID of the merchant (across all
                            environments). This ID remains constant and does not
                            change.
                          example: 10
                        name:
                          type: string
                          description: Name of the merchant.
                          example: Uber
                        category:
                          type: string
                          description: Category of the merchant.
                          example: Transportation
                        logo:
                          type: string
                          description: Logo URL for the merchant.
                          example: >-
                            https://knot.imgix.net/merchants/KBQ5j6cN010PPpwbO7RpKGyDrCpsZ91FRhwnZp5u.png
                        popular:
                          type: boolean
                          description: >-
                            Whether the merchant is a popular merchant amongst
                            your unique audience.
                          example: true
              examples:
                WithPlatformInRequest:
                  summary: With platform in the request.
                  value:
                    - id: 45
                      name: Walmart
                      category: Online shopping
                      logo: >-
                        https://knot.imgix.net/merchants/KBQ5j6cN010PPpwbO7RpKGyDrCpsZ91FRhwnZp5u.png
                      popular: true
                      min_sdk_version: 1.0.2
                WithoutPlatformInRequest:
                  summary: Without platform in the request.
                  value:
                    - id: 45
                      name: Walmart
                      category: Online shopping
                      logo: >-
                        https://knot.imgix.net/merchants/KBQ5j6cN010PPpwbO7RpKGyDrCpsZ91FRhwnZp5u.png
                      popular: true
        '401':
          description: Unauthorized request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                AuthFailed:
                  summary: Auth failed
                  value:
                    error_type: INVALID_INPUT
                    error_code: INVALID_API_KEYS
                    error_message: Invalid client_id or secret provided.
        '403':
          description: Forbidden request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                NoAccess:
                  summary: No access
                  value:
                    error_type: INVALID_REQUEST
                    error_code: NO_ACCESS
                    error_message: >-
                      The type is not enabled. Please contact Knot for access to
                      this endpoint.
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                InternalServerError:
                  summary: Unexpected server error
                  value:
                    message: Server Error
components:
  schemas:
    Error:
      type: object
      properties:
        error_type:
          type: string
          description: Type of error.
          enum:
            - INVALID_INPUT
            - INVALID_REQUEST
            - USER_ERROR
            - SESSION_ERROR
            - MERCHANT_ACCOUNT_ERROR
            - MERCHANT_ERROR
            - SUBSCRIPTION_ERROR
            - TRANSACTION_ERROR
            - CART_ERROR
          example: INVALID_REQUEST
        error_code:
          type: string
          description: Error code.
          enum:
            - INVALID_API_KEYS
            - INVALID_FIELD
            - INVALID_JWE
            - INVALID_CURSOR_FORMAT
            - USER_NOT_FOUND
            - MERCHANT_ACCOUNT_NOT_FOUND
            - MERCHANT_ACCOUNT_DISCONNECTED
            - SESSION_NOT_FOUND
            - EXTEND_NOT_SUPPORTED
            - MERCHANT_UNAVAILABLE
            - NO_ACCESS
            - TRANSACTION_NOT_FOUND
            - NO_TRANSACTIONS
            - SUBSCRIPTION_NOT_FOUND
            - ONGOING_OPERATION
            - CART_NOT_FOUND
            - FULFILLMENT_NOT_FOUND
          example: INVALID_FIELD
        error_message:
          type: string
          description: Detailed error message.
          example: The limit may not be greater than 10.
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: >-
        Basic authentication header of the form `Basic <encoded-value>`, where
        `<encoded-value>` is the base64-encoded string `username:password`. Use
        your `client_id` as the `username` and your `secret` as the `password`
        value.

````