




Have any questions? We’re here to help You
Makini's unified API acts as a common denominator across all connected systems. We map each system's data structure to a standardized data model, exposing consistent endpoints regardless of the underlying platform. This means you write the same code to retrieve purchase orders from SAP, NetSuite, or Dynamics—the API calls and response formats are identical. You always get data in the same structure, making it easy to build consistent business logic. The unified approach eliminates the need to learn each system's unique API, manage multiple authentication methods, or handle varying data formats.
Makini maintains a comprehensive data model built from analyzing thousands of industrial systems. When data flows through Makini, we automatically transform it from the source system's format into our standardized structure. For example, purchase orders from SAP, NetSuite, and Dynamics all return with consistent field names, data types, and structures. This normalization happens in real-time as data passes through the API. You also have access to raw data if needed for specific use cases. The unified model covers common entities like purchase orders, work orders, inventory items, vendors, and assets, with extensive field coverage across systems.
Makini provides a `/sync-status` API endpoint that returns the current synchronization state for a connection. The response includes the last successful sync timestamp, sync status (in progress, completed, failed), any error messages, and the next scheduled sync time. You can query this endpoint to monitor sync health and detect issues. For workflow-based syncs using Makini Flows, each workflow execution is logged with detailed status information including start time, completion time, success/failure status, and any errors encountered. The Makini dashboard also provides visual sync status monitoring across all connections.
Yes, you can trigger syncs manually through both the API and the Makini dashboard. The API provides endpoints to initiate syncs for specific entities (purchase orders, work orders, etc.) on a given connection. Manual syncs are useful when you need immediate data updates outside the regular schedule, when onboarding new customers, or when recovering from sync failures. Manual syncs follow the same incremental logic as scheduled syncs, retrieving only changed records since the last successful sync. You can also trigger full re-syncs that ignore the last sync timestamp and retrieve all records within the configured historical period.
