The integrator-facing Halo Cloud API from Best Practice's Halo Connect platform. Lets approved partners query Bp Premier practice data by four means - Sites (retrieve site metadata and onboarding info), SQL Passthrough (execute SQL against the practice database), FHIR (search practice data as HL7 FHIR R4 resources), and Registered Queries (recurring SQL). OpenAPI 3.1.1, authenticated with an Azure API Management subscription key (Ocp-Apim-Subscription-Key header); every call requires an active pairing with the target site.
Halo Cloud API for Integrators is one of 3 APIs that Best Practice Software publishes on the APIs.io network, described by a machine-readable OpenAPI specification.
Tagged areas include FHIR, Healthcare, Interoperability, and SQL Passthrough. The published artifact set on APIs.io includes an OpenAPI specification, an API reference, API documentation, and a getting-started guide.
This API exposes
17 operations
across 15 paths,
organized into 4 resource areas,
and defines 79 schemas.
It is described by OpenAPI 3.1.1, at version 26.619.10213.
Requests are made against 2 base URLs: https://api.haloconnect.io, https://api.stage.haloconnect.io.
17 operations15 paths79 schemas1 DELETE9 GET7 POST
Metadata
The identity and technical contract details declared by the specification.
Halo Cloud API for Integrators declares
1 security scheme
for authenticating requests.
An API key is passed in the header as Ocp-Apim-Subscription-Key (SubscriptionKey).
By default, every request must be authenticated.
SubscriptionKey — The subscription key for the API.
Paths & Operations 17
Across 15 paths, the API surfaces 17 operations — 1 DELETE, 9 GET, 7 POST. They span 4 resource areas: SQL Passthrough, Registered Queries, FHIR, Sites. Each is listed below with its method, path, parameters, and response codes.
SQL Passthrough 6
Send SQL queries to practices as immediate, async or registered queries. Immediate queries are small, time-sensitive queries that return a result in seconds. Response size is limi…
Recurring queries that run at a specified frequency, and can be used to monitor for updates or new records. This type is recommended for polling use cases.
The contract defines 79 schemas that model the data the API accepts and returns. The most detailed are SiteForIntegrator (16 properties), RegisteredQuery (11 properties), AsyncQuery (10 properties), ImmediateQuery (9 properties). Each schema is shown below with its type and property counts.
ImmediateMaxTimeInQueue
integer
ExecutionMode
string
Selects between fetching data or writing to the database. reader executes the command (e.g. SELECT) and returns rows of data. nonQuery executes the command (e.…
CommandType
string
Indicates how the text property is to be interpreted. text executes the SQL contained within the text property. storedProcedure calls the stored procedure name…
Direction
string
A value that indicates whether the parameter is input-only, output-only, bidirectional, or a stored procedure return value parameter.
Type
string
Specifies SQL Server-specific data type of a field, property.
Value
stringnull
Gets or sets the value of the parameter.
Size
integer
The maximum size, in bytes, of the data within the column.
Parameter
object
5 properties
Command
object
4 properties1 required
Catalogue
string
Indicates which database to run against. If no catalogue is specified a default catalogue will be chosen instead. Supported for all PMS with multiple databases…
ImmediateCommand
Id
string
Unique identifier of the entity.
IntegratorId
string
Id of the Integrator that created the query.
SiteId
string
Halo GUID of the site.
CommandSize
integer
RequestSize
integer
Date
string
ImmediateQuery
object
9 properties10 required
StatusTimingImmediate
object
The server time (UTC) at which a query entered and exited the various states.
4 properties2 required
QueryMetrics
object
1 property1 required
Data
string
Result data that is base64 encoded returned from the executed query.
QueryResult
object
4 properties3 required
NonQueryResult
object
3 properties2 required
ResultSize
integer
SuccessfulImmediateQueryProperties
object
6 properties4 required
SuccessfulImmediateQuery
Error
object
1 property
StatusTiming
object
The server time (UTC) at which a query entered and exited the various states.
4 properties1 required
QueryExecutionFailErrorType
string
ErrorDetails
object
3 properties
FailedQueryErrorPropertiesV2
object
6 properties
ExecutionFailedImmediateQuery
AsyncMaxTimeInQueue
integer
AsyncCommand
AsyncQueryInitialised
QueuedAsyncQueryProperties
object
1 property1 required
AsyncQueryQueued
ExecutingAsyncQueryProperties
object
1 property1 required
AsyncQueryExecuting
UploadingAsyncQueryProperties
object
2 properties2 required
AsyncQueryUploading
ResultPageStatus
string
Rows
object
3 properties
Page
object
4 properties
AsyncQueryResult
object
3 properties3 required
AsyncNonQueryResult
object
3 properties3 required
SuccessfulAsyncQueryProperties
object
4 properties3 required
AsyncQuerySuccessful
InitialisationFailedAsyncQueryProperties
object
2 properties2 required
AsyncQueryInitialisationFailed
ExpiredInQueueAsyncQueryProperties
object
2 properties2 required
AsyncQueryExpiredInQueue
ExecutionFailedAsyncQueryProperties
object
2 properties2 required
FailedQueryErrorProperties
object
2 properties2 required
AsyncQueryExecutionFailed
UploadFailedAsyncQueryProperties
object
2 properties2 required
AsyncQueryUploadFailed
AsyncQueryStatus
string
Status initialisationFailedSiteOffline means query failed as the site closed session. initialisationFailedSiteUnreachable means site hasn't contacted two minut…
AsyncQuery
object
10 properties10 required
InitialisedAsyncQueryProperties
object
1 property1 required
RegisteredQueryStatus
string
RegisteredQueryMetrics
object
7 properties
RegisteredQuery
object
11 properties8 required
RegisteredQueryPostReq
object
5 properties5 required
RegisteredQueryId
object
1 property1 required
RegisteredQueryResult
object
4 properties4 required
QueryStatusBatchResultStatus
string
QueryStatusBatchResult
object
3 properties2 required
FhirResource
object
Singular FHIR resource of the requested type.
FhirBundle
object
Bundle of FHIR resources of the requested type(s).