



Have any questions? We’re here to help You
Webhooks allow Makini to notify your application of events in real-time. To set up webhooks, configure a webhook URL in your connection settings or during the initial connection flow. Your webhook endpoint must accept POST requests, respond within 10 seconds with a 200 status code, and use HTTPS with a valid SSL certificate. Makini will send webhook payloads to your endpoint when configured events occur, such as sync completion, connection status changes, or errors requiring attention. We recommend keeping your webhook receiver lightweight—ideally just writing the payload to a queue for asynchronous processing—to avoid timeouts and ensure reliable delivery.
All Makini webhooks include a signature header for verification. The signature is an HMAC hash of the webhook payload using your webhook secret as the key. To verify a webhook, compute the HMAC using your secret and compare it to the signature header using constant-time comparison to avoid timing attacks. Never process webhook data without verification, as this could expose your system to forged requests. Your webhook secret is provided when you configure webhooks and should be stored securely. Webhook verification ensures that only legitimate requests from Makini are processed by your application.
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.
Makini maintains API stability and provides advance notice of breaking changes. The current API version is v1. When we introduce breaking changes, we release a new API version while maintaining the previous version for a transition period (typically 12 months minimum). Non-breaking changes (like adding new fields or endpoints) are introduced into the current version without requiring updates. We announce upcoming version changes through multiple channels: email notifications, dashboard announcements, and release notes. API responses include version information in headers. We recommend specifying the API version explicitly in your requests to ensure consistent behavior. During version transitions, we provide migration guides and support for updating integrations.
