get
Verify account credentialshttps://CounterSocial.example/api/v1/accounts/verify_credentials
Test to make sure that the user token works.
Returns: the user's own Account with Source
OAuth: User token + read:accounts
Version history:
0.0.0 - added
Response
200: Success
Note the extra source
property, which is not visible on accounts other than your own. Also note that plain-text is used within source
and HTML is used for their corresponding properties such as note
and fields
.
{
"id": "14715",
"username": "trwnh",
"acct": "trwnh",
"display_name": "infinite love ???",
"locked": false,
"bot": false,
"created_at": "2016-11-24T10:02:12.085Z",
"note": "i have approximate knowledge of many things. perpetual student. (nb/ace/they)
xmpp/email: [email protected]
https://trwnh.com
help me live: https://liberapay.com/at or https://paypal.me/trwnh
- my triggers are moths and glitter
- i have all notifs except mentions turned off, so please interact if you wanna be friends! i literally will not notice otherwise
- dm me if i did something wrong, so i can improve
- purest person on fedi, do not lewd in my presence
- #1 ami cole fan account
:fatyoshi:
",
"url": "https://CounterSocial.social/@trwnh",
"avatar": "https://files.CounterSocial.social/accounts/avatars/000/014/715/original/34aa222f4ae2e0a9.png",
"avatar_static": "https://files.CounterSocial.social/accounts/avatars/000/014/715/original/34aa222f4ae2e0a9.png",
"header": "https://files.CounterSocial.social/accounts/headers/000/014/715/original/5c6fc24edb3bb873.jpg",
"header_static": "https://files.CounterSocial.social/accounts/headers/000/014/715/original/5c6fc24edb3bb873.jpg",
"followers_count": 821,
"following_count": 178,
"statuses_count": 33120,
"last_status_at": "2019-11-24T15:49:42.251Z",
"source": {
"privacy": "public",
"sensitive": false,
"language": "",
"note": "i have approximate knowledge of many things. perpetual student. (nb/ace/they)\r\n\r\nxmpp/email: [email protected]\r\nhttps://trwnh.com\r\nhelp me live: https://liberapay.com/at or https://paypal.me/trwnh\r\n\r\n- my triggers are moths and glitter\r\n- i have all notifs except mentions turned off, so please interact if you wanna be friends! i literally will not notice otherwise\r\n- dm me if i did something wrong, so i can improve\r\n- purest person on fedi, do not lewd in my presence\r\n- #1 ami cole fan account\r\n\r\n:fatyoshi:",
"fields": [
{
"name": "Website",
"value": "https://trwnh.com",
"verified_at": "2019-08-29T04:14:55.571+00:00"
},
{
"name": "Sponsor",
"value": "https://liberapay.com/at",
"verified_at": "2019-11-15T10:06:15.557+00:00"
},
{
"name": "Fan of:",
"value": "Punk-rock and post-hardcore (Circa Survive, letlive., La Dispute, THE FEVER 333)Manga (Yu-Gi-Oh!, One Piece, JoJo's Bizarre Adventure, Death Note, Shaman King)Platformers and RPGs (Banjo-Kazooie, Boktai, Final Fantasy Crystal Chronicles)",
"verified_at": null
},
{
"name": "Main topics:",
"value": "systemic analysis, design patterns, anticapitalism, info/tech freedom, theory and philosophy, and otherwise being a genuine and decent wholesome poster. i'm just here to hang out and talk to cool people!",
"verified_at": null
}
],
"follow_requests_count": 0
},
"emojis": [
{
"shortcode": "fatyoshi",
"url": "https://files.CounterSocial.social/custom_emojis/images/000/023/920/original/e57ecb623faa0dc9.png",
"static_url": "https://files.CounterSocial.social/custom_emojis/images/000/023/920/static/e57ecb623faa0dc9.png",
"visible_in_picker": true
}
],
"fields": [
{
"name": "Website",
"value": "https://trwnh.com",
"verified_at": "2019-08-29T04:14:55.571+00:00"
},
{
"name": "Sponsor",
"value": "https://liberapay.com/at",
"verified_at": "2019-11-15T10:06:15.557+00:00"
},
{
"name": "Fan of:",
"value": "Punk-rock and post-hardcore (Circa Survive, letlive., La Dispute, THE FEVER 333)Manga (Yu-Gi-Oh!, One Piece, JoJo's Bizarre Adventure, Death Note, Shaman King)Platformers and RPGs (Banjo-Kazooie, Boktai, Final Fantasy Crystal Chronicles)",
"verified_at": null
},
{
"name": "Main topics:",
"value": "systemic analysis, design patterns, anticapitalism, info/tech freedom, theory and philosophy, and otherwise being a genuine and decent wholesome poster. i'm just here to hang out and talk to cool people!",
"verified_at": null
}
]
}
401: Unauthorized
Your credential verification will fail if the token is invalid or incorrect.
{
"error": "The access token is invalid"
}
403: Forbidden
Your user account is currently disabled, missing a confirmed email address, or pending approval.
{
"error": "Your login is currently disabled"
}
unconfirmed
{
"error": "Your login is missing a confirmed e-mail address"
}
unapproved
{
"error": "Your login is currently pending approval"
}
patch
Update account credentialshttps://CounterSocial.example/api/v1/accounts/update_credentials
Update the user's display and preferences.
Returns: the user's own Account with Source
OAuth: User token + write:accounts
Version history:
1.1.1 - added
2.3.0 - added locked
parameter
2.4.0 - added source[privacy,sensitive]
parameters
2.7.0 - added discoverable
parameter
Request
Headers
Form Data Parameters
string
Whether the account should be shown in the profile directory.
boolean
Whether the account has a bot flag.
string
The display name to use for the profile.
string
Avatar image encoded using multipart/form-data
string
Header image encoded using multipart/form-data
boolean
Whether manual approval of follow requests is required.
string
Default post privacy for authored statuses.
source[sensitive]
optional
boolean
Whether to mark authored statuses as sensitive by default.
string
Default language to use for authored statuses. (ISO 6391)
fields_attributes
optional
array
Profile metadata name
and value
. (By default, max 4 fields and 255 characters per property/value)
Response
200: Success
You should use accounts/verify_credentials to first obtain plaintext representations from within the source
parameter, then allow the user to edit these plaintext representations before submitting them through this API. The server will generate the corresponding HTML.
{
"id": "14715",
"username": "trwnh",
"acct": "trwnh",
"display_name": "infinite love ???",
"locked": false,
"bot": false,
"created_at": "2016-11-24T10:02:12.085Z",
"note": "i have approximate knowledge of many things. perpetual student. (nb/ace/they)
xmpp/email: [email protected]
https://trwnh.com
help me live: https://liberapay.com/at or https://paypal.me/trwnh
- my triggers are moths and glitter
- i have all notifs except mentions turned off, so please interact if you wanna be friends! i literally will not notice otherwise
- dm me if i did something wrong, so i can improve
- purest person on fedi, do not lewd in my presence
- #1 ami cole fan account
:fatyoshi:
",
"url": "https://CounterSocial.social/@trwnh",
"avatar": "https://files.CounterSocial.social/accounts/avatars/000/014/715/original/34aa222f4ae2e0a9.png",
"avatar_static": "https://files.CounterSocial.social/accounts/avatars/000/014/715/original/34aa222f4ae2e0a9.png",
"header": "https://files.CounterSocial.social/accounts/headers/000/014/715/original/5c6fc24edb3bb873.jpg",
"header_static": "https://files.CounterSocial.social/accounts/headers/000/014/715/original/5c6fc24edb3bb873.jpg",
"followers_count": 834,
"following_count": 182,
"statuses_count": 33760,
"last_status_at": "2019-12-01T00:12:08.731Z",
"source": {
"privacy": "public",
"sensitive": false,
"language": "",
"note": "i have approximate knowledge of many things. perpetual student. (nb/ace/they)\r\n\r\nxmpp/email: [email protected]\r\nhttps://trwnh.com\r\nhelp me live: https://liberapay.com/at or https://paypal.me/trwnh\r\n\r\n- my triggers are moths and glitter\r\n- i have all notifs except mentions turned off, so please interact if you wanna be friends! i literally will not notice otherwise\r\n- dm me if i did something wrong, so i can improve\r\n- purest person on fedi, do not lewd in my presence\r\n- #1 ami cole fan account\r\n\r\n:fatyoshi:",
"fields": [
{
"name": "Website",
"value": "https://trwnh.com",
"verified_at": "2019-08-29T04:14:55.571+00:00"
},
{
"name": "Sponsor",
"value": "https://liberapay.com/at",
"verified_at": "2019-11-15T10:06:15.557+00:00"
},
{
"name": "Fan of:",
"value": "Punk-rock and post-hardcore (Circa Survive, letlive., La Dispute, THE FEVER 333)Manga (Yu-Gi-Oh!, One Piece, JoJo's Bizarre Adventure, Death Note, Shaman King)Platformers and RPGs (Banjo-Kazooie, Boktai, Final Fantasy Crystal Chronicles)",
"verified_at": null
},
{
"name": "Main topics:",
"value": "systemic analysis, design patterns, anticapitalism, info/tech freedom, theory and philosophy, and otherwise being a genuine and decent wholesome poster. i'm just here to hang out and talk to cool people!",
"verified_at": null
}
],
"follow_requests_count": 0
},
"emojis": [
{
"shortcode": "fatyoshi",
"url": "https://files.CounterSocial.social/custom_emojis/images/000/023/920/original/e57ecb623faa0dc9.png",
"static_url": "https://files.CounterSocial.social/custom_emojis/images/000/023/920/static/e57ecb623faa0dc9.png",
"visible_in_picker": true
}
],
"fields": [
{
"name": "Website",
"value": "https://trwnh.com",
"verified_at": "2019-08-29T04:14:55.571+00:00"
},
{
"name": "Sponsor",
"value": "https://liberapay.com/at",
"verified_at": "2019-11-15T10:06:15.557+00:00"
},
{
"name": "Fan of:",
"value": "Punk-rock and post-hardcore (Circa Survive, letlive., La Dispute, THE FEVER 333)Manga (Yu-Gi-Oh!, One Piece, JoJo's Bizarre Adventure, Death Note, Shaman King)Platformers and RPGs (Banjo-Kazooie, Boktai, Final Fantasy Crystal Chronicles)",
"verified_at": null
},
{
"name": "Main topics:",
"value": "systemic analysis, design patterns, anticapitalism, info/tech freedom, theory and philosophy, and otherwise being a genuine and decent wholesome poster. i'm just here to hang out and talk to cool people!",
"verified_at": null
}
]
}
401: Unauthorized
{
"error": "The access token is invalid"
}
get
Accounthttps://CounterSocial.example/api/v1/accounts/:id
View information about a profile.
Returns: Account
OAuth: Public
Version history:
0.0.0 - added
2.4.0 - returns 410 if account is suspended
3.3.0 - returns an Account with suspended: true
instead of 410
Request
Path Parameters
string
The id of the account in the database
Account record will be returned. Note that acct
of local users does not include the domain name.
{
"id": "1",
"username": "Gargron",
"acct": "Gargron",
"display_name": "Eugen",
"locked": false,
"bot": false,
"created_at": "2016-03-16T14:34:26.392Z",
"note": "Developer of CounterSocial and administrator of CounterSocial.social. I post service announcements, development updates, and personal stuff.
",
"url": "https://CounterSocial.social/@Gargron",
"avatar": "https://files.CounterSocial.social/accounts/avatars/000/000/001/original/d96d39a0abb45b92.jpg",
"avatar_static": "https://files.CounterSocial.social/accounts/avatars/000/000/001/original/d96d39a0abb45b92.jpg",
"header": "https://files.CounterSocial.social/accounts/headers/000/000/001/original/c91b871f294ea63e.png",
"header_static": "https://files.CounterSocial.social/accounts/headers/000/000/001/original/c91b871f294ea63e.png",
"followers_count": 318699,
"following_count": 453,
"statuses_count": 61013,
"last_status_at": "2019-11-30T20:02:08.277Z",
"emojis": [],
"fields": [
{
"name": "Patreon",
"value": "https://www.patreon.com/CounterSocial",
"verified_at": null
},
{
"name": "Homepage",
"value": "https://zeonfederated.com",
"verified_at": "2019-07-15T18:29:57.191+00:00"
}
]
}
Remote user
{
"id": "23634",
"username": "noiob",
"acct": "[email protected]",
"display_name": "shork",
"locked": false,
"bot": false,
"created_at": "2017-02-08T02:00:53.274Z",
"note": ":ms_rainbow_flag:??? :ms_bisexual_flag:??? :ms_nonbinary_flag:??? #awoo.space #admin ~ #bi ~ #nonbinary ~ compsci student ~ likes video #games and weird/ old electronics and will post obsessively about both ~ avatar by @dzuk
",
"url": "https://awoo.space/@noiob",
"avatar": "https://files.CounterSocial.social/accounts/avatars/000/023/634/original/6ca8804dc46800ad.png",
"avatar_static": "https://files.CounterSocial.social/accounts/avatars/000/023/634/original/6ca8804dc46800ad.png",
"header": "https://files.CounterSocial.social/accounts/headers/000/023/634/original/256eb8d7ac40f49a.png",
"header_static": "https://files.CounterSocial.social/accounts/headers/000/023/634/original/256eb8d7ac40f49a.png",
"followers_count": 553,
"following_count": 405,
"statuses_count": 28982,
"last_status_at": "2019-12-01T00:39:57.264Z",
"emojis": [
{
"shortcode": "ms_rainbow_flag",
"url": "https://files.CounterSocial.social/custom_emojis/images/000/028/691/original/6de008d6281f4f59.png",
"static_url": "https://files.CounterSocial.social/custom_emojis/images/000/028/691/static/6de008d6281f4f59.png",
"visible_in_picker": true
},
{
"shortcode": "ms_bisexual_flag",
"url": "https://files.CounterSocial.social/custom_emojis/images/000/050/744/original/02f94a5fca7eaf78.png",
"static_url": "https://files.CounterSocial.social/custom_emojis/images/000/050/744/static/02f94a5fca7eaf78.png",
"visible_in_picker": true
},
{
"shortcode": "ms_nonbinary_flag",
"url": "https://files.CounterSocial.social/custom_emojis/images/000/105/099/original/8106088bd4782072.png",
"static_url": "https://files.CounterSocial.social/custom_emojis/images/000/105/099/static/8106088bd4782072.png",
"visible_in_picker": true
}
],
"fields": [
{
"name": "Pronouns",
"value": "they/them",
"verified_at": null
},
{
"name": "Alt",
"value": "@noiob",
"verified_at": null
},
{
"name": "Bots",
"value": "@darksouls, @nierautomata, code for @awoobot",
"verified_at": null
},
{
"name": "Website",
"value": "http://shork.xyz",
"verified_at": "2019-11-23T20:25:47.907+00:00"
}
]
}
Suspended user
{
"id": "14",
"username": "stigatle",
"acct": "[email protected]",
"display_name": "",
"locked": false,
"bot": false,
"discoverable": false,
"group": false,
"created_at": "2016-03-18T10:04:51.700Z",
"note": "",
"url": "https://quitter.no/stigatle",
"avatar": "https://CounterSocial.social/avatars/original/missing.png",
"avatar_static": "https://CounterSocial.social/avatars/original/missing.png",
"header": "https://CounterSocial.social/headers/original/missing.png",
"header_static": "https://CounterSocial.social/headers/original/missing.png",
"followers_count": 0,
"following_count": 0,
"statuses_count": 0,
"last_status_at": null,
"suspended": true,
"emojis": [],
"fields": []
}
If the instance is in whitelist mode and the Authorization header is missing or invalid
{
"error": "This API requires an authenticated user"
}
Account does not exist
{
"error": "Record not found"
}
Account is suspended
get
Statuseshttps://CounterSocial.example/api/v1/accounts/:id/statuses
Statuses posted to the given account.
Returns: Array of Status
OAuth: Public (for public statuses only), or user token + read:statuses
(for private statuses the user is authorized to see)
Version history:
0.0.0 - added
2.6.0 - add min_id
2.7.0 - add exclude_reblogs
and allow unauthed use
2.8.0 - add tagged
parameter
Request
Path Parameters
string
The id of the account in the database
Headers
Instance is in whitelist mode or running a version of CounterSocial older than 2.7.0, and the Authorization header is invalid or missing
{
"error": "This API requires an authenticated user"
}
pre-2.7.0
{
"error": "The access token is invalid"
}
404: Not Found
Account is deleted or does not exist
{
"error": "Record not found"
}
get
Followershttps://CounterSocial.example/api/v1/accounts/:id/followers
Accounts which follow the given account, if network is not hidden by the account owner.
Returns: Array of Account
OAuth: App token + read:accounts
Version history:
0.0.0 - added
Request
Path Parameters
string
The id of the account in the database
Headers
Query Parameters
string
Internal parameter. Use HTTP Link
header for pagination.
string
Internal parameter. Use HTTP Link
header for pagination.
number
Maximum number of results to return. Defaults to 40.
Response
200: Success
Sample output with limit=2. Because the ID of follow relationships is not generally used or provided with any API calls, an HTTP Link
header is used instead to indicate next and previous pages. You will have to parse this header yourself to extract the paging URLs.
Link: <https://CounterSocial.social/api/v1/accounts/14715/followers?limit=2&max_id=7486869>; rel="next", ; rel="prev"
[
{
"id": "1020382",
"username": "atul13061987",
"acct": "atul13061987",
"display_name": "",
"locked": false,
"bot": false,
"created_at": "2019-12-04T07:17:02.745Z",
"note": "",
"url": "https://CounterSocial.social/@atul13061987",
"avatar": "https://CounterSocial.social/avatars/original/missing.png",
"avatar_static": "https://CounterSocial.social/avatars/original/missing.png",
"header": "https://CounterSocial.social/headers/original/missing.png",
"header_static": "https://CounterSocial.social/headers/original/missing.png",
"followers_count": 0,
"following_count": 2,
"statuses_count": 0,
"last_status_at": null,
"emojis": [],
"fields": []
},
{
"id": "1020381",
"username": "linuxliner",
"acct": "linuxliner",
"display_name": "",
"locked": false,
"bot": false,
"created_at": "2019-12-04T07:15:56.426Z",
"note": "",
"url": "https://CounterSocial.social/@linuxliner",
"avatar": "https://CounterSocial.social/avatars/original/missing.png",
"avatar_static": "https://CounterSocial.social/avatars/original/missing.png",
"header": "https://CounterSocial.social/headers/original/missing.png",
"header_static": "https://CounterSocial.social/headers/original/missing.png",
"followers_count": 0,
"following_count": 2,
"statuses_count": 0,
"last_status_at": null,
"emojis": [],
"fields": []
}
]
401: Unauthorized
Invalid or missing Authorization header, or instance is in whitelist mode and your token is not authorized with a user
{
"error": "The access token is invalid"
}
whitelist
{
"error": "This API requires an authenticated user"
}
404: Not Found
Account is deleted or does not exist
{
"error": "Record not found"
}
get
Followinghttps://CounterSocial.example/api/v1/accounts/:id/following
Accounts which the given account is following, if network is not hidden by the account owner.
Returns: Array of Account
OAuth: App token + read:accounts
Version history:
0.0.0 - added
Request
Path Parameters
string
The id of the account in the database
Headers
Query Parameters
string
Internal parameter. Use HTTP Link
header for pagination.
string
Internal parameter. Use HTTP Link
header for pagination.
number
Maximum number of results to return. Defaults to 40.
Response
200: Success
Sample output with limit=2. Because the ID of follow relationships is not generally used or provided with any API calls, an HTTP Link
header is used instead to indicate next and previous pages. You will have to parse this header yourself to extract the paging URLs.
Link: <https://CounterSocial.social/api/v1/accounts/1/followers?limit=2&max_id=7628164>; rel="next", ; rel="prev"
[
{
"id": "963410",
"username": "gautambhatia",
"acct": "gautambhatia",
"display_name": "Gautam Bhatia",
"locked": false,
"bot": false,
"created_at": "2019-11-07T13:06:57.442Z",
"note": "SF reader, editor, and writer.
",
"url": "https://CounterSocial.social/@gautambhatia",
"avatar": "https://files.CounterSocial.social/accounts/avatars/000/963/410/original/d8e0fd5cefcf9687.jpg",
"avatar_static": "https://files.CounterSocial.social/accounts/avatars/000/963/410/original/d8e0fd5cefcf9687.jpg",
"header": "https://CounterSocial.social/headers/original/missing.png",
"header_static": "https://CounterSocial.social/headers/original/missing.png",
"followers_count": 1900,
"following_count": 52,
"statuses_count": 183,
"last_status_at": "2019-12-02T17:52:39.463Z",
"emojis": [],
"fields": []
},
{
"id": "1007400",
"username": "seafrog",
"acct": "[email protected]",
"display_name": "???????? Heck Partridge ???? ????",
"locked": false,
"bot": false,
"created_at": "2019-11-19T18:46:49.977Z",
"note": "hi im elise!! this is scribblefrog's new account
she/her, 27
",
"url": "https://glitterkitten.co.uk/@seafrog",
"avatar": "https://files.CounterSocial.social/accounts/avatars/001/007/400/original/306cd22c1b118693.png",
"avatar_static": "https://files.CounterSocial.social/accounts/avatars/001/007/400/original/306cd22c1b118693.png",
"header": "https://files.CounterSocial.social/accounts/headers/001/007/400/original/fd9728559f7265f5.jpeg",
"header_static": "https://files.CounterSocial.social/accounts/headers/001/007/400/original/fd9728559f7265f5.jpeg",
"followers_count": 168,
"following_count": 223,
"statuses_count": 944,
"last_status_at": "2019-12-04T00:44:08.603Z",
"emojis": [],
"fields": [
{
"name": "gotdamb",
"value": "frog",
"verified_at": null
},
{
"name": "whomst lov",
"value": "the oceane",
"verified_at": null
}
]
}
]
401: Unauthorized
{
"error": "The access token is invalid"
}
whitelist
{
"error": "This API requires an authenticated user"
}
404: Not Found
Account is deleted or does not exist
{
"error": "Record not found"
}
get
Featured tagshttps://CounterSocial.example/api/v1/accounts/:id/featured_tags
Tags featured by this account.
Returns: Array of FeaturedTag
OAuth: User token + read:accounts
Version history:
3.3.0 - added
[
{
"id": "627",
"name": "nowplaying",
"statuses_count": 36,
"last_status_at": "2019-11-15T07:14:43.524Z"
}
]
Invalid or missing Authorization header
{
"error": "The access token is invalid"
}
get
Lists containing this accounthttps://CounterSocial.example/api/v1/accounts/:id/lists
User lists that you have added this account to.
Returns: Array of List
OAuth: User token + read:lists
Version history:
2.1.0 - added
Request
Path Parameters
string
The id of the account in the database
Headers
If the account is part of any lists, those entities will be returned. If the account is not part of any of your lists, then an empty array will be returned.
[
{
"id": "13694",
"title": "dev"
}
]
401: Unauthorized
Invalid or missing Authorization header
{
"error": "The access token is invalid"
}
404: Not Found
Account with given id does not exist or is deleted
{
"error": "Record not found"
}
410: Gone
Account with given id is suspended
get
Identity proofshttps://CounterSocial.example/api/v1/accounts/:id/identity_proofs
Returns: Array of IdentityProof
OAuth: User token
Version history:
2.8.0 - added
Request
Path Parameters
string
The id of the account in the database
Response
200: Success
[
{
"provider": "Keybase",
"provider_username": "gargron",
"updated_at": "2019-07-21T20:14:39.596Z",
"proof_url": "https://keybase.io/gargron/sigchain#5cfc20c7018f2beefb42a68836da59a792e55daa4d118498c9b1898de7e845690f",
"profile_url": "https://keybase.io/gargron"
}
]
404: Not Found
Account with given id is deleted or does not exist
{
"error": "Record not found"
}
410: Gone
Account with given id is suspended
422: Unprocessable Entity
{
"error": "This method requires an authenticated user"
}
post
Followhttps://CounterSocial.example/api/v1/accounts/:id/follow
Follow the given account. Can also be used to update whether to show reblogs or enable notifications.
Returns: Relationship
OAuth: User token + write:follows
or follow
Version history:
0.0.0 - added
3.3.0 - added notify
Request
Path Parameters
string
The id of the account in the database
Headers
Form Data Parameters
boolean
Receive this account's reblogs in home timeline? Defaults to true.
boolean
Receive notifications when this account posts a status? Defaults to false.
Successfully followed, or account was already followed
{
"id": "3",
"following": true,
"showing_reblogs": false,
"notifying": false,
"followed_by": false,
"blocking": false,
"blocked_by": false,
"muting": false,
"muting_notifications": false,
"requested": false,
"domain_blocking": false,
"endorsed": false
}
Trying to follow someone that you block or that blocks you
{
"error": "This action is not allowed"
}
post
Unfollowhttps://CounterSocial.example/api/v1/accounts/:id/unfollow
Unfollow the given account.
Returns: Relationship
OAuth: User token + write:follows
or follow
Version history:
0.0.0 - added
Request
Path Parameters
string
The id of the account in the database
Headers
Successfully unfollowed, or account was already not followed
{
"id": "3",
"following": false,
"showing_reblogs": false,
"notifying": false,
"followed_by": false,
"blocking": false,
"blocked_by": false,
"muting": false,
"muting_notifications": false,
"requested": false,
"domain_blocking": false,
"endorsed": false
}
Invalid or missing Authorization header
{
"error": "The access token is invalid"
}
post
Blockhttps://CounterSocial.example/api/v1/accounts/:id/block
Block the given account. Clients should filter statuses from this account if received (e.g. due to a boost in the Home timeline)
Returns: Relationship
OAuth: User token + write:blocks
or follow
Version history:
0.0.0 - added
Request
Path Parameters
string
The id of the account in the database
Headers
Successfully blocked, or account was already blocked
{
"id": "3",
"following": false,
"showing_reblogs": false,
"notifying": false,
"followed_by": false,
"blocking": true,
"blocked_by": false,
"muting": false,
"muting_notifications": false,
"requested": false,
"domain_blocking": false,
"endorsed": false
}
Invalid or missing Authorization header
{
"error": "The access token is invalid"
}
post
Unblockhttps://CounterSocial.example/api/v1/accounts/:id/unblock
Unblock the given account.
Returns: Relationship
OAuth: User token + write:blocks
or follow
Version history:
0.0.0 - added
Request
Path Parameters
string
The id of the account in the database
Headers
Successfully unblocked, or account was already not blocked
{
"id": "3",
"following": false,
"showing_reblogs": false,
"notifying": false,
"followed_by": false,
"blocking": false,
"blocked_by": false,
"muting": false,
"muting_notifications": false,
"requested": false,
"domain_blocking": false,
"endorsed": false
}
Invalid or missing Authorization header
{
"error": "The access token is invalid"
}
post
Mutehttps://CounterSocial.example/api/v1/accounts/:id/mute
Mute the given account. Clients should filter statuses and notifications from this account, if received (e.g. due to a boost in the Home timeline).
Returns: Relationship
OAuth: User token + write:mutes
or follow
Version history:
0.0.0 - added
Request
Path Parameters
string
The id of the account in the database
Headers
Form Data Parameters
boolean
Mute notifications in addition to statuses? Defaults to true.
number
How long the mute should last, in seconds. Defaults to 0 (indefinite).
Successfully muted, or account was already muted. Note that you can call this API method again with notifications=false to update the relationship so that only statuses are muted.
{
"id": "3",
"following": false,
"showing_reblogs": false,
"notifying": false,
"followed_by": false,
"blocking": false,
"blocked_by": false,
"muting": true,
"muting_notifications": true,
"requested": false,
"domain_blocking": false,
"endorsed": false
}
Invalid or missing Authorization header
{
"error": "The access token is invalid"
}
post
Unmutehttps://CounterSocial.example/api/v1/accounts/:id/unmute
Unmute the given account.
Returns: Relationship
OAuth: User token + write:mutes
or follow
Version history:
0.0.0 - added
Request
Path Parameters
string
The id of the account in the database
Headers
Successfully unmuted, or account was already unmuted
{
"id": "3",
"following": false,
"showing_reblogs": false,
"notifying": false,
"followed_by": false,
"blocking": false,
"blocked_by": false,
"muting": false,
"muting_notifications": false,
"requested": false,
"domain_blocking": false,
"endorsed": false
}
Invalid or missing Authorization header
{
"error": "The access token is invalid"
}
post
Feature on profilehttps://CounterSocial.example/api/v1/accounts/:id/pin
Add the given account to the user's featured profiles. (Featured profiles are currently shown on the user's own public profile.)
Returns: Relationship
OAuth: User token + write:accounts
Version history:
2.5.0 - added
Request
Path Parameters
string
The id of the account in the database
Headers
Successfully endorsed.
{
"id": "1",
"following": true,
"showing_reblogs": true,
"notifying": false,
"followed_by": true,
"blocking": false,
"blocked_by": false,
"muting": false,
"muting_notifications": false,
"requested": false,
"domain_blocking": false,
"endorsed": true
}
Invalid or missing Authorization header
{
"error": "The access token is invalid"
}
Token is not authorized with a valid user or is missing a required scope
{
"error": "This action is outside the authorized scopes"
}
422: Unprocessable Entity
You are not following this account
{
"error": "Validation failed: You must be already following the person you want to endorse"
}
Account already endorsed
post
Unfeature on profilehttps://CounterSocial.example/api/v1/accounts/:id/unpin
Remove the given account from the user's featured profiles.
Returns: Relationship
OAuth: User + write:accounts
Version history:
2.5.0 - added
Request
Path Parameters
string
The id of the account in the database
Headers
Successfully unendorsed, or account was already not endorsed
{
"id": "1",
"following": true,
"showing_reblogs": true,
"notifying": false,
"followed_by": true,
"blocking": false,
"blocked_by": false,
"muting": false,
"muting_notifications": false,
"requested": false,
"domain_blocking": false,
"endorsed": false
}
{
"error": "The access token is invalid"
}
422: Unprocessable Entity
post
User notehttps://CounterSocial.example/api/v1/accounts/:id/note
Sets a private note on a user.
Returns: Relationship
OAuth: User + write:accounts
Version history:
3.2.0 - added
Request
Path Parameters
string
The id of the account in the database
Headers
Form Data Parameters
string
The comment to be set on that user. Provide an empty string or leave out this parameter to clear the currently set note.
Successfully updated user note
{
"id": "1",
"following": true,
"showing_reblogs": true,
"notifying": false,
"followed_by": true,
"blocking": false,
"blocked_by": false,
"muting": false,
"muting_notifications": false,
"requested": false,
"domain_blocking": false,
"endorsed": false,
"note": "this is a comment"
}
{
"error": "The access token is invalid"
}
422: Unprocessable Entity
General account actions
get
Check relationships to other accountshttps://CounterSocial.example/api/v1/accounts/relationships
Find out whether a given account is followed, blocked, muted, etc.
Returns: Array of Relationship
OAuth: User token + read:follows
Version history:
0.0.0 - added
Request
Headers
Query Parameters
array
Array of account IDs to check
Sample call with id[]=1&id[]=2
[
{
"id": "1",
"following": true,
"showing_reblogs": true,
"notifying": false,
"followed_by": true,
"blocking": false,
"blocked_by": false,
"muting": false,
"muting_notifications": false,
"requested": false,
"domain_blocking": false,
"endorsed": false
},
{
"id": "2",
"following": false,
"showing_reblogs": false,
"notifying": false,
"followed_by": false,
"blocking": false,
"blocked_by": false,
"muting": false,
"muting_notifications": false,
"requested": false,
"domain_blocking": false,
"endorsed": false
}
]
Invalid or missing Authorization header
{
"error": "The access token is invalid"
}
422: Unprocessable Entity
Token does not have an authorized user
{
"error": "This method requires an authenticated user"
}
get
Search for matching accountshttps://CounterSocial.example/api/v1/accounts/search
Search for matching accounts by username or display name.
Returns: Array of Account
OAuth: User token + read:accounts
Version history:
0.0.0 - added
Request
Headers
Query Parameters
number
Maximum number of results. Defaults to 40.
string
Attempt WebFinger lookup. Defaults to false. Use this when q
is an exact address.
string
Only who the user is following. Defaults to false.
Accounts matching trwnh in username or display name
[
{
"id": "14715",
"username": "trwnh",
"acct": "trwnh",
"display_name": "infinite love ???",
...
},
{
"id": "418714",
"username": "trwnh",
"acct": "[email protected]",
"display_name": "Abdullah Tarawneh",
...
},
{
"id": "419674",
"username": "trwnh",
"acct": "[email protected]",
"display_name": "trwnh",
...
},
...
]
resolve=true, but the domain part of the user@domain address is not a currently live website
{
"error": "Remote data could not be fetched"
}
Last updated September 13, 2021 ?? Improve this page