#topgg-api

1 messages · Page 39 of 1

inner venture
#

Wdym what's going on lol

restive otter
#

uhhh

amber yacht
#

when trying to set my bot server count using the api i get this :

WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by com.google.gson.internal.ConstructorConstructor (file:/C:/Users/user/.m2/repository/com/google/code/gson/gson/2.6.2/gson-2.6.2.jar) to constructor java.lang.Void()
WARNING: Please consider reporting this to the maintainers of com.google.gson.internal.ConstructorConstructor
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release

i'm using java

#

any help ? or should i just leave it ?

summer osprey
#
const Discord = require("discord.js");
const bot = new Discord.Client({disableEveryone: true});
const DBL = require('dblapi.js');
const dbl = new DBL("token", { webhookPort: 5000, webhookAuth: 'password' }, bot);
dbl.webhook.on('ready', hook => {
  console.log(`Webhook running at http://${hook.hostname}:${hook.port}${hook.path}`);
});
dbl.webhook.on('vote', vote => {
    console.log(vote.user)
if (bot.userdata.has(vote.user)) {
  let num = bot.userdata.get(vote.user).tiers + Math.round(bot.userdata.get(vote.user).tiers*1000)
  bot.userdata.set(vote.user, num, 'tiers')
}
});
``` Would this set user tiers
plain timber
#

@summer osprey no because bot.userdata is probably not defined

#

is that supposed to be a standalone bot?

summer osprey
#

That's an enmap it is defined

#

But the log isn't even happening is my issue

plain timber
#

you're making a new client there

#

are you trying to add it to an existing bot?

summer osprey
#

It's in the main file so ...

#

Ya

plain timber
#
const Discord = require("discord.js");
const bot = new Discord.Client({disableEveryone: true});``` is literally setting up a new bot
summer osprey
#

Sorry read that wrong

#

Yes i am

plain timber
#

remove those 2 lines

summer osprey
#

But this is in my main file so don't i need it for my bot stuff 🤔

plain timber
#

i thought you just showed your dbl code

#

im confused, were those two lines already there?

summer osprey
#

Here this is all the lines

#
const Discord = require("discord.js");
const enmap = require('enmap');
const fs = require('fs');
const bot = new Discord.Client({disableEveryone: true});
bot.commands = new Discord.Collection();
bot.events = new Discord.Collection();
bot.help = new Discord.Collection();
let cooldown = new Set();
let cdseconds = 5;
Object.assign(bot, enmap.multi(["userdata", "guilddata"]));
const DBL = require('dblapi.js');
const dbl = new DBL("token", { webhookPort: 5000, webhookAuth: 'password' }, bot);
dbl.webhook.on('ready', hook => {
  console.log(`Webhook running at http://${hook.hostname}:${hook.port}${hook.path}`);
});
dbl.webhook.on('vote', vote => {
    console.log(vote.user)
if(bot.userdata.has(vote.user)) {
  let num = Math.round(bot.userdata.get(vote.user).tiers*1000)
  bot.userdata.set(vote.user, num, 'coin')
}
});
plain timber
#

hm

#

do you get the initial "webhook running" log?

summer osprey
#

Yes

plain timber
#

hm

#

you set the webhook info in your bot's edit page on DBL?

summer osprey
#

yes

plain timber
#

inb4 the url is 0.0.0.0

summer osprey
#

Wait

#

smh

plain timber
#

is it?

summer osprey
#

I am retarded

plain timber
#

lol

summer osprey
#

Can you test for me?

plain timber
#

click the test button in the edit page

summer osprey
#

OH that's what that does

#

Would the user id log if i run test?

plain timber
#

it should

summer osprey
#

so http://0.0.0.0:5000/dblwebhook Would be url?

plain timber
#

no

#

its not 0.0.0.0

summer osprey
#

I feel retarded again

plain timber
#

its just the url of your thing on your host

summer osprey
#

Authorization is webhookAuth:

#

Correct

#

Honestly idk cause something isn't right here

plain timber
#

if you make a post request to the dblwebhook page with the correct auth does it work?

summer osprey
#

Honestly i put the right ip and auth and token cause the servers come up correct but the vote doesn't work idk

#
dbl.on('posted', () => {
  console.log('Server count posted!');
});
``` @plain timber It doesn't log this when i add this to the code so maybe this will help cause it isn't posting either
plain timber
#

you waited 30 mins?

#

by default it will post every 30 mins

summer osprey
#

no I didn't thanks for telling me

#

But idk about the vote still

plain timber
#

are you using express?

summer osprey
#

No

plain timber
#

hm

#

you're sure the url is correct?

#

its not 0.0.0.0?

summer osprey
#

Well in aws logs it had a site so I just opened it and then copy and pasted

#

http://18.221:5000/dblwebhook

#

I didn't post the whole ip just part

#

so idk

plain timber
#

did you try making a direct post request

summer osprey
#

How would i?

plain timber
#

either run code or use postman

#
summer osprey
#

@plain timber Can you explain what do do with postman?

plain timber
#

you can make a post request to the url

restive otter
#

get request

plain timber
#

no

#

dbl webhook is a post request

restive otter
#

Wut

#

oh

#

just saying in general

shell trench
#

can dbl post to a webhook made in discord?

arctic arch
#

no

shell trench
#

Ah thanks

odd wyvern
#

How can i get lives

plain timber
#

@odd wyvern no

#

This has nothing to do with lives

#

This is for discordbots.orf

native cedar
#

How would i know if the user has upvoted to my bot?

gray dove
#

@native cedar idk how would u do it from their library but

var url = "https://discordbots.org/api/bots/" + $"458722701218021391/check?userId={context.User.Id}";
var rc = new RestClient(url);
var response = await rc.SetAuthorization(DblToken).GetAsync(url);
var jsonString = response.Body;

this is a pretty straight idea in C#

#

Or from the library

var p = (await discordBotListHandler.GetVotersAsync(3)).Select(idb => idb.Id).ToList();
if (p.Contains(guildUser.Id))
{
    //.... U voted
}
native cedar
#

Well thanks for your support

native cedar
#

I'm using js BTW

willow ruin
#

Do webhooks work at the moment? I don't receive any post requests.
Yesterday it was ok.

summer oracle
#

nope eebhoks r borked

#

@arctic arch pong

restive otter
#

webhook not working. it just suddenly stopped.

#

i cant get it to work anymore

#

sigh

#

when are webhooks gonna get back online

elfin solstice
#

i think they are back again?

#

not sure

restive otter
#

I had the same issue, but they're up an running now.

#

Don't know why!

royal fiber
#

@restive otter hey!

restive otter
#

?

royal fiber
#
const DBL = require('dbl-api');
const dbl = new DBL('TOKEN', { webhookPort: 5000, webhookAuth: 'mypassword' });
dbl.webhook.on('ready', hook => {
  console.log(`Webhook running at http://${hook.hostname}:${hook.port}${hook.path}`);
});
dbl.webhook.on('vote', vote => {
  console.log(`User with ID ${vote.user} just voted!`);
});```
#

THIS IS MY CODE

arctic arch
#

the module you're looking for is probably dblapi.js

royal fiber
#

ok fine

royal fiber
#

Now it gives me this error

arctic arch
#

put your token in a string

royal fiber
#

Like "TOKEN"?

arctic arch
#

yes

royal fiber
#

I dont have a client but still this

#

i use bot

arctic arch
#

then replace client with bot

royal fiber
#

I dont have any client in the code

#

Thats the problem

arctic arch
#

in the new DBL line

#

?

royal fiber
#

I am showing the code

royal fiber
#
const DBL = require('dblapi.js');
const dbl = new DBL("TOKEN", { webhookPort: 5000, webhookAuth: 'mypassword' });
dbl.on('ready', hook => {
  console.log(`Webhook running at http://${hook.hostname}:${hook.port}${hook.path}`);
});
dbl.webhook.on('vote', vote => {
  console.log(`User with ID ${vote.user} just voted!`);
});```
restive otter
#

@royal fiber

#

same problem

royal fiber
#

Yes what to do?

restive otter
#

idk

#

its not solved

royal fiber
#

@arctic arch Help us

arctic arch
#

whats the version you have

restive otter
#

treat him with some respect

#

god

#

@royal fiber

#

@restive otter

#

?

narrow geyser
#

Anyone know how to show how many online shard count on dbl with python

full socket
#

Wait there's an endpoint to check of a user has voted or not?

topaz wyvern
#

yuh

#

iirc

full socket
#

Why isn't that even in the docs

topaz wyvern
#

¯_(ツ)_/¯

#

i havent really looked at the docs

full socket
#

Never mind it's there. I'm just blind

restive otter
#

What kind of webhook can I use?

#

webhooks broken?

#

not receiving test webhooks

restive otter
#

@restive otter just tried, worked for me

#

ohh noow it works

#

didn't work before

#

@restive otter thanks

#

oh well, looks like i just had to save the webhook before testing

plain timber
#

@restive otter wdym

restive otter
#

what kind of webhook should i use to recieve votes (other than discord)

plain timber
#

you need to receive it on your server

restive otter
#

ok

plain timber
#

if you're using dblapi.js it has a system to receive the webhooks

#

if ur not then you'll need to set up a webserver system

restive otter
#

pengu

#

boi

cursive imp
#

Whats the best api for memes?

plain timber
#

@cursive imp read the channel topic pls

cursive imp
#

Ohh okay im sorry

restive otter
#

Hey how do I setup a webhook with DiscordBotList

#

webserver to accept post requests

latent oar
#

WTF

restive otter
#

👀

#

turkish tickYes

latent oar
#

Any one see something?

restive otter
#

shitpost in api tickYes

#

nobody see something tickYes

#

dbl in a nutshell tickYes

maiden pond
#

wat

cursive imp
wary zenith
#

uhm whats a dbl_token ?

#

just my normal bot token no ?

tidal burrow
#

dbl is not affiliated with discord

wary zenith
#

how do I get my dbl_token then ? 🤔

tidal burrow
#

I recommend reading this while you get your token

wary zenith
#

thats a long token

tidal burrow
#

yes

#

with that token you can access certain parts of dbl API

#

and modify only your bot's stats

#

since that token belongs to your bot's page

wary zenith
#

dbl has no 'client' member ...

tidal burrow
#

hm?

wary zenith
#

well my code is wrong somehow

#

it says 'dbl' has no 'client' member

tidal burrow
#

are you trying to use a dbl lib?

wary zenith
#

ye

tidal burrow
#

have you installed it first?

wary zenith
#

yes

tidal burrow
#

well I don't use a lib, I just use aiohttp ¯_(ツ)_/¯

wary zenith
#

O

wary zenith
#

mmm can someone help me making that vote webhook ? idk

tidal burrow
#

you need a webserver for that

wary zenith
#

o

restive otter
#
    setInterval(() => {
        dbl.postStats(bot.guilds, bot.shards.Id, bot.shards.total);
    }, 1800000);    
  console.log(`Fortnite Drop Online! Info : ${bot.users.size} users, in ${bot.channels.size} channels of ${bot.guilds.size} guilds.`); 
  bot.user.setActivity(`for ${config.prefix}help`, {
    type: 'WATCHING'
  })
})
#
2018-09-27T17:23:49.766534+00:00 app[worker.1]: dbl.postStats(bot.guilds, bot.shards.Id, bot.shards.total);
2018-09-27T17:23:49.766535+00:00 app[worker.1]: ^
2018-09-27T17:23:49.766539+00:00 app[worker.1]: TypeError: Cannot read property 'Id' of undefined
2018-09-27T17:23:49.766540+00:00 app[worker.1]: at Timeout.setInterval [as _onTimeout] (/app/index.js:25:46)
2018-09-27T17:23:49.766537+00:00 app[worker.1]:
2018-09-27T17:23:49.766542+00:00 app[worker.1]: at ontimeout (timers.js:498:11)
2018-09-27T17:23:49.766543+00:00 app[worker.1]: at tryOnTimeout (timers.js:323:5)
2018-09-27T17:23:49.766545+00:00 app[worker.1]: at Timer.listOnTimeout (timers.js:290:5)```
#

this crashes the bot

#

the setInterval thing

#

to post the servers the bot is in to DBL

#

i would say (just a crazy guess) that CANNOT READ PROPERTY ID OF UNDEFINED

#

means bot.shards

#

is undefined

#

so it cant get the Id

#

and i doubt the property is Id, probably id

#

so u probs dont have shards? make sure theres no an option/way to post without shards if you dont have any

tiny nebula
#

or id is not with capital I

#

but yea that's a CRAZY GUESS, maaan 'property 'Id' of undefined' what could that be if there's only one id property in dbl.postStats(bot.guilds, bot.shards.Id, bot.shards.total);

restive otter
#

its got nothign to do with the capital I joyemote

#

ar u blind ir says property Id of undefined

#

bot.shards is undefined

#

so they arent sharding, but trying to post stats as if they are

tiny nebula
#

don't know JS, thought property is attribute and not the class bot.shards

shut ibex
#

to post server count and stuff like that

shut ibex
#

yes

hoary timber
#

@restive otter It lets you f.e. post the server-count of your bot on the botlist.

obtuse flicker
#

So you could post a false server count?

golden field
#

yes

#

but it will be removed/if you do it many times GWmythiFeelsBannedMan

smoky trench
#

for a few weeks my friend just posted their server count * 10

#

or 100 i cant remember lol

#

you shouldnt do that though

honest root
#

No one looking for false count, but if they will figure that - account ban

dry mirage
#

How can i set the amount of guilds? I use Java and the JDA

golden field
dry mirage
#

It doesnt work for me

golden field
#

you wont be spoonfed here

#

those examples should work

dry mirage
tidal burrow
#

those examples aren't meant to work anyway, they are there just for reference, or to teach people what an "API" means and how to use it

dry mirage
#

When i use the example, the bot is crashing

#
            String url = "https://discordbots.org/api/bots/"+jda.getSelfUser().getId()+"/stats";
            String discordbots_key = "KEY FORM https://discordbots.org/api/docs#mybots";

            JSONObject data = new JSONObject();
            data.put("server_count", jda.getGuilds().size());

            RequestBody body = RequestBody.create(MediaType.parse("application/json"), data.toString());

            Request request = new Request.Builder()
                    .url(url)
                    .post(body)
                    .addHeader("User-Agent", "DiscordBot " + jda.getSelfUser().getName())
                    .addHeader("Authorization", discordbots_key)
                    .build();

            try {
                new OkHttpClient().newCall(request).execute();
            } catch (IOException e) {
                e.printStackTrace();
            }```
past quiver
#

any way gitlab can be added to the source section of a bots page? i dont use github anymore. a drop down menu with gitlab/github would be nice.

sudden rampart
#

@dry mirage don't do that

#

you'll leak resources

#

a) you leak a new JDA instance every time it runs
b) you lean an okhttp client every time it runs

dry mirage
#

@sudden rampart How can i do it?

sudden rampart
#

install that

dry mirage
#

Where can i download it?

#

@sudden rampart

sudden rampart
dry mirage
#

How can i import DiscordBotListAPI

sudden rampart
#

read the readme

#

no one is going to spoonfeed you

dry mirage
#

ok

#

@sudden rampart

sudden rampart
#

yes

#

also you don't need to ping me every message

dry mirage
#

ok thx

dry mirage
#

DiscordBotListAPI api = new DiscordBotListAPI.Builder().token("MYTOKEN").botId("481066842371260416").build();

#

This isnt working

#

NoClassDefFoundError is occuring

sudden rampart
#

shade your jar properly

dry mirage
#

What means shade? Im german

#

My token is really long. Is that normal?

sudden rampart
#

yes

#

shading means adding all dependencies to your jar

dry mirage
#

155 chars

#

IntelliJ does that everytime im building the project

#

<dependency>
<groupId>com.github.DiscordBotList</groupId>
<artifactId>DBL-Java-Library</artifactId>
<version>2.0.1</version>
</dependency>

#

This is my dependency

#

<repository>
<id>jitpack.io</id>
<name>JitPack</name>
<url>https://jitpack.io</url>
</repository>

#

And this is the repository

#

Is there something wrong or is it correct?

#

java.lang.NoClassDefFoundError: org/discordbots/api/client/DiscordBotListAPI$Builder

#

@sudden rampart Do you know what to do? Nobody is responding

restive otter
#

java and discord bots

#

Runs

dry mirage
#

?

young cliff
#

@dry mirage ist German your primary language?

dawn fjord
forest knoll
#

where do i set the webhookAuth on the website?

topaz wyvern
forest knoll
#

link? is it in the editing bot page?

topaz wyvern
#

yes

forest knoll
#

oh ok

#

thanks

topaz wyvern
#

np

forest knoll
#

Sorry im kinda new to the whole webhook stuff :P

https://[bots IP here]/dblwebhook - this is the URL for the default location right?

#

im using the nodejs library

#

anyone? :3

plain timber
#

@forest knoll you should be able to use the domain if you one connected

forest knoll
#

@plain timber what domain?

plain timber
forest knoll
#

oh I see

#

but can't I just have the webhook go right to my nodejs server?

#

that would be much more convenient than through my website

plain timber
#

i meant you can use the domain if you have it connected to your server

#

but an ip would probably work too

#

just make sure its public and everything

forest knoll
#

it is yeah

#

the IP is public but I'm not getting the requests

plain timber
#

what if u try directly making a request with postman

forest knoll
#

Oh alright

restive otter
#

woah

#

how to i become a follower of luca's teachings

#

luca v2

dry mirage
#

@young cliff Yes German is my primary language

dry mirage
#

DiscordBotListAPI api = new DiscordBotListAPI.Builder()
.token("token")
.botId("botId")
.build();

#

This method isnt working for me

#

Ive installed Java and Screen on my server

#

And i use Java and the JDA for my bot

#

noclassdeffound error occures

#

THis is the full error

restive otter
#

did you try googling noclassdeffound

#

or learning java

dry mirage
#

yes

#

But it didnt work

restive otter
dry mirage
#

Do u know how to fix this error?

#

@restive otter

severe iron
#

stop tagging people

solid garnet
#

ఋ Triple fesses !

zenith marsh
#

any other way to post server count?

#

trying to upgrade python in apt won't give python 3.5.3 or higher

reef apex
#

did you try using apt-get update ?

#

and then upgrading it @zenith marsh

zenith marsh
#

gonna update the repos now and test

#

nope

#

not working

#

i need to get python 3.5.6

#

no python 3.6

#

for reasons

shut ibex
#

you can try to install it directly from pythons website

zenith marsh
#

installed from source with wget and tar, for some reason not replacing old distro

reef apex
#

i think you need to set a parameter in make install

#

try executing python3.6

zenith marsh
#

i installed in opt

#

python3.6 not found

#

its not installed

reef apex
#

ye when installing from source you need to specify it

zenith marsh
#

i want to try to get 3.5.6

reef apex
#

is there a reason for 3.5?

zenith marsh
#

yea

#

no 3.6 or it breaks some stuff i'm using

reef apex
#

ah i see

#

hmm which os are you using?

zenith marsh
#

ubuntu 16.04 LTS server

reef apex
#

hmm let me see

#

ye your best bet would be installing it from source

zenith marsh
#

how would i go about that? i usually install via apt lol

reef apex
zenith marsh
#

where should i install it to? do i use wget?

#

bear in mind that ubuntu preinstalls 3.5.2

reef apex
zenith marsh
#

running through checks

silent perch
#

im trying to do the api and it keeps erroing this

    at IncomingMessage.res.on (D:\TinyMe\TinyMe\node_modules\dblapi.js\src\index.js:115:25)
    at emitNone (events.js:111:20)
    at IncomingMessage.emit (events.js:208:7)
    at endReadableNT (_stream_readable.js:1064:12)
    at _combinedTickCallback (internal/process/next_tick.js:138:11)
    at process._tickCallback (internal/process/next_tick.js:180:9)
(node:11700) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:11700) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.```
plain timber
#

looks like an issue in the api

#

or an issue in posting

#

whats your code?

zenith marsh
#

@reef apex HELP

#

my python install is completely broken

mystic wing
#

Reinstall think_inverted

zenith marsh
#

reinistall is not working @mystic wing

topaz wyvern
#

did you like install anaconda with it or smth

#

that can sometimes break it afaik

fast tapir
#

did you realize this is the wrong channel?

restive otter
#

hi

celest hull
daring solar
#

-bots @daring solar

abstract mothBOT
#
Joshua#0848
Bots

@inland nymph

restive otter
#

woah

shy ginkgo
#

-bots @deep hemlock

abstract mothBOT
#

Bots don't have bots, silly.

restive otter
#

shutup luca

#

what do you know

restive otter
#

-bots

abstract mothBOT
#
Chris-senpai#1363
Bots

@south wing

tiny nebula
#

-bots

abstract mothBOT
#

This user has no bots

topaz wyvern
#

can people stop using luca here

#

kthx

restive otter
shut ibex
#

when its hovered make it do nothing

restive otter
#

my question is how?

#

@shut ibex ?

past reef
#

I have a quick question for catching vote updates with the DBL webhook. Is there an existing webhook service I can use to make the DBL webhook work? And if yes, how do I fetch the votes from the service?

#

(Feel free to tag me, as I have the server muted and can only see tags)

celest schooner
#

@past reefWhat do you mean exactly?

jaunty depot
celest schooner
#

And which programming language do you use?

jaunty depot
#

u can find everything about dblapi there

past reef
#

I'm having a look at the docs right now, but I still don't have everything answered, Eren

celest schooner
#

Because if its node, for example, there is an webhook example

jaunty depot
#

ask the thing that u didnt figure out then

#

and there is everything u need to fetch votes

past reef
#

I use discord.js, I simply don't know what to put in the URL field of the DBL webhook

#

I probably come across as a very stupid developer rn, but I'm still learning.

jaunty depot
#

for example

#

mine has http://my.server.ip/vote at there

past reef
#

And do you have a thing on that URL that fetches the votes?

jaunty depot
#

yes

#

theres a webhook to check votes in that server

past reef
#

I'm very new to webhooks, but I still want to learn it for my bot @velvet iris, so I can set up rewards for upvoting it.

#

And with very new, I mean I never used it before

jaunty depot
#

I understand what you mean

#

but its not that hard to check if user has been voted or not

#

sending it with webhooks is a bit harder

past reef
#

It'll be my first time

#

Ah

#

So you don't necessarily need webhooks?

jaunty depot
#

you dont need them if you are just gonna check if they voted or not on command

past reef
#

I'm only gonna check it, then save their user ID to a database upon upvoting it, and then they can use the Bundle Radio for 12 hours before being deleted from the database again.

#

That's all

jaunty depot
#

u dont need to save it and remove it after 12 hours

past reef
#

Hmmm-

jaunty depot
#

the thing can check if they voted in 12 hours

#

go into javascript library in docs and read

past reef
#

Then yea, I'm gonna use it in a command lol

jaunty depot
#

and after u installed and set ur token and stuff for dblapi

#

u can just check if they voted

#

with <dbl>.hasVoted(authorhere)

past reef
#

For real?

#

oH

jaunty depot
#

<dbl> will be the thing that u const as dblapi

#

its just dbl in those examples

#

hope i helped you GWqlabsLove

past reef
#

Wow, that's really helpful. I'mma try this out! Thanks a lot Eren, appreciate it!

shut ibex
#

eren you could save the user once and update every time they upvote

obtuse flicker
#

Does the dbl webhook accept URLs as well as IP or no

#

@ me if you know

restive otter
#

ips are urls, so why wouldn it

obtuse flicker
#

If the form box they used might have an ip only restrictions

plain timber
#

@obtuse flicker works with domains

plain timber
silent perch
#

You pinged me and I was like of shit did my bot get deleted.

fresh edge
#

It's impossible to do commands in there

#

lol

plain timber
#

well you're not allowed to do them here

surreal junco
slate merlin
#

Also comes up as infinity on the site

proud sphinx
#

He abuses

surreal junco
#

@arctic arch Plz fix

proud sphinx
#

@surreal junco someone probably abuses

#

He probably posts a huge number

surreal junco
#

Yup

arctic arch
#

lmao what

proud sphinx
#

That the database can't store

arctic arch
#

is that the freaking infinity sign

surreal junco
#

Yup

proud sphinx
#

Yes

arctic arch
#

lmaoo

proud sphinx
#

Ban the bot GWqlabsBan1

#

@arctic arch @surreal junco I think he posted a number above the max number but still in the big int range

tidal burrow
#

a larger number than 64-bit, I assume

proud sphinx
#

yes

#

like a JavaScript number

#

Not a 64 bit integer

obtuse flicker
#

Lmao I accidentally pushed a server count for my canary branch of my bot that I was testing so now my server count is at 1 lmao

#

17 votes 1 server lmao

valid nest
#

Hi i meat you @thin dew

#

You from israil

#

Lol

jaunty depot
#

😤

wooden sparrow
#

<--- Anyone able to help this fool setup a webhook to receive votes? Confused about how to actually setup the url information should be sent to

feral iron
#

Ok

azure pollen
#

stop using @abstract moth in this channel

#

read the description.

plain timber
#

@wooden sparrow What language do you use

wooden sparrow
#

js

restive otter
#

i need some help

#

i do not under stank any thing on the library

#

idk how it works

#

and idk how to use them

#

"stank"

#

and what do you mean by the library

#

Bot's library *
choose one

#

that

#

you mean

#

idk how to do anything from the drop down menu

#

in the fucking form

#

do you not know what your library is

topaz wyvern
#

Why are you here

restive otter
#

so your library

#

wait

#

no

#

im not going tell you what your library is

#

i just dont understand how i code it

#

if you don't understand

#

learn how to

topaz wyvern
amber yacht
#

Hi everyone,
I'm trying to use webhooks using java with spark
Here is my code :

public static void startListening() {
        post("/votes", (req, res)->{
            JSONObject body = new JSONObject(req.body());
            switch(body.getString("type")) {
                case "upvote": handleUpvote(body);
                    break;
                case "test": System.out.println("Test webhook received: " + body);
                    break;
            }
            return null;
        });
    }

I call the startListening() method in the ReadyEvent of jda
I'm testing on my computer
When i use the test button in the website nothing happens....
What's wrong ?

tidal burrow
#

...on your computer?

#

don't tell me you are trying to post with a discord webhook...

amber yacht
#

no

#

no

#

not a discord webhook

#

its in the bot

#

when i say on my computer i mean when running it in my ide

tidal burrow
#

still

#

discord webhook

#

right?

#

what link did you put as a webhook url?

amber yacht
#

correct right ?

tidal burrow
#

are your ports open?

amber yacht
#

yes

restive otter
#

dont tell people what your ip is

tidal burrow
#

this isnt ip

restive otter
#

ok

#

oh

tidal burrow
#

ip format is x.x.x.x

amber yacht
#

thx anyway @restive otter

loud gulch
#

my ip is 127.0.0.1

restive otter
#

now people are able to track you down

topaz wyvern
#

dude

#

same

loud gulch
#

same

tidal burrow
#

are you done?

amber yacht
#

what can i do to make it work ?

loud gulch
#

ok @restive otter let me tell you something in #general

sterile sleet
#

just ddos'd yourself

#

gratz

restive otter
#

ok @loud gulch

amber yacht
#

please help...

#

@tidal burrow should i try to test on the vps ?

tidal burrow
#

sure

#

it should be running on a webserver anyway

amber yacht
#

i'm new to all this stuff
i'm using heroku whitout a webserver
what ip should i use in the website ? 0.0.0.0 ?

tidal burrow
#

your ip, I assume? I haven't done it myself before

#

I mean the webserver's ip

amber yacht
#

well... i use a heroku free dyno that is already running my bot

#

i can't add a webserver...

#

i'll try with 0.0.0.0

shut ibex
#

0.0.0.0 should be ur public ip afaik

plain timber
amber yacht
#

it's not a web app, i'm using a run Procfile

#

i abandonned the idea because i can't get the dyno ip

#

so...

azure plover
#

Don't use Heroku... get a VPS...

#

Get something you can actually ssh into...

summer osprey
#
const DBL = require('dblapi.js');
const dbl = new DBL("token", { webhookPort: 5000, webhookAuth: 'password' }, bot);
dbl.webhook.on('ready', hook => {
  console.log(`Webhook running at http://${hook.hostname}:${hook.port}${hook.path}`);
});
dbl.webhook.on('vote', vote => {
    console.log(vote.user)
if(bot.userdata.has(vote.user)) {
  let num = Math.round(bot.userdata.get(vote.user).tiers*1000)
  bot.userdata.set(vote.user, num, 'coin')
}
});
dbl.on('posted', () => {
  console.log('Server count posted!');
});
dbl.on('error', e => {
 console.log(`Oops! ${e}`);
});
``` why doesn't vote.user log when i click test?
zenith marsh
#

how would i post my server count without using the predone python api?

#

i dont want to use the predone api due to it not being compatible with my python install

#

(and, fear of upgrading my python breaking everything requiring an os reimage, because it happened)

obtuse flicker
#

Sharding on heroku omegalulmmLol

restive otter
#

lmao

obtuse flicker
#

@zenith marsh Not sure if node works like python file wise but try to find the main source file. Then go through it and use what you need and discard unsupported stuff....

#

But it could break dbl so I advise against it

calm torrent
#

read the api documentation, not the wrapper but the actual api and do your web POST requests @zenith marsh

haughty tundra
#

Code:

import aiohttp

dbltoken = "token"
url = "https://discordbots.org/api/bots/" + bot.user.id + "/stats"
headers = {"Authorization" : dbltoken}

async def on_ready():
    payload = {"server_count"  : len(bot.servers)}
    async with aiohttp.ClientSession() as aioclient:
            await aioclient.post(url, data=payload, headers=headers)

async def on_server_join(server):
    payload = {"server_count"  : len(bot.servers)}
    async with aiohttp.ClientSession() as aioclient:
            await aioclient.post(url, data=payload, headers=headers)

async def on_server_remove(server):
    payload = {"server_count"  : len(bot.servers)}
    async with aiohttp.ClientSession() as aioclient:
            await aioclient.post(url, data=payload, headers=headers)

**Error: **

Unclosed connection
client_connection: Connection<('discordbots.org', 443, True)>
Unclosed response
client_response: <ClientResponse(https://discordbots.org/api/bots/490636168900116489/stats) [200 OK]>
<CIMultiDictProxy('Date': 'Tue, 02 Oct 2018 15:20:15 GMT', 'Content-Type': 'application/json; charset=utf-8', 'Content-Length': '2', 'Connection': 'keep-alive', 'Set-Cookie': '__cfduid=de2636b4a489a5ce972e3457cf97b358c1538493615; expires=Wed, 02-Oct-19 15:20:15 GMT; path=/; domain=.discordbots.org; HttpOnly; Secure', 'X-Powered-By': 'Express', 'Access-Control-Allow-Origin': '*', 'Access-Control-Allow-Headers': 'Authorization', 'Etag': 'W/"2-vyGp6PvFo4RvsFtPoIWeCReyIC8"', 'X-Varnish': '876150903', 'Age': '0', 'Via': '1.1 varnish-v4', 'Accept-Ranges': 'bytes', 'Strict-Transport-Security': 'max-age=15552000; includeSubDomains; preload', 'X-Content-Type-Options': 'nosniff', 'Expect-Ct': 'max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"', 'Server': 'cloudflare', 'Cf-Ray': '463826e63c944427-BRU')>

Lib: Discord.py
Code From: Hugop#2950

#

IDK but I think its related to the web, as I see cloudflare ect.
Maybe one of the Website Administrators could help me/say what is wrong?

arctic arch
haughty tundra
#

Ok, but do you have any idea what it may be could be?
Sorry, I'm not good with website dev. yet.

obtuse flicker
#

Trust me no one is good at ws

arctic arch
#

idk about python

haughty tundra
#

😢

late jay
#

could someone please show me how do I show my server count on the page with the API?

restive otter
#

Anyone made a bot with kickstarter/patreon api?

glass maple
#

same

plain timber
#

@late jay what language

late jay
#

python @plain timber

plain timber
late jay
#

thanks

plain timber
#

Yw

restive otter
#

Sorry

summer osprey
#

Not sure what my issue is with it in JavaScript

restive otter
#

what

summer osprey
#

I have an issue where all the events that I use including ready and posted work but voteevent isn’t triggered for some odd reason when I run a test or a real vote

restive otter
#

@haughty tundra having the same issue here

Unclosed connection
client_connection: Connection<ConnectionKey(host='discordbots.org', port=443, is_ssl=True, ssl=None, proxy=None, proxy_auth=None, proxy_headers_hash=None)>```
haughty tundra
plain timber
#

@summer osprey did you set the webhook auth and port in your code, and the URL and auth in the edit page?

summer osprey
#
const DBL = require('dblapi.js');
const dbl = new DBL("token", { webhookPort: 5000, webhookAuth: 'password' }, bot);
dbl.webhook.on('ready', hook => {
  console.log(`Webhook running at http://${hook.hostname}:${hook.port}${hook.path}`);
});
dbl.webhook.on('vote', vote => {
    console.log(vote.user)
if(bot.userdata.has(vote.user)) {
  let num = Math.round(bot.userdata.get(vote.user).tiers*1000)
  bot.userdata.set(vote.user, num, 'coin')
}
});
dbl.on('posted', () => {
  console.log('Server count posted!');
});
dbl.on('error', e => {
 console.log(`Oops! ${e}`);
});
``` Here is my code and yes i did put in the edit page
plain timber
#

what did you use as the url in your edit page

summer osprey
plain timber
#

what if you try directly POSTing to it with postman

summer osprey
#

ugh?

#

What

plain timber
#
summer osprey
#

I have it but no clue how to use

plain timber
#

make a post request to the url

#

and make the body whatever DBL would send

summer osprey
#

OH

#

@plain timber Do i have to use any auth on postman?

#

(If so which one)

plain timber
#

@summer osprey headers > make an Authorization header

summer osprey
#

How

plain timber
#

set the name/title/key to Authorization

summer osprey
#

Ok and am i making a post or get request

plain timber
#

post

summer osprey
#

Ok

#

Is it in a json/application that i make the body if so is there somewhere i know where to put everything? @summer osprey

#

@plain timber ^ Honest gg for tagging myself

plain timber
#

json

summer osprey
#

so something like this?

#
{
bot: 368486558346772480,
user: 335893092756488205,
type: "upvote",
isWeekend: false,
query?: ''
}
#

@plain timber Would that work as a post?

plain timber
#

probably

summer osprey
#

So my auth i put as a key in headers?

#

@plain timber ^

plain timber
#

oh uh

#

the IDs should be in quotes

summer osprey
#

I did still same bad string

topaz wyvern
#

quotes

#

""

summer osprey
#

I change it all to ""

topaz wyvern
#

🤔

summer osprey
sterile sleet
#

Shouldn't it be "bot":"that long number here"

summer osprey
#

Does bot need to be in "" too

#

smh

sterile sleet
#

Yea

#

in a JSON

summer osprey
#

Sometimes my brain is slow sorry

sterile sleet
#

👍

topaz wyvern
#

im just straight up dumb

shut ibex
#

Also why is it query?

#

Should just be query

sterile sleet
#

First maybe correct advice I've given here

#

Dream no

topaz wyvern
#

dream yes

sterile sleet
#

You is smart

topaz wyvern
#

nono

shut ibex
#

Your smaer

#

Smart

#

Just slow

topaz wyvern
#

oh ok

sterile sleet
#

yes

summer osprey
#

So where do i put auth now?

#

In header in a key?

#

Cause i think that's what the other guys said idk

#

@sterile sleet ?

sterile sleet
#

idk

#

I could only answer the JSON thing sorry

#

¯_(ツ)_/¯

summer osprey
#

Oh thanks tho

#

Maybe @plain timber the auth goes in a key spot in headers?

plain timber
#

sec

summer osprey
#

Ok

plain timber
summer osprey
#

Wait so i put Authorization and then the auth in value

plain timber
#

yes

summer osprey
#

The auth being the thing i set or the token?

plain timber
#

the thing you set

summer osprey
#

Ok

#

There was an error connecting to...

#

That's nice

#
const DBL = require('dblapi.js');
const dbl = new DBL("token", { webhookPort: 5000, webhookAuth: 'password' }, bot);
dbl.webhook.on('ready', hook => {
  console.log(`Webhook running at http://${hook.hostname}:${hook.port}${hook.path}`);
});
dbl.webhook.on('vote', vote => {
    console.log(vote.user)
if(bot.userdata.has(vote.user)) {
  let num = Math.round(bot.userdata.get(vote.user).tiers*1000)
  bot.userdata.set(vote.user, num, 'coin')
}
});
dbl.on('posted', () => {
  console.log('Server count posted!');
});
dbl.on('error', e => {
 console.log(`Oops! ${e}`);
});
``` So if this is my code i put `password` as Authorization *Sorry i keep asking just need to be clear*
#

@plain timber ^

plain timber
#

yes

summer osprey
#

Ya that's what i did and There was an error connecting to...

plain timber
#

well then the URL is probably wrong

#

what are you hosting your bot on?

summer osprey
#

aws

plain timber
#

uh

#

if the IP doesnt work there may be a domain

#

im not really sure

summer osprey
#

What @plain timber

plain timber
#

there might be a domain that you can use instead of the IP

#

if you cant connect to the IP

#

i dont really know how aws works

restive otter
#

want to see a win xp

#

i have one

#

fully working

#

its on

#

soundless

#

quiet

topaz wyvern
#

Uh

#

Ok?

restive otter
#

2 graphics card idk y

shut ibex
topaz wyvern
#

And why are you posting this in api again

restive otter
#

idk

#

buts its old

#

1999 or 2000

#

or earlier

swift spindle
#

Show more

charred panther
#

So for all you nerds.... https://arcanebot.xyz/i/AIaHBA.png Does this count for the 24 hours.... like it says.. and am I stressing over nothing or is it the "newer" 12 hour system

obtuse flicker
#

12 hour

restive otter
#

i need api Chat bot plz give for me

#

You can try cleverbot

restive otter
#

Eww

haughty tundra
#

Were can you find the full dbl documentation (python) ?
(Like something similar to the Docs from discord.py?)

clear geode
restive otter
#

@arctic arch this works?

arctic arch
#

what this?

#

that lib?

restive otter
#
const DBL = require('dblapi.js');
const dbl = new DBL(`tok`, { webhookPort: 5000, webhookAuth: 'mypass' });
dbl.webhook.on('ready', hook => {
    console.log(`Webhook running at http://${hook.hostname}:${hook.port}${hook.path}`);
});
dbl.webhook.on('vote', vote => {
    bot.channels.get('494876840385708032').send(`${vote.user} voted!`);
});
#

this

arctic arch
#

yea that works

restive otter
#

and where

#

i can find

#

my pass

arctic arch
#

go to the edit page of your bot

restive otter
#

yes

arctic arch
#

thats where you'll put in the url as well

restive otter
#

like this

arctic arch
#

yes but the url is wrong

#

it should point to your bot

restive otter
#

where i can find my server port

#

Please help ...

#

you can help me?

arctic arch
restive otter
#

and

#

...

#

like

#

?

arctic arch
restive otter
#

this i need to put to URL

#

and to autorization the "Token for this bot"

restive otter
arctic arch
#

replace the ip with the ip tho

restive otter
#

😦

#

idk where i can found

#

im noob

#

@arctic arch Which ip? where I can find it

arctic arch
#

where are you hosting

restive otter
#

oh shit

#

@arctic arch here is a problem I can not find it because heroku :((

arctic arch
#

do you get some sort of subdomain from heroku

#

like

glacial badge
plain timber
haughty tundra
#

Ty ❤

plain timber
#

Yw

polar mirage
#

Clicking "Open app" in the dashboard will take you to it

proven garnet
#

I love the Usage instructions for the Java Library

snow sky
#

Are you guys sure the webhooks are set up correctly? I've tested mine several times and nothing has come through

#

Waited 5 minutes btw

mystic wing
#

Could you post your configuration on your settings page?

snow sky
#

Nevermind I'm stupid and didn't put http:// before the url

hoary timber
#

How can I actually post the guild-count for my bot?
I already done that before, but the issue is now, that I want to post the guild-count for all shards of my bot (even tho it's only one shard atm), but it looks like, that the amount is only provided as a long and not as an integer....
And ideas?

tidal burrow
#

Tried manually converting it into an integer?

zenith marsh
#
async def servcount():
    await bot.wait_until_ready()
    while True:
        serverc = len(bot.servers)
        headerss = {"Authorization" : "noToken4u"}
        async with aiohttp.ClientSession() as dblsess:
            async with dblsess.post("https://discordbots.org/api/bots/452598458625425428/stats", headers=headerss, json={'server_count': serverc}) as log:
                print(log)
        await asyncio.sleep(900)

anything wrong i'm doing?

tidal burrow
#

It's data, not json

zenith marsh
#

But, in aiohttp's docs, the example says to use json

tidal burrow
#

Which example

zenith marsh
tidal burrow
#

I've never used json

#

Data is what always has worked for me

#

Maybe these docs are outdated

zenith marsh
#

hm

#

lemme restart my bot real quick and investigate error msgs

#

oh right

#

testing

tidal burrow
#

Also make sure you import aiohttp

zenith marsh
#

yup

#

GOT IT!

#

finally

#

@tidal burrow what is a good interval to post the server count at? i set mine to 15 minutes

tidal burrow
#

60/60 is the deadline

zenith marsh
#

@tidal burrow wdym

tidal burrow
#

60 requests in 60 seconds

zenith marsh
#

so send a request every second?

#

what

tidal burrow
#

No that's a bare limit, I just wanted you to make sure you don't exceed that

zenith marsh
#

okay.

#

@tidal burrow so something like a post every five minutes is good?

tidal burrow
#

Yeah

#

Some do every minute, but it's better not spam the API that much

zenith marsh
#

alrite

vagrant python
#

I send one on guild join

#

unless you get 61 a minute forever, that's good enough for me

loud gulch
#

same @vagrant python

zenith marsh
#

how would i get the amount of upvotes the bot has via an api?

#

never mind

hoary timber
#

@tidal burrow Sorry, was away....
I honestly have no idea how I would to that.... I guess such a simple thing like Integer.valueOf(long) doesn't exist....

hoary timber
#

Why is it even a integer?
Wouldn't it be just better to directly have it as a long? Or to at least support a long?

restive otter
#

Anyone have issues with their bot sending amount of guilds?

#

One request is 401, then it works with a 200 response code, the token has been the same. Besides when I regenerated yesterday. meowthinkingportal

vapid cove
#

.

restive otter
#
    if (voted) console.log("Tonkku has voted!!!")
});```
how do I make the id of the person voting?
#

you don't

late jay
#

can I get an example of how to post to my bot's stats (server count)?

#

like, how do I do the authentication before I send the post request

restive otter
#

set the token as "Authorization" header

late jay
#

wait, how do I even make the request?

#

I forgot it's post and not get

#

I guess I can use requests...

#

ok, it doesn't work...

#

how should it look like in python?

#

what is the full url?

shut sun
#

how to chceck if someone voted on my bot

#

with python

#

i want example

sudden rampart
#

@hoary timber just cast from long to integer

#

int myInt = (int)myLong

hoary timber
#

Not really the best thing...

sudden rampart
#

that's the only way to convert from long to int

hoary timber
#

Why is there not just a option for also having longs?

sudden rampart
#

because no bot has 2 billion guilds

hoary timber
#

But when even sharding has long as default.....

#

It wouldn't hurt that much... But I already made that int-thing...

arctic arch
haughty tundra
#

Do you like need to use the DBL API thingie like this?

await dblpy.get_upvote_info(days=1)

(I'm meaning the "days" thingie)

tiny nebula
#

That thingie is a parameter

#

You could easily see for yourself by just not passing it

#

I just looked through the src and it's optional.

obtuse moth
#

Christian

storm zephyr
#

help me

#

some_insanely_secret_path
what should i change this to?

#

do i need

#

api.login(my api token)

#

?

storm zephyr
#

even tho its online on my server

#

nvm i fixed it

haughty tundra
#

(it has some delay)

mighty raft
#

s]'

restive otter
#

@arctic arch How can I find out how many votes has my bot to put at r!stats

#
${dbl.getVotes()}
#

?

arctic arch
#
dbl.getBot().then(bot => console.log(bot.monthlyPoints))
restive otter
#

and th totals?

arctic arch
#

for all time votes bot.points

restive otter
#

just console.log?

arctic arch
#

no thats an example

restive otter
#

ok thank's

arctic arch
#
`${await (dbl.getBot()).points}`
#

that could work

restive otter
#

ok thx

arctic arch
#

but it has to be an async function

restive otter
#

ik

#
`${await (dbl.getBot('488653202607177738')).points} (${dbl.getBot('488653202607177738').then(bot => bot.monthlyPoints)})`
#

@arctic arch

arctic arch
#

oh

restive otter
#

ohj

arctic arch
#

I think the await should go inside the parenthesis

#

(await dbl.getBot('488653202607177738')).points

restive otter
#

ok

arctic arch
#

for the object Promise, you can't do it inline

restive otter
#

ok

arctic arch
#

either the async await or you do it outside the string

restive otter
#

wait

#

i can define it?

arctic arch
#

yes

restive otter
#

same...

#

its undefined ([object Promise]) because the first one is trying to read property points of the promise which is undefined, and the second one isnt awaited
probably it should be like:

`${await dbl.getBot('488653202607177738').then(r => r.points)} (${await dbl.getBot('488653202607177738').then(bot => bot.monthlyPoints)})`
#

ok

#

wait

#

thank you

#

or you could just await it before, then use .points and .monthlypoints

#

instead of making 2 requests joyemote

#

👍

fringe epoch
#

I had that example in my code

#

But it wasn't updating

arctic arch
#

I only just now realized red is getting points and monthlypoints

dawn fjord
#

Lol

restive otter
#

regheton

spare axle
#

How do I use the api again?

restive otter
#

About this announcement: do i have do to anything about it? i haven't touched my bot in a long time.

fiery portal
#

why we are in voice chat xD?

wild blade
#

it only affects you if you use the discordbots api without a key

restive otter
#

cause tonkku in

latent ocean
#

How would it require the token every time we use an api? need details

sonic jacinth
#

so will it be signed request or? also does it affect server count requests?

arctic arch
#

the same way it does for posting stats

#

no change for stat post requests

latent ocean
#

Alright

royal narwhal
#

so if all we do is send the server count we good?

arctic arch
#

yeah, you're good

royal narwhal
#

👍

junior goblet
#

ya ive got a question brother
why

restive otter
#

should I refresh my token?

arctic arch
#

to control abusive api usage

thorny parrot
#

So https://discordbots.org/api/bots/432533456807919639 would require an auth token?

restive otter
#

How so?

sonic jacinth
#

@arctic arch nice, ty

real oar
#

Brother.

arctic arch
#

@thorny parrot yes

tepid lance
#

Sister

thorny parrot
#

Oof

restive otter
blazing basin
#

I would agree

junior goblet
#

ok but wait
why does every single endpoint need to be locked down that's just not very cash money of you dbl develops

arctic arch
#

you'd have to update the module closer to the change

#

blake dont meme here

junior goblet
#

I am asking a question what the earth

#

??

grizzled lake
#

😂😂

obtuse flicker
#

Its bad when slow mode is enabled in api

jaunty depot
#

i didnt quite get whats going on

#

can someone explain me?

restive otter
#

hm

dawn kernel
#

All api endpoints will soon require authentication

#

Why 5 seconds slowdown

glass maple
#

why the slowmode

#

it’s a pain

arctic arch
#

cuz announcement and chat goes crazy

glass maple
#

means i can’t line spread 😭

dawn kernel
#

^

jaunty depot
#

sad

#

what kinda authentication

arctic arch
#

edit the previous message with line spread mmLol

pliant shell
#

So, If i am owning bot, i need to give my bot token to someone?

arctic arch
#

the token you'd use for stat posting

split nexus
#

The token we get from DBL?

arctic arch
#

yes

split nexus
#

Ok

vapid cape
#

so if stat posting is the only thing i do, i dont need to change anything right? only GET requests are affected?

glass maple
#

yeah

arctic arch
#

correct

obtuse flicker
#

Wht

vagrant python
#

can you confirm that one more time

prisma briar
#

just ban people who api abuse

glass maple
#

you can disable slowmode now tonkky there’s like two people typing

obtuse flicker
#

But you would think that you would want to prevent false server counts before anything else

#

Wth

vagrant python
#

How would you do that?

neat wedge
#

alright

#

will there be rate limits?

#

if yes, how much

restive otter
#

probably the same as posting server count

arctic arch
neat wedge
#

for all endpoints?

#

oh ty

restive otter
#

i still cant figure out why posting server count sometimes leads to a 401. awauuu

neat wedge
#

huhh, 60 per minute? 😮

arctic arch
#

@restive otter I'll have to investigate that further later

neat wedge
#

I wanted to create a command which can browse and show bots from DBL

restive otter
#

Thank you. meowheart

neat wedge
#

but that'd exceed the limit I think with 700k+ users xD

sonic jacinth
#

you can cache them slowly @neat wedge ?

#

i don't think they would have a problem with that

neat wedge
#

Well, the user can specify the bot's name that he wanna see

#

like informations

#

I cannot cache every bot info

thick marsh
#

how to vote ?

restive otter
#

oh god

raven zinc
#

you definitely can

#

first of all, most of these 700k users won't search for a bot, very few people would use it

neat wedge
#

I am talking about the /bots/{bot.id} endpoint now tho

raven zinc
#

second, you can progressively cache it and update the cache regularly

thick marsh
sonic jacinth
#

you can keep a cache of it for sure, this is how i handle @round sapphire

neat wedge
#

will see then

sonic jacinth
#

and you can just do for loop to get the bot ids

junior goblet
#

tonkku i want my question answered

#

why does every single endpoint need to be locked down

#

did we run some tests on how popular these api endpoints were or something

sonic jacinth
#

just keep it at 1 request/sec and you should be ok

restive otter
#

how will this token thing work?

sonic jacinth
#

this is how i understand it

weary ember
#

can we have like a part of the website to test posts/endpoints

half delta
#

honestly, i don't see a point in locking down every endpoint

storm zephyr
#

what is this mean

junior goblet
#

@half delta absolutely correct, what a genius

half delta
#

a couple, sure, but not every single one

restive otter
#

👀

junior goblet
#

i am outraged

#

these endpoints are used by people

#

and these people dont need to sign up for your service

signal smelt
#

this one is actually useful

zenith marsh
#

does authorization for all api endpoints include /api/bots/botid?

half delta
#

yes

zenith marsh
#

aleite

weary ember
#

yes

junior goblet
#

AND if you had a decent api TONOKu you wouldn't need to put it behind auth

#

im just upset tonk

#

why do it

half delta
#

speaking of which

#

i should start up that csgo event

#

cya

junior goblet
#

true

honest kayak
#

lul

thick marsh
restive otter
#

because people scrape the api and started clone sites

arctic arch
#

@half delta yeah, and you're correct but why not do all of them

open owl
#

When will certification be available?

restive otter
#

so instead of ratelimit or not having a limit of 500, we just force auth awesmart

arctic arch
#

just to be sure

junior goblet
#

ok tonk you're a little ***** why ignore me

restive otter
#

because multiple discord accounts never happened 😶

arctic arch
#

@restive otter ratelimiting doesn't stop it

junior goblet
#

yeah was about to say that

#

thank you T🎃nk