Overview
redPIM is the source of truth for product data: catalogs, categories, products, variants, classification (eClass · ETIM · proficlass), media and exports. Everything you can do in the redPIM web app is backed by a REST API under a predictable URL scheme.
REST API
JSON over HTTPS at https://app.redpim.de/api. Action-method routing: /api/{Controller}/{Action}.
OpenAPI 3.1
Machine-readable contract at /openapi.json — import it into Postman, code generators or agents.
MCP server
Streamable-HTTP MCP server exposing redPIM operations as tools for Claude, ChatGPT & other agents.
Sync connector
A fingerprint-based sync contract for shops/ERPs: mappings → inventory → upsert.
Authentication
redPIM has two authentication paths, depending on the surface:
- Interactive REST API (
/api/{Controller}/{Action}): runs in an authenticated redPIM session (cookieREDPim.Cookie) established at login. - Agent / MCP surface (MCP server +
/api/ai/*): OAuth 2.1 —authorization_codewith PKCE (S256) and refresh tokens. live Clients self-register via Dynamic Client Registration — no manual onboarding for the client.
https://app.redpim.de/ · Dynamic Client Registration: POST https://app.redpim.de/connect/register · scopes mcp, api, offline_access. The token is issued after a redPIM user logs in at the authorization endpoint and authorizes the client; it then acts on that user's single company. Obtaining a redPIM account itself is still part of onboarding — me@redcomponents.de.# Agent calls carry an OAuth 2.1 bearer token (scope: api):
curl -H "Authorization: Bearer $REDPIM_TOKEN" \
https://app.redpim.de/api/ai/GetStats
REST API endpoints
A representative subset — the full surface is described in the OpenAPI specification.
| Method | Path | Description |
|---|---|---|
| GET | /api/Catalog/GetStats | Aggregate catalog / category / product counts. |
| POST | /api/Catalog/AddCatalog | Create a catalog. |
| POST | /api/Catalog/UpdateCatalog | Update a catalog. |
| POST | /api/Catalog/AddProduct | Create a product. |
| POST | /api/Catalog/UpdateProduct | Update a product. |
| POST | /api/Catalog/SetValue | Set a single field value on an element. |
| POST | /api/Export/StartExport | Queue a BMEcat / target-system export (returns a job reference). |
Product-data sync connector
For shop and ERP integrations, redPIM acts as the source of truth and syncs via a fingerprint-based diff. Each sync run is three steps:
| Step | Call | Purpose |
|---|---|---|
| 1 | GET /mappings | Fetch lookup tables (manufacturer, unit, tax IDs). Cache ~1h. |
| 2 | GET /inventory | NDJSON stream of {sku, fingerprint} for managed master products. |
| 3 | POST /upsert | Send create/update batches (≤1000). Each batch is transactional. |
The diff is computed locally: SKU not in the remote list → create; fingerprint differs → update; fingerprint equal → skip. The fingerprint is computed by redPIM (one per master product) so the hash algorithm lives in exactly one place.
MCP server
redPIM ships a Model Context Protocol server so agents (Claude, ChatGPT and others) can call redPIM natively as tools, over the Streamable HTTP transport.
- Manifest: /.well-known/mcp.json
- Endpoint:
https://mcp.redpim.de/live - Tools:
get_stats,list_departments,list_catalogs,add_product,start_export
Example client config (Streamable HTTP):
{
"mcpServers": {
"redpim": {
"type": "http",
"url": "https://mcp.redpim.de/"
}
}
}
Resources
| Resource | URL |
|---|---|
| OpenAPI specification | https://redpim.de/openapi.json |
| MCP manifest | https://redpim.de/.well-known/mcp.json |
| llms.txt | https://redpim.de/llms.txt |
| Product home | https://redpim.de/ |