* feat: auto moderation
* feat(examples/automod): add message content intent
* style(examples/automod): newline between sections
* feat(AutoModerationActionExecution): add user id
Add user_id field to AutoModerationActionExecution event.
* refactor(events): remove todos
Remove TODO comments for AutoModerationRuleUpdate and AutoModerationRuleDelete.
* feat(AutoModerationEventMessageSend): doc comment
Add documentation comment to AutoModerationEventMessageSend constant.
* fix(structs.go): fix GuildTemplate struct and documentation
* revert(structs.go): change description from a string ptr to a string
* fix(structs.go): make name and description a pointer and omitempty
* fix(structs.go): made Name field not a string pointer. removed extra files
* fix(structs.go): fix Name field not having a type
* feat: Add support of StageInstance RESTAPI and Events
* chore: Make the changes for following the current convention of package
* doc: Add missing docs and example for stage-instance
* doc: Add final log for deleted stage instance
* refactor: Prevent trailing slash on stage instance endpoint
* chore: Harmonize params structure
* Update structs.go
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* docs: Remove deprecated doc
* docs: Add new documentation for restapi function
* Update structs.go
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* Update structs.go
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* Update restapi.go
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* Update structs.go
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* Update structs.go
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* doc: Add sleep in example to let user see by themselves
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* Create payload for Guild Member Edit
* Update rest API usage with new payload
* Update comment with ref to discord API
* Change data to pointer instead
* Change struct to just nick and roles
* Review comments
* feat(rest#GuildMemberEditComplex): return updated member and cosmetic changes
* feat(structs): renamed GuildMemberEditData to GuildMemberParams
* style(structs#GuildMemberParams): fix spacing
* fix(rest#GuildMemberEditComplex): use GuildMemberParams instead of GuildMemberEditData
Co-authored-by: nitroflap <fe.lap.prog@gmail.com>
* Add Guild Scheduled Events support
* Add missing Indents for Guild Scheduled Events
* fix: Do update from new schedules updates and repository updates
* doc: Add missing documentation on const
* doc: Add missing documentation on events struct
* tests: Add a Skip condition when dgBot is not set to prevent segfault
* fix: Somes changes following the last review steps
* docs: Add an example to manipulate GuildScheduledEvent
* clean: Remove useless pointers on struct used to retrieve data
* tests: Test extra query params on GuildScheduledEventUsers requests
* clean: Remove unused variables
* feat: Add nullable types to provide null value to Discord API when is necessary
* feat: Use NullableString in ScheduledEvents
* docs: Add example for usage of NullableString
* Update structs.go
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* Update restapi.go
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* fix: Review changes to move back nullable string into a simple MarshalJSON
* fix: Remove NullString on tests and examples
* doc: Add missing doc
* Update structs.go
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* fix: misunderstood MarhsalJSON
* fix: Follow the convention of discordgo on url.Values
* Update examples/scheduled_events/main.go
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* changes: use conditional instead on Sprintf
* fix: Add missing status on Params
* Update structs.go
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* Update structs.go
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* changes: Move flag.Parse inside the init function
* fix: remove null statement of test suite
* fix: Rewrite Marshal of GuildScheduledEventParams to prevent a stack overflow on marshall same type
* clean: Remove unused Intents
* Update restapi.go
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* Update restapi.go
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* Update restapi.go
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* doc: polish the documentation
* clean: Final polish code
* doc: Add information about 1:1 usage
* Update discord_test.go
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* doc: remove unnecessary additional infos
* Update structs.go
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* Update discord_test.go
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* Update restapi.go
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* chore(examples/scheduled_events): removed NullString comment
* fix(structs): grammar in comment to EntityType
* fix: run gofmt
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* Add guild member avatar
* add avatar field on Member struct
* add endpoints for guild avatars
* add avatarURL util function for *User.AvatarURL and *Member.AvatarURL
* set GuildID on after GuildMember request
* fix Member.Avatar comment
* fix: gofmt
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* feat(endpoints): bumped discord version to 9
* feat: threads barebones
* feat(threads): documentation
* feat(threads): membership caching
* feat(threads): added type to StartThread method
* fix: replaced missing Timestamp definitions with time.Time
* chore: removed debug logs
* chore: removed thread alias for channel type
* feat(webhooks): separated thread option into method
* fix(state): ThreadMembersUpdate member duplication bug
* fix: golint
* feat(threads): pr fixes and BeforeUpdate in ThreadUpdate
* feat: removed unnecessary todo
* feat(state): removed thread last message update in MessageAdd
* Revert "feat(state): removed thread last message update in MessageAdd"
This reverts commit 4ca359fd2cc304e5d0ec2937e25c0c487a1f2096.
* feat(state): update only last message id for thread update
Implements updating message id in MESSAGE_CREATE and MESSAGE_DELETE events. Refer to https://discord.com/developers/docs/topics/gateway#thread-update for more info.
* fix(restapi): passing threadID in WebhookThreadExecute
* feat(state): dropped last_message_id updates for threads
* fix: gofmt
* feat(events#ThreadCreate): added newly_created field
* feat(restapi)!: corrected names of thread functions
* update Activity struct and add emoji functions
* fix the emoji regex
* Remove inline type definitions
* Change function name
* fix message_test function name
* make custom unmarshaljson and change `CreatedAt` to `time.Time`
* fix
Co-authored-by: post <61803796+postrequest69@users.noreply.github.com>
We define our permissions constants based on Discord's values,
and thus the use of `iota` is fragile, makes docs harder to read,
and makes changes touching these constants harder to review.
Here, we now use the full 64-bit representation of each constant,
which both removes the implicit ordering dependencies and makes
the values easier to immediately see.
* UnknownBan error code addition
* GuildBan method implementation
* Gofmt fix
Gofmt fix
* Interactions: application commands basic API and gateway integration
* Some gitignore update
* Application commands and interactions API implementation
* Some fixes
* Some improvements of slash-commands example and slash-commands API
* OAuth2 endpoints backward compatibility
* Gofmt fix
* Requested fixes and documentation improvement for application commands
* Some fixes
* New and more interesting example of slash-commands usage, merging "interaction.go" and "interactions.go" into a single file. And some fixes.
* Gofmt and documentation fixes
* More fixes
* Gofmt fixes
* More fixes!
* Doc and endpoint fixes
* Gofmt fix
* Remove dependence on open gateway connection
* Remove redundant command ID checks
* Fix typo in ApplicationCommandCreate comment
* Tidy up function calls returning body
* Add upcoming API changes
* Correct return value name, swap parameter order
* Add Version field to ApplicationCommand
* Fix up language in comments
* Remove redundant conversion to float64
Co-authored-by: Carson Hoffman <c@rsonhoffman.com>