




Have any questions? We’re here to help You
All API requests require authentication via bearer token. After successfully connecting a system through Makini's authentication module, you receive an API token. Include this token in the Authorization header of your requests: `Authorization: Bearer YOUR_API_TOKEN`. Each connection has a unique token, allowing you to manage multiple customer connections independently. Tokens remain valid as long as the underlying system credentials are valid and the connection is active. If a customer changes their system credentials, you'll need to reconnect to obtain a new token.
500-level errors indicate issues on Makini's side or with the connected system. These are typically temporary and retrying the request after a brief delay often succeeds. Implement exponential backoff for retries—wait a few seconds, then progressively longer intervals. If errors persist beyond a few retries, check the Makini status page for service disruptions. The error may also stem from the connected system experiencing issues rather than Makini itself. For persistent 500 errors, contact support with the request ID from the error response. Include details about when the error started, which operations are affected, and which connections are impacted. Our support team can quickly identify whether the issue is systemic or connection-specific.
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 monitors connection health continuously and provides multiple ways to detect reauthorization needs. The connection status endpoint returns the current state including whether reauthorization is required. Makini sends webhooks when connections enter a state requiring reauthorization, allowing proactive notification. API requests to a connection requiring reauthorization return specific error codes prompting reconnection. The Makini dashboard displays connection status across all customers. Best practice is to implement webhook listeners for connection status changes and proactively notify customers when reauthorization is needed, rather than waiting for operations to fail. Include clear instructions on how to reconnect in your notification.
