Solia Direct DocsControl Plane
⌘K

API ReferenceReference

Results endpoints

Exact request and response contracts for the results endpoints, generated from the enforced Partner API contract.

Machine-readable OpenAPI description

Endpoints in this group

GET/v1/orders/{orderId}/resultsRetrieve released structured results
GET/v1/orders/{orderId}/results/{resultId}Retrieve one released result version in full
GET/v1/orders/{orderId}/results/{resultId}/reportRetrieve the governed laboratory report for a released result

Base path: /api/public/partner/v1. Every response carries request_id; every failure uses the standard error envelope documented under Errors.

GET/v1/orders/{orderId}/results

Retrieve released structured results

Released results only. An unreleased or in-progress result version is reported as pending and is never returned, whatever its internal status. Versions are append-only: a partial version stays retrievable after the final version is released, and a corrected or amended version supersedes rather than replaces the version before it. version_lineage states the current authoritative version and every superseded version. Observation values, units and reference intervals are exactly as the laboratory supplied them; LOINC is reported as not_modeled because Core holds no observation-level LOINC authority, and no code is ever derived.

Authentication & scope

  • Authentication: Authorization: Bearer <API key>. The key is bound to one laboratory, one API client and one environment.
  • Required scope: results:read. A key without it is refused with 403 forbidden.

Path parameters

  • orderId (required) — string (uuid). Order identifier.

Responses

  • 200 — Released results, if any.
json
{
  "data": {
    "order_id": "8f14e45f-ceea-4c2b-9b3f-2a1d0c7b6a11",
    "pending": true,
    "pending_reason": "string",
    "current_result_id": "8f14e45f-ceea-4c2b-9b3f-2a1d0c7b6a11",
    "current_version": 1,
    "version_lineage": [
      {
        "result_id": "5b2f0a19-7c64-4c8e-9a12-6de4f0b31c57",
        "version": 1,
        "version_type": "string",
        "state": "partial",
        "released_at": "2026-01-15T14:32:07Z",
        "supersedes_result_id": "1c9d5b70-3f42-4a51-8d0e-77b6c2419f83",
        "superseded_by_result_id": "5b2f0a19-7c64-4c8e-9a12-6de4f0b31c57",
        "is_current": true
      }
    ],
    "results": [
      {
        "result_id": "8f14e45f-ceea-4c2b-9b3f-2a1d0c7b6a11",
        "order_id": "1c9d5b70-3f42-4a51-8d0e-77b6c2419f83",
        "accession_id": "5b2f0a19-7c64-4c8e-9a12-6de4f0b31c57",
        "accession_number": "string",
        "panel_item_id": "1c9d5b70-3f42-4a51-8d0e-77b6c2419f83",
        "version": 1,
        "version_type": "string",
        "state": "partial",
        "status": "released",
        "performing_laboratory": "string",
        "performing_laboratory_system": "string",
        "source_result_id": "string"
      }
    ]
  },
  "request_id": "string",
  "cursor": "string"
}

GET/v1/orders/{orderId}/results/{resultId}

Retrieve one released result version in full

The same released-only boundary as the collection endpoint. An unreleased version is reported as not found rather than acknowledged.

Authentication & scope

  • Authentication: Authorization: Bearer <API key>. The key is bound to one laboratory, one API client and one environment.
  • Required scope: results:read. A key without it is refused with 403 forbidden.

Path parameters

  • orderId (required) — string (uuid). Order identifier.
  • resultId (required) — string (uuid). Released result version identifier.

Responses

  • 200 — The released result version.
  • 404 — No released result version with this identifier.
json
{
  "data": {
    "result_id": "8f14e45f-ceea-4c2b-9b3f-2a1d0c7b6a11",
    "order_id": "1c9d5b70-3f42-4a51-8d0e-77b6c2419f83",
    "accession_id": "5b2f0a19-7c64-4c8e-9a12-6de4f0b31c57",
    "accession_number": "string",
    "panel_item_id": "1c9d5b70-3f42-4a51-8d0e-77b6c2419f83",
    "version": 1,
    "version_type": "string",
    "state": "partial",
    "status": "released",
    "performing_laboratory": "string",
    "performing_laboratory_system": "string",
    "source_result_id": "string"
  },
  "request_id": "string",
  "cursor": "string"
}

GET/v1/orders/{orderId}/results/{resultId}/report

Retrieve the governed laboratory report for a released result

Authorization is identical to the result itself: the same key, client, Program, environment, order and released version. Retrieval is always server-authorized per request — there is no permanent public link, no signed document URL, and no document URL is ever placed in a webhook delivery or a log. When no canonical laboratory report document exists the response is an explicit refusal carrying report_not_modeled; a report is never fabricated.

Authentication & scope

  • Authentication: Authorization: Bearer <API key>. The key is bound to one laboratory, one API client and one environment.
  • Required scope: results:read. A key without it is refused with 403 forbidden.

Path parameters

  • orderId (required) — string (uuid). Order identifier.
  • resultId (required) — string (uuid). Released result version identifier.

Responses

  • 200 — Report availability and a short-lived, server-authorized retrieval path.
  • 404 — The result is not released, or no canonical report document exists for it.
json
{
  "data": {
    "order_id": "8f14e45f-ceea-4c2b-9b3f-2a1d0c7b6a11",
    "result_id": "1c9d5b70-3f42-4a51-8d0e-77b6c2419f83",
    "report": {
      "available": true,
      "state": "available",
      "reason": "string",
      "retrieval_path": "string"
    }
  },
  "request_id": "string",
  "cursor": "string"
}