Table of Contents - promoted-ruby-client-0.1.22 Documentation
Pages
-
README
- promoted-ruby-client
- Installation
- Local Development
- Dependencies
- Faraday
- Net::HTTP::Persistent
- Concurrent Ruby
- Creating a Client
- Client Configuration Parameters
- Data Types
- UserInfo
- CohortMembership
:arm
| String | Yes | 'CONTROL' or one of the TREATMENT values (see constants.rb).- Properties
- Insertion
:properties
| Properties | Yes | Any additional custom properties to associate. For v1 integrations, it is fine not to fill in all the properties.- Size
:height
| Integer | No | Screen height- Screen
:scale
| Float | Yes | Current screen scaling factor- ClientHints
- ClientBrandHint
- Location
:accuracy_in_meters
| Integer | Yes | Location accuracy if available- Browser
:client_hints
| ClientHints | Yes | HTTP client hints structure- Device
:browser
| Browser | Yes | Browser information- Paging
- #### TODO
- Request
:device
| Device | Yes | Device information (as available)- MetricsRequest
:full_insertion
| [] of Insertion | No | The proposed list of insertions.- DeliveryRequest
:only_log
| Boolean | Yes | Defaults to false. Set to true to override whether Delivery API is called for this request.- LogRequest
:insertion
| [] of Insertion | No | The insertions, which are either the original request insertions or the insertions resulting from a call todeliver
if such call occurred.- ClientResponse
:execution_server
| one of 'API' or 'SDK' | Yes | Indicates if response insertions on a delivery request came from the API or the SDK.- PromotedClient
close
| n/a | n/a | Closes down the client at shutdown, currently this is just to drain the thread pool that handles shadow traffic.- Metrics API
- Pagination
- Expected flow for Metrics logging
- Delivery API
- Expected flow for Delivery
- TODO Experimentation example
Classes and Modules
- Hash
- Promoted
- Promoted::Ruby
- Promoted::Ruby::Client
- Promoted::Ruby::Client::DeliveryInsertionPageType
- Promoted::Ruby::Client::EndpointError
- Promoted::Ruby::Client::FaradayHTTPClient
- Promoted::Ruby::Client::IdGenerator
- Promoted::Ruby::Client::InvalidPagingError
- Promoted::Ruby::Client::Pager
- Promoted::Ruby::Client::PromotedClient
- Promoted::Ruby::Client::PromotedClient::Error
- Promoted::Ruby::Client::RequestBuilder
- Promoted::Ruby::Client::Sampler
- Promoted::Ruby::Client::ShadowTrafficInsertionPageType
- Promoted::Ruby::Client::Util
- Promoted::Ruby::Client::ValidationError
- Promoted::Ruby::Client::Validator
- String
Methods
- ::new — Promoted::Ruby::Client::PromotedClient
- ::new — Promoted::Ruby::Client::EndpointError
- ::new — Promoted::Ruby::Client::FaradayHTTPClient
- ::new — Promoted::Ruby::Client::IdGenerator
- ::new — Promoted::Ruby::Client::InvalidPagingError
- ::new — Promoted::Ruby::Client::RequestBuilder
- ::remove_all_properties — Promoted::Ruby::Client::PromotedClient
- ::translate_array — Promoted::Ruby::Client::Util
- ::translate_hash — Promoted::Ruby::Client::Util
- #add_missing_ids_on_insertions! — Promoted::Ruby::Client::RequestBuilder
- #add_missing_insertion_ids! — Promoted::Ruby::Client::RequestBuilder
- #apply_paging — Promoted::Ruby::Client::Pager
- #build_sdk_response_insertions — Promoted::Ruby::Client::PromotedClient
- #check_that_log_ids_not_set! — Promoted::Ruby::Client::Validator
- #clean! — Hash
- #client_request_id — Promoted::Ruby::Client::RequestBuilder
- #close — Promoted::Ruby::Client::PromotedClient
- #compact_metrics_properties — Promoted::Ruby::Client::RequestBuilder
- #compact_one_insertion — Promoted::Ruby::Client::RequestBuilder
- #deliver — Promoted::Ruby::Client::PromotedClient
- #deliver_shadow_traffic — Promoted::Ruby::Client::PromotedClient
- #delivery_request_params — Promoted::Ruby::Client::RequestBuilder
- #do_warmup — Promoted::Ruby::Client::PromotedClient
- #enabled? — Promoted::Ruby::Client::PromotedClient
- #ensure_client_timestamp — Promoted::Ruby::Client::RequestBuilder
- #fill_details_from_response — Promoted::Ruby::Client::RequestBuilder
- #get — Promoted::Ruby::Client::FaradayHTTPClient
- #insertions_with_compact_props — Promoted::Ruby::Client::RequestBuilder
- #log_request_params — Promoted::Ruby::Client::RequestBuilder
- #merge_client_info_defaults — Promoted::Ruby::Client::RequestBuilder
- #message — Promoted::Ruby::Client::ShadowTrafficInsertionPageType
- #message — Promoted::Ruby::Client::DeliveryInsertionPageType
- #newID — Promoted::Ruby::Client::IdGenerator
- #new_cohort_membership_to_log — Promoted::Ruby::Client::RequestBuilder
- #perform_common_checks! — Promoted::Ruby::Client::PromotedClient
- #prepare_for_logging — Promoted::Ruby::Client::PromotedClient
- #sample_random? — Promoted::Ruby::Client::Sampler
- #send — Promoted::Ruby::Client::FaradayHTTPClient
- #send_log_request — Promoted::Ruby::Client::PromotedClient
- #send_request — Promoted::Ruby::Client::PromotedClient
- #set_request_params — Promoted::Ruby::Client::RequestBuilder
- #should_apply_treatment — Promoted::Ruby::Client::PromotedClient
- #should_send_as_shadow_traffic? — Promoted::Ruby::Client::PromotedClient
- #to_underscore — String
- #to_underscore! — String
- #validate_fields! — Promoted::Ruby::Client::Validator
- #validate_insertion! — Promoted::Ruby::Client::Validator
- #validate_metrics_request! — Promoted::Ruby::Client::Validator
- #validate_paging — Promoted::Ruby::Client::Pager
- #validate_request! — Promoted::Ruby::Client::Validator
- #validate_user_info! — Promoted::Ruby::Client::Validator