api-docs-mirror/amino/docs.md

1220 lines
40 KiB
Markdown
Raw Normal View History

<details>
<summary>GET /g/s/announcement/</summary>
GET the announcement blog list
__query string__
|name|description|required|
| - | - | - |
|language|Content language to be returned|False|
|start|paginated data index offset. Difference to|False|
|size|max number of items to get for paginated requests|False|
__headers__
|name|description|required|
| - | - | - |
|NDCDEVICEID|The device id generated by the app. See|True|
|NDC-MSG-SIG|Message signature (?) generated by the app|False|
|SMDEVICEID|I don't know, seems to be a non-string hex number|False|
|AUID|The auid (UUIDv4) generated on amino servers for this client, retrieved with GET /g/s/auid|False|
__responses__
- 200 - Announcements Retrieved
Announcements Retrieved
Current announcement blogs were retrieved
```JSON
{
"blogList": [
"{...} <Blog object. Always by System (UUIDv4 all 0's)>"
]
}
```
- 200:0 - api:ok
api:ok
The request was successful. This is not a separate response, but included in every 200 response's json
```JSON
{
"api:message": "OK",
"api:timestamp": "2020-01-22T23:49:13Z <API timestamp>",
"api:statuscode": "0 <Statuscode 0 is ok>",
"api:duration": "0.010s <Processing time>"
}
```
- 400:104 - Missing NDCDEVICEID
Missing NDCDEVICEID
The NDCDEVICEID header was not included, or did not compute on amino servers
```JSON
{
"api:message": "Invalid Request. Please update to the latest version. If the problem continues, please contact us.",
"api:timestamp": "2020-01-22T22:11:28Z <API timestamp>",
"api:statuscode": "104 <Statuscode 104 represents a bad NDCDEVICEID header>",
"api:duration": "0.000s <Processing time>"
}
```
</details>
<details>
<summary>GET /g/s/auid/</summary>
GET an auid for this device
__query strings__
|name|description|required|
| - | - | - |
|deviceId|Same as NDCDEVICEID|True|
__headers__
|name|description|required|
| - | - | - |
|NDCDEVICEID|The device id generated by the app. See|True|
|NDC-MSG-SIG|Message signature (?) generated by the app|False|
|SMDEVICEID|I don't know, seems to be a non-string hex number|False|
|AUID|The auid (UUIDv4) generated on amino servers for this client, retrieved with GET /g/s/auid|False|
__responses__
- 200 - auid Generated
auid Generated
An auid was generated and returned by the server. It may now be used in request headers
```JSON
{
"auid": "... <UUIDv4>"
}
```
2020-01-23 00:26:21 +00:00
- 200:0 - api:ok
api:ok
The request was successful. This is not a separate response, but included in every 200 response's json
```JSON
{
"api:message": "OK",
"api:timestamp": "2020-01-22T23:49:13Z <API timestamp>",
"api:statuscode": "0 <Statuscode 0 is ok>",
"api:duration": "0.010s <Processing time>"
}
```
- 400:104 - Missing NDCDEVICEID
Missing NDCDEVICEID
The NDCDEVICEID header was not included, or did not compute on amino servers
```JSON
{
"api:message": "Invalid Request. Please update to the latest version. If the problem continues, please contact us.",
"api:timestamp": "2020-01-22T22:11:28Z <API timestamp>",
"api:statuscode": "104 <Statuscode 104 represents a bad NDCDEVICEID header>",
"api:duration": "0.000s <Processing time>"
}
```
</details>
<details>
<summary>GET /g/s/auth/config-v2/</summary>
GET auth config data (unknown use)
__headers__
|name|description|required|
| - | - | - |
|NDCDEVICEID|The device id generated by the app. See|True|
|NDC-MSG-SIG|Message signature (?) generated by the app|False|
|SMDEVICEID|I don't know, seems to be a non-string hex number|False|
|AUID|The auid (UUIDv4) generated on amino servers for this client, retrieved with GET /g/s/auid|False|
__responses__
- 200 - Config Recieved
Config Recieved
Data with an unknown purpose is recieved
```JSON
{
"mobileSignUpProviderList": [
8
]
}
```
2020-01-23 00:26:21 +00:00
- 200:0 - api:ok
api:ok
The request was successful. This is not a separate response, but included in every 200 response's json
```JSON
{
"api:message": "OK",
"api:timestamp": "2020-01-22T23:49:13Z <API timestamp>",
"api:statuscode": "0 <Statuscode 0 is ok>",
"api:duration": "0.010s <Processing time>"
}
```
- 400:104 - Missing NDCDEVICEID
Missing NDCDEVICEID
The NDCDEVICEID header was not included, or did not compute on amino servers
```JSON
{
"api:message": "Invalid Request. Please update to the latest version. If the problem continues, please contact us.",
"api:timestamp": "2020-01-22T22:11:28Z <API timestamp>",
"api:statuscode": "104 <Statuscode 104 represents a bad NDCDEVICEID header>",
"api:duration": "0.000s <Processing time>"
}
```
</details>
<details>
<summary>POST /g/s/auth/login/</summary>
Log in with credentials
__headers__
|name|description|required|
| - | - | - |
|NDCDEVICEID|The device id generated by the app. See|True|
|NDC-MSG-SIG|Message signature (?) generated by the app|False|
|SMDEVICEID|I don't know, seems to be a non-string hex number|False|
|AUID|The auid (UUIDv4) generated on amino servers for this client, retrieved with GET /g/s/auid|False|
```JSON
{
"email": "... <account email address>",
"v": "2 <Unknown use, probably verson number. All integer values seem to work>",
"secret": "... <Login secret. Can be server supplied secret, or in the format \"0 <password>\"",
"deviceID": "... <NDCDEVICEID of this client>",
"clientType": "100 <Unknown meaning, always seems to be 100>",
"action": "normal <Unknown use>",
"timestamp": "1579754764781 <Login timestamp"
}
```
__responses__
- 200 - Login Successful
Login Successful
The login was successful and account information was sent
```JSON
{
"account": {
"<->": " <This differs from regular profile info in that it is privileged information>",
"activation": "1 <Unknown use>",
"phoneNumber": "null <Account linked phone number>",
"phoneNumberActivation": "0 <Likely related to phone verification, in the same way as with email",
"email": "... <User email>",
"emailActivation": "1 <Email activation, 1 / 0 bool>",
"username": "null <Unknown>",
"uid": "... <UUIDv4 of this user>",
"aminoIdEditable": "true <May the aminoId be changed? (I believe that one lifetime change is allowed)>",
"membership": "null <Probably related to paid membership>",
"aminoId": "BooruBot <Unique aminoId that points to this user>",
"mediaList": "null <Unknown use, probably a list of media objects>",
"icon": "... <Link to this user's profile image>",
"nickname": "BooruBot <Non-unique account global (non-community) nickname>",
"role": "0 <Unknown. Probably related to admin / curator roles in communities, N / A globally (unless amino admin?)>",
"securityLevel": "3 <Unknown use. Probably related to admin / moderator only visibility stuff>",
"status": "0 <Unknown, probably also related to admin / moderator. Could also be ban / mute status>",
"dateOfBirth": "null <User birthdate>",
"address": "null <Likely related to physical city / street address>",
"latitude": "null <Physical latitude>",
"longitude": "null <Physical longitude>",
"facebookID": "null <Linked facebook profile>",
"googleID": "null <Linked google profile>",
"twitterID": "null <Linked twitter profile>",
"gender": "null <User gender>",
"createdTime": "2019-05-16T03:47:29Z <Account creation time>",
"modifiedTime": "2019-08-15T06:39:15Z <Account last modified time>",
"advancedSettings": "{...} <Unknown settings>",
"extensions": {
"adsEnabled": "true <Are ads enabled? Probably related to amino paid membership. Useable for adblock?>",
"adsFlags": "11 <Unknown, probably has to do with ad selection>",
"adsLevel": "1 <Unknown, probably has to do with ad frequency>",
"contentLanguage": "en <Primary app language>",
"deviceInfo": {
"lastClientType": "100 <Client type used before this. Always 100? All mobile 100?>"
}
}
},
"auid": "... <UUIDv4 of this device>",
"secret": "... <Secret that may be used for logging in. Appears to contain device auid, ipv4 address, and other stuff>",
"sid": "... <session ID>",
"userProfile": "{...} <User object>"
}
```
- 200:0 - api:ok
api:ok
The request was successful. This is not a separate response, but included in every 200 response's json
```JSON
{
"api:message": "OK",
"api:timestamp": "2020-01-22T23:49:13Z <API timestamp>",
"api:statuscode": "0 <Statuscode 0 is ok>",
"api:duration": "0.010s <Processing time>"
}
```
- 400:104 - Missing NDCDEVICEID
Missing NDCDEVICEID
The NDCDEVICEID header was not included, or did not compute on amino servers
```JSON
{
"api:message": "Invalid Request. Please update to the latest version. If the problem continues, please contact us.",
"api:timestamp": "2020-01-22T22:11:28Z <API timestamp>",
"api:statuscode": "104 <Statuscode 104 represents a bad NDCDEVICEID header>",
"api:duration": "0.000s <Processing time>"
}
```
- 400:200 - Login Unsuccessful
Login Unsuccessful
The supplied credentials were not correct
```JSON
{
"api:message": "Account or password is incorrect! If you forget your password, please reset it.",
"api:timestamp": "2020-01-23T04:44:36Z <API timestamp>",
"api:statuscode": "200 <Statuscode 200 represents bad credentials>",
"api:duration": "0.016s <Processing time>"
}
```
</details>
<details>
<summary>POST /g/s/client-config/</summary>
POST device information for configuration. Likely related to analytics / telemetry
__headers__
|name|description|required|
| - | - | - |
|NDCDEVICEID|The device id generated by the app. See|True|
|NDC-MSG-SIG|Message signature (?) generated by the app|False|
|SMDEVICEID|I don't know, seems to be a non-string hex number|False|
|AUID|The auid (UUIDv4) generated on amino servers for this client, retrieved with GET /g/s/auid|False|
```JSON
{
"packageName": "com.narvii.amino.master <android app package?>",
"versionCode": "00000 <likely app version, also sent in user-agent header next to package name>",
"androidAPI": "21 <Android api version. This example is 21, or android 5.0>",
"model": "SCH-R530U <Phone device model. This example is a US Cellular Galaxy S3>",
"device": "d2usc <Another way to identify the phone model>",
"timestamp": "1579580222209 <request time in ms>"
}
```
__responses__
- 200 - Client Configured
Client Configured
The client config was accepted
```JSON
{
"clientConfig": {
"<->": "<Unknown, was empty in api calls made by my client>"
}
}
```
2020-01-23 00:26:21 +00:00
- 200:0 - api:ok
api:ok
The request was successful. This is not a separate response, but included in every 200 response's json
```JSON
{
"api:message": "OK",
"api:timestamp": "2020-01-22T23:49:13Z <API timestamp>",
"api:statuscode": "0 <Statuscode 0 is ok>",
"api:duration": "0.010s <Processing time>"
}
```
- 400:104 - Missing NDCDEVICEID
Missing NDCDEVICEID
The NDCDEVICEID header was not included, or did not compute on amino servers
```JSON
{
"api:message": "Invalid Request. Please update to the latest version. If the problem continues, please contact us.",
"api:timestamp": "2020-01-22T22:11:28Z <API timestamp>",
"api:statuscode": "104 <Statuscode 104 represents a bad NDCDEVICEID header>",
"api:duration": "0.000s <Processing time>"
}
```
</details>
<details>
<summary>GET /g/s/client-config/appearance-settings</summary>
GET the app appearance settings
__headers__
|name|description|required|
| - | - | - |
|NDCDEVICEID|The device id generated by the app. See|True|
|NDC-MSG-SIG|Message signature (?) generated by the app|False|
|SMDEVICEID|I don't know, seems to be a non-string hex number|False|
|AUID|The auid (UUIDv4) generated on amino servers for this client, retrieved with GET /g/s/auid|False|
__responses__
- 200 - Appearance Settings
Appearance Settings
The appearance objects to use was retrieved
```JSON
{
"backgroundMediaList": [
[
"100 <Media, always 100?>",
"... <URL to an image>",
"null <unknown purpose>"
]
]
}
```
2020-01-23 00:26:21 +00:00
- 200:0 - api:ok
api:ok
The request was successful. This is not a separate response, but included in every 200 response's json
```JSON
{
"api:message": "OK",
"api:timestamp": "2020-01-22T23:49:13Z <API timestamp>",
"api:statuscode": "0 <Statuscode 0 is ok>",
"api:duration": "0.010s <Processing time>"
}
```
- 400:104 - Missing NDCDEVICEID
Missing NDCDEVICEID
The NDCDEVICEID header was not included, or did not compute on amino servers
```JSON
{
"api:message": "Invalid Request. Please update to the latest version. If the problem continues, please contact us.",
"api:timestamp": "2020-01-22T22:11:28Z <API timestamp>",
"api:statuscode": "104 <Statuscode 104 represents a bad NDCDEVICEID header>",
"api:duration": "0.000s <Processing time>"
}
```
</details>
<details>
<summary>GET /g/s/client-config/content-language-settings/</summary>
GET the app content language settings
__headers__
|name|description|required|
| - | - | - |
|NDCDEVICEID|The device id generated by the app. See|True|
|NDC-MSG-SIG|Message signature (?) generated by the app|False|
|SMDEVICEID|I don't know, seems to be a non-string hex number|False|
|AUID|The auid (UUIDv4) generated on amino servers for this client, retrieved with GET /g/s/auid|False|
__responses__
- 200 - Language Settings
Language Settings
The language settings were retrieved
```JSON
{
"contentLanguageSettings": {
"language": "en <The language preference>"
}
}
```
2020-01-23 00:26:21 +00:00
- 200:0 - api:ok
api:ok
The request was successful. This is not a separate response, but included in every 200 response's json
```JSON
{
"api:message": "OK",
"api:timestamp": "2020-01-22T23:49:13Z <API timestamp>",
"api:statuscode": "0 <Statuscode 0 is ok>",
"api:duration": "0.010s <Processing time>"
}
```
- 400:104 - Missing NDCDEVICEID
Missing NDCDEVICEID
The NDCDEVICEID header was not included, or did not compute on amino servers
```JSON
{
"api:message": "Invalid Request. Please update to the latest version. If the problem continues, please contact us.",
"api:timestamp": "2020-01-22T22:11:28Z <API timestamp>",
"api:statuscode": "104 <Statuscode 104 represents a bad NDCDEVICEID header>",
"api:duration": "0.000s <Processing time>"
}
```
</details>
<details>
<summary>GET /g/s/community/configuration/</summary>
GET community config info
__headers__
|name|description|required|
| - | - | - |
|NDCDEVICEID|The device id generated by the app. See|True|
|NDC-MSG-SIG|Message signature (?) generated by the app|False|
|SMDEVICEID|I don't know, seems to be a non-string hex number|False|
|AUID|The auid (UUIDv4) generated on amino servers for this client, retrieved with GET /g/s/auid|False|
__responses__
- 200 - Community Config
Community Config
Community config was retrieved
```JSON
{
"configuration": {
"appearance": {},
"page": {},
"module": {
"post": {
"enabled": true,
"postType": {
"screeningRoom": {
"privilege": {
"type": "5 <Unknown use>",
"minLevel": "100 <Unknown use>"
},
"enabled": true
},
"story": "{...} <Same privilege format",
"liveMode": "{...} <Same privilege format",
"publicChatRooms": "{...} <Same privilege format"
}
},
"chat": {
"enabled": true,
"spamProtectionEnabled": true,
"avChat": {
"screeningRoomEnabled": true,
"audioEnabled": "true <Probably in-chat voice>",
"videoEnabled": "false <Probably in-chat video>",
"audio2Enabled": "true <Probably in-chat voice>"
},
"publicChat": "{...} <Same privilege format>"
}
},
"general": {
"videoUploadPolicy": 1
}
}
}
```
2020-01-23 00:26:21 +00:00
- 200:0 - api:ok
api:ok
The request was successful. This is not a separate response, but included in every 200 response's json
```JSON
{
"api:message": "OK",
"api:timestamp": "2020-01-22T23:49:13Z <API timestamp>",
"api:statuscode": "0 <Statuscode 0 is ok>",
"api:duration": "0.010s <Processing time>"
}
```
- 400:104 - Missing NDCDEVICEID
Missing NDCDEVICEID
The NDCDEVICEID header was not included, or did not compute on amino servers
```JSON
{
"api:message": "Invalid Request. Please update to the latest version. If the problem continues, please contact us.",
"api:timestamp": "2020-01-22T22:11:28Z <API timestamp>",
"api:statuscode": "104 <Statuscode 104 represents a bad NDCDEVICEID header>",
"api:duration": "0.000s <Processing time>"
}
```
</details>
<details>
<summary>POST /g/s/device/</summary>
POST a device configuration
__headers__
|name|description|required|
| - | - | - |
|NDCDEVICEID|The device id generated by the app. See|True|
|NDC-MSG-SIG|Message signature (?) generated by the app|False|
|SMDEVICEID|I don't know, seems to be a non-string hex number|False|
|AUID|The auid (UUIDv4) generated on amino servers for this client, retrieved with GET /g/s/auid|False|
```JSON
{
"deviceID": "... <device id generated by the app>",
"bundleID": "com.narvii.amino.master <android app package?>",
"clientType": "100 <always 100>",
"timezone": "-300 <timezone number code>",
"systemPushEnabled": "true <true by default on new install>",
"locale": "en_US <locale string>",
"deviceToken": "... <device token generated by the app>",
"deviceTokenType": "1 <always 1?>",
"timestamp": "1579580530965 <request time in ms>"
}
```
__responses__
- 200 - Device Configured
Device Configured
The device config was accepted
```JSON
{
"devOptions": "null <?>"
}
```
2020-01-23 00:26:21 +00:00
- 200:0 - api:ok
api:ok
The request was successful. This is not a separate response, but included in every 200 response's json
```JSON
{
"api:message": "OK",
"api:timestamp": "2020-01-22T23:49:13Z <API timestamp>",
"api:statuscode": "0 <Statuscode 0 is ok>",
"api:duration": "0.010s <Processing time>"
}
```
- 400:104 - Missing NDCDEVICEID
Missing NDCDEVICEID
The NDCDEVICEID header was not included, or did not compute on amino servers
```JSON
{
"api:message": "Invalid Request. Please update to the latest version. If the problem continues, please contact us.",
"api:timestamp": "2020-01-22T22:11:28Z <API timestamp>",
"api:statuscode": "104 <Statuscode 104 represents a bad NDCDEVICEID header>",
"api:duration": "0.000s <Processing time>"
}
```
</details>
<details>
<summary>GET /g/s/eventlog/profile/</summary>
GET the eventlog for the current profile (appears to be device profile by auid, not necessarily amino profile)
__query strings__
|name|description|required|
| - | - | - |
|language|language code used, example being `en`. Affects experiments|False|
__headers__
|name|description|required|
| - | - | - |
|NDCDEVICEID|The device id generated by the app. See|True|
|NDC-MSG-SIG|Message signature (?) generated by the app|False|
|SMDEVICEID|I don't know, seems to be a non-string hex number|False|
|AUID|The auid (UUIDv4) generated on amino servers for this client, retrieved with GET /g/s/auid|False|
__responses__
- 200 - Eventlog Retrieved
Eventlog Retrieved
The eventlog for this device profile. This data appears to be related to AB experiments
```JSON
{
"globalStrategyInfo": "{...} <json string literal with unknown meaning>",
"uid": "None <Unknown. Probably another UUIDv4>",
"contentLanguage": "en <Primary app language>",
"signUpStrategy": "2 <Signup method. Variants unknown>",
"landingOption": "4 <Landing option. Variants unknown>",
"interestPickerStyle": "3 <Style for the interest picker. Variants unknown>",
"auid": "... <This device's auid>",
"needTriggerInterestPicker": "true <unknown meaning>",
"participatedExperiments": {
"userVectorCommunitySimilarityChannel": 1,
"retentionSrPush": 2,
"landingOptionExp": 2,
"communitySearchExp": 2,
"communitySearchRerankExp": 1,
"<->": " <various AB experiment values>"
}
}
```
2020-01-23 00:26:21 +00:00
- 200:0 - api:ok
api:ok
The request was successful. This is not a separate response, but included in every 200 response's json
```JSON
{
"api:message": "OK",
"api:timestamp": "2020-01-22T23:49:13Z <API timestamp>",
"api:statuscode": "0 <Statuscode 0 is ok>",
"api:duration": "0.010s <Processing time>"
}
```
- 400:104 - Missing NDCDEVICEID
Missing NDCDEVICEID
The NDCDEVICEID header was not included, or did not compute on amino servers
```JSON
{
"api:message": "Invalid Request. Please update to the latest version. If the problem continues, please contact us.",
"api:timestamp": "2020-01-22T22:11:28Z <API timestamp>",
"api:statuscode": "104 <Statuscode 104 represents a bad NDCDEVICEID header>",
"api:duration": "0.000s <Processing time>"
}
```
</details>
<details>
<summary>GET /g/s/home/discover/content-modules/</summary>
GET content modules for homepage discovery. This includes community info, stories, ads, ect
__query strings__
|name|description|required|
| - | - | - |
|v|Likely a verson number. Changing to numbers or strings, or omission, seems to have no effect|False|
__headers__
|name|description|required|
| - | - | - |
|NDCDEVICEID|The device id generated by the app. See|True|
|NDC-MSG-SIG|Message signature (?) generated by the app|False|
|SMDEVICEID|I don't know, seems to be a non-string hex number|False|
|AUID|The auid (UUIDv4) generated on amino servers for this client, retrieved with GET /g/s/auid|False|
__responses__
- 200 - Content Modules
Content Modules
discovery content modules were retrieved
```JSON
{
"contentModuleList": [
{
"-": "community cards",
"contentObjectType": "16 <Unknown, probably content type id>",
"contentPoolId": "en <Unknown, probably content language>",
"contentVariety": "1 <Unknown, appears to be related to dataUrl path>",
"createdTime": "2019-12-31T08:38:32Z <Likely content created at>",
"customizable": "false <Amino stuff seems to be false, ads seem true>",
"dataUrl": "/topic/0/feed/community?... <URL to this content, see GET /g/s/topic/0/feed...>",
"displayName": "Recommended Communities <Name to put on the header of this section",
"ext": {
"<->": " <Ads seem to have field `adUnitId`>"
},
"extensions": "null <Always seems to be null>",
"isVirtual": "false <Only discover topics button seems to be true>",
"moduleId": "... <UUIDv4 of this item>",
"moduleName": "Recommended Communities <Name of this module>",
"moduleType": "RecommendedCommunities <Type of this module. Related to contentObjectType?>",
"status": "0 <Appears to always be zero>",
"style": "GeneralCommunityCard <Style of this item>",
"topicLocked": "false <Unknown use of `locked` in this context",
"uid": "... <UUIDv4 of... something>",
"userRemovable": "false <Unknown, probably related to frontpage stuff being not remuvable>",
"visibility": "1 <Likely a visibility bool>"
},
{
"-": "an ad",
"contentObjectType": "151 <Unknown, probably content type id>",
"contentPoolId": " <Unknown, probably content language>",
"contentVariety": "0 <Unknown, appears to be related to dataUrl path>",
"createdTime": "2019-12-31T08:38:32Z <Likely content created at>",
"customizable": "true <Amino stuff seems to be false, ads seem true>",
"dataUrl": "/topic/0/feed/banner-ads?... <URL to this content, see GET /g/s/topic/0/feed...>",
"displayName": "Recommended Communities <Name to put on the header of this section",
"ext": {
"adUnitId": "703300 <ID to look up this ad. Used in GET `dataUrl`"
},
"extensions": "null <Always seems to be null>",
"isVirtual": "false <Only discover topics button seems to be true>",
"moduleId": "... <UUIDv4 of this item>",
"moduleName": "Little Red series for all EN users <Name of this module>",
"moduleType": "CustomizedBannerAds <Type of this module. Related to contentObjectType>",
"status": "0 <Appears to always be zero>",
"style": "BannerSizeMedium <Style of this item>",
"topicLocked": "false <Unknown use of `locked` in this context",
"uid": "... <UUIDv4 of... something>",
"userRemovable": "false <Unknown, probably related to frontpage stuff being not remuvable>",
"visibility": "1 <Likely a visibility bool>"
}
]
}
```
2020-01-23 00:26:21 +00:00
- 200:0 - api:ok
api:ok
The request was successful. This is not a separate response, but included in every 200 response's json
```JSON
{
"api:message": "OK",
"api:timestamp": "2020-01-22T23:49:13Z <API timestamp>",
"api:statuscode": "0 <Statuscode 0 is ok>",
"api:duration": "0.010s <Processing time>"
}
```
- 400:104 - Missing NDCDEVICEID
Missing NDCDEVICEID
The NDCDEVICEID header was not included, or did not compute on amino servers
```JSON
{
"api:message": "Invalid Request. Please update to the latest version. If the problem continues, please contact us.",
"api:timestamp": "2020-01-22T22:11:28Z <API timestamp>",
"api:statuscode": "104 <Statuscode 104 represents a bad NDCDEVICEID header>",
"api:duration": "0.000s <Processing time>"
}
```
</details>
<details>
<summary>GET /g/s/live-layer/public-chats/</summary>
GET the active public chats and information about who is in them.
__query strings__
|name|description|required|
| - | - | - |
|pageToken|page token for paginated requests|False|
|size|max number of items to get for paginated requests|False|
__headers__
|name|description|required|
| - | - | - |
|NDCDEVICEID|The device id generated by the app. See|True|
|NDC-MSG-SIG|Message signature (?) generated by the app|False|
|SMDEVICEID|I don't know, seems to be a non-string hex number|False|
|AUID|The auid (UUIDv4) generated on amino servers for this client, retrieved with GET /g/s/auid|False|
__responses__
- 200 - Chats Retrieved
Chats Retrieved
Chat info and users were retrieved
```JSON
{
"communityInfoMapping": {
"<ndcId>": "{...} <Community object>"
},
"paging": "{...} <Paging info>",
"playlistInThreadList": {
"<->": " <Info about videos playing in chat threads>",
"<UUIDv4 thread id>": {
"currentItemIndex": "14 <Playlist length>",
"currentItemStatus": "2 <Likely playlist current index>",
"items": [
"{...} <Youtube video object>"
]
}
},
"threadList": [
"{...} <Chat thread object>"
],
"userInfoInThread": {
"<->": " <Info about users in chat threads>",
"<UUIDv4 thread id>": {
"userProfileCount": 2,
"userProfileList": [
"{...} <User object>"
]
}
}
}
```
- 200:0 - api:ok
api:ok
The request was successful. This is not a separate response, but included in every 200 response's json
```JSON
{
"api:message": "OK",
"api:timestamp": "2020-01-22T23:49:13Z <API timestamp>",
"api:statuscode": "0 <Statuscode 0 is ok>",
"api:duration": "0.010s <Processing time>"
}
```
- 400:104 - Missing NDCDEVICEID
Missing NDCDEVICEID
The NDCDEVICEID header was not included, or did not compute on amino servers
```JSON
{
"api:message": "Invalid Request. Please update to the latest version. If the problem continues, please contact us.",
"api:timestamp": "2020-01-22T22:11:28Z <API timestamp>",
"api:statuscode": "104 <Statuscode 104 represents a bad NDCDEVICEID header>",
"api:duration": "0.000s <Processing time>"
}
```
</details>
<details>
<summary>GET /g/s/topic/:variant/feed/banner-ads/</summary>
GET a piece of media for a topic. Usually seems to be used in homepage exploration
__url arguments__
|name|description|required|
| - | - | - |
|variant|The variant of this topic item. Nonzero values seem to have no effect|False|
__query strings__
|name|description|required|
| - | - | - |
|adUnitId|The id of this add, which is a number|True|
|pagingType|Seems to have no effect, default value is `t`|False|
|size|max number of items to get for paginated requests|False|
|categoryKey|Likely has to do with what type of items are returned. Logged out values seen include [`recommendation`, `fresh`]|False|
__headers__
|name|description|required|
| - | - | - |
|NDCDEVICEID|The device id generated by the app. See|True|
|NDC-MSG-SIG|Message signature (?) generated by the app|False|
|SMDEVICEID|I don't know, seems to be a non-string hex number|False|
|AUID|The auid (UUIDv4) generated on amino servers for this client, retrieved with GET /g/s/auid|False|
__responses__
- 200 - Banner Ads Retrieved
Banner Ads Retrieved
The banner ads matching this id were retrieved
```JSON
{
2020-01-23 00:26:21 +00:00
"allItemCount": "1 <Total returnable item count>",
"itemList": [
{
"adCampaignId": "803326 <Likely related to ad grouping by campaign, use unknown>",
"deepLink": "ndc://topic/1390058 <Likely a hard link to this item, root URL unknown>",
"imageUrl": "... <A URL to the image used, seems to be background images?>",
"objectId": "803326 <Seems to be the same as adCampaignId>",
"objectType": "153 <Type of this object. Matches those in GET /g/s/home/discover/content-modules/>",
"strategyInfo": {
"<->": "<This is a raw JSON string. It has been reformatted as JSON>",
"adUnitId": "703323 <Matches the adUnitId query string>",
"imageUrl": "... <A URL to the used image, seesm to be the same as parent object>",
"landingUrl": "... <Seems to match parent object>",
"objectId": "803326 <Seems to match parent object>",
"objectType": "ad_campaign <Unknown use>",
"reqId": "... <A UUIDv4, use unknown>",
"scenarioType": "banner-703323 <Seems to match banner-adUnitId, use unknown>",
"uiPos": "0 <Likely related to desired render position"
}
}
],
2020-01-23 00:26:21 +00:00
"paging": "{...} <Paging info>"
}
```
- 200:0 - api:ok
api:ok
The request was successful. This is not a separate response, but included in every 200 response's json
```JSON
{
"api:message": "OK",
"api:timestamp": "2020-01-22T23:49:13Z <API timestamp>",
"api:statuscode": "0 <Statuscode 0 is ok>",
"api:duration": "0.010s <Processing time>"
}
```
- 400:104 - Missing NDCDEVICEID
Missing NDCDEVICEID
The NDCDEVICEID header was not included, or did not compute on amino servers
```JSON
{
"api:message": "Invalid Request. Please update to the latest version. If the problem continues, please contact us.",
"api:timestamp": "2020-01-22T22:11:28Z <API timestamp>",
"api:statuscode": "104 <Statuscode 104 represents a bad NDCDEVICEID header>",
"api:duration": "0.000s <Processing time>"
}
```
</details>
<details>
<summary>GET /g/s/topic/:variant/feed/community/</summary>
GET a list of communities. Usually for homepage display
__url arguments__
|name|description|required|
| - | - | - |
|variant|The variant of this topic item. Nonzero values seem to have no effect|False|
__query strings__
|name|description|required|
| - | - | - |
|type|the type of communities to get, observed include [`discover`, `discovery-list`]. Omission or arbitrary values will not fail the request, but will return zero values.|False|
|categoryKey|Likely has to do with what type of items are returned. Logged out values seen include [`recommendation`, `fresh`]|False|
|size|max number of items to get for paginated requests|False|
|pageToken|page token for paginated requests|False|
|pagingType|Seems to have no effect, default value is `t`|False|
__headers__
|name|description|required|
| - | - | - |
|NDCDEVICEID|The device id generated by the app. See|True|
|NDC-MSG-SIG|Message signature (?) generated by the app|False|
|SMDEVICEID|I don't know, seems to be a non-string hex number|False|
|AUID|The auid (UUIDv4) generated on amino servers for this client, retrieved with GET /g/s/auid|False|
__responses__
2020-01-23 00:26:21 +00:00
- 200 - Communities Retrieved
Communities Retrieved
The communities for frontpage display were retrieved
```JSON
{
"allItemCount": "100 <Total returnable item count>",
"communityList": [
"{...} <Community object>"
],
"paging": "{...} <Paging info>"
}
```
- 200:0 - api:ok
api:ok
The request was successful. This is not a separate response, but included in every 200 response's json
```JSON
{
"api:message": "OK",
"api:timestamp": "2020-01-22T23:49:13Z <API timestamp>",
"api:statuscode": "0 <Statuscode 0 is ok>",
"api:duration": "0.010s <Processing time>"
}
```
- 400:104 - Missing NDCDEVICEID
Missing NDCDEVICEID
The NDCDEVICEID header was not included, or did not compute on amino servers
```JSON
{
"api:message": "Invalid Request. Please update to the latest version. If the problem continues, please contact us.",
"api:timestamp": "2020-01-22T22:11:28Z <API timestamp>",
"api:statuscode": "104 <Statuscode 104 represents a bad NDCDEVICEID header>",
"api:duration": "0.000s <Processing time>"
}
```
</details>
<details>
<summary>GET /g/s/topic/:variant/feed/story/</summary>
GET a list of blogs for a topic. Usually for homepage display
__url arguments__
|name|description|required|
| - | - | - |
|variant|The variant of this topic item. Nonzero values seem to have no effect|False|
__query strings__
|name|description|required|
| - | - | - |
|v|Likely a verson number. Changing to numbers or strings, or omission, seems to have no effect|False|
|type|the type of communities to get, observed include [`discover`, `discovery-list`]. Omission or arbitrary values will not fail the request, but will return zero values.|False|
|categoryKey|Likely has to do with what type of items are returned. Logged out values seen include [`recommendation`, `fresh`]|False|
|size|max number of items to get for paginated requests|False|
|pageToken|page token for paginated requests|False|
|pagingType|Seems to have no effect, default value is `t`|False|
__headers__
|name|description|required|
| - | - | - |
|NDCDEVICEID|The device id generated by the app. See|True|
|NDC-MSG-SIG|Message signature (?) generated by the app|False|
|SMDEVICEID|I don't know, seems to be a non-string hex number|False|
|AUID|The auid (UUIDv4) generated on amino servers for this client, retrieved with GET /g/s/auid|False|
__responses__
- 200 - Blogs Retrieved
Blogs Retrieved
The blogs for frontpage display were retrieved
```JSON
{
"allItemCount": "400 <Total returnable item count>",
"blogList": [
"{...} <full `blog` object>"
],
"communityInfoMapping": {
"<->": "<community id (ndcId) -> short info",
"192258706": {
"<->": " <Short amino community description>",
"endpoint": "Tik <Endpoint pointing to this community>",
"icon": "... <URL to the icon of this community",
"name": "-TikTok Amino- <Name of this community>",
"ndcId": "192258706 <Number ID of this community>",
"status": "0 <Unknown>"
}
},
2020-01-23 00:26:21 +00:00
"paging": "{...} <Paging info>"
}
```
- 200:0 - api:ok
api:ok
The request was successful. This is not a separate response, but included in every 200 response's json
```JSON
{
"api:message": "OK",
"api:timestamp": "2020-01-22T23:49:13Z <API timestamp>",
"api:statuscode": "0 <Statuscode 0 is ok>",
"api:duration": "0.010s <Processing time>"
}
```
- 400:104 - Missing NDCDEVICEID
Missing NDCDEVICEID
The NDCDEVICEID header was not included, or did not compute on amino servers
```JSON
{
"api:message": "Invalid Request. Please update to the latest version. If the problem continues, please contact us.",
"api:timestamp": "2020-01-22T22:11:28Z <API timestamp>",
"api:statuscode": "104 <Statuscode 104 represents a bad NDCDEVICEID header>",
"api:duration": "0.000s <Processing time>"
}
```
</details>