Back to Docs
📲

Aloware Push API Integration

Send Aloware call data to KendoAI using the Push API.

Last updated: Mar 5, 2026

When to Use This

Use this integration if your team runs calls in Aloware and wants those calls analyzed in KendoAI automatically.

This pattern mirrors the HubSpot Push API guide: extract call data from your source system, then POST normalized payloads to Kendo Push API.

For most Aloware setups, webhook-driven ingestion is the most reliable option because it sends data as soon as call artifacts are ready.

Important: Aloware does not send data to Kendo by itself - you must call the Kendo endpoint from your own integration layer (n8n, Make, Zapier, or custom code).

Aloware Data Sources

Aloware provides webhook-based automation and API surfaces for call workflows.

The most useful webhook families for Kendo ingestion are call lifecycle updates plus transcript/summarization events.

Recommended approach: trigger Kendo ingestion only after transcript and/or recording artifacts are available in the webhook payload or in a follow-up API lookup.

If your workspace uses API polling instead of webhooks, use an incremental checkpoint model (same reliability pattern as HubSpot polling).

What You Need

Before setup, make sure you have:

  • A KendoAI team with Push API enabled
  • A generated Push API key from Integrations > Push API
  • Admin access in Aloware to configure outbound webhooks (or API credentials for polling)
  • An integration workflow/tool (n8n, Make, Zapier, or custom code) that receives Aloware events and calls the Kendo Push API endpoint
  • Access to either transcript text, recording URLs, or both
  • Step 1 - Generate a Kendo Push API Key

    1. In KendoAI, open Integrations > Push API

    2. Select your destination team

    3. Click Generate API Key

    4. Copy and store it immediately (shown once)

    5. Save the key in your secret manager; never hardcode it

    Step 2 - Configure Aloware Webhook Delivery

    1. Build your integration workflow in n8n, Make, Zapier, or custom code

    2. In Aloware, create a webhook subscription to that integration endpoint

    3. Subscribe to events that indicate call completion and transcript/summary readiness (for example, Aloware's transcription-saved and call-summary style events)

    4. Include a signature/secret validation check in your endpoint to verify Aloware-originated requests

    5. Store the Aloware call identifier in your system for idempotency

    6. If transcript text is not present in the event, perform a follow-up Aloware API read before sending to Kendo

    Step 3 - Call Kendo from Your Integration

    1. In your workflow, transform Aloware payload fields into Kendo Push API fields

    2. Send an HTTP POST to https://app.kendo.ai/api/integrations/push-api/ingest

    3. Include X-API-Key and Content-Type: application/json headers

    4. Ensure at least one of transcript or audioUrl is present

    5. On success (201), store Kendo's callId back in your integration logs/state

    Step 4 - Map Aloware Fields to Kendo

    Your integration layer (n8n, Make, Zapier, or custom code) is responsible for this mapping.

    POST URL: https://app.kendo.ai/api/integrations/push-api/ingest

    Headers:

    - Content-Type: application/json

    - X-API-Key: {{your_kendo_push_api_key}}

    Recommended mapping:

    - callTitle <- Aloware call title/disposition label/context label

    - repName <- Aloware agent name

    - repEmail <- Aloware agent email (best for team-member attribution)

    - callDate <- Aloware call timestamp in ISO format

    - duration <- call length (seconds or ms accepted; Kendo normalizes)

    - audioUrl <- recording URL (if available)

    - transcript <- transcript text (if available)

    - metadata.source = "aloware" plus call/contact/campaign IDs for traceability

    Recommended Metadata Contract

    Include stable metadata keys for reconciliation and debugging:

    - metadata.source = "aloware"

    - metadata.alowareCallId

    - metadata.alowareContactId

    - metadata.alowareCampaignId

    - metadata.alowareDirection (inbound/outbound)

    - metadata.syncMethod (webhook | polling)

    Example Payload (Aloware to Kendo)

    { "callTitle": "Outbound - Renewal Follow-up", "repName": "Nina Patel", "repEmail": "nina@yourco.com", "callDate": "2026-03-05T18:10:00Z", "duration": 742, "audioUrl": "https://...", "transcript": "Rep: Hi, this is Nina from...", "metadata": { "source": "aloware", "alowareCallId": "cw_12345", "alowareContactId": "ct_7788", "alowareCampaignId": "cmp_44" } }

    At least one of transcript or audioUrl is required by Kendo.

    Kendo Push API Constraints (Exact)

    Auth header must be X-API-Key with a valid `pk_...` key.

    At least one of transcript or audioUrl is required.

    Current request body max is 5 MB.

    Current rate limit is 30 requests/minute per API key.

    On success, Kendo returns 201 and a callId.

    Validation Checklist

    1. Trigger one real Aloware call event in a test environment

    2. Confirm your integration sends exactly one POST to Kendo for that call ID

    3. Confirm Kendo returns 201 with callId

    4. Confirm call appears in Kendo history with correct rep attribution

    5. Re-send the same source event and verify your idempotency guard blocks duplicates

    Troubleshooting

    401 Unauthorized - Invalid/missing Kendo Push API key.

    400 Bad Request - Missing both transcript and audioUrl, invalid email, or malformed JSON.

    413 Payload Too Large - Request body exceeded 5 MB.

    429 Rate Limit - Exceeded 30 requests/min; queue retries with exponential backoff.

    No rep attribution - Ensure repEmail matches a member in the selected Kendo team.

    Transcript unavailable from event - send audioUrl and let Kendo handle transcription.

    Still need help?

    Can't find what you're looking for? Our support team is here to help.