{"revision":"c10276e953456835cdbb1f3a60d58ae1980be353","document":{"id":37485,"path":"order-management/external-connections.md","title":"Set up External connections for configuration rules","bundle":null,"doc_type":null,"release":"australia","body":"\n# Set up External connections for configuration rules\n\nExternal connections enable enrichments in CPQ to retrieve data from systems outside CPQ for use in configuration rules, such as fetching third-party pricing or product attributes during a configuration.\n\nEnrichments are scripts that run outside the rules engine and affect configurations in CPQ. The following enrichment types are available:\n\n-   On configure/reconfigure\n-   On BOM response\n-   Validation\n-   Picklist extension pricing\n-   On request\n\nExternal connections can only be called from an enrichment. When an enrichment calls an external connection, CPQ sends a request to the configured host and path, retrieves the response, and makes the data available to the enrichment script — for example, to populate pricing or product attributes in a configuration.\n\n## External connections and connections\n\nIn CPQ, external connections and connections provide the same capability: they define the host, authentication credentials, and path used when CPQ calls an external system. The difference is where each type is used:\n\n-   External connections are referenced in configuration rules, called from enrichment scripts that run during a configuration.\n-   Connections are referenced in transaction rules, called from integrations that run in ServiceNow Quote Experience.\n\nConfigure an external connection when the third-party call is triggered by a configuration event. Configure a connection when the call is triggered by a transaction event.\n\n## Authentication for external connections\n\nThe authentication method required depends on the external system. The following options are available:\n\n-   No authentication — use when the external connection calls an open API that does not require credentials.\n-   Bearer token — use when the external system issues a static token for authentication. Supply the token directly in the connection.\n-   OAuth client credentials — use when the external system requires an OAuth handshake. CPQ exchanges a client ID and secret with the authorization server to obtain an access token before each request.\n\n## Path parameter variables\n\nExternal connections support dynamic path segments using parameter variables. A parameter variable is a placeholder in the path that your enrichment script replaces with a runtime value. For example, a path defined as `/v4/latest/{{inputVariable}}` accepts a value for `inputVariable` from the calling enrichment script.\n\nWhen a path uses a parameter variable, wrap the value in `encodeURIComponent()` in your enrichment script to ensure the value is safe to include in a URL.\n\n**Related topics**  \n\n\n[Create an external connection](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/order-management/configure-external-connection.md)\n\n"}}