Viber-kanalobjektet for [Advanced transaksjoner](https://www.bulkgate.com/no/dokumentasjon/advanced-api/advanced-transactional/2.0/). Det legges i objektet `channel` under nøkkelen `viber` - se [Kaskade](https://www.bulkgate.com/no/dokumentasjon/advanced-api/advanced-kaskade/).

> [!IMPORTANT]
> Markedsføringsmeldinger bruker et **annet** Viber-objekt under samme nøkkel - det inneholder en knapp og et bilde i stedet for maler. Se [Viber – markedsføring](https://www.bulkgate.com/no/dokumentasjon/advanced-api/advanced-viber-markedsforing/).

```json
{
	"viber": {
		"sender": "BulkGate",
		"expiration": 300
	}
}
```

## Viber-objekt

| PARAMETERNAVN       | VERDI | OBLIGATORISK | STANDARDVERDI |
|:--------------------|:------|:------------:|:-------------:|
| text                | Teksten i Viber-meldingen. Overstyrer `text` på øverste nivå, se [Hvilken tekst som brukes](https://www.bulkgate.com/no/dokumentasjon/advanced-api/advanced-kaskade/) | Nei | `null` |
| sender              | Registrert Viber-avsender. Avsenderen må registreres først. Kontakt kundestøtte for registrering [her](https://www.bulkgate.com/no/kontakt-oss/) | **Ja** | - |
| expiration          | Tidsgrense i sekunder, deretter brukes neste kanal i kaskaden. Verdier under `60` ignoreres og erstattes med standardverdien | Nei | `300` |
| template_id         | Nøkkelen til en godkjent Viber-mal med `@` foran (f.eks. `@order-confirmation`), eller ID-en til malen hos Viber. **Når den er fylt ut, sendes meldingen som mal**, og `text` brukes ikke | Nei | `null` |
| template_language   | Koden for språkversjonen av malen. De fleste språk har en kode på to bokstaver (`cs`, `en`), unntakene er `fr_FR`, `es_ES`, `pt_BR`, `pt_PT`, `zh-Hans` og `zh-Hant` | Nei | `en` |
| template_parameters | Assosiativ array med malparametere, f.eks.: `{"code": "0451"}` | Nei | `[]` |

> [!IMPORTANT]
> Det er `template_id` som gjør meldingen om til en mal - ikke `use_template`. Parameteren `use_template` godtas fortsatt av hensyn til bakoverkompatibilitet, men har ingen virkning på dette endepunktet.

Alle transaksjonelle Viber-meldinger må bygge på en mal som Viber har godkjent på forhånd. Hvordan du registrerer en mal, er beskrevet på siden [Registrering av Viber-mal](https://www.bulkgate.com/no/hjelpesenter/viber/registrere-viber-maler/).

> [!WARNING]
> **Uten `template_id` faktureres ikke meldingen etter transaksjonspris.** En Viber-melding som sendes gjennom dette endepunktet uten mal, går ut til **markedsføringspris**; bare en melding som bygger på en godkjent mal, faktureres som transaksjonsmelding.

## Eksempel på fullstendig forespørsel

Viber først, SMS som reserve. `text` på øverste nivå brukes av begge leddene i kaskaden; `expiration` angir hvor lenge vi venter på Viber før vi bytter til SMS.

```http-json
POST /api/2.0/advanced/transactional HTTP/1.1
Host: portal.bulkgate.com
Content-Type: application/json

{
	"application_id": 451,
	"application_token": "NKN02TWE6NfBkfl-your-secret-token-Wf05GaqLIWLW4aBj",
	"number": ["420777777777"],
	"text": "Your order 4517 has been shipped.",
	"channel": {
		"viber": {
			"sender": "BulkGate",
			"expiration": 120
		},
		"sms": {
			"sender_id": "gText",
			"sender_id_value": "BulkGate"
		}
	}
}
```

Den samme meldingen som godkjent mal. `template_id` gjør Viber-leddet om til malen, slik at `text` på øverste nivå bare når SMS-leddet - og Viber-leddet faktureres etter transaksjonspris.

```http-json
POST /api/2.0/advanced/transactional HTTP/1.1
Host: portal.bulkgate.com
Content-Type: application/json

{
	"application_id": 451,
	"application_token": "NKN02TWE6NfBkfl-your-secret-token-Wf05GaqLIWLW4aBj",
	"number": ["375291234567"],
	"text": "Your verification code is 0451.",
	"channel": {
		"viber": {
			"sender": "BulkGate",
			"template_id": "TEMPLATE_ID",
			"template_language": "en",
			"template_parameters": {"code": "0451"}
		},
		"sms": {
			"sender_id": "gText",
			"sender_id_value": "BulkGate"
		}
	}
}
```

Svaret er det samme for alle kanaler - se [Advanced transaksjoner](https://www.bulkgate.com/no/dokumentasjon/advanced-api/advanced-transactional/2.0/).
