Rutter Customers API

The Customers API from Rutter — 2 operation(s) for customers.

Operations 2

GET /customers List commerce customers #
GET /customers/{id} Fetch commerce customer #

Documentation

Specifications

Schemas & Data

Other Resources

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/rutter:rutter-customers-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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

rutter-customers-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Rutter Customers API
  version: '2024-08-31'
  description: The Universal API for all major e-commerce platforms, accounting systems, and payment processors.
servers:
- url: https://production.rutterapi.com/versioned
  description: Production server
- url: https://sandbox.rutterapi.com/versioned
  description: Sandbox server
tags:
- name: Customers
paths:
  /customers:
    get:
      summary: List commerce customers
      operationId: listCommerceCustomers
      parameters:
      - name: access_token
        in: query
        required: true
        description: The access token of the connection.
        schema:
          $ref: '#/components/schemas/ListCustomersQuery/properties/access_token'
      - name: cursor
        in: query
        required: false
        description: Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.
        schema:
          $ref: '#/components/schemas/ListCustomersQuery/properties/cursor'
      - name: limit
        in: query
        required: false
        description: Used to limit the number of returned objects. Defaults to 50.
        schema:
          $ref: '#/components/schemas/ListCustomersQuery/properties/limit'
      - name: expand
        in: query
        required: false
        description: Include platform specific data (includes additional fields not provided by the Rutter object).
        schema:
          $ref: '#/components/schemas/ListCustomersQuery/properties/expand'
      - name: email
        in: query
        required: false
        description: An email to filter on.
        schema:
          $ref: '#/components/schemas/ListCustomersQuery/properties/email'
      - name: phone
        in: query
        required: false
        description: A phone number formatted using only numerics to filter on.
        schema:
          $ref: '#/components/schemas/ListCustomersQuery/properties/phone'
      - name: updated_at_max
        in: query
        required: false
        description: Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.
        schema:
          $ref: '#/components/schemas/ListCustomersQuery/properties/updated_at_max'
      - name: updated_at_min
        in: query
        required: false
        description: Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.
        schema:
          $ref: '#/components/schemas/ListCustomersQuery/properties/updated_at_min'
      - name: force_fetch
        in: query
        required: false
        description: Used to force a response even if the underlying connection has not finished its initial sync.
        schema:
          $ref: '#/components/schemas/ListCustomersQuery/properties/force_fetch'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListCustomersResponse'
              examples:
                ListCustomersResponse_Example:
                  $ref: '#/components/examples/ListCustomersResponse_Example'
      x-supported-platforms:
      - AMAZON
      - BIG_COMMERCE
      - CHARGEBEE
      - CHARGIFY
      - CLOVER
      - MAGENTO
      - MERCADOLIBRE
      - PRESTASHOP
      - SHOPEE
      - SHOPIFY
      - SQUARE
      - SQUARESPACE
      - STRIPE
      - WOO_COMMERCE
      x-sandbox-supported-platforms: []
      tags:
      - Customers
      x-summary-source: derived
  /customers/{id}:
    get:
      summary: Fetch commerce customer
      operationId: fetchCommerceCustomer
      parameters:
      - name: id
        in: path
        required: true
        description: The Rutter generated unique ID of the object.
        schema:
          $ref: '#/components/schemas/RutterIdPathParams/properties/id'
      - name: access_token
        in: query
        required: true
        description: The access token of the connection.
        schema:
          $ref: '#/components/schemas/CommonGetParamsWithExpand/properties/access_token'
      - name: expand
        in: query
        required: false
        description: Include platform specific data (includes additional fields not provided by the Rutter object).
        schema:
          $ref: '#/components/schemas/CommonGetParamsWithExpand/properties/expand'
      - name: force_fetch
        in: query
        required: false
        description: Used to force a response even if the underlying connection has not finished its initial sync.
        schema:
          $ref: '#/components/schemas/CommonGetParamsWithExpand/properties/force_fetch'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetCustomerResponse'
              examples:
                GetCustomerResponse_Example:
                  $ref: '#/components/examples/GetCustomerResponse_Example'
      x-supported-platforms:
      - AMAZON
      - BIG_COMMERCE
      - CHARGIFY
      - MAGENTO
      - MERCADOLIBRE
      - PRESTASHOP
      - SHOPIFY
      - SQUARE
      - SQUARESPACE
      - WOO_COMMERCE
      x-sandbox-supported-platforms: []
      tags:
      - Customers
      x-summary-source: derived
components:
  schemas:
    ListCustomersQuery:
      type: object
      properties:
        access_token:
          type: string
          format: uuid
          description: The access token of the connection.
        cursor:
          type: string
          description: Used to paginate to the next batch of objects. Should be a copy of the `next_cursor` value from the previous response.
        limit:
          type: integer
          description: Used to limit the number of returned objects. Defaults to 50.
        expand:
          type: array
          items:
            type: string
            enum:
            - platform_data
          description: Include platform specific data (includes additional fields not provided by the Rutter object).
        email:
          type: string
          description: An email to filter on.
        phone:
          type: string
          description: A phone number formatted using only numerics to filter on.
        updated_at_max:
          type: integer
          description: Used to filter objects with a `updated_at` value less than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.
        updated_at_min:
          type: integer
          description: Used to filter objects with a `updated_at` value greater than or equal to the supplied value. Should be a [Unix time](https://en.wikipedia.org/wiki/Unix_time) in milliseconds.
        force_fetch:
          type: string
          enum:
          - 'true'
          - 'false'
          description: Used to force a response even if the underlying connection has not finished its initial sync.
      required:
      - access_token
    RutterIdPathParams:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: The Rutter generated unique ID of the object.
      required:
      - id
    CommonGetParamsWithExpand:
      type: object
      properties:
        access_token:
          type: string
          format: uuid
          description: The access token of the connection.
        expand:
          type: array
          items:
            type: string
            enum:
            - platform_data
          description: Include platform specific data (includes additional fields not provided by the Rutter object).
        force_fetch:
          type: string
          enum:
          - 'true'
          - 'false'
          description: Used to force a response even if the underlying connection has not finished its initial sync.
      required:
      - access_token
    Connection:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: The UUID of the connection. Generated by Rutter.
        orgId:
          type: string
          format: uuid
          description: Your organization id.
        platform:
          $ref: '#/components/schemas/Platform'
      required:
      - id
      - orgId
      - platform
      examples:
      - Connection_Example:
          $ref: '#/components/examples/Connection_Example'
    Customers:
      type: array
      items:
        $ref: '#/components/schemas/Customer'
    Platform:
      type: string
      enum:
      - AMAZON
      - EBAY
      - ETSY
      - FNAC
      - WALMART
      - SHOPEE
      - LAZADA
      - MERCADOLIBRE
      - ALIBABA
      - WAYFAIR
      - SHEIN
      - NOON
      - SHOPLINE
      - PRESTASHOP
      - SHOPIFY
      - MAGENTO
      - WOO_COMMERCE
      - SQUARESPACE
      - WIX
      - SHOPER
      - SHOPLAZZA
      - BIG_COMMERCE
      - SALLA
      - ZID
      - TIKTOKSHOP
      - COMMERCELAYER
      - WEBFLOW
      - GUMROAD
      - ECWID
      - PAYPAL
      - SQUARE
      - STRIPE
      - CLOVER
      - MOLLIE
      - PAYNL
      - AUTHORIZENET
      - RECHARGE
      - CHARGIFY
      - CHARGEBEE
      - RECURLY
      - KASHFLOW
      - SAGE_INTACCT
      - SAGE_INTACCT_V2
      - DYNAMICS365
      - DYNAMICS365FO
      - ZOHOBOOKS
      - EXACTONLINE
      - FREEAGENT
      - QUICKBOOKS
      - QUICKBOOKS_DESKTOP
      - FRESHBOOKS
      - XERO
      - SAGE_BUSINESS_CLOUD
      - SAGE_50
      - VISTA
      - NETSUITE
      - WAVE
      - DUALENTRY
      - CAMPFIRE
      - RILLET
      - SOFTLEDGER
      - VISMA
      - SPIRIS
      - LEXWARE
      - MONEYBIRD
      - SAGE200CLOUD
      - MX
      - PLAID
      - TELLER
      - RAMP
      - ODOO
      - ACUMATICA
      - FULFIL
      - TALLY
      - SAPBUSINESSONE
      - SAPS4HANA
      - WORKDAY
      - ANFIX
      - ORACLEFUSION
      - HOLDED
      - MYOBBUSINESS
      - FORTNOX
      - GOOGLE
      - FACEBOOK
      - TIKTOK
      - INTUIT_BANK_FEEDS
      - PLAID_BANK_FEEDS
      - SAGE
      - SAGE_BANK_FEEDS
      - YODLEE_BANK_FEEDS
      - QUICKBOOKS_HRIS
      - BAMBOO_HR
      - GUSTO
      - DEEL
      - RIPPLING
      description: The underlying platform.
    Customer:
      type: object
      properties:
        id:
          type:
          - string
          - 'null'
          description: The Rutter generated unique ID of the customer.
          x-rutter-platforms:
            AMAZON: {}
            BIG_COMMERCE: {}
            CLOVER: {}
            SHOPIFY: {}
            STRIPE: {}
        platform_id:
          type:
          - string
          - 'null'
          description: The platform specific ID of the customer.
          x-rutter-platforms:
            BIG_COMMERCE: {}
            CLOVER: {}
            SHOPIFY: {}
            STRIPE: {}
        email:
          type:
          - string
          - 'null'
          description: The email of the customer.
          x-rutter-platforms:
            AMAZON: {}
            BIG_COMMERCE: {}
            SHOPIFY: {}
            STRIPE: {}
        first_name:
          type:
          - string
          - 'null'
          description: The first name of the customer.
          x-rutter-platforms:
            BIG_COMMERCE: {}
            CLOVER: {}
            SHOPIFY: {}
        last_name:
          type:
          - string
          - 'null'
          description: The last name of the customer.
          x-rutter-platforms:
            BIG_COMMERCE: {}
            CLOVER: {}
            SHOPIFY: {}
        phone:
          type:
          - string
          - 'null'
          description: The phone number of the customer.
          x-rutter-platforms:
            BIG_COMMERCE: {}
        orders:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                description: The Rutter generated unique ID of the order.
                x-rutter-platforms:
                  SHOPIFY: {}
            required:
            - id
            additionalProperties: false
          description: An array of Rutter IDs of [Orders](/rest/version/orders) linked to the customer.
          x-rutter-platforms:
            SHOPIFY: {}
        created_at:
          type:
          - string
          - 'null'
          description: The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the customer was created.
          x-rutter-platforms:
            AMAZON: {}
            BIG_COMMERCE: {}
            CLOVER: {}
            SHOPIFY: {}
            STRIPE: {}
        updated_at:
          type:
          - string
          - 'null'
          description: The [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp that the customer was last updated.
          x-rutter-platforms:
            AMAZON: {}
            BIG_COMMERCE: {}
            SHOPIFY: {}
            STRIPE: {}
        platform_data:
          type: object
          additionalProperties: {}
          description: The raw platform data corresponding to the Rutter object.
      required:
      - id
      - email
      - first_name
      - last_name
      - phone
      - orders
      - created_at
      - updated_at
      examples:
      - Customer_Example:
          $ref: '#/components/examples/Customer_Example'
    GetCustomerResponse:
      type: object
      properties:
        customer:
          $ref: '#/components/schemas/Customer'
          type:
          - 'null'
        connection:
          $ref: '#/components/schemas/Connection'
      required:
      - customer
      - connection
      examples:
      - GetCustomerResponse_Example:
          $ref: '#/components/examples/GetCustomerResponse_Example'
    ListCustomersResponse:
      type: object
      properties:
        customers:
          $ref: '#/components/schemas/Customers'
        next_cursor:
          type:
          - string
          - 'null'
        connection:
          $ref: '#/components/schemas/Connection'
      required:
      - customers
      - next_cursor
      - connection
      examples:
      - ListCustomersResponse_Example:
          $ref: '#/components/examples/ListCustomersResponse_Example'
  examples:
    Customer_Example:
      value:
        id: 00000000-0000-0000-0000-000000000000
        platform_id: '12345678'
        email: eric@rutter.com
        first_name: Eric
        last_name: Yu
        phone: '1234567890'
        orders:
        - id: 00000000-0000-0000-0000-000000000000
        created_at: '2023-01-02T02:34:56.000Z'
        updated_at: '2023-01-02T02:34:56.000Z'
        platform_data:
          id: 123
          data: Varies by platform
    GetCustomerResponse_Example:
      value:
        customer:
          id: 00000000-0000-0000-0000-000000000000
          platform_id: '12345678'
          email: eric@rutter.com
          first_name: Eric
          last_name: Yu
          phone: '1234567890'
          orders:
          - id: 00000000-0000-0000-0000-000000000000
          created_at: '2023-01-02T02:34:56.000Z'
          updated_at: '2023-01-02T02:34:56.000Z'
          platform_data:
            id: 123
            data: Varies by platform
        connection:
          id: 00000000-0000-0000-0000-000000000000
          orgId: 00000000-0000-0000-0000-000000000000
          platform: SHOPIFY
    ListCustomersResponse_Example:
      value:
        customers:
        - id: 00000000-0000-0000-0000-000000000000
          platform_id: '12345678'
          email: eric@rutter.com
          first_name: Eric
          last_name: Yu
          phone: '1234567890'
          orders:
          - id: 00000000-0000-0000-0000-000000000000
          created_at: '2023-01-02T02:34:56.000Z'
          updated_at: '2023-01-02T02:34:56.000Z'
          platform_data:
            id: 123
            data: Varies by platform
        next_cursor: MTY3NDgzMTk0Ml82MDY4ZDI0ZC02NGRmLTRmN2EtYTM0Ny0zN2ZmNjY5MGVmMjU=
        connection:
          id: 00000000-0000-0000-0000-000000000000
          orgId: 00000000-0000-0000-0000-000000000000
          platform: SHOPIFY
    Connection_Example:
      value:
        id: 00000000-0000-0000-0000-000000000000
        orgId: 00000000-0000-0000-0000-000000000000
        platform: SHOPIFY