Skip to main content

Mbin API (1.0.0)

Download OpenAPI specification:Download

Documentation for interacting with content on Mbin through the API

admin/entry

Purges an entry from the instance, deleting it completely. This action is irreversible.

Authorizations:
oauth2
path Parameters
entry_id
required
integer

The entry to purge

Responses

Response samples

Content type
application/json
{}

Changes the magazine of the entry to target

Authorizations:
oauth2
path Parameters
entry_id
required
integer

The entry to move

target_id
required
integer

The magazine to move the entry to

Responses

Response samples

Content type
application/json
{
  • "entryId": 0,
  • "magazine": {
    },
  • "user": {
    },
  • "domain": {
    },
  • "title": "string",
  • "url": "string",
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "tags": [
    ],
  • "badges": [
    ],
  • "numComments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isOc": false,
  • "isAdult": false,
  • "isPinned": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "type": "article",
  • "slug": "string",
  • "apId": "string",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

admin/entry_comment

Purges a comment from the instance, deleting it completely. This action is irreversible.

Authorizations:
oauth2
path Parameters
comment_id
required
integer

The comment to purge

Responses

Response samples

Content type
application/json
{}

admin/post

Purges a post from the instance, deleting it completely. This action is irreversible.

Authorizations:
oauth2
path Parameters
post_id
required
integer

The post to purge

Responses

Response samples

Content type
application/json
{}

admin/post_comment

Purges a post comment from the instance, deleting it completely. This action is irreversible.

Authorizations:
oauth2
path Parameters
comment_id
required
integer

The comment to purge

Responses

Response samples

Content type
application/json
{}

admin/user

Retrieves a list of users currently banned from the instance

Authorizations:
oauth2
query Parameters
p
integer >= 1
Default: 1

Page of users to retrieve

perPage
integer [ 1 .. 100 ]
Default: 48

Number of users per page

group
string
Default: "all"
Enum: "all" "local" "remote"

What group of users to retrieve

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

Bans a user from the instance

Authorizations:
oauth2
path Parameters
user_id
required
integer

The user to ban

Responses

Response samples

Content type
application/json
{
  • "isBanned": true,
  • "avatar": {
    },
  • "cover": {
    },
  • "username": "string",
  • "followersCount": 0,
  • "about": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "apProfileId": "string",
  • "apId": "string",
  • "isBot": true,
  • "isFollowedByUser": true,
  • "isFollowerOfUser": true,
  • "isBlockedByUser": true,
  • "isAdmin": true,
  • "isGlobalModerator": true,
  • "userId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string"
}

Unbans a user from the instance

Authorizations:
oauth2
path Parameters
user_id
required
integer

The user to unban

Responses

Response samples

Content type
application/json
{
  • "isBanned": true,
  • "avatar": {
    },
  • "cover": {
    },
  • "username": "string",
  • "followersCount": 0,
  • "about": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "apProfileId": "string",
  • "apId": "string",
  • "isBot": true,
  • "isFollowedByUser": true,
  • "isFollowerOfUser": true,
  • "isBlockedByUser": true,
  • "isAdmin": true,
  • "isGlobalModerator": true,
  • "userId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string"
}

Marks the user for deletion in 30 days.

Authorizations:
oauth2
path Parameters
user_id
required
integer

The user to delete

Responses

Response samples

Content type
application/json
{
  • "avatar": {
    },
  • "cover": {
    },
  • "username": "string",
  • "followersCount": 0,
  • "about": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "apProfileId": "string",
  • "apId": "string",
  • "isBot": true,
  • "isFollowedByUser": true,
  • "isFollowerOfUser": true,
  • "isBlockedByUser": true,
  • "isAdmin": true,
  • "isGlobalModerator": true,
  • "userId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string"
}

Deletes the user from the instance completely.

This action is irreversable.

Authorizations:
oauth2
path Parameters
user_id
required
integer

The user to purge

Responses

Response samples

Content type
application/json
{}

Forcibly verifies a user on the instance, with no regard for the email confirmation

Authorizations:
oauth2
path Parameters
user_id
required
integer

The user to verify

Responses

Response samples

Content type
application/json
{
  • "avatar": {
    },
  • "cover": {
    },
  • "username": "string",
  • "followersCount": 0,
  • "about": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "apProfileId": "string",
  • "apId": "string",
  • "isBot": true,
  • "isFollowedByUser": true,
  • "isFollowerOfUser": true,
  • "isBlockedByUser": true,
  • "isAdmin": true,
  • "isGlobalModerator": true,
  • "userId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string"
}

admin/instance

get_api_admin_retrieve_settings

Authorizations:
oauth2

Responses

Response samples

Content type
application/json
{
  • "KBIN_DOMAIN": "string",
  • "KBIN_TITLE": "string",
  • "KBIN_META_TITLE": "string",
  • "KBIN_META_KEYWORDS": "string",
  • "KBIN_META_DESCRIPTION": "string",
  • "KBIN_DEFAULT_LANG": "string",
  • "KBIN_CONTACT_EMAIL": "string",
  • "KBIN_SENDER_EMAIL": "string",
  • "MBIN_DEFAULT_THEME": "string",
  • "KBIN_JS_ENABLED": true,
  • "KBIN_FEDERATION_ENABLED": true,
  • "KBIN_REGISTRATIONS_ENABLED": true,
  • "KBIN_BANNED_INSTANCES": [
    ],
  • "KBIN_HEADER_LOGO": true,
  • "KBIN_CAPTCHA_ENABLED": true,
  • "KBIN_MERCURE_ENABLED": true,
  • "KBIN_FEDERATION_PAGE_ENABLED": true,
  • "KBIN_ADMIN_ONLY_OAUTH_CLIENTS": true,
  • "MBIN_SSO_ONLY_MODE": true,
  • "MBIN_PRIVATE_INSTANCE": true,
  • "KBIN_FEDERATED_SEARCH_ONLY_LOGGEDIN": true,
  • "MBIN_SIDEBAR_SECTIONS_LOCAL_ONLY": true,
  • "MBIN_SSO_REGISTRATIONS_ENABLED": true,
  • "MBIN_RESTRICT_MAGAZINE_CREATION": true,
  • "MBIN_SSO_SHOW_FIRST": true,
  • "MAX_IMAGE_BYTES": 0,
  • "MBIN_DOWNVOTES_MODE": "string"
}

put_api_admin_update_settings

Authorizations:
oauth2
Request Body schema: application/json
KBIN_DOMAIN
required
string
KBIN_TITLE
required
string
KBIN_META_TITLE
required
string
KBIN_META_KEYWORDS
required
string
KBIN_META_DESCRIPTION
required
string
KBIN_DEFAULT_LANG
required
string
KBIN_CONTACT_EMAIL
required
string
KBIN_SENDER_EMAIL
required
string
MBIN_DEFAULT_THEME
required
string
KBIN_JS_ENABLED
required
boolean
KBIN_FEDERATION_ENABLED
required
boolean
KBIN_REGISTRATIONS_ENABLED
required
boolean
KBIN_BANNED_INSTANCES
required
Array of strings
KBIN_HEADER_LOGO
required
boolean
KBIN_CAPTCHA_ENABLED
required
boolean
KBIN_MERCURE_ENABLED
required
boolean
KBIN_FEDERATION_PAGE_ENABLED
required
boolean
KBIN_ADMIN_ONLY_OAUTH_CLIENTS
required
boolean
MBIN_SSO_ONLY_MODE
required
boolean
MBIN_PRIVATE_INSTANCE
required
boolean
KBIN_FEDERATED_SEARCH_ONLY_LOGGEDIN
required
boolean
MBIN_SIDEBAR_SECTIONS_LOCAL_ONLY
required
boolean
MBIN_SSO_REGISTRATIONS_ENABLED
required
boolean
MBIN_RESTRICT_MAGAZINE_CREATION
required
boolean
MBIN_SSO_SHOW_FIRST
required
boolean
MAX_IMAGE_BYTES
required
integer
MBIN_DOWNVOTES_MODE
required
string

Responses

Request samples

Content type
application/json
{
  • "KBIN_DOMAIN": "string",
  • "KBIN_TITLE": "string",
  • "KBIN_META_TITLE": "string",
  • "KBIN_META_KEYWORDS": "string",
  • "KBIN_META_DESCRIPTION": "string",
  • "KBIN_DEFAULT_LANG": "string",
  • "KBIN_CONTACT_EMAIL": "string",
  • "KBIN_SENDER_EMAIL": "string",
  • "MBIN_DEFAULT_THEME": "string",
  • "KBIN_JS_ENABLED": true,
  • "KBIN_FEDERATION_ENABLED": true,
  • "KBIN_REGISTRATIONS_ENABLED": true,
  • "KBIN_BANNED_INSTANCES": [
    ],
  • "KBIN_HEADER_LOGO": true,
  • "KBIN_CAPTCHA_ENABLED": true,
  • "KBIN_MERCURE_ENABLED": true,
  • "KBIN_FEDERATION_PAGE_ENABLED": true,
  • "KBIN_ADMIN_ONLY_OAUTH_CLIENTS": true,
  • "MBIN_SSO_ONLY_MODE": true,
  • "MBIN_PRIVATE_INSTANCE": true,
  • "KBIN_FEDERATED_SEARCH_ONLY_LOGGEDIN": true,
  • "MBIN_SIDEBAR_SECTIONS_LOCAL_ONLY": true,
  • "MBIN_SSO_REGISTRATIONS_ENABLED": true,
  • "MBIN_RESTRICT_MAGAZINE_CREATION": true,
  • "MBIN_SSO_SHOW_FIRST": true,
  • "MAX_IMAGE_BYTES": 0,
  • "MBIN_DOWNVOTES_MODE": "string"
}

Response samples

Content type
application/json
{
  • "KBIN_DOMAIN": "string",
  • "KBIN_TITLE": "string",
  • "KBIN_META_TITLE": "string",
  • "KBIN_META_KEYWORDS": "string",
  • "KBIN_META_DESCRIPTION": "string",
  • "KBIN_DEFAULT_LANG": "string",
  • "KBIN_CONTACT_EMAIL": "string",
  • "KBIN_SENDER_EMAIL": "string",
  • "MBIN_DEFAULT_THEME": "string",
  • "KBIN_JS_ENABLED": true,
  • "KBIN_FEDERATION_ENABLED": true,
  • "KBIN_REGISTRATIONS_ENABLED": true,
  • "KBIN_BANNED_INSTANCES": [
    ],
  • "KBIN_HEADER_LOGO": true,
  • "KBIN_CAPTCHA_ENABLED": true,
  • "KBIN_MERCURE_ENABLED": true,
  • "KBIN_FEDERATION_PAGE_ENABLED": true,
  • "KBIN_ADMIN_ONLY_OAUTH_CLIENTS": true,
  • "MBIN_SSO_ONLY_MODE": true,
  • "MBIN_PRIVATE_INSTANCE": true,
  • "KBIN_FEDERATED_SEARCH_ONLY_LOGGEDIN": true,
  • "MBIN_SIDEBAR_SECTIONS_LOCAL_ONLY": true,
  • "MBIN_SSO_REGISTRATIONS_ENABLED": true,
  • "MBIN_RESTRICT_MAGAZINE_CREATION": true,
  • "MBIN_SSO_SHOW_FIRST": true,
  • "MAX_IMAGE_BYTES": 0,
  • "MBIN_DOWNVOTES_MODE": "string"
}

put_api_admin_update_pages

Authorizations:
oauth2
path Parameters
page
required
string
Enum: "about" "contact" "faq" "privacyPolicy" "terms"
Request Body schema: application/json
body
required
string

Responses

Request samples

Content type
application/json
{
  • "body": "string"
}

Response samples

Content type
application/json
{
  • "about": "string",
  • "contact": "string",
  • "faq": "string",
  • "privacyPolicy": "string",
  • "terms": "string",
  • "downvotesMode": "disabled"
}

admin/oauth2

Retrieve oauth2 client access stats in a particular interval.

Authorizations:
oauth2
query Parameters
start
string <date>

The start date of the window to retrieve views in. If not provided defaults to 1 resolution ago

end
string <date>

The end date of the window to retrieve views in. If not provided defaults to today

resolution
required
string
Enum: "all" "year" "month" "day" "hour" "second" "milliseconds"

The size of chunks to aggregate views in

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

get_api_admin_retrieve_client

Authorizations:
oauth2
path Parameters
client_identifier
required
string

The OAuth2 client to retrieve

Responses

Response samples

Content type
application/json
{
  • "identifier": "string",
  • "name": "string",
  • "contactEmail": "string",
  • "description": "string",
  • "user": {
    },
  • "active": true,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "redirectUris": [],
  • "grants": [
    ],
  • "scopes": [
    ]
}

get_api_admin_retrieve_client_collection

Authorizations:
oauth2
query Parameters
p
integer >= 1
Default: 1

Page of clients to retrieve

perPage
integer [ 1 .. 100 ]
Default: 15

Number of clients per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

admin/federation

put_api_admin_update_defederated_instances

Authorizations:
oauth2
Request Body schema: application/json
instances
required
Array of strings <url> [ items <url > ]

Responses

Request samples

Content type
application/json
{
  • "instances": [
    ]
}

Response samples

Content type
application/json
{
  • "instances": [
    ]
}

admin/magazine

delete_api_admin_purge_magazine

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The magazine to purge

Responses

Response samples

Content type
application/json
{}

domain

get_api_domain_entries_retrieve

path Parameters
domain_id
required
integer

The domain to retrieve entries from

query Parameters
sort
any
Default: "hot"
Enum: "active" "hot" "newest" "oldest" "top" "commented"

The sorting method to use during entry fetch

time
any
Default: "∞"
Enum: "3h" "6h" "12h" "1d" "1w" "1m" "1y" "∞" "all"

The maximum age of retrieved entries

p
integer >= 1
Default: 1

Page of entries to retrieve

perPage
integer [ 1 .. 100 ]
Default: 25

Number of entries to retrieve per page

lang[]
Array of strings[ items [ 2 .. 3 ] characters ]

Language(s) of entries to return

usePreferredLangs
boolean
Default: false

Filter by a user's preferred languages? (Requires authentication and takes precedence over lang[])

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_domain_entry_comments_retrieve

path Parameters
domain_id
required
integer

The domain to retrieve comments from

query Parameters
sort
string
Default: "hot"
Enum: "newest" "top" "hot" "newest" "oldest"

The sorting method to use during comment fetch

time
string
Default: "∞"
Enum: "3h" "6h" "12h" "1d" "1w" "1m" "1y" "∞" "all"

The maximum age of retrieved entries

p
integer >= 1
Default: 1

Page of comments to retrieve

perPage
integer [ 1 .. 100 ]
Default: 25

Number of comments to retrieve per page

d
integer [ 0 .. 25 ]
Default: 10

Depth of comment children to retrieve

lang[]
Array of strings[ items [ 2 .. 3 ] characters ]

Language(s) of entries to return

usePreferredLangs
boolean
Default: false

Filter by a user's preferred languages? (Requires authentication and takes precedence over lang[])

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_domains_retrieve

query Parameters
p
integer >= 1
Default: 1

Page of domains to retrieve

perPage
integer [ 1 .. 100 ]
Default: 100

Number of domains per page

q
string

Domain search term

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_domain_retrieve

path Parameters
domain_id
required
integer

The domain to retrieve

Responses

Response samples

Content type
application/json
{
  • "name": "string",
  • "entryCount": 0,
  • "subscriptionsCount": 0,
  • "isUserSubscribed": true,
  • "isBlockedByUser": true,
  • "domainId": 0
}

get_api_domains_retrieve_subscribed

Authorizations:
oauth2
query Parameters
p
integer >= 1
Default: 1

Page of domains to retrieve

perPage
integer [ 1 .. 100 ]
Default: 100

Number of domains per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_domains_retrieve_blocked

Authorizations:
oauth2
query Parameters
p
integer >= 1
Default: 1

Page of domains to retrieve

perPage
integer [ 1 .. 100 ]
Default: 100

Number of domains per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

put_api_domain_block

Authorizations:
oauth2
path Parameters
domain_id
required
integer

The domain to block

Responses

Response samples

Content type
application/json
{
  • "name": "string",
  • "entryCount": 0,
  • "subscriptionsCount": 0,
  • "isUserSubscribed": true,
  • "isBlockedByUser": true,
  • "domainId": 0
}

put_api_domain_unblock

Authorizations:
oauth2
path Parameters
domain_id
required
integer

The domain to unblock

Responses

Response samples

Content type
application/json
{
  • "name": "string",
  • "entryCount": 0,
  • "subscriptionsCount": 0,
  • "isUserSubscribed": true,
  • "isBlockedByUser": true,
  • "domainId": 0
}

put_api_domain_subscribe

Authorizations:
oauth2
path Parameters
domain_id
required
integer

The domain to subscribe to

Responses

Response samples

Content type
application/json
{
  • "name": "string",
  • "entryCount": 0,
  • "subscriptionsCount": 0,
  • "isUserSubscribed": true,
  • "isBlockedByUser": true,
  • "domainId": 0
}

put_api_domain_unsubscribe

Authorizations:
oauth2
path Parameters
domain_id
required
integer

The domain to unsubscribe from

Responses

Response samples

Content type
application/json
{
  • "name": "string",
  • "entryCount": 0,
  • "subscriptionsCount": 0,
  • "isUserSubscribed": true,
  • "isBlockedByUser": true,
  • "domainId": 0
}

entry

get_api_entry_retrieve

path Parameters
entry_id
required
integer

The entry to retrieve

Responses

Response samples

Content type
application/json
{
  • "entryId": 0,
  • "magazine": {
    },
  • "user": {
    },
  • "domain": {
    },
  • "title": "string",
  • "url": "string",
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "tags": [
    ],
  • "badges": [
    ],
  • "numComments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isOc": false,
  • "isAdult": false,
  • "isPinned": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "type": "article",
  • "slug": "string",
  • "apId": "string",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_entry_update

Authorizations:
oauth2
path Parameters
entry_id
required
integer

The id of the entry to update

Request Body schema: application/json
title
string or null
tags
required
Array of strings
isOc
boolean
Default: false
body
string or null
lang
string or null [ 2 .. 3 ] characters
isAdult
boolean
Default: false

Responses

Request samples

Content type
application/json
{
  • "title": "Posted from the API!",
  • "tags": [
    ],
  • "isOc": false,
  • "body": "We can post cat pics from the API now! What are you going to do with this power?",
  • "lang": "en",
  • "isAdult": false
}

Response samples

Content type
application/json
{
  • "entryId": 0,
  • "magazine": {
    },
  • "user": {
    },
  • "domain": {
    },
  • "title": "string",
  • "url": "string",
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "tags": [
    ],
  • "badges": [
    ],
  • "numComments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isOc": false,
  • "isAdult": false,
  • "isPinned": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "type": "article",
  • "slug": "string",
  • "apId": "string",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

delete_api_entry_delete

Authorizations:
oauth2
path Parameters
entry_id
required
integer

The entry to delete

Responses

Response samples

Content type
application/json
{}

post_api_entry_report

Authorizations:
oauth2
path Parameters
entry_id
required
integer

The entry to report

Request Body schema: application/json
reason
string or null

Responses

Request samples

Content type
application/json
{
  • "reason": "string"
}

Response samples

Content type
application/json
{}

put_api_entry_vote

Authorizations:
oauth2
path Parameters
entry_id
required
integer

The entry to vote upon

choice
required
integer
Enum: -1 0 1

The user's voting choice. 0 clears the user's vote.

Responses

Response samples

Content type
application/json
{
  • "entryId": 0,
  • "magazine": {
    },
  • "user": {
    },
  • "domain": {
    },
  • "title": "string",
  • "url": "string",
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "tags": [
    ],
  • "badges": [
    ],
  • "numComments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isOc": false,
  • "isAdult": false,
  • "isPinned": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "type": "article",
  • "slug": "string",
  • "apId": "string",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_entry_favourite

Authorizations:
oauth2
path Parameters
entry_id
required
integer

The entry to favourite

Responses

Response samples

Content type
application/json
{
  • "entryId": 0,
  • "magazine": {
    },
  • "user": {
    },
  • "domain": {
    },
  • "title": "string",
  • "url": "string",
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "tags": [
    ],
  • "badges": [
    ],
  • "numComments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isOc": false,
  • "isAdult": false,
  • "isPinned": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "type": "article",
  • "slug": "string",
  • "apId": "string",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

get_api_entries_subscribed

Authorizations:
oauth2
query Parameters
sort
any
Default: "hot"
Enum: "active" "hot" "newest" "oldest" "top" "commented"

The sorting method to use during entry fetch

time
any
Default: "∞"
Enum: "3h" "6h" "12h" "1d" "1w" "1m" "1y" "∞" "all"

The maximum age of retrieved entries

p
integer >= 1
Default: 1

Page of entries to retrieve

perPage
integer [ 1 .. 100 ]
Default: 25

Number of entries to retrieve per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_entries_moderated

Authorizations:
oauth2
query Parameters
sort
any
Default: "newest"
Enum: "active" "hot" "newest" "oldest" "top" "commented"

The sorting method to use during entry fetch

time
any
Default: "∞"
Enum: "3h" "6h" "12h" "1d" "1w" "1m" "1y" "∞" "all"

The maximum age of retrieved entries

p
integer >= 1
Default: 1

Page of entries to retrieve

perPage
integer [ 1 .. 100 ]
Default: 25

Number of entries to retrieve per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_entries_favourited

Authorizations:
oauth2
query Parameters
sort
any
Default: "top"
Enum: "active" "hot" "newest" "oldest" "top" "commented"

The sorting method to use during entry fetch

time
any
Default: "∞"
Enum: "3h" "6h" "12h" "1d" "1w" "1m" "1y" "∞" "all"

The maximum age of retrieved entries

p
integer >= 1
Default: 1

Page of entries to retrieve

perPage
integer [ 1 .. 100 ]
Default: 25

Number of entries to retrieve per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_entries_collection

query Parameters
sort
any
Default: "hot"
Enum: "active" "hot" "newest" "oldest" "top" "commented"

The sorting method to use during entry fetch

time
any
Default: "∞"
Enum: "3h" "6h" "12h" "1d" "1w" "1m" "1y" "∞" "all"

The maximum age of retrieved entries

p
integer >= 1
Default: 1

Page of entries to retrieve

perPage
integer [ 1 .. 100 ]
Default: 25

Number of entries to retrieve per page

lang[]
Array of strings

Language(s) of entries to return

usePreferredLangs
boolean
Default: false

Filter by a user's preferred languages? (Requires authentication and takes precedence over lang[])

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_entry_comments

path Parameters
entry_id
required
integer

The entry to retrieve comments from

query Parameters
sortBy
string
Default: "hot"
Enum: "newest" "top" "hot" "newest" "oldest"

The order to retrieve comments by

time
string
Default: "∞"
Enum: "3h" "6h" "12h" "1d" "1w" "1m" "1y" "∞" "all"

The maximum age of retrieved comments

p
integer
Default: 1

The page of comments to retrieve

perPage
integer [ 1 .. 100 ]
Default: 15

The number of top level comments per page

d
integer [ 0 .. 25 ]
Default: 10

The depth of comment trees retrieved

lang[]
Array of strings

Language(s) of comments to return

usePreferredLangs
boolean
Default: false

Filter by a user's preferred languages? (Requires authentication and takes precedence over lang[])

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

entry_comment

post_api_entry_comment_new

Authorizations:
oauth2
path Parameters
entry_id
required
integer

Entry to which the new comment will belong

Request Body schema: application/json
body
string or null
lang
string or null [ 2 .. 3 ] characters
isAdult
boolean
Default: false

Responses

Request samples

Content type
application/json
{
  • "body": "We can post cat pics from the API now! What are you going to do with this power?",
  • "lang": "en",
  • "isAdult": false
}

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "entryId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isAdult": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "apId": "string",
  • "children": [
    ],
  • "childCount": 0,
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

post_api_entry_comment_new_image

Authorizations:
oauth2
path Parameters
entry_id
required
integer

Entry to which the new comment will belong

Request Body schema: multipart/form-data
body
string or null
lang
string or null [ 2 .. 3 ] characters
isAdult
boolean
Default: false
alt
string or null
uploadImage
required
string <binary>

Responses

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "entryId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isAdult": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "apId": "string",
  • "children": [
    ],
  • "childCount": 0,
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

post_api_entry_comment_reply

Authorizations:
oauth2
path Parameters
entry_id
required
integer

Entry to which the new comment will belong

comment_id
required
string
Request Body schema: application/json
body
string or null
lang
string or null [ 2 .. 3 ] characters
isAdult
boolean
Default: false

Responses

Request samples

Content type
application/json
{
  • "body": "We can post cat pics from the API now! What are you going to do with this power?",
  • "lang": "en",
  • "isAdult": false
}

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "entryId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isAdult": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "apId": "string",
  • "children": [
    ],
  • "childCount": 0,
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

post_api_entry_comment_reply_image

Authorizations:
oauth2
path Parameters
entry_id
required
integer

Entry to which the new comment will belong

comment_id
required
string
Request Body schema: multipart/form-data
body
string or null
lang
string or null [ 2 .. 3 ] characters
isAdult
boolean
Default: false
alt
string or null
uploadImage
required
string <binary>

Responses

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "entryId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isAdult": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "apId": "string",
  • "children": [
    ],
  • "childCount": 0,
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

get_api_comment_retrieve

path Parameters
comment_id
required
integer

The comment to retrieve

query Parameters
d
integer [ 0 .. 25 ]
Default: 10

Comment tree depth to retrieve

Responses

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "entryId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isAdult": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "apId": "string",
  • "children": [
    ],
  • "childCount": 0,
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_comment_update

Authorizations:
oauth2
path Parameters
comment_id
required
integer

The id of the comment to update

query Parameters
d
integer
Default: -1

Comment tree depth to retrieve (-1 for unlimited depth)

Request Body schema: application/json
body
string or null
lang
string or null [ 2 .. 3 ] characters
isAdult
boolean
Default: false

Responses

Request samples

Content type
application/json
{
  • "body": "We can post cat pics from the API now! What are you going to do with this power?",
  • "lang": "en",
  • "isAdult": false
}

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "entryId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isAdult": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "apId": "string",
  • "children": [
    ],
  • "childCount": 0,
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

delete_api_comment_delete

Authorizations:
oauth2
path Parameters
comment_id
required
integer

The comment to delete

Responses

Response samples

Content type
application/json
{}

post_api_comment_report

Authorizations:
oauth2
path Parameters
comment_id
required
integer

The comment to report

Request Body schema: application/json
reason
string or null

Responses

Request samples

Content type
application/json
{
  • "reason": "string"
}

Response samples

Content type
application/json
{}

put_api_comment_vote

Authorizations:
oauth2
path Parameters
comment_id
required
integer

The comment to vote upon

choice
required
integer
Enum: -1 0 1

The user's voting choice. 0 clears the user's vote.

Responses

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "entryId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isAdult": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "apId": "string",
  • "children": [
    ],
  • "childCount": 0,
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_comment_favourite

Authorizations:
oauth2
path Parameters
comment_id
required
integer

The comment to favourite

query Parameters
d
integer
Default: -1

Comment tree depth to retrieve (-1 for unlimited depth)

Responses

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "entryId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isAdult": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "apId": "string",
  • "children": [
    ],
  • "childCount": 0,
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

instance

Get de-federated instances.

Responses

Response samples

Content type
application/json
{
  • "instances": [
    ]
}

Retrieve information about the instance written by the admin.

Responses

Response samples

Content type
application/json
{
  • "about": "string",
  • "contact": "string",
  • "faq": "string",
  • "privacyPolicy": "string",
  • "terms": "string",
  • "downvotesMode": "disabled"
}

Retrieve information about moderation actions taken across the instance.

query Parameters
p
integer >= 1
Default: 1

Page of moderation log to retrieve

perPage
integer [ 1 .. 100 ]
Default: 25

Number of moderation log items to retrieve per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

Get de-federated instances.

Responses

Response samples

Content type
application/json
{
  • "instances": [
    ]
}

Get federated instances.

Responses

Response samples

Content type
application/json
{
  • "instances": [
    ]
}

Get dead instances.

Responses

Response samples

Content type
application/json
{
  • "instances": [
    ]
}

Retrieve instance information (like the software name and version plus general website info).

Responses

Response samples

Content type
application/json
{
  • "softwareName": "mbin",
  • "softwareVersion": "2.0.0",
  • "softwareRepository": "https://github.com/MbinOrg/mbin",
  • "websiteDomain": "https://mbin.social",
  • "websiteContactEmail": "contact@mbin.social",
  • "websiteTitle": "Mbin",
  • "websiteOpenRegistrations": true,
  • "websiteFederationEnabled": true,
  • "websiteDefaultLang": "en"
}

instance/stats

Retrieve the votes of the instance over time.

query Parameters
start
string <date>

The start date of the window to retrieve votes in. If not provided defaults to 1 (resolution) ago

end
string <date>

The end date of the window to retrieve votes in. If not provided defaults to today

resolution
required
string
Enum: "all" "year" "month" "day" "hour"

The size of chunks to aggregate votes in

local
boolean
Default: false

Exclude federated votes?

Responses

Response samples

Content type
application/json
{
  • "entry": [
    ],
  • "entry_comment": [
    ],
  • "post": [
    ],
  • "post_comment": [
    ]
}

Retrieve the content stats of the instance over time.

query Parameters
start
string <date>

The start date of the window to retrieve submissions in. If not provided defaults to 1 (resolution) ago

end
string <date>

The end date of the window to retrieve submissions in. If not provided defaults to today

resolution
required
string
Enum: "all" "year" "month" "day" "hour"

The size of chunks to aggregate content submissions in

local
boolean
Default: false

Exclude federated content?

Responses

Response samples

Content type
application/json
{
  • "entry": [
    ],
  • "entry_comment": [
    ],
  • "post": [
    ],
  • "post_comment": [
    ]
}

magazine

post_api_magazine_entry_create_article

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The magazine to create the entry in

Request Body schema: application/json
title
string or null
tags
required
Array of strings
isOc
boolean
Default: false
body
string or null
lang
string or null [ 2 .. 3 ] characters
isAdult
boolean
Default: false

Responses

Request samples

Content type
application/json
{
  • "title": "Posted from the API!",
  • "tags": [
    ],
  • "isOc": false,
  • "body": "We can post cat pics from the API now! What are you going to do with this power?",
  • "lang": "en",
  • "isAdult": false
}

Response samples

Content type
application/json
{
  • "entryId": 0,
  • "magazine": {
    },
  • "user": {
    },
  • "domain": {
    },
  • "title": "string",
  • "url": "string",
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "tags": [
    ],
  • "badges": [
    ],
  • "numComments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isOc": false,
  • "isAdult": false,
  • "isPinned": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "type": "article",
  • "slug": "string",
  • "apId": "string",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

post_api_magazine_entry_create_link

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The magazine to create the entry in

Request Body schema: application/json
title
string or null
url
string or null
tags
required
Array of strings
isOc
boolean
Default: false
body
string or null
lang
string or null [ 2 .. 3 ] characters
isAdult
boolean
Default: false

Responses

Request samples

Content type
application/json
{
  • "title": "Posted from the API!",
  • "url": "string",
  • "tags": [
    ],
  • "isOc": false,
  • "body": "We can post cat pics from the API now! What are you going to do with this power?",
  • "lang": "en",
  • "isAdult": false
}

Response samples

Content type
application/json
{
  • "entryId": 0,
  • "magazine": {
    },
  • "user": {
    },
  • "domain": {
    },
  • "title": "string",
  • "url": "string",
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "tags": [
    ],
  • "badges": [
    ],
  • "numComments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isOc": false,
  • "isAdult": false,
  • "isPinned": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "type": "article",
  • "slug": "string",
  • "apId": "string",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

post_api_magazine_entry_create_image

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The magazine to create the entry in

Request Body schema: multipart/form-data
title
string or null
tags
required
Array of strings
isOc
boolean
Default: false
lang
string or null [ 2 .. 3 ] characters
isAdult
boolean
Default: false
alt
string or null
uploadImage
required
string <binary>

Responses

Response samples

Content type
application/json
{
  • "entryId": 0,
  • "magazine": {
    },
  • "user": {
    },
  • "domain": {
    },
  • "title": "string",
  • "url": "string",
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "tags": [
    ],
  • "badges": [
    ],
  • "numComments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isOc": false,
  • "isAdult": false,
  • "isPinned": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "type": "article",
  • "slug": "string",
  • "apId": "string",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

get_api_magazine_posts_retrieve

path Parameters
magazine_id
required
integer

Magazine to retrieve posts from

query Parameters
p
integer >= 1
Default: 1

Page of posts to retrieve

perPage
integer [ 1 .. 100 ]
Default: 15

Number of posts to retrieve per page

sort
string
Default: "hot"
Enum: "active" "hot" "newest" "oldest" "top" "commented"

Sort method to use when retrieving posts

time
string
Default: "∞"
Enum: "3h" "6h" "12h" "1d" "1w" "1m" "1y" "∞" "all"

Max age of retrieved posts

lang[]
Array of strings[ items [ 2 .. 3 ] characters ]

Language(s) of posts to return

usePreferredLangs
boolean
Default: false

Filter by a user's preferred languages? (Requires authentication and takes precedence over lang[])

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

post_api_magazine_posts_create

Authorizations:
oauth2
path Parameters
magazine_id
required
string
Request Body schema: application/json
body
string or null
lang
string or null [ 2 .. 3 ] characters
isAdult
boolean
Default: false

Responses

Request samples

Content type
application/json
{
  • "body": "We can post cat pics from the API now! What are you going to do with this power?",
  • "lang": "en",
  • "isAdult": false
}

Response samples

Content type
application/json
{
  • "postId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "isPinned": false,
  • "slug": "string",
  • "comments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "tags": [
    ],
  • "mentions": [
    ],
  • "apId": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

post_api_magazine_posts_create_image

Authorizations:
oauth2
path Parameters
magazine_id
required
string
Request Body schema: multipart/form-data
body
string or null
lang
string or null [ 2 .. 3 ] characters
isAdult
boolean
Default: false
alt
string or null
uploadImage
required
string <binary>

Responses

Response samples

Content type
application/json
{
  • "postId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "isPinned": false,
  • "slug": "string",
  • "comments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "tags": [
    ],
  • "mentions": [
    ],
  • "apId": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

get_api_magazine_entries_retrieve

path Parameters
magazine_id
required
integer

The magazine to retrieve entries from

query Parameters
sort
any
Default: "hot"
Enum: "active" "hot" "newest" "oldest" "top" "commented"

The sorting method to use during entry fetch

time
any
Default: "∞"
Enum: "3h" "6h" "12h" "1d" "1w" "1m" "1y" "∞" "all"

The maximum age of retrieved entries

p
integer >= 1
Default: 1

Page of entries to retrieve

perPage
integer [ 1 .. 100 ]
Default: 25

Number of entries to retrieve per page

lang[]
Array of strings[ items [ 2 .. 3 ] characters ]

Language(s) of entries to return

usePreferredLangs
boolean
Default: false

Filter by a user's preferred languages? (Requires authentication and takes precedence over lang[])

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_magazines_retrieve

query Parameters
p
integer >= 1
Default: 1

Page of magazines to retrieve

perPage
integer [ 1 .. 100 ]
Default: 48

Number of magazines per page

q
string

Magazine search term

sort
string
Default: "hot"
Enum: "active" "hot" "newest"

Sort method to use when retrieving magazines

federation
string
Default: "all"
Enum: "all" "federated" "local"

What type of federated magazines to retrieve

hide_adult
string
Default: "hide"
Enum: "hide" "show" "only"

Options for retrieving adult magazines

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_magazines_retrieve_subscribed

Authorizations:
oauth2
query Parameters
p
integer >= 1
Default: 1

Page of magazines to retrieve

perPage
integer [ 1 .. 100 ]
Default: 48

Number of magazines per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_magazines_retrieve_moderated

Authorizations:
oauth2
query Parameters
p
integer >= 1
Default: 1

Page of magazines to retrieve

perPage
integer [ 1 .. 100 ]
Default: 48

Number of magazines per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_magazines_retrieve_blocked

Authorizations:
oauth2
query Parameters
p
integer >= 1
Default: 1

Page of magazines to retrieve

perPage
integer [ 1 .. 100 ]
Default: 48

Number of magazines per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_magazine_retrieve

path Parameters
magazine_id
required
integer

The magazine to retrieve

Responses

Response samples

Content type
application/json
{
  • "owner": {
    },
  • "icon": {
    },
  • "name": "string",
  • "title": "string",
  • "description": "string",
  • "rules": "string",
  • "subscriptionsCount": 0,
  • "entryCount": 0,
  • "entryCommentCount": 0,
  • "postCount": 0,
  • "postCommentCount": 0,
  • "isAdult": false,
  • "isUserSubscribed": true,
  • "isBlockedByUser": true,
  • "tags": [
    ],
  • "badges": [
    ],
  • "moderators": [
    ],
  • "apId": "string",
  • "apProfileId": "string",
  • "magazineId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string",
  • "isPostingRestrictedToMods": false
}

get_api_magazine_retrieve_by_name

path Parameters
magazine_name
required
string

The magazine to retrieve

Responses

Response samples

Content type
application/json
{
  • "owner": {
    },
  • "icon": {
    },
  • "name": "string",
  • "title": "string",
  • "description": "string",
  • "rules": "string",
  • "subscriptionsCount": 0,
  • "entryCount": 0,
  • "entryCommentCount": 0,
  • "postCount": 0,
  • "postCommentCount": 0,
  • "isAdult": false,
  • "isUserSubscribed": true,
  • "isBlockedByUser": true,
  • "tags": [
    ],
  • "badges": [
    ],
  • "moderators": [
    ],
  • "apId": "string",
  • "apProfileId": "string",
  • "magazineId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string",
  • "isPostingRestrictedToMods": false
}

put_api_magazine_block

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The magazine to block

Responses

Response samples

Content type
application/json
{
  • "owner": {
    },
  • "icon": {
    },
  • "name": "string",
  • "title": "string",
  • "description": "string",
  • "rules": "string",
  • "subscriptionsCount": 0,
  • "entryCount": 0,
  • "entryCommentCount": 0,
  • "postCount": 0,
  • "postCommentCount": 0,
  • "isAdult": false,
  • "isUserSubscribed": true,
  • "isBlockedByUser": true,
  • "tags": [
    ],
  • "badges": [
    ],
  • "moderators": [
    ],
  • "apId": "string",
  • "apProfileId": "string",
  • "magazineId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string",
  • "isPostingRestrictedToMods": false
}

put_api_magazine_unblock

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The magazine to unblock

Responses

Response samples

Content type
application/json
{
  • "owner": {
    },
  • "icon": {
    },
  • "name": "string",
  • "title": "string",
  • "description": "string",
  • "rules": "string",
  • "subscriptionsCount": 0,
  • "entryCount": 0,
  • "entryCommentCount": 0,
  • "postCount": 0,
  • "postCommentCount": 0,
  • "isAdult": false,
  • "isUserSubscribed": true,
  • "isBlockedByUser": true,
  • "tags": [
    ],
  • "badges": [
    ],
  • "moderators": [
    ],
  • "apId": "string",
  • "apProfileId": "string",
  • "magazineId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string",
  • "isPostingRestrictedToMods": false
}

put_api_magazine_subscribe

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The magazine to subscribe to

Responses

Response samples

Content type
application/json
{
  • "owner": {
    },
  • "icon": {
    },
  • "name": "string",
  • "title": "string",
  • "description": "string",
  • "rules": "string",
  • "subscriptionsCount": 0,
  • "entryCount": 0,
  • "entryCommentCount": 0,
  • "postCount": 0,
  • "postCommentCount": 0,
  • "isAdult": false,
  • "isUserSubscribed": true,
  • "isBlockedByUser": true,
  • "tags": [
    ],
  • "badges": [
    ],
  • "moderators": [
    ],
  • "apId": "string",
  • "apProfileId": "string",
  • "magazineId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string",
  • "isPostingRestrictedToMods": false
}

put_api_magazine_unsubscribe

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The magazine to unsubscribe from

Responses

Response samples

Content type
application/json
{
  • "owner": {
    },
  • "icon": {
    },
  • "name": "string",
  • "title": "string",
  • "description": "string",
  • "rules": "string",
  • "subscriptionsCount": 0,
  • "entryCount": 0,
  • "entryCommentCount": 0,
  • "postCount": 0,
  • "postCommentCount": 0,
  • "isAdult": false,
  • "isUserSubscribed": true,
  • "isBlockedByUser": true,
  • "tags": [
    ],
  • "badges": [
    ],
  • "moderators": [
    ],
  • "apId": "string",
  • "apProfileId": "string",
  • "magazineId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string",
  • "isPostingRestrictedToMods": false
}

Retrieve the magazine's theme.

path Parameters
magazine_id
required
integer

The id of the magazine to retrieve the theme from

Responses

Response samples

Content type
application/json
{
  • "magazine": {
    },
  • "customCss": "string",
  • "icon": {
    }
}

Retrieve information about moderation actions taken in the magazine.

path Parameters
magazine_id
required
integer

Magazine to get mod log from

query Parameters
p
integer >= 1
Default: 1

Page of moderation log to retrieve

perPage
integer [ 1 .. 100 ]
Default: 25

Number of moderation log items to retrieve per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

moderation/magazine/owner

post_api_magazine_create

Authorizations:
oauth2
Request Body schema: application/json
name
string or null
title
string or null
description
string or null
rules
string or null
isAdult
boolean or null
isPostingRestrictedToMods
boolean or null

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "title": "string",
  • "description": "string",
  • "rules": "string",
  • "isAdult": true,
  • "isPostingRestrictedToMods": true
}

Response samples

Content type
application/json
{
  • "owner": {
    },
  • "icon": {
    },
  • "name": "string",
  • "title": "string",
  • "description": "string",
  • "rules": "string",
  • "subscriptionsCount": 0,
  • "entryCount": 0,
  • "entryCommentCount": 0,
  • "postCount": 0,
  • "postCommentCount": 0,
  • "isAdult": false,
  • "isUserSubscribed": true,
  • "isBlockedByUser": true,
  • "tags": [
    ],
  • "badges": [
    ],
  • "moderators": [
    ],
  • "apId": "string",
  • "apProfileId": "string",
  • "magazineId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string",
  • "isPostingRestrictedToMods": false
}

put_api_magazine_update

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The id of the magazine to update

Request Body schema: application/json
iconId
integer or null
title
string or null
description
string or null
rules
string or null
isAdult
boolean or null
isPostingRestrictedToMods
boolean or null

Responses

Request samples

Content type
application/json
{
  • "iconId": 0,
  • "title": "string",
  • "description": "string",
  • "rules": "string",
  • "isAdult": true,
  • "isPostingRestrictedToMods": true
}

Response samples

Content type
application/json
{
  • "owner": {
    },
  • "icon": {
    },
  • "name": "string",
  • "title": "string",
  • "description": "string",
  • "rules": "string",
  • "subscriptionsCount": 0,
  • "entryCount": 0,
  • "entryCommentCount": 0,
  • "postCount": 0,
  • "postCommentCount": 0,
  • "isAdult": false,
  • "isUserSubscribed": true,
  • "isBlockedByUser": true,
  • "tags": [
    ],
  • "badges": [
    ],
  • "moderators": [
    ],
  • "apId": "string",
  • "apProfileId": "string",
  • "magazineId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string",
  • "isPostingRestrictedToMods": false
}

delete_api_magazine_delete

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The magazine to delete

Responses

Response samples

Content type
application/json
{}

Add a user as a moderator of the magazine.

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The id of the magazine to update

user_id
required
integer

The id of the user to add as moderator

Responses

Response samples

Content type
application/json
{
  • "owner": {
    },
  • "icon": {
    },
  • "name": "string",
  • "title": "string",
  • "description": "string",
  • "rules": "string",
  • "subscriptionsCount": 0,
  • "entryCount": 0,
  • "entryCommentCount": 0,
  • "postCount": 0,
  • "postCommentCount": 0,
  • "isAdult": false,
  • "isUserSubscribed": true,
  • "isBlockedByUser": true,
  • "tags": [
    ],
  • "badges": [
    ],
  • "moderators": [
    ],
  • "apId": "string",
  • "apProfileId": "string",
  • "magazineId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string",
  • "isPostingRestrictedToMods": false
}

Remove a moderator from the magazine.

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The id of the magazine to update

user_id
required
integer

The id of the user to remove as moderator

Responses

Response samples

Content type
application/json
{
  • "owner": {
    },
  • "icon": {
    },
  • "name": "string",
  • "title": "string",
  • "description": "string",
  • "rules": "string",
  • "subscriptionsCount": 0,
  • "entryCount": 0,
  • "entryCommentCount": 0,
  • "postCount": 0,
  • "postCommentCount": 0,
  • "isAdult": false,
  • "isUserSubscribed": true,
  • "isBlockedByUser": true,
  • "tags": [
    ],
  • "badges": [
    ],
  • "moderators": [
    ],
  • "apId": "string",
  • "apProfileId": "string",
  • "magazineId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string",
  • "isPostingRestrictedToMods": false
}

Add a badge to the magazine.

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The id of the magazine to update

Request Body schema: application/json
name
required
string [ 1 .. 20 ] characters

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "owner": {
    },
  • "icon": {
    },
  • "name": "string",
  • "title": "string",
  • "description": "string",
  • "rules": "string",
  • "subscriptionsCount": 0,
  • "entryCount": 0,
  • "entryCommentCount": 0,
  • "postCount": 0,
  • "postCommentCount": 0,
  • "isAdult": false,
  • "isUserSubscribed": true,
  • "isBlockedByUser": true,
  • "tags": [
    ],
  • "badges": [
    ],
  • "moderators": [
    ],
  • "apId": "string",
  • "apProfileId": "string",
  • "magazineId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string",
  • "isPostingRestrictedToMods": false
}

Remove a badge from the magazine.

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The id of the magazine to update

badge_id
required
integer

The id of the badge to delete

Responses

Response samples

Content type
application/json
{
  • "owner": {
    },
  • "icon": {
    },
  • "name": "string",
  • "title": "string",
  • "description": "string",
  • "rules": "string",
  • "subscriptionsCount": 0,
  • "entryCount": 0,
  • "entryCommentCount": 0,
  • "postCount": 0,
  • "postCommentCount": 0,
  • "isAdult": false,
  • "isUserSubscribed": true,
  • "isBlockedByUser": true,
  • "tags": [
    ],
  • "badges": [
    ],
  • "moderators": [
    ],
  • "apId": "string",
  • "apProfileId": "string",
  • "magazineId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string",
  • "isPostingRestrictedToMods": false
}

Add a tag to the magazine.

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The id of the magazine to update

tag
required
string

The tag to add

Responses

Response samples

Content type
application/json
{
  • "owner": {
    },
  • "icon": {
    },
  • "name": "string",
  • "title": "string",
  • "description": "string",
  • "rules": "string",
  • "subscriptionsCount": 0,
  • "entryCount": 0,
  • "entryCommentCount": 0,
  • "postCount": 0,
  • "postCommentCount": 0,
  • "isAdult": false,
  • "isUserSubscribed": true,
  • "isBlockedByUser": true,
  • "tags": [
    ],
  • "badges": [
    ],
  • "moderators": [
    ],
  • "apId": "string",
  • "apProfileId": "string",
  • "magazineId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string",
  • "isPostingRestrictedToMods": false
}

Remove a tag from the magazine.

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The id of the magazine to update

tag
required
string

The tag to remove

Responses

Response samples

Content type
application/json
{
  • "owner": {
    },
  • "icon": {
    },
  • "name": "string",
  • "title": "string",
  • "description": "string",
  • "rules": "string",
  • "subscriptionsCount": 0,
  • "entryCount": 0,
  • "entryCommentCount": 0,
  • "postCount": 0,
  • "postCommentCount": 0,
  • "isAdult": false,
  • "isUserSubscribed": true,
  • "isBlockedByUser": true,
  • "tags": [
    ],
  • "badges": [
    ],
  • "moderators": [
    ],
  • "apId": "string",
  • "apProfileId": "string",
  • "magazineId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string",
  • "isPostingRestrictedToMods": false
}

Update the magazine's theme.

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The id of the magazine to update

Request Body schema: multipart/form-data
customCss
string or null
backgroundImage
string or null
Enum: "shape1" "shape2"
uploadImage
required
string <binary>

Responses

Response samples

Content type
application/json
{
  • "magazine": {
    },
  • "customCss": "string",
  • "icon": {
    }
}

Update the magazine's theme.

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The id of the magazine to remove the icon from

Responses

Response samples

Content type
application/json
{
  • "magazine": {
    },
  • "customCss": "string",
  • "icon": {
    }
}

Retrieve the votes of a magazine over time.

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The id of the magazine to retrieve stats from

query Parameters
start
string <date>

The start date of the window to retrieve votes in. If not provided defaults to 1 (resolution) ago

end
string <date>

The end date of the window to retrieve votes in. If not provided defaults to today

resolution
required
string
Enum: "all" "year" "month" "day" "hour"

The size of chunks to aggregate votes in

local
boolean
Default: false

Exclude federated votes?

Responses

Response samples

Content type
application/json
{
  • "entry": [
    ],
  • "entry_comment": [
    ],
  • "post": [
    ],
  • "post_comment": [
    ]
}

Retrieve the content stats of a magazine over time.

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The id of the magazine to retrieve stats from

query Parameters
start
string <date>

The start date of the window to retrieve submissions in. If not provided defaults to 1 (resolution) ago

end
string <date>

The end date of the window to retrieve submissions in. If not provided defaults to today

resolution
required
string
Enum: "all" "year" "month" "day" "hour"

The size of chunks to aggregate content submissions in

local
boolean
Default: false

Exclude federated content?

Responses

Response samples

Content type
application/json
{
  • "entry": [
    ],
  • "entry_comment": [
    ],
  • "post": [
    ],
  • "post_comment": [
    ]
}

message

get_api_message_retrieve

Authorizations:
oauth2
path Parameters
message_id
required
integer

The message to retrieve

Responses

Response samples

Content type
application/json
{
  • "sender": {
    },
  • "body": "string",
  • "status": "new",
  • "threadId": 0,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "messageId": 0
}

put_api_message_read

Authorizations:
oauth2
path Parameters
message_id
required
integer

The message to read

Responses

Response samples

Content type
application/json
{
  • "sender": {
    },
  • "body": "string",
  • "status": "new",
  • "threadId": 0,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "messageId": 0
}

put_api_message_unread

Authorizations:
oauth2
path Parameters
message_id
required
integer

The message to mark as new

Responses

Response samples

Content type
application/json
{
  • "sender": {
    },
  • "body": "string",
  • "status": "new",
  • "threadId": 0,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "messageId": 0
}

get_api_message_retrieve_threads

Authorizations:
oauth2
query Parameters
p
integer >= 1
Default: 1

Page of messages to retrieve

perPage
integer [ 1 .. 100 ]
Default: 25

Number of messages per page

d
integer [ 0 .. 100 ]
Default: 25

Number of replies per thread

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

post_api_message_create_reply

Authorizations:
oauth2
path Parameters
thread_id
required
integer

Thread being replied to

query Parameters
d
integer [ 0 .. 100 ]
Default: 25

Number of replies returned

Request Body schema: application/json
body
required
string [ 2 .. 5000 ] characters
apId
string or null

Responses

Request samples

Content type
application/json
{
  • "body": "string",
  • "apId": "string"
}

Response samples

Content type
application/json
{
  • "participants": [
    ],
  • "messageCount": 0,
  • "messages": [
    ],
  • "threadId": 0
}

get_api_message_retrieve_thread

Authorizations:
oauth2
path Parameters
thread_id
required
integer

Thread from which to retrieve messages

sort
required
string
Default: "newest"
Enum: "newest" "oldest"

Order to retrieve messages by

query Parameters
p
integer >= 1
Default: 1

Page of messages to retrieve

perPage
integer [ 1 .. 100 ]
Default: 25

Number of messages per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    },
  • "participants": [
    ]
}

post_api_message_create_thread

Authorizations:
oauth2
path Parameters
user_id
required
integer

User being messaged

query Parameters
d
integer [ 0 .. 100 ]
Default: 25

Number of replies returned

Request Body schema: application/json
body
required
string [ 2 .. 5000 ] characters
apId
string or null

Responses

Request samples

Content type
application/json
{
  • "body": "string",
  • "apId": "string"
}

Response samples

Content type
application/json
{
  • "participants": [
    ],
  • "messageCount": 0,
  • "messages": [
    ],
  • "threadId": 0
}

moderation/entry

put_api_moderate_entry_toggle_pin

Authorizations:
oauth2
path Parameters
entry_id
required
integer

The entry to pin or unpin

Responses

Response samples

Content type
application/json
{
  • "entryId": 0,
  • "magazine": {
    },
  • "user": {
    },
  • "domain": {
    },
  • "title": "string",
  • "url": "string",
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "tags": [
    ],
  • "badges": [
    ],
  • "numComments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isOc": false,
  • "isAdult": false,
  • "isPinned": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "type": "article",
  • "slug": "string",
  • "apId": "string",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_moderate_entry_trash

Authorizations:
oauth2
path Parameters
entry_id
required
integer

The entry to trash

Responses

Response samples

Content type
application/json
{
  • "entryId": 0,
  • "magazine": {
    },
  • "user": {
    },
  • "domain": {
    },
  • "title": "string",
  • "url": "string",
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "tags": [
    ],
  • "badges": [
    ],
  • "numComments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isOc": false,
  • "isAdult": false,
  • "isPinned": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "type": "article",
  • "slug": "string",
  • "apId": "string",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_moderate_entry_restore

Authorizations:
oauth2
path Parameters
entry_id
required
integer

The entry to restore

Responses

Response samples

Content type
application/json
{
  • "entryId": 0,
  • "magazine": {
    },
  • "user": {
    },
  • "domain": {
    },
  • "title": "string",
  • "url": "string",
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "tags": [
    ],
  • "badges": [
    ],
  • "numComments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isOc": false,
  • "isAdult": false,
  • "isPinned": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "type": "article",
  • "slug": "string",
  • "apId": "string",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_moderate_entry_set_adult

Authorizations:
oauth2
path Parameters
entry_id
required
integer

The entry to set adult status on

adult
required
boolean
Default: true

new isAdult status

Responses

Response samples

Content type
application/json
{
  • "entryId": 0,
  • "magazine": {
    },
  • "user": {
    },
  • "domain": {
    },
  • "title": "string",
  • "url": "string",
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "tags": [
    ],
  • "badges": [
    ],
  • "numComments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isOc": false,
  • "isAdult": false,
  • "isPinned": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "type": "article",
  • "slug": "string",
  • "apId": "string",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_moderate_entry_set_lang

Authorizations:
oauth2
path Parameters
entry_id
required
integer

The entry to change language of

lang
required
string [ 2 .. 3 ] characters

new language

Responses

Response samples

Content type
application/json
{
  • "entryId": 0,
  • "magazine": {
    },
  • "user": {
    },
  • "domain": {
    },
  • "title": "string",
  • "url": "string",
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "tags": [
    ],
  • "badges": [
    ],
  • "numComments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isOc": false,
  • "isAdult": false,
  • "isPinned": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "type": "article",
  • "slug": "string",
  • "apId": "string",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

moderation/entry_comment

put_api_moderate_comment_trash

Authorizations:
oauth2
path Parameters
comment_id
required
integer

The comment to trash

Responses

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "entryId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isAdult": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "apId": "string",
  • "children": [
    ],
  • "childCount": 0,
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_moderate_comment_restore

Authorizations:
oauth2
path Parameters
comment_id
required
integer

The comment to restore

Responses

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "entryId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isAdult": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "apId": "string",
  • "children": [
    ],
  • "childCount": 0,
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_moderate_comment_set_adult

Authorizations:
oauth2
path Parameters
comment_id
required
integer

The comment to set adult status on

adult
required
boolean
Default: true

new isAdult status

Responses

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "entryId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isAdult": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "apId": "string",
  • "children": [
    ],
  • "childCount": 0,
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_moderate_comment_set_lang

Authorizations:
oauth2
path Parameters
comment_id
required
integer

The comment to change language of

lang
required
string [ 2 .. 3 ] characters

new language

Responses

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "entryId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "isAdult": false,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "apId": "string",
  • "children": [
    ],
  • "childCount": 0,
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

moderation/post

put_api_moderate_post_toggle_pin

Authorizations:
oauth2
path Parameters
post_id
required
integer

The post to pin or unpin

Responses

Response samples

Content type
application/json
{
  • "postId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "isPinned": false,
  • "slug": "string",
  • "comments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "tags": [
    ],
  • "mentions": [
    ],
  • "apId": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_moderate_post_trash

Authorizations:
oauth2
path Parameters
post_id
required
integer

The post to trash

Responses

Response samples

Content type
application/json
{
  • "postId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "isPinned": false,
  • "slug": "string",
  • "comments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "tags": [
    ],
  • "mentions": [
    ],
  • "apId": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_moderate_post_restore

Authorizations:
oauth2
path Parameters
post_id
required
integer

The post to restore

Responses

Response samples

Content type
application/json
{
  • "postId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "isPinned": false,
  • "slug": "string",
  • "comments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "tags": [
    ],
  • "mentions": [
    ],
  • "apId": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_moderate_post_set_adult

Authorizations:
oauth2
path Parameters
post_id
required
integer

The post to set adult status on

adult
required
boolean
Default: true

new isAdult status

Responses

Response samples

Content type
application/json
{
  • "postId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "isPinned": false,
  • "slug": "string",
  • "comments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "tags": [
    ],
  • "mentions": [
    ],
  • "apId": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_moderate_post_set_lang

Authorizations:
oauth2
path Parameters
post_id
required
integer

The post to change language of

lang
required
string [ 2 .. 3 ] characters

new language

Responses

Response samples

Content type
application/json
{
  • "postId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "isPinned": false,
  • "slug": "string",
  • "comments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "tags": [
    ],
  • "mentions": [
    ],
  • "apId": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

moderation/post_comment

put_api_moderate_post_comment_trash

Authorizations:
oauth2
path Parameters
comment_id
required
integer

The comment to trash

Responses

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "postId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "apId": "string",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "childCount": 0,
  • "children": [
    ],
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_moderate_post_comment_restore

Authorizations:
oauth2
path Parameters
comment_id
required
integer

The comment to restore

Responses

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "postId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "apId": "string",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "childCount": 0,
  • "children": [
    ],
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_moderate_post_comment_set_adult

Authorizations:
oauth2
path Parameters
comment_id
required
integer

The comment to set adult status on

adult
required
boolean
Default: true

new isAdult status

Responses

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "postId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "apId": "string",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "childCount": 0,
  • "children": [
    ],
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_moderate_post_comment_set_lang

Authorizations:
oauth2
path Parameters
comment_id
required
integer

The comment to change language of

lang
required
string [ 2 .. 3 ] characters

new language

Responses

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "postId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "apId": "string",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "childCount": 0,
  • "children": [
    ],
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

moderation/magazine

Create a new magazine ban for a user.

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The magazine to ban the user in

user_id
required
integer

The user to ban

Request Body schema: application/json
reason
string or null
expiredAt
string or null <date-time>

Responses

Request samples

Content type
application/json
{
  • "reason": "string",
  • "expiredAt": "2019-08-24T14:15:22Z"
}

Response samples

Content type
application/json
{
  • "banId": 0,
  • "reason": "string",
  • "expiredAt": "2019-08-24T14:15:22Z",
  • "magazine": {
    },
  • "bannedUser": {
    },
  • "bannedBy": {
    },
  • "expired": true
}

Remove magazine ban from a user.

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The magazine the user is banned in

user_id
required
integer

The user to unban

Responses

Response samples

Content type
application/json
{
  • "banId": 0,
  • "reason": "string",
  • "expiredAt": "2019-08-24T14:15:22Z",
  • "magazine": {
    },
  • "bannedUser": {
    },
  • "bannedBy": {
    },
  • "expired": true
}

get_api_moderate_magazine_retrieve_report

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The magazine of the report

report_id
required
integer

The report to retrieve

Responses

Response samples

Content type
application/json
{
  • "magazine": {
    },
  • "reported": {
    },
  • "reporting": {
    },
  • "subject": { },
  • "reason": "string",
  • "status": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "consideredAt": "2019-08-24T14:15:22Z",
  • "consideredBy": {
    },
  • "weight": 0,
  • "reportId": 0,
  • "type": "entry_report"
}

get_api_moderate_magazine_retrieve_reports

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

Magazine to retrieve reports from

query Parameters
p
integer >= 1
Default: 1

Page of reports to retrieve

perPage
integer [ 1 .. 100 ]
Default: 48

Number of reports per page

status
string
Default: "pending"
Enum: "any" "appeal" "approved" "closed" "pending" "rejected"

Filter by report status

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

Accepting a report will delete the reported item.

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The magazine the report is in

report_id
required
integer

The report to accept

Responses

Response samples

Content type
application/json
{
  • "magazine": {
    },
  • "reported": {
    },
  • "reporting": {
    },
  • "subject": { },
  • "reason": "string",
  • "status": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "consideredAt": "2019-08-24T14:15:22Z",
  • "consideredBy": {
    },
  • "weight": 0,
  • "reportId": 0,
  • "type": "entry_report"
}

Rejecting a report will preserve the reported item.

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

The magazine the report is in

report_id
required
integer

The report to reject

Responses

Response samples

Content type
application/json
{
  • "magazine": {
    },
  • "reported": {
    },
  • "reporting": {
    },
  • "subject": { },
  • "reason": "string",
  • "status": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "consideredAt": "2019-08-24T14:15:22Z",
  • "consideredBy": {
    },
  • "weight": 0,
  • "reportId": 0,
  • "type": "entry_report"
}

get_api_moderate_magazine_retrieve_bans

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

Magazine to retrieve bans from

query Parameters
p
integer >= 1
Default: 1

Page of bans to retrieve

perPage
integer [ 1 .. 100 ]
Default: 48

Number of bans per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_moderate_magazine_retrieve_trash

Authorizations:
oauth2
path Parameters
magazine_id
required
integer

Magazine to retrieve trash from

query Parameters
p
integer >= 1
Default: 1

Page of trash to retrieve

perPage
integer [ 1 .. 100 ]
Default: 48

Number of trash per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

notification

put_api_notification_read

Authorizations:
oauth2
path Parameters
notification_id
required
integer

The notification to read

Responses

Response samples

Content type
application/json
{
  • "notificationId": 0,
  • "type": "entry_created_notification",
  • "status": "all",
  • "subject": {
    },
  • "reportId": 0
}

put_api_notification_read_all

Authorizations:
oauth2

Responses

Response samples

Content type
application/json
{}

put_api_notification_unread

Authorizations:
oauth2
path Parameters
notification_id
required
integer

The notification to mark as new

Responses

Response samples

Content type
application/json
{
  • "notificationId": 0,
  • "type": "entry_created_notification",
  • "status": "all",
  • "subject": {
    },
  • "reportId": 0
}

delete_api_notification_delete

Authorizations:
oauth2
path Parameters
notification_id
required
integer

The notification to delete

Responses

Response samples

Content type
application/json
{}

delete_api_notification_delete_all

Authorizations:
oauth2

Responses

Response samples

Content type
application/json
{}

get_api_notification_count

Authorizations:
oauth2

Responses

Response samples

Content type
application/json
{
  • "count": 0
}

get_api_notification_collection

Authorizations:
oauth2
path Parameters
status
required
string
Default: "all"
Enum: "all" "new" "read"

Notification status to retrieve

query Parameters
p
integer >= 1
Default: 1

Page of notifications to retrieve

perPage
integer [ 1 .. 100 ]
Default: 25

Number of notifications per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_notification_retrieve

Authorizations:
oauth2
path Parameters
notification_id
required
integer

The notification to retrieve

Responses

Response samples

Content type
application/json
{
  • "notificationId": 0,
  • "type": "entry_created_notification",
  • "status": "all",
  • "subject": {
    },
  • "reportId": 0
}

Register a new push subscription.

Authorizations:
oauth2
Request Body schema: application/json
required
endpoint
required
string

The URL of the push endpoint messages will be sent to, normally you'll get this address when you register your application on a push service

serverKey
required
string

On web push this would be called the 'auth' key, which is used to authenticate the server to the push service. According to https://web-push-book.gauntface.com/web-push-protocol/ this is a 'just' a 'secret'

contentPublicKey
required
string

The public key of your key pair (client public key), which is used to encrypt the content. This should be a ECDH, p256 key

Responses

Request samples

Content type
application/json
{
  • "endpoint": "string",
  • "serverKey": "string",
  • "contentPublicKey": "string"
}

Response samples

Content type
application/json
{}

Delete the existing push subscription.

Authorizations:
oauth2

Responses

Response samples

Content type
application/json
{}

Send a test push notification.

Authorizations:
oauth2

Responses

Response samples

Content type
application/json
{}

post

get_api_posts_subscribed

Authorizations:
oauth2
query Parameters
p
integer >= 1
Default: 1

Page of posts to retrieve

perPage
integer [ 1 .. 100 ]
Default: 15

Number of posts to retrieve per page

sort
string
Default: "hot"
Enum: "active" "hot" "newest" "oldest" "top" "commented"

Sort method to use when retrieving posts

time
string
Default: "∞"
Enum: "3h" "6h" "12h" "1d" "1w" "1m" "1y" "∞" "all"

Max age of retrieved posts

lang[]
Array of strings[ items [ 2 .. 3 ] characters ]

Language(s) of posts to return

usePreferredLangs
boolean
Default: false

Filter by a user's preferred languages? (Requires authentication and takes precedence over lang[])

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_posts_moderated

Authorizations:
oauth2
query Parameters
p
integer >= 1
Default: 1

Page of posts to retrieve

perPage
integer [ 1 .. 100 ]
Default: 15

Number of posts to retrieve per page

sort
string
Default: "newest"
Enum: "active" "hot" "newest" "oldest" "top" "commented"

Sort method to use when retrieving posts

time
string
Default: "∞"
Enum: "3h" "6h" "12h" "1d" "1w" "1m" "1y" "∞" "all"

Max age of retrieved posts

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_posts_favourited

Authorizations:
oauth2
query Parameters
p
integer >= 1
Default: 1

Page of posts to retrieve

perPage
integer [ 1 .. 100 ]
Default: 15

Number of posts to retrieve per page

sort
string
Default: "hot"
Enum: "active" "hot" "newest" "oldest" "top" "commented"

Sort method to use when retrieving posts

time
string
Default: "∞"
Enum: "3h" "6h" "12h" "1d" "1w" "1m" "1y" "∞" "all"

Max age of retrieved posts

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_posts_collection

query Parameters
p
integer >= 1
Default: 1

Page of posts to retrieve

perPage
integer [ 1 .. 100 ]
Default: 15

Number of posts to retrieve per page

sort
string
Default: "hot"
Enum: "active" "hot" "newest" "oldest" "top" "commented"

Sort method to use when retrieving posts

time
string
Default: "∞"
Enum: "3h" "6h" "12h" "1d" "1w" "1m" "1y" "∞" "all"

Max age of retrieved posts

lang[]
Array of strings[ items [ 2 .. 3 ] characters ]

Language(s) of posts to return

usePreferredLangs
boolean
Default: false

Filter by a user's preferred languages? (Requires authentication and takes precedence over lang[])

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_post_retrieve

path Parameters
post_id
required
integer

The post to retrieve

Responses

Response samples

Content type
application/json
{
  • "postId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "isPinned": false,
  • "slug": "string",
  • "comments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "tags": [
    ],
  • "mentions": [
    ],
  • "apId": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_posts_update

Authorizations:
oauth2
path Parameters
post_id
required
integer

The id of the post to update

Request Body schema: application/json
body
string or null
lang
string or null [ 2 .. 3 ] characters
isAdult
boolean
Default: false

Responses

Request samples

Content type
application/json
{
  • "body": "We can post cat pics from the API now! What are you going to do with this power?",
  • "lang": "en",
  • "isAdult": false
}

Response samples

Content type
application/json
{
  • "postId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "isPinned": false,
  • "slug": "string",
  • "comments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "tags": [
    ],
  • "mentions": [
    ],
  • "apId": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

delete_api_posts_delete

Authorizations:
oauth2
path Parameters
post_id
required
integer

The post to delete

Responses

Response samples

Content type
application/json
{}

post_api_posts_report

Authorizations:
oauth2
path Parameters
post_id
required
integer

The post to report

Request Body schema: application/json
reason
string or null

Responses

Request samples

Content type
application/json
{
  • "reason": "string"
}

Response samples

Content type
application/json
{}

put_api_posts_vote

Authorizations:
oauth2
path Parameters
post_id
required
integer

The post to vote upon

choice
required
integer
Default: 1
Enum: -1 0 1

The user's voting choice. 0 clears the user's vote.

Responses

Response samples

Content type
application/json
{
  • "postId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "isPinned": false,
  • "slug": "string",
  • "comments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "tags": [
    ],
  • "mentions": [
    ],
  • "apId": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_posts_favourite

Authorizations:
oauth2
path Parameters
post_id
required
integer

The post to favourite

Responses

Response samples

Content type
application/json
{
  • "postId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "isPinned": false,
  • "slug": "string",
  • "comments": 0,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "tags": [
    ],
  • "mentions": [
    ],
  • "apId": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

get_api_post_comments_retrieve

path Parameters
post_id
required
integer

Post to retrieve comments from

sort
string
Default: "hot"
Enum: "active" "hot" "newest" "oldest" "top" "commented"

Sort method to use when retrieving comments

time
string
Default: "∞"
Enum: "3h" "6h" "12h" "1d" "1w" "1m" "1y" "∞" "all"

Max age of retrieved posts

query Parameters
p
integer >= 1
Default: 1

Page of comments to retrieve

d
integer [ 0 .. 25 ]
Default: 10

Max depth of comment tree to retrieve

perPage
integer [ 1 .. 100 ]
Default: 15

Number of posts per page to retrieve

lang[]
Array of strings

Language(s) of comments to return

usePreferredLangs
boolean
Default: false

Filter by a user's preferred languages? (Requires authentication and takes precedence over lang[])

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

post_comment

get_api_post_comment_retrieve

path Parameters
comment_id
required
integer

The post comment to retrieve

query Parameters
d
integer [ 0 .. 25 ]
Default: 10

Comment tree depth to retrieve

Responses

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "postId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "apId": "string",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "childCount": 0,
  • "children": [
    ],
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_post_comments_update

Authorizations:
oauth2
path Parameters
comment_id
required
integer

The id of the comment to update

query Parameters
d
integer
Default: -1

Comment tree depth to retrieve (-1 for unlimited depth)

Request Body schema: application/json
body
string or null
lang
string or null [ 2 .. 3 ] characters
isAdult
boolean
Default: false

Responses

Request samples

Content type
application/json
{
  • "body": "We can post cat pics from the API now! What are you going to do with this power?",
  • "lang": "en",
  • "isAdult": false
}

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "postId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "apId": "string",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "childCount": 0,
  • "children": [
    ],
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

delete_api_post_comments_delete

Authorizations:
oauth2
path Parameters
comment_id
required
integer

The comment to delete

Responses

Response samples

Content type
application/json
{}

post_api_post_comments_create

Authorizations:
oauth2
path Parameters
post_id
required
integer

Post to which the new comment will belong

Request Body schema: application/json
body
string or null
lang
string or null [ 2 .. 3 ] characters
isAdult
boolean
Default: false

Responses

Request samples

Content type
application/json
{
  • "body": "We can post cat pics from the API now! What are you going to do with this power?",
  • "lang": "en",
  • "isAdult": false
}

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "postId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "apId": "string",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "childCount": 0,
  • "children": [
    ],
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

post_api_post_comments_create_image

Authorizations:
oauth2
path Parameters
post_id
required
integer

Post to which the new comment will belong

Request Body schema: multipart/form-data
body
string or null
lang
string or null [ 2 .. 3 ] characters
isAdult
boolean
Default: false
alt
string or null
uploadImage
required
string <binary>

Responses

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "postId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "apId": "string",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "childCount": 0,
  • "children": [
    ],
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

post_api_post_comments_create_reply

Authorizations:
oauth2
path Parameters
post_id
required
integer

Post to which the new comment will belong

comment_id
required
string
Request Body schema: application/json
body
string or null
lang
string or null [ 2 .. 3 ] characters
isAdult
boolean
Default: false

Responses

Request samples

Content type
application/json
{
  • "body": "We can post cat pics from the API now! What are you going to do with this power?",
  • "lang": "en",
  • "isAdult": false
}

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "postId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "apId": "string",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "childCount": 0,
  • "children": [
    ],
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

post_api_post_comments_create_image_reply

Authorizations:
oauth2
path Parameters
post_id
required
integer

Post to which the new comment will belong

comment_id
required
string
Request Body schema: multipart/form-data
body
string or null
lang
string or null [ 2 .. 3 ] characters
isAdult
boolean
Default: false
alt
string or null
uploadImage
required
string <binary>

Responses

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "postId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "apId": "string",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "childCount": 0,
  • "children": [
    ],
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

post_api_post_comments_report

Authorizations:
oauth2
path Parameters
comment_id
required
integer

The post to report

Request Body schema: application/json
reason
string or null

Responses

Request samples

Content type
application/json
{
  • "reason": "string"
}

Response samples

Content type
application/json
{}

put_api_post_comments_favourite

Authorizations:
oauth2
path Parameters
comment_id
required
integer

The comment to favourite

query Parameters
d
integer
Default: -1

Comment tree depth to retrieve (-1 for unlimited depth)

Responses

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "postId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "apId": "string",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "childCount": 0,
  • "children": [
    ],
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

put_api_post_comments_vote

Authorizations:
oauth2
path Parameters
comment_id
required
integer

The comment to vote upon

choice
required
integer
Enum: -1 0 1

The user's voting choice. 0 clears the user's vote.

Responses

Response samples

Content type
application/json
{
  • "commentId": 0,
  • "user": {
    },
  • "magazine": {
    },
  • "postId": 0,
  • "parentId": 0,
  • "rootId": 0,
  • "image": {
    },
  • "body": "string",
  • "lang": "en",
  • "isAdult": false,
  • "uv": 0,
  • "dv": 0,
  • "favourites": 0,
  • "isFavourited": true,
  • "userVote": 0,
  • "apId": "string",
  • "mentions": [
    ],
  • "tags": [
    ],
  • "createdAt": "2019-08-24T14:15:22Z",
  • "editedAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "childCount": 0,
  • "children": [
    ],
  • "canAuthUserModerate": true,
  • "visibility": "private"
}

search

oauth

Begin an oauth2 authorization_code grant flow

query Parameters
response_type
required
string
Default: "code"
Value: "code"
client_id
required
string
redirect_uri
required
string <uri>

One of the valid redirect_uris that were registered for your client during client creation.

scope
required
string

A space delimited list of requested scopes

state
required
string

A randomly generated state variable to be used to prevent CSRF attacks

code_challenge
string

Required for public clients, begins PKCE flow when present

code_challenge_method
string
Enum: "S256" "plain"

Required for public clients, sets the type of code challenge used

Responses

Used to retrieve a Bearer token after receiving consent from the user

Request Body schema: multipart/form-data
grant_type
required
string
Enum: "authorization_code" "refresh_token" "client_credentials"

One of the three grant types available

client_id
required
string
client_secret
string

Required if using the client_credentials or authorization_code flow with a confidential client

code_verifier
string

Required if using the PKCE extension to authorization_code flow

code
string

Required during authorization_code flow. The code retrieved after redirect during authorization_code flow.

refresh_token
string

Required during refresh_token flow. This is the refresh token obtained after a successful authorization_code flow.

redirect_uri
string

Required during authorization_code flow. One of the valid redirect_uris that were registered for your client during client creation.

scope
string

Required during client_credentials flow. A space-delimited list of scopes the client token will be provided.

Responses

This endpoint can create an OAuth2 client for your application.

You can create a public or confidential client with any of 3 flows available. It's recommended that you pick either client_credentials, or authorization_code and refresh_token.

When creating clients with the client_credentials grant type, you must provide a unique username and contact email. The username and email will be used to create a new bot user, which your client authenticates as during the client_credentials flow. This user will be tagged as a bot on all of their posts, comments, and on their profile. In addition, the bot will not be allowed to use the API to vote on content.

If you are creating a client that will be used on a native app or webapp, the client should be marked as public. This will skip generation of a client secret and will require the client to use the PKCE (https://www.oauth.com/oauth2-servers/pkce/) extension during authorization_code flow. A public client cannot use the client_credentials flow. Public clients are recommended because apps running on user devices technically cannot store secrets safely - if they're determined enough, the user could retrieve the secret from their device's memory.

Request Body schema: application/json
name
required
string
contactEmail
required
string
description
string or null
public
boolean or null

Native applications installed on user devices and web apps are considered public since they cannot store secrets securely, so they should use PKCE. https://www.oauth.com/oauth2-servers/pkce/

username
string or null[a-zA-Z0-9_\-]{1,30}

Required if using the client_credentials grant type. Will attempt to create a bot user with the given username.

redirectUris
Array of strings
Default: []
grants
Array of strings non-empty
Default: []
Items Enum: "client_credentials" "authorization_code" "refresh_token"
scopes
Array of strings non-empty
Default: ["read"]
Items Enum: "read" "write" "delete" "subscribe" "block" "vote" "report" "domain" "domain:subscribe" "domain:block" "entry" "entry:create" "entry:edit" "entry:delete" "entry:vote" "entry:report" "entry_comment" "entry_comment:create" "entry_comment:edit" "entry_comment:delete" "entry_comment:vote" "entry_comment:report" "magazine" "magazine:subscribe" "magazine:block" "post" "post:create" "post:edit" "post:delete" "post:vote" "post:report" "post_comment" "post_comment:create" "post_comment:edit" "post_comment:delete" "post_comment:vote" "post_comment:report" "user" "user:profile" "user:profile:read" "user:profile:edit" "user:message" "user:message:read" "user:message:create" "user:notification" "user:notification:read" "user:notification:delete" "user:oauth_clients" "user:oauth_clients:read" "user:oauth_clients:edit" "user:follow" "user:block" "moderate" "moderate:entry" "moderate:entry:language" "moderate:entry:pin" "moderate:entry:set_adult" "moderate:entry:trash" "moderate:entry_comment" "moderate:entry_comment:language" "moderate:entry_comment:set_adult" "moderate:entry_comment:trash" "moderate:post" "moderate:post:language" "moderate:post:pin" "moderate:post:set_adult" "moderate:post:trash" "moderate:post_comment" "moderate:post_comment:language" "moderate:post_comment:set_adult" "moderate:post_comment:trash" "moderate:magazine" "moderate:magazine:ban" "moderate:magazine:ban:read" "moderate:magazine:ban:create" "moderate:magazine:ban:delete" "moderate:magazine:list" "moderate:magazine:reports" "moderate:magazine:reports:read" "moderate:magazine:reports:action" "moderate:magazine:trash:read" "moderate:magazine_admin" "moderate:magazine_admin:create" "moderate:magazine_admin:delete" "moderate:magazine_admin:update" "moderate:magazine_admin:theme" "moderate:magazine_admin:moderators" "moderate:magazine_admin:badges" "moderate:magazine_admin:tags" "moderate:magazine_admin:stats" "admin" "admin:entry:purge" "admin:entry_comment:purge" "admin:post:purge" "admin:post_comment:purge" "admin:magazine" "admin:magazine:move_entry" "admin:magazine:purge" "admin:user" "admin:user:ban" "admin:user:verify" "admin:user:delete" "admin:user:purge" "admin:instance" "admin:instance:stats" "admin:instance:settings" "admin:instance:settings:read" "admin:instance:settings:edit" "admin:instance:information:edit" "admin:federation" "admin:federation:read" "admin:federation:update" "admin:oauth_clients" "admin:oauth_clients:read" "admin:oauth_clients:revoke"

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "contactEmail": "string",
  • "description": "string",
  • "public": true,
  • "username": "string",
  • "redirectUris": [],
  • "grants": [
    ],
  • "scopes": [
    ]
}

Response samples

Content type
application/json
{
  • "identifier": "string",
  • "secret": "string",
  • "name": "string",
  • "contactEmail": "string",
  • "description": "string",
  • "user": { },
  • "redirectUris": [],
  • "grants": [
    ],
  • "scopes": [
    ],
  • "image": {
    }
}

This endpoint deactivates a client given their client_id and client_secret.

This is useful if a confidential client has had their secret compromised and a new client needs to be created. A public client cannot be deleted in this manner since it does not have a secret to be compromised

query Parameters
client_id
required
string
client_secret
required
string

Responses

Response samples

Content type
application/json
{}

This endpoint can create an OAuth2 client with a logo for your application.

The image uploaded to this endpoint will be shown to users on the consent page as your application's logo.

You can create a public or confidential client with any of 3 flows available. It's recommended that you pick either client_credentials, or authorization_code and refresh_token.

When creating clients with the client_credentials grant type, you must provide a unique username and contact email. The username and email will be used to create a new bot user, which your client authenticates as during the client_credentials flow. This user will be tagged as a bot on all of their posts, comments, and on their profile. In addition, the bot will not be allowed to use the API to vote on content.

If you are creating a client that will be used on a native app or webapp, the client should be marked as public. This will skip generation of a client secret and will require the client to use the PKCE (https://www.oauth.com/oauth2-servers/pkce/) extension during authorization_code flow. A public client cannot use the client_credentials flow. Public clients are recommended because apps running on user devices technically cannot store secrets safely - if they're determined enough, the user could retrieve the secret from their device's memory.

Request Body schema: multipart/form-data
name
required
string
contactEmail
required
string
description
string or null
public
boolean or null

Native applications installed on user devices and web apps are considered public since they cannot store secrets securely, so they should use PKCE. https://www.oauth.com/oauth2-servers/pkce/

username
string or null[a-zA-Z0-9_\-]{1,30}

Required if using the client_credentials grant type. Will attempt to create a bot user with the given username.

redirectUris
Array of strings
Default: []
grants
Array of strings non-empty
Default: []
Items Enum: "client_credentials" "authorization_code" "refresh_token"
scopes
Array of strings non-empty
Default: ["read"]
Items Enum: "read" "write" "delete" "subscribe" "block" "vote" "report" "domain" "domain:subscribe" "domain:block" "entry" "entry:create" "entry:edit" "entry:delete" "entry:vote" "entry:report" "entry_comment" "entry_comment:create" "entry_comment:edit" "entry_comment:delete" "entry_comment:vote" "entry_comment:report" "magazine" "magazine:subscribe" "magazine:block" "post" "post:create" "post:edit" "post:delete" "post:vote" "post:report" "post_comment" "post_comment:create" "post_comment:edit" "post_comment:delete" "post_comment:vote" "post_comment:report" "user" "user:profile" "user:profile:read" "user:profile:edit" "user:message" "user:message:read" "user:message:create" "user:notification" "user:notification:read" "user:notification:delete" "user:oauth_clients" "user:oauth_clients:read" "user:oauth_clients:edit" "user:follow" "user:block" "moderate" "moderate:entry" "moderate:entry:language" "moderate:entry:pin" "moderate:entry:set_adult" "moderate:entry:trash" "moderate:entry_comment" "moderate:entry_comment:language" "moderate:entry_comment:set_adult" "moderate:entry_comment:trash" "moderate:post" "moderate:post:language" "moderate:post:pin" "moderate:post:set_adult" "moderate:post:trash" "moderate:post_comment" "moderate:post_comment:language" "moderate:post_comment:set_adult" "moderate:post_comment:trash" "moderate:magazine" "moderate:magazine:ban" "moderate:magazine:ban:read" "moderate:magazine:ban:create" "moderate:magazine:ban:delete" "moderate:magazine:list" "moderate:magazine:reports" "moderate:magazine:reports:read" "moderate:magazine:reports:action" "moderate:magazine:trash:read" "moderate:magazine_admin" "moderate:magazine_admin:create" "moderate:magazine_admin:delete" "moderate:magazine_admin:update" "moderate:magazine_admin:theme" "moderate:magazine_admin:moderators" "moderate:magazine_admin:badges" "moderate:magazine_admin:tags" "moderate:magazine_admin:stats" "admin" "admin:entry:purge" "admin:entry_comment:purge" "admin:post:purge" "admin:post_comment:purge" "admin:magazine" "admin:magazine:move_entry" "admin:magazine:purge" "admin:user" "admin:user:ban" "admin:user:verify" "admin:user:delete" "admin:user:purge" "admin:instance" "admin:instance:stats" "admin:instance:settings" "admin:instance:settings:read" "admin:instance:settings:edit" "admin:instance:information:edit" "admin:federation" "admin:federation:read" "admin:federation:update" "admin:oauth_clients" "admin:oauth_clients:read" "admin:oauth_clients:revoke"
uploadImage
required
string <binary>

Responses

Response samples

Content type
application/json
{
  • "identifier": "string",
  • "secret": "string",
  • "name": "string",
  • "contactEmail": "string",
  • "description": "string",
  • "user": { },
  • "redirectUris": [],
  • "grants": [
    ],
  • "scopes": [
    ],
  • "image": {
    }
}

This API revokes any tokens associated with the authenticated user and client.

Responses

Response samples

Content type
application/json
{}

get_api_user_retrieve_oauth_consents

Authorizations:
oauth2
query Parameters
p
integer >= 1
Default: 1

Page of clients to retrieve

perPage
integer [ 1 .. 100 ]
Default: 15

Number of clients to retrieve per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

user

get_api_users_collection

query Parameters
p
integer >= 1
Default: 1

Page of users to retrieve

perPage
integer [ 1 .. 100 ]
Default: 48

Number of users per page

group
string
Default: "all"
Enum: "all" "local" "remote"

What group of users to retrieve

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_user_blocked

Authorizations:
oauth2
query Parameters
p
integer >= 1
Default: 1

Page of users to retrieve

perPage
integer [ 1 .. 100 ]
Default: 48

Number of users per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_current_user_followed

Authorizations:
oauth2
query Parameters
p
integer >= 1
Default: 1

Page of users to retrieve

perPage
integer [ 1 .. 100 ]
Default: 48

Number of users per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_current_user_followers

Authorizations:
oauth2
query Parameters
p
integer >= 1
Default: 1

Page of users to retrieve

perPage
integer [ 1 .. 100 ]
Default: 48

Number of users per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_user_retrieve_self

Authorizations:
oauth2

Responses

Response samples

Content type
application/json
{
  • "avatar": {
    },
  • "cover": {
    },
  • "username": "string",
  • "followersCount": 0,
  • "about": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "apProfileId": "string",
  • "apId": "string",
  • "isBot": true,
  • "isFollowedByUser": true,
  • "isFollowerOfUser": true,
  • "isBlockedByUser": true,
  • "isAdmin": true,
  • "isGlobalModerator": true,
  • "userId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string"
}

put_api_user_update_profile

Authorizations:
oauth2
Request Body schema: application/json
about
string or null

Responses

Request samples

Content type
application/json
{
  • "about": "string"
}

Response samples

Content type
application/json
{
  • "avatar": {
    },
  • "cover": {
    },
  • "username": "string",
  • "followersCount": 0,
  • "about": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "apProfileId": "string",
  • "apId": "string",
  • "isBot": true,
  • "isFollowedByUser": true,
  • "isFollowerOfUser": true,
  • "isBlockedByUser": true,
  • "isAdmin": true,
  • "isGlobalModerator": true,
  • "userId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string"
}

get_api_user_retrieve_settings

Authorizations:
oauth2

Responses

Response samples

Content type
application/json
{
  • "notifyOnNewEntry": null,
  • "notifyOnNewEntryReply": null,
  • "notifyOnNewEntryCommentReply": null,
  • "notifyOnNewPost": null,
  • "notifyOnNewPostReply": null,
  • "notifyOnNewPostCommentReply": null,
  • "hideAdult": null,
  • "showProfileSubscriptions": null,
  • "showProfileFollowings": null,
  • "addMentionsEntries": true,
  • "addMentionsPosts": true,
  • "homepage": "front",
  • "featuredMagazines": null,
  • "preferredLanguages": null,
  • "customCss": null,
  • "ignoreMagazinesCustomCss": null
}

put_api_user_update_settings

Authorizations:
oauth2
Request Body schema: application/json
notifyOnNewEntry
boolean or null
Default: null
notifyOnNewEntryReply
boolean or null
Default: null
notifyOnNewEntryCommentReply
boolean or null
Default: null
notifyOnNewPost
boolean or null
Default: null
notifyOnNewPostReply
boolean or null
Default: null
notifyOnNewPostCommentReply
boolean or null
Default: null
hideAdult
boolean or null
Default: null
showProfileSubscriptions
boolean or null
Default: null
showProfileFollowings
boolean or null
Default: null
addMentionsEntries
boolean or null
addMentionsPosts
boolean or null
homepage
string
Default: null
Enum: "front" "front_subscribed" "front_moderated" "front_favourite"
featuredMagazines
Array of strings
Default: null
preferredLanguages
Array of strings
Default: null
customCss
string or null
Default: null
ignoreMagazinesCustomCss
boolean or null
Default: null

Responses

Request samples

Content type
application/json
{
  • "notifyOnNewEntry": null,
  • "notifyOnNewEntryReply": null,
  • "notifyOnNewEntryCommentReply": null,
  • "notifyOnNewPost": null,
  • "notifyOnNewPostReply": null,
  • "notifyOnNewPostCommentReply": null,
  • "hideAdult": null,
  • "showProfileSubscriptions": null,
  • "showProfileFollowings": null,
  • "addMentionsEntries": true,
  • "addMentionsPosts": true,
  • "homepage": "front",
  • "featuredMagazines": null,
  • "preferredLanguages": null,
  • "customCss": null,
  • "ignoreMagazinesCustomCss": null
}

Response samples

Content type
application/json
{
  • "notifyOnNewEntry": null,
  • "notifyOnNewEntryReply": null,
  • "notifyOnNewEntryCommentReply": null,
  • "notifyOnNewPost": null,
  • "notifyOnNewPostReply": null,
  • "notifyOnNewPostCommentReply": null,
  • "hideAdult": null,
  • "showProfileSubscriptions": null,
  • "showProfileFollowings": null,
  • "addMentionsEntries": true,
  • "addMentionsPosts": true,
  • "homepage": "front",
  • "featuredMagazines": null,
  • "preferredLanguages": null,
  • "customCss": null,
  • "ignoreMagazinesCustomCss": null
}

post_api_user_update_avatar

Authorizations:
oauth2
Request Body schema: multipart/form-data
uploadImage
required
string <binary>

Responses

Response samples

Content type
application/json
{
  • "avatar": {
    },
  • "cover": {
    },
  • "username": "string",
  • "followersCount": 0,
  • "about": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "apProfileId": "string",
  • "apId": "string",
  • "isBot": true,
  • "isFollowedByUser": true,
  • "isFollowerOfUser": true,
  • "isBlockedByUser": true,
  • "isAdmin": true,
  • "isGlobalModerator": true,
  • "userId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string"
}

delete_api_user_delete_avatar

Authorizations:
oauth2

Responses

Response samples

Content type
application/json
{
  • "avatar": {
    },
  • "cover": {
    },
  • "username": "string",
  • "followersCount": 0,
  • "about": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "apProfileId": "string",
  • "apId": "string",
  • "isBot": true,
  • "isFollowedByUser": true,
  • "isFollowerOfUser": true,
  • "isBlockedByUser": true,
  • "isAdmin": true,
  • "isGlobalModerator": true,
  • "userId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string"
}

post_api_user_update_cover

Authorizations:
oauth2
Request Body schema: multipart/form-data
uploadImage
required
string <binary>

Responses

Response samples

Content type
application/json
{
  • "avatar": {
    },
  • "cover": {
    },
  • "username": "string",
  • "followersCount": 0,
  • "about": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "apProfileId": "string",
  • "apId": "string",
  • "isBot": true,
  • "isFollowedByUser": true,
  • "isFollowerOfUser": true,
  • "isBlockedByUser": true,
  • "isAdmin": true,
  • "isGlobalModerator": true,
  • "userId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string"
}

delete_api_user_delete_cover

Authorizations:
oauth2

Responses

Response samples

Content type
application/json
{
  • "avatar": {
    },
  • "cover": {
    },
  • "username": "string",
  • "followersCount": 0,
  • "about": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "apProfileId": "string",
  • "apId": "string",
  • "isBot": true,
  • "isFollowedByUser": true,
  • "isFollowerOfUser": true,
  • "isBlockedByUser": true,
  • "isAdmin": true,
  • "isGlobalModerator": true,
  • "userId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string"
}

get_api_user_retrieve

path Parameters
user_id
required
integer

The user to retrieve

Responses

Response samples

Content type
application/json
{
  • "avatar": {
    },
  • "cover": {
    },
  • "username": "string",
  • "followersCount": 0,
  • "about": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "apProfileId": "string",
  • "apId": "string",
  • "isBot": true,
  • "isFollowedByUser": true,
  • "isFollowerOfUser": true,
  • "isBlockedByUser": true,
  • "isAdmin": true,
  • "isGlobalModerator": true,
  • "userId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string"
}

get_api_user_retrieve_by_name

path Parameters
username
required
string

The user to retrieve

Responses

Response samples

Content type
application/json
{
  • "avatar": {
    },
  • "cover": {
    },
  • "username": "string",
  • "followersCount": 0,
  • "about": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "apProfileId": "string",
  • "apId": "string",
  • "isBot": true,
  • "isFollowedByUser": true,
  • "isFollowerOfUser": true,
  • "isBlockedByUser": true,
  • "isAdmin": true,
  • "isGlobalModerator": true,
  • "userId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string"
}

get_api_user_followed

Authorizations:
oauth2
path Parameters
user_id
required
integer

User from which to retrieve followed users

query Parameters
p
integer >= 1
Default: 1

Page of users to retrieve

perPage
integer [ 1 .. 100 ]
Default: 48

Number of users per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_user_followers

Authorizations:
oauth2
path Parameters
user_id
required
integer

User from which to retrieve following users

query Parameters
p
integer >= 1
Default: 1

Page of users to retrieve

perPage
integer [ 1 .. 100 ]
Default: 48

Number of users per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

put_api_user_block

Authorizations:
oauth2
path Parameters
user_id
required
integer

The user to block

Responses

Response samples

Content type
application/json
{
  • "avatar": {
    },
  • "cover": {
    },
  • "username": "string",
  • "followersCount": 0,
  • "about": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "apProfileId": "string",
  • "apId": "string",
  • "isBot": true,
  • "isFollowedByUser": true,
  • "isFollowerOfUser": true,
  • "isBlockedByUser": true,
  • "isAdmin": true,
  • "isGlobalModerator": true,
  • "userId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string"
}

put_api_user_unblock

Authorizations:
oauth2
path Parameters
user_id
required
integer

The user to unblock

Responses

Response samples

Content type
application/json
{
  • "avatar": {
    },
  • "cover": {
    },
  • "username": "string",
  • "followersCount": 0,
  • "about": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "apProfileId": "string",
  • "apId": "string",
  • "isBot": true,
  • "isFollowedByUser": true,
  • "isFollowerOfUser": true,
  • "isBlockedByUser": true,
  • "isAdmin": true,
  • "isGlobalModerator": true,
  • "userId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string"
}

put_api_user_follow

Authorizations:
oauth2
path Parameters
user_id
required
integer

The user to follow

Responses

Response samples

Content type
application/json
{
  • "avatar": {
    },
  • "cover": {
    },
  • "username": "string",
  • "followersCount": 0,
  • "about": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "apProfileId": "string",
  • "apId": "string",
  • "isBot": true,
  • "isFollowedByUser": true,
  • "isFollowerOfUser": true,
  • "isBlockedByUser": true,
  • "isAdmin": true,
  • "isGlobalModerator": true,
  • "userId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string"
}

put_api_user_unfollow

Authorizations:
oauth2
path Parameters
user_id
required
integer

The user to unfollow

Responses

Response samples

Content type
application/json
{
  • "avatar": {
    },
  • "cover": {
    },
  • "username": "string",
  • "followersCount": 0,
  • "about": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "apProfileId": "string",
  • "apId": "string",
  • "isBot": true,
  • "isFollowedByUser": true,
  • "isFollowerOfUser": true,
  • "isBlockedByUser": true,
  • "isAdmin": true,
  • "isGlobalModerator": true,
  • "userId": 0,
  • "serverSoftware": "string",
  • "serverSoftwareVersion": "string"
}

get_api_user_magazine_subscriptions

Authorizations:
oauth2
path Parameters
user_id
required
integer

User from which to retrieve subscribed magazines

query Parameters
p
integer >= 1
Default: 1

Page of magazines to retrieve

perPage
integer [ 1 .. 100 ]
Default: 48

Number of magazines per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_user_domain_subscriptions

Authorizations:
oauth2
path Parameters
user_id
required
integer

User from which to retrieve subscribed domains

query Parameters
p
integer >= 1
Default: 1

Page of domains to retrieve

perPage
integer [ 1 .. 100 ]
Default: 100

Number of domains per page

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_user_entries_retrieve

path Parameters
user_id
required
integer

The user whose entries to retrieve

query Parameters
sort
any
Default: "hot"
Enum: "active" "hot" "newest" "oldest" "top" "commented"

The sorting method to use during entry fetch

time
any
Default: "∞"
Enum: "3h" "6h" "12h" "1d" "1w" "1m" "1y" "∞" "all"

The maximum age of retrieved entries

p
integer >= 1
Default: 1

Page of entries to retrieve

perPage
integer [ 1 .. 100 ]
Default: 25

Number of entries to retrieve per page

lang[]
Array of strings[ items [ 2 .. 3 ] characters ]

Language(s) of entries to return

usePreferredLangs
boolean
Default: false

Filter by a user's preferred languages? (Requires authentication and takes precedence over lang[])

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_user_entry_comments_retrieve

path Parameters
user_id
required
integer

The user whose comments should be retrieved

query Parameters
sort
string
Default: "hot"
Enum: "newest" "top" "hot" "newest" "oldest"

The sorting method to use during comment fetch

time
string
Default: "∞"
Enum: "3h" "6h" "12h" "1d" "1w" "1m" "1y" "∞" "all"

The maximum age of retrieved entries

p
integer >= 1
Default: 1

Page of comments to retrieve

perPage
integer [ 1 .. 100 ]
Default: 25

Number of comments to retrieve per page

d
integer [ 0 .. 25 ]
Default: 10

Depth of comment children to retrieve

lang[]
Array of strings[ items [ 2 .. 3 ] characters ]

Language(s) of entries to return

usePreferredLangs
boolean
Default: false

Filter by a user's preferred languages? (Requires authentication and takes precedence over lang[])

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_user_posts_retrieve

path Parameters
user_id
required
integer

User whose posts to retrieve

query Parameters
p
integer >= 1
Default: 1

Page of posts to retrieve

perPage
integer [ 1 .. 100 ]
Default: 15

Number of posts to retrieve per page

sort
string
Default: "hot"
Enum: "active" "hot" "newest" "oldest" "top" "commented"

Sort method to use when retrieving posts

time
string
Default: "∞"
Enum: "3h" "6h" "12h" "1d" "1w" "1m" "1y" "∞" "all"

Max age of retrieved posts

lang[]
Array of strings[ items [ 2 .. 3 ] characters ]

Language(s) of posts to return

usePreferredLangs
boolean
Default: false

Filter by a user's preferred languages? (Requires authentication and takes precedence over lang[])

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}

get_api_user_post_comments_retrieve

path Parameters
user_id
required
integer

User whose comments to retrieve

query Parameters
p
integer >= 1
Default: 1

Page of comments to retrieve

d
integer [ 0 .. 25 ]
Default: 10

Max depth of comment tree to retrieve

perPage
integer [ 1 .. 100 ]
Default: 15

Number of posts per page to retrieve

sort
string
Default: "hot"
Enum: "active" "hot" "newest" "oldest" "top" "commented"

Sort method to use when retrieving comments

time
string
Default: "∞"
Enum: "3h" "6h" "12h" "1d" "1w" "1m" "1y" "∞" "all"

Max age of retrieved posts

lang[]
Array of strings

Language(s) of comments to return

usePreferredLangs
boolean
Default: false

Filter by a user's preferred languages? (Requires authentication and takes precedence over lang[])

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "pagination": {
    }
}