Help Center/Troubleshooting

Troubleshooting

Encountering an issue? This guide covers the most common problems and how to resolve them. If you can't find your answer here, contact our support team.

Upload Failures

413File Too Large

The uploaded file exceeds the maximum allowed size (default: 20 MB per image). Reduce the file size or configure a higher limit if your plan supports it.

415Unsupported Media Type

The file type is not accepted. Check the allowed_mime_types parameter on your session. By default, only image types (JPEG, PNG, WebP, HEIC) are allowed.

422Session Full

The session has already reached its max_images limit. Create a new session if more uploads are needed.

500Server Error

An unexpected error occurred on our end. This is rare and usually resolves within minutes. Check the Apertur status page for ongoing incidents.

Webhook Issues

Not Receiving Webhooks

If your endpoint isn't receiving webhook deliveries, check the following:

  • Verify your webhook URL is publicly accessible (not behind a firewall or VPN).
  • Ensure your endpoint responds with a 2xx status code within 30 seconds.
  • Check the delivery logs in your project dashboard for error details.
  • Confirm the session's delivery_mode is set to "webhook".

Signature Verification Failing

If signature verification fails on your end:

  • Make sure you're using the raw request body (not a parsed or re-serialized version).
  • Verify you're using the correct webhook secret for this project.
  • Ensure you're comparing the full signature string including the "sha256=" prefix.

See the webhook signatures guide for implementation examples.

Duplicate Deliveries

In rare cases, Apertur may retry a delivery if the initial response was ambiguous (e.g., a timeout). Use the X-APTR-Delivery-ID header to deduplicate on your end.

QR Code Problems

Camera Won't Open

  • Make sure the user has granted camera permissions to their browser.
  • The upload page must be served over HTTPS (this is always the case with Apertur-hosted URLs).
  • Try using a different browser (Safari on iOS, Chrome on Android).
  • Clear the browser cache and try again.
  • On iOS, ensure the camera is not restricted by Screen Time or MDM policies.

QR Code Shows an Error

  • "Session expired" — the session has passed its expires_at time. Create a new session.
  • "Session full" — the max_images limit has been reached.
  • "Session not found" — the session ID in the URL is invalid. Verify the QR code was generated correctly.

Sharing QR Codes Across Devices

Each QR code links to a unique session URL. You can share this URL via SMS, email, or messaging apps instead of scanning — just send the qr_url value directly.

Session Expired

Sessions expire after the configured expires_in duration (default: 1 hour). Once expired, no more uploads are accepted.

How to Handle Expiration

  • Increase the expires_in parameter when creating sessions if users need more time.
  • Monitor session status and proactively create new sessions when needed.
  • Inform your end-users about the time limit so they upload promptly.

Tip

For long-running workflows, set expires_in to up to 7 days (604800 seconds). Keep in mind that longer sessions may pose a higher security risk.

Rate Limiting

Apertur enforces rate limits to ensure fair usage and platform stability. If you exceed a limit, the API responds with 429 Too Many Requests.

EndpointLimit
POST /api/v1/sessions60 requests per minute
GET /api/v1/sessions120 requests per minute
File uploads30 uploads per minute per session

To handle rate limits gracefully:

  • Check the Retry-After header for the number of seconds to wait.
  • Implement exponential backoff in your retry logic.
  • Batch operations where possible to reduce request volume.
  • Contact support if your use case requires higher limits.

Contact Support

If you've tried the steps above and still need help, our support team is here for you.

Before contacting support

Please include your project ID, the session ID (if applicable), the full error message, and the approximate time the issue occurred. This helps us investigate much faster.

Status Page

Check the Apertur status page for real-time information about platform availability and ongoing incidents.

Contact Form

Use our contact form to submit a detailed support request. Include your project ID, session ID, and any error messages to help us resolve your issue faster.

Was this article helpful?

Need more help? Contact our support team.

Troubleshooting | Help center | Apertur