This is a WIP library to connect and interact with communities in Amino. I created this for a few reasons:
- Nobody has done this before.
- I wanted to see if it was easy to at least interact with the Amino closed API (and it was! I wonder why they don't release an official API for Amino because the current closed API is very easy to understand! Congratz to the API developers!)
- I want to integrate Amino-related commands to my Discord Bot: https://loritta.website/
This is very WIP, so there are some issues with it and you can't do a lot of things with it yet... one of the biggest problems is that you need to have an Android device since you need to dump a valid device ID, currently there isn't any known way to create a valid Narvii pseudo random device ID. (if it is an invalid API the Endpoint kicks you due to invalid machine and/or device)
(If you want to dump your device ID, download any packet capturer, logout from your Amino account, log in again and track down the device ID in the packet dump)
Also, only email accounts are implemented. (phones will be implemented soon(tm))
All the examples are in Kotlin, the library wasn't tested with pure Java yet, but it should work
Almost all the functions doesn't return a "valid" response yet, most of them only outputs the Endpoint response to the console, soon(tm) they will return something useful.
(Doesn't return anything yet, only outputs in the console the JSON payload)
Amino.createAccount("email", "password", "device ID", "nickname");
This will create an AminoClient, allowing you to interact with the Amino Network.
var client = AminoClient("email", "password", "device ID");
After initializing the client, use client.login
to get your account SID.
Gets an community by its ID, to get your community ID, open the invite link for it in your browser, open the page source code tool and search for "deeplink"
var community = client.getCommunityById("community ID");
There is two ways to join an community, one of them is if the community is "searchable" and the other one is used if your community is private.
Trying to join a private community without an invite link causes an "Access Denied" Endpoint response.
community.join(); // If the community doesn't require an invite link
community.join("invite link"); // If the community requires an invite link
Leaves the community.
community.leave();
Gets the community blog feed in a list form.
// start, size.
// You can skip some posts by editing the start variable
community.getBlogFeed(0, 25);
- You can only use accounts registered by email (soon phone support!)
- You need to dump your device ID by... well, inspecting the packets sent when logging in via Amino, I will try to add a random device ID generator later.
Name | Author | Language |
---|---|---|
Amino.JS | @AminoJS | JavaScript |
AminoAcids | @basswaver | Python |