project.json•18.7 kB
{
"name": "Project",
"location": "medplum",
"description": "Encapsulation of resources for a specific project or organization.",
"properties": [
{
"name": "Project",
"depth": 0,
"types": [
{
"datatype": ""
}
],
"path": "Project",
"min": 0,
"max": "*",
"short": "Encapsulation of resources for a specific project or organization.",
"definition": "Encapsulation of resources for a specific project or organization.",
"comment": "",
"inherited": false
},
{
"name": "id",
"depth": 1,
"types": [
{
"datatype": "string"
}
],
"path": "Project.id",
"min": 0,
"max": "1",
"short": "Logical id of this artifact",
"definition": "The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.",
"comment": "",
"inherited": true,
"base": "Resource"
},
{
"name": "meta",
"depth": 1,
"types": [
{
"datatype": "Meta",
"documentLocation": "datatype"
}
],
"path": "Project.meta",
"min": 0,
"max": "1",
"short": "",
"definition": "The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.",
"comment": "",
"inherited": true,
"base": "Resource"
},
{
"name": "implicitRules",
"depth": 1,
"types": [
{
"datatype": "uri"
}
],
"path": "Project.implicitRules",
"min": 0,
"max": "1",
"short": "",
"definition": "A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.",
"comment": "",
"inherited": true,
"base": "Resource"
},
{
"name": "language",
"depth": 1,
"types": [
{
"datatype": "code"
}
],
"path": "Project.language",
"min": 0,
"max": "1",
"short": "",
"definition": "The base language in which the resource is written.",
"comment": "",
"inherited": true,
"base": "Resource"
},
{
"name": "text",
"depth": 1,
"types": [
{
"datatype": "Narrative",
"documentLocation": "datatype"
}
],
"path": "Project.text",
"min": 0,
"max": "1",
"short": "Text summary of the resource, for human interpretation",
"definition": "A human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it \"clinically safe\" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.",
"comment": "",
"inherited": true,
"base": "DomainResource"
},
{
"name": "contained",
"depth": 1,
"types": [
{
"datatype": "Resource"
}
],
"path": "Project.contained",
"min": 0,
"max": "*",
"short": "Contained, inline Resources",
"definition": "These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.",
"comment": "",
"inherited": true,
"base": "DomainResource"
},
{
"name": "extension",
"depth": 1,
"types": [
{
"datatype": "Extension",
"documentLocation": "datatype"
}
],
"path": "Project.extension",
"min": 0,
"max": "*",
"short": "Additional content defined by implementations",
"definition": "May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
"comment": "",
"inherited": true,
"base": "DomainResource"
},
{
"name": "modifierExtension",
"depth": 1,
"types": [
{
"datatype": "Extension",
"documentLocation": "datatype"
}
],
"path": "Project.modifierExtension",
"min": 0,
"max": "*",
"short": "Extensions that cannot be ignored",
"definition": "May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.\n\nModifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).",
"comment": "",
"inherited": true,
"base": "DomainResource"
},
{
"name": "identifier",
"depth": 1,
"types": [
{
"datatype": "Identifier",
"documentLocation": "datatype"
}
],
"path": "Project.identifier",
"min": 0,
"max": "*",
"short": "An identifier for this project",
"definition": "An identifier for this project.",
"comment": "",
"inherited": false
},
{
"name": "name",
"depth": 1,
"types": [
{
"datatype": "string"
}
],
"path": "Project.name",
"min": 0,
"max": "1",
"short": "",
"definition": "A name associated with the Project.",
"comment": "",
"inherited": false
},
{
"name": "description",
"depth": 1,
"types": [
{
"datatype": "string"
}
],
"path": "Project.description",
"min": 0,
"max": "1",
"short": "",
"definition": "A summary, characterization or explanation of the Project.",
"comment": "",
"inherited": false
},
{
"name": "superAdmin",
"depth": 1,
"types": [
{
"datatype": "boolean"
}
],
"path": "Project.superAdmin",
"min": 0,
"max": "1",
"short": "Whether this project is the super administrator project.",
"definition": "Whether this project is the super administrator project. A super administrator is a user who has complete access to all resources in all projects.",
"comment": "",
"inherited": false
},
{
"name": "strictMode",
"depth": 1,
"types": [
{
"datatype": "boolean"
}
],
"path": "Project.strictMode",
"min": 0,
"max": "1",
"short": "Whether this project uses strict FHIR validation.",
"definition": "Whether this project uses strict FHIR validation. This setting has been deprecated, and can only be set by a super admin.",
"comment": "",
"inherited": false
},
{
"name": "checkReferencesOnWrite",
"depth": 1,
"types": [
{
"datatype": "boolean"
}
],
"path": "Project.checkReferencesOnWrite",
"min": 0,
"max": "1",
"short": "Whether this project uses referential integrity on write operations such as 'create' and 'update'.",
"definition": "Whether this project uses referential integrity on write operations such as 'create' and 'update'.",
"comment": "",
"inherited": false
},
{
"name": "owner",
"depth": 1,
"types": [
{
"datatype": "Reference",
"documentLocation": "datatype"
}
],
"referenceTypes": [
{
"datatype": "User",
"documentLocation": "medplum"
}
],
"path": "Project.owner",
"min": 0,
"max": "1",
"short": "",
"definition": "The user who owns the project.",
"comment": "",
"inherited": false
},
{
"name": "features",
"depth": 1,
"types": [
{
"datatype": "code"
}
],
"path": "Project.features",
"min": 0,
"max": "*",
"short": "",
"definition": "A list of optional features that are enabled for the project.",
"comment": "",
"inherited": false
},
{
"name": "defaultPatientAccessPolicy",
"depth": 1,
"types": [
{
"datatype": "Reference",
"documentLocation": "datatype"
}
],
"referenceTypes": [
{
"datatype": "AccessPolicy",
"documentLocation": "medplum"
}
],
"path": "Project.defaultPatientAccessPolicy",
"min": 0,
"max": "1",
"short": "",
"definition": "The default access policy for patients using open registration.",
"comment": "",
"inherited": false
},
{
"name": "setting",
"depth": 1,
"types": [
{
"datatype": "BackboneElement"
}
],
"path": "Project.setting",
"min": 0,
"max": "*",
"short": "",
"definition": "Option or parameter that can be adjusted within the Medplum Project to customize its behavior.",
"comment": "",
"inherited": false
},
{
"name": "name",
"depth": 2,
"types": [
{
"datatype": "string"
}
],
"path": "Project.setting.name",
"min": 1,
"max": "1",
"short": "",
"definition": "The secret name.",
"comment": "",
"inherited": false
},
{
"name": "value[x]",
"depth": 2,
"types": [
{
"datatype": "string"
},
{
"datatype": "boolean"
},
{
"datatype": "decimal"
},
{
"datatype": "integer"
}
],
"path": "Project.setting.value[x]",
"min": 1,
"max": "1",
"short": "",
"definition": "The secret value.",
"comment": "",
"inherited": false
},
{
"name": "secret",
"depth": 1,
"types": [
{
"datatype": ""
}
],
"path": "Project.secret",
"min": 0,
"max": "*",
"short": "",
"definition": "Option or parameter that can be adjusted within the Medplum Project to customize its behavior, only visible to project administrators.",
"comment": "",
"inherited": false
},
{
"name": "systemSetting",
"depth": 1,
"types": [
{
"datatype": ""
}
],
"path": "Project.systemSetting",
"min": 0,
"max": "*",
"short": "",
"definition": "Option or parameter that can be adjusted within the Medplum Project to customize its behavior, only modifiable by system administrators.",
"comment": "",
"inherited": false
},
{
"name": "systemSecret",
"depth": 1,
"types": [
{
"datatype": ""
}
],
"path": "Project.systemSecret",
"min": 0,
"max": "*",
"short": "",
"definition": "Option or parameter that can be adjusted within the Medplum Project to customize its behavior, only visible to system administrators.",
"comment": "",
"inherited": false
},
{
"name": "site",
"depth": 1,
"types": [
{
"datatype": "BackboneElement"
}
],
"path": "Project.site",
"min": 0,
"max": "*",
"short": "",
"definition": "Web application or web site that is associated with the project.",
"comment": "",
"inherited": false
},
{
"name": "name",
"depth": 2,
"types": [
{
"datatype": "string"
}
],
"path": "Project.site.name",
"min": 1,
"max": "1",
"short": "",
"definition": "Friendly name that will make it easy for you to identify the site in the future.",
"comment": "",
"inherited": false
},
{
"name": "domain",
"depth": 2,
"types": [
{
"datatype": "string"
}
],
"path": "Project.site.domain",
"min": 1,
"max": "*",
"short": "",
"definition": "The list of domain names associated with the site. User authentication will be restricted to the domains you enter here, plus any subdomains. In other words, a registration for example.com also registers subdomain.example.com. A valid domain requires a host and must not include any path, port, query or fragment.",
"comment": "",
"inherited": false
},
{
"name": "googleClientId",
"depth": 2,
"types": [
{
"datatype": "string"
}
],
"path": "Project.site.googleClientId",
"min": 0,
"max": "1",
"short": "",
"definition": "The publicly visible Google Client ID for the site. This is used to authenticate users with Google. This value is available in the Google Developer Console.",
"comment": "",
"inherited": false
},
{
"name": "googleClientSecret",
"depth": 2,
"types": [
{
"datatype": "string"
}
],
"path": "Project.site.googleClientSecret",
"min": 0,
"max": "1",
"short": "",
"definition": "The private Google Client Secret for the site. This value is available in the Google Developer Console.",
"comment": "",
"inherited": false
},
{
"name": "recaptchaSiteKey",
"depth": 2,
"types": [
{
"datatype": "string"
}
],
"path": "Project.site.recaptchaSiteKey",
"min": 0,
"max": "1",
"short": "",
"definition": "The publicly visible reCAPTCHA site key. This value is generated when you create a new reCAPTCHA site in the reCAPTCHA admin console. Use this site key in the HTML code your site serves to users.",
"comment": "",
"inherited": false
},
{
"name": "recaptchaSecretKey",
"depth": 2,
"types": [
{
"datatype": "string"
}
],
"path": "Project.site.recaptchaSecretKey",
"min": 0,
"max": "1",
"short": "",
"definition": "The private reCAPTCHA secret key. This value is generated when you create a new reCAPTCHA site in the reCAPTCHA admin console. Use this secret key for communication between your site and reCAPTCHA.",
"comment": "",
"inherited": false
},
{
"name": "link",
"depth": 1,
"types": [
{
"datatype": "BackboneElement"
}
],
"path": "Project.link",
"min": 0,
"max": "*",
"short": "",
"definition": "Linked Projects whose contents are made available to this one",
"comment": "",
"inherited": false
},
{
"name": "project",
"depth": 2,
"types": [
{
"datatype": "Reference",
"documentLocation": "datatype"
}
],
"referenceTypes": [],
"path": "Project.link.project",
"min": 1,
"max": "1",
"short": "",
"definition": "A reference to the Project to be linked into this one",
"comment": "",
"inherited": false
},
{
"name": "defaultProfile",
"depth": 1,
"types": [
{
"datatype": "BackboneElement"
}
],
"path": "Project.defaultProfile",
"min": 0,
"max": "*",
"short": "",
"definition": "Default profiles to apply to resources in this project that do not individually specify profiles",
"comment": "",
"inherited": false
},
{
"name": "resourceType",
"depth": 2,
"types": [
{
"datatype": "code"
}
],
"path": "Project.defaultProfile.resourceType",
"min": 1,
"max": "1",
"short": "",
"definition": "The resource type onto which to apply the default profiles",
"comment": "",
"inherited": false
},
{
"name": "profile",
"depth": 2,
"types": [
{
"datatype": "canonical"
}
],
"path": "Project.defaultProfile.profile",
"min": 1,
"max": "*",
"short": "",
"definition": "The profiles to add by default",
"comment": "",
"inherited": false
},
{
"name": "exportedResourceType",
"depth": 1,
"types": [
{
"datatype": "code"
}
],
"path": "Project.exportedResourceType",
"min": 0,
"max": "*",
"short": "",
"definition": "The resource types exported by the project when linked",
"comment": "",
"inherited": false
}
],
"searchParameters": [
{
"name": "identifier",
"type": "token",
"description": "The identifier of the project",
"expression": "Project.identifier"
},
{
"name": "name",
"type": "string",
"description": "The name of the project",
"expression": "Project.name"
},
{
"name": "owner",
"type": "reference",
"description": "The user who owns the project",
"expression": "Project.owner"
},
{
"name": "google-client-id",
"type": "token",
"description": "The Google Client ID of the project",
"expression": "Project.site.googleClientId"
},
{
"name": "recaptcha-site-key",
"type": "token",
"description": "The reCAPTCHA site key of the project",
"expression": "Project.site.recaptchaSiteKey"
}
]
}