Roteamento por visitante e teste A/B

Mande cada visitante para um destino conforme país, estado, cidade, sistema, dispositivo ou idioma, e divida o tráfego entre variantes A/B.

Regras (`rules`)

Até 20 regras por link. A primeira que casar decide o destino; sem nenhuma, vale url. Condições na mesma regra são combinadas com E; valores numa lista, com OU.

{
  "url": "https://minhaloja.com.br",
  "rules": [
    {
      "label": "iPhone",
      "conditions": {
        "os": [
          "ios"
        ],
        "device_type": [
          "mobile"
        ]
      },
      "url": "https://apps.apple.com/br/app/id123"
    },
    {
      "label": "Android",
      "conditions": {
        "os": [
          "android"
        ]
      },
      "url": "https://play.google.com/store/apps/details?id=br.loja"
    },
    {
      "label": "Portugal",
      "conditions": {
        "country": [
          "PT"
        ]
      },
      "url": "https://loja.pt/"
    }
  ]
}
CondiçãoValores
countryISO-3166 alfa-2: BR, PT…
regionEstado em ISO 3166-2: BR-SP, BR-MG…
cityNome da cidade (São Paulo), sem diferenciar acento nem maiúsculas; combine com region
osios, android, windows, macos, linux, other
device_typemobile, tablet, desktop
languageDo navegador: pt, pt-br, es…

Para abrir um app, use links universais (iOS), App Links (Android) ou a página da loja. Esquemas próprios como meuapp:// não são aceitos como destino.

Teste A/B (`variants`)

De 2 a 10 variantes com peso de 1 a 100. O mesmo visitante cai sempre na mesma variante. As regras são avaliadas antes; as variantes valem para quem não casou com nenhuma regra.

{
  "variants": [
    {
      "label": "A",
      "url": "https://loja.com.br/oferta-a",
      "weight": 50
    },
    {
      "label": "B",
      "url": "https://loja.com.br/oferta-b",
      "weight": 50
    }
  ]
}

No PATCH, mandar rules ou variants substitui a lista inteira daquele tipo ([] remove); omitir mantém. Compare as variantes com GET /links/{id}/stats/breakdown?dimension=rule ou, em vendas, GET /links/{id}/conversions/stats?dimension=rule.