iPanic Analyzer · API v1

Integration quickstart

Get a JSON diagnosis and a PDF report from your first synthetic .ips file.

1. Accept your invitation and create a key

  1. Open the invitation from iPanic. Sign in or create an account with the invited email address, verify that address, and select Accept invitation.
  2. In the Integration portal, enter a key name and select Create key. Copy the key while it is visible and store it as a secret on your backend.

Use the synthetic files linked on this page. Wait for iPanic to confirm the pilot terms and provide the authorized endpoint before sending real customer logs.

2. Submit a sample from your backend

Set IPANIC_API_KEY in your backend environment and run these commands in a shell with curl, jq, and uuidgen. The sandbox supports report text in English (en), Spanish (es), and Brazilian Portuguese (pt-br).

API_ORIGIN='https://sandbox.ipanicanalyzer.com'
REQUEST_KEY="$(uuidgen)"
curl --fail-with-body --silent --show-error \
  "$API_ORIGIN/sample.ips" --output panic-full-example.ips

curl --fail-with-body --silent --show-error \
  -H "Authorization: Bearer ${IPANIC_API_KEY:?Set your sandbox API key}" \
  -H "Idempotency-Key: $REQUEST_KEY" \
  -F 'file=@panic-full-example.ips' \
  -F 'language=en' \
  "$API_ORIGIN/api/v1/analyses" --output receipt.json

HTTP 202 means the API accepted the job. Save the receipt and the request key. If the connection drops, repeat the submission with the same file, language, and request key within 24 hours to get the original job without consuming another unit.

3. Retrieve the JSON and PDF

STATUS_PATH="$(jq -er '.statusUrl' receipt.json)"
curl --fail-with-body --silent --show-error --dump-header headers.txt \
  -H "Authorization: Bearer ${IPANIC_API_KEY:?Set your sandbox API key}" \
  "$API_ORIGIN$STATUS_PATH" --output analysis.json
jq -r '.status' analysis.json

While the job is queued or processing, repeat the status request after the number of seconds in the Retry-After header. When it is completed, read result in analysis.json and download the PDF.

PDF_PATH="$(jq -er '.reportPdfUrl' analysis.json)"
curl --fail-with-body --silent --show-error \
  -H "Authorization: Bearer ${IPANIC_API_KEY:?Set your sandbox API key}" \
  "$API_ORIGIN$PDF_PATH" --output ipanic-report.pdf

If the job is failed, read failure.code and failure.message. Completed results and PDFs remain available for up to 24 hours from submission or until your allocation expires, whichever comes first.

Quota and support

Sandbox allocations last 30 days. The Integration portal shows your quota and the exact expiry date. A completed analysis uses one unit. A failed analysis releases its reserved unit. Status requests and PDF downloads use zero units. Your backend can check the balance with GET /api/v1/usage.

For help, email contact@ipanicanalyzer.com with your analysis ID or the error response’s requestId. Keep your API key private.