
Distinguish available integrations from reserved names
A name in a capability or protocol vocabulary is not always an executable integration. Reserved entries make that distinction explicit while the available modules describe what can actually be used.
Check for a provider implementation and its runtime contract before planning around a named integration type.
Example — Read a protocol name accurately
Audio and video generation have reserved protocol names. Their presence in the vocabulary does not supply a callable backend provider or a delivery date.
For engineers
The backend runtime-kind object defines the executable protocol arms:
Selected from commons.external-connectors-models.schemas.ts; surrounding declarations and imports are omitted.
export const ProviderProtocolRuntimeKind = Object.freeze({
LLM: ExternalProvider_ExchangeProtocol_Kind.LLM_PROVIDER,
IMAGE: ExternalProvider_ExchangeProtocol_Kind.IMAGE_PROVIDER,
EMBEDDINGS: ExternalProvider_ExchangeProtocol_Kind.EMBEDDINGS_PROVIDER,
DOCUMENT_EXTRACTION: ExternalProvider_ExchangeProtocol_Kind.DOCUMENT_EXTRACTION_PROVIDER,
AGENT_CLIENT_PROTOCOL: ExternalProvider_ExchangeProtocol_Kind.AGENT_CLIENT_PROTOCOL,
EMAIL: ExternalProvider_ExchangeProtocol_Kind.EMAIL_PROVIDER,
OAUTH2_SSO: ExternalProvider_ExchangeProtocol_Kind.SSO_OAUTH2,
BILLING: ExternalProvider_ExchangeProtocol_Kind.BILLING_PROVIDER,
WEBHOOK_ORIGINATOR: ExternalProvider_ExchangeProtocol_Kind.WEBHOOK_ORIGINATOR,
SMS: ExternalProvider_ExchangeProtocol_Kind.SMS_PROVIDER,
REST: ExternalProvider_ExchangeProtocol_Kind.REST_API,
} as const);
Audio and video names remain in the broader exchange vocabulary but do not appear in this runtime subset. A declaration cannot obtain an executable implementation merely by selecting their names.
The provider-side SSO_SAML capability is also reserved. SAML authentication itself exists through the engine’s authentication subsystem, so the reserved provider name must not be presented as absence of SAML login.
Separate reservation from withdrawal
The former BILLING_PAYMENTS engine slot was withdrawn. Billing uses its supported mapping and runtime contract; the removed slot is not an option to enable. Document generation and scanning also have their own implementation paths rather than unfillable provider-selection entries.
| What exists | What an application may conclude |
|---|---|
| A named capability | The vocabulary recognizes the concept |
| A module claiming it | There is a provider declaration to inspect |
| An executable runtime contract | There is a defined invocation path |
| Configured credentials and a verified exchange | The intended deployment can perform that action |
When adding a provider, supply the implementation and the capability/protocol mapping that makes it reachable. Do not reintroduce a removed engine slot solely to make the catalogue appear broader. These reserved entries describe vocabulary boundaries, not a release roadmap.