Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.artosai.com/llms.txt

Use this file to discover all available pages before exploring further.

Outlines API

The Outlines API manages document outlines that structure document content with hierarchical sections.

Get Outline

Retrieve a complete outline with all sections ordered by index.
GET /api/v1/mrt-outlines/{outline_id}

Path Parameters

ParameterTypeRequiredDescription
outline_idstringYesUUID of outline

Request Example

curl -X GET "https://api.artosai.com/api/v1/mrt-outlines/outline-uuid" \
  -H "Authorization: Bearer YOUR_TOKEN"

Response

{
  "outline": {
    "outline_id": "outline-uuid-123",
    "document_metadata": {
      "document_type": "CSR",
      "document_name": "CSR_Final",
      "sponsor_name": "Acme Pharma",
      "study_identifier": "ACME-2024-001"
    },
    "connector_data_id": "project-2024-001",
    "endpoint_analysis": "Initial outline generated from template",
    "rule_type_to_table_like_status": {
      "CopyPasteRule": true
    },
    "sections": [
      {
        "section_id": "1.0",
        "order_index": 0,
        "level": 1,
        "title": "Executive Summary",
        "synopsis": "High-level overview of study findings",
        "template_instructions": "Summarize the key findings in 2-3 paragraphs",
        "template_text": "This section provides a concise overview...",
        "relevant_chunk_ids": ["chunk-uuid-1", "chunk-uuid-2"]
      },
      {
        "section_id": "2.0",
        "order_index": 1,
        "level": 1,
        "title": "Study Design",
        "synopsis": "Description of study methodology",
        "template_instructions": "Describe the study design and primary objectives",
        "template_text": "",
        "relevant_chunk_ids": []
      },
      {
        "section_id": "2.1",
        "order_index": 2,
        "level": 2,
        "title": "Primary Endpoints",
        "synopsis": "Primary efficacy endpoints",
        "template_instructions": "List all primary endpoints with rationale",
        "template_text": "",
        "relevant_chunk_ids": ["chunk-uuid-3"]
      }
    ]
  }
}

Status Codes

  • 200 OK: Outline retrieved successfully
  • 400 Bad Request: Authentication failed or outline not found
  • 403 Forbidden: User not authorized (different organization)
  • 500 Internal Server Error: Database error

Update Outline

Full replacement (PUT) of a document outline. All existing sections are deleted and replaced with the provided structure.
PUT /api/v1/mrt-outlines/{outline_id}

Path Parameters

ParameterTypeRequiredDescription
outline_idstringYesUUID of outline

Request Body

{
  "document_metadata": {
    "document_type": "CSR",
    "document_name": "CSR_Final",
    "sponsor_name": "Acme Pharma",
    "study_identifier": "ACME-2024-001"
  },
  "connector_data_id": "project-2024-001",
  "endpoint_analysis": "Updated analysis results",
  "rule_type_to_table_like_status": {
    "CopyPasteRule": true,
    "SummaryRule": false
  },
  "sections": [
    {
      "section_id": "1.0",
      "order_index": 0,
      "level": 1,
      "title": "Executive Summary",
      "synopsis": "Overview of study findings",
      "template_instructions": "Summarize key findings in 2-3 paragraphs",
      "template_text": "This section provides...",
      "relevant_chunk_ids": ["chunk-uuid-1", "chunk-uuid-2"]
    },
    {
      "section_id": "2.0",
      "order_index": 1,
      "level": 1,
      "title": "Study Design",
      "synopsis": "Study methodology description",
      "template_instructions": "Describe the study design and primary objectives",
      "relevant_chunk_ids": []
    }
  ]
}

Request Parameters

ParameterTypeRequiredDescription
document_metadataobjectYesOutline metadata (must include document_type)
sectionsarrayYesSection dictionaries (at least one required)
connector_data_idstringNoDocument set key for search scoping
endpoint_analysisstringNoAnalysis or processing notes
rule_type_to_table_like_statusobjectNoMap of rule type → boolean for table rendering

Section Parameters

Each section in the sections array is a dictionary and can include:
ParameterTypeRequiredDescription
section_idstringYesUnique section identifier (e.g., "1.0", "2.1")
order_indexintegerYesPosition in outline (must be unique)
levelintegerYesNesting level (1 = top-level, 2 = subsection, etc.)
titlestringYesSection title
synopsisstringNoBrief section summary
template_instructionsstringNoInstructions for generating this section
template_textstringNoTemplate/boilerplate text
relevant_chunk_idsarrayNoReferenced source chunk IDs

Request Example

curl -X PUT "https://api.artosai.com/api/v1/mrt-outlines/outline-uuid" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "document_metadata": {
      "document_type": "CSR"
    },
    "sections": [
      {
        "section_id": "section-1",
        "order_index": 0,
        "level": 1,
        "title": "Executive Summary",
        "content": "Updated content"
      }
    ]
  }'

Python Example

import requests

url = "https://api.artosai.com/api/v1/mrt-outlines/outline-uuid"
headers = {
    "Authorization": "Bearer YOUR_TOKEN",
    "Content-Type": "application/json"
}

payload = {
    "document_metadata": {"document_type": "CSR"},
    "sections": [
        {
            "section_id": "section-1",
            "order_index": 0,
            "level": 1,
            "title": "Executive Summary",
            "content": "Updated content"
        }
    ]
}

response = requests.put(url, headers=headers, json=payload)
outline = response.json()
print(f"Updated outline: {outline}")

Response

{
  "outline": {
    "outline_id": "outline-uuid-123",
    "document_metadata": {
      "document_type": "CSR",
      "document_name": "CSR_Final",
      "sponsor_name": "Acme Pharma"
    },
    "connector_data_id": "project-2024-001",
    "endpoint_analysis": "Updated analysis results",
    "rule_type_to_table_like_status": {
      "CopyPasteRule": true
    },
    "sections": [
      {
        "section_id": "1.0",
        "order_index": 0,
        "level": 1,
        "title": "Executive Summary",
        "synopsis": "Overview of study findings",
        "template_instructions": "Summarize key findings",
        "template_text": "Updated section content...",
        "relevant_chunk_ids": ["chunk-uuid-1"]
      }
    ]
  }
}

Status Codes

  • 200 OK: Outline updated successfully
  • 400 Bad Request: Invalid outline structure or missing sections
  • 401 Unauthorized: Missing or invalid Bearer token
  • 403 Forbidden: User not authorized
  • 404 Not Found: Outline not found
  • 500 Internal Server Error: Database error

Important Notes

  • Full Replacement: This is a PUT operation, not a PATCH. All sections are replaced.
  • Section Order: order_index must be unique across all sections
  • Hierarchical Structure: Sections support multiple nesting levels via the level parameter
  • Cascading Delete: Old sections and all associated data are deleted before insert