Skip to main content

Choozle

Choozle is a technology-enabled digital media partner that provides smart agencies and successful brands with programmatic advertising solutions, offering advanced targeting, optimization, and analytics capabilities for digital marketing campaigns.

Choozle icon

Power end-to-end data operations for your Choozle API with Nexla. Our bi-directional Choozle connector is purpose-built for Choozle, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to Choozle or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Choozle workflows fast, secure, and fully governed.

Features

Type: API

SourceDestination

  • Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
  • Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
  • API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
  • Request optimization with intelligent batching, retry, and caching to minimize API calls and costs

Prerequisites

Before creating a Choozle credential, you need to obtain authentication credentials from your Choozle account. Choozle uses HMAC-SHA256 authentication with a User Email and API Private Key to authenticate API requests.

To use Choozle with Nexla, you need:

  • Access to your Choozle account
  • A Choozle account with appropriate permissions to access the resources you want to work with
  • Your User Email associated with your Choozle account
  • Your API Private Key for creating HMAC signatures

The Choozle API uses HMAC-SHA256 authentication, which requires generating a signature using your API Private Key, User Email, and a timestamp. Nexla automatically handles the HMAC signature generation for all API requests. For detailed information about Choozle authentication, API key setup, and HMAC signature generation, refer to the Choozle API documentation.

Authenticate

Credentials required

FieldRequiredSecretDescription
User EmailYesNoYour Choozle User Email
Choozle API private keyYesYesYour Choozle API private key for creating HMAC signature. See https://app.choozle.com/apidoc/ for details.

Create a credential in Nexla

  1. After selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.

New Credential Overlay – Choozle

ChoozleCred.png
  1. Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.

  2. Enter your Choozle User Email in the User Email field. This is the email address associated with your Choozle account that will be used for HMAC signature generation. The default value is user@company.net if not specified.

  3. Enter your Choozle API Private Key in the Choozle API private key field. This is the API private key you obtained from your Choozle account settings. The API private key is used together with your User Email and a timestamp to generate HMAC-SHA256 signatures for authenticating API requests.

    Keep your API private key secure and do not share it publicly. The API private key provides access to your Choozle account and should be treated as sensitive information. Choozle uses HMAC-SHA256 authentication, and Nexla automatically generates the required signature for each API request using your User Email, API Private Key, and a timestamp. The signature is included in the request body along with the email and timestamp. For detailed information about obtaining and managing API keys, see the Choozle API documentation.

  4. Click the Save button at the bottom of the overlay. The newly added credential will now appear in a tile on the Authenticate screen during data source/destination creation.

Use as a data source

To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the Choozle connector tile, then select the credential that will be used to connect to the Choozle instance, and click Next; or, create a new Choozle credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common Choozle endpoints. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below.

Get Account Information

This endpoint fetches account information from your Choozle account. Use this endpoint when you need to access account details, account settings, or account metadata.

  • This endpoint automatically retrieves account information from your Choozle account. No additional configuration is required beyond selecting this endpoint template.
  • The endpoint uses GET requests to https://app.choozle.com/api/accounts. The endpoint URL is automatically constructed based on the Choozle API base URL.
  • The endpoint does not use pagination and returns the complete account information in a single request.
  • The endpoint will return all accounts in your Choozle account. The response data is extracted from the accounts array in the API response ($.accounts[*]), with each account record processed individually.

The endpoint uses a static URL (iteration.type: static.url) and does not require pagination. The response data path is $.accounts[*], which extracts all items from the accounts array in the API response. For detailed information about retrieving account information, see the Choozle API documentation.

Get Reports

This endpoint fetches all reports available via the Choozle API. Use this endpoint when you need to access reporting data, campaign metrics, or performance analytics for a specific account and date range.

  • Enter the account ID for which you want to retrieve reports in the account_id field. This is the unique identifier of the Choozle account. The default value is 123 if not specified.

  • Enter the start date for the report range in the Start Date field. This should be a date in ISO 8601 format (e.g., 2023-11-11). You can also use Nexla macros like {now-1} for relative dates. The default value is {now-1} if not specified.

  • Enter the end date for the report range in the End Date field. This should be a date in ISO 8601 format (e.g., 2023-11-12). You can also use Nexla macros like {now} for relative dates. The default value is {now} if not specified.

  • The endpoint uses GET requests to https://app.choozle.com/api/reports?account_id={'{account_id}'}&date_start={'{date_start}'}&date_end={'{date_end}'} where {account_id}, {date_start}, and {date_end} are the parameters you provide. The endpoint URL is automatically constructed based on the Choozle API base URL and the provided parameters.
  • The endpoint does not use pagination and returns all available reports in a single request.
  • The endpoint will return all reports for the specified account and date range. The response data is extracted from the root-level array in the API response ($[*]), with each report record processed individually.

Account IDs can be obtained from the "Get Account Information" data source endpoint, which returns all accounts with their corresponding IDs. Date parameters should be in ISO 8601 format (YYYY-MM-DD), or you can use Nexla macros like {now} for the current date or {now-1} for one day ago. The endpoint uses a static URL (iteration.type: static.url) and does not require pagination. The response data path is $[*], which extracts all items from the root-level array in the API response. For detailed information about retrieving reports, see the Choozle API documentation.

Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.

Manual configuration

Choozle data sources can also be manually configured to ingest data from any valid Choozle API endpoint, including endpoints not covered by the pre-built templates, chained API calls, or custom request parameters. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, path to data, metadata, and request headers.

Choozle API endpoints typically follow the pattern https://app.choozle.com/api/{endpoint_path}. Choozle API responses may use different structures depending on the endpoint — for example, enter $.accounts[*] as the path to data to extract the accounts array, or $[*] to extract a root-level array. HMAC-SHA256 authentication is handled automatically by your credential configuration. For detailed information about Choozle API endpoints, see the Choozle API documentation.

Once all of the relevant settings have been configured, click the Save button to save your data source configuration. The data source will now be available in your data flow and will begin ingesting data according to the configured schedule and endpoint settings.