woeler/phpdiscord

A php library to use Discord webhooks and embeds.

Fund package maintenance!
Woeler
Patreon

Installs: 123 956

Dependents: 0

Suggesters: 0

Security: 0

Stars: 33

Watchers: 1

Forks: 3

Open Issues: 0

pkg:composer/woeler/phpdiscord

4.0.1 2023-01-27 15:07 UTC

This package is auto-updated.

Last update: 2025-09-29 01:53:43 UTC


README

A PHP library that makes sending Discord webhooks easier. Supports plain-text messages and Discord embeds messages.

Installation

composer require woeler/phpdiscord

Usage

Sending a text message

$message = (new DiscordTextMessage())
    ->setContent('Hello World')
    ->setAvatar('https://example.com/avatar.png')
    ->setUsername('Webhook Test');

$webhook = new DiscordWebhook('https://discordapp.com/api/webhooks/SomeWebHook');
$messageData = $webhook->send($message);

Sending an embed message

$message = (new DiscordEmbedMessage())
    ->setContent('Hello World')
    ->setAvatar('https://example.com/avatar.png')
    ->setUsername('Webhook Test')
    ->setTitle('Hello Title')
    ->setDescription('Some nice description')
    ->addField('Field name', 'Field value')
    ->setImage('https://example.com/someimage.png');

$webhook = new DiscordWebhook('https://discordapp.com/api/webhooks/SomeWebHook');
$messageData = $webhook->send($message);

Updating a message

$messageId = '12345';
$message = (new DiscordTextMessage())
    ->setContent('Hello World')
    ->setAvatar('https://example.com/avatar.png')
    ->setUsername('Webhook Test');

$webhook = new DiscordWebhook('https://discordapp.com/api/webhooks/SomeWebHook');
$messageData = $webhook->update($messageId, $message);

Deleting a message

$messageId = '12345';

$webhook = new DiscordWebhook('https://discordapp.com/api/webhooks/SomeWebHook');
$webhook->delete($messageId);

Getting a message

$messageId = '12345';

$webhook = new DiscordWebhook('https://discordapp.com/api/webhooks/SomeWebHook');
$messageData = $webhook->get($messageId);

Ratelimits are automatically handled for all calls.