Skip to content

Quickstart Guide

Get started with Integra in under 10 minutes. This guide will help you parse your first AL3 file and understand the output.

Prerequisites

  • Docker installed on your system
  • An AL3 file to test with (or use our examples)

Step 1: Pull the Docker Image

docker pull priyaiosystems/integra:latest

Step 2: Start the Container

docker run -d \
  --name integra \
  -p 8080:8080 \
  priyaiosystems/integra:latest

Verify it's running:

curl http://localhost:8080/health
# Expected: OK

Step 3: Parse Your First AL3 File

Using cURL

curl -X POST \
  --data-binary "@your-policy.al3" \
  -H "Content-Type: application/octet-stream" \
  http://localhost:8080/v1/parse

Using Python

import requests

with open('your-policy.al3', 'rb') as f:
    response = requests.post(
        'http://localhost:8080/v1/parse',
        data=f.read(),
        headers={'Content-Type': 'application/octet-stream'}
    )

data = response.json()
print(f"Processing time: {data['processingTime']}")
print(f"Groups found: {len(data['data'])}")

Using Node.js

const fs = require('fs');
const axios = require('axios');

const fileData = fs.readFileSync('your-policy.al3');

axios.post('http://localhost:8080/v1/parse', fileData, {
  headers: {'Content-Type': 'application/octet-stream'}
})
.then(response => {
  console.log(`Processing time: ${response.data.processingTime}`);
  console.log(`Groups found: ${Object.keys(response.data.data).length}`);
})
.catch(error => console.error(error));

Step 4: Understand the Response

Response Structure

{
  "data": {
    "1MHG": {
      "Policy Number": "POL-123456",
      "Effective Date": "2024-01-15",
      ...
    },
    "2TRG": {
      "Transaction Type": "NB",
      ...
    }
  },
  "processingTime": "1.234ms"
}

Response Headers

Check validation status:

curl -I -X POST --data-binary "@policy.al3" http://localhost:8080/v1/parse

# Headers:
# X-Integra-Validation-Status: true
# X-Integra-Error-Count: 0
# X-Integra-Warning-Count: 2
# X-Processing-Time: 1.234ms

Step 5: Try Different Output Formats

JSON (Default)

curl -X POST --data-binary "@policy.al3" \
  -H "Accept: application/json" \
  http://localhost:8080/v1/parse

Parquet (for Analytics)

curl -X POST --data-binary "@policy.al3" \
  -H "Accept: application/x-parquet" \
  http://localhost:8080/v1/parse > output.parquet

NDJSON (for Streaming)

curl -X POST --data-binary "@policy.al3" \
  -H "Accept: application/x-ndjson" \
  http://localhost:8080/v1/parse

CSV (for Excel)

curl -X POST --data-binary "@policy.al3" \
  -H "Accept: text/csv" \
  http://localhost:8080/v1/parse > output.csv

Step 6: Validate Without Full Parsing

For quick validation checks:

curl -X POST --data-binary "@policy.al3" \
  http://localhost:8080/v1/validate

Response:

{
  "valid": true,
  "errors": [],
  "warnings": [
    {
      "severity": "warning",
      "message": "Optional field missing",
      "groupCode": "1MHG",
      "elementId": "OPFLD"
    }
  ]
}

Next Steps

Read the API Guide

See the API Guide for comprehensive documentation on all endpoints and features.

Explore Examples

Browse our example outputs to see complete parsing results for different policy types.


⏱️ Time to First Parse: < 5 minutes
📊 Supported Formats: JSON, Parquet, NDJSON, CSV
🔒 Data Security: Zero data exfiltration - runs entirely in your environment