SnapLogic Intelligent Integration Platform (IIP) is a cloud-native iPaaS using a visual pipeline designer to build integrations between cloud and on-premise applications. Unlike code-first platforms like MuleSoft, SnapLogic emphasizes low-code with pre-built "Snaps" (connectors) that snap together into data pipelines. The platform processes integration, batch ETL/ELT, API management, and AI agent workloads through the Snaplex runtime. Named a Visionary in the 2025 Gartner Magic Quadrant for Data Integration Tools.
| Property | Value |
|---|---|
| Vendor | SnapLogic |
| System | SnapLogic Intelligent Integration Platform (IIP) |
| API Surface | REST (Public APIs), Snaps (visual connectors), Ultra Pipelines (low-latency) |
| Current Platform Version | Monthly releases (latest: May 2025) |
| Editions Covered | Enterprise, Standard |
| Deployment | Cloud (Cloudplex) or Hybrid (Groundplex for on-prem) |
| API Docs | docs.snaplogic.com |
| Status | GA |
SnapLogic provides Snap Packs (connector bundles) for each ERP rather than traditional versioned REST endpoints. Pipelines are the integration logic. The platform exposes Public APIs for management and triggered pipeline execution.
| API Surface | Protocol | Best For | Throughput | Rate Limit | Real-time? | Bulk? |
|---|---|---|---|---|---|---|
| Triggered Pipelines | HTTPS/REST | On-demand integration execution | Per-pipeline | 10 concurrent / daily cap | Yes | No |
| Ultra Pipelines | HTTPS/REST | High-throughput, low-latency API processing | Unlimited | No concurrency limit | Yes | Yes |
| Scheduled Tasks | Cron-based | Batch ETL/ELT, periodic sync | Unlimited | No rate limit | No | Yes |
| SnapLogic Public APIs | REST/JSON | Platform management, org admin | N/A | Standard API throttling | Yes | No |
| APIM Gateway | HTTPS/REST | Publishing managed APIs from pipelines | Configurable | Client throttling policy | Yes | No |
| AutoSync | ELT | Database-to-warehouse replication | Unlimited | N/A | No | Yes |
| Limit Type | Value | Applies To | Notes |
|---|---|---|---|
| Concurrent triggered pipelines | 10 (default) | Triggered Tasks per Snaplex | Configurable; counts until pipeline completes |
| Daily triggered pipeline limit | Configurable per org | Triggered Tasks | Resets at midnight UTC |
| Ultra Pipeline concurrency | Unlimited | Ultra Tasks | Recommended for high API request volumes |
| Scheduled Task concurrency | Unlimited | Scheduled Tasks | No concurrency limits |
| Pipeline timeout | 30 min (default) | All pipeline types | Configurable per pipeline |
| Max pipeline document size | 50 MB | Individual documents in pipeline | Split larger documents |
| Limit Type | Value | Window | Edition Differences |
|---|---|---|---|
| Triggered pipeline calls | Org-configurable | 24h (resets midnight UTC) | Enterprise: higher defaults; Standard: lower |
| API Management calls | Based on APIM package | Per billing period | Metered via API Meters dashboard |
| Snaplex node count | Package-dependent | N/A | Enterprise: unlimited nodes; Standard: limited |
| SnapGPT usage | Included in Enterprise | Per month | Standard: limited; Enterprise: unlimited |
| Flow | Use When | Token Lifetime | Refresh? | Notes |
|---|---|---|---|---|
| Bearer Token (Public APIs) | Platform management, triggered pipeline invocation | Session-based | Re-authenticate | Standard for all Public API calls |
| OAuth 2.0 (within Snap Packs) | Connecting to ERP endpoints | Token-specific | Yes (per OAuth spec) | Configured per Snap Account |
| API Key (APIM) | Published API authentication for consumers | Until revoked | No | Via API Key Authenticator policy |
| Basic Auth (legacy) | Simple triggered pipeline invocation | Session-based | No | Not recommended for production |
| Client Throttling + OAuth2 (APIM) | API gateway authentication for external consumers | Configurable | Yes | Via API Policy Manager |
START -- User needs to integrate ERP systems via SnapLogic
|-- What's the integration pattern?
| |-- Real-time (<1s latency)
| | |-- API volume < 10 concurrent? -> Triggered Pipeline (standard)
| | +-- Higher volume? -> Ultra Pipeline (add-on, no concurrency limit)
| |-- Batch/Bulk (scheduled, high volume)
| | |-- Database source? -> AutoSync (ELT) or Scheduled Pipeline
| | +-- ERP records? -> Scheduled Pipeline with ERP Snap Pack
| |-- Event-driven (webhook, CDC)
| | |-- ERP supports webhooks? -> Triggered Pipeline as webhook receiver
| | +-- No webhooks? -> Scheduled polling with delta detection
| +-- File-based (CSV/XML) -> File Reader/Writer Snaps + Scheduled Task
|-- Which ERP system?
| |-- SAP S/4HANA Cloud -> SAP S/4HANA Cloud Snap Pack
| |-- SAP on-prem -> SAP Snap Pack (BAPI/RFC) + Groundplex
| |-- Oracle NetSuite -> NetSuite Snap Pack
| |-- Dynamics 365 -> D365 Snap Pack (F&SCM, BC, or Sales)
| +-- Other -> Check Snap Pack catalog (1,000+ connectors)
+-- Error tolerance?
|-- Zero-loss -> Error pipeline + retry Snap + persistent error logging
+-- Best-effort -> Pipeline error views + email notification
| ERP System | Snap Pack Name | API Surface | Key Operations | Bulk Support | Auth Method |
|---|---|---|---|---|---|
| SAP S/4HANA Cloud | SAP S/4HANA Cloud Snap Pack | OData/REST | Read, Create, Update, Delete entities | Yes (batch) | OAuth 2.0 |
| SAP ECC/S/4 On-Prem | SAP Snap Pack | BAPI/RFC | BAPI calls, RFC function modules (FICO, MM, SD) | Via IDocs | SAP logon (Groundplex) |
| SAP HANA | SAP HANA Snap Pack | JDBC/SQL | SQL queries, bulk inserts, stored procedures | Yes | JDBC credentials |
| Oracle NetSuite | NetSuite Snap Pack | SuiteTalk + REST | CRUD, saved searches, RESTlets | Async services | Token-Based Auth |
| Dynamics 365 F&SCM | D365 Finance and SCM Snap Pack | OData v4 | Resource planning, inventory, financials | Batch requests | OAuth 2.0 |
| Dynamics 365 BC | D365 Business Central Snap Pack | OData v4 | ERP processes, e-commerce, shipping | Batch requests | OAuth 2.0 |
| Dynamics 365 Sales | D365 for Sales Snap Pack | Web Services | All business entities via D365 web services | Limited | OAuth 2.0 |
| Salesforce | Salesforce Snap Pack | REST + Bulk | SOQL queries, CRUD, Bulk API, Platform Events | Yes (Bulk API) | OAuth 2.0 |
| Workday | Workday Snap Pack | SOAP/REST | HCM, Financial, Payroll operations | Limited | OAuth 2.0 / WSSE |
Choose between Cloudplex (SnapLogic-managed) or Groundplex (self-managed, required for on-prem ERP). [src4]
# Groundplex installation (Linux)
wget https://download.snaplogic.com/groundplex/snaplex-installer.sh
chmod +x snaplex-installer.sh
./snaplex-installer.sh --org <your-org> --token <bearer-token>
Verify: SnapLogic Manager > Snaplexes > your Snaplex shows "Running" with green health indicator.
Each ERP Snap Pack requires an Account configuration stored encrypted in SnapLogic. [src2]
# In SnapLogic Designer:
# 1. Open Account panel
# 2. Select "NetSuite REST Account" (or relevant ERP account type)
# 3. Configure credentials (Consumer Key, Consumer Secret, Token ID, Token Secret)
# 4. Validate & Save
Verify: Click "Validate" in Account dialog. Expected: "Account validated successfully."
Create a pipeline that reads from one system, transforms, and writes to another. [src1]
# Example: Salesforce Opportunities -> NetSuite Sales Orders
# [Salesforce Read] -> [Mapper] -> [NetSuite Create]
# Salesforce Read: SOQL WHERE StageName = 'Closed Won'
# Mapper: $.Name -> $.entity.companyName, $.Amount -> $.entity.total
# NetSuite Create: Record Type = salesOrder
Verify: Execute in preview mode. Expected: Green checkmarks on all Snaps.
SnapGPT generates pipelines, expressions, and mappings from natural language prompts. Also supports image-based pipeline creation from data flow diagrams. [src3]
# Click SnapGPT icon in Designer
# Prompt: "Create a pipeline that reads closed-won opportunities from
# Salesforce, maps to NetSuite sales orders, handles duplicates"
# Review generated pipeline, validate accounts, test in preview mode
Verify: Generated pipeline executes successfully in preview mode.
Convert the validated pipeline into an executable task. [src4]
# Invoke triggered pipeline via REST
curl -X POST \
"https://<pod>.snaplogic.com/api/1/rest/slsched/feed/<org>/<project>/<pipeline>" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{"last_sync": "2026-03-01T00:00:00Z"}'
Verify: Monitor app shows pipeline status "Completed" with record counts.
Add error pipelines and configure alerting for production reliability. [src1]
# Check execution status via Public API
curl -X GET \
"https://<pod>.snaplogic.com/api/1/rest/public/runtime/api-stats/<org>" \
-H "Authorization: Bearer <token>"
Verify: Trigger a test failure. Expected: Error pipeline executes, alert sent.
# Input: SnapLogic org URL, bearer token, pipeline path, parameters
# Output: Pipeline execution ID and status
import requests # requests>=2.31.0
SNAPLOGIC_POD = "elastic.snaplogic.com"
ORG = "your-org"
PROJECT = "your-project"
PIPELINE = "sf-to-netsuite-sync"
TOKEN = "your-bearer-token"
url = f"https://{SNAPLOGIC_POD}/api/1/rest/slsched/feed/{ORG}/{PROJECT}/{PIPELINE}"
response = requests.post(url, headers={
"Authorization": f"Bearer {TOKEN}",
"Content-Type": "application/json",
}, json={"last_sync": "2026-03-01T00:00:00Z"}, timeout=300)
if response.status_code == 200:
print(f"Pipeline executed: {response.json()}")
elif response.status_code == 429:
print("Rate limit exceeded -- retry or use Ultra Pipeline")
else:
print(f"Error {response.status_code}: {response.text}")
// Input: SnapLogic pod URL, org name, bearer token
// Output: Concurrent and daily execution metrics
const fetch = require("node-fetch"); // [email protected]
async function getApiStats() {
const url = `https://elastic.snaplogic.com/api/1/rest/public/runtime/api-stats/your-org`;
const res = await fetch(url, {
headers: { "Authorization": "Bearer YOUR_TOKEN" },
});
const stats = await res.json();
console.log("Concurrent:", stats.concurrent, "Daily:", stats.daily);
}
getApiStats().catch(console.error);
# Trigger a pipeline
curl -X POST \
"https://elastic.snaplogic.com/api/1/rest/slsched/feed/org/project/pipeline" \
-H "Authorization: Bearer TOKEN" \
-H "Content-Type: application/json" \
-d '{"param1": "value1"}'
# Check concurrent API stats
curl -X GET \
"https://elastic.snaplogic.com/api/1/rest/public/runtime/api-stats/org/concurrent" \
-H "Authorization: Bearer TOKEN"
| Source Field | Target Field | Type | Transform | Gotcha |
|---|---|---|---|---|
| SF: Account.Name | NS: customer.companyName | String | Direct | NetSuite max 83 chars vs SF 255 |
| SF: Opportunity.Amount | NS: salesOrder.total | Currency | Currency conversion if multi-currency | Exchange rate timing matters |
| SAP: BAPI_ADDR | SF: Account.BillingAddress | Compound | Split SAP struct into SF fields | SAP uses single struct; SF has separate fields |
| D365: salesOrder.totalAmount | NS: salesOrder.total | Decimal | Direct (check currency) | D365 uses 4 decimals; NS uses 2 |
| Workday: Employee_ID | SAP: Personnel_Number | String | Pad to 8 digits | SAP requires leading zeros |
| Code | Meaning | Cause | Resolution |
|---|---|---|---|
| 429 | Rate limit exceeded | Concurrent or daily triggered pipeline limit reached | Backoff and retry; switch to Ultra Pipeline; increase limits via support |
| 401 | Unauthorized | Bearer token expired or invalid | Re-authenticate; check token in Manager |
| 500 | Internal pipeline error | Snap failure, transformation error | Check pipeline execution log in Monitor |
| SNAP_VALIDATION | Snap config invalid | Missing required fields, wrong account type | Validate Snap configuration |
| CONNECTION_REFUSED | Cannot reach target | Firewall blocking Cloudplex; Groundplex down | Verify network; check Groundplex health |
| TIMEOUT | Pipeline timeout | Exceeded timeout threshold | Increase timeout; optimize pipeline |
Deploy minimum 2 Groundplex nodes per Snaplex for HA. [src4]Enable refresh tokens; use long-lived service accounts for SAP. [src2]Match JCo version to SAP kernel; deploy 64-bit JCo on 64-bit JVM. [src2]Set pipeline concurrency to match NetSuite limit; use async bulk. [src2]Always review and enhance SnapGPT output manually. [src3]// BAD -- Triggers pipeline for every single record change
// Hits 10-concurrent-pipeline limit, returns 429 errors
Event -> Trigger Pipeline -> Process 1 record
// 100 events = 100 concurrent attempts = 429 after #10
// GOOD -- Collect events, process in batch
// Use Ultra Pipeline (no concurrency limit) or scheduled polling
Events accumulate -> Scheduled Pipeline (every 5 min) ->
Read all changed records -> Transform batch -> Bulk write
// BAD -- Cloudplex cannot reach on-prem SAP
Pipeline on Cloudplex -> SAP BAPI Snap -> SAP ECC on-premise
// Result: CONNECTION_REFUSED
// GOOD -- Groundplex runs inside network reaching SAP
// Communicates outbound to SnapLogic control plane (no inbound firewall rules)
Pipeline on Groundplex (SAP DMZ) -> SAP BAPI Snap -> SAP ECC
// BAD -- Crashes on first null field
$target.closeDate = $source.Opportunity.CloseDate.substring(0, 10)
// If CloseDate is null -> TypeError
// GOOD -- Null-safe with defaults
$target.closeDate = $source.Opportunity.CloseDate
? $source.Opportunity.CloseDate.substring(0, 10) : null
# Check Snaplex health and node status
curl -X GET "https://elastic.snaplogic.com/api/1/rest/public/snaplexes/<org>" \
-H "Authorization: Bearer <token>"
# Check API usage / remaining daily limits
curl -X GET "https://elastic.snaplogic.com/api/1/rest/public/runtime/api-stats/<org>" \
-H "Authorization: Bearer <token>"
# Check concurrent execution count
curl -X GET "https://elastic.snaplogic.com/api/1/rest/public/runtime/api-stats/<org>/concurrent" \
-H "Authorization: Bearer <token>"
# List pipelines in a project
curl -X GET "https://elastic.snaplogic.com/api/1/rest/public/project/<org>/<project>/files" \
-H "Authorization: Bearer <token>"
# Get pipeline execution log (last 10 runs)
curl -X GET "https://elastic.snaplogic.com/api/1/rest/public/runtime/<org>?limit=10" \
-H "Authorization: Bearer <token>"
| Release | Date | Status | Key Changes | Migration Notes |
|---|---|---|---|---|
| May 2025 | 2025-05 | Current | Latest Snap Pack updates | -- |
| April 2025 | 2025-04 | Supported | Monitor app replaces Dashboard (preview) | Familiarize with Monitor UI |
| December 2024 | 2024-12 | Supported | AgentCreator enhancements, OpenAI Snap Pack | -- |
| September 2024 | 2024-09 | Supported | Azure OpenAI LLM Snap Pack, RAG support | -- |
| August 2025 | 2025-08 | Upcoming | Dashboard fully replaced by Monitor | Migrate Dashboard bookmarks to Monitor |
SnapLogic follows a monthly release cadence. Snap Packs are updated incrementally with backward compatibility. Deprecated Snaps remain functional for 6-12 months after notice. Breaking changes (e.g., Dashboard to Monitor) are communicated via release notes with multi-month transition periods.
| Use When | Don't Use When | Use Instead |
|---|---|---|
| Mid-market org connecting 5-20 cloud apps + ERP | Enterprise needing deep API governance | MuleSoft Anypoint Platform |
| Citizen integrators need visual low-code design | Code-first team wanting full programmatic control | MuleSoft or custom middleware |
| SnapGPT/AI-assisted development is a priority | Organization prohibits external AI/LLM use | Boomi or Jitterbit |
| Predictable pricing (no per-data-volume) | High-volume API gateway needing usage-based pricing | Kong, Apigee, or AWS API Gateway |
| SAP + NetSuite + Salesforce + Dynamics in one platform | Only Salesforce ecosystem (use native tools) | Salesforce Connect or MuleSoft |
| Batch ETL/ELT + real-time on same platform | Pure data warehouse ingestion only | Fivetran, Airbyte, or Stitch |
| Capability | SnapLogic | MuleSoft | Boomi | Informatica IICS |
|---|---|---|---|---|
| Architecture | Visual pipelines + Snaps | API-led connectivity | Atoms + connectors | Mappings + connectors |
| Pre-built connectors | 1,000+ Snaps | 400+ (Anypoint Exchange) | 200+ connectors | 400+ connectors |
| AI Integration | SnapGPT (generative) | Einstein Copilot | Boomi Suggest | CLAIRE AI |
| API Management | Built-in (Snaplex = gateway) | Full lifecycle APIM | Add-on | Separate product |
| Pricing Model | Package (endpoint count) | Tiered (vCore-based) | Subscription (connections) | Subscription (IPU) |
| Learning Curve | Low-medium | High | Low | Medium |
| SAP Depth | BAPI/RFC, S/4HANA Cloud, HANA | SAP Connector (limited) | Basic connector | PowerCenter SAP (deep) |
| NetSuite Depth | Full (SOAP + REST, async bulk) | Basic CRUD | Standard | Standard |
| Best For | Mid-market, 5-20 apps | Large enterprise, API ecosystems | SMB-to-midmarket | Enterprise data governance |
| Gartner Position (2025) | Visionary | Leader | Leader | Leader |