A fast, resilient twtxt registry server written in Go!
API base URL:
/api
Formats available:
/api/plain
Endpoints:
/api/plain/users
/api/plain/mentions
/api/plain/tweets
/api/plain/tags
/api/plain/version
Retrieve the version of the instance by issuing a GET
request to the
/api/plain/version
endpoint.
$ curl 'https://twtxt.envs.net/api/plain/version'
getwtxt v0.5.0
Add new user by submitting a POST
request to the /api/plain/users
endpoint.
If both ?url=X
and ?nickname=X
are not passed, or the user already exists in
this registry, you will receive 400 Bad Request
as a response. If you are unsure what went
wrong, the error message should provide enough information for you to correct the request.
$ curl -X POST 'https://twtxt.envs.net/api/plain/users?url=https://foo.ext/twtxt.txt&nickname=foobar'
200 OK
Query responses are in descending chronological order. This means the newest user or tweet will be in the
first row of the response, with older users or tweets in subsequent rows. Additionally, All queries accept
?page=N
as a parameter, returning groups of 20 results. This may be omitted for the first page of results.
Get all users:
$ curl 'https://twtxt.envs.net/api/plain/users'
foo https://example.com/twtxt.txt 2019-05-09T08:42:23.000Z
foobar https://example2.com/twtxt.txt 2019-04-14T19:23:00.000Z
foo_barrington https://example3.com/twtxt.txt 2019-03-01T15:59:39.000Z
Query for user by URL:
$ curl 'https://twtxt.envs.net/api/plain/users?url=https://example3.com/twtxt.txt'
foo_barrington https://example3.com/twtxt.txt 2019-05-01T15:59:39.000Z
Query for user by keyword:
$ curl 'https://twtxt.envs.net/api/plain/users?q=bar'
foobar https://example2.com/twtxt.txt 2019-05-14T19:23:00.000Z
foo_barrington https://example3.com/twtxt.txt 2019-04-01T15:59:39.000Z
Get all tweets:
$ curl 'https://twtxt.envs.net/api/plain/tweets'
foobar https://example2.com/twtxt.txt 2019-05-13T12:46:20.000Z It's been a busy day at work!
...
Query tweets by keyword:
$ curl 'https://twtxt.envs.net/api/plain/tweets?q=getwtxt'
foo_barrington https://example3.com/twtxt.txt 2019-04-30T06:00:09.000Z I just installed getwtxt
Get all tweets with tags:
$ curl 'https://twtxt.envs.net/api/plain/tags'
foo https://example.com/twtxt.txt 2019-03-01T09:33:12.000Z No, seriously, I need #help
foo https://example.com/twtxt.txt 2019-03-01T09:32:05.000Z Seriously, I love #programming!
foo https://example.com/twtxt.txt 2019-03-01T09:31:02.000Z I love #programming!
Query tweets by tag:
$ curl 'https://twtxt.envs.net/api/plain/tags/programming'
foo https://example.com/twtxt.txt 2019-03-01T09:31:02.000Z I love #programming!
Get all tweets with mentions:
$ curl 'https://twtxt.envs.net/api/plain/mentions'
foo https://example.com/twtxt.txt 2019-02-28T11:06:44.000Z @<foo_barrington https://example3.com/twtxt.txt> Hey!! Are you still working on that project?
bar https://mxmmplm.com/twtxt.txt 2019-02-27T11:06:44.000Z @<foobar https://example2.com/twtxt.txt> How's your day going, bud?
foo_barrington https://example3.com/twtxt.txt 2019-02-26T11:06:44.000Z @<foo https://example.com/twtxt.txt> Did you eat my lunch?
Query tweets by mention URL:
$ curl 'https://twtxt.envs.net/api/plain/mentions?url=https://foobarrington.co.uk/twtxt.txt'
foo https://example.com/twtxt.txt 2019-02-26T11:06:44.000Z @<foo_barrington https://example3.com/twtxt.txt> Hey!! Are you still working on that project?