Skip to content

Common code and config for generating PureCloud Platform API client SDKs

License

Notifications You must be signed in to change notification settings

charliecon/platform-client-sdk-common

 
 

Repository files navigation

PureCloud Platform Client SDKs

This repository contains scripts, templates, and configuration files that are used in the process of auto generating PureCloud Platform API client libraries based on the API's swagger definition.

SDK Repos

Note: As of 9.17.2020 - Genesys Cloud has deprecated Ruby SDK support. The Genesys Cloud team will keep a branch (FROZEN-LAST-VERSION-RUBY-SDK-GENERATION) for the Ruby SDK generation process, but the Ruby SDK code generation will be removed from the main branch in this repository.

Generating the SDK locally

For additional information and documentation, see Building Locally in the wiki.

Dependencies

Config files

Each SDK configuration has a config file located at ./resources/sdk/<language>/config.json. This contains all of the general configuration required to build the SDK.

A local config file is typically desired to store sensitive information (like a PureCloud client ID and secret) or to override settings in the standard config file.

For full documentation, see Config Files on the wiki.

Generate

First, from this repo's directory, install dependencies:

npm install

Then start the build process by specifying which SDK to build. This command will look in ./resources/sdk/<language> to find the primary config file (config.json or config.yaml) and a local config file (localConfig.json or localConfig.yaml). If a JSON and YAML config file exist, the JSON file will be preferred.

npx tsx sdkBuilder.ts --sdk purecloudjava

The above command is equivalent to providing these paths to config files (assuming JSON files exist):

npx tsx sdkBuilder.ts --config ./resources/sdk/purecloudjava/config.json --localconfig ./resources/sdk/purecloudjava/localConfig.json

About

Common code and config for generating PureCloud Platform API client SDKs

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Mustache 40.3%
  • Go 34.9%
  • Java 9.6%
  • TypeScript 6.1%
  • Kotlin 4.6%
  • C# 2.1%
  • Other 2.4%