#topgg-api

1 messages · Page 175 of 1

rain heart
#

check if your ports are firewalled though and that the ip on your domain is actually the ip of the machine hosting the webhook

paper grotto
rain heart
#

is the domain set to the vps ip?

paper grotto
jaunty plank
#

Using cloudflare?

#

Cloudflare only allows specific ports if you are

#

(If the proxy is enabled)

paper grotto
#

yes i'm using cloudflare

rain heart
#

and if thats the case, consider making a subdomain, unproxied so you can use the subdomain to reach your server without using the proxy

paper grotto
#

how i enabled the port ?

rain heart
#

use a subdomain then, you cant proxy a non http port through cloudflare

#

make sure that subdomain is not proxied

#

or just directly use your vps ip for the webhook

paper grotto
#

i do a certification SSL on the subdomain ?

jaunty plank
#

But you need to change a few settings

rain heart
#

wait

#

what the fuck

#

since when

paper grotto
#

my configuration is good @rain heart ?

rain heart
#

try it

#

replace myip with your ip ofc

paper grotto
#

y ofc

#

😂

tidal idol
#

Is ur ip static

jaunty plank
#

Probably best to move all your vote restricted commands to use an internal database and use webhooks.

Even if you are not hitting the posted ratelimits you are hitting some ratelimit so best to move what you can off the api onto webhooks.
https://docs.top.gg/resources/webhooks/
The has voted endpoint is supposed to be temporary anyway

paper grotto
#

@jaunty plank then, i have to create a certification SSL and a new proxy nginx ?

jaunty plank
#

I would use ssl, and proxy nginx if possible, but not strictly necessary

paper grotto
#

so i have create a cloudflare configuration like this, and i just have to write my webhook url like this http://topgg.xelia.tk:1065/dblwebhook

#

?

rain heart
#

yes

paper grotto
# rain heart yes

when i send a test, i receive nothing on the discord server. you are sure there is nothing to configure in the nginx configuration for the subdomaine ?

rain heart
#

Trying to access the webhook outside of top.gg does not work either

#

So it's an issue on your end

paper grotto
#

i have nothing

rain heart
#

Add the port to it

#

That's your nginx webserver

#

Nginx != Your webserver webhook

paper grotto
#
server {

#        root /home/bots/Xelia/website;
#        index index.html;

        server_name topgg.xelia.tk;

        location / {
                try_files $uri $uri/ =404;
        }

    listen [::]:1065;
    listen 1065
}```my configuration is ok ?
jaunty plank
#

also since you are using a subdomain with cf you can listen on port 80/443(depending on http vs https)

silver niche
#

using the top.gg sdk for nodejs im getting

``` when i use `tsc` to build from typescript to js
#

anyone have any idea how to fix it

silver niche
#

Late update to my troubles: I installed express typings and everything worked fine

restive otter
#

Fuck

sullen nymph
#

@dense grail ?

dense grail
eternal charm
#
fetch("https://top.gg/api/bots/890605240309661726/stats", {
      method: "POST",
      body: JSON.stringify({ server_count: bot.guilds.cache.size }),
      headers: {
        "Content-Type": "application/json",
        "Authorization": "[REDACTED]"
      }
    }).then(res => res.json()).then(res => console.log(res))
``` is returning `{}`, any ideas?
jaunty plank
#

🤔 it looks like the entire response is empty. strange

eternal charm
#

does that happen when it was successfl?

rain heart
#

posting stats does not return any data

#

thats normal

#

you could check if it was posted by doing a get request to stats

eternal charm
#

yea im too lazy for that

#

it says 0 servers tho so

rain heart
#

clear your cache

#

site display is different from what the api says

#

the site one is likely cached

eternal charm
#

ayyy there we go. thanks!

wispy jetty
#

how can i get the amount of votes for an application?

restive otter
tranquil nimbus
#

How do I define my server count on the bot widget? Is there a video tutorial?

rain heart
#

-servercount

abstract mothBOT
dusk latch
#

Hello, suddenly my bot has stopped updating stats so I was trying to make http requests directly, but I'm getting this error (Required parameter server_count or shards missing), even though I'm setting server_count

tidal idol
#

i can see why

#

not sure if this is the issue but it might be because you're posting just the server count

#

and based on the count, you would need to send the shard count too

dusk latch
nocturne quarry
#

How do I set up the web-hook in my discord bot?

tranquil nimbus
# rain heart -servercount

Thanks, but that isn't helpful because I have a hard time reading documentation for anything. I asked if there was a video. Is there a video or something that isn't confusing documentation?

#

Sorry, I just realized that came off as rude....

#

didn't mean it like that

rain heart
#

The docs provide the endpoint to be able to post Serverstats to

dusk latch
rain heart
#

What content type

fading monolith
#

When I execute the following code within bot's actual code I get an error :


import topgg

# This example uses tasks provided by discord.ext to create a task that posts guild count to Top.gg every 30 minutes.

dbl_token = "Top.gg token"  # set this to your bot's Top.gg token
bot.topggpy = topgg.DBLClient(bot, dbl_token)


@tasks.loop(minutes=30)
async def update_stats():
    """This function runs every 30 minutes to automatically update your server count."""
    try:
        await bot.topggpy.post_guild_count()
        print(f"Posted server count ({bot.topggpy.guild_count})")
    except Exception as e:
        print(f"Failed to post server count\n{e.__class__.__name__}: {e}")


update_stats.start()```


Error:
```Failed to post server count
Unauthorized: Unauthorized (status code: 401)```
fading monolith
#

if yes I did

jaunty plank
#

Nope. On the page you fill in the webhook token theres a spot for the top.gg token.

#

(Api token)

#

Might need to regen it to show

fading monolith
#

This one right?

jaunty plank
#

yep

fading monolith
# jaunty plank yep

thanks problem solved. I think I had regenerated the token but it showed the previous token so the error was coming

jaunty plank
#

Yeah, been a common issue. sorry about that.

fading monolith
jaunty plank
#

it can take a bit, clearing your cache may get it to show sooner.

abstract mothBOT
fading monolith
#

ok thanks

jaunty plank
#

for "memer" its showing 110 servers for me

fading monolith
restive otter
#

Hello

#

I was just finally trying to integrate the top.gg token

#

and according to the doc's

#

but when i replace :your-bot-id with my bot id it show's this

tidal idol
restive otter
tidal idol
#

2 weeks or more

restive otter
rain heart
#

-api

abstract mothBOT
#

This channel is ONLY for the Top.gg API!
This channel is only for: suggestions/help/bugs to do with official API libraries and API docs found at: https://docs.top.gg
Any Off-Topic conversation may get deleted and muted.

If you need help with development about your bot or development in general, feel free to use #development.

sterile cairn
#

no srry he sad i love you

#

can we be frends'

sterile cairn
#

can we be frends

rain heart
#

-api

abstract mothBOT
#

This channel is ONLY for the Top.gg API!
This channel is only for: suggestions/help/bugs to do with official API libraries and API docs found at: https://docs.top.gg
Any Off-Topic conversation may get deleted and muted.

If you need help with development about your bot or development in general, feel free to use #development.

rain heart
#

@sterile cairn

rain heart
#

-api once again

abstract mothBOT
#

This channel is ONLY for the Top.gg API!
This channel is only for: suggestions/help/bugs to do with official API libraries and API docs found at: https://docs.top.gg
Any Off-Topic conversation may get deleted and muted.

If you need help with development about your bot or development in general, feel free to use #development.

jagged sky
#

any1 here?

#

i am using the topgg 2.0.0a and am suddenly getting this error

#

self.bot.topgg_webhook = topgg.WebhookManager(self.bot).dbl_webhook("xxxxx", "xxxxxxx")
TypeError: init() takes 1 positional argument but 2 were given

sullen nymph
#

Have you seen the examples in the docs?

jagged sky
#

ofc and remind u that i was running the exact same script

#

for 2-3 weeks

#

now when i decided to restart the bot its giving this error

#

actually it doesnt have to do anything with restart its giving that error now suddenly

sullen nymph
#

Gimme a minute

jagged sky
sullen nymph
#

Or a few

jagged sky
#

no worries take your time

#

just ping me when done

sullen nymph
jagged sky
#

did this change happen in the past week?

#
    topgg.WebhookManager()
    .endpoint()
    .type(topgg.WebhookType.BOT)
    .route("/dblwebhook")
    .auth("youshallnotpass")
)```
What does type refer to here?
restive otter
jagged sky
#

i am actually using the 2.0.0a

#

because prior ones doesnt work with discordpy forks

restive otter
#

Ah

#

I didn't read the whole chat kekw

restive otter
#

It implies what to pass to the callback, either bot vote payload or server/guild vote payload

jagged sky
#

alright

jagged sky
restive otter
jagged sky
#

i am pretty sure i was using the latest version

restive otter
#

The WebhookManager takes no argument, so you should've got that error if you were

jagged sky
#

one more question where to provide port number?

restive otter
#

That bit didn't change

#

You pass that when starting the webhook

west surge
#

e

midnight vapor
#

What is the different between shard and shardCount? "the id of this shard" why do you need this information

rain heart
#

shard id is the index of the shard you're posting, this allows you to post stats from multiple shards onto the site and just have all the shards sum up

#

shard is the shard index and shardCount the count of servers that shard is serving

midnight vapor
#

But i post my stats only from one shard with the global guildCount

#

i dont use the guildCount of the shard

rain heart
#

then only post one shard id and then the total server count

midnight vapor
#

ok thanks

shadow palm
#

can we ask questions for the api wrappers here?

rain heart
#

sure, as long as you're asking questions about official ones

shadow palm
#

its the official one i think.
so i was using the python one and it was working fine but recently it started spitting this error regarding the webhook, but when i try to reload the cog it says that my given port is already registered, when it isnt.
https://pls-help.me/JuJ-I86OtgQXkemt/db9jEOdp.png

#

which is the latest version on pypi

restive otter
#

Mind sending the relevant code?

shadow palm
#

yea sure wait

#

oh wait

rain heart
#

why 2 instances

#

of your webhook

shadow palm
#

i think i found out the problem

#

yup that

#

i didnt notice that before-

#

sorry for wasting ur time

restive otter
#

All good, glad you've found the issue

shadow palm
#

also i see that the github has version 2.0 when will that be released?

#

if its even planned to be released

sullen nymph
#

ETA: ask God

restive otter
#

^ KEKW

#

I'm still considering the style, currently it's builder-like. I don't think it's Pythonic

#

IDK, I'll be more than happy to hear feedback on it

shadow palm
golden dew
#

why is it when I use npm init id dont work

#

no

#

when i try to make a bot

#

o

dusk latch
sullen nymph
#

What does your Content-Type header happen to be?

dusk latch
tidal idol
#

i think it needs to be json

#

iirc

sullen nymph
#

application/json

restive otter
#

@west shoal

dusk latch
rain heart
#

to note: refresh data does not affect the server count at all, it simply refreshes your bot avatar and name, which is not functional right now

#

if you make a change towards your server count, it will require you to clear your cache as you might be viewing a cached server count

dusk latch
#

It has updated now though

summer sparrow
#

Hi

tidal idol
true pilot
#

What is latest verison of @top-gg/sdk - node

#

And where are the changelogz?

smoky marten
#

See giit commmit logs for changes

true pilot
#

Ty

smoky marten
#

np

true pilot
fading monolith
#

How can I use vote updates (on_dbl_vote) without a webhook? any example code would help.
I am using python

restive otter
#

You simply can't

warm pelican
#
bot.topgg_webhook = topgg.WebhookManager(bot).dbl_webhook("/dblwebhook", "password")

What would you put for the password I'm trying to do a auto vote thing

jaunty plank
#

you are the one who decides it, its a password

warm pelican
#

Ok

warm pelican
jaunty plank
#

Yep, the authorization field just below the webhook url

#

As long as they are set the same

warm pelican
#

Cool

#

Thanks

#

What would we put in the webhook url?

jaunty plank
#

The url to your server, including path and port

warm pelican
#

Ok

#

And what would do if we are self hosting?

warm pelican
#

?

rain heart
#

you mean locally hosting? your own ip then

#

remember portforwarding aswell

warm pelican
#

I was just wondering for like testing reasons to make sure it all works

#
client.topgg_webhook = topgg.WebhookManager(client).dbl_webhook("/dblwebhook", "password")
client.topgg_webhook.run(5000)

so what we would put in the webhook url is [vps ip]:5000/dblwebhook?

plucky lance
#

Correct

warm pelican
#

then for the Authorization you would put what ever you have in the password area

plucky lance
#

Yes you can use a password but you don’t have to

#

The authorization layer just makes sure the request comes from topgg

warm pelican
#

ok

plucky lance
#

This can also be archived by whitelisting the IP address the request comes from if your default inbound policy is set to drop

warm pelican
#

ok

plucky lance
#

Which I guess isn’t a thing here at all but just to say

#

Anyways make sure requests on port 5000 can pass your firewall

#

Or hosting service firewall, whatever you use

warm pelican
#

ok

#

I'm getting this error when saving

rain heart
#

refresh the page

plucky lance
#

Ah clear your cache and reload the site a few times

warm pelican
#

ok

#

I got it to work

#

I need to add http:// to webhook url

plucky lance
#

If you haven’t setup SSL then yes

restive otter
#

Hello
I'm getting this error:

Error: 401 Unauthorized (You need a token for this endpoint)

but i'm sure i put the right token in my code
i already tried to regenerate the token several times!

rain heart
#

are you passing it through an env variable?

restive otter
rain heart
#

share your code then

restive otter
#

with token?

restive otter
# rain heart share your code then
const DBL = require('@top-gg/sdk')
const dbl = new DBL.Api('---', { webhookAuth: '---' }); 
dbl.postStats({ serverCount: client.guilds.cache.size })
rain heart
#

that constructor doesn't look correct, check the docs again

restive otter
#

btw its working now

rain heart
dapper night
#

Hi i'm trying to check if discord user has upvoted the bot. I'm doing this request:
GET https://top.gg/api/bots/:botid/check?userId=USERID
My header:
Authorization TOKEN
Response: 401 Unauthorized
I picked up the bot token in the webhooks page of my bot but the api still send me 401 response code

rain heart
#

you cannot use the api when your bot is not approved

dapper night
#

the bot is approved

rain heart
#

yup just realized nvm

#

Are you sure the token is valid

#

also are you using the botid of your own bot, not a different one

dapper night
#

I've fixed the problem by regenerating the token. Maybe there was a bug on the old one 🤔

sleek night
#

What's the format for creating a webhook url to send the vote data to my bot? I thought I had the right webhook url for my bot, but apparently not? I'm running my bot on Replit. Do I need more than https://{host}:{port}/{webhook_path}? Please ping me w/ your response. There's no guarantee I will see your reply if I'm not pinged.

foggy skiff
#

I am trying to make server upvote reward systems(using topggpy)

How do I get my DBL Token for my server(It is uploaded on top.gg)?

rain heart
rain heart
foggy skiff
silent lichen
rain heart
#

Check pins

silent lichen
#

if I am not bot owner, I can't get token ?

rain heart
#

If you do not have a bot on our site, you cannot get a token to use

#

There's no other reason why you'd need one nonetheless

silent lichen
#

okay

craggy heron
#

It's saying Topgg.api is not a constructor

amber sierra
#

does the topggpy library not work with disnake?

plucky lance
#

Do you test the webhook listener at home or on a server?

#

don't need to hide the port as we don't know your IP anyways

#

Does the server firewall allows incoming requests on that TCP port?

#

Try to define a different path, edit it in your code and on topgg, click save before hitting the test button

sleek night
# rain heart https://sendgrid.com/blog/whats-webhook/

I understand that, but how do I actually integrate it into my code? Do I need to do a GET or POST or what? I've never worked with webhooks before, so I don't really know what I need to code in order for it to work. Top.gg successfully sends the webhooks, yet I never recieve them.

restive otter
sleek hearth
#

anyone here make bot from bdfd? if yes how you can use top.gg api im so confuse how to use it

paper grotto
#

Heyyy I have a problem. I have a domain name on my VPS xelia.tk. I don't know what I have to write in the webhook url on top.gg.

paper grotto
#

Someone 🥺

sullen nymph
#

Somebody once told me...

sullen nymph
#

And whether you have HTTPS or not

vast umbra
rain heart
#

Hasn't been for a while

#

Though nothing to do on there either

twin reef
vast umbra
rain heart
#

That above is for java

#

It still works

paper grotto
#
const Topgg = require("@top-gg/sdk");
const express = require("express");

const app = express();
const webhook = new Topgg.Webhook("MY_AUTORIZATION");

app.post("/dbl", webhook.listener(async vote => {
    console.log('passssssss')
    let channel = client.guilds.cache.get("670189312687603723").channels.cache.get("715120187690582017");
    let user = await client.users.fetch(vote.user);
    channel?.send({ embeds: [await client.info("🔔 New vote", `Thank you **${user.username + '#' + user.discriminator || user.id}** for your voting ${client.user.username}.\nYou won a coin which can use in ${client.channels.cache.get('919705157741199370')}.`, {})] });
}));

app.listen(3000);
#

I receive nothing

#

someone knows why ?

rain heart
#

port missing

#

change https to http

paper grotto
paper grotto
rain heart
#

yes

paper grotto
#

like this ?

rain heart
#

host:port, your webhook is hosted on a non http default port

#

also try an actual vote instead of a testvote

paper grotto
paper grotto
rain heart
#

test it using something like reqbin for postman then

paper grotto
#

I don't have a token in my code ? it's normal

#

?

rain heart
#

that should not matter

#

test your webhook using a normal request outside of top.gg

#

to test if it works

paper grotto
#

like this ?

rain heart
#

yes

paper grotto
#

i receive nothing

#

@rain heart i didn't use the token its normal ?

rain heart
#

make sure the port is open/not used already and the firewall allows it aswell

paper grotto
#

how i open the port ?

#

@rain heart

rain heart
#

cant help with it

paper grotto
rain heart
#

I cannot help, as I'm not available to help nor have any idea how it would work on your server/local network

tidal idol
paper grotto
tidal idol
#

it would usually give an error because i'm trying to GET the webpage not POST it

#

which basically is a sign that its not accessible, and Top.gg can't send the webhook request to it

tidal idol
#

how are you hosting it

#

on your local network?

paper grotto
#

VPS

tidal idol
#

oh

#

are you able to access it at http://<vps ip>:3000/dbl ?

paper grotto
#

why 5000 ?

tidal idol
#

3000*

#

mb

paper grotto
#

ok

#

No

#

it loading

tidal idol
#

then its an issue with the domain configuration

#

are you using cloudflare

paper grotto
#

yes

tidal idol
#

wait

#

try setting the webhook to the working vps ip

paper grotto
#

here @tidal idol ?

tidal idol
paper grotto
#

here ?

tidal idol
#

yeah

#

set it to http://<vps ip>:3000/dbl

paper grotto
#

okay

#

it still load

tidal idol
#

does it not send a post request

paper grotto
#

no

tidal idol
#

oh

#

i have no clue then

paper grotto
#

If i just put my ip on the web

#

i have this error

tidal idol
#

then thats something wrong with your code

#

nothing exists at /dbl

paper grotto
tidal idol
#

no

paper grotto
#

if i just put the ip

rain heart
#

again that does not work

#

80/443 is used by your webserver

#

your webhook runs on 3000, it is entirely separate from your webserver

#

you need to connect to 3000 instead of 80, you cannot run stuff on the same port

paper grotto
#

I don't know how to set up the port 3000

#

@rain heart

rain heart
#

is what I'd drop in here as I have no clue about what you're using

paper grotto
#

now I have this message when I go to http://ip:3000

#

@rain heart

rain heart
#

then your dns was not setup properly

#

you should be able to use that for the webhook, it says that message as you cannot make a get request to that

paper grotto
#

so what i have to do ?

#

I'm lost :/

tidal idol
#

just use the IP

#

no reason to not

paper grotto
#

it's normal ?

tidal idol
#

yeah exactly

#

you can only send a POST request

#

put that in the topgg webhook field

paper grotto
#

ok it works thx so much

#

❤️

storm vale
#
const mySecret = process.env['Token'];
const client = new Discord.Client();
const { AutoPoster } = require('topgg-autoposter');

const ap = AutoPoster('top_ggtoken', client)

ap.on('posted', () => {
  console.log('Posted stats to Top.gg!')
})
client.login(mySecret);```
Why isnt this code working :/ 
it just says `Promise { <pending> }`
#

it was working fine a while ago 🤔

tidal idol
#

@restive otter try not to ghost ping the server owner please

restive otter
#

sry friend

tidal idol
#

@jaunty plank someone ghostpinging kristin and trying to mention hidden channels (against tos angery)

jaunty plank
#

angeryBOYE please dont ghostping anyone, or break tos

restive otter
#

sorry :c

storm vale
#

umm what and how

fossil oxide
#

if i only wanna use the top.gg api, i still need to submit my bot application? (i dont wanna make it a public bot)

rain heart
#

Not sure why you'd need the API otherwise

#

A bot on our site is required to use the api

fossil oxide
rain heart
#

Top.gg does not have an API for servers

fossil oxide
#

so i cant track who voted for the guild?

rain heart
#

Only with webhooks

fossil oxide
#

alr then

rain heart
#

And tracking it yourself

fading monolith
#

Can anyone tell me how can I setup a webhook for vote logs on Heroku
(or)
can I directly send message with the bot without using the webhook?

sullen nymph
tidal idol
sullen nymph
#

New Year time!

tidal idol
#

True

cobalt robin
#

Is it necessary to have an approved bot on top.gg to access their api?

tidal idol
#

yes

cobalt robin
#

:(

fallen nymph
#
const client = new Discord.Client() // Your discord.js or eris client (or djs ShardingManager)
const { AutoPoster } = require('topgg-autoposter')

const ap = AutoPoster('Your Top.gg Token', client)

ap.on('posted', () => {
  console.log('Posted stats to Top.gg!')
})
#

it says Shards 1 but it's Actually 5

twin reef
tidal idol
#

lol

twin reef
#

Yeah I don't want ppl to try to make a get request on the dblwebhook xD

jaunty plank
twin reef
#

when i make a request, yes

jaunty plank
#

using the vote button correct?

twin reef
#

yes

#

and the test request floods this error

jaunty plank
#

are you using any characters with accents in the url/auth?

#

or well, anything outside
a-z A-Z 0-9

#

(and obviously standard url stuff : / . are permitted)

twin reef
jaunty plank
#

yep, or in the url

twin reef
#

one second

jaunty plank
#

so like
ÀtêstPassword
wouldnt work
AtestPassword
does work

twin reef
#

we just use numbers and letters

jaunty plank
#

my next suggestion would be double checking you are updated to the most recent version.

if not, I would rewrite your code to this

app.post("/dblwebhook", async (req, res) => {
    console.log(req);
    res.send(201);
});

and see what the req sends

twin reef
#

let me try

jaunty plank
#

oh 👀

twin reef
#

or may the app.use(express.json()); cause something

#

nvm im fucking stupid had a typo in my ip address

#

i got a request in my console

jaunty plank
#

does it have things inside it? 👀

#

or is it empty

twin reef
#

what should i look for

#

still got that weird error

tidal idol
#

what node.js version are you using?

twin reef
#

16.13.0

tidal idol
#

@jaunty plank would this cause the issue?

#

a lot of the time these types of issues are caused by the version of node

twin reef
#

aaaaaaaaa

jaunty plank
twin reef
#

yeah

#

is there any workaround?

jaunty plank
#

its unlikely its a node issue, as you are practically on LTS version(16.13.1)

twin reef
#

yeah

jaunty plank
twin reef
#

the thing you sent me worked

#

the question is, what do i need to filter from the req

jaunty plank
#

If you really wanted to just handle it yourself without the lib I guess.


if (req.headers.authorization !== "YOURAUTHHERE") return res.status(403).json({ error: "Unauthorized" });
const vote = req.body;

#

this is not all the checks, like checking the body exists would be a good idea.

twin reef
#

ohooooooo

jaunty plank
#

op, youll also need to send a response

twin reef
#

yea i send back a 201

jaunty plank
#

yep, should be it then.

twin reef
#

thank you so much!

sand veldt
#

vote API?

rain heart
stone schooner
#

I have an endpoint that has been working for months to update my topgg server count and suddenly it has stopped working, has the API been changed?

#
const lib = require('lib')({token: process.env.STDLIB_SECRET_TOKEN});

let result = (await lib.discord.guilds['@0.1.0'].list()).length;

let token = process.env.token;

const Topgg = require(`@top-gg/sdk`);

const api = new Topgg.Api('place API key here');

console.log(result);

await api.postStats({
  serverCount: 666
  })

Running from autocode

jaunty plank
#

It shouldn't have changed.
What is returned from api.postStats

stone schooner
#

It's working again now

#

never sent yesterday though

jaunty plank
#

probably just api downtime

mystic yew
#

Is there a way to set server_count to 0?

#

I tried 0, null but it's not working

sullen nymph
#

Nada. Only 1

normal sierra
#

for post bots/:bot_id/stats

how do I get this from discord.py?

jaunty plank
#

it depends on the way you shard on py right? 👀

normal sierra
tidal idol
#

Ohhh I see

normal sierra
#

the AutoShardedClient

#

AutoShardedBot(shard_count=shardCount)

#

oh well, dosen't seem all that necessary

#

I'll just leave it out

jaunty plank
#

🤔 weird, not seeing how to do it

normal sierra
#

also does it take time for the server count to finally show up on the bot page?

normal sierra
jaunty plank
#

you may need to clear cache

abstract mothBOT
normal sierra
#

ah I see

#

no wonder, gotcha ty

#

@jaunty plank weiiirrd, I cleared my cache on my brave browser and it still dosen't show up

#

I even tried loading it on my other browsers firefox and edge which I haven't ever opened top.gg in those sites

#

and it still dosen't show up

jaunty plank
#

nope nothing,
any errors?

normal sierra
rain heart
#

Check the api instead

normal sierra
#

gotcha

rain heart
#

The visual servercount is cached

normal sierra
#

I'll just pray that it'll show up on the page later

rain heart
#

Then your server/shard count wasn't properly posted if that doesn't match what you sent

hollow plover
#

Why I can't vote

sullen nymph
#

You're not worthy of receiving the rewards for being good, Santa said

hollow plover
#

Already voted in top.gg site but in my checklist in discord it is available

#

it's really annoying

sullen nymph
#

What checklist?

hollow plover
#

on pokemeow

rain heart
#

If a bot tells you you cannot vote, then that's an error on their end

hollow plover
#

I can't claim new years promo because of that.

rain heart
rain heart
#

its not

#

what endpoint are you making a request to

wild bluff
#

Hi

sleek robin
#

Hi... Im trying to use the API via the webhook method. But I can't get it working.
I'm not getting any errors... The port is forwarded

#

Any ideas on how to see whats wrong?

jaunty plank
sleek robin
#

Ye I did, everything exactly like the github. Maybe somehow my port is not open even though its forwarded, who knows..
I ended up doing it the "opposite way" by sending a request instead

#

I feel like putting that on the github or like getting started too would make things smoother

jaunty plank
normal sierra
#

I'm assuming that I can't just directly put in a discord webhook url to the webhook url in the bot's settings right? KEK

rain heart
#

correct

dark river
#

Hello does top.gg knows autocode?

jaunty plank
#

know in what way?
we know what it is.

dark river
rain heart
#

you cannot vote on behalf of a user

#

if thats what you mean

dark river
#

To log a vote*

jaunty plank
#

I wouldnt think so

#

but I could be wrong

dark river
#

Add https://

rain heart
#

if autocode supports hosting webhooks to receive vote data, sure can be done

#

ask their support about it

dark river
#

Do i just copy this?

old pike
#

Guys how to authorize

#

I cannot authorize

twin reef
#

im not clicking that

tidal idol
#

@rain heart really sus link

twin reef
#

vt says nothing

rain heart
#

@old pike we cannot help with that

restive otter
proper blaze
#

can someone help me with something

tidal idol
proper blaze
tidal idol
#

sure

jaunty sable
#

I keep getting an 401 unauthorised error when posting to https://top.gg/api/bots/678881455883026463/stats

#

I have Authorization header set

rain heart
#

How are you passing the header?

jaunty sable
#

ey... is my token

rain heart
#

And where have you obtained the token?

jaunty sable
#

https://top.gg/bot/678881455883026463/webhooks

steady gulch
#

is there a way to get votes for a server?

#

like a webhook is sent to our server when a discord member votes for a server

jaunty plank
steady gulch
#

I mean with coding, I have done with bots, for servers I didn't see any Webhook url field when creating them

jaunty plank
steady gulch
#

oh mb, didn't realise that, so I assume they work the same way as bot votes right?

jaunty plank
#

yep, just uses the guild property for guild id, not bot.

steady gulch
#

ah alright, thanks

proper blaze
#

how long does it take to get your bot approved

abstract mothBOT
#

@proper blaze

The average up-to-date approval times are stated [here](#support message).

This does not mean it will take the same amount of time someone else's bot took to be reviewed and does not mean your bot is guaranteed to be reviewed within that time frame.

There is no exact time for how long bot approval will take.

There is a queue and you're not first, nor are you last.

Read more about our reviewal process here

proper blaze
#

ok

jaunty plank
#

Any chance the webhook is going down sometimes?

warm hornet
#

should i send this field as an average guild count per shard?

#

like total guild count / total shard count

jaunty plank
#

its an array, so
lets say you have 3 shards, shard 1 has 1700 guilds, shard 2 has 2000, shard 3 has 1600
you would send [1700, 2000, 1600]

warm hornet
jaunty plank
#

it kind of depends, if your bot library supports broadcast eval, I would just broadcast eval.

warm hornet
#

i mean i could use alot of things and fors but thatll block the loop

warm hornet
jaunty plank
#

no need to map anything

warm hornet
#

oh nvm i forgot i do that in one of my commands

#

lmao

jaunty plank
#

Yep should be what you need for that.

cosmic pendant
#

Can someone help me with topgg autoposter and get the bot token from the webhook page and make sure the client is named client but it still won't send anything or confirm that anything is being posted

restive otter
#

is it a way to give currency rewards with nadeko for my server votes on top.gg?

#

i have a open source edited nadekobot and i want setup vote rewards or need an verified bot on top.gg for this system?

smoky marten
#

yes you need to get verified

icy mulch
#

When you vote for a bot on top.gg how do u get it to message the voter in python?

scenic timber
#

This snippet isn't working. Can someone help me find a fix?

scenic timber
#

alr
can you just explain it how it works
the webhook and /dblwebhook placeholders

#

I cant find the description in documentation

rain heart
#

I cannot help

dark river
#

Hello how can i create a vote log? (autocode)

inland flower
#

https://top.gg/api/bots/664508672713424926/check?userId=787541309250076692 why is it showing forbbiden

#

ping me if u say

sleek robin
#

Welp this really isn't going well

inland flower
#

no

earnest nexus
inland flower
#

i didn't

earnest nexus
#

yeah then you should

brazen marlin
#

Is there such a thing as a socket? I want to make a command that detects if a user voted in but it seems strange to keep sending a request.

#

Webhooks oh

tender furnace
rain heart
#

yup

#

if they have voted in the last 12 hours

fluid violet
limber dune
#

hii

#

i legit am lost on how to get an api key

rain heart
#

read pins

#

a bot is required to get an api token

#

fyi

limber dune
#

ye i have a bot

#

and a public bot

rain heart
#

and approved

limber dune
#

ah

#

thats a problem

#

not because of what u might think but because i wrote the bot to work

#

and now i have to tear it down its for a private company

#

oh well

pastel rune
#

does anyone know why im getting this error

#
\node_modules\@top-gg\sdk\dist\structs\Api.js:93
            throw new Error('Missing Server Count');```
#

(im not missing server count)

gusty nebula
#

Show code

azure bronze
#

Why can I only decide under a few roles at Role Rewards?

rain heart
#

the roles visible are the ones top.gg can manage

azure bronze
#

so I just need to put the bots role higher right?

rain heart
#

yup

azure bronze
#

Okay thx^^

pastel rune
#
const dbl = new DBL.Api('token');
gusty nebula
#

Maybe it couldn't read client.guilds.size. Have you import Discord.js?

pastel rune
#

using eris

#

but i console.logged client.guilds.size

#

and it logs it correctly

gusty nebula
#

Hmmm

#

Does it work if ya manually write the server count?

pastel rune
#

will try

jaunty plank
pastel rune
#

its wierd

#

its worked before

#

now it doesnt

gusty nebula
#

Update your package then

last sonnet
#

how can i get an event of a vote

last sonnet
#

thanks

last sonnet
jaunty plank
#

you can just use your server id

#

or go to your servers page, click edit then go to the webhooks section

last sonnet
#

how will the webhook communicate with my bot though? im used to using discord.py package so its just a builtin feature to the wrapper to listen for messages for example

jaunty plank
#

youd need to use the topggpy library, or code your own webhook receiver.

last sonnet
jaunty plank
#

that works too

restive otter
pastel rune
restive otter
#

Well how can I do this

restive otter
#

I don't know what happened but today after voting for cg my players were not added to my squad

#

How can I get my rewards back

rain heart
#

-wrongserver @restive otter

abstract mothBOT
#

@restive otter

Hey! We think you have our server mistaken. We do not provide support, help, or advice for any bot. You need to click on the "Discord" button on the bot's page of the bot you need support for, not the "Join Discord" button at the top of our website. If there isn't a button that says "Discord" or nothing else mentioned about a support server, the server invite is invalid or you were banned from the bot's support server, then we can't help you. Sorry :(

dusk nacelle
#

Hey Can someone tell me how to get a webhook for vote event ?
I already have this code but not sure what should i give as the weebhook Url

from discord.ext import commands
import os
import dbl


class TopGG(commands.Cog):
    """
    This example uses dblpy's webhook system.
    In order to run the webhook, at least webhook_port must be specified (number between 1024 and 49151).
    """

    def __init__(self, bot):
        self.bot = bot
        self.token = os.environ['dbl_token']  # set this to your DBL token
        self.dblpy = dbl.DBLClient(self.bot, self.token, webhook_path= os.environ['dbl_webhook'], webhook_auth= os.environ['dbl_password'], webhook_port=5000)

    @commands.Cog.listener()
    async def on_dbl_vote(self, data):
        """An event that is called whenever someone votes for the bot on top.gg."""
        print("Received an upvote:", "\n", data, sep="")

    @commands.Cog.listener()
    async def on_dbl_test(self, data):
        """An event that is called whenever someone tests the webhook system for your bot on top.gg."""
        print("Received a test upvote:", "\n", data, sep="")


def setup(bot):
    bot.add_cog(TopGG(bot))```
rain heart
#

the resulting webhook url by your code, http://yourip:port/path

dusk nacelle
rain heart
#

Your repl project url iirc

#

cant help with it

dusk nacelle
#

I see

#

Thanks!!!!

unique jacinth
#

@dense grail bro you speak in hindi

dense grail
#

I do not

restive otter
#

btw how did a bot reply to me like that

tidal idol
#

they can help with questions like that there

lost thorn
#

is there a way to check if a person can vote (hasn't voted in the past 12 hours)

tidal idol
#

Yes

#

If the response isn’t 1 then the user can vote

verbal cape
#

nvm fixed

lost thorn
tidal idol
#

That should work in the Same way

lost thorn
#

okay, thanks!

worldly palm
#

I tryed the top.gg autoposter on my testing bot but then when i pushed the code to the production version, it's stuck on the stats from the testing bot

rain heart
#

cache

worldly palm
#

so can i clear the cache somehow?

rain heart
#

-cacheclear

abstract mothBOT
worldly palm
#

oh browser cache

#

ok

#

ty for ur help

faint vale
#

.

#

-cacheadd

verbal cape
#

-botinfo 923332113812561951

rain heart
abstract mothBOT
#

@verbal cape

Hey! Bots aren't given permissions to send responses in this channel. Please use #commands to run commands.

verbal cape
bitter dome
fluid violet
fluid violet
bitter dome
#

I use the one in docs

#

Well will use

fluid violet
bitter dome
#

Once my bots os verified

fluid violet
#

i cant find them

bitter dome
#

If i do and they are there

#

Will u say “ i didnt look”

fluid violet
#

lol

#

i mean for v2

bitter dome
#

:.

fluid violet
#

1.4 docs are there

bitter dome
bitter dome
fluid violet
#

what

sullen nymph
#

Or en/latest idfr

sullen nymph
#

Fuck off

tidal idol
sullen nymph
#

I don't remember

#

Yeah that

#

thankies

tidal idol
#

Flash bang warning KEKW

sullen nymph
#

Light theme superior

jagged cairn
#
from discord.ext import commands, tasks
import os

import dbl
token = os.environ['topggtoken']

class TopGG(commands.Cog):


    def __init__(self, bot):
        self.bot = bot
        self.token = token
        self.dblpy = dbl.DBLClient(self.bot, self.token)
        self.update_stats.start()

    def cog_unload(self):
        self.update_stats.cancel()

    @tasks.loop(seconds=3)
    async def update_stats(self):
        await self.bot.wait_until_ready()
        try:
            server_count = len(self.bot.guilds)
            await self.dblpy.post_guild_count(server_count)
            print('Posted server count ({})'.format(server_count))
        except Exception as e:
            print('Failed to post server count\n{}: {}'.format(type(e).__name__, e))


def setup(bot):
    bot.add_cog(TopGG(bot))

Im using the dblpy library to update my server count on top.gg. When I run the code, it says "Server Count Posted" but when I see the top.gg page it doesnt show up, if anyone knows why this is happening kindly ping me

fervent portal
#

ayo, anyone can tell me how to use top.gg's webhooks to send voting logs

#

start with servers cuz my bot is yet to be approved.

modest shore
#

Os there a way to check if user has vote using pycord

spiral lava
#

also my widget shows 404

rain heart
#

-refreshdata

abstract mothBOT
#

In order to re-fetch data about your bot (Avatar, Name), please use the Refresh Data button on the right sidebar. If it still doesn't seem to change, make sure you actually changed the bot avatar and not the application icon / changed the bot name and not the application name on your Discord Developer Portal.

Please note that it may take 30 minutes up to an hour for the site-cache to also update.

spiral lava
#

yup, still the same

#

does it take long to update?

rain heart
#

read the last part

spiral lava
#

never though i would be the blind one

#

thanks

jagged cairn
jagged cairn
cursive zodiac
#

np

fluid violet
sullen nymph
#

ben sent the proper link

#

There are examples

latent narwhal
#

can you give a more detailed explanation about this if possible, thanks!

restive otter
#

The dude above scrolled all the way to 2020^^

tidal idol
modern crest
#

Hey guys, when you vote on top.gg is it 12 hours for the user? Or the votes for everyone resets every 12 hours?

rain heart
#

12 hours for that user

#

Starting from when they voted

restive otter
#

is @top-gg/sdk like dblapi.js? if yes then will this work? js client.dbl = new Topgg(process.env.DBL_TOKEN, client); accessing ```js
client.dbl.hasVoted(message.author.id)

magic cave
#

dbl_webhook(route: str = '/dbl', auth_key: str = '')

#

what is this route exactly ?

#

where do we get this route from ?

#

How to config the webhook url in Topgg site settings when we are using the topggpy sdk

jaunty plank
magic cave
magic cave
jaunty plank
#

well, yeah your bot needs to be hosted somewhere the SDK can be used on the same process(and server) as the bot.
if thats home, a vps, replit, heroku etc.

#

just to clarify, i am asking about your bot host or the host you want to have the webhook on.
if they are the same, then its just the bot host.

magic cave
#

my bot host is me

#

my localhost

#

XD

#

If i understand how the sdk is working in localhost, i can replicate it anywhere

jaunty plank
#

http://yourvpsip:port/dbl

magic cave
#

ohhh

#

i see what you did there nala

jaunty plank
#

(or home ip)

magic cave
#

XD

#

thanks, will get back after testing

#

and btw, why is Topgg Bot teams so buggy

#

i need that test but for developemnet purposes and the owner is someone else

sullen nymph
#

Unintended new feature

magic cave
#

It shows a 403 Error when i goto Bot -> Edit (via teams) i am not the owner of the bot

sullen nymph
#

Magic

#

It's a known issue as far as I recall but in any case go to #support for that shitshow

tidal idol
#

Give it around an hour to clear on Top.gg's side

#

Then clear cache on your sid

magic cave
#

on Topggsite

latent narwhal
jaunty plank
latent narwhal
#

Thanks

#

@olive oar ^^

restive otter
#

s

#
client.dbl = new Topgg(process.env.DBL_TOKEN, client);
             ^

TypeError: Topgg is not a constructor
restive otter
low pumice
#

Hi

tidal idol
grand jackal
#

Hi! Is there any command exist to vote for a server with Top.gg bot?

rain heart
#

No

restive otter
#

Hello, I am using the dbl module for voting, but it is pulling the votes as undefined, how can I fix it?

shy vortex
#

show code

restive otter
#

one minute

shy vortex
#

dblapi.js is depreceated

#

use @top-gg/sdk instead

restive otter
#

I used it in it but it still says undefined

shy vortex
#

how you use the new one is not the same though

#

check the example code on the npm package website

#

and make sure you use and import it correctly

#

the new package is not a drop in replacement

restive otter
#

Okey thanks

#

threw emoji when i said ok

lucid flame
#

hi dear

#

I want to know how to add my server in top.gg

rain heart
faint finch
#

I Want To Get User Has Been Voted ?

@commands.Cog.listener()
    async def on_dbl_vote(self, data):
        """An event that is called whenever someone votes for the bot on top.gg."""
        print("Received an upvote:", "\n", data, sep="")
#

data["user"] ?

faint finch
#

!!!

olive oar
#

Hey so I am trying to access my bot's webhook page but it's giving me a 403

#

Is everything OK?

#

Also, are teams broken?

tidal idol
#

Meaning it’s likely an issue with authentication on your end. Make sure the token is correct, and try resetting it

olive oar
#

Yeah I know but

#

I meant the web page

tidal idol
#

Oh that

#

It’s because your bot is not approved

olive oar
#

I mean

#

I co-own the bot through a team

#

So I should have access to it right?

#

We've had certain issues with the API listener thingamagigbob, and I needed to test the API

scarlet cobalt
tardy field
#

Umm so im trying to see how to make it where when someone votes for my bot it gets posted to a channel in the bots support server, but i know it can be done for discord.js, but what about eris?

olive oar
rain heart
#

Id?

fading monolith
#

isn't there any way for Vote Rewards/Logs through Heroku?
else please suggest Free webhook services

mossy oxide
#

Is it possible to make a bot dm you after voting?

rain heart
#

Yes, but only possible when that user has DMS enabled and has a server in common

mossy oxide
#

How do i make it dm the user?

rain heart
#

Check the docs for the corresponding Library you're using

#

As well as using webhooks

mossy oxide
#

Okay

mossy oxide
#

I've made a bot get when a user votes

#

But i tried to figure out how to make it dm

jaunty plank
#

Fetch the user using your bots library and then send as normal.

mossy oxide
#

Okay

#

Thanks

rain oak
#

Can you help me how to get dbl token

rain heart
#

Read pins

rain oak
fading monolith
#

How to setup webhook?

#

any example, or site

visual berry
#

does this api support server votes?..

tidal idol
#

But just no API key

visual berry
tidal idol
visual berry
warped ocean
#

Hello,
I'm making a request as written in the Get Started and i still receive a 403.
My bot is approved.

rain heart
#

That's not how that works

#

What is that token

warped ocean
#

The token given for the webhook configuration on the bot settings page

rain heart
#

why are you making a request to webhooks then

#

Read that

inland flower
#

is there a way i can get automaticaly data if some one votes(js)

#

ping if u ans me

dim kettle
silk reef
#

does the api return how much time a user has to wait before voting again?

rain heart
#

it does not

#

how exactly are you logging?

rain heart
#

cant help

left patio
gloomy cypress
#

maybe the users not cached on your bot

gloomy cypress
#

ayo guys, how this thing work?

strange palm
restive otter
#

I'm getting topgg.errors.unauthorized when trying to update my server count using the following code that is built off of the example provided by you guys

from discord.ext.commands import Cog
from discord.ext.tasks import loop


class Topgg(Cog):
    def __init__(self, bot):
        self.BlackHole = bot
        self.update_stats.start()

    def cog_unload(self):
        self.update_stats.cancel()

    # Update the server count on Top.gg every 24 hours
    @loop(hours=24)
    async def update_stats(self):
        try:
            await self.BlackHole.TopggAPI.post_guild_count()
        except Exception as e:
            self.BlackHole.log.error(
                f"Failed to update server count on Top.gg:\n {type(e)}: {e}")


def setup(bot):
    bot.add_cog(Topgg(bot))

(I defined BlackHole.TopggAPI in my main bot code, so don't worry about it being defined incorrectly.)

I am also providing it with the correct token

BlackHole.TopggAPI = topgg.DBLClient(BlackHole, topggToken)
#

(please ping me when you respond)

tidal idol
#

@rain heart

rain heart
restive otter
#

?

tidal idol
# restive otter ?

There was someone shitposting memes, nothing related to your request don't worry

restive otter
#

gotcha, i got slightly worried

woven cradle
#

@queen solar

fluid pewter
#
TopGGAPIError: 401 Unauthorized (You need a token for this endpoint)
    at Api._request (E:\Recreation-Beta\node_modules\@top-gg\sdk\dist\structs\Api.js:76:19)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async Api.postStats (E:\Recreation-Beta\node_modules\@top-gg\sdk\dist\structs\Api.js:99:9) {
  response: Response {
    size: 0,
    timeout: 0,
    [Symbol(Body internals)]: { body: [PassThrough], disturbed: true, error: null },
    [Symbol(Response internals)]: {
      url: 'https://top.gg/api/bots/stats',
      status: 401,
      statusText: 'Unauthorized',
      headers: [Headers],
      counter: 0
    }
  }
}

what does this mean ?

jaunty plank
#

If you did, regenerate it and use that.

fluid pewter
#

so is there any issue in it ?

#

or it is token issue only ?

rain heart
#

How are you passing the token

scarlet cobalt
#

One message removed from a suspended account.

rain heart
#

Unnecessary

fluid pewter
rain heart
#

So the token is passed through what? A string or an eval?

fluid pewter
rain heart
#

Show your code while replacing the token with just "token" and wait for someone who can help

fluid pewter
#

i did this

jaunty plank
#

You will not be able to do that on a second bot. You are trying to send a status update to a bot the token doesn't apply to.

restive otter
#

import topgg

# This example uses tasks provided by discord.ext to create a task that posts guild count to Top.gg every 30 minutes.

dbl_token = "Top.gg token"  # set this to your bot's Top.gg token
bot.topggpy = topgg.DBLClient(bot, dbl_token)


@tasks.loop(minutes=30)
async def update_stats():
    """This function runs every 30 minutes to automatically update your server count."""
    try:
        await bot.topggpy.post_guild_count()
        print(f"Posted server count ({bot.topggpy.guild_count})")
    except Exception as e:
        print(f"Failed to post server count\n{e.__class__.__name__}: {e}")


update_stats.start()```i've done this but the bot count me 2 servers while my bot is on 145 servers
#

and also it doesn't show on the top gg page of my bot

restive otter
rain heart
#

Perhaps the previous one not being valid

#

Worth a try

restive otter
#

gotcha

#

how long does it take for the server count to update on the website?

rain heart
#

should update instantly, might not show instantly on the site due to caching

tender elm
#

How do i fetch the amount of votes a user has?

rain heart
#

the API does not provide such data, you have to track that yourself using webhooks

compact geode
#

If I get no response, aka just {} when posting server_count, it should mean I'm good to go, yes?

rain heart
#

that means it was successful

compact geode
#

Ah perfect

fading hill
#

how

#

can i handle a post request

#

i mean not express

#

i already did one but

#

what is the requests body

#

im logging req.body and it is undefined

#

where is the id of the voter?

#
app.post('/vote', (req, res) => {
  if (req.headers.authorization === process.env.AUTH_PASS) {
    console.log(req.body)
    // => undefined
  }
  res.send("Recieved.")
});
#

i also tried logging params

#

also req.data => undefined

rain heart
fading hill
#

i already read all of the page :'

#

i know the schema

#

i just dont know where it is in the request

fading hill
rain heart
#

the body is the body, it is within the request data top.gg sends you after a vote

fading hill
#

request.body is undefined

rain heart
#

from where is that request

fading hill
rain heart
#

use an actual vote

fading hill
#

oka

#

same

rain heart
#

cant help then

fading hill
#

i will reverse engineer the topgg.webhook server

#

gotcha

#

this is the parser for those who needs it

jaunty plank
#

if you are still getting empty bodies, are you using characters outside of a-z 0-9 and a few special characters in your url or auth? you may not receive the body if those are included.

#

âsadasdsad as your auth will cause issues with the webhook.
asadasdsad wont

odd hill
restive otter
#

How do i check if a valid token is passed into topgg.DBLClient without calling "update server count"?

winged nova
#

what do you really mean by webhook?
is it a websocket connection?
is top.gg will send the request?
or is i gonna send a post request to webhook?

tidal idol
winged nova
#

oh ok so i need to setup a flask to handling those data?

tidal idol
#

Yes

#

Anything that allows you to process that post request and handle what you need from there will work

winged nova
#

okay cool

sullen nymph
#

You can't check if your token is valid without any requests

short roost
#

I want to post bot stats , i need top.gg provided bot token or authorization secret ?

#

As token

plucky lance
#

To post your stats manually you need an authorization token to interact with the API

#

Edit your bot on topgg, then hit Webhooks

#

You can generate a token there

short roost
short roost
#

I guess i have to fix that issue in my npm package

plucky lance
short roost
#

Thanks for the info 👍

plucky lance
#

Do you wanna post the stats manually or are you using the sdk?

short roost
short roost
plucky lance
short roost
#

May be

plucky lance
#

Alright, so you gonna send a POST request to the API including the authorization token (webhook token) in the header of your request.

#

Those 2 URLs should show you the general structure of the request

cursive steppe
#

Does Test Webhook gives correct data now? Because previously it was sending wrong data

plucky lance
#

There's no correct data being send with a test webhook.

#

It's just an example.

#

Aka. placeholder data