Skip to main content
POST
/
integrations
Create integration
curl --request POST \
  --url https://api.qonversion.io/v4/integrations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "title": "Amplitude — Production iOS",
  "integration": "amplitude",
  "target_platform": "iOS"
}
'
{
  "object": "integration",
  "id": "gNl6hyM6",
  "url": "/v4/integrations/gNl6hyM6",
  "title": "Amplitude — Production iOS",
  "integration": "Amplitude",
  "target_platform": "iOS",
  "active": 0,
  "created_at": "2026-02-26T16:03:09Z",
  "updated_at": "2026-02-26T16:03:09Z",
  "last_delivery_at": "2026-04-22T10:12:33Z",
  "last_error_at": "2023-11-07T05:31:56Z",
  "last_error_message": "<string>",
  "delivery_error_count": 1
}

Documentation Index

Fetch the complete documentation index at: https://documentation.qonversion.io/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

Bearer authentication using the project Secret Key (prefixed with sk_, or test_sk_ for sandbox). All v4 public endpoints require the Secret Key — see Authentication. Never expose the Secret Key in client-side code.

Headers

Idempotency-Key
string

Unique key to ensure idempotent creation. Same key returns original response.

Body

application/json
title
string
required

Display title visible in the dashboard (1-255 chars).

Required string length: 1 - 255
Example:

"Amplitude — Production iOS"

integration
string
required

Provider slug. Call GET /v4/integrations/meta for the canonical catalog; the typical set includes amplitude, appmetrica, facebook, firebase, mixpanel, posthog, segment, searchads, adjust, appsflyer, branch, kochava, singular, split_metrics, asapty, tenjin, amazon_s3, google_cloud_storage, slack, webhooks, braze, clevertap, mailchimp, onesignal, pushwoosh.

Example:

"amplitude"

target_platform
enum<string>
required

Store to forward events for. Case-sensitive.

Available options:
iOS,
Android,
Stripe

Response

Integration created.

A single integration record. Credentials (API keys, webhook secrets) are configured out-of-band after creation and are not exposed in this shape.

object
string
required
Example:

"integration"

id
string
required

Integration identifier. Stable for the lifetime of the record (soft-deleted records keep their ID).

Example:

"gNl6hyM6"

url
string
required

Canonical API path.

Example:

"/v4/integrations/gNl6hyM6"

title
string
required

Caller-supplied display title.

Example:

"Amplitude — Production iOS"

integration
string
required

Provider display title (not the lowercase slug used on create). Use for UI; for references in other requests use id.

Example:

"Amplitude"

target_platform
enum<string>
required

Store the integration forwards events for. Case-sensitive.

Available options:
iOS,
Android,
Stripe
active
enum<integer>
required

Integration state.

  • 0 — paused / draft (no events forwarded).
  • 1 — active (events forwarded).
  • 2 — error (delivery worker suspended the pipeline; inspect last_error_message/last_error_at). Cannot be set by callers.
Available options:
0,
1,
2
created_at
string<date-time>
required

ISO 8601 creation timestamp.

Example:

"2026-02-26T16:03:09Z"

updated_at
string<date-time>
required

ISO 8601 last-update timestamp.

Example:

"2026-02-26T16:03:09Z"

last_delivery_at
string<date-time> | null
required

ISO 8601 timestamp of the most recent successful delivery, or null if never delivered.

Example:

"2026-04-22T10:12:33Z"

last_error_at
string<date-time> | null
required

ISO 8601 timestamp of the most recent delivery failure, or null.

last_error_message
string | null
required

Human-readable description of the most recent delivery failure, or null.

delivery_error_count
integer
required

Running count of delivery failures since the last successful delivery.

Required range: x >= 0