@haau3/sdk 0.0.0-stage → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,4501 @@
1
+ import * as fhir4 from "fhir/r4.js";
2
+ import { Bundle, OperationOutcome } from "fhir/r4.js";
3
+ //#region src/generated/openapi.d.ts
4
+ interface components {
5
+ schemas: {
6
+ Problem: {
7
+ /**
8
+ * Format: uri
9
+ * @description What kind of problem this is: an anchor on https://docs.haau3.com/errors.
10
+ * @example https://docs.haau3.com/errors#invalid-request
11
+ */
12
+ type: string;
13
+ /** @description A short summary, the same for every occurrence of the type. */
14
+ title: string;
15
+ /** @description The HTTP status code of this response. */
16
+ status: number;
17
+ /** @description What went wrong this time, and how to correct it. */
18
+ detail: string;
19
+ /**
20
+ * Format: uri
21
+ * @description This request's id as `urn:uuid:<id>`, the same id as the `X-Request-Id` header.
22
+ * @example urn:uuid:0b6f2d4e-8c1a-4e3b-9f5d-2a7c6e1b4d90
23
+ */
24
+ instance: string;
25
+ /** @description On a 400: one entry per parameter that is not valid. */
26
+ issues?: components["schemas"]["ProblemIssue"][];
27
+ };
28
+ ProblemIssue: {
29
+ /** @description The parameter, or the field within it, that is not valid. */
30
+ path: (string | number)[];
31
+ /** @description Why it is not valid. */
32
+ message: string;
33
+ };
34
+ SchedulingSlot: {
35
+ id: string;
36
+ publisher: string;
37
+ scheduleId: string;
38
+ /** @enum {string} */
39
+ status: "free" | "busy" | "busy-unavailable" | "busy-tentative";
40
+ /** Format: date-time */
41
+ start: string;
42
+ /** Format: date-time */
43
+ end: string;
44
+ serviceTypeCode?: string;
45
+ serviceTypeText?: string;
46
+ serviceTypes?: {
47
+ system?: string;
48
+ code?: string;
49
+ display?: string;
50
+ }[];
51
+ specialties?: {
52
+ system?: string;
53
+ code?: string;
54
+ display?: string;
55
+ }[];
56
+ appointmentType?: string;
57
+ /** @enum {string} */
58
+ acceptingPatients?: "nopt" | "newpt" | "existptonly" | "existptfam";
59
+ isVirtual?: boolean;
60
+ /** Format: uri */
61
+ bookingDeepLink?: string;
62
+ bookingPhone?: string;
63
+ location?: {
64
+ id?: string;
65
+ identifier?: {
66
+ system?: string;
67
+ value: string;
68
+ }[];
69
+ name?: string;
70
+ phone?: string[];
71
+ website?: string[];
72
+ addressLine?: string[];
73
+ city?: string;
74
+ state?: string;
75
+ postalCode?: string;
76
+ physicalType?: {
77
+ system?: string;
78
+ code: string;
79
+ };
80
+ description?: string;
81
+ position?: {
82
+ latitude: number;
83
+ longitude: number;
84
+ };
85
+ };
86
+ provider?: {
87
+ id?: string;
88
+ identifier?: {
89
+ system?: string;
90
+ value: string;
91
+ }[];
92
+ /** @enum {string} */
93
+ type?: "practitioner" | "practitioner-role" | "healthcare-service";
94
+ name?: string;
95
+ specialty?: string;
96
+ specialties?: {
97
+ system?: string;
98
+ code?: string;
99
+ display?: string;
100
+ }[];
101
+ };
102
+ source?: {
103
+ publisher: string;
104
+ resourceId: string;
105
+ /** Format: date-time */
106
+ transactionTime: string;
107
+ /** Format: date-time */
108
+ syncedAt: string;
109
+ };
110
+ };
111
+ SchedulingProviderLocation: {
112
+ key: string;
113
+ publisher: string;
114
+ provider?: {
115
+ id?: string;
116
+ identifier?: {
117
+ system?: string;
118
+ value: string;
119
+ }[];
120
+ /** @enum {string} */
121
+ type?: "practitioner" | "practitioner-role" | "healthcare-service";
122
+ name?: string;
123
+ specialty?: string;
124
+ specialties?: {
125
+ system?: string;
126
+ code?: string;
127
+ display?: string;
128
+ }[];
129
+ npi?: string;
130
+ };
131
+ location?: {
132
+ id?: string;
133
+ identifier?: {
134
+ system?: string;
135
+ value: string;
136
+ }[];
137
+ name?: string;
138
+ phone?: string[];
139
+ website?: string[];
140
+ addressLine?: string[];
141
+ city?: string;
142
+ state?: string;
143
+ postalCode?: string;
144
+ physicalType?: {
145
+ system?: string;
146
+ code: string;
147
+ };
148
+ description?: string;
149
+ position?: {
150
+ latitude: number;
151
+ longitude: number;
152
+ };
153
+ };
154
+ serviceTypes: {
155
+ system?: string;
156
+ code?: string;
157
+ display?: string;
158
+ }[];
159
+ specialties: {
160
+ system?: string;
161
+ code?: string;
162
+ display?: string;
163
+ }[];
164
+ /** @enum {string} */
165
+ bookingMethod: "online" | "phone" | "contact";
166
+ isVirtual?: boolean;
167
+ /** @enum {string} */
168
+ acceptingPatients?: "nopt" | "newpt" | "existptonly" | "existptfam";
169
+ /** Format: date-time */
170
+ nextAvailableStart?: string;
171
+ totalSlots: number;
172
+ };
173
+ SchedulingPublisher: {
174
+ slug: string;
175
+ displayName: string;
176
+ /** Format: uri */
177
+ manifestUrl: string;
178
+ enabled: boolean;
179
+ };
180
+ SchedulingServiceType: {
181
+ system?: string;
182
+ code?: string;
183
+ display?: string;
184
+ count: number;
185
+ };
186
+ SchedulingSpecialty: {
187
+ system?: string;
188
+ code?: string;
189
+ display?: string;
190
+ count: number;
191
+ };
192
+ SearchSlotsResponse: {
193
+ slots: components["schemas"]["SchedulingSlot"][];
194
+ total: number;
195
+ };
196
+ SearchProviderLocationsResponse: {
197
+ providerLocations: components["schemas"]["SchedulingProviderLocation"][];
198
+ total: number;
199
+ };
200
+ ListPublishersResponse: {
201
+ publishers: components["schemas"]["SchedulingPublisher"][];
202
+ };
203
+ ListServiceTypesResponse: {
204
+ serviceTypes: components["schemas"]["SchedulingServiceType"][];
205
+ };
206
+ ListSpecialtiesResponse: {
207
+ specialties: components["schemas"]["SchedulingSpecialty"][];
208
+ };
209
+ /** @description A FHIR R4 [OperationOutcome](https://hl7.org/fhir/R4/operationoutcome.html). */
210
+ OperationOutcome: fhir4.OperationOutcome;
211
+ /** @description A FHIR R4 [Bundle](https://hl7.org/fhir/R4/bundle.html). */
212
+ Bundle: fhir4.Bundle;
213
+ /** @description A FHIR R4 [Parameters](https://hl7.org/fhir/R4/parameters.html). */
214
+ Parameters: fhir4.Parameters;
215
+ /** @description A FHIR R4 [CapabilityStatement](https://hl7.org/fhir/R4/capabilitystatement.html). */
216
+ CapabilityStatement: fhir4.CapabilityStatement;
217
+ /** @description A FHIR R4 [TerminologyCapabilities](https://hl7.org/fhir/R4/terminologycapabilities.html). */
218
+ TerminologyCapabilities: fhir4.TerminologyCapabilities;
219
+ /** @description A FHIR R4 [ValueSet](https://hl7.org/fhir/R4/valueset.html). */
220
+ ValueSet: fhir4.ValueSet;
221
+ /** @description A FHIR R4 [Practitioner](https://hl7.org/fhir/R4/practitioner.html). */
222
+ Practitioner: fhir4.Practitioner;
223
+ /** @description A FHIR R4 [PractitionerRole](https://hl7.org/fhir/R4/practitionerrole.html). */
224
+ PractitionerRole: fhir4.PractitionerRole;
225
+ /** @description A FHIR R4 [Organization](https://hl7.org/fhir/R4/organization.html). */
226
+ Organization: fhir4.Organization;
227
+ /** @description A FHIR R4 [OrganizationAffiliation](https://hl7.org/fhir/R4/organizationaffiliation.html). */
228
+ OrganizationAffiliation: fhir4.OrganizationAffiliation;
229
+ /** @description A FHIR R4 [HealthcareService](https://hl7.org/fhir/R4/healthcareservice.html). */
230
+ HealthcareService: fhir4.HealthcareService;
231
+ /** @description A FHIR R4 [Location](https://hl7.org/fhir/R4/location.html). */
232
+ Location: fhir4.Location;
233
+ /** @description A FHIR R4 [Endpoint](https://hl7.org/fhir/R4/endpoint.html). */
234
+ Endpoint: fhir4.Endpoint;
235
+ /** @description A FHIR R4 [Questionnaire](https://hl7.org/fhir/R4/questionnaire.html). */
236
+ Questionnaire: fhir4.Questionnaire;
237
+ /** @description A FHIR R4 [InsurancePlan](https://hl7.org/fhir/R4/insuranceplan.html). */
238
+ InsurancePlan: fhir4.InsurancePlan;
239
+ };
240
+ responses: {
241
+ /** @description Missing or invalid API key. */
242
+ ProblemUnauthorized: {
243
+ headers: {
244
+ /** @description The scheme to authenticate with: `Bearer realm="api.haau3.com"`, with `error="invalid_token"` when a key was sent and not recognised. */
245
+ "WWW-Authenticate"?: string;
246
+ "X-Request-Id": components["headers"]["XRequestId"];
247
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
248
+ [name: string]: unknown;
249
+ };
250
+ content: {
251
+ "application/problem+json": components["schemas"]["Problem"];
252
+ };
253
+ };
254
+ /** @description Missing or invalid API key. */
255
+ FhirUnauthorized: {
256
+ headers: {
257
+ /** @description The scheme to authenticate with: `Bearer realm="api.haau3.com"`, with `error="invalid_token"` when a key was sent and not recognised. */
258
+ "WWW-Authenticate"?: string;
259
+ "X-Request-Id": components["headers"]["XRequestId"];
260
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
261
+ [name: string]: unknown;
262
+ };
263
+ content: {
264
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
265
+ };
266
+ };
267
+ /** @description The request's `Accept` header admits no JSON. */
268
+ ProblemNotAcceptable: {
269
+ headers: {
270
+ "X-Request-Id": components["headers"]["XRequestId"];
271
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
272
+ [name: string]: unknown;
273
+ };
274
+ content: {
275
+ "application/problem+json": components["schemas"]["Problem"];
276
+ };
277
+ };
278
+ /** @description The request asked for a format other than JSON (`Accept` or `_format`), or for a FHIR release this endpoint does not serve (the `fhirVersion` media-type parameter). */
279
+ FhirNotAcceptable: {
280
+ headers: {
281
+ "X-Request-Id": components["headers"]["XRequestId"];
282
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
283
+ [name: string]: unknown;
284
+ };
285
+ content: {
286
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
287
+ };
288
+ };
289
+ /** @description The request body was not sent as JSON: send `Content-Type: application/fhir+json`. */
290
+ ProblemUnsupportedMediaType: {
291
+ headers: {
292
+ "X-Request-Id": components["headers"]["XRequestId"];
293
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
294
+ [name: string]: unknown;
295
+ };
296
+ content: {
297
+ "application/problem+json": components["schemas"]["Problem"];
298
+ };
299
+ };
300
+ /** @description The request body was not sent as JSON: send `Content-Type: application/fhir+json`. */
301
+ FhirUnsupportedMediaType: {
302
+ headers: {
303
+ "X-Request-Id": components["headers"]["XRequestId"];
304
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
305
+ [name: string]: unknown;
306
+ };
307
+ content: {
308
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
309
+ };
310
+ };
311
+ /** @description A limit of the organization's plan was reached: its requests a minute, or the Developer plan's requests a month. Send the request again after `Retry-After`, which for the monthly limit runs to the 1st of the next month (UTC). */
312
+ ProblemTooManyRequests: {
313
+ headers: {
314
+ /** @description How many seconds to wait before sending the request again. */
315
+ "Retry-After"?: number;
316
+ "X-Request-Id": components["headers"]["XRequestId"];
317
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
318
+ [name: string]: unknown;
319
+ };
320
+ content: {
321
+ "application/problem+json": components["schemas"]["Problem"];
322
+ };
323
+ };
324
+ /** @description A limit of the organization's plan was reached: its requests a minute, or the Developer plan's requests a month. Send the request again after `Retry-After`, which for the monthly limit runs to the 1st of the next month (UTC). */
325
+ FhirTooManyRequests: {
326
+ headers: {
327
+ /** @description How many seconds to wait before sending the request again. */
328
+ "Retry-After"?: number;
329
+ "X-Request-Id": components["headers"]["XRequestId"];
330
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
331
+ [name: string]: unknown;
332
+ };
333
+ content: {
334
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
335
+ };
336
+ };
337
+ /** @description The server failed to process this request. */
338
+ ProblemServerError: {
339
+ headers: {
340
+ "X-Request-Id": components["headers"]["XRequestId"];
341
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
342
+ [name: string]: unknown;
343
+ };
344
+ content: {
345
+ "application/problem+json": components["schemas"]["Problem"];
346
+ };
347
+ };
348
+ /** @description The server failed to process this request. */
349
+ FhirServerError: {
350
+ headers: {
351
+ "X-Request-Id": components["headers"]["XRequestId"];
352
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
353
+ [name: string]: unknown;
354
+ };
355
+ content: {
356
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
357
+ };
358
+ };
359
+ /** @description The API key could not be checked just now. Send the request again after `Retry-After`. */
360
+ ProblemUnavailable: {
361
+ headers: {
362
+ /** @description How many seconds to wait before sending the request again. */
363
+ "Retry-After"?: number;
364
+ "X-Request-Id": components["headers"]["XRequestId"];
365
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
366
+ [name: string]: unknown;
367
+ };
368
+ content: {
369
+ "application/problem+json": components["schemas"]["Problem"];
370
+ };
371
+ };
372
+ /** @description The API key could not be checked just now. Send the request again after `Retry-After`. */
373
+ FhirUnavailable: {
374
+ headers: {
375
+ /** @description How many seconds to wait before sending the request again. */
376
+ "Retry-After"?: number;
377
+ "X-Request-Id": components["headers"]["XRequestId"];
378
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
379
+ [name: string]: unknown;
380
+ };
381
+ content: {
382
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
383
+ };
384
+ };
385
+ };
386
+ parameters: {
387
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
388
+ XRequestId: string;
389
+ };
390
+ requestBodies: never;
391
+ headers: {
392
+ /** @description The id haau3 gave this request, a UUID, on every response. Quote it in a question about the response. A problem carries the same id as its `instance`. */
393
+ XRequestId: string;
394
+ /** @description The `X-Request-Id` you sent, when it was a UUID. */
395
+ XCorrelationId: string;
396
+ };
397
+ pathItems: never;
398
+ }
399
+ interface operations {
400
+ searchProviderLocations: {
401
+ parameters: {
402
+ query?: {
403
+ /** @description Slot availability state to return. Defaults to `free`. */
404
+ status?: "free" | "busy" | "busy-unavailable" | "busy-tentative";
405
+ /**
406
+ * @description Filter to a single publisher (source) by slug — e.g. `zocdoc`, `defacto`. See `GET /v1/scheduling/publishers` for the available slugs.
407
+ * @example haau3
408
+ */
409
+ publisher?: string;
410
+ /** @description Filter by service type code (as published by the source). A slot matches when any of its `serviceTypes` carries the code. A comma-separated list (up to 100) matches a slot carrying any of them. */
411
+ serviceTypeCode?: string;
412
+ /** @description Filter by the provider's National Provider Identifier: a clinician's, or an organization's when a healthcare service is the provider. Ten digits; a comma-separated list (up to 100) matches a slot whose provider carries any of them. Matched as the publisher sent it, in either NPI identifier system, across every publisher. */
413
+ npi?: string;
414
+ /** @description Filter by specialty: a slot matches when its provider's `specialties` or its schedule's `specialties` carry the code. Send `code` to match it in any code system, or `system|code` to match it in that system only. Codes are each publisher's own and are not translated between code systems, so one code finds the publishers that use it; `GET /v1/scheduling/specialties` lists them. A specialty sent as text only cannot be matched. A comma-separated list (up to 100) matches any of them. */
415
+ specialty?: string;
416
+ /** @description Filter by appointment type. */
417
+ appointmentType?: string;
418
+ /** @description Filter to slots accepting patients of this kind (HL7 `accepting-patients` CodeSystem: `newpt` | `existptonly` | `existptfam`). Slots marked `nopt` (not accepting patients) are never served, so `nopt` is not a valid filter value. Lenient: a slot that does not declare an accepting-patients code matches any value (absence never hides a slot); a slot that declares one must equal the requested value. */
419
+ acceptingPatients?: "newpt" | "existptonly" | "existptfam";
420
+ /** @description Filter to virtual (`true`) or in-person (`false`) slots. */
421
+ isVirtual?: boolean;
422
+ /** @description Filter by the location's city. */
423
+ city?: string;
424
+ /** @description Filter by the location's state. */
425
+ state?: string;
426
+ /** @description Only slots starting at or after this instant: ISO 8601 with seconds and an offset, such as `2026-07-06T13:00:00-04:00` or `2026-07-06T17:00:00Z`. A value without seconds is refused. When absent, slots start from now unless `includePast=true`. */
427
+ startAfter?: string;
428
+ /** @description Only slots starting at or before this instant: ISO 8601 with seconds and an offset, such as `2026-07-06T13:00:00-04:00` or `2026-07-06T17:00:00Z`. A value without seconds is refused. */
429
+ startBefore?: string;
430
+ /** @description Include slots that started before now. Defaults to `false`: with no `startAfter`, results start from now. An explicit `startAfter` applies as given either way. */
431
+ includePast?: boolean;
432
+ /**
433
+ * @description Page size: the number of provider locations (1–100). Defaults to 25.
434
+ * @example 1
435
+ */
436
+ limit?: number;
437
+ /** @description Number of provider locations to skip for pagination. Defaults to 0. */
438
+ offset?: number;
439
+ };
440
+ header?: {
441
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
442
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
443
+ };
444
+ path?: never;
445
+ cookie?: never;
446
+ };
447
+ requestBody?: never;
448
+ responses: {
449
+ /** @description The matching provider locations, and their total number before paging. */
450
+ 200: {
451
+ headers: {
452
+ "X-Request-Id": components["headers"]["XRequestId"];
453
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
454
+ [name: string]: unknown;
455
+ };
456
+ content: {
457
+ "application/json": components["schemas"]["SearchProviderLocationsResponse"];
458
+ };
459
+ };
460
+ /** @description A query parameter is not valid, is not one this endpoint takes, or was sent more than once. The problem's `issues` names each one and says why. */
461
+ 400: {
462
+ headers: {
463
+ "X-Request-Id": components["headers"]["XRequestId"];
464
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
465
+ [name: string]: unknown;
466
+ };
467
+ content: {
468
+ "application/problem+json": components["schemas"]["Problem"];
469
+ };
470
+ };
471
+ 401: components["responses"]["ProblemUnauthorized"];
472
+ 406: components["responses"]["ProblemNotAcceptable"];
473
+ 429: components["responses"]["ProblemTooManyRequests"];
474
+ 500: components["responses"]["ProblemServerError"];
475
+ /** @description The scheduling service is unavailable, or its database did not answer in time. Send the request again after `Retry-After`. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
476
+ 503: {
477
+ headers: {
478
+ /** @description How many seconds to wait before sending the request again. */
479
+ "Retry-After"?: number;
480
+ "X-Request-Id": components["headers"]["XRequestId"];
481
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
482
+ [name: string]: unknown;
483
+ };
484
+ content: {
485
+ "application/problem+json": components["schemas"]["Problem"];
486
+ };
487
+ };
488
+ };
489
+ };
490
+ searchSlots: {
491
+ parameters: {
492
+ query?: {
493
+ /** @description Slot availability state to return. Defaults to `free`. */
494
+ status?: "free" | "busy" | "busy-unavailable" | "busy-tentative";
495
+ /**
496
+ * @description Filter to a single publisher (source) by slug — e.g. `zocdoc`, `defacto`. See `GET /v1/scheduling/publishers` for the available slugs.
497
+ * @example haau3
498
+ */
499
+ publisher?: string;
500
+ /** @description Filter by service type code (as published by the source). A slot matches when any of its `serviceTypes` carries the code. A comma-separated list (up to 100) matches a slot carrying any of them. */
501
+ serviceTypeCode?: string;
502
+ /** @description Filter by the provider's National Provider Identifier: a clinician's, or an organization's when a healthcare service is the provider. Ten digits; a comma-separated list (up to 100) matches a slot whose provider carries any of them. Matched as the publisher sent it, in either NPI identifier system, across every publisher. */
503
+ npi?: string;
504
+ /** @description Filter by specialty: a slot matches when its provider's `specialties` or its schedule's `specialties` carry the code. Send `code` to match it in any code system, or `system|code` to match it in that system only. Codes are each publisher's own and are not translated between code systems, so one code finds the publishers that use it; `GET /v1/scheduling/specialties` lists them. A specialty sent as text only cannot be matched. A comma-separated list (up to 100) matches any of them. */
505
+ specialty?: string;
506
+ /** @description Filter by appointment type. */
507
+ appointmentType?: string;
508
+ /** @description Filter to slots accepting patients of this kind (HL7 `accepting-patients` CodeSystem: `newpt` | `existptonly` | `existptfam`). Slots marked `nopt` (not accepting patients) are never served, so `nopt` is not a valid filter value. Lenient: a slot that does not declare an accepting-patients code matches any value (absence never hides a slot); a slot that declares one must equal the requested value. */
509
+ acceptingPatients?: "newpt" | "existptonly" | "existptfam";
510
+ /** @description Filter to virtual (`true`) or in-person (`false`) slots. */
511
+ isVirtual?: boolean;
512
+ /** @description Filter by the location's city. */
513
+ city?: string;
514
+ /** @description Filter by the location's state. */
515
+ state?: string;
516
+ /** @description Only slots starting at or after this instant: ISO 8601 with seconds and an offset, such as `2026-07-06T13:00:00-04:00` or `2026-07-06T17:00:00Z`. A value without seconds is refused. When absent, slots start from now unless `includePast=true`. */
517
+ startAfter?: string;
518
+ /** @description Only slots starting at or before this instant: ISO 8601 with seconds and an offset, such as `2026-07-06T13:00:00-04:00` or `2026-07-06T17:00:00Z`. A value without seconds is refused. */
519
+ startBefore?: string;
520
+ /** @description Include slots that started before now. Defaults to `false`: with no `startAfter`, results start from now. An explicit `startAfter` applies as given either way. */
521
+ includePast?: boolean;
522
+ /** @description Opaque key of one provider location from `GET /v1/scheduling/provider-locations`. When set, returns exactly that provider location's slots. Treat the value as opaque; do not parse it. */
523
+ providerLocationKey?: string;
524
+ /**
525
+ * @description Page size (1–100). Defaults to 25.
526
+ * @example 1
527
+ */
528
+ limit?: number;
529
+ /** @description Number of slots to skip for pagination. Defaults to 0. */
530
+ offset?: number;
531
+ };
532
+ header?: {
533
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
534
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
535
+ };
536
+ path?: never;
537
+ cookie?: never;
538
+ };
539
+ requestBody?: never;
540
+ responses: {
541
+ /** @description Matching slots and the total pre-pagination count. */
542
+ 200: {
543
+ headers: {
544
+ "X-Request-Id": components["headers"]["XRequestId"];
545
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
546
+ [name: string]: unknown;
547
+ };
548
+ content: {
549
+ "application/json": components["schemas"]["SearchSlotsResponse"];
550
+ };
551
+ };
552
+ /** @description A query parameter is not valid, is not one this endpoint takes, or was sent more than once. The problem's `issues` names each one and says why. */
553
+ 400: {
554
+ headers: {
555
+ "X-Request-Id": components["headers"]["XRequestId"];
556
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
557
+ [name: string]: unknown;
558
+ };
559
+ content: {
560
+ "application/problem+json": components["schemas"]["Problem"];
561
+ };
562
+ };
563
+ 401: components["responses"]["ProblemUnauthorized"];
564
+ 406: components["responses"]["ProblemNotAcceptable"];
565
+ 429: components["responses"]["ProblemTooManyRequests"];
566
+ 500: components["responses"]["ProblemServerError"];
567
+ /** @description The scheduling service is unavailable, or its database did not answer in time. Send the request again after `Retry-After`. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
568
+ 503: {
569
+ headers: {
570
+ /** @description How many seconds to wait before sending the request again. */
571
+ "Retry-After"?: number;
572
+ "X-Request-Id": components["headers"]["XRequestId"];
573
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
574
+ [name: string]: unknown;
575
+ };
576
+ content: {
577
+ "application/problem+json": components["schemas"]["Problem"];
578
+ };
579
+ };
580
+ };
581
+ };
582
+ listPublishers: {
583
+ parameters: {
584
+ query?: never;
585
+ header?: {
586
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
587
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
588
+ };
589
+ path?: never;
590
+ cookie?: never;
591
+ };
592
+ requestBody?: never;
593
+ responses: {
594
+ /** @description The configured publishers. */
595
+ 200: {
596
+ headers: {
597
+ "X-Request-Id": components["headers"]["XRequestId"];
598
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
599
+ [name: string]: unknown;
600
+ };
601
+ content: {
602
+ "application/json": components["schemas"]["ListPublishersResponse"];
603
+ };
604
+ };
605
+ /** @description A query parameter is not valid, is not one this endpoint takes, or was sent more than once. The problem's `issues` names each one and says why. */
606
+ 400: {
607
+ headers: {
608
+ "X-Request-Id": components["headers"]["XRequestId"];
609
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
610
+ [name: string]: unknown;
611
+ };
612
+ content: {
613
+ "application/problem+json": components["schemas"]["Problem"];
614
+ };
615
+ };
616
+ 401: components["responses"]["ProblemUnauthorized"];
617
+ 406: components["responses"]["ProblemNotAcceptable"];
618
+ 429: components["responses"]["ProblemTooManyRequests"];
619
+ 500: components["responses"]["ProblemServerError"];
620
+ /** @description The scheduling service is unavailable, or its database did not answer in time. Send the request again after `Retry-After`. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
621
+ 503: {
622
+ headers: {
623
+ /** @description How many seconds to wait before sending the request again. */
624
+ "Retry-After"?: number;
625
+ "X-Request-Id": components["headers"]["XRequestId"];
626
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
627
+ [name: string]: unknown;
628
+ };
629
+ content: {
630
+ "application/problem+json": components["schemas"]["Problem"];
631
+ };
632
+ };
633
+ };
634
+ };
635
+ listServiceTypes: {
636
+ parameters: {
637
+ query?: {
638
+ /** @description Also count slots that started before now. Defaults to `false`, so the counts cover the slots a search with no `startAfter` returns. */
639
+ includePast?: boolean;
640
+ };
641
+ header?: {
642
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
643
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
644
+ };
645
+ path?: never;
646
+ cookie?: never;
647
+ };
648
+ requestBody?: never;
649
+ responses: {
650
+ /** @description The distinct service types across served slots. */
651
+ 200: {
652
+ headers: {
653
+ "X-Request-Id": components["headers"]["XRequestId"];
654
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
655
+ [name: string]: unknown;
656
+ };
657
+ content: {
658
+ "application/json": components["schemas"]["ListServiceTypesResponse"];
659
+ };
660
+ };
661
+ /** @description A query parameter is not valid, is not one this endpoint takes, or was sent more than once. The problem's `issues` names each one and says why. */
662
+ 400: {
663
+ headers: {
664
+ "X-Request-Id": components["headers"]["XRequestId"];
665
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
666
+ [name: string]: unknown;
667
+ };
668
+ content: {
669
+ "application/problem+json": components["schemas"]["Problem"];
670
+ };
671
+ };
672
+ 401: components["responses"]["ProblemUnauthorized"];
673
+ 406: components["responses"]["ProblemNotAcceptable"];
674
+ 429: components["responses"]["ProblemTooManyRequests"];
675
+ 500: components["responses"]["ProblemServerError"];
676
+ /** @description The scheduling service is unavailable, or its database did not answer in time. Send the request again after `Retry-After`. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
677
+ 503: {
678
+ headers: {
679
+ /** @description How many seconds to wait before sending the request again. */
680
+ "Retry-After"?: number;
681
+ "X-Request-Id": components["headers"]["XRequestId"];
682
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
683
+ [name: string]: unknown;
684
+ };
685
+ content: {
686
+ "application/problem+json": components["schemas"]["Problem"];
687
+ };
688
+ };
689
+ };
690
+ };
691
+ listSpecialties: {
692
+ parameters: {
693
+ query?: {
694
+ /** @description Also count slots that started before now. Defaults to `false`, so the counts cover the slots a search with no `startAfter` returns. */
695
+ includePast?: boolean;
696
+ };
697
+ header?: {
698
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
699
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
700
+ };
701
+ path?: never;
702
+ cookie?: never;
703
+ };
704
+ requestBody?: never;
705
+ responses: {
706
+ /** @description The distinct specialties across served slots. */
707
+ 200: {
708
+ headers: {
709
+ "X-Request-Id": components["headers"]["XRequestId"];
710
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
711
+ [name: string]: unknown;
712
+ };
713
+ content: {
714
+ "application/json": components["schemas"]["ListSpecialtiesResponse"];
715
+ };
716
+ };
717
+ /** @description A query parameter is not valid, is not one this endpoint takes, or was sent more than once. The problem's `issues` names each one and says why. */
718
+ 400: {
719
+ headers: {
720
+ "X-Request-Id": components["headers"]["XRequestId"];
721
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
722
+ [name: string]: unknown;
723
+ };
724
+ content: {
725
+ "application/problem+json": components["schemas"]["Problem"];
726
+ };
727
+ };
728
+ 401: components["responses"]["ProblemUnauthorized"];
729
+ 406: components["responses"]["ProblemNotAcceptable"];
730
+ 429: components["responses"]["ProblemTooManyRequests"];
731
+ 500: components["responses"]["ProblemServerError"];
732
+ /** @description The scheduling service is unavailable, or its database did not answer in time. Send the request again after `Retry-After`. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
733
+ 503: {
734
+ headers: {
735
+ /** @description How many seconds to wait before sending the request again. */
736
+ "Retry-After"?: number;
737
+ "X-Request-Id": components["headers"]["XRequestId"];
738
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
739
+ [name: string]: unknown;
740
+ };
741
+ content: {
742
+ "application/problem+json": components["schemas"]["Problem"];
743
+ };
744
+ };
745
+ };
746
+ };
747
+ fhirMetadata: {
748
+ parameters: {
749
+ query?: {
750
+ /** @description Pass `terminology` for a `TerminologyCapabilities` resource instead of the `CapabilityStatement`. `full`, the default, returns the `CapabilityStatement`. No other mode is served. */
751
+ mode?: "full" | "terminology";
752
+ };
753
+ header?: {
754
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
755
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
756
+ };
757
+ path?: never;
758
+ cookie?: never;
759
+ };
760
+ requestBody?: never;
761
+ responses: {
762
+ /** @description A FHIR `CapabilityStatement`, or a `TerminologyCapabilities` when `mode=terminology`. */
763
+ 200: {
764
+ headers: {
765
+ /** @description `private, max-age=300`: keep this answer up to five minutes. `no-store` when the answer says a store it reports on could not be read just now. */
766
+ "Cache-Control"?: string;
767
+ /** @description Send it back in `If-None-Match` to get a `304` when nothing has changed. */
768
+ ETag?: string;
769
+ "X-Request-Id": components["headers"]["XRequestId"];
770
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
771
+ [name: string]: unknown;
772
+ };
773
+ content: {
774
+ "application/fhir+json": components["schemas"]["CapabilityStatement"] | components["schemas"]["TerminologyCapabilities"];
775
+ };
776
+ };
777
+ /** @description Not modified: the `ETag` sent in `If-None-Match` still matches, so the copy you hold is current. No body. */
778
+ 304: {
779
+ headers: {
780
+ /** @description `private, max-age=300`: keep this answer up to five minutes. `no-store` when the answer says a store it reports on could not be read just now. */
781
+ "Cache-Control"?: string;
782
+ /** @description Send it back in `If-None-Match` to get a `304` when nothing has changed. */
783
+ ETag?: string;
784
+ "X-Request-Id": components["headers"]["XRequestId"];
785
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
786
+ [name: string]: unknown;
787
+ };
788
+ content?: never;
789
+ };
790
+ /** @description Two different FHIR versions were named in one request, a parameter other than `mode` was sent, `mode` was sent more than once, or `mode` has a value this base does not serve. */
791
+ 400: {
792
+ headers: {
793
+ "X-Request-Id": components["headers"]["XRequestId"];
794
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
795
+ [name: string]: unknown;
796
+ };
797
+ content: {
798
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
799
+ };
800
+ };
801
+ 401: components["responses"]["FhirUnauthorized"];
802
+ 406: components["responses"]["FhirNotAcceptable"];
803
+ 429: components["responses"]["FhirTooManyRequests"];
804
+ 500: components["responses"]["FhirServerError"];
805
+ 503: components["responses"]["FhirUnavailable"];
806
+ };
807
+ };
808
+ fhirBatch: {
809
+ parameters: {
810
+ query?: never;
811
+ header?: {
812
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
813
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
814
+ };
815
+ path?: never;
816
+ cookie?: never;
817
+ };
818
+ requestBody: {
819
+ content: {
820
+ "application/fhir+json": components["schemas"]["Bundle"];
821
+ };
822
+ };
823
+ responses: {
824
+ /** @description A FHIR `Bundle` with `type: batch-response`, one entry per request entry. */
825
+ 200: {
826
+ headers: {
827
+ "X-Request-Id": components["headers"]["XRequestId"];
828
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
829
+ [name: string]: unknown;
830
+ };
831
+ content: {
832
+ "application/fhir+json": components["schemas"]["Bundle"];
833
+ };
834
+ };
835
+ /** @description The body was not a batch Bundle, it carried more than 100 entries (`too-long`), or the request carried a query parameter: a batch takes none, and each entry carries its own in its `request.url`. */
836
+ 400: {
837
+ headers: {
838
+ "X-Request-Id": components["headers"]["XRequestId"];
839
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
840
+ [name: string]: unknown;
841
+ };
842
+ content: {
843
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
844
+ };
845
+ };
846
+ 401: components["responses"]["FhirUnauthorized"];
847
+ 406: components["responses"]["FhirNotAcceptable"];
848
+ /** @description The request body is over 1 MiB, the most this base reads from one request. Send a large batch as several smaller ones. */
849
+ 413: {
850
+ headers: {
851
+ "X-Request-Id": components["headers"]["XRequestId"];
852
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
853
+ [name: string]: unknown;
854
+ };
855
+ content: {
856
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
857
+ };
858
+ };
859
+ 415: components["responses"]["FhirUnsupportedMediaType"];
860
+ 429: components["responses"]["FhirTooManyRequests"];
861
+ 500: components["responses"]["FhirServerError"];
862
+ 503: components["responses"]["FhirUnavailable"];
863
+ };
864
+ };
865
+ codeSystemLookup: {
866
+ parameters: {
867
+ query: {
868
+ /**
869
+ * @description The code to look up in the code system.
870
+ * @example 2345-7
871
+ */
872
+ code: string;
873
+ /**
874
+ * @description Code system URI to look up against. Defaults to LOINC (`http://loinc.org`).
875
+ * @example http://loinc.org
876
+ */
877
+ system?: string;
878
+ /** @description Optional code system version. Defaults to the server's current version. */
879
+ version?: string;
880
+ /**
881
+ * @description Property to return, repeatable up to 100 times. Narrows the response to the named properties of the code system; omit it to receive all of them. An unrecognised property name is silently omitted from the response, so treat an absent property as 'no answer', never as a negative. More than 100 is refused with a `400` coded `too-long`.
882
+ * @example SHORTNAME
883
+ */
884
+ property?: string | string[];
885
+ /** @description Language for the returned display and designations. Defaults to `en-US`, which also keeps responses small — the upstream otherwise returns ~30 translations per code. */
886
+ displayLanguage?: string;
887
+ /** @description The date for which the lookup should be valid. */
888
+ date?: string;
889
+ };
890
+ header?: {
891
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
892
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
893
+ };
894
+ path?: never;
895
+ cookie?: never;
896
+ };
897
+ requestBody?: never;
898
+ responses: {
899
+ /** @description A FHIR `Parameters` resource describing the code. */
900
+ 200: {
901
+ headers: {
902
+ "X-Request-Id": components["headers"]["XRequestId"];
903
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
904
+ [name: string]: unknown;
905
+ };
906
+ content: {
907
+ "application/fhir+json": components["schemas"]["Parameters"];
908
+ };
909
+ };
910
+ /** @description Invalid request: a parameter is not valid, is not one this operation takes, or was sent more than once (only `property` on `$lookup` repeats). The `OperationOutcome` names each one. */
911
+ 400: {
912
+ headers: {
913
+ "X-Request-Id": components["headers"]["XRequestId"];
914
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
915
+ [name: string]: unknown;
916
+ };
917
+ content: {
918
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
919
+ };
920
+ };
921
+ 401: components["responses"]["FhirUnauthorized"];
922
+ /** @description The code system is not served here, or the code was not found. The `OperationOutcome` says which, and why — an unrecognised system, a system we are not licensed to serve, and a genuinely missing code are different answers. */
923
+ 404: {
924
+ headers: {
925
+ "X-Request-Id": components["headers"]["XRequestId"];
926
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
927
+ [name: string]: unknown;
928
+ };
929
+ content: {
930
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
931
+ };
932
+ };
933
+ 406: components["responses"]["FhirNotAcceptable"];
934
+ /** @description The request is well formed, but this service does not answer it in that form: an operation it does not offer for a code system it holds, or the expansion of a value set defined by a rule too large to list, the whole of LOINC included. The `OperationOutcome` says which, and what to ask instead. */
935
+ 422: {
936
+ headers: {
937
+ "X-Request-Id": components["headers"]["XRequestId"];
938
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
939
+ [name: string]: unknown;
940
+ };
941
+ content: {
942
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
943
+ };
944
+ };
945
+ 429: components["responses"]["FhirTooManyRequests"];
946
+ 500: components["responses"]["FhirServerError"];
947
+ /** @description The code system's source could not be reached: an upstream terminology server, or the local store for a code system this service holds. */
948
+ 502: {
949
+ headers: {
950
+ "X-Request-Id": components["headers"]["XRequestId"];
951
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
952
+ [name: string]: unknown;
953
+ };
954
+ content: {
955
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
956
+ };
957
+ };
958
+ /** @description No source is configured for this code system on this deployment, no release has been published to it, or its source is rate limiting requests (with `Retry-After`). The service returns no answer rather than guessing one. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
959
+ 503: {
960
+ headers: {
961
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
962
+ "Retry-After"?: number;
963
+ "X-Request-Id": components["headers"]["XRequestId"];
964
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
965
+ [name: string]: unknown;
966
+ };
967
+ content: {
968
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
969
+ };
970
+ };
971
+ /** @description The code system's source did not respond in time. */
972
+ 504: {
973
+ headers: {
974
+ "X-Request-Id": components["headers"]["XRequestId"];
975
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
976
+ [name: string]: unknown;
977
+ };
978
+ content: {
979
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
980
+ };
981
+ };
982
+ };
983
+ };
984
+ codeSystemLookupPost: {
985
+ parameters: {
986
+ query?: never;
987
+ header?: {
988
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
989
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
990
+ };
991
+ path?: never;
992
+ cookie?: never;
993
+ };
994
+ requestBody: {
995
+ content: {
996
+ "application/fhir+json": components["schemas"]["Parameters"];
997
+ };
998
+ };
999
+ responses: {
1000
+ /** @description A FHIR `Parameters` resource describing the code. */
1001
+ 200: {
1002
+ headers: {
1003
+ "X-Request-Id": components["headers"]["XRequestId"];
1004
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1005
+ [name: string]: unknown;
1006
+ };
1007
+ content: {
1008
+ "application/fhir+json": components["schemas"]["Parameters"];
1009
+ };
1010
+ };
1011
+ /** @description Invalid request: a parameter is not valid, is not one this operation takes, or was sent more than once (only `property` on `$lookup` repeats). The `OperationOutcome` names each one. */
1012
+ 400: {
1013
+ headers: {
1014
+ "X-Request-Id": components["headers"]["XRequestId"];
1015
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1016
+ [name: string]: unknown;
1017
+ };
1018
+ content: {
1019
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1020
+ };
1021
+ };
1022
+ 401: components["responses"]["FhirUnauthorized"];
1023
+ /** @description The code system is not served here, or the code was not found. The `OperationOutcome` says which, and why — an unrecognised system, a system we are not licensed to serve, and a genuinely missing code are different answers. */
1024
+ 404: {
1025
+ headers: {
1026
+ "X-Request-Id": components["headers"]["XRequestId"];
1027
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1028
+ [name: string]: unknown;
1029
+ };
1030
+ content: {
1031
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1032
+ };
1033
+ };
1034
+ 406: components["responses"]["FhirNotAcceptable"];
1035
+ /** @description The request body is over 1 MiB, the most this base reads from one request. Send a large batch as several smaller ones. */
1036
+ 413: {
1037
+ headers: {
1038
+ "X-Request-Id": components["headers"]["XRequestId"];
1039
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1040
+ [name: string]: unknown;
1041
+ };
1042
+ content: {
1043
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1044
+ };
1045
+ };
1046
+ 415: components["responses"]["FhirUnsupportedMediaType"];
1047
+ /** @description The request is well formed, but this service does not answer it in that form: an operation it does not offer for a code system it holds, or the expansion of a value set defined by a rule too large to list, the whole of LOINC included. The `OperationOutcome` says which, and what to ask instead. */
1048
+ 422: {
1049
+ headers: {
1050
+ "X-Request-Id": components["headers"]["XRequestId"];
1051
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1052
+ [name: string]: unknown;
1053
+ };
1054
+ content: {
1055
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1056
+ };
1057
+ };
1058
+ 429: components["responses"]["FhirTooManyRequests"];
1059
+ 500: components["responses"]["FhirServerError"];
1060
+ /** @description The code system's source could not be reached: an upstream terminology server, or the local store for a code system this service holds. */
1061
+ 502: {
1062
+ headers: {
1063
+ "X-Request-Id": components["headers"]["XRequestId"];
1064
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1065
+ [name: string]: unknown;
1066
+ };
1067
+ content: {
1068
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1069
+ };
1070
+ };
1071
+ /** @description No source is configured for this code system on this deployment, no release has been published to it, or its source is rate limiting requests (with `Retry-After`). The service returns no answer rather than guessing one. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
1072
+ 503: {
1073
+ headers: {
1074
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
1075
+ "Retry-After"?: number;
1076
+ "X-Request-Id": components["headers"]["XRequestId"];
1077
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1078
+ [name: string]: unknown;
1079
+ };
1080
+ content: {
1081
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1082
+ };
1083
+ };
1084
+ /** @description The code system's source did not respond in time. */
1085
+ 504: {
1086
+ headers: {
1087
+ "X-Request-Id": components["headers"]["XRequestId"];
1088
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1089
+ [name: string]: unknown;
1090
+ };
1091
+ content: {
1092
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1093
+ };
1094
+ };
1095
+ };
1096
+ };
1097
+ codeSystemValidateCode: {
1098
+ parameters: {
1099
+ query: {
1100
+ /**
1101
+ * @description Canonical URL of the **code system**. Defaults to LOINC (`http://loinc.org`).
1102
+ * @example http://loinc.org
1103
+ */
1104
+ url?: string;
1105
+ /**
1106
+ * @description The code to validate.
1107
+ * @example 2345-7
1108
+ */
1109
+ code: string;
1110
+ /** @description Optional code system version. */
1111
+ version?: string;
1112
+ /** @description Optional display to check against the code's own display. A mismatch returns `result: false` with the expected display alongside — which means the code is valid and only the label differs. Do not read that as an invalid code. */
1113
+ display?: string;
1114
+ /** @description Language to use when checking the display. */
1115
+ displayLanguage?: string;
1116
+ /** @description The date for which the validation should be valid. */
1117
+ date?: string;
1118
+ };
1119
+ header?: {
1120
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
1121
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
1122
+ };
1123
+ path?: never;
1124
+ cookie?: never;
1125
+ };
1126
+ requestBody?: never;
1127
+ responses: {
1128
+ /** @description A FHIR `Parameters` resource carrying `result`. */
1129
+ 200: {
1130
+ headers: {
1131
+ "X-Request-Id": components["headers"]["XRequestId"];
1132
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1133
+ [name: string]: unknown;
1134
+ };
1135
+ content: {
1136
+ "application/fhir+json": components["schemas"]["Parameters"];
1137
+ };
1138
+ };
1139
+ /** @description Invalid request: a parameter is not valid, is not one this operation takes, or was sent more than once (only `property` on `$lookup` repeats). The `OperationOutcome` names each one. */
1140
+ 400: {
1141
+ headers: {
1142
+ "X-Request-Id": components["headers"]["XRequestId"];
1143
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1144
+ [name: string]: unknown;
1145
+ };
1146
+ content: {
1147
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1148
+ };
1149
+ };
1150
+ 401: components["responses"]["FhirUnauthorized"];
1151
+ /** @description The code system is not served here, or the code was not found. The `OperationOutcome` says which, and why — an unrecognised system, a system we are not licensed to serve, and a genuinely missing code are different answers. */
1152
+ 404: {
1153
+ headers: {
1154
+ "X-Request-Id": components["headers"]["XRequestId"];
1155
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1156
+ [name: string]: unknown;
1157
+ };
1158
+ content: {
1159
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1160
+ };
1161
+ };
1162
+ 406: components["responses"]["FhirNotAcceptable"];
1163
+ /** @description The request is well formed, but this service does not answer it in that form: an operation it does not offer for a code system it holds, or the expansion of a value set defined by a rule too large to list, the whole of LOINC included. The `OperationOutcome` says which, and what to ask instead. */
1164
+ 422: {
1165
+ headers: {
1166
+ "X-Request-Id": components["headers"]["XRequestId"];
1167
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1168
+ [name: string]: unknown;
1169
+ };
1170
+ content: {
1171
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1172
+ };
1173
+ };
1174
+ 429: components["responses"]["FhirTooManyRequests"];
1175
+ 500: components["responses"]["FhirServerError"];
1176
+ /** @description The code system's source could not be reached: an upstream terminology server, or the local store for a code system this service holds. */
1177
+ 502: {
1178
+ headers: {
1179
+ "X-Request-Id": components["headers"]["XRequestId"];
1180
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1181
+ [name: string]: unknown;
1182
+ };
1183
+ content: {
1184
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1185
+ };
1186
+ };
1187
+ /** @description No source is configured for this code system on this deployment, no release has been published to it, or its source is rate limiting requests (with `Retry-After`). The service returns no answer rather than guessing one. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
1188
+ 503: {
1189
+ headers: {
1190
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
1191
+ "Retry-After"?: number;
1192
+ "X-Request-Id": components["headers"]["XRequestId"];
1193
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1194
+ [name: string]: unknown;
1195
+ };
1196
+ content: {
1197
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1198
+ };
1199
+ };
1200
+ /** @description The code system's source did not respond in time. */
1201
+ 504: {
1202
+ headers: {
1203
+ "X-Request-Id": components["headers"]["XRequestId"];
1204
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1205
+ [name: string]: unknown;
1206
+ };
1207
+ content: {
1208
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1209
+ };
1210
+ };
1211
+ };
1212
+ };
1213
+ codeSystemValidateCodePost: {
1214
+ parameters: {
1215
+ query?: never;
1216
+ header?: {
1217
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
1218
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
1219
+ };
1220
+ path?: never;
1221
+ cookie?: never;
1222
+ };
1223
+ requestBody: {
1224
+ content: {
1225
+ "application/fhir+json": components["schemas"]["Parameters"];
1226
+ };
1227
+ };
1228
+ responses: {
1229
+ /** @description A FHIR `Parameters` resource carrying `result`. */
1230
+ 200: {
1231
+ headers: {
1232
+ "X-Request-Id": components["headers"]["XRequestId"];
1233
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1234
+ [name: string]: unknown;
1235
+ };
1236
+ content: {
1237
+ "application/fhir+json": components["schemas"]["Parameters"];
1238
+ };
1239
+ };
1240
+ /** @description Invalid request: a parameter is not valid, is not one this operation takes, or was sent more than once (only `property` on `$lookup` repeats). The `OperationOutcome` names each one. */
1241
+ 400: {
1242
+ headers: {
1243
+ "X-Request-Id": components["headers"]["XRequestId"];
1244
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1245
+ [name: string]: unknown;
1246
+ };
1247
+ content: {
1248
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1249
+ };
1250
+ };
1251
+ 401: components["responses"]["FhirUnauthorized"];
1252
+ /** @description The code system is not served here, or the code was not found. The `OperationOutcome` says which, and why — an unrecognised system, a system we are not licensed to serve, and a genuinely missing code are different answers. */
1253
+ 404: {
1254
+ headers: {
1255
+ "X-Request-Id": components["headers"]["XRequestId"];
1256
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1257
+ [name: string]: unknown;
1258
+ };
1259
+ content: {
1260
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1261
+ };
1262
+ };
1263
+ 406: components["responses"]["FhirNotAcceptable"];
1264
+ /** @description The request body is over 1 MiB, the most this base reads from one request. Send a large batch as several smaller ones. */
1265
+ 413: {
1266
+ headers: {
1267
+ "X-Request-Id": components["headers"]["XRequestId"];
1268
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1269
+ [name: string]: unknown;
1270
+ };
1271
+ content: {
1272
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1273
+ };
1274
+ };
1275
+ 415: components["responses"]["FhirUnsupportedMediaType"];
1276
+ /** @description The request is well formed, but this service does not answer it in that form: an operation it does not offer for a code system it holds, or the expansion of a value set defined by a rule too large to list, the whole of LOINC included. The `OperationOutcome` says which, and what to ask instead. */
1277
+ 422: {
1278
+ headers: {
1279
+ "X-Request-Id": components["headers"]["XRequestId"];
1280
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1281
+ [name: string]: unknown;
1282
+ };
1283
+ content: {
1284
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1285
+ };
1286
+ };
1287
+ 429: components["responses"]["FhirTooManyRequests"];
1288
+ 500: components["responses"]["FhirServerError"];
1289
+ /** @description The code system's source could not be reached: an upstream terminology server, or the local store for a code system this service holds. */
1290
+ 502: {
1291
+ headers: {
1292
+ "X-Request-Id": components["headers"]["XRequestId"];
1293
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1294
+ [name: string]: unknown;
1295
+ };
1296
+ content: {
1297
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1298
+ };
1299
+ };
1300
+ /** @description No source is configured for this code system on this deployment, no release has been published to it, or its source is rate limiting requests (with `Retry-After`). The service returns no answer rather than guessing one. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
1301
+ 503: {
1302
+ headers: {
1303
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
1304
+ "Retry-After"?: number;
1305
+ "X-Request-Id": components["headers"]["XRequestId"];
1306
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1307
+ [name: string]: unknown;
1308
+ };
1309
+ content: {
1310
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1311
+ };
1312
+ };
1313
+ /** @description The code system's source did not respond in time. */
1314
+ 504: {
1315
+ headers: {
1316
+ "X-Request-Id": components["headers"]["XRequestId"];
1317
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1318
+ [name: string]: unknown;
1319
+ };
1320
+ content: {
1321
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1322
+ };
1323
+ };
1324
+ };
1325
+ };
1326
+ valueSetExpand: {
1327
+ parameters: {
1328
+ query?: {
1329
+ /**
1330
+ * @description Canonical URL of the value set to expand. Defaults to the implicit all-LOINC value set (`http://loinc.org?fhir_vs`), which is every LOINC code. That expansion is not served and answers `422`: expand a LOINC group or answer list instead, or ask `$validate-code` whether a code is in LOINC.
1331
+ * @example http://loinc.org/vs/LL360-9
1332
+ */
1333
+ url?: string;
1334
+ /** @description Text filter to narrow the expansion to matching concepts. Applies to value sets this service hosts. For a value set resolved from its own source, narrowing is refused with a `400` naming this parameter, because that source answers a whole expansion or nothing: expand it whole and filter the result. */
1335
+ filter?: string;
1336
+ /** @description Maximum number of concepts to return (`0` returns the total only). Applies to value sets this service hosts. For a value set resolved from its own source, narrowing is refused with a `400` naming this parameter, because that source answers a whole expansion or nothing: expand it whole and filter the result. */
1337
+ count?: number;
1338
+ /** @description Number of concepts to skip for pagination. Applies to value sets this service hosts. For a value set resolved from its own source, narrowing is refused with a `400` naming this parameter, because that source answers a whole expansion or nothing: expand it whole and filter the result. */
1339
+ offset?: number;
1340
+ /** @description Not supported on this operation, and refused with a `400` naming it. Expansions are returned whole, in their source's own language and order. */
1341
+ displayLanguage?: string;
1342
+ /** @description Not supported on this operation, and refused with a `400` naming it. Expansions are returned whole. */
1343
+ includeDesignations?: boolean;
1344
+ /** @description Not supported on this operation, and refused with a `400` naming it. Expansions are returned whole. */
1345
+ activeOnly?: boolean;
1346
+ };
1347
+ header?: {
1348
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
1349
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
1350
+ };
1351
+ path?: never;
1352
+ cookie?: never;
1353
+ };
1354
+ requestBody?: never;
1355
+ responses: {
1356
+ /** @description A FHIR `ValueSet` carrying an `expansion`. */
1357
+ 200: {
1358
+ headers: {
1359
+ "X-Request-Id": components["headers"]["XRequestId"];
1360
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1361
+ [name: string]: unknown;
1362
+ };
1363
+ content: {
1364
+ "application/fhir+json": components["schemas"]["ValueSet"];
1365
+ };
1366
+ };
1367
+ /** @description Invalid request: a parameter is not valid, is not one this operation takes, or was sent more than once (only `property` on `$lookup` repeats). The `OperationOutcome` names each one. */
1368
+ 400: {
1369
+ headers: {
1370
+ "X-Request-Id": components["headers"]["XRequestId"];
1371
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1372
+ [name: string]: unknown;
1373
+ };
1374
+ content: {
1375
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1376
+ };
1377
+ };
1378
+ 401: components["responses"]["FhirUnauthorized"];
1379
+ /** @description The code system is not served here, or the code was not found. The `OperationOutcome` says which, and why — an unrecognised system, a system we are not licensed to serve, and a genuinely missing code are different answers. */
1380
+ 404: {
1381
+ headers: {
1382
+ "X-Request-Id": components["headers"]["XRequestId"];
1383
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1384
+ [name: string]: unknown;
1385
+ };
1386
+ content: {
1387
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1388
+ };
1389
+ };
1390
+ 406: components["responses"]["FhirNotAcceptable"];
1391
+ /** @description The request is well formed, but this service does not answer it in that form: an operation it does not offer for a code system it holds, or the expansion of a value set defined by a rule too large to list, the whole of LOINC included. The `OperationOutcome` says which, and what to ask instead. */
1392
+ 422: {
1393
+ headers: {
1394
+ "X-Request-Id": components["headers"]["XRequestId"];
1395
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1396
+ [name: string]: unknown;
1397
+ };
1398
+ content: {
1399
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1400
+ };
1401
+ };
1402
+ 429: components["responses"]["FhirTooManyRequests"];
1403
+ 500: components["responses"]["FhirServerError"];
1404
+ /** @description The code system's source could not be reached: an upstream terminology server, or the local store for a code system this service holds. */
1405
+ 502: {
1406
+ headers: {
1407
+ "X-Request-Id": components["headers"]["XRequestId"];
1408
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1409
+ [name: string]: unknown;
1410
+ };
1411
+ content: {
1412
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1413
+ };
1414
+ };
1415
+ /** @description No source is configured for this code system on this deployment, no release has been published to it, or its source is rate limiting requests (with `Retry-After`). The service returns no answer rather than guessing one. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
1416
+ 503: {
1417
+ headers: {
1418
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
1419
+ "Retry-After"?: number;
1420
+ "X-Request-Id": components["headers"]["XRequestId"];
1421
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1422
+ [name: string]: unknown;
1423
+ };
1424
+ content: {
1425
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1426
+ };
1427
+ };
1428
+ /** @description The code system's source did not respond in time. */
1429
+ 504: {
1430
+ headers: {
1431
+ "X-Request-Id": components["headers"]["XRequestId"];
1432
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1433
+ [name: string]: unknown;
1434
+ };
1435
+ content: {
1436
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1437
+ };
1438
+ };
1439
+ };
1440
+ };
1441
+ valueSetExpandPost: {
1442
+ parameters: {
1443
+ query?: never;
1444
+ header?: {
1445
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
1446
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
1447
+ };
1448
+ path?: never;
1449
+ cookie?: never;
1450
+ };
1451
+ requestBody: {
1452
+ content: {
1453
+ "application/fhir+json": components["schemas"]["Parameters"];
1454
+ };
1455
+ };
1456
+ responses: {
1457
+ /** @description A FHIR `ValueSet` carrying an `expansion`. */
1458
+ 200: {
1459
+ headers: {
1460
+ "X-Request-Id": components["headers"]["XRequestId"];
1461
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1462
+ [name: string]: unknown;
1463
+ };
1464
+ content: {
1465
+ "application/fhir+json": components["schemas"]["ValueSet"];
1466
+ };
1467
+ };
1468
+ /** @description Invalid request: a parameter is not valid, is not one this operation takes, or was sent more than once (only `property` on `$lookup` repeats). The `OperationOutcome` names each one. */
1469
+ 400: {
1470
+ headers: {
1471
+ "X-Request-Id": components["headers"]["XRequestId"];
1472
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1473
+ [name: string]: unknown;
1474
+ };
1475
+ content: {
1476
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1477
+ };
1478
+ };
1479
+ 401: components["responses"]["FhirUnauthorized"];
1480
+ /** @description The code system is not served here, or the code was not found. The `OperationOutcome` says which, and why — an unrecognised system, a system we are not licensed to serve, and a genuinely missing code are different answers. */
1481
+ 404: {
1482
+ headers: {
1483
+ "X-Request-Id": components["headers"]["XRequestId"];
1484
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1485
+ [name: string]: unknown;
1486
+ };
1487
+ content: {
1488
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1489
+ };
1490
+ };
1491
+ 406: components["responses"]["FhirNotAcceptable"];
1492
+ /** @description The request body is over 1 MiB, the most this base reads from one request. Send a large batch as several smaller ones. */
1493
+ 413: {
1494
+ headers: {
1495
+ "X-Request-Id": components["headers"]["XRequestId"];
1496
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1497
+ [name: string]: unknown;
1498
+ };
1499
+ content: {
1500
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1501
+ };
1502
+ };
1503
+ 415: components["responses"]["FhirUnsupportedMediaType"];
1504
+ /** @description The request is well formed, but this service does not answer it in that form: an operation it does not offer for a code system it holds, or the expansion of a value set defined by a rule too large to list, the whole of LOINC included. The `OperationOutcome` says which, and what to ask instead. */
1505
+ 422: {
1506
+ headers: {
1507
+ "X-Request-Id": components["headers"]["XRequestId"];
1508
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1509
+ [name: string]: unknown;
1510
+ };
1511
+ content: {
1512
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1513
+ };
1514
+ };
1515
+ 429: components["responses"]["FhirTooManyRequests"];
1516
+ 500: components["responses"]["FhirServerError"];
1517
+ /** @description The code system's source could not be reached: an upstream terminology server, or the local store for a code system this service holds. */
1518
+ 502: {
1519
+ headers: {
1520
+ "X-Request-Id": components["headers"]["XRequestId"];
1521
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1522
+ [name: string]: unknown;
1523
+ };
1524
+ content: {
1525
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1526
+ };
1527
+ };
1528
+ /** @description No source is configured for this code system on this deployment, no release has been published to it, or its source is rate limiting requests (with `Retry-After`). The service returns no answer rather than guessing one. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
1529
+ 503: {
1530
+ headers: {
1531
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
1532
+ "Retry-After"?: number;
1533
+ "X-Request-Id": components["headers"]["XRequestId"];
1534
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1535
+ [name: string]: unknown;
1536
+ };
1537
+ content: {
1538
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1539
+ };
1540
+ };
1541
+ /** @description The code system's source did not respond in time. */
1542
+ 504: {
1543
+ headers: {
1544
+ "X-Request-Id": components["headers"]["XRequestId"];
1545
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1546
+ [name: string]: unknown;
1547
+ };
1548
+ content: {
1549
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1550
+ };
1551
+ };
1552
+ };
1553
+ };
1554
+ valueSetValidateCode: {
1555
+ parameters: {
1556
+ query: {
1557
+ /**
1558
+ * @description Canonical URL of the value set to validate against. Defaults to the implicit all-LOINC value set (`http://loinc.org?fhir_vs`), which is every LOINC code.
1559
+ * @example http://hl7.org/fhir/ValueSet/observation-vitalsignresult
1560
+ */
1561
+ url?: string;
1562
+ /**
1563
+ * @description The code to validate.
1564
+ * @example 8867-4
1565
+ */
1566
+ code: string;
1567
+ /**
1568
+ * @description Code system URI of the code. Defaults to LOINC (`http://loinc.org`).
1569
+ * @example http://loinc.org
1570
+ */
1571
+ system?: string;
1572
+ /** @description Optional display to check against the code's own display. A mismatch returns `result: false` with the expected display alongside — which means the code is valid and only the label differs. Do not read that as an invalid code. */
1573
+ display?: string;
1574
+ /** @description Language to use when checking the display. */
1575
+ displayLanguage?: string;
1576
+ /** @description The date for which the validation should be valid. */
1577
+ date?: string;
1578
+ };
1579
+ header?: {
1580
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
1581
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
1582
+ };
1583
+ path?: never;
1584
+ cookie?: never;
1585
+ };
1586
+ requestBody?: never;
1587
+ responses: {
1588
+ /** @description A FHIR `Parameters` resource carrying `result`. */
1589
+ 200: {
1590
+ headers: {
1591
+ "X-Request-Id": components["headers"]["XRequestId"];
1592
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1593
+ [name: string]: unknown;
1594
+ };
1595
+ content: {
1596
+ "application/fhir+json": components["schemas"]["Parameters"];
1597
+ };
1598
+ };
1599
+ /** @description Invalid request: a parameter is not valid, is not one this operation takes, or was sent more than once (only `property` on `$lookup` repeats). The `OperationOutcome` names each one. */
1600
+ 400: {
1601
+ headers: {
1602
+ "X-Request-Id": components["headers"]["XRequestId"];
1603
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1604
+ [name: string]: unknown;
1605
+ };
1606
+ content: {
1607
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1608
+ };
1609
+ };
1610
+ 401: components["responses"]["FhirUnauthorized"];
1611
+ /** @description The code system is not served here, or the code was not found. The `OperationOutcome` says which, and why — an unrecognised system, a system we are not licensed to serve, and a genuinely missing code are different answers. */
1612
+ 404: {
1613
+ headers: {
1614
+ "X-Request-Id": components["headers"]["XRequestId"];
1615
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1616
+ [name: string]: unknown;
1617
+ };
1618
+ content: {
1619
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1620
+ };
1621
+ };
1622
+ 406: components["responses"]["FhirNotAcceptable"];
1623
+ /** @description The request is well formed, but this service does not answer it in that form: an operation it does not offer for a code system it holds, or the expansion of a value set defined by a rule too large to list, the whole of LOINC included. The `OperationOutcome` says which, and what to ask instead. */
1624
+ 422: {
1625
+ headers: {
1626
+ "X-Request-Id": components["headers"]["XRequestId"];
1627
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1628
+ [name: string]: unknown;
1629
+ };
1630
+ content: {
1631
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1632
+ };
1633
+ };
1634
+ 429: components["responses"]["FhirTooManyRequests"];
1635
+ 500: components["responses"]["FhirServerError"];
1636
+ /** @description The code system's source could not be reached: an upstream terminology server, or the local store for a code system this service holds. */
1637
+ 502: {
1638
+ headers: {
1639
+ "X-Request-Id": components["headers"]["XRequestId"];
1640
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1641
+ [name: string]: unknown;
1642
+ };
1643
+ content: {
1644
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1645
+ };
1646
+ };
1647
+ /** @description No source is configured for this code system on this deployment, no release has been published to it, or its source is rate limiting requests (with `Retry-After`). The service returns no answer rather than guessing one. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
1648
+ 503: {
1649
+ headers: {
1650
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
1651
+ "Retry-After"?: number;
1652
+ "X-Request-Id": components["headers"]["XRequestId"];
1653
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1654
+ [name: string]: unknown;
1655
+ };
1656
+ content: {
1657
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1658
+ };
1659
+ };
1660
+ /** @description The code system's source did not respond in time. */
1661
+ 504: {
1662
+ headers: {
1663
+ "X-Request-Id": components["headers"]["XRequestId"];
1664
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1665
+ [name: string]: unknown;
1666
+ };
1667
+ content: {
1668
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1669
+ };
1670
+ };
1671
+ };
1672
+ };
1673
+ valueSetValidateCodePost: {
1674
+ parameters: {
1675
+ query?: never;
1676
+ header?: {
1677
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
1678
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
1679
+ };
1680
+ path?: never;
1681
+ cookie?: never;
1682
+ };
1683
+ requestBody: {
1684
+ content: {
1685
+ "application/fhir+json": components["schemas"]["Parameters"];
1686
+ };
1687
+ };
1688
+ responses: {
1689
+ /** @description A FHIR `Parameters` resource carrying `result`. */
1690
+ 200: {
1691
+ headers: {
1692
+ "X-Request-Id": components["headers"]["XRequestId"];
1693
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1694
+ [name: string]: unknown;
1695
+ };
1696
+ content: {
1697
+ "application/fhir+json": components["schemas"]["Parameters"];
1698
+ };
1699
+ };
1700
+ /** @description Invalid request: a parameter is not valid, is not one this operation takes, or was sent more than once (only `property` on `$lookup` repeats). The `OperationOutcome` names each one. */
1701
+ 400: {
1702
+ headers: {
1703
+ "X-Request-Id": components["headers"]["XRequestId"];
1704
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1705
+ [name: string]: unknown;
1706
+ };
1707
+ content: {
1708
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1709
+ };
1710
+ };
1711
+ 401: components["responses"]["FhirUnauthorized"];
1712
+ /** @description The code system is not served here, or the code was not found. The `OperationOutcome` says which, and why — an unrecognised system, a system we are not licensed to serve, and a genuinely missing code are different answers. */
1713
+ 404: {
1714
+ headers: {
1715
+ "X-Request-Id": components["headers"]["XRequestId"];
1716
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1717
+ [name: string]: unknown;
1718
+ };
1719
+ content: {
1720
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1721
+ };
1722
+ };
1723
+ 406: components["responses"]["FhirNotAcceptable"];
1724
+ /** @description The request body is over 1 MiB, the most this base reads from one request. Send a large batch as several smaller ones. */
1725
+ 413: {
1726
+ headers: {
1727
+ "X-Request-Id": components["headers"]["XRequestId"];
1728
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1729
+ [name: string]: unknown;
1730
+ };
1731
+ content: {
1732
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1733
+ };
1734
+ };
1735
+ 415: components["responses"]["FhirUnsupportedMediaType"];
1736
+ /** @description The request is well formed, but this service does not answer it in that form: an operation it does not offer for a code system it holds, or the expansion of a value set defined by a rule too large to list, the whole of LOINC included. The `OperationOutcome` says which, and what to ask instead. */
1737
+ 422: {
1738
+ headers: {
1739
+ "X-Request-Id": components["headers"]["XRequestId"];
1740
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1741
+ [name: string]: unknown;
1742
+ };
1743
+ content: {
1744
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1745
+ };
1746
+ };
1747
+ 429: components["responses"]["FhirTooManyRequests"];
1748
+ 500: components["responses"]["FhirServerError"];
1749
+ /** @description The code system's source could not be reached: an upstream terminology server, or the local store for a code system this service holds. */
1750
+ 502: {
1751
+ headers: {
1752
+ "X-Request-Id": components["headers"]["XRequestId"];
1753
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1754
+ [name: string]: unknown;
1755
+ };
1756
+ content: {
1757
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1758
+ };
1759
+ };
1760
+ /** @description No source is configured for this code system on this deployment, no release has been published to it, or its source is rate limiting requests (with `Retry-After`). The service returns no answer rather than guessing one. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
1761
+ 503: {
1762
+ headers: {
1763
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
1764
+ "Retry-After"?: number;
1765
+ "X-Request-Id": components["headers"]["XRequestId"];
1766
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1767
+ [name: string]: unknown;
1768
+ };
1769
+ content: {
1770
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1771
+ };
1772
+ };
1773
+ /** @description The code system's source did not respond in time. */
1774
+ 504: {
1775
+ headers: {
1776
+ "X-Request-Id": components["headers"]["XRequestId"];
1777
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1778
+ [name: string]: unknown;
1779
+ };
1780
+ content: {
1781
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1782
+ };
1783
+ };
1784
+ };
1785
+ };
1786
+ searchPractitioner: {
1787
+ parameters: {
1788
+ query?: {
1789
+ /**
1790
+ * @description An NPI, as `{system}|{npi}` or a bare 10-digit value. Accepted systems: http://terminology.hl7.org/NamingSystem/npi, http://hl7.org/fhir/sid/us-npi, urn:oid:2.16.840.1.113883.4.6. All of them resolve the same provider. Responses carry the directory's own system, `http://hl7.org/fhir/sid/us-npi`, which may differ from the one you sent. One NPI per search; use a batch Bundle to resolve several. Any other identifier system is refused by name rather than searched, because a system the source does not index would answer with an empty result that reads as 'no such provider'.
1791
+ * @example 1093209884
1792
+ */
1793
+ identifier?: string;
1794
+ /** @description Matches across the whole name. */
1795
+ name?: string;
1796
+ /** @description The family name. */
1797
+ family?: string;
1798
+ /** @description A given name. */
1799
+ given?: string;
1800
+ /** @description Narrows a search by city; cannot be used on its own. Matches any of the practitioner's addresses, so a result can still list addresses in another city. */
1801
+ "address-city"?: string;
1802
+ /** @description Narrows a search by state; cannot be used on its own. Matches any of the practitioner's addresses, so a result can still list addresses in another state. */
1803
+ "address-state"?: string;
1804
+ /** @description `true` or `false`. Narrows a search; cannot be used on its own. */
1805
+ active?: "true" | "false";
1806
+ /** @description `PractitionerRole:practitioner` brings the practitioner's roles into the same bundle. Repeat the parameter to include several. Included entries do not count toward `_count`. The directory returns at most 100 included records per page; a page with more is refused with a 502 rather than served short. */
1807
+ _revinclude?: "PractitionerRole:practitioner"[];
1808
+ /** @description A Practitioner id. Searching by id rather than reading it lets one request also bring the records an `_include` or `_revinclude` names. */
1809
+ _id?: string;
1810
+ /** @description `count` only: answers how many records match, as `total`, with no entries. Cannot be combined with `_include`, `_revinclude`, `_count` or `page`. */
1811
+ _summary?: "count";
1812
+ /** @description Results are paged. `_count` sets the page size (1 to 100); a larger value is refused rather than quietly reduced. Follow `link` with relation `next` to continue. The cursor it carries is opaque and must not be constructed or modified. */
1813
+ _count?: number;
1814
+ /** @description Continuation cursor. Opaque: follow the `next` link from a previous response, and never construct or modify it. Cursors expire. */
1815
+ page?: string;
1816
+ };
1817
+ header?: {
1818
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
1819
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
1820
+ };
1821
+ path?: never;
1822
+ cookie?: never;
1823
+ };
1824
+ requestBody?: never;
1825
+ responses: {
1826
+ /** @description A FHIR `Bundle` with `type: searchset`. Entries carry `fullUrl`s and `link`s on this service. `total` is present when the directory sends one, and is never computed here. */
1827
+ 200: {
1828
+ headers: {
1829
+ "X-Request-Id": components["headers"]["XRequestId"];
1830
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1831
+ [name: string]: unknown;
1832
+ };
1833
+ content: {
1834
+ "application/fhir+json": components["schemas"]["Bundle"];
1835
+ };
1836
+ };
1837
+ /** @description The request named a parameter, identifier system or value this service does not serve. Every unsupported parameter is refused by name — none is silently ignored — so a search that returns results applied every filter you sent. */
1838
+ 400: {
1839
+ headers: {
1840
+ "X-Request-Id": components["headers"]["XRequestId"];
1841
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1842
+ [name: string]: unknown;
1843
+ };
1844
+ content: {
1845
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1846
+ };
1847
+ };
1848
+ 401: components["responses"]["FhirUnauthorized"];
1849
+ /** @description No such resource, or no such interaction on this base. */
1850
+ 404: {
1851
+ headers: {
1852
+ "X-Request-Id": components["headers"]["XRequestId"];
1853
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1854
+ [name: string]: unknown;
1855
+ };
1856
+ content: {
1857
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1858
+ };
1859
+ };
1860
+ 406: components["responses"]["FhirNotAcceptable"];
1861
+ 429: components["responses"]["FhirTooManyRequests"];
1862
+ 500: components["responses"]["FhirServerError"];
1863
+ /** @description The directory could not be reached, answered in a shape that cannot be served, or answered with more than is served at once: a `_revinclude` past the directory's 100 records on a page, or an answer over 8 MiB. No answer is given: this is never reported as an empty result, which would read as 'no such provider'. */
1864
+ 502: {
1865
+ headers: {
1866
+ "X-Request-Id": components["headers"]["XRequestId"];
1867
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1868
+ [name: string]: unknown;
1869
+ };
1870
+ content: {
1871
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1872
+ };
1873
+ };
1874
+ /** @description The directory is rate limiting requests. Send the request again after `Retry-After`. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
1875
+ 503: {
1876
+ headers: {
1877
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
1878
+ "Retry-After"?: number;
1879
+ "X-Request-Id": components["headers"]["XRequestId"];
1880
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1881
+ [name: string]: unknown;
1882
+ };
1883
+ content: {
1884
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1885
+ };
1886
+ };
1887
+ /** @description The directory did not respond in time. */
1888
+ 504: {
1889
+ headers: {
1890
+ "X-Request-Id": components["headers"]["XRequestId"];
1891
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1892
+ [name: string]: unknown;
1893
+ };
1894
+ content: {
1895
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1896
+ };
1897
+ };
1898
+ };
1899
+ };
1900
+ readPractitioner: {
1901
+ parameters: {
1902
+ query?: never;
1903
+ header?: {
1904
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
1905
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
1906
+ };
1907
+ path: {
1908
+ /**
1909
+ * @description The resource id, as returned by a search on this service. Ids are opaque: they are not constructed from an NPI or any other identifier.
1910
+ * @example Practitioner-1093209884
1911
+ */
1912
+ id: string;
1913
+ };
1914
+ cookie?: never;
1915
+ };
1916
+ requestBody?: never;
1917
+ responses: {
1918
+ /** @description The Practitioner, as the directory publishes it. */
1919
+ 200: {
1920
+ headers: {
1921
+ "X-Request-Id": components["headers"]["XRequestId"];
1922
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1923
+ [name: string]: unknown;
1924
+ };
1925
+ content: {
1926
+ "application/fhir+json": components["schemas"]["Practitioner"];
1927
+ };
1928
+ };
1929
+ /** @description The id is not a valid FHIR id, or a query parameter was sent: a read takes none. Ids come from search results; they are not constructed from an NPI or any other identifier. */
1930
+ 400: {
1931
+ headers: {
1932
+ "X-Request-Id": components["headers"]["XRequestId"];
1933
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1934
+ [name: string]: unknown;
1935
+ };
1936
+ content: {
1937
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1938
+ };
1939
+ };
1940
+ 401: components["responses"]["FhirUnauthorized"];
1941
+ /** @description No such resource, or no such interaction on this base. */
1942
+ 404: {
1943
+ headers: {
1944
+ "X-Request-Id": components["headers"]["XRequestId"];
1945
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1946
+ [name: string]: unknown;
1947
+ };
1948
+ content: {
1949
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1950
+ };
1951
+ };
1952
+ 406: components["responses"]["FhirNotAcceptable"];
1953
+ 429: components["responses"]["FhirTooManyRequests"];
1954
+ 500: components["responses"]["FhirServerError"];
1955
+ /** @description The directory could not be reached, answered in a shape that cannot be served, or answered with more than is served at once: a `_revinclude` past the directory's 100 records on a page, or an answer over 8 MiB. No answer is given: this is never reported as an empty result, which would read as 'no such provider'. */
1956
+ 502: {
1957
+ headers: {
1958
+ "X-Request-Id": components["headers"]["XRequestId"];
1959
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1960
+ [name: string]: unknown;
1961
+ };
1962
+ content: {
1963
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1964
+ };
1965
+ };
1966
+ /** @description The directory is rate limiting requests. Send the request again after `Retry-After`. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
1967
+ 503: {
1968
+ headers: {
1969
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
1970
+ "Retry-After"?: number;
1971
+ "X-Request-Id": components["headers"]["XRequestId"];
1972
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1973
+ [name: string]: unknown;
1974
+ };
1975
+ content: {
1976
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1977
+ };
1978
+ };
1979
+ /** @description The directory did not respond in time. */
1980
+ 504: {
1981
+ headers: {
1982
+ "X-Request-Id": components["headers"]["XRequestId"];
1983
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
1984
+ [name: string]: unknown;
1985
+ };
1986
+ content: {
1987
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
1988
+ };
1989
+ };
1990
+ };
1991
+ };
1992
+ searchPractitionerRole: {
1993
+ parameters: {
1994
+ query?: {
1995
+ /**
1996
+ * @description The roles one practitioner holds. Give a Practitioner id, `Practitioner/{id}`, or the `fullUrl` this service returned. An address on another server is refused.
1997
+ * @example Practitioner-1093209884
1998
+ */
1999
+ practitioner?: string;
2000
+ /** @description The roles held at one organization. Give a Organization id, `Organization/{id}`, or the `fullUrl` this service returned. An address on another server is refused. */
2001
+ organization?: string;
2002
+ /** @description The roles held at one location. Give a Location id, `Location/{id}`, or the `fullUrl` this service returned. An address on another server is refused. */
2003
+ location?: string;
2004
+ /** @description The roles reached through one endpoint. Give a Endpoint id, `Endpoint/{id}`, or the `fullUrl` this service returned. An address on another server is refused. */
2005
+ endpoint?: string;
2006
+ /** @description A NUCC Health Care Provider Taxonomy code, bare or as `http://nucc.org/provider-taxonomy|{code}` (for example `207RC0000X`, cardiovascular disease). Any other system is refused, because the directory codes specialties in NUCC alone and would answer another system with nothing. Narrows a search; cannot be used on its own. */
2007
+ specialty?: string;
2008
+ /** @description The roles the directory lists in one insurance network (an Organization of type `ntwk`). Cannot be used on its own: send it beside `practitioner`, `organization`, `location` or `specialty`. A search that breaks this rule is refused before the directory is asked. Beside a specialty or a busy location the directory can take 10 to 15 seconds. A role the network's records do not list is not shown to be out of network: the directory's network data is sparse. Give a Organization id, `Organization/{id}`, or the `fullUrl` this service returned. An address on another server is refused. */
2009
+ network?: string;
2010
+ /** @description The roles accepting new patients from one insurance network. Cannot be used on its own: send it beside `practitioner`, `organization`, `location` or `specialty`. A search that breaks this rule is refused before the directory is asked. Give a Organization id, `Organization/{id}`, or the `fullUrl` this service returned. An address on another server is refused. */
2011
+ "new-patient-from-network"?: string;
2012
+ /** @description Whether the role accepts new patients: `newpt`, `nopt`, `existptonly` or `existptfam`, bare or under `http://terminology.hl7.org/CodeSystem/accepting-patients`. Narrows a search; cannot be used on its own. */
2013
+ "new-patient"?: string;
2014
+ /** @description `true` or `false`. Narrows a search; cannot be used on its own. */
2015
+ active?: "true" | "false";
2016
+ /** @description Bring the records a role points to into the same bundle: `PractitionerRole:practitioner`, `PractitionerRole:organization`, `PractitionerRole:location`, `PractitionerRole:network` or `PractitionerRole:endpoint`. Repeat the parameter to include several. Included entries do not count toward `_count`. */
2017
+ _include?: ("PractitionerRole:practitioner" | "PractitionerRole:organization" | "PractitionerRole:location" | "PractitionerRole:network" | "PractitionerRole:endpoint")[];
2018
+ /** @description A PractitionerRole id. Searching by id rather than reading it lets one request also bring the records an `_include` or `_revinclude` names. */
2019
+ _id?: string;
2020
+ /** @description `count` only: answers how many records match, as `total`, with no entries. Cannot be combined with `_include`, `_revinclude`, `_count` or `page`. */
2021
+ _summary?: "count";
2022
+ /**
2023
+ * @description Results are paged. `_count` sets the page size (1 to 100); a larger value is refused rather than quietly reduced. Follow `link` with relation `next` to continue. The cursor it carries is opaque and must not be constructed or modified.
2024
+ * @example 2
2025
+ */
2026
+ _count?: number;
2027
+ /** @description Continuation cursor. Opaque: follow the `next` link from a previous response, and never construct or modify it. Cursors expire. */
2028
+ page?: string;
2029
+ };
2030
+ header?: {
2031
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
2032
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
2033
+ };
2034
+ path?: never;
2035
+ cookie?: never;
2036
+ };
2037
+ requestBody?: never;
2038
+ responses: {
2039
+ /** @description A FHIR `Bundle` with `type: searchset`. `total` is present when the directory sends one. */
2040
+ 200: {
2041
+ headers: {
2042
+ "X-Request-Id": components["headers"]["XRequestId"];
2043
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2044
+ [name: string]: unknown;
2045
+ };
2046
+ content: {
2047
+ "application/fhir+json": components["schemas"]["Bundle"];
2048
+ };
2049
+ };
2050
+ /** @description The request named a parameter, identifier system or value this service does not serve. Every unsupported parameter is refused by name — none is silently ignored — so a search that returns results applied every filter you sent. */
2051
+ 400: {
2052
+ headers: {
2053
+ "X-Request-Id": components["headers"]["XRequestId"];
2054
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2055
+ [name: string]: unknown;
2056
+ };
2057
+ content: {
2058
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2059
+ };
2060
+ };
2061
+ 401: components["responses"]["FhirUnauthorized"];
2062
+ /** @description No such resource, or no such interaction on this base. */
2063
+ 404: {
2064
+ headers: {
2065
+ "X-Request-Id": components["headers"]["XRequestId"];
2066
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2067
+ [name: string]: unknown;
2068
+ };
2069
+ content: {
2070
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2071
+ };
2072
+ };
2073
+ 406: components["responses"]["FhirNotAcceptable"];
2074
+ 429: components["responses"]["FhirTooManyRequests"];
2075
+ 500: components["responses"]["FhirServerError"];
2076
+ /** @description The directory could not be reached, answered in a shape that cannot be served, or answered with more than is served at once: a `_revinclude` past the directory's 100 records on a page, or an answer over 8 MiB. No answer is given: this is never reported as an empty result, which would read as 'no such provider'. */
2077
+ 502: {
2078
+ headers: {
2079
+ "X-Request-Id": components["headers"]["XRequestId"];
2080
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2081
+ [name: string]: unknown;
2082
+ };
2083
+ content: {
2084
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2085
+ };
2086
+ };
2087
+ /** @description The directory is rate limiting requests. Send the request again after `Retry-After`. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
2088
+ 503: {
2089
+ headers: {
2090
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
2091
+ "Retry-After"?: number;
2092
+ "X-Request-Id": components["headers"]["XRequestId"];
2093
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2094
+ [name: string]: unknown;
2095
+ };
2096
+ content: {
2097
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2098
+ };
2099
+ };
2100
+ /** @description The directory did not respond in time. */
2101
+ 504: {
2102
+ headers: {
2103
+ "X-Request-Id": components["headers"]["XRequestId"];
2104
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2105
+ [name: string]: unknown;
2106
+ };
2107
+ content: {
2108
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2109
+ };
2110
+ };
2111
+ };
2112
+ };
2113
+ readPractitionerRole: {
2114
+ parameters: {
2115
+ query?: never;
2116
+ header?: {
2117
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
2118
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
2119
+ };
2120
+ path: {
2121
+ /**
2122
+ * @description The resource id, as returned by a search on this service. Ids are opaque: they are not constructed from an NPI or any other identifier.
2123
+ * @example PractitionerRole-179421b5-5919-4f54-84c9-a4473b68f74c
2124
+ */
2125
+ id: string;
2126
+ };
2127
+ cookie?: never;
2128
+ };
2129
+ requestBody?: never;
2130
+ responses: {
2131
+ /** @description The PractitionerRole, as the directory publishes it. */
2132
+ 200: {
2133
+ headers: {
2134
+ "X-Request-Id": components["headers"]["XRequestId"];
2135
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2136
+ [name: string]: unknown;
2137
+ };
2138
+ content: {
2139
+ "application/fhir+json": components["schemas"]["PractitionerRole"];
2140
+ };
2141
+ };
2142
+ /** @description The id is not a valid FHIR id, or a query parameter was sent: a read takes none. Ids come from search results; they are not constructed from an NPI or any other identifier. */
2143
+ 400: {
2144
+ headers: {
2145
+ "X-Request-Id": components["headers"]["XRequestId"];
2146
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2147
+ [name: string]: unknown;
2148
+ };
2149
+ content: {
2150
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2151
+ };
2152
+ };
2153
+ 401: components["responses"]["FhirUnauthorized"];
2154
+ /** @description No such resource, or no such interaction on this base. */
2155
+ 404: {
2156
+ headers: {
2157
+ "X-Request-Id": components["headers"]["XRequestId"];
2158
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2159
+ [name: string]: unknown;
2160
+ };
2161
+ content: {
2162
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2163
+ };
2164
+ };
2165
+ 406: components["responses"]["FhirNotAcceptable"];
2166
+ 429: components["responses"]["FhirTooManyRequests"];
2167
+ 500: components["responses"]["FhirServerError"];
2168
+ /** @description The directory could not be reached, answered in a shape that cannot be served, or answered with more than is served at once: a `_revinclude` past the directory's 100 records on a page, or an answer over 8 MiB. No answer is given: this is never reported as an empty result, which would read as 'no such provider'. */
2169
+ 502: {
2170
+ headers: {
2171
+ "X-Request-Id": components["headers"]["XRequestId"];
2172
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2173
+ [name: string]: unknown;
2174
+ };
2175
+ content: {
2176
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2177
+ };
2178
+ };
2179
+ /** @description The directory is rate limiting requests. Send the request again after `Retry-After`. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
2180
+ 503: {
2181
+ headers: {
2182
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
2183
+ "Retry-After"?: number;
2184
+ "X-Request-Id": components["headers"]["XRequestId"];
2185
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2186
+ [name: string]: unknown;
2187
+ };
2188
+ content: {
2189
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2190
+ };
2191
+ };
2192
+ /** @description The directory did not respond in time. */
2193
+ 504: {
2194
+ headers: {
2195
+ "X-Request-Id": components["headers"]["XRequestId"];
2196
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2197
+ [name: string]: unknown;
2198
+ };
2199
+ content: {
2200
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2201
+ };
2202
+ };
2203
+ };
2204
+ };
2205
+ searchOrganization: {
2206
+ parameters: {
2207
+ query?: {
2208
+ /** @description Matches the organization's name. */
2209
+ name?: string;
2210
+ /** @description An organization's NPI, as `{system}|{npi}` or a bare 10-digit value, under the same systems `Practitioner` accepts. An NPI search can return more than the practice that holds the NPI: a parent organization that lists it among several NPIs is a match too, because it carries the NPI as an NPI. */
2211
+ identifier?: string;
2212
+ /** @description The organizations that are part of one organization. Give a Organization id, `Organization/{id}`, or the `fullUrl` this service returned. An address on another server is refused. */
2213
+ partof?: string;
2214
+ /**
2215
+ * @description An organization type from `http://terminology.hl7.org/CodeSystem/organization-type`, bare or with that system: `prov` for healthcare providers, `pay` for payers, `ntwk` for insurance networks. `ntwk` is also accepted under Plan-Net's `http://hl7.org/fhir/us/davinci-pdex-plan-net/CodeSystem/OrgTypeCS`. `type=ntwk` and `type=pay` may stand alone, to list every network or every payer; any other type narrows a search. The directory records networks by the text of their type rather than a code; this service searches that text and confirms each answer is a network, and answers 502 rather than serve one that is not.
2216
+ * @example ntwk
2217
+ */
2218
+ type?: string;
2219
+ /** @description `true` or `false`. Narrows a search; cannot be used on its own. */
2220
+ active?: "true" | "false";
2221
+ /** @description Narrows a search by city; cannot be used on its own. Matches any of the organization's addresses, so a result can still list addresses in another city. */
2222
+ "address-city"?: string;
2223
+ /** @description Narrows a search by state; cannot be used on its own. Matches any of the organization's addresses, so a result can still list addresses in another state. */
2224
+ "address-state"?: string;
2225
+ /** @description Narrows a search by postal code; cannot be used on its own. Matches any of the organization's addresses, so a result can still list addresses in another postal code. */
2226
+ "address-postalcode"?: string;
2227
+ /** @description `Organization:partof` brings the organization each match is part of. Repeat the parameter to include several. Included entries do not count toward `_count`. */
2228
+ _include?: "Organization:partof"[];
2229
+ /** @description Bring the records that point at each match: `PractitionerRole:organization`, `OrganizationAffiliation:primary-organization`, `OrganizationAffiliation:participating-organization`, `Location:organization`, `Endpoint:organization` or `Organization:partof`. Repeat the parameter to include several. Included entries do not count toward `_count`. The directory returns at most 100 included records per page; a page with more is refused with a 502 rather than served short. */
2230
+ _revinclude?: ("PractitionerRole:organization" | "OrganizationAffiliation:primary-organization" | "OrganizationAffiliation:participating-organization" | "Location:organization" | "Endpoint:organization" | "Organization:partof")[];
2231
+ /** @description A Organization id. Searching by id rather than reading it lets one request also bring the records an `_include` or `_revinclude` names. */
2232
+ _id?: string;
2233
+ /** @description `count` only: answers how many records match, as `total`, with no entries. Cannot be combined with `_include`, `_revinclude`, `_count` or `page`. */
2234
+ _summary?: "count";
2235
+ /**
2236
+ * @description Results are paged. `_count` sets the page size (1 to 100); a larger value is refused rather than quietly reduced. Follow `link` with relation `next` to continue. The cursor it carries is opaque and must not be constructed or modified.
2237
+ * @example 2
2238
+ */
2239
+ _count?: number;
2240
+ /** @description Continuation cursor. Opaque: follow the `next` link from a previous response, and never construct or modify it. Cursors expire. */
2241
+ page?: string;
2242
+ };
2243
+ header?: {
2244
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
2245
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
2246
+ };
2247
+ path?: never;
2248
+ cookie?: never;
2249
+ };
2250
+ requestBody?: never;
2251
+ responses: {
2252
+ /** @description A FHIR `Bundle` with `type: searchset`. `total` is present when the directory sends one. */
2253
+ 200: {
2254
+ headers: {
2255
+ "X-Request-Id": components["headers"]["XRequestId"];
2256
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2257
+ [name: string]: unknown;
2258
+ };
2259
+ content: {
2260
+ "application/fhir+json": components["schemas"]["Bundle"];
2261
+ };
2262
+ };
2263
+ /** @description The request named a parameter, identifier system or value this service does not serve. Every unsupported parameter is refused by name — none is silently ignored — so a search that returns results applied every filter you sent. */
2264
+ 400: {
2265
+ headers: {
2266
+ "X-Request-Id": components["headers"]["XRequestId"];
2267
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2268
+ [name: string]: unknown;
2269
+ };
2270
+ content: {
2271
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2272
+ };
2273
+ };
2274
+ 401: components["responses"]["FhirUnauthorized"];
2275
+ /** @description No such resource, or no such interaction on this base. */
2276
+ 404: {
2277
+ headers: {
2278
+ "X-Request-Id": components["headers"]["XRequestId"];
2279
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2280
+ [name: string]: unknown;
2281
+ };
2282
+ content: {
2283
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2284
+ };
2285
+ };
2286
+ 406: components["responses"]["FhirNotAcceptable"];
2287
+ 429: components["responses"]["FhirTooManyRequests"];
2288
+ 500: components["responses"]["FhirServerError"];
2289
+ /** @description The directory could not be reached, answered in a shape that cannot be served, or answered with more than is served at once: a `_revinclude` past the directory's 100 records on a page, or an answer over 8 MiB. No answer is given: this is never reported as an empty result, which would read as 'no such provider'. */
2290
+ 502: {
2291
+ headers: {
2292
+ "X-Request-Id": components["headers"]["XRequestId"];
2293
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2294
+ [name: string]: unknown;
2295
+ };
2296
+ content: {
2297
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2298
+ };
2299
+ };
2300
+ /** @description The directory is rate limiting requests. Send the request again after `Retry-After`. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
2301
+ 503: {
2302
+ headers: {
2303
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
2304
+ "Retry-After"?: number;
2305
+ "X-Request-Id": components["headers"]["XRequestId"];
2306
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2307
+ [name: string]: unknown;
2308
+ };
2309
+ content: {
2310
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2311
+ };
2312
+ };
2313
+ /** @description The directory did not respond in time. */
2314
+ 504: {
2315
+ headers: {
2316
+ "X-Request-Id": components["headers"]["XRequestId"];
2317
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2318
+ [name: string]: unknown;
2319
+ };
2320
+ content: {
2321
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2322
+ };
2323
+ };
2324
+ };
2325
+ };
2326
+ readOrganization: {
2327
+ parameters: {
2328
+ query?: never;
2329
+ header?: {
2330
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
2331
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
2332
+ };
2333
+ path: {
2334
+ /**
2335
+ * @description The resource id, as returned by a search on this service. Ids are opaque: they are not constructed from an NPI or any other identifier.
2336
+ * @example Organization-ea579d05-454e-4359-8751-900c940a599a
2337
+ */
2338
+ id: string;
2339
+ };
2340
+ cookie?: never;
2341
+ };
2342
+ requestBody?: never;
2343
+ responses: {
2344
+ /** @description The Organization, as the directory publishes it. */
2345
+ 200: {
2346
+ headers: {
2347
+ "X-Request-Id": components["headers"]["XRequestId"];
2348
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2349
+ [name: string]: unknown;
2350
+ };
2351
+ content: {
2352
+ "application/fhir+json": components["schemas"]["Organization"];
2353
+ };
2354
+ };
2355
+ /** @description The id is not a valid FHIR id, or a query parameter was sent: a read takes none. Ids come from search results; they are not constructed from an NPI or any other identifier. */
2356
+ 400: {
2357
+ headers: {
2358
+ "X-Request-Id": components["headers"]["XRequestId"];
2359
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2360
+ [name: string]: unknown;
2361
+ };
2362
+ content: {
2363
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2364
+ };
2365
+ };
2366
+ 401: components["responses"]["FhirUnauthorized"];
2367
+ /** @description No such resource, or no such interaction on this base. */
2368
+ 404: {
2369
+ headers: {
2370
+ "X-Request-Id": components["headers"]["XRequestId"];
2371
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2372
+ [name: string]: unknown;
2373
+ };
2374
+ content: {
2375
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2376
+ };
2377
+ };
2378
+ 406: components["responses"]["FhirNotAcceptable"];
2379
+ 429: components["responses"]["FhirTooManyRequests"];
2380
+ 500: components["responses"]["FhirServerError"];
2381
+ /** @description The directory could not be reached, answered in a shape that cannot be served, or answered with more than is served at once: a `_revinclude` past the directory's 100 records on a page, or an answer over 8 MiB. No answer is given: this is never reported as an empty result, which would read as 'no such provider'. */
2382
+ 502: {
2383
+ headers: {
2384
+ "X-Request-Id": components["headers"]["XRequestId"];
2385
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2386
+ [name: string]: unknown;
2387
+ };
2388
+ content: {
2389
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2390
+ };
2391
+ };
2392
+ /** @description The directory is rate limiting requests. Send the request again after `Retry-After`. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
2393
+ 503: {
2394
+ headers: {
2395
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
2396
+ "Retry-After"?: number;
2397
+ "X-Request-Id": components["headers"]["XRequestId"];
2398
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2399
+ [name: string]: unknown;
2400
+ };
2401
+ content: {
2402
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2403
+ };
2404
+ };
2405
+ /** @description The directory did not respond in time. */
2406
+ 504: {
2407
+ headers: {
2408
+ "X-Request-Id": components["headers"]["XRequestId"];
2409
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2410
+ [name: string]: unknown;
2411
+ };
2412
+ content: {
2413
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2414
+ };
2415
+ };
2416
+ };
2417
+ };
2418
+ searchOrganizationAffiliation: {
2419
+ parameters: {
2420
+ query?: {
2421
+ /**
2422
+ * @description The affiliations the directory lists in one insurance network. An organization the network's records do not list is not shown to be out of network: the directory's network data is sparse. Give a Organization id, `Organization/{id}`, or the `fullUrl` this service returned. An address on another server is refused.
2423
+ * @example Organization-ea579d05-454e-4359-8751-900c940a599a
2424
+ */
2425
+ network?: string;
2426
+ /** @description The affiliations whose primary organization is this one. Give a Organization id, `Organization/{id}`, or the `fullUrl` this service returned. An address on another server is refused. */
2427
+ "primary-organization"?: string;
2428
+ /** @description The affiliations one organization participates in. Give a Organization id, `Organization/{id}`, or the `fullUrl` this service returned. An address on another server is refused. */
2429
+ "participating-organization"?: string;
2430
+ /** @description `true` or `false`. Narrows a search; cannot be used on its own. */
2431
+ active?: "true" | "false";
2432
+ /** @description Bring the organizations an affiliation names: `OrganizationAffiliation:participating-organization`, `OrganizationAffiliation:primary-organization` or `OrganizationAffiliation:network`. Repeat the parameter to include several. Included entries do not count toward `_count`. */
2433
+ _include?: ("OrganizationAffiliation:participating-organization" | "OrganizationAffiliation:primary-organization" | "OrganizationAffiliation:network")[];
2434
+ /** @description A OrganizationAffiliation id. Searching by id rather than reading it lets one request also bring the records an `_include` or `_revinclude` names. */
2435
+ _id?: string;
2436
+ /** @description `count` only: answers how many records match, as `total`, with no entries. Cannot be combined with `_include`, `_revinclude`, `_count` or `page`. */
2437
+ _summary?: "count";
2438
+ /**
2439
+ * @description Results are paged. `_count` sets the page size (1 to 100); a larger value is refused rather than quietly reduced. Follow `link` with relation `next` to continue. The cursor it carries is opaque and must not be constructed or modified.
2440
+ * @example 2
2441
+ */
2442
+ _count?: number;
2443
+ /** @description Continuation cursor. Opaque: follow the `next` link from a previous response, and never construct or modify it. Cursors expire. */
2444
+ page?: string;
2445
+ };
2446
+ header?: {
2447
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
2448
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
2449
+ };
2450
+ path?: never;
2451
+ cookie?: never;
2452
+ };
2453
+ requestBody?: never;
2454
+ responses: {
2455
+ /** @description A FHIR `Bundle` with `type: searchset`. `total` is present when the directory sends one. */
2456
+ 200: {
2457
+ headers: {
2458
+ "X-Request-Id": components["headers"]["XRequestId"];
2459
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2460
+ [name: string]: unknown;
2461
+ };
2462
+ content: {
2463
+ "application/fhir+json": components["schemas"]["Bundle"];
2464
+ };
2465
+ };
2466
+ /** @description The request named a parameter, identifier system or value this service does not serve. Every unsupported parameter is refused by name — none is silently ignored — so a search that returns results applied every filter you sent. */
2467
+ 400: {
2468
+ headers: {
2469
+ "X-Request-Id": components["headers"]["XRequestId"];
2470
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2471
+ [name: string]: unknown;
2472
+ };
2473
+ content: {
2474
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2475
+ };
2476
+ };
2477
+ 401: components["responses"]["FhirUnauthorized"];
2478
+ /** @description No such resource, or no such interaction on this base. */
2479
+ 404: {
2480
+ headers: {
2481
+ "X-Request-Id": components["headers"]["XRequestId"];
2482
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2483
+ [name: string]: unknown;
2484
+ };
2485
+ content: {
2486
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2487
+ };
2488
+ };
2489
+ 406: components["responses"]["FhirNotAcceptable"];
2490
+ 429: components["responses"]["FhirTooManyRequests"];
2491
+ 500: components["responses"]["FhirServerError"];
2492
+ /** @description The directory could not be reached, answered in a shape that cannot be served, or answered with more than is served at once: a `_revinclude` past the directory's 100 records on a page, or an answer over 8 MiB. No answer is given: this is never reported as an empty result, which would read as 'no such provider'. */
2493
+ 502: {
2494
+ headers: {
2495
+ "X-Request-Id": components["headers"]["XRequestId"];
2496
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2497
+ [name: string]: unknown;
2498
+ };
2499
+ content: {
2500
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2501
+ };
2502
+ };
2503
+ /** @description The directory is rate limiting requests. Send the request again after `Retry-After`. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
2504
+ 503: {
2505
+ headers: {
2506
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
2507
+ "Retry-After"?: number;
2508
+ "X-Request-Id": components["headers"]["XRequestId"];
2509
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2510
+ [name: string]: unknown;
2511
+ };
2512
+ content: {
2513
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2514
+ };
2515
+ };
2516
+ /** @description The directory did not respond in time. */
2517
+ 504: {
2518
+ headers: {
2519
+ "X-Request-Id": components["headers"]["XRequestId"];
2520
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2521
+ [name: string]: unknown;
2522
+ };
2523
+ content: {
2524
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2525
+ };
2526
+ };
2527
+ };
2528
+ };
2529
+ readOrganizationAffiliation: {
2530
+ parameters: {
2531
+ query?: never;
2532
+ header?: {
2533
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
2534
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
2535
+ };
2536
+ path: {
2537
+ /**
2538
+ * @description The resource id, as returned by a search on this service. Ids are opaque: they are not constructed from an NPI or any other identifier.
2539
+ * @example OrganizationAffiliation-000cc9b9-738c-43cd-b923-03ac9ab4714d
2540
+ */
2541
+ id: string;
2542
+ };
2543
+ cookie?: never;
2544
+ };
2545
+ requestBody?: never;
2546
+ responses: {
2547
+ /** @description The OrganizationAffiliation, as the directory publishes it. */
2548
+ 200: {
2549
+ headers: {
2550
+ "X-Request-Id": components["headers"]["XRequestId"];
2551
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2552
+ [name: string]: unknown;
2553
+ };
2554
+ content: {
2555
+ "application/fhir+json": components["schemas"]["OrganizationAffiliation"];
2556
+ };
2557
+ };
2558
+ /** @description The id is not a valid FHIR id, or a query parameter was sent: a read takes none. Ids come from search results; they are not constructed from an NPI or any other identifier. */
2559
+ 400: {
2560
+ headers: {
2561
+ "X-Request-Id": components["headers"]["XRequestId"];
2562
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2563
+ [name: string]: unknown;
2564
+ };
2565
+ content: {
2566
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2567
+ };
2568
+ };
2569
+ 401: components["responses"]["FhirUnauthorized"];
2570
+ /** @description No such resource, or no such interaction on this base. */
2571
+ 404: {
2572
+ headers: {
2573
+ "X-Request-Id": components["headers"]["XRequestId"];
2574
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2575
+ [name: string]: unknown;
2576
+ };
2577
+ content: {
2578
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2579
+ };
2580
+ };
2581
+ 406: components["responses"]["FhirNotAcceptable"];
2582
+ 429: components["responses"]["FhirTooManyRequests"];
2583
+ 500: components["responses"]["FhirServerError"];
2584
+ /** @description The directory could not be reached, answered in a shape that cannot be served, or answered with more than is served at once: a `_revinclude` past the directory's 100 records on a page, or an answer over 8 MiB. No answer is given: this is never reported as an empty result, which would read as 'no such provider'. */
2585
+ 502: {
2586
+ headers: {
2587
+ "X-Request-Id": components["headers"]["XRequestId"];
2588
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2589
+ [name: string]: unknown;
2590
+ };
2591
+ content: {
2592
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2593
+ };
2594
+ };
2595
+ /** @description The directory is rate limiting requests. Send the request again after `Retry-After`. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
2596
+ 503: {
2597
+ headers: {
2598
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
2599
+ "Retry-After"?: number;
2600
+ "X-Request-Id": components["headers"]["XRequestId"];
2601
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2602
+ [name: string]: unknown;
2603
+ };
2604
+ content: {
2605
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2606
+ };
2607
+ };
2608
+ /** @description The directory did not respond in time. */
2609
+ 504: {
2610
+ headers: {
2611
+ "X-Request-Id": components["headers"]["XRequestId"];
2612
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2613
+ [name: string]: unknown;
2614
+ };
2615
+ content: {
2616
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2617
+ };
2618
+ };
2619
+ };
2620
+ };
2621
+ searchHealthcareService: {
2622
+ parameters: {
2623
+ query?: {
2624
+ /**
2625
+ * @description The services offered at one location. Give a Location id, `Location/{id}`, or the `fullUrl` this service returned. An address on another server is refused.
2626
+ * @example Location-ba334cb2-a0f9-4147-ab31-1c5af4ab9a4d
2627
+ */
2628
+ location?: string;
2629
+ /** @description The services the directory lists in one insurance network. Cannot be used on its own: send it beside `location`. A search that breaks this rule is refused before the directory is asked. Give a Organization id, `Organization/{id}`, or the `fullUrl` this service returned. An address on another server is refused. */
2630
+ network?: string;
2631
+ /** @description `true` or `false`. Narrows a search; cannot be used on its own. */
2632
+ active?: "true" | "false";
2633
+ /** @description A HealthcareService id. Searching by id rather than reading it lets one request also bring the records an `_include` or `_revinclude` names. */
2634
+ _id?: string;
2635
+ /** @description `count` only: answers how many records match, as `total`, with no entries. Cannot be combined with `_include`, `_revinclude`, `_count` or `page`. */
2636
+ _summary?: "count";
2637
+ /**
2638
+ * @description Results are paged. `_count` sets the page size (1 to 100); a larger value is refused rather than quietly reduced. Follow `link` with relation `next` to continue. The cursor it carries is opaque and must not be constructed or modified.
2639
+ * @example 2
2640
+ */
2641
+ _count?: number;
2642
+ /** @description Continuation cursor. Opaque: follow the `next` link from a previous response, and never construct or modify it. Cursors expire. */
2643
+ page?: string;
2644
+ };
2645
+ header?: {
2646
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
2647
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
2648
+ };
2649
+ path?: never;
2650
+ cookie?: never;
2651
+ };
2652
+ requestBody?: never;
2653
+ responses: {
2654
+ /** @description A FHIR `Bundle` with `type: searchset`. `total` is present when the directory sends one. */
2655
+ 200: {
2656
+ headers: {
2657
+ "X-Request-Id": components["headers"]["XRequestId"];
2658
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2659
+ [name: string]: unknown;
2660
+ };
2661
+ content: {
2662
+ "application/fhir+json": components["schemas"]["Bundle"];
2663
+ };
2664
+ };
2665
+ /** @description The request named a parameter, identifier system or value this service does not serve. Every unsupported parameter is refused by name — none is silently ignored — so a search that returns results applied every filter you sent. */
2666
+ 400: {
2667
+ headers: {
2668
+ "X-Request-Id": components["headers"]["XRequestId"];
2669
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2670
+ [name: string]: unknown;
2671
+ };
2672
+ content: {
2673
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2674
+ };
2675
+ };
2676
+ 401: components["responses"]["FhirUnauthorized"];
2677
+ /** @description No such resource, or no such interaction on this base. */
2678
+ 404: {
2679
+ headers: {
2680
+ "X-Request-Id": components["headers"]["XRequestId"];
2681
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2682
+ [name: string]: unknown;
2683
+ };
2684
+ content: {
2685
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2686
+ };
2687
+ };
2688
+ 406: components["responses"]["FhirNotAcceptable"];
2689
+ 429: components["responses"]["FhirTooManyRequests"];
2690
+ 500: components["responses"]["FhirServerError"];
2691
+ /** @description The directory could not be reached, answered in a shape that cannot be served, or answered with more than is served at once: a `_revinclude` past the directory's 100 records on a page, or an answer over 8 MiB. No answer is given: this is never reported as an empty result, which would read as 'no such provider'. */
2692
+ 502: {
2693
+ headers: {
2694
+ "X-Request-Id": components["headers"]["XRequestId"];
2695
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2696
+ [name: string]: unknown;
2697
+ };
2698
+ content: {
2699
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2700
+ };
2701
+ };
2702
+ /** @description The directory is rate limiting requests. Send the request again after `Retry-After`. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
2703
+ 503: {
2704
+ headers: {
2705
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
2706
+ "Retry-After"?: number;
2707
+ "X-Request-Id": components["headers"]["XRequestId"];
2708
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2709
+ [name: string]: unknown;
2710
+ };
2711
+ content: {
2712
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2713
+ };
2714
+ };
2715
+ /** @description The directory did not respond in time. */
2716
+ 504: {
2717
+ headers: {
2718
+ "X-Request-Id": components["headers"]["XRequestId"];
2719
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2720
+ [name: string]: unknown;
2721
+ };
2722
+ content: {
2723
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2724
+ };
2725
+ };
2726
+ };
2727
+ };
2728
+ readHealthcareService: {
2729
+ parameters: {
2730
+ query?: never;
2731
+ header?: {
2732
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
2733
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
2734
+ };
2735
+ path: {
2736
+ /**
2737
+ * @description The resource id, as returned by a search on this service. Ids are opaque: they are not constructed from an NPI or any other identifier.
2738
+ * @example HealthcareService-0009bcae-631e-45c0-9d3c-5691acb4a05d
2739
+ */
2740
+ id: string;
2741
+ };
2742
+ cookie?: never;
2743
+ };
2744
+ requestBody?: never;
2745
+ responses: {
2746
+ /** @description The HealthcareService, as the directory publishes it. */
2747
+ 200: {
2748
+ headers: {
2749
+ "X-Request-Id": components["headers"]["XRequestId"];
2750
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2751
+ [name: string]: unknown;
2752
+ };
2753
+ content: {
2754
+ "application/fhir+json": components["schemas"]["HealthcareService"];
2755
+ };
2756
+ };
2757
+ /** @description The id is not a valid FHIR id, or a query parameter was sent: a read takes none. Ids come from search results; they are not constructed from an NPI or any other identifier. */
2758
+ 400: {
2759
+ headers: {
2760
+ "X-Request-Id": components["headers"]["XRequestId"];
2761
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2762
+ [name: string]: unknown;
2763
+ };
2764
+ content: {
2765
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2766
+ };
2767
+ };
2768
+ 401: components["responses"]["FhirUnauthorized"];
2769
+ /** @description No such resource, or no such interaction on this base. */
2770
+ 404: {
2771
+ headers: {
2772
+ "X-Request-Id": components["headers"]["XRequestId"];
2773
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2774
+ [name: string]: unknown;
2775
+ };
2776
+ content: {
2777
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2778
+ };
2779
+ };
2780
+ 406: components["responses"]["FhirNotAcceptable"];
2781
+ 429: components["responses"]["FhirTooManyRequests"];
2782
+ 500: components["responses"]["FhirServerError"];
2783
+ /** @description The directory could not be reached, answered in a shape that cannot be served, or answered with more than is served at once: a `_revinclude` past the directory's 100 records on a page, or an answer over 8 MiB. No answer is given: this is never reported as an empty result, which would read as 'no such provider'. */
2784
+ 502: {
2785
+ headers: {
2786
+ "X-Request-Id": components["headers"]["XRequestId"];
2787
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2788
+ [name: string]: unknown;
2789
+ };
2790
+ content: {
2791
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2792
+ };
2793
+ };
2794
+ /** @description The directory is rate limiting requests. Send the request again after `Retry-After`. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
2795
+ 503: {
2796
+ headers: {
2797
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
2798
+ "Retry-After"?: number;
2799
+ "X-Request-Id": components["headers"]["XRequestId"];
2800
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2801
+ [name: string]: unknown;
2802
+ };
2803
+ content: {
2804
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2805
+ };
2806
+ };
2807
+ /** @description The directory did not respond in time. */
2808
+ 504: {
2809
+ headers: {
2810
+ "X-Request-Id": components["headers"]["XRequestId"];
2811
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2812
+ [name: string]: unknown;
2813
+ };
2814
+ content: {
2815
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2816
+ };
2817
+ };
2818
+ };
2819
+ };
2820
+ searchLocation: {
2821
+ parameters: {
2822
+ query?: {
2823
+ /**
2824
+ * @description The locations one organization manages. Give a Organization id, `Organization/{id}`, or the `fullUrl` this service returned. An address on another server is refused.
2825
+ * @example Organization-1093090342
2826
+ */
2827
+ organization?: string;
2828
+ /** @description Matches the location's name. */
2829
+ name?: string;
2830
+ /** @description Narrows a search by city; cannot be used on its own. */
2831
+ "address-city"?: string;
2832
+ /** @description Narrows a search by state; cannot be used on its own. */
2833
+ "address-state"?: string;
2834
+ /** @description Narrows a search by postal code; cannot be used on its own. */
2835
+ "address-postalcode"?: string;
2836
+ /** @description `active`, `suspended` or `inactive`. Narrows a search; cannot be used on its own. */
2837
+ status?: string;
2838
+ /** @description `Location:organization` brings the organization that manages each location. Repeat the parameter to include several. Included entries do not count toward `_count`. */
2839
+ _include?: "Location:organization"[];
2840
+ /** @description `PractitionerRole:location` brings the roles held at each location. Repeat the parameter to include several. Included entries do not count toward `_count`. The directory returns at most 100 included records per page; a page with more is refused with a 502 rather than served short. */
2841
+ _revinclude?: "PractitionerRole:location"[];
2842
+ /** @description A Location id. Searching by id rather than reading it lets one request also bring the records an `_include` or `_revinclude` names. */
2843
+ _id?: string;
2844
+ /** @description `count` only: answers how many records match, as `total`, with no entries. Cannot be combined with `_include`, `_revinclude`, `_count` or `page`. */
2845
+ _summary?: "count";
2846
+ /**
2847
+ * @description Results are paged. `_count` sets the page size (1 to 100); a larger value is refused rather than quietly reduced. Follow `link` with relation `next` to continue. The cursor it carries is opaque and must not be constructed or modified.
2848
+ * @example 2
2849
+ */
2850
+ _count?: number;
2851
+ /** @description Continuation cursor. Opaque: follow the `next` link from a previous response, and never construct or modify it. Cursors expire. */
2852
+ page?: string;
2853
+ };
2854
+ header?: {
2855
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
2856
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
2857
+ };
2858
+ path?: never;
2859
+ cookie?: never;
2860
+ };
2861
+ requestBody?: never;
2862
+ responses: {
2863
+ /** @description A FHIR `Bundle` with `type: searchset`. `total` is present when the directory sends one. */
2864
+ 200: {
2865
+ headers: {
2866
+ "X-Request-Id": components["headers"]["XRequestId"];
2867
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2868
+ [name: string]: unknown;
2869
+ };
2870
+ content: {
2871
+ "application/fhir+json": components["schemas"]["Bundle"];
2872
+ };
2873
+ };
2874
+ /** @description The request named a parameter, identifier system or value this service does not serve. Every unsupported parameter is refused by name — none is silently ignored — so a search that returns results applied every filter you sent. */
2875
+ 400: {
2876
+ headers: {
2877
+ "X-Request-Id": components["headers"]["XRequestId"];
2878
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2879
+ [name: string]: unknown;
2880
+ };
2881
+ content: {
2882
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2883
+ };
2884
+ };
2885
+ 401: components["responses"]["FhirUnauthorized"];
2886
+ /** @description No such resource, or no such interaction on this base. */
2887
+ 404: {
2888
+ headers: {
2889
+ "X-Request-Id": components["headers"]["XRequestId"];
2890
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2891
+ [name: string]: unknown;
2892
+ };
2893
+ content: {
2894
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2895
+ };
2896
+ };
2897
+ 406: components["responses"]["FhirNotAcceptable"];
2898
+ 429: components["responses"]["FhirTooManyRequests"];
2899
+ 500: components["responses"]["FhirServerError"];
2900
+ /** @description The directory could not be reached, answered in a shape that cannot be served, or answered with more than is served at once: a `_revinclude` past the directory's 100 records on a page, or an answer over 8 MiB. No answer is given: this is never reported as an empty result, which would read as 'no such provider'. */
2901
+ 502: {
2902
+ headers: {
2903
+ "X-Request-Id": components["headers"]["XRequestId"];
2904
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2905
+ [name: string]: unknown;
2906
+ };
2907
+ content: {
2908
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2909
+ };
2910
+ };
2911
+ /** @description The directory is rate limiting requests. Send the request again after `Retry-After`. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
2912
+ 503: {
2913
+ headers: {
2914
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
2915
+ "Retry-After"?: number;
2916
+ "X-Request-Id": components["headers"]["XRequestId"];
2917
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2918
+ [name: string]: unknown;
2919
+ };
2920
+ content: {
2921
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2922
+ };
2923
+ };
2924
+ /** @description The directory did not respond in time. */
2925
+ 504: {
2926
+ headers: {
2927
+ "X-Request-Id": components["headers"]["XRequestId"];
2928
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2929
+ [name: string]: unknown;
2930
+ };
2931
+ content: {
2932
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2933
+ };
2934
+ };
2935
+ };
2936
+ };
2937
+ readLocation: {
2938
+ parameters: {
2939
+ query?: never;
2940
+ header?: {
2941
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
2942
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
2943
+ };
2944
+ path: {
2945
+ /**
2946
+ * @description The resource id, as returned by a search on this service. Ids are opaque: they are not constructed from an NPI or any other identifier.
2947
+ * @example Location-26e6731f-5e6a-48e4-aa2f-9f4c40cf402b
2948
+ */
2949
+ id: string;
2950
+ };
2951
+ cookie?: never;
2952
+ };
2953
+ requestBody?: never;
2954
+ responses: {
2955
+ /** @description The Location, as the directory publishes it. */
2956
+ 200: {
2957
+ headers: {
2958
+ "X-Request-Id": components["headers"]["XRequestId"];
2959
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2960
+ [name: string]: unknown;
2961
+ };
2962
+ content: {
2963
+ "application/fhir+json": components["schemas"]["Location"];
2964
+ };
2965
+ };
2966
+ /** @description The id is not a valid FHIR id, or a query parameter was sent: a read takes none. Ids come from search results; they are not constructed from an NPI or any other identifier. */
2967
+ 400: {
2968
+ headers: {
2969
+ "X-Request-Id": components["headers"]["XRequestId"];
2970
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2971
+ [name: string]: unknown;
2972
+ };
2973
+ content: {
2974
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2975
+ };
2976
+ };
2977
+ 401: components["responses"]["FhirUnauthorized"];
2978
+ /** @description No such resource, or no such interaction on this base. */
2979
+ 404: {
2980
+ headers: {
2981
+ "X-Request-Id": components["headers"]["XRequestId"];
2982
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2983
+ [name: string]: unknown;
2984
+ };
2985
+ content: {
2986
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
2987
+ };
2988
+ };
2989
+ 406: components["responses"]["FhirNotAcceptable"];
2990
+ 429: components["responses"]["FhirTooManyRequests"];
2991
+ 500: components["responses"]["FhirServerError"];
2992
+ /** @description The directory could not be reached, answered in a shape that cannot be served, or answered with more than is served at once: a `_revinclude` past the directory's 100 records on a page, or an answer over 8 MiB. No answer is given: this is never reported as an empty result, which would read as 'no such provider'. */
2993
+ 502: {
2994
+ headers: {
2995
+ "X-Request-Id": components["headers"]["XRequestId"];
2996
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
2997
+ [name: string]: unknown;
2998
+ };
2999
+ content: {
3000
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3001
+ };
3002
+ };
3003
+ /** @description The directory is rate limiting requests. Send the request again after `Retry-After`. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
3004
+ 503: {
3005
+ headers: {
3006
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
3007
+ "Retry-After"?: number;
3008
+ "X-Request-Id": components["headers"]["XRequestId"];
3009
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3010
+ [name: string]: unknown;
3011
+ };
3012
+ content: {
3013
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3014
+ };
3015
+ };
3016
+ /** @description The directory did not respond in time. */
3017
+ 504: {
3018
+ headers: {
3019
+ "X-Request-Id": components["headers"]["XRequestId"];
3020
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3021
+ [name: string]: unknown;
3022
+ };
3023
+ content: {
3024
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3025
+ };
3026
+ };
3027
+ };
3028
+ };
3029
+ searchEndpoint: {
3030
+ parameters: {
3031
+ query?: {
3032
+ /**
3033
+ * @description The endpoints one organization manages. Give a Organization id, `Organization/{id}`, or the `fullUrl` this service returned. An address on another server is refused.
3034
+ * @example Organization-1326655846
3035
+ */
3036
+ organization?: string;
3037
+ /** @description A connection type from `http://terminology.hl7.org/CodeSystem/endpoint-connection-type`, bare or with that system: for example `hl7-fhir-rest` or `direct-project`. Narrows a search; cannot be used on its own. */
3038
+ "connection-type"?: string;
3039
+ /** @description `active`, `suspended`, `error`, `off`, `entered-in-error` or `test`. Narrows a search; cannot be used on its own. */
3040
+ status?: string;
3041
+ /** @description Matches the endpoint's name. Narrows a search; cannot be used on its own, because most of the directory's endpoints share one name. */
3042
+ name?: string;
3043
+ /** @description `Endpoint:organization` brings the organization that manages each endpoint. Repeat the parameter to include several. Included entries do not count toward `_count`. */
3044
+ _include?: "Endpoint:organization"[];
3045
+ /** @description A Endpoint id. Searching by id rather than reading it lets one request also bring the records an `_include` or `_revinclude` names. */
3046
+ _id?: string;
3047
+ /** @description `count` only: answers how many records match, as `total`, with no entries. Cannot be combined with `_include`, `_revinclude`, `_count` or `page`. */
3048
+ _summary?: "count";
3049
+ /**
3050
+ * @description Results are paged. `_count` sets the page size (1 to 100); a larger value is refused rather than quietly reduced. Follow `link` with relation `next` to continue. The cursor it carries is opaque and must not be constructed or modified.
3051
+ * @example 2
3052
+ */
3053
+ _count?: number;
3054
+ /** @description Continuation cursor. Opaque: follow the `next` link from a previous response, and never construct or modify it. Cursors expire. */
3055
+ page?: string;
3056
+ };
3057
+ header?: {
3058
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
3059
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
3060
+ };
3061
+ path?: never;
3062
+ cookie?: never;
3063
+ };
3064
+ requestBody?: never;
3065
+ responses: {
3066
+ /** @description A FHIR `Bundle` with `type: searchset`. `total` is present when the directory sends one. */
3067
+ 200: {
3068
+ headers: {
3069
+ "X-Request-Id": components["headers"]["XRequestId"];
3070
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3071
+ [name: string]: unknown;
3072
+ };
3073
+ content: {
3074
+ "application/fhir+json": components["schemas"]["Bundle"];
3075
+ };
3076
+ };
3077
+ /** @description The request named a parameter, identifier system or value this service does not serve. Every unsupported parameter is refused by name — none is silently ignored — so a search that returns results applied every filter you sent. */
3078
+ 400: {
3079
+ headers: {
3080
+ "X-Request-Id": components["headers"]["XRequestId"];
3081
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3082
+ [name: string]: unknown;
3083
+ };
3084
+ content: {
3085
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3086
+ };
3087
+ };
3088
+ 401: components["responses"]["FhirUnauthorized"];
3089
+ /** @description No such resource, or no such interaction on this base. */
3090
+ 404: {
3091
+ headers: {
3092
+ "X-Request-Id": components["headers"]["XRequestId"];
3093
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3094
+ [name: string]: unknown;
3095
+ };
3096
+ content: {
3097
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3098
+ };
3099
+ };
3100
+ 406: components["responses"]["FhirNotAcceptable"];
3101
+ 429: components["responses"]["FhirTooManyRequests"];
3102
+ 500: components["responses"]["FhirServerError"];
3103
+ /** @description The directory could not be reached, answered in a shape that cannot be served, or answered with more than is served at once: a `_revinclude` past the directory's 100 records on a page, or an answer over 8 MiB. No answer is given: this is never reported as an empty result, which would read as 'no such provider'. */
3104
+ 502: {
3105
+ headers: {
3106
+ "X-Request-Id": components["headers"]["XRequestId"];
3107
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3108
+ [name: string]: unknown;
3109
+ };
3110
+ content: {
3111
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3112
+ };
3113
+ };
3114
+ /** @description The directory is rate limiting requests. Send the request again after `Retry-After`. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
3115
+ 503: {
3116
+ headers: {
3117
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
3118
+ "Retry-After"?: number;
3119
+ "X-Request-Id": components["headers"]["XRequestId"];
3120
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3121
+ [name: string]: unknown;
3122
+ };
3123
+ content: {
3124
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3125
+ };
3126
+ };
3127
+ /** @description The directory did not respond in time. */
3128
+ 504: {
3129
+ headers: {
3130
+ "X-Request-Id": components["headers"]["XRequestId"];
3131
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3132
+ [name: string]: unknown;
3133
+ };
3134
+ content: {
3135
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3136
+ };
3137
+ };
3138
+ };
3139
+ };
3140
+ readEndpoint: {
3141
+ parameters: {
3142
+ query?: never;
3143
+ header?: {
3144
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
3145
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
3146
+ };
3147
+ path: {
3148
+ /**
3149
+ * @description The resource id, as returned by a search on this service. Ids are opaque: they are not constructed from an NPI or any other identifier.
3150
+ * @example Endpoint-000508b0-e3f0-4108-8d1d-a610f0675358
3151
+ */
3152
+ id: string;
3153
+ };
3154
+ cookie?: never;
3155
+ };
3156
+ requestBody?: never;
3157
+ responses: {
3158
+ /** @description The Endpoint, as the directory publishes it. */
3159
+ 200: {
3160
+ headers: {
3161
+ "X-Request-Id": components["headers"]["XRequestId"];
3162
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3163
+ [name: string]: unknown;
3164
+ };
3165
+ content: {
3166
+ "application/fhir+json": components["schemas"]["Endpoint"];
3167
+ };
3168
+ };
3169
+ /** @description The id is not a valid FHIR id, or a query parameter was sent: a read takes none. Ids come from search results; they are not constructed from an NPI or any other identifier. */
3170
+ 400: {
3171
+ headers: {
3172
+ "X-Request-Id": components["headers"]["XRequestId"];
3173
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3174
+ [name: string]: unknown;
3175
+ };
3176
+ content: {
3177
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3178
+ };
3179
+ };
3180
+ 401: components["responses"]["FhirUnauthorized"];
3181
+ /** @description No such resource, or no such interaction on this base. */
3182
+ 404: {
3183
+ headers: {
3184
+ "X-Request-Id": components["headers"]["XRequestId"];
3185
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3186
+ [name: string]: unknown;
3187
+ };
3188
+ content: {
3189
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3190
+ };
3191
+ };
3192
+ 406: components["responses"]["FhirNotAcceptable"];
3193
+ 429: components["responses"]["FhirTooManyRequests"];
3194
+ 500: components["responses"]["FhirServerError"];
3195
+ /** @description The directory could not be reached, answered in a shape that cannot be served, or answered with more than is served at once: a `_revinclude` past the directory's 100 records on a page, or an answer over 8 MiB. No answer is given: this is never reported as an empty result, which would read as 'no such provider'. */
3196
+ 502: {
3197
+ headers: {
3198
+ "X-Request-Id": components["headers"]["XRequestId"];
3199
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3200
+ [name: string]: unknown;
3201
+ };
3202
+ content: {
3203
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3204
+ };
3205
+ };
3206
+ /** @description The directory is rate limiting requests. Send the request again after `Retry-After`. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
3207
+ 503: {
3208
+ headers: {
3209
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
3210
+ "Retry-After"?: number;
3211
+ "X-Request-Id": components["headers"]["XRequestId"];
3212
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3213
+ [name: string]: unknown;
3214
+ };
3215
+ content: {
3216
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3217
+ };
3218
+ };
3219
+ /** @description The directory did not respond in time. */
3220
+ 504: {
3221
+ headers: {
3222
+ "X-Request-Id": components["headers"]["XRequestId"];
3223
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3224
+ [name: string]: unknown;
3225
+ };
3226
+ content: {
3227
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3228
+ };
3229
+ };
3230
+ };
3231
+ };
3232
+ searchQuestionnaire: {
3233
+ parameters: {
3234
+ query?: {
3235
+ /**
3236
+ * @description Exact match on the canonical URL, for example `http://loinc.org/q/44249-1`. The `{url}|{version}` form is accepted and matches that version only, and never answers a different version than the one asked for. A canonical this service holds a copy of is answered from that copy at every version; any other LOINC canonical is fetched from LOINC, where a version names a release of its catalogue. A canonical that is the address of a form under a place this service is set up to reach is fetched from that address; any other canonical matches nothing.
3237
+ * @example http://loinc.org/q/44249-1
3238
+ */
3239
+ url?: string;
3240
+ /** @description Exact match on the business version. On its own it filters the copies this service holds; with `url` it names the release to fetch. */
3241
+ version?: string;
3242
+ };
3243
+ header?: {
3244
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
3245
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
3246
+ };
3247
+ path?: never;
3248
+ cookie?: never;
3249
+ };
3250
+ requestBody?: never;
3251
+ responses: {
3252
+ /** @description A `searchset` Bundle with `total` set. Every match is in this one page. */
3253
+ 200: {
3254
+ headers: {
3255
+ "X-Request-Id": components["headers"]["XRequestId"];
3256
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3257
+ [name: string]: unknown;
3258
+ };
3259
+ content: {
3260
+ "application/fhir+json": components["schemas"]["Bundle"];
3261
+ };
3262
+ };
3263
+ /** @description A parameter this service does not serve, a repeated parameter, or a comma-separated list of values. One issue per offending parameter, naming it. */
3264
+ 400: {
3265
+ headers: {
3266
+ "X-Request-Id": components["headers"]["XRequestId"];
3267
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3268
+ [name: string]: unknown;
3269
+ };
3270
+ content: {
3271
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3272
+ };
3273
+ };
3274
+ 401: components["responses"]["FhirUnauthorized"];
3275
+ 406: components["responses"]["FhirNotAcceptable"];
3276
+ 429: components["responses"]["FhirTooManyRequests"];
3277
+ 500: components["responses"]["FhirServerError"];
3278
+ /** @description The source could not be reached, or answered with something this service will not pass on. Never returned for a questionnaire this service holds a copy of. */
3279
+ 502: {
3280
+ headers: {
3281
+ "X-Request-Id": components["headers"]["XRequestId"];
3282
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3283
+ [name: string]: unknown;
3284
+ };
3285
+ content: {
3286
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3287
+ };
3288
+ };
3289
+ /** @description The source is throttling requests (with `Retry-After`), or is not configured on this deployment. Never returned for a questionnaire this service holds a copy of. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
3290
+ 503: {
3291
+ headers: {
3292
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
3293
+ "Retry-After"?: number;
3294
+ "X-Request-Id": components["headers"]["XRequestId"];
3295
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3296
+ [name: string]: unknown;
3297
+ };
3298
+ content: {
3299
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3300
+ };
3301
+ };
3302
+ /** @description The source did not answer in time. Never returned for a questionnaire this service holds a copy of. */
3303
+ 504: {
3304
+ headers: {
3305
+ "X-Request-Id": components["headers"]["XRequestId"];
3306
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3307
+ [name: string]: unknown;
3308
+ };
3309
+ content: {
3310
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3311
+ };
3312
+ };
3313
+ };
3314
+ };
3315
+ readQuestionnaire: {
3316
+ parameters: {
3317
+ query?: never;
3318
+ header?: {
3319
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
3320
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
3321
+ };
3322
+ path: {
3323
+ /**
3324
+ * @description The questionnaire id, as listed by a search on this service.
3325
+ * @example 44249-1
3326
+ */
3327
+ id: string;
3328
+ };
3329
+ cookie?: never;
3330
+ };
3331
+ requestBody?: never;
3332
+ responses: {
3333
+ /** @description The `Questionnaire`, as its source publishes it. */
3334
+ 200: {
3335
+ headers: {
3336
+ "X-Request-Id": components["headers"]["XRequestId"];
3337
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3338
+ [name: string]: unknown;
3339
+ };
3340
+ content: {
3341
+ "application/fhir+json": components["schemas"]["Questionnaire"];
3342
+ };
3343
+ };
3344
+ /** @description The id is not a valid FHIR id, or a query parameter was sent: a read takes none. */
3345
+ 400: {
3346
+ headers: {
3347
+ "X-Request-Id": components["headers"]["XRequestId"];
3348
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3349
+ [name: string]: unknown;
3350
+ };
3351
+ content: {
3352
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3353
+ };
3354
+ };
3355
+ 401: components["responses"]["FhirUnauthorized"];
3356
+ /** @description Neither this service nor its source publishes a questionnaire with that id. */
3357
+ 404: {
3358
+ headers: {
3359
+ "X-Request-Id": components["headers"]["XRequestId"];
3360
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3361
+ [name: string]: unknown;
3362
+ };
3363
+ content: {
3364
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3365
+ };
3366
+ };
3367
+ 406: components["responses"]["FhirNotAcceptable"];
3368
+ 429: components["responses"]["FhirTooManyRequests"];
3369
+ 500: components["responses"]["FhirServerError"];
3370
+ /** @description The source could not be reached, or answered with something this service will not pass on. Never returned for a questionnaire this service holds a copy of. */
3371
+ 502: {
3372
+ headers: {
3373
+ "X-Request-Id": components["headers"]["XRequestId"];
3374
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3375
+ [name: string]: unknown;
3376
+ };
3377
+ content: {
3378
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3379
+ };
3380
+ };
3381
+ /** @description The source is throttling requests (with `Retry-After`), or is not configured on this deployment. Never returned for a questionnaire this service holds a copy of. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
3382
+ 503: {
3383
+ headers: {
3384
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
3385
+ "Retry-After"?: number;
3386
+ "X-Request-Id": components["headers"]["XRequestId"];
3387
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3388
+ [name: string]: unknown;
3389
+ };
3390
+ content: {
3391
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3392
+ };
3393
+ };
3394
+ /** @description The source did not answer in time. Never returned for a questionnaire this service holds a copy of. */
3395
+ 504: {
3396
+ headers: {
3397
+ "X-Request-Id": components["headers"]["XRequestId"];
3398
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3399
+ [name: string]: unknown;
3400
+ };
3401
+ content: {
3402
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3403
+ };
3404
+ };
3405
+ };
3406
+ };
3407
+ searchInsurancePlan: {
3408
+ parameters: {
3409
+ query?: {
3410
+ /**
3411
+ * @description A plan id, as `value` or `system|value`. A Medicare Advantage plan by CMS's plan id (`http://cms.gov/medicare/ma-plan-id`, the segment in three digits: `H2406-013-000`) or its bid_id (`https://haau3.com/fhir/NamingSystem/cms-ma-bid-id`: `H2406_013_0`). A Marketplace plan by its HIOS plan id (`https://haau3.com/fhir/NamingSystem/hios-plan-id`: `19898FL0340001-01`) or its standard component (`https://haau3.com/fhir/NamingSystem/hios-standard-component-id`: `19898FL0340001`), which finds every variant.
3412
+ * @example H2406-013-000
3413
+ */
3414
+ identifier?: string;
3415
+ /** @description The start of the plan's name, ignoring case and accents. `name:contains` matches anywhere in the name and `name:exact` the whole name exactly; give one form. */
3416
+ name?: string;
3417
+ /** @description Part of the plan's name, anywhere in it, ignoring case and accents. */
3418
+ "name:contains"?: string;
3419
+ /** @description The plan's whole name, exactly. */
3420
+ "name:exact"?: string;
3421
+ /** @description A two-letter state code: the plans sold in that state. Defined by the haau3 implementation guide (`https://haau3.com/fhir/SearchParameter/InsurancePlan-coverage-area-state`). */
3422
+ "coverage-area-state"?: string;
3423
+ /** @description A five-digit FIPS state and county code (`12086`, Miami-Dade County, Florida), bare or as `http://terminology.hl7.org/CodeSystem/FIPS64|12086`: the plans sold in that county, in whole or in part. A code that names no county is refused. Defined by the haau3 implementation guide (`https://haau3.com/fhir/SearchParameter/InsurancePlan-coverage-area-county`). */
3424
+ "coverage-area-county"?: string;
3425
+ /** @description `mediadv` for Medicare Advantage or `qhp` for the Marketplace, from `http://terminology.hl7.org/CodeSystem/insurance-product-type`. */
3426
+ type?: string;
3427
+ /** @description `individuals` for the plans a person can buy on their own, or `employer-groups` for the plans sold only to employer and union groups (Medicare Advantage) or to small employers (Marketplace SHOP plans). Narrows a search; it is not one by itself. Defined by the haau3 implementation guide (`https://haau3.com/fhir/SearchParameter/InsurancePlan-sold-to`). */
3428
+ "sold-to"?: "individuals" | "employer-groups";
3429
+ /** @description Page size. A larger value is refused rather than quietly reduced. */
3430
+ _count?: number;
3431
+ /** @description The cursor a `next` link carries. It is opaque and belongs to one search; once the plans are updated a later page answers `410`, so start the search again. */
3432
+ page?: string;
3433
+ };
3434
+ header?: {
3435
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
3436
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
3437
+ };
3438
+ path?: never;
3439
+ cookie?: never;
3440
+ };
3441
+ requestBody?: never;
3442
+ responses: {
3443
+ /** @description A `searchset` Bundle with `total` set. */
3444
+ 200: {
3445
+ headers: {
3446
+ "X-Request-Id": components["headers"]["XRequestId"];
3447
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3448
+ [name: string]: unknown;
3449
+ };
3450
+ content: {
3451
+ "application/fhir+json": components["schemas"]["Bundle"];
3452
+ };
3453
+ };
3454
+ /** @description A parameter this service does not serve, a repeated parameter, a comma-separated list of values, a value of the wrong form, a search with no criteria, or a page that is not this search's. One issue per offending parameter, naming it. */
3455
+ 400: {
3456
+ headers: {
3457
+ "X-Request-Id": components["headers"]["XRequestId"];
3458
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3459
+ [name: string]: unknown;
3460
+ };
3461
+ content: {
3462
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3463
+ };
3464
+ };
3465
+ 401: components["responses"]["FhirUnauthorized"];
3466
+ /** @description No such interaction on this base. */
3467
+ 404: {
3468
+ headers: {
3469
+ "X-Request-Id": components["headers"]["XRequestId"];
3470
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3471
+ [name: string]: unknown;
3472
+ };
3473
+ content: {
3474
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3475
+ };
3476
+ };
3477
+ 406: components["responses"]["FhirNotAcceptable"];
3478
+ /** @description The plans were updated since this search began, so its later pages no longer exist. Start the search again. */
3479
+ 410: {
3480
+ headers: {
3481
+ "X-Request-Id": components["headers"]["XRequestId"];
3482
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3483
+ [name: string]: unknown;
3484
+ };
3485
+ content: {
3486
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3487
+ };
3488
+ };
3489
+ 429: components["responses"]["FhirTooManyRequests"];
3490
+ 500: components["responses"]["FhirServerError"];
3491
+ /** @description The plan store could not be read. No answer is given: this is never reported as an empty result or a missing plan. */
3492
+ 502: {
3493
+ headers: {
3494
+ "X-Request-Id": components["headers"]["XRequestId"];
3495
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3496
+ [name: string]: unknown;
3497
+ };
3498
+ content: {
3499
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3500
+ };
3501
+ };
3502
+ /** @description No release of the plan files this request needs is being served on this deployment, or, for a county search, where a served release's plans are sold is not loaded yet. The `OperationOutcome` names the program. The service returns no answer rather than guessing one. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
3503
+ 503: {
3504
+ headers: {
3505
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
3506
+ "Retry-After"?: number;
3507
+ "X-Request-Id": components["headers"]["XRequestId"];
3508
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3509
+ [name: string]: unknown;
3510
+ };
3511
+ content: {
3512
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3513
+ };
3514
+ };
3515
+ /** @description The plan store did not respond in time. */
3516
+ 504: {
3517
+ headers: {
3518
+ "X-Request-Id": components["headers"]["XRequestId"];
3519
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3520
+ [name: string]: unknown;
3521
+ };
3522
+ content: {
3523
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3524
+ };
3525
+ };
3526
+ };
3527
+ };
3528
+ listInsurancePlanCounties: {
3529
+ parameters: {
3530
+ query: {
3531
+ /**
3532
+ * @description The two-letter USPS code of a state, the District of Columbia or a territory: `FL`.
3533
+ * @example FL
3534
+ */
3535
+ state: string;
3536
+ };
3537
+ header?: {
3538
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
3539
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
3540
+ };
3541
+ path?: never;
3542
+ cookie?: never;
3543
+ };
3544
+ requestBody?: never;
3545
+ responses: {
3546
+ /** @description A `Parameters` resource listing the state's counties, then the list's source. */
3547
+ 200: {
3548
+ headers: {
3549
+ "X-Request-Id": components["headers"]["XRequestId"];
3550
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3551
+ [name: string]: unknown;
3552
+ };
3553
+ content: {
3554
+ "application/fhir+json": components["schemas"]["Parameters"];
3555
+ };
3556
+ };
3557
+ /** @description A state that is not two letters, a missing or repeated `state`, or another parameter, named. */
3558
+ 400: {
3559
+ headers: {
3560
+ "X-Request-Id": components["headers"]["XRequestId"];
3561
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3562
+ [name: string]: unknown;
3563
+ };
3564
+ content: {
3565
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3566
+ };
3567
+ };
3568
+ 401: components["responses"]["FhirUnauthorized"];
3569
+ /** @description No state, district or territory has this code. */
3570
+ 404: {
3571
+ headers: {
3572
+ "X-Request-Id": components["headers"]["XRequestId"];
3573
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3574
+ [name: string]: unknown;
3575
+ };
3576
+ content: {
3577
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3578
+ };
3579
+ };
3580
+ 406: components["responses"]["FhirNotAcceptable"];
3581
+ 429: components["responses"]["FhirTooManyRequests"];
3582
+ 500: components["responses"]["FhirServerError"];
3583
+ 503: components["responses"]["FhirUnavailable"];
3584
+ };
3585
+ };
3586
+ readInsurancePlan: {
3587
+ parameters: {
3588
+ query?: never;
3589
+ header?: {
3590
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
3591
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
3592
+ };
3593
+ path: {
3594
+ /**
3595
+ * @description The plan's id: `H2406-013-000` or `19898FL0340001-01`.
3596
+ * @example H2406-013-000
3597
+ */
3598
+ id: string;
3599
+ };
3600
+ cookie?: never;
3601
+ };
3602
+ requestBody?: never;
3603
+ responses: {
3604
+ /** @description The `InsurancePlan`. */
3605
+ 200: {
3606
+ headers: {
3607
+ "X-Request-Id": components["headers"]["XRequestId"];
3608
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3609
+ [name: string]: unknown;
3610
+ };
3611
+ content: {
3612
+ "application/fhir+json": components["schemas"]["InsurancePlan"];
3613
+ };
3614
+ };
3615
+ /** @description The request could not be read: the id is not a valid FHIR id, or a query parameter was sent, and a read takes none. */
3616
+ 400: {
3617
+ headers: {
3618
+ "X-Request-Id": components["headers"]["XRequestId"];
3619
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3620
+ [name: string]: unknown;
3621
+ };
3622
+ content: {
3623
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3624
+ };
3625
+ };
3626
+ 401: components["responses"]["FhirUnauthorized"];
3627
+ /** @description No plan with that id is in the releases being served, or the plan is held but is not a medical plan. The `OperationOutcome` says which. */
3628
+ 404: {
3629
+ headers: {
3630
+ "X-Request-Id": components["headers"]["XRequestId"];
3631
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3632
+ [name: string]: unknown;
3633
+ };
3634
+ content: {
3635
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3636
+ };
3637
+ };
3638
+ 406: components["responses"]["FhirNotAcceptable"];
3639
+ 429: components["responses"]["FhirTooManyRequests"];
3640
+ 500: components["responses"]["FhirServerError"];
3641
+ /** @description The plan store could not be read. No answer is given: this is never reported as an empty result or a missing plan. */
3642
+ 502: {
3643
+ headers: {
3644
+ "X-Request-Id": components["headers"]["XRequestId"];
3645
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3646
+ [name: string]: unknown;
3647
+ };
3648
+ content: {
3649
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3650
+ };
3651
+ };
3652
+ /** @description No release of the plan files this request needs is being served on this deployment, and the `OperationOutcome` names the program. The service returns no answer rather than guessing one. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
3653
+ 503: {
3654
+ headers: {
3655
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
3656
+ "Retry-After"?: number;
3657
+ "X-Request-Id": components["headers"]["XRequestId"];
3658
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3659
+ [name: string]: unknown;
3660
+ };
3661
+ content: {
3662
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3663
+ };
3664
+ };
3665
+ /** @description The plan store did not respond in time. */
3666
+ 504: {
3667
+ headers: {
3668
+ "X-Request-Id": components["headers"]["XRequestId"];
3669
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3670
+ [name: string]: unknown;
3671
+ };
3672
+ content: {
3673
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3674
+ };
3675
+ };
3676
+ };
3677
+ };
3678
+ checkInsurancePlanNetwork: {
3679
+ parameters: {
3680
+ query: {
3681
+ /**
3682
+ * @description Up to 20 NPIs, ten digits each, as repeated `npi` parameters or separated by commas: `npi=1992700001&npi=1992700002` or `npi=1992700001,1992700002`. Duplicates count once.
3683
+ * @example [
3684
+ * "1518929058",
3685
+ * "1992700001"
3686
+ * ]
3687
+ */
3688
+ npi: string[];
3689
+ };
3690
+ header?: {
3691
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
3692
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
3693
+ };
3694
+ path: {
3695
+ /**
3696
+ * @description The plan's id: `H2406-013-000` or `19898FL0340001-01`.
3697
+ * @example H3359-038-000
3698
+ */
3699
+ id: string;
3700
+ };
3701
+ cookie?: never;
3702
+ };
3703
+ requestBody?: never;
3704
+ responses: {
3705
+ /** @description A `Parameters` resource with each NPI's status, in the order sent. */
3706
+ 200: {
3707
+ headers: {
3708
+ "X-Request-Id": components["headers"]["XRequestId"];
3709
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3710
+ [name: string]: unknown;
3711
+ };
3712
+ content: {
3713
+ "application/fhir+json": components["schemas"]["Parameters"];
3714
+ };
3715
+ };
3716
+ /** @description A missing `npi`, an NPI that is not ten digits, more than 20 NPIs, or another parameter, named. */
3717
+ 400: {
3718
+ headers: {
3719
+ "X-Request-Id": components["headers"]["XRequestId"];
3720
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3721
+ [name: string]: unknown;
3722
+ };
3723
+ content: {
3724
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3725
+ };
3726
+ };
3727
+ 401: components["responses"]["FhirUnauthorized"];
3728
+ /** @description No plan with that id is in the releases being served, or the plan is held but is not a medical plan. The `OperationOutcome` says which. */
3729
+ 404: {
3730
+ headers: {
3731
+ "X-Request-Id": components["headers"]["XRequestId"];
3732
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3733
+ [name: string]: unknown;
3734
+ };
3735
+ content: {
3736
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3737
+ };
3738
+ };
3739
+ 406: components["responses"]["FhirNotAcceptable"];
3740
+ 429: components["responses"]["FhirTooManyRequests"];
3741
+ 500: components["responses"]["FhirServerError"];
3742
+ /** @description The plan store could not be read, or the directory failed a lookup or answered in a way that could not be read with confidence. No answer is given: this is never reported as a provider not found. */
3743
+ 502: {
3744
+ headers: {
3745
+ "X-Request-Id": components["headers"]["XRequestId"];
3746
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3747
+ [name: string]: unknown;
3748
+ };
3749
+ content: {
3750
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3751
+ };
3752
+ };
3753
+ /** @description No release of the plan files is being served for the plan's program, or the directory is rate limiting requests (with `Retry-After`). No answer is given. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
3754
+ 503: {
3755
+ headers: {
3756
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
3757
+ "Retry-After"?: number;
3758
+ "X-Request-Id": components["headers"]["XRequestId"];
3759
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3760
+ [name: string]: unknown;
3761
+ };
3762
+ content: {
3763
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3764
+ };
3765
+ };
3766
+ /** @description The plan store or the directory did not answer within the operation's time. No answer is given, never a partial one. */
3767
+ 504: {
3768
+ headers: {
3769
+ "X-Request-Id": components["headers"]["XRequestId"];
3770
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3771
+ [name: string]: unknown;
3772
+ };
3773
+ content: {
3774
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3775
+ };
3776
+ };
3777
+ };
3778
+ };
3779
+ reconcileMedications: {
3780
+ parameters: {
3781
+ query?: never;
3782
+ header?: {
3783
+ /** @description An id of your own for this request, as a UUID. It comes back in the `X-Correlation-Id` header and is kept with haau3's record of the request. Any value that is not a UUID is ignored. See https://docs.haau3.com/errors#request-ids. */
3784
+ "X-Request-Id"?: components["parameters"]["XRequestId"];
3785
+ };
3786
+ path?: never;
3787
+ cookie?: never;
3788
+ };
3789
+ requestBody: {
3790
+ content: {
3791
+ "application/fhir+json": ({
3792
+ /** @constant */
3793
+ resourceType: "Bundle";
3794
+ type: string;
3795
+ entry?: ({
3796
+ fullUrl?: string;
3797
+ resource?: {
3798
+ resourceType: string;
3799
+ } & {
3800
+ [key: string]: unknown;
3801
+ };
3802
+ search?: {
3803
+ mode?: string;
3804
+ } & {
3805
+ [key: string]: unknown;
3806
+ };
3807
+ } & {
3808
+ [key: string]: unknown;
3809
+ })[];
3810
+ } & {
3811
+ [key: string]: unknown;
3812
+ }) | ({
3813
+ /** @constant */
3814
+ resourceType: "Parameters";
3815
+ parameter?: ({
3816
+ name: string;
3817
+ resource?: {
3818
+ resourceType: string;
3819
+ } & {
3820
+ [key: string]: unknown;
3821
+ };
3822
+ valueDateTime?: string;
3823
+ } & {
3824
+ [key: string]: unknown;
3825
+ })[];
3826
+ } & {
3827
+ [key: string]: unknown;
3828
+ });
3829
+ };
3830
+ };
3831
+ responses: {
3832
+ /** @description The reconciled list: a FHIR `Bundle` of type `collection` conforming to haau3 Reconciled Medication Bundle, returned as the response body itself. */
3833
+ 200: {
3834
+ headers: {
3835
+ "X-Request-Id": components["headers"]["XRequestId"];
3836
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3837
+ [name: string]: unknown;
3838
+ };
3839
+ content: {
3840
+ "application/fhir+json": components["schemas"]["Bundle"];
3841
+ };
3842
+ };
3843
+ /** @description The request was refused: a query parameter (the operation takes its input in the body only), a resource of another type, a Bundle of another type, a resource part with no id, more than 50,000 entries or parameters (coded `too-long`), or malformed content. The OperationOutcome names the reason. */
3844
+ 400: {
3845
+ headers: {
3846
+ "X-Request-Id": components["headers"]["XRequestId"];
3847
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3848
+ [name: string]: unknown;
3849
+ };
3850
+ content: {
3851
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3852
+ };
3853
+ };
3854
+ 401: components["responses"]["FhirUnauthorized"];
3855
+ 406: components["responses"]["FhirNotAcceptable"];
3856
+ /** @description The request body is over 16 MiB. */
3857
+ 413: {
3858
+ headers: {
3859
+ "X-Request-Id": components["headers"]["XRequestId"];
3860
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3861
+ [name: string]: unknown;
3862
+ };
3863
+ content: {
3864
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3865
+ };
3866
+ };
3867
+ 415: components["responses"]["FhirUnsupportedMediaType"];
3868
+ 429: components["responses"]["FhirTooManyRequests"];
3869
+ 500: components["responses"]["FhirServerError"];
3870
+ /** @description The terminology store behind RxNorm could not be reached. No partial list is returned. */
3871
+ 502: {
3872
+ headers: {
3873
+ "X-Request-Id": components["headers"]["XRequestId"];
3874
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3875
+ [name: string]: unknown;
3876
+ };
3877
+ content: {
3878
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3879
+ };
3880
+ };
3881
+ /** @description RxNorm is not configured on this deployment, no release has been published to it, or the release changed while the request was being answered. No partial list is returned. It is also the answer when the API key could not be checked just now, with `Retry-After`. */
3882
+ 503: {
3883
+ headers: {
3884
+ /** @description Sent when waiting will help: the API key could not be checked just now, or the source behind this service is rate limiting requests. How many seconds to wait before sending the request again. */
3885
+ "Retry-After"?: number;
3886
+ "X-Request-Id": components["headers"]["XRequestId"];
3887
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3888
+ [name: string]: unknown;
3889
+ };
3890
+ content: {
3891
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3892
+ };
3893
+ };
3894
+ /** @description The terminology store behind RxNorm did not respond in time. No partial list is returned. */
3895
+ 504: {
3896
+ headers: {
3897
+ "X-Request-Id": components["headers"]["XRequestId"];
3898
+ "X-Correlation-Id": components["headers"]["XCorrelationId"];
3899
+ [name: string]: unknown;
3900
+ };
3901
+ content: {
3902
+ "application/fhir+json": components["schemas"]["OperationOutcome"];
3903
+ };
3904
+ };
3905
+ };
3906
+ };
3907
+ }
3908
+ //#endregion
3909
+ //#region src/operations.d.ts
3910
+ /** Every operation's id, as the spec names it. Each one is a method on {@link Haau3}. */
3911
+ type OperationId = keyof operations;
3912
+ type ParametersOf<Op extends OperationId> = operations[Op]["parameters"];
3913
+ /** An operation's query parameters. */
3914
+ type QueryOf<Op extends OperationId> = ParametersOf<Op> extends {
3915
+ query?: infer Query;
3916
+ } ? NonNullable<Query> : never;
3917
+ /** An operation's request body. */
3918
+ type BodyOf<Op extends OperationId> = operations[Op] extends {
3919
+ requestBody: {
3920
+ content: infer Content;
3921
+ };
3922
+ } ? Content[keyof Content] : never;
3923
+ /** What an operation answers when it succeeds. */
3924
+ type ResponseOf<Op extends OperationId> = operations[Op]["responses"] extends {
3925
+ 200: {
3926
+ content: infer Content;
3927
+ };
3928
+ } ? Content[keyof Content] : never;
3929
+ //#endregion
3930
+ //#region src/transport.d.ts
3931
+ /** How to construct the client. Every option has a default. */
3932
+ interface ClientOptions {
3933
+ /** Your platform API key (`haau3_sk_…`). Defaults to `process.env.HAAU3_API_KEY`. */
3934
+ apiKey?: string;
3935
+ /** Where the API is. Defaults to `https://api.haau3.com`. */
3936
+ baseURL?: string;
3937
+ /** Milliseconds one attempt may take. Defaults to 65,000. */
3938
+ timeout?: number;
3939
+ /** How many times a request is retried after a timeout, a network failure, a 429 or a 5xx. Defaults to 1. */
3940
+ maxRetries?: number;
3941
+ /** The fetch to send requests with. Defaults to the global `fetch`. */
3942
+ fetch?: typeof fetch;
3943
+ }
3944
+ /** Options for one call. Each overrides the client's own for that call only. */
3945
+ interface RequestOptions {
3946
+ /** Milliseconds one attempt may take. */
3947
+ timeout?: number;
3948
+ /** How many times this call is retried. `0` sends it once. */
3949
+ maxRetries?: number;
3950
+ /** Ends the call when it aborts. The abort's reason is thrown as it is. */
3951
+ signal?: AbortSignal;
3952
+ /** Extra headers for this call, such as `X-Request-Id` with your own UUID. */
3953
+ headers?: Record<string, string>;
3954
+ }
3955
+ /** A query parameter's value. A list sends the parameter once per value. */
3956
+ type QueryValue = string | number | boolean | ReadonlyArray<string | number | boolean> | undefined;
3957
+ /** A request {@link Transport.request} sends as it is given. */
3958
+ interface RawRequest extends RequestOptions {
3959
+ method: "GET" | "POST";
3960
+ /** A path such as `/v1/scheduling/slots`, or a whole URL on the client's own `baseURL`. */
3961
+ path: string;
3962
+ query?: Record<string, QueryValue>;
3963
+ /** Sent as it is when it is a string, and as JSON otherwise. */
3964
+ body?: unknown;
3965
+ }
3966
+ /** What the API answered, whatever its status. */
3967
+ interface RawResponse {
3968
+ status: number;
3969
+ headers: Headers;
3970
+ /** The body, parsed when it is JSON, else its text. */
3971
+ body: unknown;
3972
+ /** The `X-Request-Id` the API sent. */
3973
+ requestId: string | undefined;
3974
+ attempts: number;
3975
+ durationMs: number;
3976
+ }
3977
+ /** What a generated method passes to {@link Transport.operation}. */
3978
+ interface OperationCall {
3979
+ method: "GET" | "POST";
3980
+ path: string;
3981
+ pathParams?: Record<string, string>;
3982
+ query?: object;
3983
+ body?: unknown;
3984
+ }
3985
+ /** The connection, retries and errors every operation shares. */
3986
+ declare abstract class Transport {
3987
+ #private;
3988
+ /** Where requests go. */
3989
+ readonly baseURL: string;
3990
+ /** Milliseconds one attempt may take. */
3991
+ readonly timeout: number;
3992
+ /** How many times a request is retried. */
3993
+ readonly maxRetries: number;
3994
+ constructor(options?: ClientOptions);
3995
+ /**
3996
+ * Sends any request and returns what the API answered, whatever its status. Throws only when no
3997
+ * answer arrived ({@link NoAnswerError}), or for a URL that is not on the client's own `baseURL`.
3998
+ */
3999
+ request(request: RawRequest): Promise<RawResponse>;
4000
+ /** Runs one operation of the spec and returns its answer, or throws one of the three errors. */
4001
+ protected operation<T>(call: OperationCall, options?: RequestOptions): Promise<T>;
4002
+ /**
4003
+ * Sends a request and reads its answer. `label` names the request in an error message: the
4004
+ * operation's path with its `{id}` left in, so no value a caller sent ends up in a message.
4005
+ */
4006
+ protected answer<T>(method: "GET" | "POST", url: URL, body: unknown, options: RequestOptions, label: string): Promise<T>;
4007
+ /** A URL on this client's base, refusing any other host so the key is never sent to one. */
4008
+ protected url(pathOrUrl: string): URL;
4009
+ }
4010
+ //#endregion
4011
+ //#region src/generated/types.d.ts
4012
+ type ListPublishersResponse = components["schemas"]["ListPublishersResponse"];
4013
+ type ListServiceTypesResponse = components["schemas"]["ListServiceTypesResponse"];
4014
+ type ListSpecialtiesResponse = components["schemas"]["ListSpecialtiesResponse"];
4015
+ type Problem = components["schemas"]["Problem"];
4016
+ type ProblemIssue = components["schemas"]["ProblemIssue"];
4017
+ type SchedulingProviderLocation = components["schemas"]["SchedulingProviderLocation"];
4018
+ type SchedulingPublisher = components["schemas"]["SchedulingPublisher"];
4019
+ type SchedulingServiceType = components["schemas"]["SchedulingServiceType"];
4020
+ type SchedulingSlot = components["schemas"]["SchedulingSlot"];
4021
+ type SchedulingSpecialty = components["schemas"]["SchedulingSpecialty"];
4022
+ type SearchProviderLocationsResponse = components["schemas"]["SearchProviderLocationsResponse"];
4023
+ type SearchSlotsResponse = components["schemas"]["SearchSlotsResponse"];
4024
+ /** The query parameters of `checkInsurancePlanNetwork`. */
4025
+ type CheckInsurancePlanNetworkParams = QueryOf<"checkInsurancePlanNetwork">;
4026
+ /** The query parameters of `codeSystemLookup`. */
4027
+ type CodeSystemLookupParams = QueryOf<"codeSystemLookup">;
4028
+ /** The query parameters of `codeSystemValidateCode`. */
4029
+ type CodeSystemValidateCodeParams = QueryOf<"codeSystemValidateCode">;
4030
+ /** The query parameters of `fhirMetadata`. */
4031
+ type FhirMetadataParams = QueryOf<"fhirMetadata">;
4032
+ /** The query parameters of `listInsurancePlanCounties`. */
4033
+ type ListInsurancePlanCountiesParams = QueryOf<"listInsurancePlanCounties">;
4034
+ /** The query parameters of `listServiceTypes`. */
4035
+ type ListServiceTypesParams = QueryOf<"listServiceTypes">;
4036
+ /** The query parameters of `listSpecialties`. */
4037
+ type ListSpecialtiesParams = QueryOf<"listSpecialties">;
4038
+ /** The query parameters of `searchEndpoint`. */
4039
+ type SearchEndpointParams = QueryOf<"searchEndpoint">;
4040
+ /** The query parameters of `searchHealthcareService`. */
4041
+ type SearchHealthcareServiceParams = QueryOf<"searchHealthcareService">;
4042
+ /** The query parameters of `searchInsurancePlan`. */
4043
+ type SearchInsurancePlanParams = QueryOf<"searchInsurancePlan">;
4044
+ /** The query parameters of `searchLocation`. */
4045
+ type SearchLocationParams = QueryOf<"searchLocation">;
4046
+ /** The query parameters of `searchOrganization`. */
4047
+ type SearchOrganizationParams = QueryOf<"searchOrganization">;
4048
+ /** The query parameters of `searchOrganizationAffiliation`. */
4049
+ type SearchOrganizationAffiliationParams = QueryOf<"searchOrganizationAffiliation">;
4050
+ /** The query parameters of `searchPractitioner`. */
4051
+ type SearchPractitionerParams = QueryOf<"searchPractitioner">;
4052
+ /** The query parameters of `searchPractitionerRole`. */
4053
+ type SearchPractitionerRoleParams = QueryOf<"searchPractitionerRole">;
4054
+ /** The query parameters of `searchProviderLocations`. */
4055
+ type SearchProviderLocationsParams = QueryOf<"searchProviderLocations">;
4056
+ /** The query parameters of `searchQuestionnaire`. */
4057
+ type SearchQuestionnaireParams = QueryOf<"searchQuestionnaire">;
4058
+ /** The query parameters of `searchSlots`. */
4059
+ type SearchSlotsParams = QueryOf<"searchSlots">;
4060
+ /** The query parameters of `valueSetExpand`. */
4061
+ type ValueSetExpandParams = QueryOf<"valueSetExpand">;
4062
+ /** The query parameters of `valueSetValidateCode`. */
4063
+ type ValueSetValidateCodeParams = QueryOf<"valueSetValidateCode">;
4064
+ //#endregion
4065
+ //#region src/generated/methods.d.ts
4066
+ /** Every operation of the haau3 platform API. {@link Haau3} is the class to construct. */
4067
+ declare abstract class Operations extends Transport {
4068
+ /**
4069
+ * Check providers against a plan's network
4070
+ *
4071
+ * FHIR instance-level operation `$in-network` on InsurancePlan: for each NPI, whether the CMS National Provider Directory lists the provider in a network this plan names, for the plan's year. The answer is a `Parameters` resource: the `plan`; the directory's `data-date`; one `network` per network checked, with the number of organizations it lists; a `reason` when there is no network data; a Marketplace plan's own `directory`; one `provider` per NPI, in the order sent, with its `status` (`in-network`, `not-found`, `not-in-directory` or `no-network-data`) and, when listed, `evidence` references to the directory's records on this base; then a `source` when the directory was asked. `not-found` never means out of network: the directory's network data is incomplete, and a listing is not a statement of a contract. All or nothing: a lookup that fails fails the whole answer. GET only. Defined by the haau3 implementation guide (`https://haau3.com/fhir/OperationDefinition/InsurancePlan-in-network`).
4072
+ *
4073
+ * `GET /v1/fhir/r4/InsurancePlan/{id}/$in-network`
4074
+ */
4075
+ checkInsurancePlanNetwork(id: string, params: CheckInsurancePlanNetworkParams, options?: RequestOptions): Promise<ResponseOf<"checkInsurancePlanNetwork">>;
4076
+ /**
4077
+ * Look up a code
4078
+ *
4079
+ * FHIR `CodeSystem/$lookup`. Returns a code's display and requested properties. On POST, a `coding` parameter may stand in for `system` + `code`.
4080
+ *
4081
+ * `GET /v1/fhir/r4/CodeSystem/$lookup`
4082
+ */
4083
+ codeSystemLookup(params: CodeSystemLookupParams, options?: RequestOptions): Promise<ResponseOf<"codeSystemLookup">>;
4084
+ /**
4085
+ * Look up a code
4086
+ *
4087
+ * FHIR `CodeSystem/$lookup`. Returns a code's display and requested properties. On POST, a `coding` parameter may stand in for `system` + `code`.
4088
+ *
4089
+ * `POST /v1/fhir/r4/CodeSystem/$lookup`
4090
+ */
4091
+ codeSystemLookupPost(body: BodyOf<"codeSystemLookupPost">, options?: RequestOptions): Promise<ResponseOf<"codeSystemLookupPost">>;
4092
+ /**
4093
+ * Validate a code in a code system
4094
+ *
4095
+ * FHIR `CodeSystem/$validate-code`. Asks whether a code exists in a code system — distinct from the ValueSet operation of the same name, which asks about membership of a particular set. On POST, a `coding` or `codeableConcept` parameter may stand in for `url` + `code`; a codeableConcept validates if any of its codings does.
4096
+ *
4097
+ * `GET /v1/fhir/r4/CodeSystem/$validate-code`
4098
+ */
4099
+ codeSystemValidateCode(params: CodeSystemValidateCodeParams, options?: RequestOptions): Promise<ResponseOf<"codeSystemValidateCode">>;
4100
+ /**
4101
+ * Validate a code in a code system
4102
+ *
4103
+ * FHIR `CodeSystem/$validate-code`. Asks whether a code exists in a code system — distinct from the ValueSet operation of the same name, which asks about membership of a particular set. On POST, a `coding` or `codeableConcept` parameter may stand in for `url` + `code`; a codeableConcept validates if any of its codings does.
4104
+ *
4105
+ * `POST /v1/fhir/r4/CodeSystem/$validate-code`
4106
+ */
4107
+ codeSystemValidateCodePost(body: BodyOf<"codeSystemValidateCodePost">, options?: RequestOptions): Promise<ResponseOf<"codeSystemValidateCodePost">>;
4108
+ /**
4109
+ * Run several operations in one request (batch)
4110
+ *
4111
+ * POST a FHIR `Bundle` with `type: batch` to send several requests in one round trip. Each entry's `request.url` is relative to this base and may be any read, search or operation of any service on it, except `$reconcile-medications`, which a batch refuses by name. Entries are independent: one that fails, such as a lookup of an unknown code, does not fail the others, and each carries its own status in the `batch-response`. For example, a batch of 50 terminology lookups measured about 4.8 ms per code, against 181 ms each when sent one at a time. Transaction bundles are not accepted: nothing on this base writes, so all or nothing would only turn one bad entry into a wholly failed request. A batch carries at most 100 entries in at most 1 MiB, and has 60 seconds: an entry still running then answers `504` inside the `200`. See https://docs.haau3.com/errors#limits.
4112
+ *
4113
+ * `POST /v1/fhir/r4`
4114
+ */
4115
+ fhirBatch(body: BodyOf<"fhirBatch">, options?: RequestOptions): Promise<ResponseOf<"fhirBatch">>;
4116
+ /**
4117
+ * Capability statement
4118
+ *
4119
+ * FHIR `[base]/metadata`. Returns the `CapabilityStatement` for this service, or a `TerminologyCapabilities` when called with `?mode=terminology` — which lists the code systems served, and names those that are recognised but not served. `mode` is the only parameter it takes.
4120
+ *
4121
+ * `GET /v1/fhir/r4/metadata`
4122
+ */
4123
+ fhirMetadata(params?: FhirMetadataParams, options?: RequestOptions): Promise<ResponseOf<"fhirMetadata">>;
4124
+ /**
4125
+ * List a state's counties
4126
+ *
4127
+ * FHIR type-level operation `$counties` on InsurancePlan: the counties and county equivalents of a state, the District of Columbia or a territory, sorted by name, each with the five-digit FIPS code `coverage-area-county` takes. The answer is a `Parameters` resource: one `county` parameter per county, whose `code` part is a Coding in `http://terminology.hl7.org/CodeSystem/FIPS64` with the county's name as its display and whose `state` part is the state's code, then a `source` parameter naming the list: the U.S. Census Bureau's 2020 county codes. It answers whether or not a plan is sold in a county. GET only. Defined by the haau3 implementation guide (`https://haau3.com/fhir/OperationDefinition/InsurancePlan-counties`).
4128
+ *
4129
+ * `GET /v1/fhir/r4/InsurancePlan/$counties`
4130
+ */
4131
+ listInsurancePlanCounties(params: ListInsurancePlanCountiesParams, options?: RequestOptions): Promise<ResponseOf<"listInsurancePlanCounties">>;
4132
+ /**
4133
+ * List scheduling publishers
4134
+ *
4135
+ * Returns the SMART Scheduling Links publishers (sources) the platform ingests. Requires a valid API key.
4136
+ *
4137
+ * `GET /v1/scheduling/publishers`
4138
+ */
4139
+ listPublishers(options?: RequestOptions): Promise<ResponseOf<"listPublishers">>;
4140
+ /**
4141
+ * List service types
4142
+ *
4143
+ * Returns the distinct service types observed across served slots, each with its `system` and a `count` of the slots carrying it. It is a discovery aid for the `serviceTypeCode` filter on `GET /v1/scheduling/slots`. Requires a valid API key.
4144
+ *
4145
+ * `GET /v1/scheduling/service-types`
4146
+ */
4147
+ listServiceTypes(params?: ListServiceTypesParams, options?: RequestOptions): Promise<ResponseOf<"listServiceTypes">>;
4148
+ /**
4149
+ * List specialties
4150
+ *
4151
+ * Returns the distinct specialties observed across served slots, from the provider's `specialties` and the schedule's, each with its `system` and a `count` of the slots carrying it. It is a discovery aid for the `specialty` filter on `GET /v1/scheduling/slots`. Codes are each publisher's own. Requires a valid API key.
4152
+ *
4153
+ * `GET /v1/scheduling/specialties`
4154
+ */
4155
+ listSpecialties(params?: ListSpecialtiesParams, options?: RequestOptions): Promise<ResponseOf<"listSpecialties">>;
4156
+ /**
4157
+ * Read an Endpoint
4158
+ *
4159
+ * Read one endpoint by id, as returned by a search on this service.
4160
+ *
4161
+ * `GET /v1/fhir/r4/Endpoint/{id}`
4162
+ */
4163
+ readEndpoint(id: string, options?: RequestOptions): Promise<ResponseOf<"readEndpoint">>;
4164
+ /**
4165
+ * Read a HealthcareService
4166
+ *
4167
+ * Read one healthcare service by id, as returned by a search on this service.
4168
+ *
4169
+ * `GET /v1/fhir/r4/HealthcareService/{id}`
4170
+ */
4171
+ readHealthcareService(id: string, options?: RequestOptions): Promise<ResponseOf<"readHealthcareService">>;
4172
+ /**
4173
+ * Read a plan
4174
+ *
4175
+ * Read one plan by its id. A Medicare Advantage plan's id is CMS's plan id with the segment in three digits (`H2406-013-000`); a Marketplace plan's is its HIOS plan id with the variant (`19898FL0340001-01`). The plan conforms to the haau3 Plan Benefits profile and to the SBC InsurancePlan profile of the CARIN Digital Insurance Card guide, 2.0.0-ballot, and names the CMS release it was read from.
4176
+ *
4177
+ * `GET /v1/fhir/r4/InsurancePlan/{id}`
4178
+ */
4179
+ readInsurancePlan(id: string, options?: RequestOptions): Promise<ResponseOf<"readInsurancePlan">>;
4180
+ /**
4181
+ * Read a Location
4182
+ *
4183
+ * Read one location by id, as returned by a search on this service.
4184
+ *
4185
+ * `GET /v1/fhir/r4/Location/{id}`
4186
+ */
4187
+ readLocation(id: string, options?: RequestOptions): Promise<ResponseOf<"readLocation">>;
4188
+ /**
4189
+ * Read an Organization
4190
+ *
4191
+ * Read one organization, payer or network by id, as returned by a search on this service.
4192
+ *
4193
+ * `GET /v1/fhir/r4/Organization/{id}`
4194
+ */
4195
+ readOrganization(id: string, options?: RequestOptions): Promise<ResponseOf<"readOrganization">>;
4196
+ /**
4197
+ * Read an OrganizationAffiliation
4198
+ *
4199
+ * Read one organization affiliation by id, as returned by a search on this service.
4200
+ *
4201
+ * `GET /v1/fhir/r4/OrganizationAffiliation/{id}`
4202
+ */
4203
+ readOrganizationAffiliation(id: string, options?: RequestOptions): Promise<ResponseOf<"readOrganizationAffiliation">>;
4204
+ /**
4205
+ * Read a Practitioner
4206
+ *
4207
+ * Read one practitioner by id, as returned by a search on this service.
4208
+ *
4209
+ * `GET /v1/fhir/r4/Practitioner/{id}`
4210
+ */
4211
+ readPractitioner(id: string, options?: RequestOptions): Promise<ResponseOf<"readPractitioner">>;
4212
+ /**
4213
+ * Read a PractitionerRole
4214
+ *
4215
+ * Read one practitioner role by id, as returned by a search on this service.
4216
+ *
4217
+ * `GET /v1/fhir/r4/PractitionerRole/{id}`
4218
+ */
4219
+ readPractitionerRole(id: string, options?: RequestOptions): Promise<ResponseOf<"readPractitionerRole">>;
4220
+ /**
4221
+ * Read a questionnaire
4222
+ *
4223
+ * Read one questionnaire by id. Ids are the identifier its source gives the instrument, for example `44249-1`. A search with no parameters lists the ids this service holds copies of; any other id its source publishes is fetched live.
4224
+ *
4225
+ * The resource is returned exactly as its source publishes it, including its `copyright` and the order of every answer option.
4226
+ *
4227
+ * `GET /v1/fhir/r4/Questionnaire/{id}`
4228
+ */
4229
+ readQuestionnaire(id: string, options?: RequestOptions): Promise<ResponseOf<"readQuestionnaire">>;
4230
+ /**
4231
+ * Reconcile one patient's medication records
4232
+ *
4233
+ * FHIR system-level operation `$reconcile-medications`. POST one patient's MedicationRequest, MedicationStatement, MedicationDispense and MedicationAdministration records, with the Medications they reference, as a `collection` or `searchset` Bundle; every entry needs a `fullUrl`. The response is one reconciled medication list: a `collection` Bundle holding one reconciled MedicationRequest per clinical drug, a Provenance for each naming the records behind it, and an OperationOutcome when a record was skipped. To evaluate the list as of another date, POST a Parameters resource with `resource` parts, or one `bundle` part, and an `asOf` part. This operation receives patient data, so send it only under an executed agreement. Nothing a request carries is stored or logged, apart from the request's ids, and the operation is not offered inside a batch. The contract is published at https://fhir.haau3.com/OperationDefinition-reconcile-medications.html.
4234
+ *
4235
+ * `POST /v1/fhir/r4/$reconcile-medications`
4236
+ */
4237
+ reconcileMedications(body: BodyOf<"reconcileMedications">, options?: RequestOptions): Promise<ResponseOf<"reconcileMedications">>;
4238
+ /**
4239
+ * Find endpoints
4240
+ *
4241
+ * Search `Endpoint` by managing organization; `connection-type`, `status` and `name` narrow a search but cannot stand alone.
4242
+ *
4243
+ * `GET /v1/fhir/r4/Endpoint`
4244
+ */
4245
+ searchEndpoint(params?: SearchEndpointParams, options?: RequestOptions): Promise<ResponseOf<"searchEndpoint">>;
4246
+ /**
4247
+ * Find healthcare services
4248
+ *
4249
+ * Search `HealthcareService` by location, or by network beside a location. The directory's service records name a network and, for a few, a location; none names an organization, so `organization` is refused rather than answered with nothing.
4250
+ *
4251
+ * `GET /v1/fhir/r4/HealthcareService`
4252
+ */
4253
+ searchHealthcareService(params?: SearchHealthcareServiceParams, options?: RequestOptions): Promise<ResponseOf<"searchHealthcareService">>;
4254
+ /**
4255
+ * Find a plan
4256
+ *
4257
+ * Search the Medicare Advantage and ACA Marketplace plans being served, by identifier, name, or the state or county a plan is sold in. A search needs at least one of `identifier`, a form of `name`, `coverage-area-state` or `coverage-area-county`; `type` and `sold-to` narrow a search but are not one. Every result is the whole plan, sorted by name and then id, and every page states the total. Follow the `next` link to continue.
4258
+ *
4259
+ * A plan sold in only part of a county matches the whole county. `GET /v1/fhir/r4/InsurancePlan/$counties?state=FL` lists a state's counties and their codes.
4260
+ *
4261
+ * Every other parameter is refused by name rather than ignored, so a search never quietly answers a different question than the one asked. `address-state` and `address-postalcode` are refused with a pointer to the coverage-area parameters, because in FHIR R4 they search a plan's contact address.
4262
+ *
4263
+ * Drug-only and dental-only plans are not served. An identifier search that finds one answers no plan and an `OperationOutcome` entry saying why.
4264
+ *
4265
+ * `GET /v1/fhir/r4/InsurancePlan`
4266
+ */
4267
+ searchInsurancePlan(params?: SearchInsurancePlanParams, options?: RequestOptions): Promise<ResponseOf<"searchInsurancePlan">>;
4268
+ /**
4269
+ * Find practice locations
4270
+ *
4271
+ * Search `Location` by managing organization or name; the address parameters and `status` narrow a search but cannot stand alone. A distance search (`near`) is refused because the directory does not apply it.
4272
+ *
4273
+ * `GET /v1/fhir/r4/Location`
4274
+ */
4275
+ searchLocation(params?: SearchLocationParams, options?: RequestOptions): Promise<ResponseOf<"searchLocation">>;
4276
+ /**
4277
+ * Find organizations, payers and networks
4278
+ *
4279
+ * Search `Organization` by name, NPI, parent (`partof`) or type. `type=ntwk` lists the insurance networks the directory holds and `type=pay` its payers; any other type, `active` and the address parameters narrow a search but cannot stand alone.
4280
+ *
4281
+ * The directory records networks by the text of their type rather than a code. This service searches that text for `type=ntwk` and confirms every answer is a network; if the directory changes how it records them, the search answers 502 rather than serve something else.
4282
+ *
4283
+ * An NPI search can return a parent organization beside the practice, when the parent lists the NPI among several. `_revinclude` brings the roles, affiliations, locations and endpoints that point at each match, up to 100 per page.
4284
+ *
4285
+ * `GET /v1/fhir/r4/Organization`
4286
+ */
4287
+ searchOrganization(params?: SearchOrganizationParams, options?: RequestOptions): Promise<ResponseOf<"searchOrganization">>;
4288
+ /**
4289
+ * Find the organizations in a network
4290
+ *
4291
+ * Search `OrganizationAffiliation`: which organizations take part in which networks. `network` lists a network's members; with `participating-organization` beside it, it asks whether the directory lists that organization in that network. The directory's network data is sparse, so an organization a network's records do not list is not shown to be out of network. For a network, the primary organization is the network itself.
4292
+ *
4293
+ * `GET /v1/fhir/r4/OrganizationAffiliation`
4294
+ */
4295
+ searchOrganizationAffiliation(params?: SearchOrganizationAffiliationParams, options?: RequestOptions): Promise<ResponseOf<"searchOrganizationAffiliation">>;
4296
+ /**
4297
+ * Find a practitioner by NPI or name
4298
+ *
4299
+ * Search `Practitioner` by `identifier` to resolve an NPI you already hold, or by name to find someone. A search needs one or the other (or an `_id`): `address-city`, `address-state` and `active` narrow a search but cannot stand alone. Specialties are searched on `PractitionerRole`.
4300
+ *
4301
+ * Three identifier systems are accepted, `http://terminology.hl7.org/NamingSystem/npi`, `http://hl7.org/fhir/sid/us-npi` and `urn:oid:2.16.840.1.113883.4.6`, as well as a bare 10-digit value. All of them resolve the same provider. **Responses carry the directory's own system, `http://hl7.org/fhir/sid/us-npi`**, which may differ from the one you sent. Any other identifier system is refused by name: a system the directory does not index would answer with an empty result, which reads as 'no such provider'.
4302
+ *
4303
+ * One NPI per search. To resolve several, POST a batch `Bundle` with one entry each.
4304
+ *
4305
+ * `GET /v1/fhir/r4/Practitioner`
4306
+ */
4307
+ searchPractitioner(params?: SearchPractitionerParams, options?: RequestOptions): Promise<ResponseOf<"searchPractitioner">>;
4308
+ /**
4309
+ * Find practitioner roles
4310
+ *
4311
+ * Search `PractitionerRole`: the organizations, specialties, locations and networks practitioners are associated with. A search names a practitioner, an organization, a location or an endpoint; `specialty` (NUCC), `new-patient` and `active` narrow it.
4312
+ *
4313
+ * `network` and `new-patient-from-network` follow the directory's own rule: each needs a practitioner, organization, location or specialty beside it, and a search without one is refused before the directory is asked. A network search beside a practitioner or an organization answers in under a second; beside a specialty or a busy location the directory can take 10 to 15 seconds. The directory's network data is sparse, so a role a network's records do not list is not shown to be out of network.
4314
+ *
4315
+ * `identifier` is not offered because the directory does not carry identifiers on these resources.
4316
+ *
4317
+ * `GET /v1/fhir/r4/PractitionerRole`
4318
+ */
4319
+ searchPractitionerRole(params?: SearchPractitionerRoleParams, options?: RequestOptions): Promise<ResponseOf<"searchPractitionerRole">>;
4320
+ /**
4321
+ * Search provider locations
4322
+ *
4323
+ * Returns the matching slots grouped by provider location: each item in `providerLocations` is one provider at one location, or a location with no provider, with its total slot count and soonest availability, paginated by provider location. Its opaque `key` drills down to its individual slots via `GET /v1/scheduling/slots?providerLocationKey=<key>`. Same filters as `/slots`. Requires a valid API key.
4324
+ *
4325
+ * `GET /v1/scheduling/provider-locations`
4326
+ */
4327
+ searchProviderLocations(params?: SearchProviderLocationsParams, options?: RequestOptions): Promise<ResponseOf<"searchProviderLocations">>;
4328
+ /**
4329
+ * List or find a questionnaire
4330
+ *
4331
+ * With no parameters, this lists the questionnaires this service holds copies of. Those render the same way on every request, and that list is what you can rely on.
4332
+ *
4333
+ * Naming a canonical `url` reaches any questionnaire the source publishes, including ones this service holds no copy of. Those depend on the source being reachable, and when it cannot answer you get a `502`, `503` or `504` carrying an `OperationOutcome`, so a failure never arrives looking like an empty result.
4334
+ *
4335
+ * A canonical that is the address of a form published at its own address, under `https://smart-health-checkin.org/connectathon/Questionnaire/` or another place this service is set up to reach, is fetched from that address and served exactly as published, its entry's `fullUrl` the address it was fetched from. Any other canonical matches nothing.
4336
+ *
4337
+ * Two parameters are offered: `url` (the canonical, optionally as `{url}|{version}`) and `version`. Every other parameter, `status` included, is refused by name rather than ignored, so a search never quietly answers a different question than the one asked. Results are never paged: one page, with `total` set.
4338
+ *
4339
+ * Questionnaires are served exactly as their source publishes them. Each carries its own `copyright`, which must be kept with the form wherever it goes.
4340
+ *
4341
+ * `GET /v1/fhir/r4/Questionnaire`
4342
+ */
4343
+ searchQuestionnaire(params?: SearchQuestionnaireParams, options?: RequestOptions): Promise<ResponseOf<"searchQuestionnaire">>;
4344
+ /**
4345
+ * Search appointment slots
4346
+ *
4347
+ * Returns provider availability slots matching the filters, with pagination. Requires a valid API key.
4348
+ *
4349
+ * `GET /v1/scheduling/slots`
4350
+ */
4351
+ searchSlots(params?: SearchSlotsParams, options?: RequestOptions): Promise<ResponseOf<"searchSlots">>;
4352
+ /**
4353
+ * Expand a value set
4354
+ *
4355
+ * FHIR `ValueSet/$expand`. Expands a value set canonical to its member codes, with an optional text filter and paging (`count=0` returns the total only).
4356
+ *
4357
+ * `GET /v1/fhir/r4/ValueSet/$expand`
4358
+ */
4359
+ valueSetExpand(params?: ValueSetExpandParams, options?: RequestOptions): Promise<ResponseOf<"valueSetExpand">>;
4360
+ /**
4361
+ * Expand a value set
4362
+ *
4363
+ * FHIR `ValueSet/$expand`. Expands a value set canonical to its member codes, with an optional text filter and paging (`count=0` returns the total only).
4364
+ *
4365
+ * `POST /v1/fhir/r4/ValueSet/$expand`
4366
+ */
4367
+ valueSetExpandPost(body: BodyOf<"valueSetExpandPost">, options?: RequestOptions): Promise<ResponseOf<"valueSetExpandPost">>;
4368
+ /**
4369
+ * Validate a code against a value set
4370
+ *
4371
+ * FHIR `ValueSet/$validate-code`. A code that is not in the set is a successful `200` with `result: false`, not an error. On POST, a `coding` or `codeableConcept` parameter may stand in for `system` + `code`; a codeableConcept validates if any of its codings is in the set — useful when an element carries a vendor-local coding alongside a standard one.
4372
+ *
4373
+ * `GET /v1/fhir/r4/ValueSet/$validate-code`
4374
+ */
4375
+ valueSetValidateCode(params: ValueSetValidateCodeParams, options?: RequestOptions): Promise<ResponseOf<"valueSetValidateCode">>;
4376
+ /**
4377
+ * Validate a code against a value set
4378
+ *
4379
+ * FHIR `ValueSet/$validate-code`. A code that is not in the set is a successful `200` with `result: false`, not an error. On POST, a `coding` or `codeableConcept` parameter may stand in for `system` + `code`; a codeableConcept validates if any of its codings is in the set — useful when an element carries a vendor-local coding alongside a standard one.
4380
+ *
4381
+ * `POST /v1/fhir/r4/ValueSet/$validate-code`
4382
+ */
4383
+ valueSetValidateCodePost(body: BodyOf<"valueSetValidateCodePost">, options?: RequestOptions): Promise<ResponseOf<"valueSetValidateCodePost">>;
4384
+ }
4385
+ //#endregion
4386
+ //#region src/client.d.ts
4387
+ /**
4388
+ * The haau3 platform API client.
4389
+ *
4390
+ * ```ts
4391
+ * import { Haau3 } from "@haau3/sdk";
4392
+ *
4393
+ * const haau3 = new Haau3(); // reads HAAU3_API_KEY
4394
+ * const plan = await haau3.readInsurancePlan("H2406-013-000");
4395
+ * ```
4396
+ *
4397
+ * Every operation of the API is a method named by its operationId. Server-side only: the
4398
+ * constructor refuses to run in a browser, where a key would be public.
4399
+ */
4400
+ export declare class Haau3 extends Operations {
4401
+ constructor(options?: ClientOptions);
4402
+ /**
4403
+ * Every page of a FHIR search, starting with the one you have, following each `next` link
4404
+ * until there is none. A link to any host but the client's own `baseURL` is refused, so the key
4405
+ * is never sent elsewhere.
4406
+ *
4407
+ * ```ts
4408
+ * const first = await haau3.searchInsurancePlan({ "coverage-area-state": "NC" });
4409
+ * for await (const page of haau3.pages(first)) {
4410
+ * for (const entry of page.entry ?? []) console.log(entry.resource?.id);
4411
+ * }
4412
+ * ```
4413
+ */
4414
+ pages(first: Bundle, options?: RequestOptions): AsyncGenerator<Bundle, void, undefined>;
4415
+ }
4416
+ //#endregion
4417
+ //#region src/errors.d.ts
4418
+ /**
4419
+ * Why a request got no answer:
4420
+ *
4421
+ * - `timeout`: an attempt ran past its timeout, or the API answered 504.
4422
+ * - `network`: the request never reached the API, or the connection failed.
4423
+ * - `rate-limited`: the API answered 429. `retryAfter` says when to try again.
4424
+ * - `unavailable`: the API, or a source it reads, could not answer (502, 503).
4425
+ * - `server-error`: the API failed (500).
4426
+ * - `unreadable`: the API answered with something that is not an answer, such as a body that is
4427
+ * not JSON.
4428
+ */
4429
+ type NoAnswerReason = "timeout" | "network" | "rate-limited" | "unavailable" | "server-error" | "unreadable";
4430
+ /** What every error this package throws has. */
4431
+ export declare class Haau3Error extends Error {
4432
+ name: string;
4433
+ /** The `X-Request-Id` the API sent, when it answered. Quote it when you ask for help. */
4434
+ readonly requestId: string | undefined;
4435
+ constructor(message: string, requestId?: string, options?: ErrorOptions);
4436
+ }
4437
+ /** An error body as the SDK read it: an OperationOutcome under the FHIR base, a Problem elsewhere. */
4438
+ type AnswerBody = {
4439
+ kind: "outcome";
4440
+ value: OperationOutcome;
4441
+ } | {
4442
+ kind: "problem";
4443
+ value: Problem;
4444
+ };
4445
+ /** The API refused the key: none was sent, it is not one the API knows, or it was revoked (401, 403). */
4446
+ export declare class AuthError extends Haau3Error {
4447
+ name: string;
4448
+ readonly status: number;
4449
+ /** The OperationOutcome the FHIR base answered with. Not enumerable, so it is never printed. */
4450
+ readonly outcome?: OperationOutcome;
4451
+ /** The problem the other services answered with. Not enumerable, so it is never printed. */
4452
+ readonly problem?: Problem;
4453
+ constructor(message: string, status: number, requestId?: string, body?: AnswerBody);
4454
+ }
4455
+ /**
4456
+ * The API answered and refused the request: a parameter it does not take, a record that does not
4457
+ * exist (404), a page that no longer exists (410), a body that is too large (413). `status` says
4458
+ * which, and the body says why.
4459
+ */
4460
+ export declare class RefusedError extends Haau3Error {
4461
+ name: string;
4462
+ readonly status: number;
4463
+ /** The OperationOutcome the FHIR base answered with. Not enumerable, so it is never printed. */
4464
+ readonly outcome?: OperationOutcome;
4465
+ /** The problem the other services answered with. Not enumerable, so it is never printed. */
4466
+ readonly problem?: Problem;
4467
+ constructor(message: string, status: number, requestId?: string, body?: AnswerBody);
4468
+ }
4469
+ /**
4470
+ * The request got no answer, after every attempt the client was allowed. This never means "no
4471
+ * results": an empty search answers with an empty Bundle or list, not with this error.
4472
+ */
4473
+ export declare class NoAnswerError extends Haau3Error {
4474
+ name: string;
4475
+ readonly reason: NoAnswerReason;
4476
+ /** The last status the API answered with, when it answered at all. */
4477
+ readonly status: number | undefined;
4478
+ /** Seconds to wait before trying again, when the API said. */
4479
+ readonly retryAfter: number | undefined;
4480
+ /** How many attempts were made. */
4481
+ readonly attempts: number;
4482
+ /** The OperationOutcome the FHIR base answered with. Not enumerable, so it is never printed. */
4483
+ readonly outcome?: OperationOutcome;
4484
+ /** The problem the other services answered with. Not enumerable, so it is never printed. */
4485
+ readonly problem?: Problem;
4486
+ constructor(message: string, details: {
4487
+ reason: NoAnswerReason;
4488
+ attempts: number;
4489
+ status?: number;
4490
+ retryAfter?: number;
4491
+ requestId?: string;
4492
+ body?: AnswerBody;
4493
+ cause?: unknown;
4494
+ });
4495
+ }
4496
+ //#endregion
4497
+ //#region src/version.d.ts
4498
+ /** This package's version, sent in the `User-Agent` header. A test holds it to package.json. */
4499
+ export declare const VERSION = "0.1.0";
4500
+ //#endregion
4501
+ export type { CheckInsurancePlanNetworkParams, ClientOptions, CodeSystemLookupParams, CodeSystemValidateCodeParams, FhirMetadataParams, ListInsurancePlanCountiesParams, ListPublishersResponse, ListServiceTypesParams, ListServiceTypesResponse, ListSpecialtiesParams, ListSpecialtiesResponse, NoAnswerReason, OperationId, Problem, ProblemIssue, QueryValue, RawRequest, RawResponse, RequestOptions, SchedulingProviderLocation, SchedulingPublisher, SchedulingServiceType, SchedulingSlot, SchedulingSpecialty, SearchEndpointParams, SearchHealthcareServiceParams, SearchInsurancePlanParams, SearchLocationParams, SearchOrganizationAffiliationParams, SearchOrganizationParams, SearchPractitionerParams, SearchPractitionerRoleParams, SearchProviderLocationsParams, SearchProviderLocationsResponse, SearchQuestionnaireParams, SearchSlotsParams, SearchSlotsResponse, ValueSetExpandParams, ValueSetValidateCodeParams, fhir4 };