forked from ProjectSegfault/publapi
API for our pubnix
Arya
625a05a2a5
Reviewed-on: ProjectSegfault/publapi#1 Reviewed-by: Arya <arya@projectsegfau.lt> Reviewed-by: midou <midou@midou.dev> |
||
---|---|---|
examples | ||
pages | ||
utils | ||
.gitignore | ||
go.mod | ||
go.sum | ||
LICENSE | ||
main.go | ||
publapi.env | ||
README.md |
PublAPI
PublAPI is a simple API for Project Segfault's upcoming public shared system (pubnix).
Install
An installation of Go 1.22+ is required.
git clone https://github.com/ProjectSegfault/publapi
go mod download
go build
./publapi
By default publapi listens on 127.0.0.1:3000. You can change the port with the environment variable PUBLAPI_PORT.
Additionally, you need to set the variable PUBLAPI_EMAIL_SHOUTRRRURL and PUBLAPI_NOTIFY_SHOUTRRRURL in order for signup notifications to work. URL Format can be found at https://containrrr.dev/shoutrrr/v0.5.
You can also set PUBLAPI_SIGNUP_IP to make sure signup requests can only be made from one IP.
Usage
Currently, PublAPI has only two routes, /users and /signup.
ROUTE | TYPE | EXTRA ARGS | DESCRIPTION |
---|---|---|---|
/users | GET | N/A | Return information about users. |
/signup | POST | username, email, ssh | Creates a register script and notifies admins that a new registration request was sent. |