---
title: "ServiceProviderRequest class"
slug: "serviceproviderrequest-class"
abstract: ""
---
# ServiceProviderRequest class

The following table describes the properties of the `ServiceProviderRequest` class:

| **Name** | **Description** |
| --- | --- |
| **AuthenticationToken** | Automatically populated by the framework on every call, but you can explicitly set it on every call if needed, which overrides the automatic setting. See [the `AuthenticationTokenProvider` class](https://doc.sitecore.com/xp/en/developers/103/sitecore-experience-commerce/authenticationtokenprovider-class.html). |
| **CurrencyCode** | Automatically populated by the framework on every call, but you can explicitly set it on every call if needed, which overrides the automatic setting. See [`RequestCurrencyProvider`](https://doc.sitecore.com/xp/en/developers/103/sitecore-experience-commerce/requestcurrencyprovider-class.html). |
| **Properties** | Key/value property collection. You can use it as an extensibility method for passing extra request parameters to the Connect service layer. If these are required, they are defined by the ECS implementation.<br><br>> [!note]<br>> It is best practice to use strongly typed parameters by extending the `ServiceProviderRequest` parameter on every call as opposed to using the weakly typed approach of using the Properties collection. |
| **RequestContext** | Allows you to pass in additional request context that might be required by an ECS specific implementation. It also serves as a means for processors to exchange information between them without affecting the original request. The `RequestContext` is passed along to each processor and any additional pipeline that might be called along the way.<br><br>An example of how to use the `RequestContext` parameter is provided later in this document. |
| **SelectedUICulture** | Automatically populated on each call with the currently selected Sitecore language name. |
| **Shop** | Automatically populated by the framework on every call, but you can explicitly set it on each call if needed, which overrides the automatic setting. See [the shop provider](https://doc.sitecore.com/xp/en/developers/103/sitecore-experience-commerce/shop-provider.html). |