Getting Started with Cuadra AI

Introduction

API Documentation

Install the Package

Install the gem from the command line:

gem install cuadra-ai-sdk -v 1.0.4

Or add the gem to your Gemfile and run bundle:

gem 'cuadra-ai-sdk', '1.0.4'

For additional gem details, see the RubyGems page for the cuadra-ai-sdk gem.

Initialize the API Client

Note: Documentation for the client can be found here.

The following parameters are configurable for the API Client:

Parameter Type Description
environment Environment The API environment.
Default: Environment.PRODUCTION
connection Faraday::Connection The Faraday connection object passed by the SDK user for making requests
adapter Faraday::Adapter The Faraday adapter object passed by the SDK user for performing http requests
timeout Float The value to use for connection timeout.
Default: 30
max_retries Integer The number of times to retry an endpoint call if it fails.
Default: 0
retry_interval Float Pause in seconds between retries.
Default: 1
backoff_factor Float The amount to multiply each successive retry's interval amount by in order to provide backoff.
Default: 2
retry_statuses Array A list of HTTP statuses to retry.
Default: [408, 413, 429, 500, 502, 503, 504, 521, 522, 524]
retry_methods Array A list of HTTP methods to retry.
Default: %i[get put]
http_callback HttpCallBack The Http CallBack allows defining callables for pre and post API calls.
logging_configuration LoggingConfiguration The SDK logging configuration for API calls
authorization_code_auth_credentials AuthorizationCodeAuthCredentials The credential object for OAuth 2 Authorization Code Grant

The API client can be initialized as follows:

client = CuadraAi::Client.new(
  authorization_code_auth_credentials: AuthorizationCodeAuthCredentials.new(
    oauth_client_id: 'OAuthClientId',
    oauth_client_secret: 'OAuthClientSecret',
    oauth_redirect_uri: 'OAuthRedirectUri'
  ),
  environment: Environment::PRODUCTION,
  logging_configuration: LoggingConfiguration.new(
    log_level: Logger::INFO,
    request_logging_config: RequestLoggingConfiguration.new(
      log_body: true
    ),
    response_logging_config: ResponseLoggingConfiguration.new(
      log_headers: true
    )
  )
)

Authorization

This API uses the following authentication schemes.

List of APIs

SDK Infrastructure

Configuration

HTTP

Utilities