free demo

Pub Hub 101


  • Location, provider, and registry enrollment
  • Message submission and status checking

Iron Bridge provides two ways to enroll providers, practices, and hospitals into Pub Hub for its Registry Clearinghouse services.  The first option is to utilize the Iron Bridge Portal located at (dev environment:  Through the Portal, customers can enroll their providers, practices, and hospitals for Registry submissions.
The second enrollment option for advanced customers is the Iron Bridge Clinical API. The API allows customers to integrate the Iron Bridge Registry enrollment process into their Electronic Health Record (EHR) or Health Information Technology (HIT) platforms.

The Iron Bridge Portal leverages the same Iron Bridge Clinical API that customers have access to.  The enrollment workflow through the Iron Bridge Portal mirrors the Iron Bridge enrollment API workflow.

Pub Hub Terminology

The Iron Bridge Pub Hub Platform has a few terms that are used across several API services that can be confusing without some background information. These terms/ values are all used to identify the final destination of your public health immunization, lab, cancer, or syndromic message submission:

bridgeway_id - Unique Pub Hub identifier for a practice in the Iron Bridge Pub Hub platform. The bridgeway_id is created for each unique practice and registry enrollment.

multi_identifier - This value is one or multiple practice_id's that represent one Practice. This is the default method to match Electronic Medical Record system enrollments in Pub Hub. The multi_identifier value should be the Electronic Medical Record's provided unique identifier. If the Electronic Medical Record vendor uses multiple practice_id's to represent one practice, the multi_identifier can be used to link multiple practice_id's to an enrollment.Using this parameter eliminates the need for an Electronic Medical Record to store the Pub Hub bridgeway_id. Electronic Medical Record vendors can simply send their practice_id's for submission and queries to ensure submissions and queries are sent to the correct practice enrollment.

*The below 2 terms are deprecated in our system. They are supported but are not recommended for new enrollments. Please use multi_identifier.*

practice_id  - Unique Electronic Medical Record Facility identifier provided by the Electronic Medical Record to differentiate between different practices or facilities.  This parameter has been deprecated and will no longer be used for new enrollments.  Please use multi_identifier.  

registry_practice_id - Unique practice or facility identifier provided by the State Registry. These values are typically called FacilityID or SiteID by the State Registries. This parameter has been deprecated and will no longer be used for new enrollments. Please use multi_identifier. Please use multi_identifier.  


Locations - Create Location

See oAuth2 for more information on authentication and authorization



Field Type Description
Authorization String Authorization Value
   "Authorization": "Bearer XXXXXXXXXXXXXXXXXXXXXXX"


Field Type Description
name String The name of the location. Size range: 1-255.
state String A two letter state abbreviation. (Size range: 0-2).
description Optional String The location's description. Size range: 1-255.
address1 Optional String The location's address. Size range: 1-255.
address2 Optional String A second address for the location. Size range: 1-255.
city Optional String The city where the location is found. Size range: 1-255.
zip Optional String The zip code of the location.
primary_id Optional String The primary way to identify the location.

Success 200

Field Type Description
location_id Number Unique identifier of the created location.
name String The name of the location created.
primary_id String The primary way to identify the created location.
HTTP/1.1 200 OK
 "location_id" : 1,
: "Example Location",
: "BX111111111"
curl -X POST \ \
 -H 'Authorization: Bearer <Your Token>' \
 -H 'Content-Type: application/json' \
 -d '{
         "name" : "Example Location",
         "state": "PA",
         "description": "description of Example Location",
         "address": "123 Test Road",
         "city": "Pittsburgh",
         "zip": "15213"

Error 500

Name Type Description
InternalServerError String Internal server Error try again later

Error 401

Name Type Description
Forbidden String Resource forbidden
HTTP/1.1 500 InternalServerError
 "error": "Location Create",
: "Unable to create location at this time"
HTTP/1.1 401 Unauthorized
 "error": "Unauthorized",
: "Not authorized to use this service: /api/locations"