Skip to main content

external connection doctor

Checks if the external connection is correctly configured for use with a specified user experience in Microsoft 365

Usage

m365 external connection doctor [options]

Options

-i, --id <id>

The ID of the external connection to check.

--ux [ux]

Microsoft 365 experience for which to check compatibility. Allowed values copilot, search, all (default)

-h, --help [help]

Output usage information. Optionally, specify which section of command's help you want to see. Allowed values are options, examples, remarks, response, full. Default is options.

--query [query]

JMESPath query string. See http://jmespath.org/ for more information and examples.

-o, --output [output]

Output type. json, text, csv, md, none. Default json.

--verbose

Runs command with verbose logging.

--debug

Runs command with debug logging.

Remarks

The external connection doctor command runs several automated checks to verify if an external connection is correctly configured for use with a user experience in Microsoft 365.

CheckIDUXTypeDescription
Required semantic labelscopilotRequiredSemanticLabelsCopilotRequiredChecks if the external connection schema has the required semantic labels configured: title, url and iconUrl
Searchable propertiesCopilotsearchablePropertiesRequiredChecks if the external connection schema has at least one searchable property
Items have content ingestedcontentIngestedCopilotRequiredChecks if external items have content ingested
Connection configured for inline resultsenabledForInlineResultsCopilotRequired (manual)Check if the external connection is configured for inline results
Items have activities recordeditemsHaveActivitiesCopilotRecommended (manual)Check if external items have activities recorded
Meaningful connection name and descriptionmeaningfulNameAndDescriptionCopilotRequired (manual)Check if the external connection has a meaningful name and description
Semantic labelssemanticLabelsSearchRecommendedChecks if the external connection schema uses semantic labels
Searchable propertiessearchablePropertiesSearchRecommendedChecks if the external connection schema has at least one searchable property
Result typesresultTypeSearchRecommendedChecks if the external connection has a result type configured
Items have content ingestedcontentIngestedSearchRecommendedChecks if external items have content ingested
Items have activities recordeditemsHaveActivitiesSearchRecommendedCheck if external items have activities recorded
urlToItemResolver configuredurlToItemResolverAllRecommendedChecks if the external connection has at least one urlToItemResolver configured

Required checks must pass for the external connection to be compatible with the specified user experience. Recommended checks are optional, but recommended for optimal user experience.

Some checks must be done manually, because there are no APIs available to verify the configuration automatically.

When you check the compatibility with all UXs, and there are multiple checks with the same ID, the command will use the first matching check, following the order listed above.

Examples

Checks if the external connection with the specified ID is correctly configured for use with Copilot for Microsoft 365.

m365 external connection doctor --id contosoproducts --ux copilot

Response

[
{
"id": "loadExternalConnection",
"text": "Load connection",
"type": "required",
"status": "passed"
},
{
"id": "loadSchema",
"text": "Load schema",
"type": "required",
"status": "passed"
},
{
"id": "copilotRequiredSemanticLabels",
"text": "Required semantic labels",
"type": "required",
"errorMessage": "Missing label iconUrl",
"status": "failed"
},
{
"id": "searchableProperties",
"text": "Searchable properties",
"type": "required",
"status": "passed"
},
{
"id": "contentIngested",
"text": "Items have content ingested",
"type": "required",
"status": "passed"
},
{
"id": "enabledForInlineResults",
"text": "Connection configured for inline results",
"type": "required",
"status": "manual"
},
{
"id": "itemsHaveActivities",
"text": "Items have activities recorded",
"type": "recommended",
"status": "manual"
},
{
"id": "meaningfulNameAndDescription",
"text": "Meaningful connection name and description",
"type": "required",
"status": "manual"
},
{
"id": "urlToItemResolver",
"text": "urlToItemResolver configured",
"type": "recommended",
"status": "passed"
}
]

More information

CTRL + M