Authentication
Developer dashboard authentication and public API authentication serve different purposes.
- Developer account authentication signs a developer into the dashboard to manage callback settings and credentials.
- API authentication authorizes Extension or Storefront requests through a global API key and saved project connections.
Public API requests must not use a developer dashboard session.
Authentication Flow
- Create a developer account from the documentation header.
- Log in to the developer dashboard.
- Register the developer account callback URL.
- Generate a global API key.
- Create a connection request with a random
statevalue. - Send the user to the returned ModuSell connection URL.
- The user logs in, chooses a project, and approves access.
- Receive a one-time authorization code at the registered redirect URL.
- Verify
state, then complete the connection with the code and the same API key. - Send that API key when requesting data for the connected project.
Developer account + callback URL -> Global API key -> Connection URL -> ModuSell login -> Project selection -> Saved connection
Credential Boundaries
- Dashboard sessions authorize only private developer-dashboard actions.
- API keys belong to the developer account and are not assigned to one integration or project.
- Each approved project is stored as a separate connection under the API key, so one key can connect to multiple projects.
- Connected-project requests use
Authorization: Bearer YOUR_API_KEY; no additional reusable project credential is issued. - API keys are stored as one-way hashes. Raw keys are returned only when created or rotated.
Never send a developer dashboard session token to a public API operation.