Particle Health · Arazzo Workflow

Particle Health Clinical Document Exchange

Version 1.0.0

Submit a clinical document to the network, then retrieve it and list all documents on file for the patient.

1 workflow 2 source APIs 1 provider
View Spec View on GitHub ADTC-CDACare CoordinationCarequalityClinical DataCommonWellDeltaseHealth ExchangeEHRFHIRHealth DataHealth Information ExchangeHealthcareHIEHL7HL7v2InteroperabilityMedical RecordsPatientsPharmacyQHINSurescriptsTEFCAUSCDIArazzoWorkflows

Provider

particle-health

Workflows

clinical-document-exchange
Push a clinical document and confirm it by reading it back and listing the patient's documents.
Submits a clinical document, reads the stored document by id, and lists all documents available for the patient.
4 steps inputs: clientId, clientSecret, document, particlePatientId outputs: documentId, documents
1
authenticate
Exchange the client credentials for a bearer token used by every subsequent call.
2
submitDocument
Push the clinical document into the network for the patient.
3
readDocument
Read the stored document back by id to confirm it was received and indexed.
4
listPatientDocuments
List every document currently on file for the patient.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Particle Health Clinical Document Exchange
  summary: Submit a clinical document to the network, then retrieve it and list all documents on file for the patient.
  description: >-
    A clinical document exchange flow aligned with the HL7 Da Vinci Clinical Data
    Exchange (CDex) pattern. A document (for example a C-CDA, referral, or
    discharge summary) is pushed to the network, the stored document is read back
    by id to confirm receipt, and the full set of documents on file for the
    patient is listed. Each step inlines its request so the flow is self-contained.
  version: 1.0.0
  x-realizes-capability-ids:
  - BC-2900
  x-capability-derivation:
    method: 'deterministic join: sourceDescriptions -> per-tag OpenAPI -> tag/capability edge. No classification at this step.'
    min_confidence: 0.7
    sources:
    - capability_id: BC-2900
      capability_name: Health Information Management
      spec: particle-health-documents-api-openapi.yml
      confidence: 0.7
    model: Turbo EA Capabilities by Vincent Verdet — Turbo EA, https://github.com/vincentmakes/turbo-ea-capabilities, CC BY 4.0
sourceDescriptions:
- name: authenticationApi
  url: ../openapi/particle-health-authentication-api-openapi.yml
  type: openapi
- name: documentsApi
  url: ../openapi/particle-health-documents-api-openapi.yml
  type: openapi
workflows:
- workflowId: clinical-document-exchange
  summary: Push a clinical document and confirm it by reading it back and listing the patient's documents.
  description: >-
    Submits a clinical document, reads the stored document by id, and lists all
    documents available for the patient.
  inputs:
    type: object
    required:
    - clientId
    - clientSecret
    - particlePatientId
    - document
    properties:
      clientId:
        type: string
        description: Particle client id used to obtain a bearer token.
      clientSecret:
        type: string
        description: Particle client secret used to obtain a bearer token.
      particlePatientId:
        type: string
        description: The Particle patient id the document belongs to.
      document:
        type: object
        description: The clinical document payload (content, type, and metadata) to submit.
  steps:
  - stepId: authenticate
    description: Exchange the client credentials for a bearer token used by every subsequent call.
    operationId: getAuthToken
    parameters:
    - name: client_id
      in: header
      value: $inputs.clientId
    - name: client_secret
      in: header
      value: $inputs.clientSecret
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      token: $response.body#/token
  - stepId: submitDocument
    description: Push the clinical document into the network for the patient.
    operationId: submitDocument
    requestBody:
      contentType: application/json
      payload: $inputs.document
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      documentId: $response.body#/id
  - stepId: readDocument
    description: Read the stored document back by id to confirm it was received and indexed.
    operationId: getDocument
    parameters:
    - name: id
      in: path
      value: $steps.submitDocument.outputs.documentId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      document: $response.body
  - stepId: listPatientDocuments
    description: List every document currently on file for the patient.
    operationId: getPatientDocuments
    parameters:
    - name: id
      in: path
      value: $inputs.particlePatientId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      documents: $response.body
  outputs:
    documentId: $steps.submitDocument.outputs.documentId
    documents: $steps.listPatientDocuments.outputs.documents

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/particle-health-clinical-document-exchange-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.