There are no requirements, because there is no “official” set of bindings. Every language binding is developed independently from GTK.
Bindings authors can send a merge request to the GTK website if they want to have their binding listed; of course, we’re not going to add an hello world on the main landing page for every single binding, but we can add pages in the appropriate section.
I’d recommend targeting the current stable versions of GTK, so GTK4 and GTK3 in that order.
As for the license: your binding can use any license compatible with the license of GTK, since it has to link to the library. AGPL is an interesting choice, given that it would require providing access to the sources even when used server side, which is somewhat odd. Most bindings are either using LGPL-2.1-or-later, like GTK; the Rust bindings are released under a BSD license, which is somewhat iffy because the documentation of the library is under LGPL, and that means the Rust bindings maintainers have to allow building their project without the documentation.