API (v1)
Download OpenAPI specification:Download
get_challenge_list
Endpoint to get Challenge objects in bulk
Authorizations:
query Parameters
| name | string |
| max_attempts | integer |
| value | integer |
| category | string |
| type | string |
| state | string |
| q | string |
| field | string Enum: "name" "description" "category" "type" "state" |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": [
- {
- "id": 0,
- "name": "string",
- "description": "string",
- "attribution": "string",
- "connection_info": "string",
- "next_id": 0,
- "max_attempts": 0,
- "value": 0,
- "category": "string",
- "type": "string",
- "state": "string",
- "logic": "string",
- "requirements": { },
- "solves": 0,
- "solved_by_me": true
}
]
}Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "name": "string",
- "description": "string",
- "attribution": "string",
- "connection_info": "string",
- "next_id": 0,
- "max_attempts": 0,
- "value": 0,
- "category": "string",
- "type": "string",
- "state": "string",
- "logic": "string",
- "requirements": { },
- "solves": 0,
- "solved_by_me": true
}
}get_challenge
Endpoint to get a specific Challenge object
Authorizations:
path Parameters
| challenge_id required | string |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "name": "string",
- "description": "string",
- "attribution": "string",
- "connection_info": "string",
- "next_id": 0,
- "max_attempts": 0,
- "value": 0,
- "category": "string",
- "type": "string",
- "state": "string",
- "logic": "string",
- "requirements": { },
- "solves": 0,
- "solved_by_me": true
}
}patch_challenge
Endpoint to edit a specific Challenge object
Authorizations:
path Parameters
| challenge_id required | string |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "name": "string",
- "description": "string",
- "attribution": "string",
- "connection_info": "string",
- "next_id": 0,
- "max_attempts": 0,
- "value": 0,
- "category": "string",
- "type": "string",
- "state": "string",
- "logic": "string",
- "requirements": { },
- "solves": 0,
- "solved_by_me": true
}
}get_award_list
Endpoint to list Award objects in bulk
Authorizations:
query Parameters
| user_id | integer |
| team_id | integer |
| type | string |
| value | integer |
| category | integer |
| icon | integer |
| q | string |
| field | string Enum: "name" "description" "category" "icon" |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": [
- {
- "id": 0,
- "user_id": 0,
- "team_id": 0,
- "type": "string",
- "name": "string",
- "description": "string",
- "date": "2019-08-24T14:15:22Z",
- "value": 0,
- "category": "string",
- "icon": "string",
- "requirements": { }
}
]
}Response samples
- 200
- 400
{- "success": true,
- "data": [
- {
- "id": 0,
- "user_id": 0,
- "team_id": 0,
- "type": "string",
- "name": "string",
- "description": "string",
- "date": "2019-08-24T14:15:22Z",
- "value": 0,
- "category": "string",
- "icon": "string",
- "requirements": { }
}
]
}get_award
Endpoint to get a specific Award object
Authorizations:
path Parameters
| award_id required | string An Award ID |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "user_id": 0,
- "team_id": 0,
- "type": "string",
- "name": "string",
- "description": "string",
- "date": "2019-08-24T14:15:22Z",
- "value": 0,
- "category": "string",
- "icon": "string",
- "requirements": { }
}
}get_hint_list
Endpoint to list Hint objects in bulk
Authorizations:
query Parameters
| type | string |
| challenge_id | integer |
| content | string |
| cost | integer |
| q | string |
| field | string Enum: "type" "content" |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": [
- {
- "id": 0,
- "title": "string",
- "type": "string",
- "challenge_id": 0,
- "content": "string",
- "cost": 0,
- "requirements": { }
}
]
}get_hint
Endpoint to get a specific Hint object
Authorizations:
path Parameters
| hint_id required | string |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "title": "string",
- "type": "string",
- "challenge_id": 0,
- "content": "string",
- "cost": 0,
- "requirements": { }
}
}patch_hint
Endpoint to edit a specific Hint object
Authorizations:
path Parameters
| hint_id required | string |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "title": "string",
- "type": "string",
- "challenge_id": 0,
- "content": "string",
- "cost": 0,
- "requirements": { }
}
}get_flag_list
Endpoint to list Flag objects in bulk
Authorizations:
query Parameters
| challenge_id | integer |
| type | string |
| content | string |
| data | string |
| q | string |
| field | string Enum: "type" "content" "data" |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": [
- {
- "id": 0,
- "challenge_id": 0,
- "type": "string",
- "content": "string",
- "data": "string"
}
]
}get_submissions_list
Endpoint to get submission objects in bulk
Authorizations:
query Parameters
| challenge_id | integer |
| user_id | integer |
| team_id | integer |
| ip | string |
| provided | string |
| type | string |
| q | string |
| field | string Enum: "challenge_id" "user_id" "team_id" "ip" "provided" "type" |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": [
- {
- "id": 0,
- "challenge_id": 0,
- "user_id": 0,
- "team_id": 0,
- "ip": "string",
- "provided": "string",
- "type": "string",
- "date": "2019-08-24T14:15:22Z"
}
], - "meta": {
- "pagination": {
- "page": 0,
- "next": 0,
- "prev": 0,
- "pages": 0,
- "per_page": 0,
- "total": 0
}
}
}post_submissions_list
Endpoint to create a submission object. Users should interact with the attempt endpoint to submit flags.
Authorizations:
Request Body schema: application/json
| challenge_id | integer |
| user_id | integer |
| team_id | integer |
| ip | string |
| provided | string |
| type | string |
| date | string <date-time> |
Responses
Request samples
- Payload
{- "challenge_id": 0,
- "user_id": 0,
- "team_id": 0,
- "ip": "string",
- "provided": "string",
- "type": "string",
- "date": "2019-08-24T14:15:22Z"
}Response samples
- 200
- 400
{- "success": true,
- "data": [
- {
- "id": 0,
- "challenge_id": 0,
- "user_id": 0,
- "team_id": 0,
- "ip": "string",
- "provided": "string",
- "type": "string",
- "date": "2019-08-24T14:15:22Z"
}
], - "meta": {
- "pagination": {
- "page": 0,
- "next": 0,
- "prev": 0,
- "pages": 0,
- "per_page": 0,
- "total": 0
}
}
}get_submission
Endpoint to get a submission object
Authorizations:
path Parameters
| submission_id required | string A Submission ID |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "challenge_id": 0,
- "user_id": 0,
- "team_id": 0,
- "ip": "string",
- "provided": "string",
- "type": "string",
- "date": "2019-08-24T14:15:22Z"
}
}patch_submission
Endpoint to edit a submission object
Authorizations:
path Parameters
| submission_id required | string A Submission ID |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "challenge_id": 0,
- "user_id": 0,
- "team_id": 0,
- "ip": "string",
- "provided": "string",
- "type": "string",
- "date": "2019-08-24T14:15:22Z"
}
}get_team_list
Endpoint to get Team objects in bulk
Authorizations:
query Parameters
| affiliation | string |
| country | string |
| bracket | string |
| q | string |
| field | string Enum: "name" "website" "country" "bracket" "affiliation" "email" |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": [
- {
- "id": 0,
- "oauth_id": 0,
- "name": "string",
- "email": "string",
- "password": "string",
- "secret": "string",
- "website": "string",
- "affiliation": "string",
- "country": "string",
- "bracket_id": 0,
- "hidden": true,
- "banned": true,
- "captain_id": 0,
- "created": "2019-08-24T14:15:22Z"
}
], - "meta": {
- "pagination": {
- "page": 0,
- "next": 0,
- "prev": 0,
- "pages": 0,
- "per_page": 0,
- "total": 0
}
}
}Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "oauth_id": 0,
- "name": "string",
- "email": "string",
- "password": "string",
- "secret": "string",
- "website": "string",
- "affiliation": "string",
- "country": "string",
- "bracket_id": 0,
- "hidden": true,
- "banned": true,
- "captain_id": 0,
- "created": "2019-08-24T14:15:22Z"
}
}get_team_private
Endpoint to get the current user's Team object
Authorizations:
query Parameters
| team_id | string Current Team |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "oauth_id": 0,
- "name": "string",
- "email": "string",
- "password": "string",
- "secret": "string",
- "website": "string",
- "affiliation": "string",
- "country": "string",
- "bracket_id": 0,
- "hidden": true,
- "banned": true,
- "captain_id": 0,
- "created": "2019-08-24T14:15:22Z"
}
}patch_team_private
Endpoint to edit the current user's Team object
Authorizations:
query Parameters
| team_id | string Current Team |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "oauth_id": 0,
- "name": "string",
- "email": "string",
- "password": "string",
- "secret": "string",
- "website": "string",
- "affiliation": "string",
- "country": "string",
- "bracket_id": 0,
- "hidden": true,
- "banned": true,
- "captain_id": 0,
- "created": "2019-08-24T14:15:22Z"
}
}get_team_public
Endpoint to get a specific Team object
Authorizations:
path Parameters
| team_id required | integer Team ID |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "oauth_id": 0,
- "name": "string",
- "email": "string",
- "password": "string",
- "secret": "string",
- "website": "string",
- "affiliation": "string",
- "country": "string",
- "bracket_id": 0,
- "hidden": true,
- "banned": true,
- "captain_id": 0,
- "created": "2019-08-24T14:15:22Z"
}
}patch_team_public
Endpoint to edit a specific Team object
Authorizations:
path Parameters
| team_id required | integer Team ID |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "oauth_id": 0,
- "name": "string",
- "email": "string",
- "password": "string",
- "secret": "string",
- "website": "string",
- "affiliation": "string",
- "country": "string",
- "bracket_id": 0,
- "hidden": true,
- "banned": true,
- "captain_id": 0,
- "created": "2019-08-24T14:15:22Z"
}
}get_user_list
Endpoint to get User objects in bulk
Authorizations:
query Parameters
| affiliation | string |
| country | string |
| bracket | string |
| q | string |
| field | string Enum: "name" "website" "country" "bracket" "affiliation" "email" |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": [
- {
- "id": 0,
- "oauth_id": 0,
- "name": "string",
- "password": "string",
- "email": "string",
- "type": "string",
- "secret": "string",
- "website": "string",
- "affiliation": "string",
- "country": "string",
- "bracket_id": 0,
- "hidden": true,
- "banned": true,
- "verified": true,
- "language": "string",
- "change_password": true,
- "team_id": 0,
- "created": "2019-08-24T14:15:22Z"
}
], - "meta": {
- "pagination": {
- "page": 0,
- "next": 0,
- "prev": 0,
- "pages": 0,
- "per_page": 0,
- "total": 0
}
}
}post_user_list
Endpoint to create a User object
Authorizations:
query Parameters
| notify | string Whether to send the created user an email with their credentials |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "oauth_id": 0,
- "name": "string",
- "password": "string",
- "email": "string",
- "type": "string",
- "secret": "string",
- "website": "string",
- "affiliation": "string",
- "country": "string",
- "bracket_id": 0,
- "hidden": true,
- "banned": true,
- "verified": true,
- "language": "string",
- "change_password": true,
- "team_id": 0,
- "created": "2019-08-24T14:15:22Z"
}
}get_user_private
Endpoint to get the User object for the current user
Authorizations:
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "oauth_id": 0,
- "name": "string",
- "password": "string",
- "email": "string",
- "type": "string",
- "secret": "string",
- "website": "string",
- "affiliation": "string",
- "country": "string",
- "bracket_id": 0,
- "hidden": true,
- "banned": true,
- "verified": true,
- "language": "string",
- "change_password": true,
- "team_id": 0,
- "created": "2019-08-24T14:15:22Z"
}
}patch_user_private
Endpoint to edit the User object for the current user
Authorizations:
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "oauth_id": 0,
- "name": "string",
- "password": "string",
- "email": "string",
- "type": "string",
- "secret": "string",
- "website": "string",
- "affiliation": "string",
- "country": "string",
- "bracket_id": 0,
- "hidden": true,
- "banned": true,
- "verified": true,
- "language": "string",
- "change_password": true,
- "team_id": 0,
- "created": "2019-08-24T14:15:22Z"
}
}get_user_public
Endpoint to get a specific User object
Authorizations:
path Parameters
| user_id required | integer User ID |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "oauth_id": 0,
- "name": "string",
- "password": "string",
- "email": "string",
- "type": "string",
- "secret": "string",
- "website": "string",
- "affiliation": "string",
- "country": "string",
- "bracket_id": 0,
- "hidden": true,
- "banned": true,
- "verified": true,
- "language": "string",
- "change_password": true,
- "team_id": 0,
- "created": "2019-08-24T14:15:22Z"
}
}patch_user_public
Endpoint to edit a specific User object
Authorizations:
path Parameters
| user_id required | integer User ID |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "oauth_id": 0,
- "name": "string",
- "password": "string",
- "email": "string",
- "type": "string",
- "secret": "string",
- "website": "string",
- "affiliation": "string",
- "country": "string",
- "bracket_id": 0,
- "hidden": true,
- "banned": true,
- "verified": true,
- "language": "string",
- "change_password": true,
- "team_id": 0,
- "created": "2019-08-24T14:15:22Z"
}
}get_files_list
Endpoint to get file objects in bulk
Authorizations:
query Parameters
| type | string |
| location | string |
| q | string |
| field | string Enum: "type" "location" |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": [
- {
- "id": 0,
- "type": "string",
- "location": "string",
- "sha1sum": "string"
}
]
}post_files_list
Endpoint to get file objects in bulk
Authorizations:
Request Body schema: multipart/form-data
| challenge_id | integer |
| challenge | integer |
| page_id | integer |
| page | integer |
| solution_id | integer |
| solution | integer |
| type | string |
| location | string |
| file required | string <binary> The file to upload |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "type": "string",
- "location": "string",
- "sha1sum": "string"
}
}get_notificantion_list
Endpoint to get notification objects in bulk
Authorizations:
query Parameters
| title | string |
| content | string |
| user_id | integer |
| team_id | integer |
| q | string |
| field | string Enum: "title" "content" |
| since_id | integer |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": [
- {
- "id": 0,
- "title": "string",
- "content": "string",
- "date": "2019-08-24T14:15:22Z",
- "user_id": 0,
- "team_id": 0
}
]
}head_notificantion_list
Endpoint to get statistics for notification objects in bulk
Authorizations:
query Parameters
| title | string |
| content | string |
| user_id | integer |
| team_id | integer |
| q | string |
| field | string Enum: "title" "content" |
| since_id | integer |
Responses
Response samples
- 200
{- "success": true
}get_notification
Endpoint to get a specific notification object
Authorizations:
path Parameters
| notification_id required | string A Notification ID |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "title": "string",
- "content": "string",
- "date": "2019-08-24T14:15:22Z",
- "user_id": 0,
- "team_id": 0
}
}get_page_list
Endpoint to get page objects in bulk
Authorizations:
query Parameters
| id | integer |
| title | string |
| route | string |
| draft | boolean |
| hidden | boolean |
| auth_required | boolean |
| q | string |
| field | string Enum: "title" "route" "content" |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": [
- {
- "id": 0,
- "title": "string",
- "route": "string",
- "content": "string",
- "draft": true,
- "hidden": true,
- "auth_required": true,
- "format": "string",
- "link_target": "string"
}
]
}post_page_list
Endpoint to create a page object
Authorizations:
Request Body schema: application/json
| title | string |
| route | string |
| content | string |
| draft | boolean |
| hidden | boolean |
| auth_required | boolean |
| format | string |
| link_target | string |
Responses
Request samples
- Payload
{- "title": "string",
- "route": "string",
- "content": "string",
- "draft": true,
- "hidden": true,
- "auth_required": true,
- "format": "string",
- "link_target": "string"
}Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "title": "string",
- "route": "string",
- "content": "string",
- "draft": true,
- "hidden": true,
- "auth_required": true,
- "format": "string",
- "link_target": "string"
}
}get_page_detail
Endpoint to read a page object
Authorizations:
path Parameters
| page_id required | string ID of a page object |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "title": "string",
- "route": "string",
- "content": "string",
- "draft": true,
- "hidden": true,
- "auth_required": true,
- "format": "string",
- "link_target": "string"
}
}patch_page_detail
Endpoint to edit a page object
Authorizations:
path Parameters
| page_id required | string ID of a page object |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "title": "string",
- "route": "string",
- "content": "string",
- "draft": true,
- "hidden": true,
- "auth_required": true,
- "format": "string",
- "link_target": "string"
}
}get_unlock_list
Endpoint to get unlock objects in bulk
Authorizations:
query Parameters
| user_id | integer |
| team_id | integer |
| target | integer |
| type | string |
| q | string |
| field | string Enum: "target" "type" |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": [
- {
- "id": 0,
- "user_id": 0,
- "team_id": 0,
- "target": 0,
- "date": "2019-08-24T14:15:22Z",
- "type": "string"
}
]
}Response samples
- 200
- 400
{- "success": true,
- "data": [
- {
- "id": 0,
- "type": "string",
- "user_id": 0,
- "created": "2019-08-24T14:15:22Z",
- "expiration": "2019-08-24T14:15:22Z",
- "description": "string",
- "value": "string"
}
]
}Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "type": "string",
- "user_id": 0,
- "created": "2019-08-24T14:15:22Z",
- "expiration": "2019-08-24T14:15:22Z",
- "description": "string",
- "value": "string"
}
}get_token_detail
Endpoint to get an existing token object
Authorizations:
path Parameters
| token_id required | string A Token ID |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": {
- "id": 0,
- "type": "string",
- "user_id": 0,
- "created": "2019-08-24T14:15:22Z",
- "expiration": "2019-08-24T14:15:22Z",
- "description": "string"
}
}get_comment_list
Endpoint to list Comment objects in bulk
Authorizations:
query Parameters
| challenge_id | integer |
| user_id | integer |
| team_id | integer |
| page_id | integer |
| q | string |
| field | string Value: "content" |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": [
- {
- "id": 0,
- "type": "string",
- "content": "string",
- "date": "2019-08-24T14:15:22Z",
- "author_id": 0
}
]
}get_solution_list
Endpoint to get solution objects in bulk
Authorizations:
query Parameters
| state | string |
| q | string |
| field | string Value: "state" |
Responses
Response samples
- 200
- 400
{- "success": true,
- "data": [
- {
- "id": 0,
- "challenge_id": 0,
- "content": "string",
- "state": "string"
}
]
}post_solution_list
Endpoint to create a solution object
Authorizations:
Request Body schema: application/json
| challenge_id | integer |
| content | string |
| state | string |
Responses
Request samples
- Payload
{- "challenge_id": 0,
- "content": "string",
- "state": "string"
}Response samples
- 200
- 400
- 403
{- "success": true,
- "data": {
- "id": 0,
- "challenge_id": 0,
- "content": "string",
- "state": "string"
}
}