PartsTech Shops API

Shop methods

Operations 2

GET /shops Get Shop List #
GET /shops/{shopId} Get Shop #

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/partstech-shops-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

partstech-shops-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 2.021.1
  title: PartsTech Shops API
  description: '# Rate Limiting


    Requests can be limited by user requests, by private partner requests and by all requests with partner''s credentials.'
  x-logo:
    url: https://partstech.com/wp-content/uploads/2025/03/PartsTech_OEC-compnay_logo.svg
    altText: PartsTech logo
servers:
- url: https://api.partstech.com
  description: Production server
- url: https://api.beta.partstech.com
  description: Beta server
tags:
- name: Shops
  description: Shop methods
  x-displayName: Shops
paths:
  /shops:
    get:
      summary: Get Shop List
      description: 'Search shops by `name`, `username` or `email`.


        **Note**. It is allowed to receive only shops that are connected to the partner who made the request.'
      operationId: searchShops
      x-operation-name: GetAllShops
      tags:
      - Shops
      security:
      - bearerAuth:
        - partner
      parameters:
      - name: name
        in: query
        schema:
          type: string
      - name: username
        in: query
        schema:
          type: string
          minLength: 3
          pattern: .{3,}
        example: mechanic
      - name: email
        in: query
        schema:
          type: string
          minLength: 3
          pattern: .{3,}
        example: man
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/perPage'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  allOf:
                  - $ref: '#/components/schemas/EntireShop'
                  - type: object
                    required:
                    - users
                    properties:
                      users:
                        type: array
                        items:
                          $ref: '#/components/schemas/User'
  /shops/{shopId}:
    get:
      summary: Get Shop
      description: 'Return Shop by shopId.


        It is allowed to receive only shops that are connected to the partner who made the request.'
      operationId: getShopById
      x-operation-name: GetShop
      tags:
      - Shops
      security:
      - bearerAuth:
        - partner
      parameters:
      - name: shopId
        in: path
        required: true
        schema:
          type: integer
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/EntireShop'
                - type: object
                  required:
                  - users
                  properties:
                    users:
                      type: array
                      items:
                        $ref: '#/components/schemas/User'
components:
  schemas:
    BriefShop:
      type: object
      required:
      - id
      - name
      - phone
      - demo
      properties:
        id:
          type: integer
          example: 1
          description: PartsTech ID of a shop.
        name:
          type: string
          example: Mechanic Shop
        phone:
          type: string
          example: (777) 777-7777 x111
        cellphone:
          type:
          - string
          - 'null'
          example: (777) 777-7777 x111
        demo:
          type: boolean
          example: false
    EntireShop:
      allOf:
      - $ref: '#/components/schemas/BriefShop'
      - type: object
        required:
        - pickUpRadius
        - shippingAddress
        - billingAddress
        properties:
          pickUpRadius:
            type: integer
            minimum: 0
            example: 25
          otherBusinessName:
            type:
            - string
            - 'null'
          shippingAddress:
            $ref: '#/components/schemas/Address'
          billingAddress:
            $ref: '#/components/schemas/Address'
    User:
      type: object
      required:
      - username
      - email
      - enabled
      - lastLogin
      - allowOrderEmails
      - firstName
      - lastName
      - demo
      properties:
        username:
          type: string
          example: mechanic
        email:
          type: string
          example: iron-man@gmail.com
        enabled:
          type: boolean
          example: true
          description: Shows if user is activated.
        lastLogin:
          type:
          - string
          - 'null'
          format: date-time
          description: Shows date and time of last user login. ISO 8601/RFC 3339, UTC
        registrationDate:
          type:
          - string
          - 'null'
          format: date
          description: Shows date of user registration.
        allowOrderEmails:
          type: boolean
          example: true
        firstName:
          type: string
          example: Iron
        lastName:
          type: string
          example: Man
        timeZone:
          type:
          - string
          - 'null'
          example: America/New_York
        demo:
          type: boolean
          example: false
    Address:
      type: object
      description: Address of the user's shop
      required:
      - address1
      - city
      - state
      - zipCode
      properties:
        address1:
          type: string
          example: 1 Broadway
        address2:
          type:
          - string
          - 'null'
          example: 14th Floor
        city:
          type: string
          example: Cambridge
        state:
          description: 'ISO 3166-2: Second part. Example for US-MA - MA.'
          type: string
          minLength: 2
          maxLength: 2
          pattern: \w{2,2}
          example: MA
        zipCode:
          type: string
          pattern: (^\d{5}$)|(^\d{5}-\d{4}$)
          example: '02142'
        country:
          description: ISO 3166-1 alpha-2
          type: string
          minLength: 2
          maxLength: 2
          pattern: \w{2,2}
          default: US
          example: US
  parameters:
    perPage:
      name: perPage
      in: query
      schema:
        type: integer
        enum:
        - 10
        - 25
        - 50
        - 100
      x-serializer-class: com.partstech.partnerapi.serialization.NullableInt
      example: 50
      description: 'Records per request. Default: 50'
    page:
      name: page
      in: query
      schema:
        type: integer
        minimum: 1
      x-serializer-class: com.partstech.partnerapi.serialization.NullableInt
      example: 2
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: "Get access to data while protecting your account credentials.\nToken (a JWT token) are also a safer and more secure way to give you access.\n\nIt provides two ways of access:\n - `user` - Give an access to user methods.\n - `partner` - Give an acess to partner methods.\n\nTo use this way you need:\n1. Get an access token. See [\"Authentication and Access\"](#operation/getAcessToken).\n2. Add a header in the request\n```\nAuthorization: Bearer <accessToken>\n```\n3. Refresh tokens, when it expires, using `refreshToken`. See [\"Authentication and Access\"](#operation/refreshAccessToken). **Deprecated**.\nGenerate a new token after an expiration of previous instead of refreshing .\n"
    apiKeyAuth:
      type: apiKey
      in: header
      name: credentials
      description: "It is a deprecated way to get access to the methods, used only in the methods, that were in the previous version.\n\nIt provides two ways of an access:\n - `user` - Give access to user methods.\n - `partner` - Give acess to partner methods.\n\nTo use this way you need to add credentials in the request body, where it is allowed, in a next format:\n - for user methods:\n```\n\"credentials\": {\n    \"user\": {\n      \"id\": \"username\",\n      \"key\": \"APIKey\"\n    },\n    \"partner\": {\n      \"id\": \"username\",\n      \"key\": \"APIKey\"\n    }\n}\n```\n - for partner methods:\n```\n\"credentials\": {\n    \"partner\": {\n      \"id\": \"username\",\n      \"key\": \"APIKey\"\n    }\n}\n```\n\nFor example content of method [`Submit Cart`](#operation/submitCart) will be modified:\n```\n{\n  \"sessionId\": \"123asjkdhyr34234\"\n}\n```\n\n```\n{\n  \"sessionId\": \"123asjkdhyr34234\",\n  \"credentials\": {\n    \"user\": {\n      \"id\": \"mechanic\",\n      \"key\": \"Mechanic's API key\"\n    },\n    \"partner\": {\n      \"id\": \"partner name\",\n      \"key\": \"partner's API key\"\n    }\n  }\n}\n```\n"
x-tagGroups:
- name: Authentication
  tags:
  - auth
- name: Punchout
  tags:
  - punchout_quote
- name: Cart
  tags:
  - punchout-cart
  - session-cart
  - callback-cart
  - punchout-orders
  - custom-cart
- name: Catalog
  tags:
  - vin
  - search
  - quoting
  - parts
  - tires
  - brands
- name: Taxonomy
  tags:
  - pcdb
  - vcdb
  - jobs
- name: Profile
  tags:
  - user
  - shop
  - supplier_preferences
  - orders
- name: Partner
  tags:
  - users
  - shops
  - ex-permissions
  - partner-orders
  - auto-connect
- name: Others
  tags:
  - suppliers
  - local-inventory
- name: Motor Taxonomy
  tags:
  - motor-labor
  - motor-maintenance-schedules
  - motor-fluids
  - motor-specifications
- name: Mitchell1 Taxonomy
  tags:
  - mitchell1
  - mitchell1-labor