LammaDevelopers Open Lamma

Getting started

Lamma for developers

Build apps, bots and webhooks for Lamma servers.

Lamma lets you build apps: bots that join servers, answer slash commands and react to what happens there. It also has webhooks, secret links that post into a channel without signing in. Both use a small, versioned API that is close to Discord's on purpose, so most bot code feels familiar.

#What you can build

  • Bots that read and send messages, add reactions and keep track of a server's channels, roles and members. See Apps and installs.
  • Slash commands that people pick by typing / in the message box. See Slash commands.
  • Mod-log and welcome bots that hear about joins, leaves, bans and audit log entries. See Gateway events.
  • Webhooks that post updates from your own service into a channel. See Webhooks.
  • Link cards that design how your website's links look when someone shares them. See Link cards.

#How it fits together

PieceWhat it doesAddress
REST APIRead servers, channels and messages; send, edit and reacthttps://lammapp.sa/v1
GatewayA WebSocket that pushes events to your bot as they happenwss://lammapp.sa/v1/gateway
WebhooksPost into one channel with a secret URLhttps://lammapp.sa/api/webhooks/{id}/{secret}
SDKslamma.js and lamma.py, shaped like discord.js and discord.py

Every app works through its own bot account, and Lamma's permission checks apply to it like to anyone else. An app only joins a server when someone who manages that server approves exactly what it asks for.

#Privacy comes first

Some things are never offered to apps, because Lamma keeps them between people:

  • Direct messages, presence (online status and activity) and typing.
  • Servers the app isn't installed in, and channels its bot can't see.
  • Message text, unless the app is approved for it or the message mentions the bot.

Read the developer rules before you ship.

#Next steps