Tekmetric Customers API

Shop customers and their contact information.

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/tekmetric-customers-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 email required.

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

OpenAPI Specification

tekmetric-customers-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Tekmetric Appointments Customers API
  description: Tekmetric is a cloud-based auto repair shop management platform. Its REST API is partner-gated - access requires requesting credentials at api.tekmetric.com and Tekmetric's approval (reported at roughly 2-3 weeks); there is no self-serve signup or public API reference. The endpoints, parameters, and response envelope documented here are sourced from beetlebugorg/tekmetric-mcp, an independent open-source client that holds approved credentials and calls the live API - not from an official Tekmetric API reference document. Only read (GET) endpoints are documented because that is all the reference client implements; write endpoints may exist but are not evidenced in any public source.
  version: v1
  contact:
    name: Tekmetric
    url: https://www.tekmetric.com/
  x-source-note: Endpoint shapes confirmed via github.com/beetlebugorg/tekmetric-mcp (pkg/tekmetric/*.go), an unofficial, independently maintained client, not an official Tekmetric-published specification.
servers:
- url: https://shop.tekmetric.com/api/v1
  description: Production
- url: https://sandbox.tekmetric.com/api/v1
  description: Sandbox
security:
- oauth2: []
tags:
- name: Customers
  description: Shop customers and their contact information.
paths:
  /customers:
    get:
      operationId: listCustomers
      tags:
      - Customers
      summary: List or search customers
      description: Lists a shop's customers, optionally filtered by a search term (name, email, or phone) and customer attributes.
      parameters:
      - $ref: '#/components/parameters/Shop'
      - $ref: '#/components/parameters/Page'
      - $ref: '#/components/parameters/Size'
      - name: search
        in: query
        required: false
        description: Free-text search across name, email, and phone.
        schema:
          type: string
      - name: eligibleForAccountsReceivable
        in: query
        required: false
        schema:
          type: boolean
      - name: okForMarketing
        in: query
        required: false
        schema:
          type: boolean
      - name: customerTypeId
        in: query
        required: false
        schema:
          type: integer
      responses:
        '200':
          description: A page of customers.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustomerPage'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /customers/{id}:
    parameters:
    - $ref: '#/components/parameters/Id'
    get:
      operationId: getCustomer
      tags:
      - Customers
      summary: Get a customer
      description: Retrieves a single customer's contact info, addresses, and marketing/accounts-receivable flags by ID.
      responses:
        '200':
          description: The requested customer.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Customer'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  schemas:
    Page:
      type: object
      description: Spring Data Page envelope used by all list endpoints.
      properties:
        totalPages:
          type: integer
        totalElements:
          type: integer
        first:
          type: boolean
        last:
          type: boolean
        size:
          type: integer
        number:
          type: integer
        numberOfElements:
          type: integer
    Customer:
      type: object
      properties:
        id:
          type: integer
        firstName:
          type: string
        lastName:
          type: string
        email:
          type: string
        phone:
          type: array
          items:
            $ref: '#/components/schemas/Phone'
        address:
          $ref: '#/components/schemas/Address'
        eligibleForAccountsReceivable:
          type: boolean
        okForMarketing:
          type: boolean
        customerTypeId:
          type: integer
    Phone:
      type: object
      properties:
        id:
          type: integer
        number:
          type: string
        type:
          type: string
    Address:
      type: object
      properties:
        id:
          type: integer
        address1:
          type: string
        address2:
          type: string
        city:
          type: string
        state:
          type: string
        zip:
          type: string
        streetAddress:
          type: string
        fullAddress:
          type: string
    CustomerPage:
      allOf:
      - $ref: '#/components/schemas/Page'
      - type: object
        properties:
          content:
            type: array
            items:
              $ref: '#/components/schemas/Customer'
  parameters:
    Shop:
      name: shop
      in: query
      required: false
      description: The shop ID to scope the request to.
      schema:
        type: integer
    Id:
      name: id
      in: path
      required: true
      description: The numeric ID of the resource.
      schema:
        type: integer
    Page:
      name: page
      in: query
      required: false
      description: Zero-based page number.
      schema:
        type: integer
        default: 0
    Size:
      name: size
      in: query
      required: false
      description: Page size.
      schema:
        type: integer
        default: 20
  responses:
    NotFound:
      description: The requested resource was not found.
    Unauthorized:
      description: Missing, invalid, or revoked access token.
  securitySchemes:
    oauth2:
      type: oauth2
      description: OAuth 2.0 client credentials grant. Requires an approved Client ID/Secret issued by Tekmetric after a manual request-access review (reported at roughly 2-3 weeks).
      flows:
        clientCredentials:
          tokenUrl: https://shop.tekmetric.com/api/v1/oauth/token
          scopes: {}