Skip to main content
GET
/
metadata
Get Capability Statement
curl --request GET \
  --url http://localhost:8080/fhir/metadata \
  --header 'Authorization: Bearer <token>'
{
  "resourceType": "CapabilityStatement",
  "status": "draft",
  "date": "2023-11-07T05:31:56Z",
  "kind": "instance",
  "software": {
    "name": "<string>",
    "version": "<string>"
  },
  "fhirVersion": "<string>",
  "format": [
    "<string>"
  ],
  "rest": [
    {}
  ]
}

Capability Statement

Retrieve the server’s capability statement, which describes the server’s capabilities, supported resources, search parameters, and operations.

Endpoint

GET /fhir/metadata

Example Request

curl -H "Accept: application/fhir+json" \
     https://your-server.com/fhir/metadata

Response

Success (200 OK)

Returns a CapabilityStatement resource:
{
  "resourceType": "CapabilityStatement",
  "status": "active",
  "date": "2024-01-01T12:00:00Z",
  "kind": "instance",
  "software": {
    "name": "TLQ FHIR",
    "version": "1.0.0"
  },
  "implementation": {
    "url": "https://your-server.com/fhir",
    "description": "TLQ FHIR Implementation"
  },
  "fhirVersion": "4.0.1",
  "format": [
    "application/fhir+json",
    "application/fhir+xml"
  ],
  "rest": [
    {
      "mode": "server",
      "resource": [
        {
          "type": "Patient",
          "interaction": [
            {
              "code": "read"
            },
            {
              "code": "vread"
            },
            {
              "code": "update"
            },
            {
              "code": "patch"
            },
            {
              "code": "delete"
            },
            {
              "code": "history-instance"
            },
            {
              "code": "history-type"
            },
            {
              "code": "create"
            },
            {
              "code": "search-type"
            }
          ],
          "searchParam": [
            {
              "name": "name",
              "type": "string",
              "documentation": "A server defined search that may match any of the string fields in the HumanName, including family, given, prefix, suffix, and/or text"
            },
            {
              "name": "identifier",
              "type": "token",
              "documentation": "A patient identifier"
            }
          ]
        }
      ]
    }
  ]
}

Capability Statement Structure

The capability statement includes:

Software Information

  • software.name - Server name
  • software.version - Server version
  • software.releaseDate - Release date

Implementation Details

  • implementation.url - Base URL
  • implementation.description - Implementation description

Supported Formats

  • format - List of supported content types (JSON, XML, etc.)

REST Capabilities

  • rest.mode - Server mode (server or client)
  • rest.resource - List of supported resources

Resource Capabilities

For each resource type:
  • type - Resource type name
  • interaction - Supported interactions (read, create, update, delete, search, etc.)
  • searchParam - Supported search parameters
  • operation - Supported operations
  • versioning - Versioning support (versioned, versioned-update, no-version, versioned)
  • readHistory - Whether history is supported
  • updateCreate - Whether updates can create resources
  • conditionalCreate - Whether conditional create is supported
  • conditionalUpdate - Whether conditional update is supported
  • conditionalDelete - Whether conditional delete is supported

Operations

  • rest.operation - System-level operations
  • rest.resource[].operation - Resource-specific operations

Use Cases

Use the capability statement to:
  • Discover which resources are supported
  • Learn which search parameters are available
  • Check which operations are supported
  • Determine versioning behavior
  • Understand server capabilities before making requests

Notes

  • The capability statement is always available at /fhir/metadata
  • It reflects the current server configuration
  • Use it to build dynamic clients that adapt to server capabilities
  • The statement may change as the server is updated or configured

Authorizations

Authorization
string
header
required

Bearer token authentication

Response

Capability statement

A Capability Statement documents a set of capabilities (behaviors) of a FHIR Server

resourceType
enum<string>
required
Available options:
CapabilityStatement
status
enum<string>
Available options:
draft,
active,
retired,
unknown
date
string<date-time>
kind
enum<string>
Available options:
instance,
capability,
requirements
software
object
fhirVersion
string
format
string[]
rest
object[]