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
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
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
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
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
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