




Have any questions? We’re here to help You
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.
Testing should cover authentication, data retrieval, data writing, error handling, and workflow logic. Start by connecting a test system through Makini's authentication flow. Use sandbox or non-production instances of your target systems when available. Test API calls for each entity type you'll use (purchase orders, work orders, etc.) to verify data mapping and field coverage. Test error scenarios by providing invalid inputs or attempting operations without proper permissions. For workflow-based integrations, test each workflow step independently before testing end-to-end. Verify webhook delivery and signature verification. Test with realistic data volumes to identify performance issues. Include tests for connection failure scenarios and verify your error handling and retry logic work correctly.
Makini uses cursor-based pagination for retrieving large datasets. API responses include a `next_cursor` field when additional results are available. To retrieve the next page, include the cursor value in your next request: `GET /api/v1/purchase-orders?cursor=CURSOR_VALUE`. Cursor-based pagination is more reliable than offset-based pagination because it handles data changes between requests—if records are added or deleted while you're paginating, you won't miss records or see duplicates. Page size is configurable up to a maximum limit (typically 100-500 records per page depending on entity type). For optimal performance, use the largest page size your application can handle efficiently. The API response also includes total count when available from the source system.
Makini takes a defense-in-depth approach to security. All data in transit uses TLS 1.2 or higher. Data at rest is encrypted using AES-256 encryption. Customer credentials are encrypted using secure key management with separate encryption keys per customer. We implement network segmentation, strict access controls, and follow the principle of least privilege. Our infrastructure undergoes regular security audits, penetration testing, and vulnerability assessments. We're SOC 2 Type 2 certified, demonstrating our commitment to security controls. Employee access to production systems is logged and monitored. For customers with strict compliance requirements, we offer self-hosted deployments where data never leaves your infrastructure, eliminating Makini as a data processor.
