mirror of
https://github.com/discourse/discourse.git
synced 2025-02-25 18:55:32 -06:00
DEV: Document some of the badge api endpoints (#13919)
Adding some api documentation for the badge routes.
This commit is contained in:
17
spec/requests/api/schemas/json/badge_create_request.json
Normal file
17
spec/requests/api/schemas/json/badge_create_request.json
Normal file
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string",
|
||||
"description": "The name for the new badge."
|
||||
},
|
||||
"badge_type_id": {
|
||||
"type": "integer",
|
||||
"description": "The ID for the badge type. 1 for Gold, 2 for Silver, 3 for Bronze."
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"name",
|
||||
"badge_type_id"
|
||||
]
|
||||
}
|
||||
135
spec/requests/api/schemas/json/badge_create_response.json
Normal file
135
spec/requests/api/schemas/json/badge_create_response.json
Normal file
@@ -0,0 +1,135 @@
|
||||
{
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"badge_types": {
|
||||
"type": "array",
|
||||
"items": [
|
||||
{
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "integer"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"sort_order": {
|
||||
"type": "integer"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"id",
|
||||
"name",
|
||||
"sort_order"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"badge": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "integer"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"description": {
|
||||
"type": "string"
|
||||
},
|
||||
"grant_count": {
|
||||
"type": "integer"
|
||||
},
|
||||
"allow_title": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"multiple_grant": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"icon": {
|
||||
"type": "string"
|
||||
},
|
||||
"image_url": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"listable": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"enabled": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"badge_grouping_id": {
|
||||
"type": "integer"
|
||||
},
|
||||
"system": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"long_description": {
|
||||
"type": "string"
|
||||
},
|
||||
"slug": {
|
||||
"type": "string"
|
||||
},
|
||||
"manually_grantable": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"query": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"trigger": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"target_posts": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"auto_revoke": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"show_posts": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"badge_type_id": {
|
||||
"type": "integer"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"id",
|
||||
"name",
|
||||
"description",
|
||||
"grant_count",
|
||||
"allow_title",
|
||||
"multiple_grant",
|
||||
"icon",
|
||||
"image_url",
|
||||
"listable",
|
||||
"enabled",
|
||||
"badge_grouping_id",
|
||||
"system",
|
||||
"long_description",
|
||||
"slug",
|
||||
"manually_grantable",
|
||||
"query",
|
||||
"trigger",
|
||||
"target_posts",
|
||||
"auto_revoke",
|
||||
"show_posts",
|
||||
"badge_type_id"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"badge_types",
|
||||
"badge"
|
||||
]
|
||||
}
|
||||
251
spec/requests/api/schemas/json/badge_list_response.json
Normal file
251
spec/requests/api/schemas/json/badge_list_response.json
Normal file
@@ -0,0 +1,251 @@
|
||||
{
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"badges": {
|
||||
"type": "array",
|
||||
"items": [
|
||||
{
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "integer"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"description": {
|
||||
"type": "string"
|
||||
},
|
||||
"grant_count": {
|
||||
"type": "integer"
|
||||
},
|
||||
"allow_title": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"multiple_grant": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"icon": {
|
||||
"type": "string"
|
||||
},
|
||||
"image_url": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"listable": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"enabled": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"badge_grouping_id": {
|
||||
"type": "integer"
|
||||
},
|
||||
"system": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"long_description": {
|
||||
"type": "string"
|
||||
},
|
||||
"slug": {
|
||||
"type": "string"
|
||||
},
|
||||
"manually_grantable": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"query": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"trigger": {
|
||||
"type": [
|
||||
"integer",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"target_posts": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"auto_revoke": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"show_posts": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"i18n_name": {
|
||||
"type": "string"
|
||||
},
|
||||
"badge_type_id": {
|
||||
"type": "integer"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"id",
|
||||
"name",
|
||||
"description",
|
||||
"grant_count",
|
||||
"allow_title",
|
||||
"multiple_grant",
|
||||
"icon",
|
||||
"image_url",
|
||||
"listable",
|
||||
"enabled",
|
||||
"badge_grouping_id",
|
||||
"system",
|
||||
"long_description",
|
||||
"slug",
|
||||
"manually_grantable",
|
||||
"query",
|
||||
"trigger",
|
||||
"target_posts",
|
||||
"auto_revoke",
|
||||
"show_posts",
|
||||
"i18n_name",
|
||||
"badge_type_id"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"badge_types": {
|
||||
"type": "array",
|
||||
"items": [
|
||||
{
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "integer"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"sort_order": {
|
||||
"type": "integer"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"id",
|
||||
"name",
|
||||
"sort_order"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"badge_groupings": {
|
||||
"type": "array",
|
||||
"items": [
|
||||
{
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "integer"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"description": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"position": {
|
||||
"type": "integer"
|
||||
},
|
||||
"system": {
|
||||
"type": "boolean"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"id",
|
||||
"name",
|
||||
"description",
|
||||
"position",
|
||||
"system"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"admin_badges": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"protected_system_fields": {
|
||||
"type": "array",
|
||||
"items": [
|
||||
|
||||
]
|
||||
},
|
||||
"triggers": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"user_change": {
|
||||
"type": "integer"
|
||||
},
|
||||
"none": {
|
||||
"type": "integer"
|
||||
},
|
||||
"post_revision": {
|
||||
"type": "integer"
|
||||
},
|
||||
"trust_level_change": {
|
||||
"type": "integer"
|
||||
},
|
||||
"post_processed": {
|
||||
"type": "integer"
|
||||
},
|
||||
"post_action": {
|
||||
"type": "integer"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"user_change",
|
||||
"none",
|
||||
"post_revision",
|
||||
"trust_level_change",
|
||||
"post_processed",
|
||||
"post_action"
|
||||
]
|
||||
},
|
||||
"badge_ids": {
|
||||
"type": "array",
|
||||
"items": [
|
||||
|
||||
]
|
||||
},
|
||||
"badge_grouping_ids": {
|
||||
"type": "array",
|
||||
"items": [
|
||||
|
||||
]
|
||||
},
|
||||
"badge_type_ids": {
|
||||
"type": "array",
|
||||
"items": [
|
||||
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"protected_system_fields",
|
||||
"triggers",
|
||||
"badge_ids",
|
||||
"badge_grouping_ids",
|
||||
"badge_type_ids"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"badges",
|
||||
"badge_types",
|
||||
"badge_groupings",
|
||||
"admin_badges"
|
||||
]
|
||||
}
|
||||
17
spec/requests/api/schemas/json/badge_update_request.json
Normal file
17
spec/requests/api/schemas/json/badge_update_request.json
Normal file
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string",
|
||||
"description": "The name for the new badge."
|
||||
},
|
||||
"badge_type_id": {
|
||||
"type": "integer",
|
||||
"description": "The ID for the badge type. 1 for Gold, 2 for Silver, 3 for Bronze."
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"name",
|
||||
"badge_type_id"
|
||||
]
|
||||
}
|
||||
135
spec/requests/api/schemas/json/badge_update_response.json
Normal file
135
spec/requests/api/schemas/json/badge_update_response.json
Normal file
@@ -0,0 +1,135 @@
|
||||
{
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"badge_types": {
|
||||
"type": "array",
|
||||
"items": [
|
||||
{
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "integer"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"sort_order": {
|
||||
"type": "integer"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"id",
|
||||
"name",
|
||||
"sort_order"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"badge": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "integer"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"description": {
|
||||
"type": "string"
|
||||
},
|
||||
"grant_count": {
|
||||
"type": "integer"
|
||||
},
|
||||
"allow_title": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"multiple_grant": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"icon": {
|
||||
"type": "string"
|
||||
},
|
||||
"image_url": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"listable": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"enabled": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"badge_grouping_id": {
|
||||
"type": "integer"
|
||||
},
|
||||
"system": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"long_description": {
|
||||
"type": "string"
|
||||
},
|
||||
"slug": {
|
||||
"type": "string"
|
||||
},
|
||||
"manually_grantable": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"query": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"trigger": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"target_posts": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"auto_revoke": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"show_posts": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"badge_type_id": {
|
||||
"type": "integer"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"id",
|
||||
"name",
|
||||
"description",
|
||||
"grant_count",
|
||||
"allow_title",
|
||||
"multiple_grant",
|
||||
"icon",
|
||||
"image_url",
|
||||
"listable",
|
||||
"enabled",
|
||||
"badge_grouping_id",
|
||||
"system",
|
||||
"long_description",
|
||||
"slug",
|
||||
"manually_grantable",
|
||||
"query",
|
||||
"trigger",
|
||||
"target_posts",
|
||||
"auto_revoke",
|
||||
"show_posts",
|
||||
"badge_type_id"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"badge_types",
|
||||
"badge"
|
||||
]
|
||||
}
|
||||
201
spec/requests/api/schemas/json/user_badges_response.json
Normal file
201
spec/requests/api/schemas/json/user_badges_response.json
Normal file
@@ -0,0 +1,201 @@
|
||||
{
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"badges": {
|
||||
"type": "array",
|
||||
"items": [
|
||||
{
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "integer"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"description": {
|
||||
"type": "string"
|
||||
},
|
||||
"grant_count": {
|
||||
"type": "integer"
|
||||
},
|
||||
"allow_title": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"multiple_grant": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"icon": {
|
||||
"type": "string"
|
||||
},
|
||||
"image_url": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"listable": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"enabled": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"badge_grouping_id": {
|
||||
"type": "integer"
|
||||
},
|
||||
"system": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"slug": {
|
||||
"type": "string"
|
||||
},
|
||||
"manually_grantable": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"badge_type_id": {
|
||||
"type": "integer"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"id",
|
||||
"name",
|
||||
"description",
|
||||
"grant_count",
|
||||
"allow_title",
|
||||
"multiple_grant",
|
||||
"icon",
|
||||
"image_url",
|
||||
"listable",
|
||||
"enabled",
|
||||
"badge_grouping_id",
|
||||
"system",
|
||||
"slug",
|
||||
"manually_grantable",
|
||||
"badge_type_id"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"badge_types": {
|
||||
"type": "array",
|
||||
"items": [
|
||||
{
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "integer"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"sort_order": {
|
||||
"type": "integer"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"id",
|
||||
"name",
|
||||
"sort_order"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"granted_bies": {
|
||||
"type": "array",
|
||||
"items": [
|
||||
{
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "integer"
|
||||
},
|
||||
"username": {
|
||||
"type": "string"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"avatar_template": {
|
||||
"type": "string"
|
||||
},
|
||||
"flair_name": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"admin": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"moderator": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"trust_level": {
|
||||
"type": "integer"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"id",
|
||||
"username",
|
||||
"name",
|
||||
"avatar_template",
|
||||
"flair_name",
|
||||
"admin",
|
||||
"moderator",
|
||||
"trust_level"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"user_badges": {
|
||||
"type": "array",
|
||||
"items": [
|
||||
{
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "integer"
|
||||
},
|
||||
"granted_at": {
|
||||
"type": "string"
|
||||
},
|
||||
"grouping_position": {
|
||||
"type": "integer"
|
||||
},
|
||||
"is_favorite": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"can_favorite": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"badge_id": {
|
||||
"type": "integer"
|
||||
},
|
||||
"granted_by_id": {
|
||||
"type": "integer"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"id",
|
||||
"granted_at",
|
||||
"grouping_position",
|
||||
"is_favorite",
|
||||
"can_favorite",
|
||||
"badge_id",
|
||||
"granted_by_id"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"user_badges"
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user