👾API Reference Docs
Step 1: Get Token
Input object to obtain token
User's API email
user@example.comUser's API username. Optional, defaults to user_api_email
user@example.comUser's API password
password123Success
Success token response
Status of the request
successPossible values: HTTP status code
200Possible values: OAuth token for user
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Missing required fields
Unauthorized
Internal server error
POST /get-token HTTP/1.1
Host: api.abstractive.ai
Content-Type: application/json
Accept: */*
Content-Length: 105
{
"user_api_email": "user@example.com",
"username_api": "user@example.com",
"user_api_password": "password123"
}{
"status": "success",
"status_code": 200,
"access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}Important Notes
Step 2. Search for a Patient (Optional)
Search Patient
Patient Search Input
User's API email
user@example.comOAuth token obtained from get-token route
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Optional team API code resolved for the authenticated organization. Used to associate the patient search with a team.
defaultOverall search robustness level. Accepts Optimized, Thorough, Robust, or an integer from 1 to 100.
OptimizedWhen true, the downstream patient search pipeline also requests summarization work after the patient search is kicked off.
falseExample: trueFlag to indicate if this is a test request
falseExample: trueAt least one patient was successfully queued for processing
Request accepted. At least one patient search was queued. Top-level status is success if all items queued successfully and partial_success if some items failed immediately.
Status of the request
successPossible values: HTTP status code
202Possible values: Unique identifier associated with the request. Use this to chain subsequent retrieval and summarization API calls.
550e8400-e29b-41d4-a716-446655440000Whether any patient search is still processing
truePossible values: UTC timestamp for when the response was generated
2026-03-17T13:45:21.123456Request validation failed or all patient searches failed with client-side errors
Unauthorized
Patient selection could not be automated because multiple possible patient matches were found
Rate limit exceeded — the same patient was already searched within the last hour
Internal server error or all patient searches failed with server-side errors
POST /search-patient HTTP/1.1
Host: api.abstractive.ai
Content-Type: application/json
Accept: */*
Content-Length: 502
{
"user_api_email": "user@example.com",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"api_code": "default",
"patient_metadata": [
{
"addresses": [
{
"street_address_line": "1100 Test Street",
"city": "Helena",
"state": "AL",
"postal_code": "35080",
"country": "US"
}
],
"demographics": {
"given_name": "Nwhinone",
"family_name": "Nwhinzzztestpatient",
"administrative_gender_code": "M",
"birth_time": "19810101",
"email": "patient@example.com",
"phone_number": "205-111-1111"
}
}
],
"robustness": "Optimized",
"summarize": true,
"test": true
}{
"status": "success",
"status_code": 202,
"conversation_id": "550e8400-e29b-41d4-a716-446655440000",
"processing": true,
"timestamp": "2026-03-17T13:45:21.123456",
"results": [
{
"status": "success",
"status_code": 202,
"patient_id": "patient123",
"pid": "patient123",
"given_name": "Nwhinone",
"family_name": "Nwhinzzztestpatient",
"birth_time": "19810101",
"administrative_gender_code": "M",
"processing": true,
"error": "No patient addresses found. Please retry with patient addresses."
}
]
}Test Patient Example
Important Notes
Patient Disambiguation Required
Retrieve Patient Documents
Input object to retrieve patient documents
Unique identifier associated with the request
550e8400-e29b-41d4-a716-446655440000User's API email
user@example.comOAuth token obtained from get-token route
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Unique patient identifier (single ID or array of IDs)
9de61c87-b0ce-4d34-8785-dacb55408eea["patient123","patient456"]Flag to indicate if this is a test request
falseExample: trueAll documents successfully retrieved
Successful document retrieval response
Overall status of the request
HTTP status code
unique identifier associated with the request
whether processing is occurring
Documents still processing
Some documents retrieved, others failed or processing
Invalid request parameters
Unauthorized
Conversation_id not recognized
Internal server error
POST /retrieve-patient-docs HTTP/1.1
Host: api.abstractive.ai
Content-Type: application/json
Accept: */*
Content-Length: 208
{
"conversation_id": "550e8400-e29b-41d4-a716-446655440000",
"user_api_email": "user@example.com",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"patient_id": "9de61c87-b0ce-4d34-8785-dacb55408eea",
"test": true
}{
"status": "success",
"status_code": 200,
"conversation_id": "text",
"processing": false,
"results": [
{
"status": "success",
"status_code": 200,
"conversation_id": "550e8400-e29b-41d4-a716-446655440000",
"patient_id": "patient123",
"url": "https://s3.amazonaws.com/bucket/results.json?AWSAccessKeyId=...",
"expires_in": 3600,
"processing": false
}
]
}URL Retrieval and Directory Structure
Structure of the zipped folder
Output Document Information
Important Notes
Step 3. Bulk Document Upload (Optional)
Input Parameters
Upload Patient Documents Input - supports two modes (existing patient or new patient with metadata)
User's API email
user@example.comOAuth token obtained from get-token route
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Optional conversation ID. If not provided, one will be generated
550e8400-e29b-41d4-a716-446655440000Existing patient ID (for Option 1)
9de61c87-b0ce-4d34-8785-dacb55408eeaDocuments successfully uploaded and processed
Successful document upload
Status of the request
successPossible values: HTTP status code
202Possible values: Unique identifier associated with the request
550e8400-e29b-41d4-a716-446655440000Patient ID
patient123Number of files successfully processed
3Whether processing is occurring
trueDocuments uploaded and processing started
Invalid request
Unauthorized
Patient not found
Patient selection could not be automated because multiple possible patient matches were found
Internal server error
POST /upload-patient-docs HTTP/1.1
Host: api.abstractive.ai
Content-Type: application/json
Accept: */*
Content-Length: 669
{
"user_api_email": "user@example.com",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"conversation_id": "550e8400-e29b-41d4-a716-446655440000",
"patient_id": "9de61c87-b0ce-4d34-8785-dacb55408eea",
"patient_metadata": {
"addresses": [
{
"street_address_line": "1100 Test Street",
"city": "Helena",
"state": "AL",
"postal_code": "35080",
"country": "USA"
}
],
"demographics": {
"given_name": "Nwhinone",
"family_name": "Nwhinzzztestpatient",
"administrative_gender_code": "M",
"birth_time": "19810101",
"phone_number": "205-111-1111"
}
},
"files": {
"non_text": [
"JVBERi0xLjQKJdPr6eEKMSAwIG9iago..."
],
"cda": [
"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0..."
],
"fhir": [
"eyJyZXNvdXJjZVR5cGUiOiJQYXRpZW50Iiwi..."
]
}
}{
"status": "success",
"status_code": 202,
"conversation_id": "550e8400-e29b-41d4-a716-446655440000",
"patient_id": "patient123",
"document_count": 3,
"processing": true
}Step 4. Request a Summary (From Patient Search and/or From Bulk Upload Documents)
Input Parameters
Input object to request a conversation summary
User's API email
user@example.comOAuth token obtained from get-token route
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Unique patient identifier
9de61c87-b0ce-4d34-8785-dacb55408eeaUnique identifier associated with the request
550e8400-e29b-41d4-a716-446655440000Flag to indicate if this is a test request
falseExample: trueProcessing started
Processing status for summary request
Status of the request
successPossible values: HTTP status code
202Possible values: Unique identifier associated with the request
550e8400-e29b-41d4-a716-446655440000Unique patient identifier
patient123Whether processing is occurring
truePossible values: Missing required fields
Unauthorized
Internal server error
POST /request-summary HTTP/1.1
Host: api.abstractive.ai
Content-Type: application/json
Accept: */*
Content-Length: 208
{
"user_api_email": "user@example.com",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"patient_id": "9de61c87-b0ce-4d34-8785-dacb55408eea",
"conversation_id": "550e8400-e29b-41d4-a716-446655440000",
"test": true
}{
"status": "success",
"status_code": 202,
"conversation_id": "550e8400-e29b-41d4-a716-446655440000",
"patient_id": "patient123",
"processing": true
}Important Notes
Step 5. Retrieve a Summary
Input Parameters
Input object to retrieve a generated conversation summary
User's API email
user@example.comOAuth token obtained from get-token route
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Unique identifier associated with the request
550e8400-e29b-41d4-a716-446655440000Unique patient identifier
9de61c87-b0ce-4d34-8785-dacb55408eeaFlag to indicate if this is a test request
falseExample: trueSummary ready
Successful summary retrieval response
Status of the request
successPossible values: HTTP status code
200Possible values: Unique identifier associated with the request
550e8400-e29b-41d4-a716-446655440000Unique patient identifier
patient123Presigned URL to download summary
https://s3.amazonaws.com/bucket/summary.json?AWSAccessKeyId=...URL expiration time in seconds
3600Possible values: Whether URL is posted
truePossible values: Whether processing is occurring
Summary still processing
Missing required fields
Unauthorized
Conversation_id not recognized
Internal server error
POST /retrieve-summary HTTP/1.1
Host: api.abstractive.ai
Content-Type: application/json
Accept: */*
Content-Length: 208
{
"user_api_email": "user@example.com",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"conversation_id": "550e8400-e29b-41d4-a716-446655440000",
"patient_id": "9de61c87-b0ce-4d34-8785-dacb55408eea",
"test": true
}{
"status": "success",
"status_code": 200,
"conversation_id": "550e8400-e29b-41d4-a716-446655440000",
"patient_id": "patient123",
"url": "https://s3.amazonaws.com/bucket/summary.json?AWSAccessKeyId=...",
"expires_in": 3600,
"posted": true,
"processing": false
}Format of cleaned_text_notes/
AI Summary Format
Summary Scoring
Important Notes
Step 6. Push Back Treatment Documents
Push a document
Push structured note data for CDA conversion and storage. Each summary item must include either patient_id or patient_metadata, and either summary_id or summary_edited.
User's API email
user@example.comOAuth token obtained from get-token route
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Flag to indicate if this is a test request
falseAll pushed documents completed successfully
All pushed documents completed successfully
Unique identifier associated with the request
UTC timestamp for when the response was generated
Combined message across pushed note results
Some pushed documents completed successfully while others failed
Validation failure
Unauthorized
Internal server error
POST /push-document HTTP/1.1
Host: api.abstractive.ai
Content-Type: application/json
Accept: */*
Content-Length: 800
{
"user_api_email": "user@example.com",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"test": false,
"author": {
"given_name": "Alex",
"family_name": "Smith",
"authored_on": "20260317",
"npi": "1234567890",
"specialty": "Internal Medicine"
},
"summaries": [
{
"summary_id": "summary-123",
"patient_id": "patient123",
"patient_metadata": {
"addresses": [
{
"street_address_line": "1100 Test Street",
"city": "Helena",
"state": "AL",
"postal_code": "35080",
"country": "US"
}
],
"demographics": {
"given_name": "Nwhinone",
"family_name": "Nwhinzzztestpatient",
"administrative_gender_code": "M",
"birth_time": "19810101",
"email": "patient@example.com",
"phone_number": "205-111-1111"
}
},
"summary_assessment": "Follow-up note for chronic condition management.",
"summary_edited": "Patient is stable on current medication regimen.",
"summary_format": "text"
}
]
}{
"status": "success",
"status_code": 200,
"conversation_id": "text",
"processing": false,
"timestamp": "2026-01-01T00:00:00.000Z",
"message": "text",
"results": [
{
"status": "success",
"status_code": 200,
"processing": false,
"timestamp": "2026-01-01T00:00:00.000Z",
"patient_id": "patient123",
"document_count": 1,
"note_id": "note-123",
"summary_id": "summary-123",
"message": "Pushed document successfully",
"failure_reason": "text",
"error": "text"
}
]
}Important Notes
Question & Answering
Ask a Question
Request to ask a clinical question about a patient
API user email address
provider@hospital.orgAPI access token obtained from POST /get-token
eyJhbGciOiJSUzI1NiJ9...Internal patient identifier returned by POST /search-patient
3fa85f64-5717-4562-b3fc-2c963f66afa6Natural-language clinical question about the patient
What medications is the patient currently taking for hypertension?Conversation ID from a previous /ask response. Pass this to continue an existing conversation rather than starting a new one.
7c9e6679-7425-40de-944b-e07fc1f90ae7Controls how broadly the patient's chart is searched before answering. auto (default) lets the AI automatically select retrieval depth and response model based on the question — recommended for most use cases. direct performs a fast minimal lookup, best for simple targeted facts such as "When was the patient's last hospitalization?" complex performs maximum-depth retrieval across the full chart history, best for longitudinal questions such as "Show me all historical lab results." Manual overrides (direct and complex) require Q&A Mode Selection to be enabled for your organization; without it, requests proceed with auto mode and a subscription note is included in the response.
autoExample: autoPossible values: Answer generated successfully
Successful answer to a clinical question
successPossible values: 200AI-generated clinical answer grounded in the patient's chart
The patient is currently prescribed lisinopril 10 mg daily and amlodipine 5 mg daily.Conversation identifier. Pass this in subsequent /ask calls to continue the conversation, or in /get-alert-event follow-ups.
7c9e6679-7425-40de-944b-e07fc1f90ae7Unique identifier for this specific message
9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6dOptional subscription note. Present when a manual mode override was requested but Q&A Mode Selection is not enabled for the organization; the request proceeded with auto mode instead.
Manual mode selection is not enabled for your organization. This request proceeded with auto mode. Contact Abstractive Health to enable direct and complex mode overrides.Validation error
Unauthorized
Internal server error
POST /ask HTTP/1.1
Host: api.abstractive.ai
Content-Type: application/json
Accept: */*
Content-Length: 279
{
"user_api_email": "provider@hospital.org",
"token": "eyJhbGciOiJSUzI1NiJ9...",
"patient_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"question": "What medications is the patient currently taking for hypertension?",
"conversation_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"mode": "auto"
}{
"status": "success",
"status_code": 200,
"processing": false,
"answer": "The patient is currently prescribed lisinopril 10 mg daily and amlodipine 5 mg daily.",
"conversation_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"message_id": "9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d",
"mode_note": "Manual mode selection is not enabled for your organization. This request proceeded with auto mode. Contact Abstractive Health to enable direct and complex mode overrides.",
"sources": [
{
"content": "Patient reports taking lisinopril 10mg and amlodipine 5mg daily.",
"note_title": "Progress Note",
"timestamp": "2024-03-15T09:30:00Z"
}
]
}Important Notes
List Conversations
Request to list Q&A conversations
provider@hospital.orgeyJhbGciOiJSUzI1NiJ9...Optional — filter conversations to a specific patient
3fa85f64-5717-4562-b3fc-2c963f66afa6Conversations retrieved
List of Q&A conversations
successPossible values: 200Unauthorized
Internal server error
POST /list-conversations HTTP/1.1
Host: api.abstractive.ai
Content-Type: application/json
Accept: */*
Content-Length: 128
{
"user_api_email": "provider@hospital.org",
"token": "eyJhbGciOiJSUzI1NiJ9...",
"patient_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}{
"status": "success",
"status_code": 200,
"processing": false,
"conversations": [
{
"conversation_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"title": "Hypertension medication review",
"updated_at": "2024-03-15T09:30:00Z"
}
]
}Get Conversation
Request to retrieve a full conversation
provider@hospital.orgeyJhbGciOiJSUzI1NiJ9...7c9e6679-7425-40de-944b-e07fc1f90ae7Conversation retrieved
Full message history of a Q&A conversation
successPossible values: 2007c9e6679-7425-40de-944b-e07fc1f90ae7Hypertension medication reviewValidation error
Unauthorized
Internal server error
POST /get-conversation HTTP/1.1
Host: api.abstractive.ai
Content-Type: application/json
Accept: */*
Content-Length: 133
{
"user_api_email": "provider@hospital.org",
"token": "eyJhbGciOiJSUzI1NiJ9...",
"conversation_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7"
}{
"status": "success",
"status_code": 200,
"processing": false,
"conversation_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"title": "Hypertension medication review",
"messages": [
{
"role": "assistant",
"content": "The patient is currently prescribed lisinopril 10 mg daily.",
"created_at": "2024-03-15T09:30:00Z"
}
]
}Care Notifications
Create a Care Notification
Request to create a new care notification. The care notification will automatically run against every patient summary created after this point. Versioning is handled server-side.
provider@hospital.orgeyJhbGciOiJSUzI1NiJ9...Short display name for the care notification (max 30 characters)
Elevated HbA1cThe clinical question asked of the patient's chart by the AI. Write it as a specific, answerable question.
What is the patient's most recent HbA1c value?Expected answer format — numeric measurement or boolean yes/no
numberPossible values: Condition that triggers the notification. Use number_above, number_below, or number_between with numeric answer_type. Use boolean_true or boolean_false with boolean answer_type.
number_abovePossible values: Lower threshold. Required for number_above and number_between. Notification fires when the extracted value exceeds this.
7Upper threshold. Required for number_between.
9Unit of measurement for the extracted value
%When true, the AI also searches PubMed and clinical guidelines for additional context in the response.
falseCare notification created
Care notification created
successPossible values: 200Unique identifier for the newly created care notification
3fa85f64-5717-4562-b3fc-2c963f66afa6Validation error
Unauthorized
Internal server error
POST /create-alert HTTP/1.1
Host: api.abstractive.ai
Content-Type: application/json
Accept: */*
Content-Length: 300
{
"user_api_email": "provider@hospital.org",
"token": "eyJhbGciOiJSUzI1NiJ9...",
"title": "Elevated HbA1c",
"question_text": "What is the patient's most recent HbA1c value?",
"answer_type": "number",
"trigger_type": "number_above",
"threshold_low": 7,
"threshold_high": 9,
"value_unit": "%",
"include_guidelines": false
}{
"status": "success",
"status_code": 200,
"processing": false,
"alert_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}Edit a Care Notification
Request to edit an existing care notification. A new version is created automatically and the previous version is archived. Only the original creator can edit. Pass only the fields you want to change alongside alert_id.
provider@hospital.orgeyJhbGciOiJSUzI1NiJ9...The care notification to update
3fa85f64-5717-4562-b3fc-2c963f66afa6Elevated HbA1c (updated)What is the patient's most recent HbA1c value in the past 12 months?7.5%Care notification updated
Care notification updated
successPossible values: 2003fa85f64-5717-4562-b3fc-2c963f66afa6ID of the newly created version
9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6dValidation error
Unauthorized
Internal server error
POST /edit-alert HTTP/1.1
Host: api.abstractive.ai
Content-Type: application/json
Accept: */*
Content-Length: 384
{
"user_api_email": "provider@hospital.org",
"token": "eyJhbGciOiJSUzI1NiJ9...",
"alert_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"title": "Elevated HbA1c (updated)",
"question_text": "What is the patient's most recent HbA1c value in the past 12 months?",
"answer_type": "number",
"trigger_type": "number_above",
"threshold_low": 7.5,
"threshold_high": 1,
"value_unit": "%",
"include_guidelines": false
}{
"status": "success",
"status_code": 200,
"processing": false,
"alert_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"version_id": "9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d"
}Important Notes
List Care Notifications
Request that requires authentication only — no additional parameters
API user email address
provider@hospital.orgAPI access token obtained from POST /get-token
eyJhbGciOiJSUzI1NiJ9...Care notifications retrieved
List of care notifications for the organisation
successPossible values: 200Unauthorized
Internal server error
POST /list-alerts HTTP/1.1
Host: api.abstractive.ai
Content-Type: application/json
Accept: */*
Content-Length: 76
{
"user_api_email": "provider@hospital.org",
"token": "eyJhbGciOiJSUzI1NiJ9..."
}{
"status": "success",
"status_code": 200,
"processing": false,
"alerts": [
{
"alert_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"version_id": "9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d",
"title": "Elevated HbA1c",
"answer_type": "number",
"trigger_type": "number_above",
"threshold_low": 7,
"threshold_high": null,
"value_unit": "%",
"enabled": true
}
]
}List Notification Results
Request to list care notification results for a patient
provider@hospital.orgeyJhbGciOiJSUzI1NiJ9...The patient to retrieve notification results for
3fa85f64-5717-4562-b3fc-2c963f66afa6ISO 8601 timestamp. When provided, only events created after this time are returned. Use the dispatched_at value from POST /run-alerts to scope results to a specific run.
2024-03-15T09:00:00ZFilter to results for a specific care notification
8f14e45f-ceea-467a-a866-037b5d4b4b6bFilter to only triggered (true) or non-triggered (false) results
trueMaximum number of results to return (default 50, max 200)
50Pagination offset
Notification results retrieved
Most recent care notification result per notification for a patient
successPossible values: 200Validation error
Unauthorized
Internal server error
POST /list-alert-events HTTP/1.1
Host: api.abstractive.ai
Content-Type: application/json
Accept: */*
Content-Length: 256
{
"user_api_email": "provider@hospital.org",
"token": "eyJhbGciOiJSUzI1NiJ9...",
"patient_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"created_after": "2024-03-15T09:00:00Z",
"alert_id": "8f14e45f-ceea-467a-a866-037b5d4b4b6b",
"triggered": true,
"limit": 50,
"offset": 0
}{
"status": "success",
"status_code": 200,
"processing": false,
"events": [
{
"event_id": "1c72c8c6-a6e2-4e3d-9bce-5b78ef7d8c22",
"alert_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"title": "Elevated HbA1c",
"triggered": true,
"pending": false,
"fired_at": "2024-03-15T09:30:00Z",
"conversation_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7"
}
]
}Get Notification Result
Request to retrieve a specific care notification result
provider@hospital.orgeyJhbGciOiJSUzI1NiJ9...The event ID from a /list-alert-events response
1c72c8c6-a6e2-4e3d-9bce-5b78ef7d8c22Notification result retrieved
Full detail of a care notification result
successPossible values: 200True if the evaluation is still in progress
1c72c8c6-a6e2-4e3d-9bce-5b78ef7d8c223fa85f64-5717-4562-b3fc-2c963f66afa6Elevated HbA1cWhether the patient meets the trigger criteria for this care notification
trueThe extracted value from the chart that was compared against the threshold. A number for numeric care notifications, a boolean for yes/no ones, or null if not yet available.
8.2Unit for numeric trigger values
%AI-generated clinical narrative summarising the finding
The patient's most recent HbA1c was 8.2% recorded on 2024-02-10, exceeding the 7.0% threshold.Continue the conversation with POST /ask using this ID to ask follow-up questions about this care notification finding.
7c9e6679-7425-40de-944b-e07fc1f90ae7ISO 8601 timestamp of the evaluation
2024-03-15T09:30:00ZValidation error
Unauthorized
Result not found
Internal server error
POST /get-alert-event HTTP/1.1
Host: api.abstractive.ai
Content-Type: application/json
Accept: */*
Content-Length: 126
{
"user_api_email": "provider@hospital.org",
"token": "eyJhbGciOiJSUzI1NiJ9...",
"event_id": "1c72c8c6-a6e2-4e3d-9bce-5b78ef7d8c22"
}{
"status": "success",
"status_code": 200,
"processing": false,
"event_id": "1c72c8c6-a6e2-4e3d-9bce-5b78ef7d8c22",
"alert_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"title": "Elevated HbA1c",
"triggered": true,
"trigger_value": 8.2,
"value_unit": "%",
"response": "The patient's most recent HbA1c was 8.2% recorded on 2024-02-10, exceeding the 7.0% threshold.",
"conversation_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"sources": [
{
"content": "Patient reports taking lisinopril 10mg and amlodipine 5mg daily.",
"note_title": "Progress Note",
"timestamp": "2024-03-15T09:30:00Z"
}
],
"fired_at": "2024-03-15T09:30:00Z"
}Important Notes
Delete a Care Notification
Input object to archive a care notification
Your API user email address
developer@yourorg.comYour API authentication token
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...UUID of the care notification to archive
3fa85f64-5717-4562-b3fc-2c963f66afa6Care notification archived
Confirmation that the care notification has been archived
success200Always true on success
truePresent and true if the notification was already archived before this call
Validation error
Unauthorized
Forbidden — caller is not the owner of this notification
Care notification not found
Internal server error
POST /delete-alert HTTP/1.1
Host: api.abstractive.ai
Content-Type: application/json
Accept: */*
Content-Length: 142
{
"user_api_email": "developer@yourorg.com",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"alert_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}{
"status": "success",
"status_code": 200,
"processing": false,
"archived": true,
"already_archived": false
}Important Notes
Run Care Notifications
Input object to trigger all active care notifications for a patient, team, or entire organisation. Supply exactly one of patient_id, team_api_code, or run_for_org.
Your API user email address
developer@yourorg.comYour API authentication token
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Run all active notifications for a single patient
pid_abc123Run all active notifications for every patient on this team. Use the team's human-readable api_code (not the UUID team_id).
cardiology-eastRun all active notifications for every patient in the organisation. Capped at 50 patients per call — check the truncated field.
Alert jobs dispatched
Confirmation that care notification jobs have been dispatched
success200Total number of individual alert evaluation jobs fired (patients × notifications)
12Total matching patients found before the 50-patient cap was applied
15True if the patient count exceeded 50 and only the first 50 were processed. Call again to process the remaining patients.
ISO 8601 UTC timestamp of when jobs were dispatched. Pass this as created_after to POST /list-alert-events to scope results to only this run.
2024-03-15T09:00:00.123456ZValidation error
Unauthorized
Internal server error
POST /run-alerts HTTP/1.1
Host: api.abstractive.ai
Content-Type: application/json
Accept: */*
Content-Length: 172
{
"user_api_email": "developer@yourorg.com",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"patient_id": "pid_abc123",
"team_api_code": "cardiology-east",
"run_for_org": false
}{
"status": "success",
"status_code": 200,
"processing": false,
"dispatched": 12,
"total_patients": 15,
"truncated": false,
"dispatched_at": "2024-03-15T09:00:00.123456Z"
}Important Notes
Set Webhook (Callback URL)
Input object to set or clear the care notification callback webhook URL
Your API user email address
developer@yourorg.comYour API authentication token
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...HTTPS URL to receive care notification result payloads. Omit or pass null to remove the webhook. The URL must be publicly reachable and respond with a 2xx status code.
https://yourapp.example.com/webhooks/care-notificationsWebhook URL updated
Confirmation of the webhook URL update
success200The webhook URL that was stored, or null if removed
https://yourapp.example.com/webhooks/cds-alertsValidation error
Unauthorized
Internal server error
POST /set-webhook HTTP/1.1
Host: api.abstractive.ai
Content-Type: application/json
Accept: */*
Content-Length: 164
{
"user_api_email": "developer@yourorg.com",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"webhook_url": "https://yourapp.example.com/webhooks/care-notifications"
}{
"status": "success",
"status_code": 200,
"webhook_url": "https://yourapp.example.com/webhooks/cds-alerts"
}Get Webhook (Callback URL)
Input object to retrieve the configured webhook URL
Your API user email address
developer@yourorg.comYour API authentication token
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Webhook URL retrieved
The currently configured care notification webhook URL for the organisation
success200The configured webhook URL, or null if none has been set
https://yourapp.example.com/webhooks/care-notificationsUnauthorized
Internal server error
POST /get-webhook HTTP/1.1
Host: api.abstractive.ai
Content-Type: application/json
Accept: */*
Content-Length: 92
{
"user_api_email": "developer@yourorg.com",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}{
"status": "success",
"status_code": 200,
"processing": false,
"webhook_url": "https://yourapp.example.com/webhooks/care-notifications"
}Webhook Payload
Important Notes
Last updated

