The @squiz/dxp-ai-client
is auto generated client library designed to simplify the interactions with the dxp-ai-service
- Abstract away the complexity of HTTP requests and API interactions, allowing other services to interact with the
dxp-ai-service
service with less effort. - Provide a consistent and intuitive API interface, enabling developers to integrate with the
dxp-ai-service
service efficiently and not waste time updating their own integration services.
To utilize the Main Service Client Library within your service, follow these steps:
- Installation: Install the client library package in your service's environment using your preferred package manager (e.g. npm , pnpm or yarn).
npm install @squiz/dxp-ai-client
-
Initialize Client: Initialize an instance of the
dxp-ai-service
client within your service's codebase, providing any required configuration parameters. The following example is from the DXP consoleexport class AiService extends BaseService { public readonly apiClient: DxpAiService<unknown>; public constructor(configuration: AiServiceConfiguration) { super(configuration); const baseUrl = this.getServiceUrlByTenant('ai'); if (!baseUrl) { throw new Error('BaseUrl is undefined'); } const httpClient = createClient({ baseUrl: baseUrl, }); this.apiClient = new DxpAiService(httpClient); } }
-
Interact with Main Service: Once initialized, you can start making requests to the
dxp-ai-service
service using the methods exposed by the client library. These methods abstract away the underlying HTTP requests and provide a simple interface for interacting with thedxp-ai-service
service's endpoints.aiService.apiClient.generative.list(query) .then((user) => { // Handle ai data }) .catch((error) => { // Handle error });
-
Contribute and Extend: If your service requires changes to the package generation settings or extension in its interaction with the
dxp-ai-service
service (requiring changes to the service code). Please see the Contribution guidelines