Resourcly suppliers API
The suppliers API from Resourcly — 4 operation(s) for suppliers.
The suppliers API from Resourcly — 4 operation(s) for suppliers.
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/resourcly-suppliers-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:
description: API for document processing, item similarity search, and analytics.
title: Resourcly analytics Suppliers API
termsOfService: https://resourcly.com/terms
contact:
name: API Support
email: support@resourcly.com
license:
name: Proprietary
version: 1.0.0
servers:
- url: https://api.resourcly.com/v1
tags:
- name: suppliers
paths:
/suppliers/import:
post:
security:
- BearerAuth: []
description: Start an async import of supplier catalog files (ZIP, XML, XLSX) from data sources
tags:
- suppliers
summary: Import supplier catalog
responses:
'202':
description: Accepted
content:
application/json:
schema:
$ref: '#/components/schemas/handlers.ImportResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/models.ErrorResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/models.ErrorResponse'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/models.ErrorResponse'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/handlers.ImportRequest'
description: Import parameters
required: true
/suppliers/{id}/media/{filename}:
get:
security:
- BearerAuth: []
description: Streams a media file (image, PDF, CAD) from the supplier's media asset ZIP
tags:
- suppliers
summary: Get supplier media file
parameters:
- description: Supplier UUID
name: id
in: path
required: true
schema:
type: string
- description: Media filename (e.g., 09990000001.jpg)
name: filename
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/octet-stream:
schema:
type: string
format: binary
'400':
description: Bad Request
content:
application/octet-stream:
schema:
$ref: '#/components/schemas/models.ErrorResponse'
'401':
description: Unauthorized
content:
application/octet-stream:
schema:
$ref: '#/components/schemas/models.ErrorResponse'
'404':
description: Not Found
content:
application/octet-stream:
schema:
$ref: '#/components/schemas/models.ErrorResponse'
/suppliers/{id}/products:
get:
security:
- BearerAuth: []
description: Returns paginated list of products for a supplier
tags:
- suppliers
summary: List supplier products
parameters:
- description: Supplier UUID
name: id
in: path
required: true
schema:
type: string
- description: Max results (default 50, max 500)
name: limit
in: query
schema:
type: integer
- description: Pagination offset
name: offset
in: query
schema:
type: integer
- description: 'Filter by status: active, orphaned (default active)'
name: status
in: query
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/handlers.SupplierProductsResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/models.ErrorResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/models.ErrorResponse'
/suppliers/{id}/products/count:
get:
security:
- BearerAuth: []
description: Returns the number of active products for a supplier
tags:
- suppliers
summary: Get supplier product count
parameters:
- description: Supplier UUID
name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
additionalProperties:
type: integer
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/models.ErrorResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/models.ErrorResponse'
components:
schemas:
handlers.SupplierProductsResponse:
type: object
properties:
limit:
type: integer
offset:
type: integer
products:
type: array
items:
$ref: '#/components/schemas/services.SupplierProduct'
total:
type: integer
models.ErrorResponse:
type: object
properties:
code:
type: string
details: {}
error:
type: string
services.SupplierProduct:
type: object
properties:
classification_class_id:
type: string
classification_class_name:
type: string
classification_system:
type: string
description_short:
type: string
gtin:
type: string
id:
type: string
manufacturer_name:
type: string
manufacturer_pid:
type: string
media_references: {}
specifications: {}
status:
type: string
supplier_alt_pid:
type: string
supplier_id:
type: string
supplier_pid:
type: string
title:
type: string
handlers.ImportResponse:
type: object
properties:
import_job_id:
type: string
message:
type: string
supplier_id:
type: string
handlers.ImportRequest:
type: object
properties:
business_node_id:
type: string
classification_system:
description: e.g., "ETIM", "ECLASS"
type: string
datasource_keys:
type: array
items:
type: string
language:
type: string
supplier_name:
type: string
securitySchemes:
BearerAuth:
description: 'Firebase JWT token. Format: "Bearer {token}"'
type: apiKey
name: Authorization
in: header