Erply Franchise Products API

The Franchise Products API from Erply — 2 operation(s) for franchise products.

Operations 2

POST /v1/franchise-product/hq-to-store/{hqProductId} Copies the hq product to the store
GET /v1/franchise-product/search Search product with special franchise rules

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/erply-franchise-products-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

erply-franchise-products-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: "\n\n## Overview\n\n\n\nThis application offers an API for managing assignments and tasks.\n\n\n\nGraphQL endpoint for the same API is [also available](/graph)\n\n\n\n<details><summary>Authentication</summary>\n\n\n\n> \n\n> Authenticate using your Erply credentials and get a sessionKey. This sessionKey and your Erply clientCode must be provided in the HTTP headers of every request. You do not have to authenticate against this API - valid Erply sessionKey-s from other sources are also acceptable. To authenticate using this API, use the `POST /api/v1/auth` endpoint.\n\n>\n\n</details>\n\n"
  title: assignments Assortment Franchise Products API
  contact: {}
  version: 2.36.5
tags:
- name: Franchise Products
paths:
  /v1/franchise-product/hq-to-store/{hqProductId}:
    post:
      security:
      - sk: []
      - cc: []
      - jwt: []
      description: Takes an id of the hq product and creates a copy of it to the store.
      tags:
      - Franchise Products
      summary: Copies the hq product to the store
      parameters:
      - description: hq product ID
        name: hqProductId
        in: path
        required: true
        schema:
          type: integer
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/products.ProductCopiedToStoreResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.MessageResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.MessageResponse'
  /v1/franchise-product/search:
    get:
      security:
      - sk: []
      - cc: []
      - jwt: []
      description: 'Searches for products in both current store and its hq.

        If the desired product does not have store id then before it can be used in the store

        it needs to be moved there with the _/v1/franchise-product/hq-to-store/{hqProductId}_ call.

        Note that the results here cannot be paginated or sorted and the amount of records returned is limited.'
      tags:
      - Franchise Products
      summary: Search product with special franchise rules
      parameters:
      - description: Supply the warehouse ID to get the pricing api price for.
        name: warehouseId
        in: query
        required: true
        schema:
          type: integer
      - description: Customer ID. Used to calculate the pricing api price when provided.
        name: customerId
        in: query
        schema:
          type: integer
      - description: Include or exclude non-stock products. Both will be returned by default.
        name: nonStockProducts
        in: query
        schema:
          type: string
          enum:
          - all
          - only
          - exclude
      - description: Return only products that are in stock.
        name: isInStock
        in: query
        schema:
          type: boolean
      - description: 'items to take, default: 20, max: 200'
        name: take
        in: query
        schema:
          type: integer
      - description: the filter parameter is explained in the `Filtering & Sorting` section on top of the Swagger documentation
        name: filter
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/products.ProductFranchiseSearchResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.MessageResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/responses.MessageResponse'
components:
  schemas:
    products.ProductFranchiseUnit:
      type: object
      properties:
        id:
          type: integer
        name:
          description: /This field supports more languages. Please read Translatable names and descriptions block in the documentation.
          $ref: '#/components/schemas/Translatable'
    products.ProductCopiedToStoreResponse:
      type: object
      properties:
        hq_product_id:
          type: integer
        store_product_id:
          type: integer
    products.ProductFranchiseStockResponse:
      type: object
      properties:
        stock:
          type: number
        warehouseId:
          type: integer
    products.ProductFranchiseSearchResponse:
      type: object
      properties:
        code:
          type: string
        group:
          $ref: '#/components/schemas/products.ProductFranchiseGroup'
        hq_product_id:
          type: integer
        name:
          description: /This field supports more languages. Please read Translatable names and descriptions block in the documentation.
          $ref: '#/components/schemas/Translatable'
        price:
          type: number
        pricing_api_price:
          type: number
        pricing_api_price_with_tax:
          type: number
        stock:
          $ref: '#/components/schemas/products.ProductFranchiseStockResponse'
        store_product_id:
          type: integer
        suggested_retail_price:
          type: number
        unit:
          $ref: '#/components/schemas/products.ProductFranchiseUnit'
    responses.MessageResponse:
      type: object
      properties:
        message:
          type: string
          example: some message
    Translatable:
      type: object
      properties:
        en:
          description: This field supports more languages. Please read Translatable names and descriptions block in the documentation.
          type: string
    products.ProductFranchiseGroup:
      type: object
      properties:
        id:
          type: integer
        name:
          description: /This field supports more languages. Please read Translatable names and descriptions block in the documentation.
          $ref: '#/components/schemas/Translatable'
  securitySchemes:
    AccessToken:
      type: apiKey
      name: accessToken
      in: header
    ErplyClientCode:
      type: apiKey
      name: clientCode
      in: header
    ErplyJWT:
      type: apiKey
      name: jwt
      in: header
    ErplySession:
      type: apiKey
      name: sessionKey
      in: header
    RequestKey:
      type: apiKey
      name: requestKey
      in: header