# Available services

These services are already defined and implemented in the Caplin Libraries.

Click on a service name to see details further down this page, or click on the API links to go directly to the full API reference document for that service.

## BladeRunner Services

| alias | interface | Description |
| --- | --- | --- |
| [br.html-service](#brhtml-service) | `[caplin.services.HtmlResourceService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.htmlresourceservice)` | Used to retrieve HTML templates for the app. |
| [br.xml-service](#brxml-service) | `[caplin.services.XmlResourceService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.xmlresourceservice)` | Used to retrieve XML documents for the app. |

## Caplin Trader Services

The following services are not available in _BladeRunner_ by default, but are provided with _Caplin Trader_.

Click on a service name to see details further down this page, or click on the API links to go directly to the full API reference document for that service.

| alias | Name | Description |
| --- | --- | --- |
| [caplin.business-date-service](#caplinbusiness-date-service) | `[caplin.fx.services.BusinessDateService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.fx.services.businessdateservice)` | Retrieves FX business date information. |
| [caplin.currency-pair-service](#caplincurrency-pair-service) | `[caplin.fx.services.CurrencyPairService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.fx.services.currencypairservice)` | Lists FX currency pairs valid for the current user. |
| [caplin.tenor-service](#caplintenor-service) | `[caplin.fx.services.TenorService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.fx.services.tenorservice)` | Lists FX tenors viewable by the current user. |
| [caplin.layout-service](#caplinlayout-service) | `[caplin.layout.LayoutService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.layout.layoutservice)` | Provides access to the user’s layouts. |
| [caplin.connection-service](#caplinconnection-service) | `[caplin.services.ConnectionService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.connectionservice)` | Connects the app to a data streaming service. |
| [caplin.message-service](#caplinmessage-service) | `[caplin.services.MessageService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.messaging.messageservice)` | Accesses asynchronous messaging services. |
| [caplin.preference-service](#caplinpreference-service) | `[caplin.services.PreferencesService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.preferencesservice)` | Manages storage of user preferences. |
| [caplin.user-service](#caplinuser-service) | `[caplin.services.UserService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.userservice)` | Provides the login name of the current user. |
| [caplin.permission-service](#caplinpermission-service) | `[caplin.services.security.PermissionService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.security.permissionservice)` | Provides permission sets for the logged in user. |
| [caplin.tobo-user-service](#caplintobo-user-service) | `[caplin.trading.service.TOBOUserService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.trading.service.tobouserservice)` | Manages activities of users who can trade on behalf of other users. |
| [caplin.trade-permission-service](#caplintrade-permission-service) | `[caplin.trading.service.TradePermissionService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.trading.service.tradepermissionservice)` | Provides higher level permissioning information that can be used throughout the application. |
| [caplin.trade-message-service](#caplintrade-message-service) | `[caplin.trading.trademodel.TradeMessageService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.trading.trademodel.trademessageservice)` | Provides an API for sending trade messages to the underlying trading system. |
| [caplin.trade-service](#caplintrade-service) | `[caplin.trading.service.TradeService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.trading.service.tradeservice)` | Assists trade creation via factories registered with the trade service. |
| [caplin.config-service](#caplinconfig-service) | `[caplin.services.ConfigService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.configservice)` | Provides information specific to this app instance. |
| [caplin.user-prompt-service](#caplinuser-prompt-service) | `[caplin.services.UserPromptService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.userpromptservice)` | Manages the display of prompts to users. |
| [caplin.log-store-service](#caplinlog-store-service) | `[caplin.core.log.LogStoreService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.core.log.logstoreservice)` | Used to cache and retrieve app log messages. |

## BladeRunner Services Detail

**📌 NOTE**\
Provided Implementations refers only to implementations provided with _BladeRunner_ as standard. Implementations that are provided as part of _Caplin Trader_ are not mentioned in this section.

### br.html-service

**API Reference:** `[caplin.services.HtmlResourceService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.htmlresourceservice)`

**Provided Implementations**: `[caplin.services.providers.CaplinHtmlResourceService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.providers.caplinhtmlresourceservice)`

**Description**: Provides a means for retrieving HTML templates to be used in the application. _Presenter_ uses this service internally to provide HTML resources for presentation models, but it’s possible to use this service for other uses.

### br.xml-service

**API Reference:** `[caplin.services.XmlResourceService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.xmlresourceservice)`

**Provided implementations**: `[caplin.services.providers.CaplinXmlResourceService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.providers.caplinxmlresourceservice)`

**Description**: Provides a means for retrieving XML documents to be used in the application. This includes grid definitions, **Renderer** definitions and state machine XML

## Caplin Trader Services Detail

### caplin.business-date-service

**API Reference:** `[caplin.fx.services.BusinessDateService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.fx.services.businessdateservice)`

**Description:** A service that retrieves FX business date information, e.g. settlements dates for tenors, valid calendar trading dates, etc... It includes various listeners to capture changes to different date types, and supports asynchronous calls for business dates if needed.

### caplin.currency-pair-service

**API Reference:** `[caplin.fx.services.CurrencyPairService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.fx.services.currencypairservice)`

**Description:** Provides a list of Foreign Exchange currency pairs that the current logged in user is entitled to view.

### caplin.layout-service

**API Reference:** `[caplin.layout.LayoutService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.layout.layoutservice)`

**Provided implementations**: `[caplin.webcentric.layout.WebcentricLayoutService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.webcentric.layout.webcentriclayoutservice)`

**Description:** Provides access to the user’s layouts.

### caplin.tenor-service

**API Reference:** `[caplin.fx.services.TenorService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.fx.services.tenorservice)`

**Description:** Provides a list of Foreign Exchange tenors that the current logged in user is entitled to view.

### caplin.connection-service

**API Reference:** `[caplin.services.ConnectionService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.connectionservice)`

**Provided implementations**: `[caplin.caplin.sljsadapter.providers.StreamLinkConnectionService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.sljsadapter.providers.streamlinkconnectionservice)`

**Description**: Provides information about the status of a connection to a streaming server

### caplin.message-service

**API Reference:** `[caplin.services.messaging.MessageService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.messaging.messageservice)`

**Provided implementations**: `[caplin.caplin.sljsadapter.providers.StreamLinkMessageService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.sljsadapter.providers.streamlinkmessageservice)`

**Description:** Provides access to publish/subscriber asynchronous messaging services, usually coupled with the `ConnectionService`.

**📌 NOTE**\
This has been changed from `caplin.services.MessageService`.

### caplin.preference-service

**API Reference:** `[caplin.services.PreferencesService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.preferencesservice)`

**Description:** A service that manages saving and retrieving of a user’s preferences.

### caplin.user-service

**API Reference:** `[caplin.services.UserService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.userservice)`

**Provided implementations**: `[caplin.caplin.sljsadapter.providers.StreamLinkUserService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.sljsadapter.providers.streamlinkuserservice)`

**Description:** A service that provides the login name of the user that is currently logged in.

### caplin.permission-service

**API Reference:** `[services.security.PermissionService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.security.permissionservice)`

**Description:** Provides a set of permissions and entitlements for the logged in user.

### caplin.tobo-user-service

**API Reference:** `[caplin.trading.service.TOBOUserService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.trading.service.tobouserservice)`

**Description:** A service designed for managing the activities of a client user who is permissioned to trade on behalf of other (TOBO) users.

### caplin.trade-permission-service

**API Reference:** `[caplin.trading.service.TradePermissionService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.trading.service.tradepermissionservice)`

**Implements:** `[caplin.services.security.PermissionService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.security.permissionservice)`

**Description:** Provides high level trade permissioning information that can be used in trading applications that require tickets and tiles.

### caplin.trade-message-service

**API Reference:** `[caplin.trading.trademodel.TradeMessageService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.trading.trademodel.trademessageservice)`

**Description:** Provides an API for sending trade messages to the underlying trading system.

### caplin.trade-service

**API Reference:** `[caplin.trading.trademodel.TradeService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.trading.service.tradeservice)`

**Description:** Provides an entry point for trade creation via delegation to factories registered with the trade service.

### caplin.config-service

**API Reference:** `[caplin.services.ConfigService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.configservice)`

**Provided implementations**: `[caplin.services.providers.CaplinConfigService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.providers.caplinconfigservice)`

**Description**: Provides information specific to this application instance. Examples of this information are lists of available locales, application versions, URLs for web services etc.

### caplin.user-prompt-service

***API Reference:***``[caplin.services.UserPromptService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.services.userpromptservice)``

**Description:** A service that manages how prompts are displayed to the user.

### caplin.log-store-service

***API Reference:***[caplin.core.log.LogStoreService,opts="nofollow"](https://docs.caplin.com/developer/api/caplin_trader/3/caplin.core.log.logstoreservice)

**Description:** A service that caches application log messages, and can be used to retrieve them at an arbitrary point in time.

<dl><dt><strong>📌 NOTE</strong></dt><dd>

The aliases listed are correct for version 3.10.0 and later. If you are using an older version, use the previous aliases below.

**caplin.config-service** was previously **br.config-service.**

**caplin.user-prompt-service** was previously **br.user-prompt-service.**

**caplin.log-store-service** was previously **br.log-store-service.**
</dd></dl>
