Skip to main content
Keupera exposes a clean REST API, so any Zap can talk to it through the built-in Webhooks by Zapier action. No custom integration required.
A native Zapier app is on the roadmap. Until then, the recipes below cover every Keupera endpoint.

Prerequisites

  • A Zapier account on any plan that supports Webhooks by Zapier (Starter and above).
  • A Keupera API key from Account → API Keys in your dashboard.

Generic setup

Every Zap that calls Keupera uses the same basic action.
1

Add a 'Webhooks by Zapier' action

In your Zap editor, add an action and choose Webhooks by Zapier.
2

Pick the right event

  • GET for read operations (list keywords, fetch analytics, etc.)
  • POST to create resources or trigger jobs
  • PATCH to update records
  • DELETE to remove records (use Custom Request)
3

Configure the request

  • URL: https://app.keupera.com/api/v1/<endpoint>
  • Data Pass-Through: false
  • Headers:
    • Authorization: Bearer sk_live_xxxxxxxxxxxxxxxx
    • Content-Type: application/json
  • Data (for POST/PATCH): JSON body for the endpoint
4

Test the step

Zapier shows the JSON response so you can map fields into downstream steps.
Store the API key in Zapier’s Storage or paste it once into the action — never expose sk_live_... keys in client-side code.

Recipe: Add a keyword from a Google Sheet row

Recipe: Notify Slack when a Brand Radar campaign finishes

Recipe: Publish a draft article when a Trello card moves

Errors & retries

Keupera returns standard HTTP codes (401, 402, 403, 404, 500) with a JSON { "error": "..." } body. Zapier will surface the error message; for 402 Payment Required (usage limit reached) enable metered billing in Account → Billing → Usage. See the full API reference for every endpoint, request shape, and response example.