From ProviderSettings.schema.yaml (turing/ProviderSettings.schema
)
---
$id: https://skeleton.botmd.io/turing/ProviderSettings.schema
$schema: http://json-schema.org/draft-07/schema#
title: Provider Settings
description: >-
These settings are used for Turing `Provider`s in Chatterbox.
type: object
additionalProperties: false
required: []
properties:
turing:
title: Turing
description: Turing specific settings.
type: object
additionalProperties: false
required: []
properties:
module:
title: Module
description: The default module for synonym sets in this provider. This is used when the source does not provide a default module.
type: string
minLength: 1
provider:
title: Synonym Module Provider
description: The provider key of the module (or a list of providers). If specified, then the synonyms will only apply to the specific provider of the module instead of the whole module. (eg, module=chernobyl, provider=ktph-documents)
anyOf:
- type: string
minLength: 1
- type: array
items:
type': string
minLength: 1
type:
title: Type
description: The default type for synonym sets in this provider. This is used when the source does not provide a default type.
type: string
minLength: 1
use_record_id_as_canonical:
title: Use Record ID As Canonical
description: Defaults to `false`. When `true`, an additional synonym pair will be created between the `record_id` (of tabular interfaces) and the `canonical` phrase. This is useful when dealing with Airtable linked fields because it saves one extra step of loading the related tables.
type: boolean
#end properties
#end turing
hospitals:
title: Hospitals
description: Array of `Hospital` keys that will have access to dialogues returned by this Provider. Defaults to allow any hospital if not specified. Empty array (i.e., `[]`) will deny all access.
type: array
uniqueItems: true
items:
- $ref: "/hospital/ProfileTags.schema#/definitions/Organization Keys"
#end items
#end hospitals
tags:
title: Tags
description: Array of profile `tag`s that will have access to dialogues returned by this Provider. Defaults to allow any tag if not specified. Empty array (i.e., `[]`) will deny all access.
type: array
uniqueItems: true
items:
anyOf:
- $ref: "/hospital/ProfileTags.schema#/definitions/Accessible Tags"
- $ref: "/hospital/ProfileTags.schema#/definitions/Bot MD Tags"
- $ref: "/hospital/ProfileTags.schema#/definitions/Organization Keys"
- $ref: "/hospital/ProfileTags.schema#/definitions/Department Tags"
#end anyOf
#end items
#end tags
airtable:
title: Airtable
description: Settings for getting synonyms using `scalpel.externals.Airtable`.
$ref: "/scalpel/TabularInterfaceSettings.schema#/definitions/TabularInterface"
#end airtable
gsheets:
title: Google Sheet
description: Settings for getting synonyms using `scalpel.externals.GoogleSheets`.
$ref: "/scalpel/TabularInterfaceSettings.schema#/definitions/TabularInterface"
#end gsheets
csv:
title: CSV
description: Settings for getting synonyms using `scalpel.externals.TabularCSV`.
$ref: "/scalpel/TabularInterfaceSettings.schema#/definitions/TabularInterface"
#end csv
excel:
title: Excel
description: Settings for getting synonyms using `scalpel.externals.TabularCSV`.
$ref: "/scalpel/TabularInterfaceSettings.schema#/definitions/TabularInterface"
#end excel
einstein:
title: Einstein Data Source
description: Settings for getting synonyms using an Einstein data source.
type: object
required: [data_source_uid]
properties:
data_source_uid:
title: Einstein Data Source UID
description: UID of the Einstein data source
type: string
minLength: 1
#end einstein
#end properties