Endpoints
Authentication required
GET /api/configuration HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"Configuration": Object
}
Authentication optional
GET /api/search?Search=foo HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"SearchResults": Array,
"SearchTerm": "foo",
"SearchTerms": Array,
"From": 1,
"To": 29
}
Authentication optional
GET /api/categories HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"Categories": Object
}
Authentication required
POST /api/categories HTTP/1.1
Content-Type: application/json
{
"Name": "Foo Bar",
"UrlCode": "foo-bar"
}
HTTP/1.1 200 OK
Content-Type: application/json
{
"Category": Object,
"DiscussionTypes": Object
}
Authentication optional
GET /api/categories/:id HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"AnnounceData": Array,
"Categories": Array,
"Category": Object,
"CategoryID": "123",
"CountDiscussions": "123",
"Discussions": Array
}
Authentication required
PUT /api/categories/:id HTTP/1.1
Content-Type: application/json
{
"Name": "Foo Bar",
"UrlCode": "foo-bar"
}
HTTP/1.1 200 OK
Content-Type: application/json
{
"AnnounceData": Array,
"Categories": Array,
"Category": Object,
"CategoryID": "123",
"CountDiscussions": "123",
"Discussions": Array
}
Authentication required
DELETE /api/categories/:id HTTP/1.1
HTTP/1.1 200
Content-Type: application/json
{}
Authentication required
POST /api/categories/:id/follow HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{}
Authentication required
POST /api/categories/:id/unfollow HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{}
Authentication optional
GET /api/discussions HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"Announcements": Array,
"Category": false,
"CountDiscussions": "123",
"Discussions": Array
}
Authentication required
POST /api/discussions HTTP/1.1
Content-Type: application/json
{
"Name": "Foo Bar",
"Body": "Lorem ipsum dolor sit amet",
"CategoryID": 2
}
The newly created discussion.
HTTP/1.1 200 OK
Content-Type: application/json
{
"Discussion": Object,
"Type": "Discussion"
}
Authentication optional
GET /api/discussions/:id HTTP/1.1
The requested discussion if found and if the authorized user has permission to access it.
HTTP/1.1 200 OK
Content-Type: application/json
{
"Category": Object,
"Discussion": Object,
"Page": "1"
}
Authentication required
PUT /api/discussions/:id HTTP/1.1
Content-Type: application/json
{
"Name": "Foo Bar",
"Body": "Lorem ipsum dolor sit amet",
"CategoryID": 2
}
The updated discussion.
HTTP/1.1 200 OK
Content-Type: application/json
{
"Discussion": Object,
"Type": "Discussion"
}
Authentication required
DELETE /api/discussions/:id HTTP/1.1
The discussion was removed successfully.
HTTP/1.1 200 OK
Content-Type: application/json
Authentication required
POST /api/discussions/:id/announce HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{}
Authentication required
POST /api/discussions/:id/unannounce HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{}
Authentication required
POST /api/discussions/:id/dismiss HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{}
Authentication required
POST /api/discussions/:id/sink HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{}
Authentication required
POST /api/discussions/:id/unsink HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{}
Authentication required
POST /api/discussions/:id/close HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{}
Authentication required
POST /api/discussions/:id/open HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{}
Authentication required
POST /api/discussions/:id/bookmark HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{}
Authentication required
POST /api/discussions/:id/unbookmark HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{}
Authentication required
POST /api/discussions/:id/comments
Content-Type: application/json
{
"Body": "Lorem ipsum dolor amet",
"Format": "Markdown"
}
The newly created comment.
HTTP/1.1 200 OK
Content-Type: application/json
{
"Comment": Object
}
Authentication required
PUT /api/discussions/comments/:id HTTP/1.1
Content-Type: application/json
{
"Body": "Lorem ipsum dolor amet"
}
The updated comment.
HTTP/1.1 200 OK
Content-Type: application/json
{
"Comment": Object
}
Authentication required
DELETE /api/discussions/comments/:id HTTP/1.1
The comment was removed successfully.
HTTP/1.1 200 OK
Content-Type: application/json
{}
Authentication required
GET /api/discussions/bookmarks HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"CountDiscussions": "123",
"Discussions": Array
}
Authentication required
GET /api/discussions/mine HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"CountDiscussions": "123",
"Discussions": Array
}
Authentication optional
GET /api/activities HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"Activities": Array,
"Filter": "public"
}
Authentication required
POST /api/activities HTTP/1.1
Content-Type: application/json
{
"Comment": "Lorem ipsum dolor sit amet"
}
HTTP/1.1 200 OK
Content-Type: application/json
{
"Activities": Array
}
Authentication required
GET /api/activities/:id HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"ActivityData": Array,
"Comments": Array
}
Authentication required
DELETE /api/activities/:id HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{}
POST /api/activities/:id/comments HTTP/1.1
Content-Type: application/json
{
"Body": "Lorem ipsum dolor sit amet"
}
#### Response
```http
HTTP/1.1 200 OK
Content-Type: application/json
{
"Comment": Object
}
DELETE /api/activities/comments/:id HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{}
Authentication required
GET /api/conversations HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"Conversations": Array
}
Authentication required
POST /api/conversations HTTP/1.1
Content-Type: application/json
{
"To": "",
"Body": ""
}
Authentication required
GET /api/conversations/:id HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"Conversation": Object,
"Messages": Array
}
Authentication required
DELETE /api/conversations/:id HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{}
Authentication required
POST /api/conversations/:id/messages HTTP/1.1
Content-Type: application/json
{
"Body": ""
}
HTTP/1.1 200 OK
Content-Type: application/json
{
"Messages": Array
}
Authentication required
GET /api/users HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"RecordCount": "123",
"Users": Array
}
Authentication required
POST /api/users HTTP/1.1
Content-Type: application/json
{
"Name": "John Doe",
"Email": "john@example.com",
"Password": "foo",
"RoleID": [123]
}
HTTP/1.1 200 OK
Content-Type: application/json
{
"AllowEditing": true,
"Roles": Object,
"User": Object,
"UserRoles": Object
}
Authentication optional
GET /api/users/:id HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"Activities": Array,
"Profile": Object,
"UserRoles": Array
}
Authentication required
PUT /api/users/:id HTTP/1.1
Content-Type: application/json
{
"Name": "John Doe",
"Email": "john@example.com",
"Password": "foo",
"RoleID": [123]
}
HTTP/1.1 200 OK
Content-Type: application/json
{
"AllowEditing": true,
"Roles": Object,
"User": Object,
"UserRoles": Object
}
Authentication required
DELETE /api/users/:id HTTP/1.1
Content-Type: application/json
{
"Method": "keep|wipe|delete"
}
HTTP/1.1 200 OK
Content-Type: application/json
{}
Authentication optional
GET /api/users/summary HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"UserData": Array
}
Authentication required
GET /api/roles HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"Roles": Array
}
Authentication required
POST /api/roles HTTP/1.1
Content-Type: application/json
{
"Name": "Foo",
"Description": "Lorem ipsum dolor sit amet",
"PersonalInfo": false,
"Permission": Array
}
HTTP/1.1 200 OK
Content-Type: application/json
{
"PermissionData": Object
}
Authentication required
GET /api/roles/:id HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"Roles": Array
}
Authentication required
PUT /api/roles/:id HTTP/1.1
Content-Type: application/json
{
"Name": "Foo",
"Description": "Lorem ipsum dolor sit amet",
"PersonalInfo": false,
"Permission": Array
}
HTTP/1.1 200 OK
Content-Type: application/json
{
"PermissionData": Object
}
Authentication required
DELETE /api/roles/:id HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{}
Authentication required
GET /api/moderation/bans HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"Bans": Array
}
Authentication required
POST /api/moderation/bans HTTP/1.1
Content-Type: application/json
{
"BanType": "IPAdress|Email|Name",
"BanValue": "127.0.0.1|john@example.com|johndoe",
"Notes": "Lorem ipsum dolor sit amet"
}
HTTP/1.1 200 OK
Content-Type: application/json
[]
Authentication required
PUT /api/moderation/bans/:id HTTP/1.1
Content-Type: application/json
{
"BanType": "IPAdress|Email|Name",
"BanValue": "127.0.0.1|john@example.com|johndoe",
"Notes": "Lorem ipsum dolor sit amet"
}
HTTP/1.1 200 OK
Content-Type: application/json
[]
Authentication required
DELETE /api/moderation/bans/:id HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
[]
Authentication required
GET /api/logs/spam HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"Log": Array,
"RecordCount": "123"
}
Authentication required
GET /api/logs/moderation HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"Log": Array,
"RecordCount": "123"
}
Authentication required
GET /api/logs/edits HTTP/1.1
HTTP/1.1 200 OK
Content-Type: application/json
{
"Log": Array,
"RecordCount": "123"
}
Copyright © 2013-2017 Kasper Kronborg Isager. Licensed under the terms of the MIT License.
Configuration
Get the current configuration
Search
Perform a search
Categories
Find all categories
Create a new category
Find a category
Update a category
Remove a category
Follow a category
Unfollow a category
Discussions
Find all discussions
Create a new discussion
Find a discussion
Update a discussion
Remove a discussion
Announce a discussion
Unannounce a discussion
Dismiss an announced discussion
Sink a discussion
Unsink a discussion
Close a discussion
Re-open a discussion
Bookmark a discussion
Unbookmark a discussion
Create a new comment
Update a comment
Remove a comment
Find bookmarked discussions
Find own discussions
Activities
Find all activities
Create a new activity
Find an activity
Remove an activity
Create an activity comment
Remove an activity comment
Conversations
Find all conversations
Create a new conversation
Find a conversation
Remove a conversation
Create a new message
Users
Find all users
Create a new user
Find a user
Update a user
Remove a user
Get a summary of all users
Roles
Find all roles
Create a new role
Find a role
Update a role
Remove a role
Moderation
Find all bans
Create a new ban
Update a ban
Remove a ban
Logs
Find all spam log entries
Find all moderation log entries
Find all change log entries