MarginEdge Vendors API
Vendors and their items and packaging
Vendors and their items and packaging
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/marginedge-vendors-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
title: MarginEdge Public Categories Vendors API
version: 1.0.0
description: Read-only public API for retrieving invoice, order, product, vendor, category, and restaurant-unit data from the MarginEdge restaurants you are authorized to access. The API supports one-way data retrieval only (MarginEdge to your application) and is included with any MarginEdge subscription. Authentication uses an API key sent in the x-api-key header. List responses are paged via an opaque nextPage cursor.
contact:
name: MarginEdge Developer Support
url: https://developer.marginedge.com/
x-spec-source: Derived from the published MarginEdge developer portal (developer.marginedge.com) API reference and embedded API definitions.
servers:
- url: https://api.marginedge.com/public
description: MarginEdge Public API
security:
- ApiKeyAuth: []
tags:
- name: Vendors
description: Vendors and their items and packaging
paths:
/vendors:
get:
operationId: getVendors
summary: MarginEdge Get Vendors
tags:
- Vendors
description: Get Vendors.
parameters:
- name: restaurantUnitId
in: query
required: true
schema:
type: string
example: 12345
- name: nextPage
in: query
required: false
schema:
type: string
example: eyJsYXN0SWQiOiAiMTIzNDUifQ==
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/GetVendorsResponseModel'
examples:
GetVendors200Example:
summary: Default getVendors 200 response
x-microcks-default: true
value:
nextPage: eyJsYXN0SWQiOiAiMTIzNDUifQ==
vendors:
- vendorId: me-vendor-9f3a2b
vendorName: Sample Vendor
centralVendorId: me-centralvendor-9f3a2b
vendorAccounts:
- vendorAccountNumber: INV-100245
'400':
$ref: '#/components/responses/BadRequest'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/ServerError'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/vendors/{vendorId}/vendorItems:
get:
operationId: getVendorItems
summary: MarginEdge Get Vendor Items
tags:
- Vendors
description: Get Vendor Items.
parameters:
- name: restaurantUnitId
in: query
required: true
schema:
type: string
example: 12345
- name: vendorId
in: path
required: true
schema:
type: string
example: me-vendor-9f3a2b
- name: nextPage
in: query
required: false
schema:
type: string
example: eyJsYXN0SWQiOiAiMTIzNDUifQ==
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/GetVendorItemsResponseModel'
examples:
GetVendorItems200Example:
summary: Default getVendorItems 200 response
x-microcks-default: true
value:
vendorItems:
- vendorItemCode: example
centralVendorItemId: me-centralvendoritem-9f3a2b
vendorId: me-vendor-9f3a2b
companyConceptProductId: me-companyconceptproduct-9f3a2b
vendorName: Sample Vendor
centralVendorId: me-centralvendor-9f3a2b
productName: Sample Product
nextPage: eyJsYXN0SWQiOiAiMTIzNDUifQ==
'400':
$ref: '#/components/responses/BadRequest'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/ServerError'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/vendors/{vendorId}/vendorItems/{vendorItemCode}/packaging:
get:
operationId: getVendorItemsPackaging
summary: MarginEdge Get Vendor Items Packaging
tags:
- Vendors
description: Get Vendor Items Packaging.
parameters:
- name: restaurantUnitId
in: query
required: true
schema:
type: string
example: 12345
- name: vendorId
in: path
required: true
schema:
type: string
example: me-vendor-9f3a2b
- name: vendorItemCode
in: path
required: true
schema:
type: string
example: VIC-88231
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/GetVendorItemsPackagingResponseModel'
examples:
GetVendorItemsPackaging200Example:
summary: Default getVendorItemsPackaging 200 response
x-microcks-default: true
value:
packagings:
- unit: case
quantity: 3
packagingName: Sample Packaging
packagingId: me-packaging-9f3a2b
nextPage: eyJsYXN0SWQiOiAiMTIzNDUifQ==
'400':
$ref: '#/components/responses/BadRequest'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/ServerError'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
components:
schemas:
GetVendorsResponseModel:
type: object
properties:
nextPage:
type: string
description: Unique key for the next page of results
example: eyJsYXN0SWQiOiAiMTIzNDUifQ==
vendors:
type: array
items:
type: object
properties:
vendorId:
type: string
description: Unique identifier of the vendor within this restaurant unit
example: me-vendor-9f3a2b
vendorName:
type: string
description: Name of the vendor in MarginEdge
example: Sample Vendor
centralVendorId:
type: string
description: Unique identifier of the vendor centrally (across all restaurant units in MarginEdge)
example: me-centralvendor-9f3a2b
vendorAccounts:
type: array
items:
type: object
properties:
vendorAccountNumber:
type: string
description: The vendor’s account number for this restaurant
example: INV-100245
GetVendorItemsResponseModel:
type: object
properties:
vendorItems:
type: array
items:
type: object
properties:
vendorItemCode:
type: string
description: Vendor’s item code or SKU identifying the item
example: example
centralVendorItemId:
type: string
description: Unique identifier of this vendor item in MarginEdge (across all restaurant units/vendors)
example: me-centralvendoritem-9f3a2b
vendorId:
type: string
description: Unique identifier of the vendor within this restaurant unit
example: me-vendor-9f3a2b
companyConceptProductId:
type: string
description: Identifier of the product (unique within the company concept this restaurant belongs to) this item is assigned to in MarginEdge
example: me-companyconceptproduct-9f3a2b
vendorName:
type: string
description: Name of the vendor in MarginEdge
example: Sample Vendor
centralVendorId:
type: string
description: Unique identifier of the vendor centrally (across all restaurant units in MarginEdge)
example: me-centralvendor-9f3a2b
productName:
type: string
description: Name of the product
example: Sample Product
nextPage:
type: string
description: Unique key for the next page of results
example: eyJsYXN0SWQiOiAiMTIzNDUifQ==
GetVendorItemsPackagingResponseModel:
type: object
properties:
packagings:
type: array
items:
type: object
properties:
unit:
type: string
description: Unit this packaging is measured in
example: case
quantity:
type: number
description: Quantity of the packaging unit present in this packaging
example: 3
packagingName:
type: string
description: Name of the packaging in MarginEdge
example: Sample Packaging
packagingId:
type: string
description: Identifier of the packaging for this vendor item that was purchased
example: me-packaging-9f3a2b
nextPage:
type: string
description: Unique key for the next page of results
example: eyJsYXN0SWQiOiAiMTIzNDUifQ==
responses:
BadRequest:
description: Bad request
NotFound:
description: Resource not found
ServerError:
description: Internal server error
Forbidden:
description: Forbidden (missing or invalid API key, or restaurant not authorized)
securitySchemes:
ApiKeyAuth:
type: apiKey
in: header
name: x-api-key
description: API key issued through the MarginEdge developer portal.