Skip to main content

Keap Data Source

Nexla's bi-directional connectors allow data to flow both to and from any location, making it simple to create a FlexFlow, DB-CDC, Spark ETL, or Replication data flow that ingests data from a Keap location.
keap.png

Keap

Follow the instructions below to create a new data flow that ingests data from a Keap source in Nexla.

Create a New Data Flow

  1. To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Then, select the desired flow type from the list, and click the Create button.

  2. Select the Keap connector tile from the list of available connectors. Then, select the credential that will be used to connect to the Keap account, and click Next; or, create a new Keap credential for use in this flow.

  3. In Nexla, Keap data sources can be created using pre-built endpoint templates, which expedite source setup for common Keap endpoints. Each template is designed specifically for the corresponding Keap endpoint, making source configuration easy and efficient.
    • To configure this source using a template, follow the instructions in Configure Using a Template.

    Keap sources can also be configured manually, allowing you to ingest data from Keap endpoints not included in the pre-built templates or apply further customizations to exactly suit your needs.
    • To configure this source manually, follow the instructions in Configure Manually.

Configure Using a Template

Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common Keap endpoints. Each template is designed specifically for the corresponding Keap endpoint, making data source setup easy and efficient.

Endpoint Settings

  • 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. Click on an endpoint to see more information about it and how to configure your data source for this endpoint.

    List Contacts

    List Contacts

    • This endpoint automatically retrieves all contacts from your Keap account. No additional configuration is required beyond selecting this endpoint template.
    • The endpoint uses GET requests to https://api.infusionsoft.com/crm/rest/v2/contacts to retrieve a list of contacts. The endpoint URL is automatically constructed based on the Keap REST API base URL.
    • The endpoint uses pagination (iteration.type: paging.next.token) to retrieve all contacts. Pagination uses the next_page_token from the API response to navigate through pages. The next_page_token query parameter is used to request the next page of results. The endpoint will automatically fetch all pages until all contacts are retrieved.
    • The response data path is $.contacts[*], which extracts all contact objects from the contacts array in the API response. The next page token is extracted from the root level of the response ($) for pagination.
    • The date format is yyyy-MM-dd with a time unit of dd (days), which is used for incremental data extraction based on record dates.

    This endpoint retrieves a list of all contacts from your Keap account. The endpoint requires API key authentication via the X-Keap-API-Key header, which is handled automatically by your credential configuration. The endpoint uses token-based pagination to retrieve all contacts across multiple pages. The contacts returned include contact information such as names, email addresses, phone numbers, and custom fields. For detailed information about listing contacts, pagination, and API response formats, see the Keap REST API documentation.

    List Companies

    List Companies

    • This endpoint automatically retrieves all companies from your Keap account. No additional configuration is required beyond selecting this endpoint template.
    • The endpoint uses GET requests to https://api.infusionsoft.com/crm/rest/v2/companies to retrieve a list of companies. The endpoint URL is automatically constructed based on the Keap REST API base URL.
    • The endpoint uses pagination (iteration.type: paging.next.token) to retrieve all companies. Pagination uses the next_page_token from the API response to navigate through pages. The next_page_token query parameter is used to request the next page of results. The endpoint will automatically fetch all pages until all companies are retrieved.
    • The response data path is $.companies[*], which extracts all company objects from the companies array in the API response. The next page token is extracted from the root level of the response ($) for pagination.
    • The date format is yyyy-MM-dd with a time unit of dd (days), which is used for incremental data extraction based on record dates.

    This endpoint retrieves a list of all companies from your Keap account. The endpoint requires API key authentication via the X-Keap-API-Key header, which is handled automatically by your credential configuration. The endpoint uses token-based pagination to retrieve all companies across multiple pages. The companies returned include company information such as names, addresses, and custom fields. For detailed information about listing companies, pagination, and API response formats, see the Keap REST API documentation.

Configure Manually

Keap data sources can be manually configured to ingest data from any valid Keap REST API endpoint. Manual configuration provides maximum flexibility for accessing endpoints not covered by pre-built templates or when you need custom API configurations.

With manual configuration, you can also create more complex Keap sources, such as sources that use custom query parameters, different HTTP methods, or custom data transformations.

Content Format

  1. Select the format in which the data from the Keap REST API will be received from the Content Format pulldown menu. Nexla will automatically parse the data in the selected format. The Keap REST API typically returns data in JSON format.

API Endpoint URL

  1. Enter the URL of the Keap REST API endpoint from which this source will fetch data in the Set API URL field. This should be the complete URL including the protocol (https://) and any required path parameters. Keap REST API endpoints typically follow the pattern https://api.infusionsoft.com/crm/rest/v2/{endpoint_path}.

Ensure the API endpoint URL is correct and accessible with your current credentials. You can test the endpoint using the Test button after configuring the URL. The endpoint requires API key authentication via the X-Keap-API-Key header, which is handled automatically by your credential configuration. The API key is sent in the X-Keap-API-Key header for all API requests to the Keap REST API. For detailed information about Keap REST API endpoints, authentication, and available APIs, see the Keap Developer Guide.