Skip to content
Hermes Health API
GuidesOpenAPI spec

Endpoints

Diagnoses

POST/v0/diagnoses/browse

Browse diagnoses

Queries the diagnoses on the patients visible to the caller. Read-only. Uses the shared browse syntax described in Browsing tables and returns the { table, aggregate, total } envelope as JSON, or the selected columns as CSV when you send Accept: text/csv. Until clinical data has finished loading after a service restart, the call returns 500 rather than an empty table; retry shortly.

Request bodyapplication/json

Optional parameters

  • selectobject
  • select.diagnosisobject

    Which of the diagnosis's columns to return.

  • select.diagnosis.refboolean

    Reference for the diagnosis record in the current output. It can change when clinical data is reprocessed.

  • select.diagnosis.sequenceboolean

    Sequence number of the diagnosis within its visit, claim, or lab accession. Sequence alone does not establish clinical priority.

  • select.diagnosis.createdAtboolean

    Timestamp associated with the diagnosis data in the platform. For diagnoses derived from a merged visit, this is the newest contributing visit-data timestamp.

  • select.diagnosis.dataSourcesboolean
  • select.diagnosis.codeSystemboolean

    Code system reported by the source for the diagnosis, when supplied. Currently populated for some lab-accession diagnoses.

  • select.diagnosis.descriptionboolean

    Diagnosis description supplied by the source, when available. Separate from the reference-data short and long descriptions.

  • select.diagnosis.scoreboolean

    Source-supplied score associated with the diagnosis, when available. The export does not define a universal scoring scale.

  • select.diagnosis.companyIdboolean

    Platform identifier for the customer organization associated with the record.

  • select.diagnosis.projectIdboolean

    Platform identifier for the project containing the patient and record.

  • select.diagnosis.patientIdboolean

    Platform identifier for the patient associated with the record. Use with the company and project identifiers to identify the patient scope.

  • select.diagnosis.visitRefboolean

    Reference to the parent visit. Blank for a diagnosis attached directly to a lab accession. This reference can change when the data is reprocessed.

  • select.diagnosis.labAccessionRefboolean

    Platform reference to the parent lab accession. Blank for a diagnosis attached to a visit. This is different from the source accession identifier.

  • select.diagnosis.diagnosisCodeIdboolean

    Diagnosis code associated with the record. Reference-data descriptions are provided when a matching code is available.

  • select.diagnosis.diagnosisCategoryIdboolean

    Derived ICD-10 category code associated with the diagnosis. May be empty when no matching category is available.

  • select.diagnosis.procedureCountboolean

    Number of procedure records linked to the diagnosis.

  • select.companyobject & object

    Which of the joined company's columns to return. Absent when the row has no company.

  • select.projectobject & object

    Which of the joined project's columns to return. Absent when the row has no project.

  • select.patientobject & object

    Which of the joined patient's columns to return. Absent when the row has no patient.

  • select.visitobject & object

    Which of the joined visit's columns to return. Absent when the row has no visit.

  • select.labAccessionobject & object

    Which of the joined lab accession's columns to return. Absent when the row has no lab accession.

  • select.diagnosisCodeobject & object

    Which of the joined diagnosis code's columns to return. Absent when the row has no diagnosis code.

  • select.diagnosisCategoryobject & object

    Which of the joined diagnosis category's columns to return. Absent when the row has no diagnosis category.

  • whereobject
  • where.diagnosisobject

    Filters on the diagnosis's columns.

  • where.diagnosis.refobject | object | object | object | object | object | object | string[]

    Reference for the diagnosis record in the current output. It can change when clinical data is reprocessed.

  • where.diagnosis.sequenceobject | object | object | object | object | object | object | object | string[]

    Sequence number of the diagnosis within its visit, claim, or lab accession. Sequence alone does not establish clinical priority.

  • where.diagnosis.createdAtobject | object | object | object | object | object | object | object | string[]

    Timestamp associated with the diagnosis data in the platform. For diagnoses derived from a merged visit, this is the newest contributing visit-data timestamp.

  • where.diagnosis.dataSourcesobject | object | object | object | object | object | object | string[]
  • where.diagnosis.codeSystemobject | object | object | object | object | object | object | string[]

    Code system reported by the source for the diagnosis, when supplied. Currently populated for some lab-accession diagnoses.

  • where.diagnosis.descriptionobject | object | object | object | object | object | object | string[]

    Diagnosis description supplied by the source, when available. Separate from the reference-data short and long descriptions.

  • where.diagnosis.scoreobject | object | object | object | object | object | object | object | string[]

    Source-supplied score associated with the diagnosis, when available. The export does not define a universal scoring scale.

  • where.diagnosis.companyIdobject | object | object | object | object | object | object | object | string[]

    Platform identifier for the customer organization associated with the record.

  • where.diagnosis.projectIdobject | object | object | object | object | object | object | string[]

    Platform identifier for the project containing the patient and record.

  • where.diagnosis.patientIdobject | object | object | object | object | object | object | string[]

    Platform identifier for the patient associated with the record. Use with the company and project identifiers to identify the patient scope.

  • where.diagnosis.visitRefobject | object | object | object | object | object | object | string[]

    Reference to the parent visit. Blank for a diagnosis attached directly to a lab accession. This reference can change when the data is reprocessed.

  • where.diagnosis.labAccessionRefobject | object | object | object | object | object | object | string[]

    Platform reference to the parent lab accession. Blank for a diagnosis attached to a visit. This is different from the source accession identifier.

  • where.diagnosis.diagnosisCodeIdobject | object | object | object | object | object | object | string[]

    Diagnosis code associated with the record. Reference-data descriptions are provided when a matching code is available.

  • where.diagnosis.diagnosisCategoryIdobject | object | object | object | object | object | object | string[]

    Derived ICD-10 category code associated with the diagnosis. May be empty when no matching category is available.

  • where.diagnosis.procedureCountobject | object | object | object | object | object | object | object | string[]

    Number of procedure records linked to the diagnosis.

  • where.companystring | object & object

    Filters on the joined company's columns. `isNull` or `isNotNull` in place of the filters matches the rows without or with a company.

  • where.projectstring | object & object

    Filters on the joined project's columns. `isNull` or `isNotNull` in place of the filters matches the rows without or with a project.

  • where.patientstring | object & object

    Filters on the joined patient's columns. `isNull` or `isNotNull` in place of the filters matches the rows without or with a patient.

  • where.visitstring | object & object

    Filters on the joined visit's columns. `isNull` or `isNotNull` in place of the filters matches the rows without or with a visit.

  • where.labAccessionstring | object & object

    Filters on the joined lab accession's columns. `isNull` or `isNotNull` in place of the filters matches the rows without or with a lab accession.

  • where.diagnosisCodestring | object & object

    Filters on the joined diagnosis code's columns. `isNull` or `isNotNull` in place of the filters matches the rows without or with a diagnosis code.

  • where.diagnosisCategorystring | object & object

    Filters on the joined diagnosis category's columns. `isNull` or `isNotNull` in place of the filters matches the rows without or with a diagnosis category.

  • aggregateobject
  • aggregate.diagnosisobject
  • aggregate.diagnosis.countboolean

    When true, return the number of rows that match the filter.

  • aggregate.diagnosis.sumobject

    Numeric columns to total across the rows that match the filter.

  • aggregate.diagnosis.avgobject

    Numeric columns to average across the rows that match the filter.

  • aggregate.diagnosis.minobject

    Numeric columns to find the smallest value of across the rows that match the filter.

  • aggregate.diagnosis.maxobject

    Numeric columns to find the largest value of across the rows that match the filter.

  • aggregate.companyobject & object
  • aggregate.projectobject & object
  • aggregate.patientobject & object
  • aggregate.visitobject & object
  • aggregate.labAccessionobject & object
  • aggregate.diagnosisCodeobject & object
  • aggregate.diagnosisCategoryobject & object
  • orderByobject | object | object | object | object | object | object | object[]
  • searchstring
  • takeinteger
  • skipinteger

ReturnsTyped browse response for DiagnosisBrowseResponse

Conditional attributes

  • tableobject[]
  • table[].diagnosisobject & object

    The diagnosis's columns, as selected by the request.

  • table[].companyobject & object & object & object

    The joined company's columns, as selected by the request. Absent when the row has no company.

  • table[].projectobject & object & object

    The joined project's columns, as selected by the request. Absent when the row has no project.

  • table[].patientobject & object & object

    The joined patient's columns, as selected by the request. Absent when the row has no patient.

  • table[].visitobject & object & object

    The joined visit's columns, as selected by the request. Absent when the row has no visit.

  • table[].labAccessionobject & object

    The joined lab accession's columns, as selected by the request. Absent when the row has no lab accession.

  • table[].diagnosisCodeobject & object

    The joined diagnosis code's columns, as selected by the request. Absent when the row has no diagnosis code.

  • table[].diagnosisCategoryobject & object

    The joined diagnosis category's columns, as selected by the request. Absent when the row has no diagnosis category.

  • aggregateobject
  • aggregate.diagnosisobject
  • aggregate.diagnosis.countinteger

    Number of rows that match the filter. Present when `count` was requested.

  • aggregate.diagnosis.sumobject

    Total of each requested numeric column across the rows that match the filter.

  • aggregate.diagnosis.avgobject

    Average of each requested numeric column across the rows that match the filter.

  • aggregate.diagnosis.minobject

    Smallest value of each requested numeric column across the rows that match the filter.

  • aggregate.diagnosis.maxobject

    Largest value of each requested numeric column across the rows that match the filter.

  • aggregate.companyobject & object
  • aggregate.projectobject & object
  • aggregate.patientobject & object
  • aggregate.visitobject & object
  • aggregate.labAccessionobject & object
  • aggregate.diagnosisCodeobject & object
  • aggregate.diagnosisCategoryobject & object
  • totalinteger

Errors

400401500

POST/v0/diagnosis-categories/browse

Browse diagnosis categories

Queries the ICD-10-CM diagnosis category reference table, which is the same for every caller. Read-only. Uses the shared browse syntax described in Browsing tables and returns the { table, aggregate, total } envelope as JSON, or the selected columns as CSV when you send Accept: text/csv.

Request bodyapplication/json

Optional parameters

  • selectobject
  • select.diagnosisCategoryobject

    Which of the diagnosis category's columns to return.

  • select.diagnosisCategory.idboolean

    ICD-10 category code resolved from the diagnosis.

  • select.diagnosisCategory.descriptionboolean

    Description of the ICD-10 category associated with the diagnosis.

  • whereobject
  • where.diagnosisCategoryobject

    Filters on the diagnosis category's columns.

  • where.diagnosisCategory.idobject | object | object | object | object | object | object | string[]

    ICD-10 category code resolved from the diagnosis.

  • where.diagnosisCategory.descriptionobject | object | object | object | object | object | object | string[]

    Description of the ICD-10 category associated with the diagnosis.

  • aggregateobject
  • aggregate.diagnosisCategoryobject
  • aggregate.diagnosisCategory.countboolean

    When true, return the number of rows that match the filter.

  • aggregate.diagnosisCategory.sumobject

    Numeric columns to total across the rows that match the filter.

  • aggregate.diagnosisCategory.avgobject

    Numeric columns to average across the rows that match the filter.

  • aggregate.diagnosisCategory.minobject

    Numeric columns to find the smallest value of across the rows that match the filter.

  • aggregate.diagnosisCategory.maxobject

    Numeric columns to find the largest value of across the rows that match the filter.

  • orderByobject[]
  • searchstring
  • takeinteger
  • skipinteger

ReturnsTyped browse response for DiagnosisCategoryBrowseResponse

Conditional attributes

  • tableobject[]
  • table[].diagnosisCategoryobject

    The diagnosis category's columns, as selected by the request.

  • table[].diagnosisCategory.idstring

    ICD-10 category code resolved from the diagnosis.

  • table[].diagnosisCategory.descriptionstring

    Description of the ICD-10 category associated with the diagnosis.

  • aggregateobject
  • aggregate.diagnosisCategoryobject
  • aggregate.diagnosisCategory.countinteger

    Number of rows that match the filter. Present when `count` was requested.

  • aggregate.diagnosisCategory.sumobject

    Total of each requested numeric column across the rows that match the filter.

  • aggregate.diagnosisCategory.avgobject

    Average of each requested numeric column across the rows that match the filter.

  • aggregate.diagnosisCategory.minobject

    Smallest value of each requested numeric column across the rows that match the filter.

  • aggregate.diagnosisCategory.maxobject

    Largest value of each requested numeric column across the rows that match the filter.

  • totalinteger

Errors

400401500

POST/v0/diagnosis-codes/browse

Browse diagnosis codes

Queries the ICD-10-CM diagnosis code reference table, which is the same for every caller. Read-only. Uses the shared browse syntax described in Browsing tables and returns the { table, aggregate, total } envelope as JSON, or the selected columns as CSV when you send Accept: text/csv.

Request bodyapplication/json

Optional parameters

  • selectobject
  • select.diagnosisCodeobject

    Which of the diagnosis code's columns to return.

  • select.diagnosisCode.idboolean

    ICD-10-CM diagnosis code, written without the dot (for example E119).

  • select.diagnosisCode.diagnosisCategoryIdboolean

    ICD-10-CM category code the diagnosis code falls under: the longest category code that prefixes it (for example E11). May be empty when no matching category is available.

  • select.diagnosisCode.shortDescriptionboolean

    Short diagnosis description resolved from the diagnosis-code reference data, when a match exists.

  • select.diagnosisCode.longDescriptionboolean

    Full diagnosis description resolved from the diagnosis-code reference data, when a match exists.

  • whereobject
  • where.diagnosisCodeobject

    Filters on the diagnosis code's columns.

  • where.diagnosisCode.idobject | object | object | object | object | object | object | string[]

    ICD-10-CM diagnosis code, written without the dot (for example E119).

  • where.diagnosisCode.diagnosisCategoryIdobject | object | object | object | object | object | object | string[]

    ICD-10-CM category code the diagnosis code falls under: the longest category code that prefixes it (for example E11). May be empty when no matching category is available.

  • where.diagnosisCode.shortDescriptionobject | object | object | object | object | object | object | string[]

    Short diagnosis description resolved from the diagnosis-code reference data, when a match exists.

  • where.diagnosisCode.longDescriptionobject | object | object | object | object | object | object | string[]

    Full diagnosis description resolved from the diagnosis-code reference data, when a match exists.

  • aggregateobject
  • aggregate.diagnosisCodeobject
  • aggregate.diagnosisCode.countboolean

    When true, return the number of rows that match the filter.

  • aggregate.diagnosisCode.sumobject

    Numeric columns to total across the rows that match the filter.

  • aggregate.diagnosisCode.avgobject

    Numeric columns to average across the rows that match the filter.

  • aggregate.diagnosisCode.minobject

    Numeric columns to find the smallest value of across the rows that match the filter.

  • aggregate.diagnosisCode.maxobject

    Numeric columns to find the largest value of across the rows that match the filter.

  • orderByobject[]
  • searchstring
  • takeinteger
  • skipinteger

ReturnsTyped browse response for DiagnosisCodeBrowseResponse

Conditional attributes

  • tableobject[]
  • table[].diagnosisCodeobject

    The diagnosis code's columns, as selected by the request.

  • table[].diagnosisCode.idstring

    ICD-10-CM diagnosis code, written without the dot (for example E119).

  • table[].diagnosisCode.diagnosisCategoryIdstring

    ICD-10-CM category code the diagnosis code falls under: the longest category code that prefixes it (for example E11). May be empty when no matching category is available.

  • table[].diagnosisCode.shortDescriptionstring

    Short diagnosis description resolved from the diagnosis-code reference data, when a match exists.

  • table[].diagnosisCode.longDescriptionstring

    Full diagnosis description resolved from the diagnosis-code reference data, when a match exists.

  • aggregateobject
  • aggregate.diagnosisCodeobject
  • aggregate.diagnosisCode.countinteger

    Number of rows that match the filter. Present when `count` was requested.

  • aggregate.diagnosisCode.sumobject

    Total of each requested numeric column across the rows that match the filter.

  • aggregate.diagnosisCode.avgobject

    Average of each requested numeric column across the rows that match the filter.

  • aggregate.diagnosisCode.minobject

    Smallest value of each requested numeric column across the rows that match the filter.

  • aggregate.diagnosisCode.maxobject

    Largest value of each requested numeric column across the rows that match the filter.

  • totalinteger

Errors

400401500