This Location profile is part of the set of resource profiles supported by the API Server used with the athenaPractice 12.3 and athenaFlow 9.12 products. It further describes read and search capabilities of these products. Note: The create and update operations are NOT supported for this resource.
This resource includes the physical location where health-related services are provided or otherwise accessed.
This profile is used to define the content that will be returned by the API Server in response to requests to access Location resources. All elements listed in the differential profile view are Supported, which means that the API Server is capable of supplying these fields from the product database when they have been populated via the product or its APIs.
The Location resource includes locations for healthcare facilities and other organizations supported by the athenaPractice and athenaFlow products. It derives from the LOCREG and DoctorFacility tables in athenaPractice, and the LOCREG table in athenaFlow. Specific detail can be found in the Mappings section below.
The operations supported by this resource are listed below.
Read operations are executed as specified in the HL7 FHIR RESTful API implementation definition. To read a Location, an application shall perform an HTTP GET, specifying the identifier of the resources being retrieved.
GET [base]/fhir/Location/[id]{?_format=[json|xml]&_summary=[true|data]}
Parameter | Description |
---|---|
[base] | Specifies the base URL of the FHIR Server, e.g., https://cpsapisandbox.virenceaz.com:9443/demoAPIServer |
[id] | Specifies the identifier of the Location resource to retrieve |
[_format] | Specifies the format of the output and may be xml or json. When present, the _format value overrides the value of the Accept header in the request. |
[_summary] | Filters the output to include only summary elements (_summary=true) or to omit the generated narrative (_summary=data). Note: If the generated html narrative for the resource is not going to be used by the call, using _summary=data provides slightly improved API response times. |
Response Code | Description |
---|---|
200 OK | The requested resource was found and is contained within the body of the HTTP response. |
401 Unauthorized | Authorization is required for this request, and either the Authorization header is missing or the supplied user credentials in the Authorization header are not valid or have expired. The body of the HTTP response will contain an OperationOutcome resource that indicates that Authorization is required. |
404 Not Found | The requested resource does not exist. The body of the HTTP response will contain an OperationOutcome resource that indicates that the resource could not be found. |
500 Server Error | The server may return other error codes to indicate other error conditions. The body of the HTTP response will contain an OperationOutcome resource that indicates the nature of the error. |
Search operations are executed as specified in the HL7 FHIR RESTful API implementation definition. To search for Location resources, an application shall perform an HTTP GET, specifying the query parameters associated with the resource.
GET [base]/fhir/Location?{search-parameters}{&_count=[max-results]&_format=[json|xml]&_summary=[true|text|data]}
Parameter | Description |
---|---|
[base] | Specifies the base URL of the FHIR Server, e.g., https://cpsapisandbox.virenceaz.com:9443/demoAPIServer |
[_count] | Specifies the maximum number of search results to return in a single query. Note: The count of results does not limit the number of additional resources returned via the _include parameter. No more than max-results Location resources which match the search criteria will be returned. The API Server has default and maximum limits for the value that can be specified for this parameter. These limits may vary depending upon the client application vendors participation level in the AthenaHealth Partner program. Note: The API Server support the HL7 FHIR Paging capability. |
[_format] | Specifies the format of the output and may be xml or json. When present, the _format value overrides the value of the Accept header in the request. |
[_summary] | Filters the output to include only narrative elements (_summary=text), summary elements (_summary=true) or to omit the generated narrative (_summary=data). Note: If the generated html narrative for the resource is not going to be used by the call, using _summary=data provides improved API response times, especially when returning larger result sets. |
_id (token ) | The ID of the resource |
_lastUpdated (date ) | |
_lastUpdated-fromnow (quantity ) | Like _lastUpdated except expressed as a positive or negative offset from the current time in units of time , e.g. _lastUpdated-fromnow=ge7||d for more than seven days in the future or =le-2||mo for less than two months in the past. The unit must be specified. |
address-city (string ) | A city specified in an address |
address-country (string ) | A country specified in an address |
address-postalcode (string ) | A postal code specified in an address |
address-state (string ) | A state specified in an address |
identifier (token ) | Unique code or number identifying the location to its users |
name (string ) | A (portion of the) name of the location |
organization (reference ) | Searches for locations that are managed by the provided organization |
partof (reference ) | The location of which this location is a part |
status (token ) | Searches for locations with a specific kind of status |
Response Code | Description |
---|---|
200 OK | The query was performed and any results found are contained within the body of the HTTP response. Note: The search API will return 200 OK when the query itself is successful, regardless of whether or not any matching results were found. |
401 Unauthorized | Authorization is required for this request, and either the Authorization header is missing or the supplied user credentials in the Authorization header are not valid or have expired. The body of the HTTP response will contain an OperationOutcome resource that indicates that Authorization is required. |
500 Server Error | The server may return other error codes to indicate other error conditions. The body of the HTTP response will contain an OperationOutcome resource that indicates the nature of the error. |
The official URL for this profile is:
http://hl7.org/fhir/StructureDefinition/location-profile
Details and position information for a physical place
Name | Flags | Card. | Type | Description & Constraints | |
---|---|---|---|---|---|
![]() ![]() | 0..* | Location | Details and position information for a physical place | ||
![]() ![]() ![]() | ∑ | 0..1 | Meta | Metadata about the resource | |
![]() ![]() ![]() | ?! ∑ | 0..1 | uri | A set of rules under which this content was created | |
![]() ![]() ![]() | 0..1 | code | Language of the resource content Binding: IETF BCP-47 ![]() | ||
![]() ![]() ![]() | I | 0..1 | Narrative | Text summary of the resource, for human interpretation | |
![]() ![]() ![]() | 0..* | Resource | Contained, inline Resources | ||
![]() ![]() ![]() | 0..* | Extension | Additional Content defined by implementations | ||
![]() ![]() ![]() | ?! | 0..* | Extension | Extensions that cannot be ignored | |
![]() ![]() ![]() | S ∑ | 0..* | Identifier | External ids for this item | |
![]() ![]() ![]() | ?! ∑ | 0..1 | code | active | suspended | inactive Binding: LocationStatus (required ) | |
![]() ![]() ![]() | ∑ | 0..1 | string | Name of the location as used by humans | |
![]() ![]() ![]() | ∑ | 0..1 | string | Description of the location | |
![]() ![]() ![]() | ?! ∑ | 0..1 | code | instance | kind Binding: LocationMode (required ) | |
![]() ![]() ![]() | ∑ | 0..1 | CodeableConcept | Type of function performed Binding: ServiceDeliveryLocationRoleType (extensible ) | |
![]() ![]() ![]() | ContactPoint | Contact details of the location Slice: Unordered, Closed, by type use | |||
![]() ![]() ![]() | 0..4 | ContactPoint | Contact details of the location | ||
![]() ![]() ![]() | 0..1 | ContactPoint | Contact details of the location | ||
![]() ![]() ![]() ![]() | 0..* | Extension | Additional Content defined by implementations | ||
![]() ![]() ![]() ![]() | ∑ I | 1..1 | code | phone | fax | email | pager | other Binding: ContactPointSystem (required ) Fixed Value: phone | |
![]() ![]() ![]() ![]() | ∑ | 1..1 | string | The actual contact point details | |
![]() ![]() ![]() ![]() | ?! ∑ | 0..1 | code | home | work | temp | old | mobile - purpose of this contact point Binding: ContactPointUse (required ) Fixed Value: work | |
![]() ![]() ![]() ![]() | ∑ | 0..1 | positiveInt | Specify preferred order of use (1 = highest) | |
![]() ![]() ![]() ![]() | ∑ | 0..1 | Period | Time period when the contact point was/is in use | |
![]() ![]() ![]() | 0..1 | ContactPoint | Contact details of the location | ||
![]() ![]() ![]() ![]() | 0..* | Extension | Additional Content defined by implementations | ||
![]() ![]() ![]() ![]() | ∑ I | 1..1 | code | phone | fax | email | pager | other Binding: ContactPointSystem (required ) Fixed Value: phone | |
![]() ![]() ![]() ![]() | ∑ | 1..1 | string | The actual contact point details | |
![]() ![]() ![]() ![]() | ?! ∑ | 0..1 | code | home | work | temp | old | mobile - purpose of this contact point Binding: ContactPointUse (required ) | |
![]() ![]() ![]() ![]() | ∑ | 0..1 | positiveInt | Specify preferred order of use (1 = highest) | |
![]() ![]() ![]() ![]() | ∑ | 0..1 | Period | Time period when the contact point was/is in use | |
![]() ![]() ![]() | 0..1 | ContactPoint | Contact details of the location | ||
![]() ![]() ![]() ![]() | 0..* | Extension | Additional Content defined by implementations | ||
![]() ![]() ![]() ![]() | ∑ I | 1..1 | code | phone | fax | email | pager | other Binding: ContactPointSystem (required ) Fixed Value: fax | |
![]() ![]() ![]() ![]() | ∑ | 1..1 | string | The actual contact point details | |
![]() ![]() ![]() ![]() | ?! ∑ | 0..1 | code | home | work | temp | old | mobile - purpose of this contact point Binding: ContactPointUse (required ) | |
![]() ![]() ![]() ![]() | ∑ | 0..1 | positiveInt | Specify preferred order of use (1 = highest) | |
![]() ![]() ![]() ![]() | ∑ | 0..1 | Period | Time period when the contact point was/is in use | |
![]() ![]() ![]() | 0..1 | ContactPoint | Contact details of the location | ||
![]() ![]() ![]() ![]() | 0..* | Extension | Additional Content defined by implementations | ||
![]() ![]() ![]() ![]() | ∑ I | 1..1 | code | phone | fax | email | pager | other Binding: ContactPointSystem (required ) Fixed Value: email | |
![]() ![]() ![]() ![]() | ∑ | 1..1 | string | The actual contact point details | |
![]() ![]() ![]() ![]() | ?! ∑ | 0..1 | code | home | work | temp | old | mobile - purpose of this contact point Binding: ContactPointUse (required ) | |
![]() ![]() ![]() ![]() | ∑ | 0..1 | positiveInt | Specify preferred order of use (1 = highest) | |
![]() ![]() ![]() ![]() | ∑ | 0..1 | Period | Time period when the contact point was/is in use | |
![]() ![]() ![]() | 0..1 | Address | Physical location | ||
![]() ![]() ![]() ![]() | 0..* | Extension | Additional Content defined by implementations | ||
![]() ![]() ![]() ![]() | ?! ∑ | 0..1 | code | home | work | temp | old - purpose of this address Binding: AddressUse (required ) Example: home | |
![]() ![]() ![]() ![]() | ∑ | 0..1 | code | postal | physical | both Binding: AddressType (required ) Example: both | |
![]() ![]() ![]() ![]() | ∑ | 0..1 | string | Text representation of the address Example: 137 Nowhere Street, Erewhon 9132 | |
![]() ![]() ![]() ![]() | ∑ | string | Street name, number, direction & P.O. Box etc. Slice: Ordered, Closed, by line Example: 137 Nowhere Street | ||
![]() ![]() ![]() ![]() | ∑ | 0..2 | string | Street name, number, direction & P.O. Box etc. Example: 137 Nowhere Street | |
![]() ![]() ![]() ![]() | ∑ | 0..1 | string | Street name, number, direction & P.O. Box etc. Example: 137 Nowhere Street | |
![]() ![]() ![]() ![]() | ∑ | 0..1 | string | Street name, number, direction & P.O. Box etc. Example: 137 Nowhere Street | |
![]() ![]() ![]() ![]() | ∑ | 0..1 | string | Name of city, town etc. Example: Erewhon | |
![]() ![]() ![]() ![]() | ∑ | 0..1 | string | District name (aka county) Example: Madison | |
![]() ![]() ![]() ![]() | ∑ | 0..1 | string | Sub-unit of country (abbreviations ok) | |
![]() ![]() ![]() ![]() | ∑ | 0..1 | string | Postal code for area Example: 9132 | |
![]() ![]() ![]() ![]() | ∑ | 0..1 | string | Country (can be ISO 3166 3 letter code) | |
![]() ![]() ![]() ![]() | ∑ | 0..1 | Period | Time period when address was/is in use Example: {"start":"2010-03-23","end":"2010-07-01"} | |
![]() ![]() ![]() | ∑ | 0..1 | CodeableConcept | Physical form of the location Binding: LocationType (example ) | |
![]() ![]() ![]() | 0..1 | BackboneElement | The absolute geographic location | ||
![]() ![]() ![]() ![]() | 0..* | Extension | Additional Content defined by implementations | ||
![]() ![]() ![]() ![]() | ?! | 0..* | Extension | Extensions that cannot be ignored | |
![]() ![]() ![]() ![]() | 1..1 | decimal | Longitude with WGS84 datum | ||
![]() ![]() ![]() ![]() | 1..1 | decimal | Latitude with WGS84 datum | ||
![]() ![]() ![]() ![]() | 0..1 | decimal | Altitude with WGS84 datum | ||
![]() ![]() ![]() | ∑ | 0..1 | Reference (Organization ) | Organization responsible for provisioning and upkeep | |
![]() ![]() ![]() | 0..1 | Reference (Location ) | Another Location this one is physically part of | ||
The mappings in this section represent the how data stored within athenaPractice is served through the product's APIs.
athenaPractice and athenaFlow share a common schema for patient clinical data and only one is shown when these are
the same. Use of this information is subject to the API Server
Terms and Conditions .
Location Profile | ||
Location | Location-Profile | FHIR_LOCATIONVIEW |
├ id | LOCID | MakeIdWithPrefix(%LOCID%,%ID_PREFIX%) |
├ identifier | External Location Identifier | MakeIdentifier("U",getSiteSystem("LocationId"),%LOCID%,%ID_PREFIX%) |
├ status | MapCode(%STATUS%,"LOCSTATUS") | |
├ name | %NAME% | |
├ description | %DESCRIPTION% | |
├ telecom | Phone Numbers | |
├ telecom | WORKPHONE | |
│ └ value | %PRIMPHONE% | |
├ telecom | ALTPHONE | |
│ └ value | %SECPHONE% | |
├ telecom | FAXPHONE | |
│ └ value | %FAXPHONE% | |
├ telecom | ||
│ ├ value | %EMAIL% | |
│ ├ line | Address Lines | |
│ ├ line | ADDRESS1 | %ADDRESS1% |
│ ├ line | ADDRESS2 | %ADDRESS2% |
│ ├ city | %CITY% | |
│ ├ state | %STATE% | |
│ ├ postalCode | %ZIP% | |
│ └ country | %COUNTRY% | |
├ managingOrganization | MakeReference("LOCREG",%FACILITYID%,"Organization") | |
└ partOf | MakeReference("LOCREG",%PARENTID%,"Location") |
The mappings in this section represent the how data stored within athenaFlow is served through the product's APIs.
Use of this information is subject to the API Server
Terms and Conditions .
Location Profile | ||
Location | Location-Profile | FHIR_LOCATIONVIEW |
├ id | LOCID | MakeId(%LOCID%) |
├ identifier | External Location Identifier | MakeIdentifier("U",getSiteSystem("LocationId"),%LOCID%) |
├ status | MapCode(%STATUS%,"LOCSTATUS") | |
├ name | %NAME% | |
├ description | %DESCRIPTION% | |
├ telecom | Phone Numbers | |
├ telecom | WORKPHONE | |
│ └ value | %PRIMPHONE% | |
├ telecom | ALTPHONE | |
│ └ value | %SECPHONE% | |
├ telecom | FAXPHONE | |
│ └ value | %FAXPHONE% | |
├ telecom | ||
│ ├ value | %EMAIL% | |
│ ├ line | Address Lines | |
│ ├ line | ADDRESS1 | %ADDRESS1% |
│ ├ line | ADDRESS2 | %ADDRESS2% |
│ ├ city | %CITY% | |
│ ├ state | %STATE% | |
│ ├ postalCode | %ZIP% | |
│ └ country | %COUNTRY% | |
├ managingOrganization | MakeReference("LOCREG",%ORGANIZATIONID%,"Organization") | |
└ partOf | MakeReference("LOCREG",%PARENTID%,"Location") |