Skip to main content

Overview

The analysis endpoints allow you to perform compliance analysis, track job progress, and retrieve analysis results.

Start Gap Analysis

curl -X POST "https://api.conformly.ai/api/v1/analysis/gaps?standard_ids=uuid1&standard_ids=uuid2&work_product_ids=wp1&work_product_ids=wp2&workspace_id=uuid" \
  -H "Authorization: Bearer YOUR_JWT_TOKEN"
{
  "job_id": "uuid",
  "status": "queued",
  "message": "Compliance analysis dispatched to Celery. Use job status endpoint to track progress.",
  "estimated_duration": "2-5 minutes depending on document size",
  "processing_mode": "celery"
}

Tracking Analysis Progress

Analyses are persisted with status and timestamps. Use the endpoints below to track progress:
  • List analyses for a workspace
  • Get analysis by ID (includes gaps and recommendations)

Get Analysis Overview

curl -X GET "https://api.conformly.ai/api/v1/analysis/overview?workspace_id=uuid" \
  -H "Authorization: Bearer YOUR_JWT_TOKEN"
{
  "overall_score": 87,
  "standards": [
    {
      "standard_id": "uuid",
      "name": "ISO 26262",
      "version": "2018",
      "category": "safety",
      "score": 87,
      "trend": "up",
      "gaps": 3,
      "total_requirements": 23,
      "status": "good",
      "last_updated": "2025-01-01T12:00:00Z"
    }
  ],
  "gaps": 5,
  "recommendations": 12,
  "last_updated": "2025-01-01T12:00:00Z"
}

Analysis Status Values

  • pending: Analysis has been created but not yet started
  • processing: Analysis is currently running
  • completed: Analysis finished successfully
  • error: Analysis failed with an error
Note: Polling the job status endpoint is no longer required. Check the analysis list or a specific analysis record to see current status and results.

List Analyses

Retrieve persisted analyses for a workspace (most recent first).
curl -X GET "https://api.conformly.ai/api/v1/analysis/analyses?workspace_id=uuid&limit=10" \
  -H "Authorization: Bearer YOUR_JWT_TOKEN"
{
  "items": [
    {
      "id": "analysis-uuid",
      "workspace_id": "uuid",
      "status": "completed",
      "overall_score": 34,
      "analysis_type": "gap_analysis",
      "started_at": "2026-01-18T01:22:00Z",
      "completed_at": "2026-01-18T01:25:13Z"
    }
  ],
  "total": 9
}

Get Analysis by ID

Includes gaps, recommendations, and associated work product when available.
curl -X GET "https://api.conformly.ai/api/v1/analysis/analyses/{analysis_id}?include_gaps=true&include_recommendations=true" \
  -H "Authorization: Bearer YOUR_JWT_TOKEN"
{
  "analysis": {
    "id": "analysis-uuid",
    "workspace_id": "uuid",
    "status": "completed",
    "overall_score": 34,
    "analysis_type": "gap_analysis",
    "work_product_id": "wp-uuid"
  },
  "gaps": [{ "id": "gap-uuid", "severity": "medium", "standard": "SYS.2", "clause": "SYS.2 requirements", "status": "open" }],
  "recommendations": [{ "id": "rec-uuid", "title": "Establish traceability", "related_gap_id": "gap-uuid" }],
  "work_product": { "id": "wp-uuid", "name": "ECU_requirements_v2.pdf" },
  "type": "gap_analysis",
  "results": {}
}

List Persisted Gaps

Filter by severity, status, standard, or work product.
curl -X GET "https://api.conformly.ai/api/v1/analysis/gaps?workspace_id=uuid&severity=high&status=open&limit=50" \
  -H "Authorization: Bearer YOUR_JWT_TOKEN"
{
  "items": [
    {
      "id": "gap-uuid",
      "workspace_id": "uuid",
      "standard": "ISO21434-5",
      "clause": "requirements",
      "description": "No reference to safety goals or hazard analysis",
      "severity": "high",
      "status": "open",
      "work_product_id": "wp-uuid",
      "created_at": "2026-01-18T01:23:00Z"
    }
  ]
}

Update Gap Status

Set a gap to open, in_progress, resolved, or accepted.
curl -X PATCH "https://api.conformly.ai/api/v1/analysis/gaps/{gap_id}" \
  -H "Authorization: Bearer YOUR_JWT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"status":"in_progress"}'
{
  "id": "gap-uuid",
  "status": "in_progress",
  "updated_at": "2026-01-18T02:00:00Z"
}