Streamlabs
| Schemes | strmlabs:// |
| Cargo feature | service-streamlabs |
| Service | https://streamlabs.com/ |
| Body formats | text (first is the default) |
| Attachments | no |
| Title length | 250 characters |
| Body length | 255 characters |
| Body lines | unlimited |
| Request throttle | none |
| Vendor URLs accepted | no |
URL formats
{schema}://{access_token}/
{schema} is one of strmlabs://.
URL tokens
| Token | Meaning | Type | Required | Default | Notes |
|---|---|---|---|---|---|
{access_token} | Access Token | string | yes | secret; must match ^[a-z0-9._-]{20,}$ |
Query parameters
| Parameter | Meaning | Type | Default | Notes |
|---|---|---|---|---|
alert_type | Alert Type | choice | donation | one of follow, subscription, donation, host |
amount | Amount | int, min 0 | 0 | |
call | Call | choice | ALERTS | one of ALERTS, DONATIONS |
currency | Currency | string | USD | must match ^[A-Z]{3}$ |
duration | Duration | int, min 0 | 1000 | |
identifier | Identifier | string | defaults to the application id | |
image_href | Image Link | string | ||
name | Name | string | Anon (usually; depends on the URL) | must match ^[^\s].{1,24}$ |
sound_href | Sound Link | string | ||
special_text_color | Special Text Color | string | must match ^[A-Z]$ |
The common URL parameters (format, overflow, verify, redirect, cto, rto, retry, wait, store, tag, tz, user, password, port, optional, emojis) apply as well.
Examples
Accepted URLs (tokens are fake):
strmlabs://eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxIn0.c2lnbmF0dXJl
strmlabs://IcIcArukDQtuC1is1X1UdKZjTg118Lag2vScOmso/?call=donations
strmlabs://IcIcArukDQtuC1is1X1UdKZjTg118Lag2vScOmso/?alert_type=subscription
strmlabs://IcIcArukDQtuC1is1X1UdKZjTg118Lag2vScOmso/?call=donations&amount=2.5
strmlabs://IcIcArukDQtuC1is1X1UdKZjTg118Lag2vScOmso/?call=donations&amount=10¤cy=eur&name=Joe&identifier=me
Rejected URLs:
strmlabs://
strmlabs://a_bd_/
strmlabs://IcIcArukDQtuC1is1X1UdKZjTg118Lag2vScOmso/?currency=ABCD
strmlabs://IcIcArukDQtuC1is1X1UdKZjTg118Lag2vScOmso/?alert_type=invalid
Send one from the command line:
mercurio -t 'Backup' -b 'Finished in 42s' 'strmlabs://eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxIn0.c2lnbmF0dXJl'
Notes
Streamlabs (strmlabs://): API v2.0 alerts and donations.
POST https://streamlabs.com/api/v2.0/{alerts,donations} with the access token as a Bearer header (v2.0 refuses it in the body) and a JSON body.
Differences with Apprise
- Apprise posts forms to API v1.0 with
access_tokenin the body, while mercurio uses API v2.0 (Bearer header, JSON, empty options left out), since Streamlabs is disabling v1.0. - The donation
identifierdefaults to the application id andsound_hrefkeeps its case (Apprise upper-cases the URL).