



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.
API tokens must be stored securely and should never be exposed on the client side or in public repositories. Store tokens in secure environment variables or dedicated secrets management systems like AWS Secrets Manager, HashiCorp Vault, or Azure Key Vault. Never hardcode tokens in application code or commit them to version control. Implement proper access controls so only authorized services can access stored tokens. For production environments, use separate tokens from development/testing environments. Rotate tokens periodically and immediately revoke tokens if you suspect they've been compromised. Makini tokens provide access to customer data, so treat them with the same security standards you'd apply to database credentials.
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.
Authentication errors (401 status code) typically occur for a few reasons: the API token is invalid or expired, the underlying system credentials have changed, the system requires reauthorization, or the token lacks necessary permissions. First, verify you're including the token correctly in the Authorization header. Check the connection status in the Makini dashboard—if it shows as requiring reauthorization, the customer needs to reconnect. If credentials were recently changed in the source system, you'll need to reconnect to obtain a new token. For persistent issues, check if the system account has sufficient permissions to perform the requested operation. If the problem continues, contact support with the request ID for investigation.
