API Documentation

Replenit Ingestion API | Complete Guide

Document Type

Public API Reference Guide

Audience

Engineering, Architecture, Data, IT

API Version

v1.1

Status

Live

Stability

Backward-compatible within major version

Change Policy

Additive changes only unless versioned

Base URL

https://api.replen.it

SLA

99.9% uptime

Overview

The Replenit Ingestion API is the primary upstream data interface for the Replenit Decision Engine.

It enables you to synchronize customers, orders, and product data from source systems into Replenit, where this data is evaluated and used to generate customer- and product-level commercial decisions. These decisions are executed by downstream systems such as CRM platforms, marketing automation tools, advertising platforms, analytics solutions, and customer support systems.

The API is designed for continuous, production-grade data ingestion. It does not trigger campaigns or orchestrate messaging. Its responsibility is to provide accurate and timely data to the decisioning layer, Replenit's Maestro.

Typical Use Cases

  • ERP / DWH platforms syncing transactional data
  • CRM or CDP systems updating customer profiles and consent states
  • Product and inventory systems syncing catalog changes
  • Enterprise data pipelines feeding decision intelligence

Scope and Non-Goals

In Scope

  • Ingestion of customer, order, and product data
  • Validation and normalization of inbound data
  • Deterministic processing into the Replenit Decision Engine

Non-Goals

The Ingestion API itself does not perform or manage the following activities:

  • Campaign execution
  • Channel orchestration
  • Message rendering
  • Business rule authoring
  • UI-level personalization

These activities may be handled either by downstream execution platforms (e.g. CRM, marketing automation, advertising, analytics, or support systems) or by Replenit platform capabilities that operate after data ingestion and decisioning.

Versioning and Compatibility

  • The API follows a major-version compatibility model
  • Breaking changes require a major version increment
  • Minor and patch updates are backward compatible
  • Deprecations are communicated in advance with a defined migration window

Clients are expected to integrate against a specific major version.

Key Capabilities

Performance and Reliability

  • Sub-100ms average response times under normal load
  • Batch ingestion support for high-volume data synchronization
  • Idempotent upsert behavior to support safe retries
  • Production-grade availability and monitoring

Security and Compliance

  • API key–based authentication
  • Encrypted transport (TLS)
  • Strict request validation
  • GDPR-aligned data handling

Developer Experience

  • RESTful JSON interface
  • Consistent request and response formats
  • Deterministic error messages with field-level feedback
  • Clear separation of concerns across endpoints

Quick Start

Prerequisites

To begin integration, you need:

  • An active Replenit tenant
  • A Tenant ID (GUID format)
  • An API key associated with the tenant

Tenant access is provisioned during onboarding and managed via your Replenit Panel.

You will receive access to the platform during onboarding and can generate API keys or obtain your TenantId under API Key Management Section.

1Create a Customer Record

curl -X POST "https://api.replen.it/customers/YOUR_TENANT_ID" \
  -H "Content-Type: application/json" \
  -H "x-replenit-auth-key: YOUR_API_KEY" \
  -d '[{
    "CustomerId": "quickstart-001",
    "Email": "test@example.com",
    "Name": "Test",
    "Surname": "User",
    "EmailOptin": true,
    "GdprOptin": true
  }]'

2Validate the Response

{
  "success": true,
  "message": "Customers saved.",
  "data": {
    "count": 1,
    "processedAt": "2024-12-22T14:40:00Z"
  }
}

Data becomes visible in the Replenit platform after processing completes. You can also see the number of records processed and recorded on the Replenit panel under the Management → Data and Health, which can be accessed via login.

Replenit Dashboard - Data and Health view

3Validate Order and Product Ingestion

After successfully ingesting a customer record, the next step is to submit representative Order and Product payloads. This validates ingestion across all core data domains and confirms that related entities can be processed consistently.

This step is intended to confirm that:

  • Order and product endpoints are reachable and authenticated
  • Payload structures are accepted and validated
  • Identifiers used across customers, orders, and products are consistently processed

Ingest an Order

Use the following example to submit an order with a single line item. This validates order-level fields, currency handling, and item structure.

curl -X POST "https://api.replen.it/orders/YOUR_TENANT_ID" \
  -H "Content-Type: application/json" \
  -H "x-replenit-auth-key: YOUR_API_KEY" \
  -d '[{
    "OrderId": "O-001",
    "Currency": "USD",
    "TotalRevenue": 99.99,
    "OrderItems": [
      {
        "ProductId": "P-001",
        "Sku": "SKU-001",
        "Quantity": 1,
        "Price": 99.99
      }
    ]
  }]'

A successful response indicates that the order payload has been accepted for processing.

Ingest a Product

Use the following example to submit a product definition with a single variant. This validates catalog structure and variant identifiers referenced by order line items.

curl -X POST "https://api.replen.it/products/YOUR_TENANT_ID" \
  -H "Content-Type: application/json" \
  -H "x-replenit-auth-key: YOUR_API_KEY" \
  -d '[{
    "ProductId": "P-001",
    "ProductVariants": [
      {
        "VariantId": "V-001",
        "Sku": "SKU-001"
      }
    ]
  }]'

Architecture

Core Data Domains

DomainPurposeTypical Update Pattern
CustomersIdentity and preferencesReal-time or batch
OrdersTransactional behaviorNear real-time
ProductsCatalog and availabilityOn change or scheduled

These domains are evaluated together within the Replenit Decision Engine to determine what action, if any, should occur downstream.

Authentication

All API requests to the Replenit Ingestion API require authentication using an API key.

Authentication is performed by passing the API key via the x-replenit-auth-key HTTP header.

x-replenit-auth-key: YOUR_BASE64_API_KEY

API Keys

API keys are generated and managed in the Replenit platform.

An API key may be authorized to operate across one or multiple tenants.

Tenant-specific behavior is determined by the tenantId provided in the request path, not by the API key itself.

Operational configuration such as identifier strategy, supported languages, supported currencies, timezone, and processing rules is resolved per tenant, based on the tenant referenced in the API request.

When an API key is used across multiple tenants, each request is evaluated independently according to the configuration of the referenced tenant.

Managing API Keys

API keys are managed in the Replenit platform under:

Management → API Key Management

From this section, authorized users can:

  • Generate new API keys
  • Copy existing keys
  • Revoke keys that are no longer in use
  • View associated Tenant IDs

Access to API key management is typically restricted to platform administrators.

If you do not have access to this section or have questions about API key setup, permissions, or tenant access, please contact your Replenit Customer Success Manager (CSM) or your internal platform administrator.

Tenant ID

All ingestion endpoints require a tenantId to be provided as part of the request path.

Examples:

POST/customers/{tenantId}
POST/orders/{tenantId}
POST/products/{tenantId}

The tenantId determines which tenant configuration is applied for request validation, identifier resolution, normalization, and processing.

Tenant IDs can be obtained from the Replenit platform and are visible in the API Key Management section or the detailed guide below.

Security and Storage

API keys must be stored securely and treated as sensitive credentials.

  • Do not commit API keys to source control
  • Do not expose API keys in client-side environments (browsers, mobile applications)
  • Use environment variables or secure secret management systems
  • Rotate API keys periodically according to internal security policies

API keys are tenant-authorized credentials and grant access to ingestion endpoints according to their assigned permissions.

Error Handling

Authentication-related errors include:

401 Unauthorized

  • • Missing x-replenit-auth-key header
  • • Invalid or malformed API key
  • • Revoked API key

403 Forbidden

  • • API key does not have access to the referenced tenant

Full documentation: Replenit Ingestion API | Authentication

API Reference

Base URL

https://api.replen.it

Request Format

All POST endpoints expect an array payload, even for single records.

[
  { "field": "value" }
]

Rate Limits

100

requests per minute

5,000

requests per hour

Rate-limit headers are included in all responses.

Replenit Ingestion API | Rate Limits

Data Standards

Datetime

ISO 8601 (UTC)

Currency

ISO 4217

Language

IETF BCP 47

Encoding

UTF-8

Replenit Ingestion API | Best Practices

Error Handling

Common Status Codes

CodeDescription
200Success
400Validation error
401Authentication failure
404Tenant or resource not found
429Rate limit exceeded
500Server error

Detailed error reference: Replenit Ingestion API | Error Responses

Operational Responsibilities

Your Responsibilities

  • Ensure correctness and completeness of submitted data
  • Implement retry and backoff logic
  • Respect rate limits
  • Secure API keys and credentials

Replenit Responsibilities

  • API availability per SLA
  • Deterministic validation and processing
  • Clear error reporting
  • Backward compatibility within major versions

Support

When contacting support, include:

  • Tenant ID
  • Timestamp (UTC)
  • Endpoint and payload (sanitized)
  • Full error response

Additional Resources

Need help or have questions?

Our team is ready to assist you. Reach out to us at support@replen.it

Email Support