Artifact Registry Overview
Comprehensive overview of Aidbox Artifact Registry for storing and managing FHIR canonical resources and packages
FHIR Artifact Registry (FAR) is Aidbox's centralized system for storing, managing, and resolving FHIR canonical resources and packages. It serves as the foundation for FHIR validation, profiling, and terminology operations by providing a unified repository for CodeSystems, ValueSets, StructureDefinitions, and SearchParameters. This overview explains how the registry works, its integration with external FHIR package sources, and the versioning strategies used to ensure consistent canonical resource resolution across your FHIR implementation.
What is Artifact Registry
The Artifact Registry is a specialized repository within Aidbox that manages FHIR canonical resources - resources that define the structure, constraints, and terminology used in FHIR implementations. These canonical resources include CodeSystems for defining terminologies, ValueSets for grouping codes, StructureDefinitions for profiling resources, and SearchParameters for custom search capabilities. The registry acts as the authoritative source for these definitions, ensuring consistent validation and data exchange across your FHIR ecosystem.
Canonical resources are stored in a dedicated database schema called far
(FHIR Artifact Registry) within your Aidbox instance. The registry automatically initializes during Aidbox startup using the BOX_BOOTSTRAP_FHIR_PACKAGES
configuration, which typically includes core FHIR packages like hl7.fhir.r4.core#4.0.1
.
Access Methods
The Artifact Registry provides several ways to interact with canonical resources, designed to accommodate different use cases and user preferences. You can access registry contents programmatically through standard FHIR REST APIs or manage packages visually through Aidbox's web interface.
REST APIs
Canonical resources are accessible through standard FHIR REST endpoints following the FHIR HTTP API specification. You can create, query, retrieve, and search canonical resources using familiar FHIR operations:
/fhir/CodeSystem
- Access code system definitions/fhir/ValueSet
- Retrieve value set definitions/fhir/StructureDefinition
- Manage profiles (including custom resources) and extensions/fhir/SearchParameter
- Manage custom search parameters
Web Interface
Aidbox provides a web-based interface for package management operations. Through this UI, you can import FHIR packages from external registries, view installed packages and their contents, and delete packages when no longer needed.

Registry Scope and Limitations
The current implementation of the Artifact Registry focuses on four core types of canonical resources: CodeSystem, ValueSet, StructureDefinition, and SearchParameter. These resource types cover the most common use cases for FHIR validation and profiling. Other FHIR canonical resource types like ConceptMap, NamingSystem, or ImplementationGuide are not currently stored in the registry but may be added in future releases based on user requirements.
See also:
Upload FHIR Implementation GuideDefine extensionsCustom ResourcesPackage Management
FHIR packages are collections of canonical resources bundled together with their dependencies, following a standardized format for distribution and versioning. In the context of the Artifact Registry, packages serve as the primary mechanism for importing and organizing canonical resources. Each package includes metadata about its contents, dependencies on other packages, and version information following semantic versioning principles.
The registry automatically loads all package dependencies when you import a package.
Integration with Package Registries
The Artifact Registry integrates with the Health Samurai FHIR package registry, which synchronizes with the official FHIR packages repository. This integration allows you to import packages from a curated collection stored in the public fhir-schema-registry
bucket.
The feature of loading packages from url allows you to import packages from any FHIR package registry, e.g. Simplifier.
See also:
Public URL to IG PackageVersioning Strategy
When canonical resources reference other canonical resources, they can include specific version information in the canonical URL using the pipe syntax (e.g., http://example.com/StructureDefinition/Patient|1.0.0
). If a canonical reference includes a specific version, the registry respects that exact version. However, when no version is specified in the reference, the registry uses a "latest version" resolution strategy, automatically selecting the most recent version of the referenced canonical resource available in the system.
Last updated
Was this helpful?