Skip to Content
Elido is in closed beta — APIs are stable but rate-limits and quotas may change before GA. Request access →
KılavuzlarCampaigns & A/B

Kampanyalar ve A/B

Kampanya; bir dizi UTM varsayılanını, isteğe bağlı bir tarih aralığını ve analitiğinizde tek bir satırı saklayan, adlandırılmış bir bağlantı kümesidir. A/B, bağlantı başına variants[] ile yapılandırılır ve kampanya sisteminden bağımsızdır: birini, ikisini ya da hiçbirini kullanabilirsiniz.

Kampanya oluşturma

curl -X POST \ https://api.elido.app/v1/workspaces/1/campaigns \ -H "Authorization: Bearer $ELIDO_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "name": "Spring 2026 launch", "description": "Coordinated push across email and paid", "utm_source": "spring2026", "utm_medium": "email", "utm_campaign": "launch", "start_date": "2026-05-01", "end_date": "2026-05-31" }'

Adlar çalışma alanı başına benzersizdir. Tam UTM kümesi (utm_source, utm_medium, utm_campaign, utm_term, utm_content) isteğe bağlıdır ve raporlama ile kendi etiketlemeniz için kampanyada saklanır. Bu alanların atanan bağlantıların hedef URL’lerine otomatik devralınması planlanmıştır, henüz kullanılamaz (UTM şablonlarına bakın); o zamana kadar hedef URL’leri kendiniz veya pano UTM oluşturucusuyla etiketleyin.

Bağlantı atama

curl -X POST \ https://api.elido.app/v1/workspaces/1/campaigns/7/links \ -H "Authorization: Bearer $ELIDO_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "link_ids": [42, 43, 44] }'

Çağrı başına en fazla 100 bağlantı kimliği. Bir bağlantı en fazla bir kampanyaya aittir; yeniden atamak onu taşır. Kampanya atamasını bağlantı yükünde tutmayı tercih ederseniz PATCH /links/{id} ile bir bağlantıya campaign_id ayarlamak da çalışır.

Aynı biçimle DELETE üzerinden kaldırın:

curl -X DELETE \ https://api.elido.app/v1/workspaces/1/campaigns/7/links \ -H "Authorization: Bearer $ELIDO_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "link_ids": [42] }'

Bir kampanyayı silmek, bağlantılarındaki campaign_id değerini null yapar; bağlantılar silinmez.

Uç noktalar

YöntemYol
GET/v1/workspaces/{ws}/campaigns
POST/v1/workspaces/{ws}/campaigns
PATCH/v1/workspaces/{ws}/campaigns/{id}
DELETE/v1/workspaces/{ws}/campaigns/{id}
GET/v1/workspaces/{ws}/campaigns/{id}/links
POST/v1/workspaces/{ws}/campaigns/{id}/links (atama)
DELETE/v1/workspaces/{ws}/campaigns/{id}/links (atamayı kaldırma)

Varyantlarla A/B testi

Bir bağlantı herhangi sayıda variants[] içerebilir. Her varyantın bir hedefi, bir ağırlığı ve isteğe bağlı bir etiketi vardır. Edge her istekte birini seçer:

{ "destination_url": "https://example.com/control", "rotation_mode": "weighted", "variants": [ { "destination_url": "https://example.com/a", "weight": 50, "label": "A" }, { "destination_url": "https://example.com/b", "weight": 50, "label": "B" } ] }

rotation_mode stratejiyi belirler:

DeğerDavranış
weighted (varsayılan)İstek başına weight ile orantılı rastgele seçim
round_robinAtomik bir Redis sayacı variants[counter % N] ile döner

Düşük hacimli kreatifleri A/B test ederken round-robin önemlidir; ağırlıklı rastgele, küçük örneklem boyutlarında gürültülü dağılımlar üretebilir.

Varyantlar targeting_rules’tan bağımsızdır (Akıllı bağlantılar’a bakın). İkisi de ayarlıysa önce akıllı bağlantılar çözülür; eşleşen bir kural varyant döndürmeyi tamamen geçersiz kılar.

Panoda

  • /dashboard/campaigns altında Campaigns: oluşturma, düzenleme, arşivleme, bağlantıları toplu atama.
  • /dashboard/links/{id} altında bağlantı başına varyantlar: varyantları satır içinde ekleyin; ağırlık kaydırıcıları otomatik olarak 100’e normalleşir.