Docs · LLMs and developers
Version3.12.3Isolate Memory API credentials, data, webhooks, usage, and side effects across Test, Staging, and Production.
Memory API environments
Memory API environments separate integration testing from production data and behavior. An organization can have one environment of each type: Test, Staging, and Production.
Environment isolation uses a clean credential cutover. API keys and webhook endpoints must be created inside Test, Staging, or Production before use.
Environment selection
The credential determines the environment for every request. Keep the existing organization base URL:
https://{organization}.achiral.ai/v1Create a separate credential for each environment. Achiral does not accept an environment override in a request header, query parameter, or request body. A Test or Staging credential therefore cannot be redirected to Production by changing request data.
Credential prefixes make their intended scope visible:
| Environment | Context Access Token | Webhook token |
|---|---|---|
| Test | acm_test_... | wh_test_... |
| Staging | acm_stg_... | wh_stg_... |
| Production | acm_live_... | wh_live_... |
The stored credential record, rather than its prefix, is the authorization source. Credentials without an environment binding are rejected; recreate them inside the intended environment.
Isolation boundary
Each environment has separate:
- API keys and webhook credentials;
- webhook endpoints and delivery history;
- event-ingestion and idempotency scope;
- memories, candidates, raw events, and audit records;
- usage counters, capacity policy, and retention policy; and
- automation, notification, and external-write policy.
The same external event identifier may be submitted once to each environment without an idempotency collision. Data is never read from another environment as a fallback.
Configuration promotion can copy eligible schemas, normalizers, and mappings between environments. It does not copy credentials, secrets, event payloads, memories, or API keys.
Side effects
Test suppresses customer-facing notifications, production automation execution, and irreversible external writes by default. Staging starts with the same restrictions. An organization owner may explicitly enable supported Staging side effects after confirming the target environment.
Production follows the organization's configured behavior. Keep external writes disabled in Test and Staging unless an owner has reviewed the target integration and explicitly enabled them.
Capacity and retention
Environment capacity is configuration-driven:
| Environment | Capacity posture | Retention | SLA |
|---|---|---|---|
| Test | Lowest; intended for functional validation | Short | None |
| Staging | Moderate and production-like | Medium | None |
| Production | Organization plan or contract | Normal | Plan or contract |
Achiral does not publish provisional numeric request, event, batch, payload, storage, or retention limits. Stable defaults and plan entitlements will be documented after load testing. Organization-specific overrides, current event and storage usage, and remaining capacity appear in the selected-environment API view.
API responses expose the applicable request policy through the rate-limit headers described in the API reference. A 429 Too Many Requests response includes Retry-After; wait for that interval before retrying.
Administration
Owners manage environment creation, lifecycle, resets, side-effect permissions, and capacity overrides under Organization > Settings > Environments. Admins can manage credentials and webhook endpoints within environments they are allowed to access.
Resetting Test or Staging removes data only from the selected environment. It does not rotate, delete, query, or modify credentials or data in another environment. Production uses the organization's normal retention and deletion controls instead of the non-production reset action.
The active environment is always labeled in the API, Integrations, Memory, and usage views. Check that label before creating a credential, copying an endpoint URL, or resetting data.