Troubleshooting
This guide covers common issues encountered when using the Quazzar Space platform, with diagnostic steps and solutions.
Authentication Issues
Token Expired
Symptom: API returns 401 Unauthorized with a message indicating the token has expired.
Solution: Re-authenticate by calling POST /auth/login to obtain a fresh token:
curl -X POST https://app.quazzar.space/auth/login \
-H "Content-Type: application/json" \
-d '{"email": "[email protected]", "password": "your-password"}'For programmatic access, use API keys instead of JWT tokens. API keys do not expire automatically and are better suited for CI/CD pipelines and scripts. Create them from Profile > API Keys in the dashboard.
TOTP Code Rejected
Symptom: Login fails with “Invalid TOTP code” even though the authenticator app shows a code.
Solutions:
- Clock skew: Ensure your device’s time is synchronized. TOTP codes are time-based and require accurate clocks. On mobile, enable automatic time settings.
- Wrong account: Verify you are using the correct authenticator entry for Quazzar Space.
- Code expired: TOTP codes rotate every 30 seconds. Wait for a fresh code before entering.
TOTP Lockout (Lost Authenticator)
Symptom: Cannot log in because the authenticator device is lost and backup codes are unavailable.
Solution: Contact your organization administrator to reset your TOTP. Admins can disable 2FA for a user from the admin panel under Customers > User > Security. If you are the only admin, contact Quazzar support.
Invitation Link Expired
Symptom: Clicking a project invitation link shows “Invitation expired or invalid.”
Solution: Ask the project owner to resend the invitation from Project Settings > Members > Resend Invite. Invitation links expire after 7 days.
Connectivity Issues
CORS Errors in Browser
Symptom: Browser console shows Access-Control-Allow-Origin errors when making API requests.
Solutions:
- If using a custom domain, ensure it has been registered with the Quazzar team for CORS configuration
- For on-premise deployments, verify the frontend URL is included in the CORS configuration
- API requests from server-side code (not browsers) are not affected by CORS
API Timeouts
Symptom: API requests time out or take longer than expected.
Solutions:
- Check the Quazzar Status Page for any ongoing incidents
- Verify your network connectivity and firewall rules allow outbound HTTPS to
app.quazzar.space - For large data operations (import/export, auto-discovery), these run as background jobs and may take several minutes. Check the job status in the dashboard under Settings > Jobs
Integration Issues
Cloud Provider Connection Failed
Symptom: Auto-discovery or cloud integration returns an error.
Solutions:
| Provider | Common Issues |
|---|---|
| AWS | Verify IAM credentials have the required read permissions. Check that the access key is active. |
| GCP | Ensure the service account JSON key is valid and has the required roles. |
| Azure | Verify the tenant ID, client ID, and client secret. Check subscription access. |
| Hetzner | Confirm the API token has read access to the target project. |
For all providers:
- Credentials are encrypted and stored securely. Re-enter credentials if they have been rotated.
- Test the connection from Settings > Integrations > [Provider] > Test Connection
Jira Sync Not Working
Symptom: Jira data is not appearing or is outdated in Quazzar Space.
Solutions:
- Verify the Jira API token is still valid (tokens expire or can be revoked)
- Check that the Jira project key on your services matches an actual Jira project
- Sync runs automatically on a schedule. To force an immediate sync, click Sync Now in Settings > Integrations > Jira
Monitoring Alerts Not Firing
Symptom: Expected monitoring alerts are not being triggered.
Solutions:
- Verify the monitoring integration is connected and healthy in Settings > Integrations > Monitoring
- Check that alert rules are configured and enabled for the relevant services
- Confirm notification channels (email, Slack, PagerDuty) are configured and tested
API Errors
403 Forbidden
Symptom: API returns 403 when accessing a resource.
Common causes:
| Cause | Solution |
|---|---|
| Insufficient role | Request a higher role from the project owner |
| Feature not in plan | Upgrade your subscription to access this feature |
| IP not allowlisted | Add your IP to the allowlist (Enterprise) |
| API key scope | Ensure the API key has access to the target project |
429 Too Many Requests
Symptom: API returns 429 with a Retry-After header.
Solution: You have exceeded the rate limit for your plan. Implement exponential backoff in your client:
import time
import requests
def api_call_with_retry(url, headers, max_retries=3):
for attempt in range(max_retries):
response = requests.get(url, headers=headers)
if response.status_code == 429:
retry_after = int(response.headers.get("Retry-After", 60))
time.sleep(retry_after)
continue
return response
raise Exception("Rate limit exceeded after retries")Rate limits by plan: Starter (120/min), Team (300/min), Business (600/min), Enterprise (1,200/min).
422 Validation Error
Symptom: API returns 422 with a validation error message.
Solution: Check the response body for details on which fields failed validation. Common issues:
- Missing required fields (e.g.,
name,project_id) - Invalid UUID format
- String exceeds maximum length
- Duplicate resource name within the same scope
Cost Calculation Delays
Symptom: Cost estimates are not updating or show stale data.
Solution: Cost calculations run as background jobs and may take a few minutes to reflect changes. Provider pricing data is refreshed periodically. If costs seem incorrect:
- Verify server specs and provider are set correctly on each server entry
- Check that the cloud provider integration is connected for real-time pricing
- Force a recalculation by updating any field on the affected server
Import/Export Issues
Import Fails with Validation Error
Symptom: POST /impex/import returns an error.
Solutions:
- Ensure
project_idandenvironment_idare valid UUIDs for existing resources - Verify the JSON structure matches the export format
- Check that referenced IDs within the JSON are internally consistent
- Import runs as a background job. Check status in Settings > Jobs for detailed error messages
Export Contains Unexpected Data
Symptom: Exported JSON includes more or fewer resources than expected.
Solution: Export is scoped to a single project and environment pair. Verify you are specifying the correct project_id and environment_id in the export request.
Getting Help
If you cannot resolve an issue using this guide:
- Check the Quazzar Status Page for platform-wide incidents
- Review the audit log in Settings > Activity Log for relevant events
- Search the Quazzar Community Forum for similar issues
- Contact support:
- Free/Starter: Email [email protected] (72-48h response)
- Team/Business: Email + chat via the dashboard Help widget (24h response)
- Enterprise: Use your dedicated support channel (4h response for critical issues)
- Enterprise+: 24/7 priority support with 1h response for critical issues
When contacting support, include:
- Your account email and project name
- The API endpoint and request that triggered the issue
- The full error response (status code and body)
- Steps to reproduce the problem