Docs

Integrations·Updated Mar 5, 2026

Aloware Push API Integration

Send Aloware call data to KendoAI using the Push API.

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. 1. In KendoAI, open Integrations > Push API
  2. 2. Select your destination team
  3. 3. Click Generate API Key
  4. 4. Copy and store it immediately (shown once)
  5. 5. Save the key in your secret manager; never hardcode it

Step 2 - Configure Aloware Webhook Delivery

  1. 1. Build your integration workflow in n8n, Make, Zapier, or custom code
  2. 2. In Aloware, create a webhook subscription to that integration endpoint
  3. 3. Subscribe to events that indicate call completion and transcript/summary readiness (for example, Aloware's transcription-saved and call-summary style events)
  4. 4. Include a signature/secret validation check in your endpoint to verify Aloware-originated requests
  5. 5. Store the Aloware call identifier in your system for idempotency
  6. 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. 1. In your workflow, transform Aloware payload fields into Kendo Push API fields
  2. 2. Send an HTTP POST to https://app.kendo.ai/api/integrations/push-api/ingest
  3. 3. Include your API key (via X-API-Key header, Authorization: Bearer header, ?apiKey= query param, or apiKey body field) and Content-Type: application/json
  4. 4. Ensure at least one of transcript or audioUrl is present
  5. 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}} (or use Authorization: Bearer, ?apiKey= query param, or apiKey body field)

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)

Authenticate with a valid `pk_...` key via X-API-Key header, Authorization: Bearer header, ?apiKey= query param, or apiKey body field.

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. 1. Trigger one real Aloware call event in a test environment
  2. 2. Confirm your integration sends exactly one POST to Kendo for that call ID
  3. 3. Confirm Kendo returns 201 with callId
  4. 4. Confirm call appears in Kendo history with correct rep attribution
  5. 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 team is here to help.