CES Discord Review Bot

#Installation & Setup Guide

CES Discord Review Bot allows members of your Discord server to submit reviews through a clean review form.

Reviews can be submitted as either Named or Anonymous and are posted as embeds in a review channel.

The bot also includes administrator-only commands for viewing review statistics, listing reviewers, deleting review history, and resetting all stored reviews.


#Requirements

Before installing CES Discord Review Bot, make sure you have:

  • A Discord server
  • A Discord application/bot
  • Node.js v18 or newer
  • Access to your Discord Developer Portal
  • Permission to manage your Discord server
  • A computer or hosting service where the bot can stay online

No database server is required.

Reviews are stored locally in:

reviews.json

#Step 1 β€” Create Your Discord Bot

Go to the Discord Developer Portal:

https://discord.com/developers/applications

  1. Log in with your Discord account.
  2. Click New Application.
  3. Enter a name for your bot.
  4. Click Create.
  5. Open the Bot section.
  6. Click Add Bot.
  7. Confirm when prompted.

Keep this page open because you will need your bot token later.


#Step 2 β€” Get Your Bot Token

In the Discord Developer Portal:

  1. Open your application.
  2. Select Bot.
  3. Find the Token section.
  4. Click Reset Token if you need to create a new token.
  5. Copy the token.

Your token will be used in the .env file.

⚠️ NEVER share your bot token.

Anyone with your bot token may be able to control your bot.

If your token is accidentally exposed, immediately reset it in the Discord Developer Portal.


#Step 3 β€” Get Your Application ID

Open:

Developer Portal β†’ Your Application β†’ General Information

Find:

Application ID

Copy the value.

This will be used as:

CLIENT_ID=your-application-client-id

#Step 4 β€” Get Your Server ID

You need the ID of the Discord server where the bot will operate.

In Discord:

  1. Open User Settings.
  2. Go to Advanced.
  3. Enable Developer Mode.
  4. Right-click your Discord server.
  5. Select Copy Server ID.

You will use this as:

GUILD_ID=your-server-id

#Step 5 β€” Create Your Review Channels

CES Discord Review Bot uses two channels.

#Review Command Channel

This is where members type:

!review

The bot will respond with the review buttons.

Example:

#leave-a-review

Copy the channel ID and use it for:

COMMAND_CHANNEL_ID=channel-id

#Review Channel

This is where completed reviews are posted.

Example:

#customer-reviews

Copy the channel ID and use it for:

REVIEW_CHANNEL_ID=channel-id

#Step 6 β€” Create an Admin Role

Create a Discord role for people who should be allowed to manage reviews.

Example:

CES Review Admin

Give the role only to trusted staff.

Copy the role ID and use it for:

ADMIN_ROLE_ID=role-id

Server members with the Discord Administrator permission can also use the admin commands.


#Step 7 β€” Invite the Bot

Your bot needs to be invited to your Discord server with the correct scopes and permissions.

The bot needs these OAuth2 scopes:

bot
applications.commands

Recommended permissions include:

  • View Channels
  • Send Messages
  • Embed Links
  • Read Message History
  • Use Application Commands

The bot needs permission to send messages in the command channel and review channel.


#Step 8 β€” Enable Message Content Intent

The !review command requires Discord's Message Content Intent.

Go to:

Developer Portal β†’ Your Application β†’ Bot

Find:

Privileged Gateway Intents

Enable:

Message Content Intent

Save your changes.

⚠️ Without Message Content Intent, typing !review will not trigger the bot.


#Step 9 β€” Install Node.js

CES Discord Review Bot requires:

Node.js v18 or newer

Download Node.js from:

https://nodejs.org/

After installing Node.js, open a terminal and check:

node -v

You should see a version such as:

v18.x.x

or newer.

You can also check npm:

npm -v

#Step 10 β€” Extract the Bot

Extract the CES Discord Review Bot ZIP file.

Your folder should contain files similar to:

CES_Discord_Review_Bot/
β”œβ”€β”€ index.js
β”œβ”€β”€ package.json
β”œβ”€β”€ .env.example
β”œβ”€β”€ reviews.json
β”œβ”€β”€ CHANGELOG.md
β”œβ”€β”€ README.md
β”œβ”€β”€ Discord Bot License.txt
└── .gitignore

#Step 11 β€” Install Dependencies

Open a terminal inside the bot folder.

Run:

npm install

This installs the required Node.js packages.

CES Discord Review Bot uses:

  • discord.js
  • dotenv

#Step 12 β€” Create the .env File

Inside the bot folder, make a copy of:

.env.example

Rename the copy to:

.env

Your folder should now contain:

.env
.env.example

Open .env.


#Step 13 β€” Configure .env

Your .env file should contain:

BOT_TOKEN=your-bot-token-here
CLIENT_ID=your-application-client-id
GUILD_ID=your-server-id
COMMAND_CHANNEL_ID=channel-id-where-you-type-!review
REVIEW_CHANNEL_ID=channel-id-where-reviews-get-posted
ADMIN_ROLE_ID=role-id-that-can-use-admin-commands

Replace each value with your actual Discord information.


#BOT_TOKEN

Your Discord bot token.

BOT_TOKEN=your-bot-token

#CLIENT_ID

Your Discord application's Application ID.

CLIENT_ID=123456789012345678

#GUILD_ID

Your Discord server ID.

GUILD_ID=123456789012345678

#COMMAND_CHANNEL_ID

The channel where members type:

!review

Example:

COMMAND_CHANNEL_ID=123456789012345678

#REVIEW_CHANNEL_ID

The channel where completed reviews are posted.

Example:

REVIEW_CHANNEL_ID=123456789012345678

#ADMIN_ROLE_ID

The Discord role allowed to use the review administration commands.

Example:

ADMIN_ROLE_ID=123456789012345678

#Protect Your .env

Never upload or share your real .env file publicly.

Do not post your:

BOT_TOKEN

in:

  • Discord
  • GitHub
  • Forums
  • Screenshots
  • Support tickets
  • Public websites

The included .gitignore is designed to help prevent .env from accidentally being committed to Git.


#Step 14 β€” Start the Bot

Once your .env file is configured, run:

npm start

If everything is configured correctly, you should see something similar to:

βœ… Logged in as YourBotName
βœ… Slash commands registered!

Keep the terminal running while you test the bot.


#Step 15 β€” Test the Review System

Go to the channel configured as:

COMMAND_CHANNEL_ID

Type:

!review

The bot should create a review message with two buttons:

Review (Named)
Review (Anonymous)

#Step 16 β€” Submit a Review

Click:

Review (Named)

or:

Review (Anonymous)

A review form will appear.

The form contains:

#Rating

Enter a number from:

1–5

#Feedback

Enter your review.

#What did you buy?

Optional.

#Image URL

Optional.

If an image is provided, it must be a direct link ending in:

.png
.jpg
.jpeg
.gif
.webp

#Example Review

A submitted review may look similar to:

Rating:
⭐⭐⭐⭐⭐ (5/5)

Reviewed by:
CustomerName

Item Purchased:
CES AI Medic

Feedback:
Great script and very easy to install!

The review is posted as a Discord embed in your configured review channel.


#Named Reviews

When a user selects:

Review (Named)

their Discord username is displayed on the public review.

Example:

Reviewed by:
CustomerName

#Anonymous Reviews

When a user selects:

Review (Anonymous)

their name is hidden from the public review.

The review will display:

Reviewed by:
Anonymous

#Important

Anonymous reviews are not completely anonymous internally.

The bot stores the user's Discord ID so administrators can moderate abusive submissions.

The Discord ID is not displayed publicly as the reviewer's name.


#Administrator Commands

CES Discord Review Bot includes administrator-only slash commands.

These commands are restricted to:

  • Members with your configured ADMIN_ROLE_ID
  • Server members with the Discord Administrator permission

#/reviewstats

Shows the total number of reviews and the average rating.

Use:

/reviewstats

Example:

πŸ“ˆ Total Reviews: 25
⭐ Average Rating: 4.72

You can also check a specific user.

Example:

/reviewstats userid:123456789012345678

The bot will show:

πŸ“Š 123456789012345678 has submitted 3 review(s), average 5.00/5.

#/reviewlist

Lists users who have submitted reviews.

Use:

/reviewlist

Example:

πŸ“‚ Reviewers:

CustomerName β€” 123456789012345678
Anonymous β€” 987654321098765432
AnotherCustomer β€” 555555555555555555

Anonymous submitters appear as:

Anonymous

Their Discord ID remains visible to administrators for moderation purposes.


#/deletereview

Deletes the stored review history for a specific Discord user.

Use:

/deletereview userid:USER_ID

Example:

/deletereview userid:123456789012345678

This removes the user's stored review history from:

reviews.json

#/resetreviews

Deletes all stored review data.

Use:

/resetreviews confirm:CONFIRM

You must type:

CONFIRM

exactly.

This confirmation is required to help prevent accidental deletion of all review statistics.

⚠️ This action cannot be undone unless you have a backup of reviews.json.


#/respondreview

The command exists for command-menu compatibility, but thread replies are disabled in this version.

Running it will return a message explaining that thread replies are disabled.


#Review Data

CES Discord Review Bot stores review statistics in:

reviews.json

The file is located in the bot's main folder.

Example:

CES_Discord_Review_Bot/
β”œβ”€β”€ index.js
β”œβ”€β”€ package.json
β”œβ”€β”€ .env
└── reviews.json

The stored data includes information such as:

  • Review count
  • Ratings
  • Username information
  • Anonymous status

#Backing Up Reviews

Before moving or reinstalling the bot, back up:

reviews.json

Simply copy the file somewhere safe.

For example:

Backups/
└── reviews.json

When moving the bot to another host, copy your existing reviews.json into the new bot folder.


#Updating the Bot

Before updating CES Discord Review Bot:

  1. Stop the current bot.
  2. Back up .env.
  3. Back up reviews.json.
  4. Download the new version.
  5. Replace the old bot files.
  6. Restore .env.
  7. Restore reviews.json.
  8. Run:
npm install
  1. Start the bot:
npm start
  1. Test the review system.

Important: Never overwrite your .env without keeping a backup of your configuration.


#Hosting the Bot

The bot needs to remain online to respond to Discord events.

You can run it on:

  • A VPS
  • A dedicated server
  • A computer
  • A game-server host that supports Node.js
  • Another Node.js-compatible hosting service

The important requirement is that Node.js can run continuously.


#Troubleshooting

#Bot Won't Start

Check your .env file.

The bot requires:

BOT_TOKEN=
CLIENT_ID=
GUILD_ID=
COMMAND_CHANNEL_ID=
REVIEW_CHANNEL_ID=
ADMIN_ROLE_ID=

If one is missing, the bot will tell you which value is missing.


#"Failed to log in"

This usually means the bot token is incorrect.

Check:

BOT_TOKEN=your-bot-token

Make sure:

  • The token is correct.
  • There are no extra spaces.
  • You did not accidentally use the Application ID.
  • The token has not been reset.

If you reset the token, update your .env file with the new token.


#/reviewstats or Other Slash Commands Are Missing

Check that the bot was invited with:

applications.commands

Also verify:

CLIENT_ID=
GUILD_ID=

are correct.

The bot registers its slash commands to the configured Discord server.


#!review Does Nothing

Check:

COMMAND_CHANNEL_ID=

Make sure it matches the channel where you are typing:

!review

Also make sure Message Content Intent is enabled in:

Developer Portal β†’ Bot β†’ Privileged Gateway Intents


#Reviews Are Not Posting

The bot needs permission to send messages and embeds in the review channel.

Check that the bot has:

  • View Channel
  • Send Messages
  • Embed Links

in the channel configured as:

REVIEW_CHANNEL_ID=

#Image Is Not Working

The image must be a direct image URL.

Supported extensions:

.png
.jpg
.jpeg
.gif
.webp

Example:

https://example.com/image.png

A normal webpage URL containing an image may not work.


#Admin Command Says You Are Not Allowed

Make sure you have either:

  1. The role configured in:
ADMIN_ROLE_ID=

or

  1. The Discord Administrator permission.

After changing the admin role, restart the bot if necessary.


#Production Checklist

Before making the bot available to your community, verify:

  • [ ] Node.js v18+ is installed
  • [ ] Discord bot has been created
  • [ ] Bot token is configured
  • [ ] Client ID is configured
  • [ ] Server ID is configured
  • [ ] Command channel is configured
  • [ ] Review channel is configured
  • [ ] Admin role is configured
  • [ ] Message Content Intent is enabled
  • [ ] applications.commands scope is enabled
  • [ ] Bot has required channel permissions
  • [ ] npm install completed successfully
  • [ ] Bot starts without errors
  • [ ] !review works
  • [ ] Named reviews work
  • [ ] Anonymous reviews work
  • [ ] Review embeds post correctly
  • [ ] /reviewstats works
  • [ ] /reviewlist works
  • [ ] /deletereview works
  • [ ] /resetreviews confirmation works
  • [ ] reviews.json is backed up

#Support

If you need help with CES Discord Review Bot, contact Crazy Eyes Studio Support.

When requesting support, include:

CES Discord Review Bot Version:
1.4.0

Problem:
Describe the issue.

Error Message:
Copy the exact error message.

Node.js Version:
Your Node.js version.

Discord Server:
Your server name.

Steps to Reproduce:
1.
2.
3.

Screenshots:
Attach screenshots if available.

Do NOT send your bot token or .env file to support.


#More CES Documentation

Visit the CES Docs website for documentation for other Crazy Eyes Studio products.

CES Docs

https://docs.crazyeyesstudio.com/

Crazy Eyes Studio

https://crazyeyesstudio.com/


#Β© Crazy Eyes Studio

CES Discord Review Bot is a product of Crazy Eyes Studio.

All rights reserved.

See Discord Bot License.txt included with the resource for the full license.

No ratings yet