Integrations: Zapier, Make & n8n
Connect OOHLEMON to your existing tools — receive webhooks, verify signatures, control via API. No server of your own required.
There are two directions: OOHLEMON notifies you (webhooks) and you control OOHLEMON (REST API). Zapier, Make and n8n combine the two into automations — with no programming at all.
Trigger: webhooks
OOHLEMON sends a signed HTTP request to your URL whenever something happens. In Zapier/Make/n8n you catch it and kick off your workflow.
Action: REST API
The other way round, you call the API: list displays, reload a playlist, restart a player. Using a bearer key.
1Create a webhook endpoint
In the dashboard under Integrations → Webhooks you create an endpoint: enter a URL, choose the event types (or * for all). You receive a secret — you need it for signature verification. A test ping checks the connection immediately.
Team owners and admins are allowed to do this. Endpoints apply to your team or personal account.
2Verify the signature (important!)
Every delivery carries an OOHLEMON-Signature header in the format t=<unix>,v1=<hex>. Here is how to verify it:
// Node.js — verify the signature
c
o
n
s
t
c
r
y
p
t
o
=
r
e
q
u
i
r
e
(
'
c
r
y
p
t
o
'
)
;
f
u
n
c
t
i
o
n
v
e
r
i
f
y
S
i
g
n
a
t
u
r
e
(
r
a
w
B
o
d
y
,
s
i
g
n
a
t
u
r
e
H
e
a
d
e
r
,
s
e
c
r
e
t
)
{
c
o
n
s
t
p
a
r
t
s
=
O
b
j
e
c
t
.
f
r
o
m
E
n
t
r
i
e
s
(
s
i
g
n
a
t
u
r
e
H
e
a
d
e
r
.
s
p
l
i
t
(
'
,
'
)
.
m
a
p
(
p
=
>
p
.
s
p
l
i
t
(
'
=
'
)
)
)
;
c
o
n
s
t
t
i
m
e
s
t
a
m
p
=
N
u
m
b
e
r
(
p
a
r
t
s
.
t
)
;
c
o
n
s
t
e
x
p
e
c
t
e
d
=
c
r
y
p
t
o
.
c
r
e
a
t
e
H
m
a
c
(
'
s
h
a
2
5
6
'
,
s
e
c
r
e
t
)
.
u
p
d
a
t
e
(
`
$
{
p
a
r
t
s
.
t
}
.
$
{
r
a
w
B
o
d
y
}
`
)
.
d
i
g
e
s
t
(
'
h
e
x
'
)
;
/
/
5
-
m
i
n
u
t
e
t
o
l
e
r
a
n
c
e
i
f
(
M
a
t
h
.
a
b
s
(
D
a
t
e
.
n
o
w
(
)
/
1
0
0
0
-
t
i
m
e
s
t
a
m
p
)
>
3
0
0
)
r
e
t
u
r
n
f
a
l
s
e
;
/
/
T
i
m
i
n
g
-
s
a
f
e
c
o
m
p
a
r
e
r
e
t
u
r
n
c
r
y
p
t
o
.
t
i
m
i
n
g
S
a
f
e
E
q
u
a
l
(
B
u
f
f
e
r
.
f
r
o
m
(
e
x
p
e
c
t
e
d
)
,
B
u
f
f
e
r
.
f
r
o
m
(
p
a
r
t
s
.
v
1
)
)
;
}Important: always verify the raw body, not the parsed JSON — otherwise the signature will not match. In Zapier use a “Catch Raw Hook”, in Make edit the body as text, and in n8n the webhook node provides the raw body as binary.
3Choose your platform
Zapier
- Trigger: Webhooks by Zapier → Catch Raw Hook, paste the Zapier URL into OOHLEMON
- Signature: Code by Zapier (JavaScript) with the snippet above
- Action: Webhooks by Zapier → Custom Request against the REST API, bearer token as header
- Test: in OOHLEMON, “Send test event” — the response appears right in the editor
Make
- Trigger: Webhooks → Custom Webhook, enter the URL in OOHLEMON
- Signature: Filter with
sha256(t + "." + body; "hex"; secret) - Action: HTTP → Make a request against the REST API
n8n
An importable example workflow is waiting in the dashboard (Integrations → Apps): a note, a webhook, a “Verify signature” code node and an HTTP request against /api/v1/me. Paste it into an empty workflow with Ctrl+V — all nodes appear.
The code node verifies the signature in a timing-safe way, only lets through configured event types and silently drops pings. Ideal for self-hosting.
Three recipes to get started
New media → Slack message
As soon as a video or image finishes processing, a Slack bot tells the team. No more asking whether the new clip is live.
Playlist change → Google Sheets log
Every playlist change lands as a row in a spreadsheet — a complete record of who played what and when.
Schedule update → email to the branch manager
When the schedule for a location changes, the branch is notified automatically — nobody has to check the dashboard.
What works today — and what does not
Works: read and update displays, send player commands, read media/playlists/schedules/campaigns, receive webhooks.
Not yet: creating media via API (coming soon) — the n8n example scenario therefore uses a published web-page table plus reload_playlist. Documented honestly, so you do not build on something that does not exist.
Prefer to start in the dashboard?
All integration tabs (webhooks, API keys, Zapier/Make/n8n recipes with copy buttons) live under Integrations.
Go to integrations