API & Integrations

Connect RealPrice toEverything

Use our REST API to integrate with Zapier, n8n, Make.com, or build custom integrations. Automate your pricing workflows and connect to thousands of apps.

Zapier

Connect to 5,000+ apps with no-code automation

n8n

Build complex workflows with visual automation

REST API

Build custom integrations with our RESTful API

Quick Start Guide

1

Get Your API Key

Go to Dashboard → Settings → API Access and generate your API key. Keep it secure!

2

Make Your First Request

Test the API with a simple GET request to fetch your products:

curl -X GET "https://pricingforge.com/api/products" \
  -H "x-api-key: your-api-key-here"
3

Connect to Your Platform

Use your API key in Zapier, n8n, or your custom application to start automating!

API Endpoints

All endpoints require authentication with your API key via the x-api-key header

📦
Products API

GET/api/productsList all products
curl -X GET "https://pricingforge.com/api/products" \
  -H "x-api-key: rpk_your_key_here"

# Response:
{
  "success": true,
  "data": [
    {
      "id": "prod_123",
      "name": "Premium Coffee Blend",
      "type": "product",
      "sellingPrice": 22.00,
      "marginPercentage": 40,
      "calculatedCost": 15.50,
      "isActive": true
    }
  ],
  "count": 1
}
POST/api/productsCreate a new product
curl -X POST "https://pricingforge.com/api/products" \
  -H "x-api-key: rpk_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Artisan Bread",
    "type": "product",
    "description": "Handmade sourdough bread",
    "items": [
      {"itemId": "item_flour_123", "quantity": 0.5},
      {"itemId": "item_yeast_456", "quantity": 0.01}
    ],
    "laborHours": 2,
    "marginPercentage": 50,
    "sellingPrice": 8.50
  }'

# Response:
{
  "success": true,
  "data": {
    "id": "prod_789",
    "name": "Artisan Bread",
    "type": "product",
    "sellingPrice": 8.50,
    "createdAt": "2025-11-12T10:30:00Z"
  },
  "message": "Product created successfully"
}
POST/api/products/importImport all products (replace)⚠️ Replaces all
curl -X POST "https://pricingforge.com/api/products/import" \
  -H "x-api-key: rpk_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "products": [
      {
        "name": "Product 1",
        "type": "product",
        "sellingPrice": 25.00,
        "marginPercentage": 30
      },
      {
        "name": "Service 1",
        "type": "service",
        "sellingPrice": 100.00,
        "laborHours": 2
      }
    ]
  }'

# Response:
{
  "success": true,
  "message": "Successfully imported 2 products",
  "count": 2
}
POST/api/products/mergeMerge products (add/update)✓ Safe merge
curl -X POST "https://pricingforge.com/api/products/merge" \
  -H "x-api-key: rpk_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "products": [
      {
        "id": "prod_existing_123",
        "sellingPrice": 30.00
      },
      {
        "name": "New Product",
        "type": "product",
        "sellingPrice": 20.00
      }
    ]
  }'

# Response:
{
  "success": true,
  "message": "Merge complete: 1 added, 1 updated, 0 skipped",
  "added": 1,
  "updated": 1,
  "total": 50
}
PATCH/api/products/{id}Update a product
curl -X PATCH "https://pricingforge.com/api/products/prod_123" \
  -H "x-api-key: rpk_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "sellingPrice": 25.00,
    "marginPercentage": 35
  }'

# Response:
{
  "success": true,
  "data": {
    "id": "prod_123",
    "sellingPrice": 25.00,
    "updatedAt": "2025-11-12T10:35:00Z"
  },
  "message": "Product updated successfully"
}

🧩
Items API

GET/api/itemsList all items
curl -X GET "https://pricingforge.com/api/items" \
  -H "x-api-key: rpk_your_key_here"

# Response:
{
  "success": true,
  "data": [
    {
      "id": "item_123",
      "name": "Coffee Beans",
      "costPerUnit": 12.50,
      "unit": "kg",
      "category": "raw materials",
      "isActive": true
    }
  ],
  "count": 1
}
POST/api/itemsCreate a new item
curl -X POST "https://pricingforge.com/api/items" \
  -H "x-api-key: rpk_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Organic Flour",
    "description": "100% organic whole wheat flour",
    "costPerUnit": 3.50,
    "unit": "kg",
    "category": "raw materials"
  }'

# Response:
{
  "success": true,
  "data": {
    "id": "item_456",
    "name": "Organic Flour",
    "costPerUnit": 3.50,
    "unit": "kg",
    "createdAt": "2025-11-12T10:30:00Z"
  },
  "message": "Item created successfully"
}
POST/api/items/importImport all items (replace)⚠️ Replaces all
curl -X POST "https://pricingforge.com/api/items/import" \
  -H "x-api-key: rpk_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "items": [
      {
        "name": "Coffee Beans",
        "costPerUnit": 12.50,
        "unit": "kg",
        "category": "raw materials"
      },
      {
        "name": "Sugar",
        "costPerUnit": 2.50,
        "unit": "kg",
        "category": "raw materials"
      }
    ]
  }'

# Response:
{
  "success": true,
  "message": "Successfully imported 2 items",
  "count": 2
}
POST/api/items/mergeMerge items (add/update)✓ Safe merge
curl -X POST "https://pricingforge.com/api/items/merge" \
  -H "x-api-key: rpk_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "items": [
      {
        "id": "item_existing_123",
        "costPerUnit": 13.00
      },
      {
        "name": "New Item",
        "costPerUnit": 5.00,
        "unit": "kg",
        "category": "supplies"
      }
    ]
  }'

# Response:
{
  "success": true,
  "message": "Merge complete: 1 added, 1 updated",
  "added": 1,
  "updated": 1,
  "total": 100
}
PATCH/api/items/{id}Update an item
curl -X PATCH "https://pricingforge.com/api/items/item_123" \
  -H "x-api-key: rpk_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "costPerUnit": 13.50
  }'

# Response:
{
  "success": true,
  "data": {
    "id": "item_123",
    "costPerUnit": 13.50,
    "updatedAt": "2025-11-12T10:35:00Z"
  },
  "message": "Item updated successfully"
}

Full API Documentation

For complete API reference including error codes, rate limits, and advanced usage, check out our comprehensive documentation.

View Full Documentation

Zapier Workflow Examples

Popular automation workflows you can set up in minutes

Bulk Import from Google Sheets

Trigger:Schedule or button press
Action:Import all products/items to RealPrice

Sync entire product catalog from spreadsheet with one click

Auto-Create Products from New Rows

Trigger:New row in Google Sheets
Action:Create product in RealPrice

Add products to RealPrice as you add them to your spreadsheet

Update Prices from Supplier Emails

Trigger:New email with price list
Action:Update item costs in RealPrice

Automatically update costs when suppliers send new pricing

Slack Alerts for New Products

Trigger:New product created
Action:Send Slack notification

Keep your team informed about new products

n8n Workflow Templates

Advanced automation workflows for power users

Sync to Airtable

Keep your product catalog synced with Airtable

Get products → Transform data → Create/Update in Airtable

Price Monitoring

Monitor competitor prices and adjust yours automatically

Scrape competitor → Compare prices → Update if needed

Daily Reports

Generate daily pricing reports and email to stakeholders

Get all products → Calculate metrics → Send email report

Authentication

Using Your API Key

Include your API key in the x-api-key header with every request:

# Example: Fetch all products
curl -X GET "https://pricingforge.com/api/products" \
  -H "x-api-key: rpk_live_abc123xyz789..."

# Example: Create a new item
curl -X POST "https://pricingforge.com/api/items" \
  -H "x-api-key: rpk_live_abc123xyz789..." \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Coffee Beans",
    "costPerUnit": 12.50,
    "unit": "kg",
    "category": "raw materials"
  }'

⚠️ Security Best Practices

  • • Never share your API key publicly or commit it to version control
  • • Use environment variables to store your API key
  • • Rotate your API key regularly
  • • Revoke keys immediately if compromised

Rate Limits

Request Limits by Plan

Free Trial100/hour
Bronze500/hour
Silver2,000/hour
GoldUnlimited ✨

Rate Limit Headers

Every API response includes headers showing your current rate limit status:

X-RateLimit-Limit: 500
X-RateLimit-Remaining: 450
X-RateLimit-Reset: 1609459200

Ready to Start Automating?

Get your API key and start building integrations today. No credit card required for testing.