ZapEHR is now Oystehr! For more information please read more here
Core Documentation
Resources

Reources

Resources describe the type and scope of data being acted on.

Examples:

  • * — All resources
  • FHIR:* — All FHIR resources
  • FHIR:Patient:* — All FHIR Patient resources
  • FHIR:Patient:ac3bfe9b-50bd-4559-b844-314fba9dff1e — Specific FHIR Patient resource

Resource identifier format

Every resource in Oystehr, with the exception of Z3, has an ID and type. All resources' types are grouped into services.

Resource identifiers have the format service:resource_type:resource_id. Each can use a wildcard * or be omitted in order to specify all values; however, a wildcard cannot be followed by a specific resource type or ID.

For example:

* or *:* or *:*:* — any resource in any service.

FHIR or FHIR:* or FHIR:*:* — any resource in the FHIR service.

Zambda:Secret or Zambda:Secret:* — any Secret in the Zambda service.

Resources in Oystehr

ServiceResource TypeResource Id patternIs Default Resource Type
AppApplicationApp:Application:${uuid}
AppUserApp:User:${uuid}
FHIR{FhirResource}FHIR:{FhirResource}:${uuid}
IAMM2MClientIAM:M2MClient:${uuid}
IAMDeveloperIAM:Developer:${uuid}
IAMRoleIAM:Role:${uuid}
MessagingTransactionalSMSMessaging:TransactionalSMS
MessagingConversationMessaging:Conversation
ProjectSettingsProject:Settings
RCMClaimRCM:Claim
RCMInsuranceEligibilityRCM:InsuranceEligibility
TelemedRoomTelemed:Room
Z3PathZ3:${path}TRUE
ZambdaFunctionZambda:Function:${uuidOrName}
ZambdaSecretZambda:Secret:${name}

Z3:Path

Z3:Path is unique in that it encompasses three types of underlying resources corresponding to levels in Z3 storage space: buckets, folders within buckets, and objects. The relationship between these resources allows them to be consolidated to a single resource type in Oystehr, which we call a "Path".

Using a Path we might reference...

  • Z3:* — All buckets
  • Z3:SomeBucketName — A particular bucket
  • Z3:SomeBucketName/* — All folders and objects within a bucket
  • Z3:SomeOtherBucketName/SomeSubfolder/SomeDeeperSubfolder — A particular subfolder in a particular bucket
  • Z3:SomeOtherBucketName/SomeSubfolder/SomeDeeperSubfolder/* — All objects and subfolders within a folder
  • Z3:AnotherBucketName/SomeSubfolder/SomeDeeperSubfolder/MyJson.json — One specific object in a bucket

When you craft a rule targeting a Z3 Path, Oystehr will parse the expression to determine whether it refers to a bucket, folder, or object. Keep in mind that some Z3 actions must target a bucket, while some others must target an obje