Skip to main content

API (v1)

Download OpenAPI specification:Download

challenges

Endpoint to retrieve Challenges

get_challenge_list

Endpoint to get Challenge objects in bulk

Authorizations:
AccessTokenContentType
query Parameters
name
string
max_attempts
integer
value
integer
category
string
type
string
state
string
q
string

Responses

Response samples

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

post_challenge_list

Endpoint to create a Challenge object

Authorizations:
AccessTokenContentType

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

post_challenge_attempt

Authorizations:
AccessTokenContentType

Responses

get_challenge_types

Authorizations:
AccessTokenContentType

Responses

get_challenge

Endpoint to get a specific Challenge object

Authorizations:
AccessTokenContentType
path Parameters
challenge_id
required
string

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

delete_challenge

Endpoint to delete a specific Challenge object

Authorizations:
AccessTokenContentType
path Parameters
challenge_id
required
string

Responses

Response samples

Content type
application/json
{
  • "success": true
}

patch_challenge

Endpoint to edit a specific Challenge object

Authorizations:
AccessTokenContentType
path Parameters
challenge_id
required
string

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

get_challenge_files

Authorizations:
AccessTokenContentType
path Parameters
challenge_id
required
string

Responses

get_challenge_flags

Authorizations:
AccessTokenContentType
path Parameters
challenge_id
required
string

Responses

get_challenge_hints

Authorizations:
AccessTokenContentType
path Parameters
challenge_id
required
string

Responses

get_challenge_requirements

Authorizations:
AccessTokenContentType
path Parameters
challenge_id
required
string

Responses

get_challenge_solves

Authorizations:
AccessTokenContentType
path Parameters
challenge_id
required
string

Responses

get_challenge_tags

Authorizations:
AccessTokenContentType
path Parameters
challenge_id
required
string

Responses

get_challenge_topics

Authorizations:
AccessTokenContentType
path Parameters
challenge_id
required
string

Responses

tags

Endpoint to retrieve Tags

get_tag_list

Endpoint to list Tag objects in bulk

Authorizations:
AccessTokenContentType
query Parameters
challenge_id
integer
value
string
q
string

Responses

Response samples

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

post_tag_list

Endpoint to create a Tag object

Authorizations:
AccessTokenContentType

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

get_tag

Endpoint to get a specific Tag object

Authorizations:
AccessTokenContentType
path Parameters
tag_id
required
string

A Tag ID

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

delete_tag

Endpoint to delete a specific Tag object

Authorizations:
AccessTokenContentType
path Parameters
tag_id
required
string

A Tag ID

Responses

Response samples

Content type
application/json
{
  • "success": true
}

patch_tag

Endpoint to edit a specific Tag object

Authorizations:
AccessTokenContentType
path Parameters
tag_id
required
string

A Tag ID

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

topics

Endpoint to retrieve Topics

get_topic_list

Endpoint to list Topic objects in bulk

Authorizations:
AccessTokenContentType
query Parameters
value
string
q
string

Responses

Response samples

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

delete_topic_list

Endpoint to delete a specific Topic object of a specific type

Authorizations:
AccessTokenContentType
query Parameters
type
string
target_id
integer
Default: 0

Responses

Response samples

Content type
application/json
{
  • "success": true
}

post_topic_list

Endpoint to create a Topic object

Authorizations:
AccessTokenContentType

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

get_topic

Endpoint to get a specific Topic object

Authorizations:
AccessTokenContentType
path Parameters
topic_id
required
string

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

delete_topic

Endpoint to delete a specific Topic object

Authorizations:
AccessTokenContentType
path Parameters
topic_id
required
string

Responses

Response samples

Content type
application/json
{
  • "success": true
}

awards

Endpoint to retrieve Awards

get_award_list

Endpoint to list Award objects in bulk

Authorizations:
AccessTokenContentType
query Parameters
user_id
integer
team_id
integer
type
string
value
integer
category
integer
icon
integer
q
string

Responses

Response samples

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

post_award_list

Endpoint to create an Award object

Authorizations:
AccessTokenContentType

Responses

Response samples

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

get_award

Endpoint to get a specific Award object

Authorizations:
AccessTokenContentType
path Parameters
award_id
required
string

An Award ID

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

delete_award

Endpoint to delete an Award object

Authorizations:
AccessTokenContentType
path Parameters
award_id
required
string

An Award ID

Responses

Response samples

Content type
application/json
{
  • "success": true
}

hints

Endpoint to retrieve Hints

get_hint_list

Endpoint to list Hint objects in bulk

Authorizations:
AccessTokenContentType
query Parameters
type
string
challenge_id
integer
content
string
cost
integer
q
string

Responses

Response samples

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

post_hint_list

Endpoint to create a Hint object

Authorizations:
AccessTokenContentType

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

get_hint

Endpoint to get a specific Hint object

Authorizations:
AccessTokenContentType
path Parameters
hint_id
required
string

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

delete_hint

Endpoint to delete a specific Tag object

Authorizations:
AccessTokenContentType
path Parameters
hint_id
required
string

Responses

Response samples

Content type
application/json
{
  • "success": true
}

patch_hint

Endpoint to edit a specific Hint object

Authorizations:
AccessTokenContentType
path Parameters
hint_id
required
string

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

flags

Endpoint to retrieve Flags

get_flag_list

Endpoint to list Flag objects in bulk

Authorizations:
AccessTokenContentType
query Parameters
challenge_id
integer
type
string
content
string
data
string
q
string

Responses

Response samples

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

post_flag_list

Endpoint to create a Flag object

Authorizations:
AccessTokenContentType

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

get_flag_types

Authorizations:
AccessTokenContentType

Responses

get_flag_types

Authorizations:
AccessTokenContentType
path Parameters
type_name
required
string

Responses

get_flag

Endpoint to get a specific Flag object

Authorizations:
AccessTokenContentType
path Parameters
flag_id
required
string

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

delete_flag

Endpoint to delete a specific Flag object

Authorizations:
AccessTokenContentType
path Parameters
flag_id
required
string

Responses

Response samples

Content type
application/json
{
  • "success": true
}

patch_flag

Endpoint to edit a specific Flag object

Authorizations:
AccessTokenContentType
path Parameters
flag_id
required
string

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

submissions

Endpoint to retrieve Submission

get_submissions_list

Endpoint to get submission objects in bulk

Authorizations:
AccessTokenContentType
query Parameters
challenge_id
integer
user_id
integer
team_id
integer
ip
string
provided
string
type
string
q
string

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": [
    ],
  • "meta": {
    }
}

post_submissions_list

Endpoint to create a submission object. Users should interact with the attempt endpoint to submit flags.

Authorizations:
AccessTokenContentType

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": [
    ],
  • "meta": {
    }
}

get_submission

Endpoint to get a submission object

Authorizations:
AccessTokenContentType
path Parameters
submission_id
required
string

A Submission ID

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

delete_submission

Endpoint to delete a submission object

Authorizations:
AccessTokenContentType
path Parameters
submission_id
required
string

A Submission ID

Responses

Response samples

Content type
application/json
{
  • "success": true
}

patch_submission

Endpoint to edit a submission object

Authorizations:
AccessTokenContentType
path Parameters
submission_id
required
string

A Submission ID

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

scoreboard

Endpoint to retrieve scores

get_scoreboard_list

Authorizations:
AccessTokenContentType

Responses

get_scoreboard_detail

Authorizations:
AccessTokenContentType
path Parameters
count
required
integer

How many top teams to return

Responses

teams

Endpoint to retrieve Teams

get_team_list

Endpoint to get Team objects in bulk

Authorizations:
AccessTokenContentType
query Parameters
affiliation
string
country
string
bracket
string
q
string

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": [
    ],
  • "meta": {
    }
}

post_team_list

Endpoint to create a Team object

Authorizations:
AccessTokenContentType

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

get_team_private

Endpoint to get the current user's Team object

Authorizations:
AccessTokenContentType
query Parameters
team_id
string

Current Team

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

delete_team_private

Endpoint to disband your current team. Can only be used if the team has performed no actions in the CTF.

Authorizations:
AccessTokenContentType
query Parameters
team_id
string

Current Team

Responses

Response samples

Content type
application/json
{
  • "success": true
}

patch_team_private

Endpoint to edit the current user's Team object

Authorizations:
AccessTokenContentType
query Parameters
team_id
string

Current Team

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

get_team_private_awards

Authorizations:
AccessTokenContentType

Responses

get_team_private_fails

Authorizations:
AccessTokenContentType

Responses

post_team_private_members

Authorizations:
AccessTokenContentType

Responses

get_team_private_solves

Authorizations:
AccessTokenContentType

Responses

get_team_public

Endpoint to get a specific Team object

Authorizations:
AccessTokenContentType
path Parameters
team_id
required
integer

Team ID

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

delete_team_public

Endpoint to delete a specific Team object

Authorizations:
AccessTokenContentType
path Parameters
team_id
required
integer

Team ID

Responses

Response samples

Content type
application/json
{
  • "success": true
}

patch_team_public

Endpoint to edit a specific Team object

Authorizations:
AccessTokenContentType
path Parameters
team_id
required
integer

Team ID

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

get_team_public_awards

Authorizations:
AccessTokenContentType
path Parameters
team_id
required
string

Team ID

Responses

get_team_public_fails

Authorizations:
AccessTokenContentType
path Parameters
team_id
required
string

Team ID

Responses

get_team_members

Authorizations:
AccessTokenContentType
path Parameters
team_id
required
string

Team ID

Responses

delete_team_members

Authorizations:
AccessTokenContentType
path Parameters
team_id
required
string

Team ID

Responses

post_team_members

Authorizations:
AccessTokenContentType
path Parameters
team_id
required
string

Team ID

Responses

get_team_public_solves

Authorizations:
AccessTokenContentType
path Parameters
team_id
required
string

Team ID

Responses

users

Endpoint to retrieve Users

get_user_list

Endpoint to get User objects in bulk

Authorizations:
AccessTokenContentType
query Parameters
affiliation
string
country
string
bracket
string
q
string

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": [
    ],
  • "meta": {
    }
}

post_user_list

Endpoint to create a User object

Authorizations:
AccessTokenContentType
query Parameters
notify
string

Whether to send the created user an email with their credentials

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

get_user_private

Endpoint to get the User object for the current user

Authorizations:
AccessTokenContentType

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

patch_user_private

Endpoint to edit the User object for the current user

Authorizations:
AccessTokenContentType

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

get_user_private_awards

Authorizations:
AccessTokenContentType
query Parameters
user_id
string

User ID

Responses

get_user_private_fails

Authorizations:
AccessTokenContentType

Responses

get_user_private_solves

Authorizations:
AccessTokenContentType

Responses

get_user_public

Endpoint to get a specific User object

Authorizations:
AccessTokenContentType
path Parameters
user_id
required
integer

User ID

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

delete_user_public

Endpoint to delete a specific User object

Authorizations:
AccessTokenContentType
path Parameters
user_id
required
integer

User ID

Responses

Response samples

Content type
application/json
{
  • "success": true
}

patch_user_public

Endpoint to edit a specific User object

Authorizations:
AccessTokenContentType
path Parameters
user_id
required
integer

User ID

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

get_user_public_awards

Authorizations:
AccessTokenContentType
path Parameters
user_id
required
string

User ID or 'me'

Responses

post_user_emails

Endpoint to email a User object

Authorizations:
AccessTokenContentType
path Parameters
user_id
required
integer

User ID

Responses

Response samples

Content type
application/json
{
  • "success": true
}

get_user_public_fails

Authorizations:
AccessTokenContentType
path Parameters
user_id
required
string

User ID

Responses

get_user_public_solves

Authorizations:
AccessTokenContentType
path Parameters
user_id
required
string

User ID

Responses

statistics

Endpoint to retrieve Statistics

get_challenge_solve_statistics

Authorizations:
AccessTokenContentType

Responses

get_challenge_solve_percentages

Authorizations:
AccessTokenContentType

Responses

get_challenge_property_counts

Authorizations:
AccessTokenContentType
path Parameters
column
required
string

Responses

get_scores_distribution

Authorizations:
AccessTokenContentType

Responses

get_submission_property_counts

Authorizations:
AccessTokenContentType
path Parameters
column
required
string

Responses

get_team_statistics

Authorizations:
AccessTokenContentType

Responses

get_user_statistics

Authorizations:
AccessTokenContentType

Responses

get_user_property_counts

Authorizations:
AccessTokenContentType
path Parameters
column
required
string

Responses

files

Endpoint to retrieve Files

get_files_list

Endpoint to get file objects in bulk

Authorizations:
AccessTokenContentType
query Parameters
type
string
location
string
q
string

Responses

Response samples

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

post_files_list

Endpoint to get file objects in bulk

Authorizations:
AccessTokenContentType

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

get_files_detail

Endpoint to get a specific file object

Authorizations:
AccessTokenContentType
path Parameters
file_id
required
string

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

delete_files_detail

Endpoint to delete a file object

Authorizations:
AccessTokenContentType
path Parameters
file_id
required
string

Responses

Response samples

Content type
application/json
{
  • "success": true
}

notifications

Endpoint to retrieve Notifications

get_notificantion_list

Endpoint to get notification objects in bulk

Authorizations:
AccessTokenContentType
query Parameters
title
string
content
string
user_id
integer
team_id
integer
q
string
since_id
integer

Responses

Response samples

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

head_notificantion_list

Endpoint to get statistics for notification objects in bulk

Authorizations:
AccessTokenContentType
query Parameters
title
string
content
string
user_id
integer
team_id
integer
q
string
since_id
integer

Responses

Response samples

Content type
application/json
{
  • "success": true
}

post_notificantion_list

Endpoint to create a notification object

Authorizations:
AccessTokenContentType

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

get_notification

Endpoint to get a specific notification object

Authorizations:
AccessTokenContentType
path Parameters
notification_id
required
string

A Notification ID

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

delete_notification

Endpoint to delete a notification object

Authorizations:
AccessTokenContentType
path Parameters
notification_id
required
string

A Notification ID

Responses

Response samples

Content type
application/json
{
  • "success": true
}

configs

Endpoint to retrieve Configs

get_config_list

Endpoint to get Config objects in bulk

Authorizations:
AccessTokenContentType
query Parameters
key
string
value
string
q
string

Responses

Response samples

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

post_config_list

Endpoint to get create a Config object

Authorizations:
AccessTokenContentType

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

patch_config_list

Endpoint to get patch Config objects in bulk

Authorizations:
AccessTokenContentType

Responses

Response samples

Content type
application/json
{
  • "success": true
}

get_field_list

Authorizations:
AccessTokenContentType
query Parameters
type
string
q
string

Responses

post_field_list

Authorizations:
AccessTokenContentType

Responses

get_field

Authorizations:
AccessTokenContentType
path Parameters
field_id
required
string

Responses

delete_field

Authorizations:
AccessTokenContentType
path Parameters
field_id
required
string

Responses

patch_field

Authorizations:
AccessTokenContentType
path Parameters
field_id
required
string

Responses

get_config

Endpoint to get a specific Config object

Authorizations:
AccessTokenContentType
path Parameters
config_key
required
string

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

delete_config

Endpoint to delete a Config object

Authorizations:
AccessTokenContentType
path Parameters
config_key
required
string

Responses

Response samples

Content type
application/json
{
  • "success": true
}

patch_config

Endpoint to edit a specific Config object

Authorizations:
AccessTokenContentType
path Parameters
config_key
required
string

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

pages

Endpoint to retrieve Pages

get_page_list

Endpoint to get page objects in bulk

Authorizations:
AccessTokenContentType
query Parameters
id
integer
title
string
route
string
draft
boolean
hidden
boolean
auth_required
boolean
q
string

Responses

Response samples

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

post_page_list

Endpoint to create a page object

Authorizations:
AccessTokenContentType

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

get_page_detail

Endpoint to read a page object

Authorizations:
AccessTokenContentType
path Parameters
page_id
required
string

ID of a page object

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

delete_page_detail

Endpoint to delete a page object

Authorizations:
AccessTokenContentType
path Parameters
page_id
required
string

ID of a page object

Responses

Response samples

Content type
application/json
{
  • "success": true
}

patch_page_detail

Endpoint to edit a page object

Authorizations:
AccessTokenContentType
path Parameters
page_id
required
string

ID of a page object

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

unlocks

Endpoint to retrieve Unlocks

get_unlock_list

Endpoint to get unlock objects in bulk

Authorizations:
AccessTokenContentType
query Parameters
user_id
integer
team_id
integer
target
integer
type
string
q
string

Responses

Response samples

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

post_unlock_list

Endpoint to create an unlock object. Used to unlock hints.

Authorizations:
AccessTokenContentType

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

tokens

Endpoint to retrieve Tokens

get_token_list

Endpoint to get token objects in bulk

Authorizations:
AccessTokenContentType

Responses

Response samples

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

post_token_list

Endpoint to create a token object

Authorizations:
AccessTokenContentType

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

get_token_detail

Endpoint to get an existing token object

Authorizations:
AccessTokenContentType
path Parameters
token_id
required
string

A Token ID

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

delete_token_detail

Endpoint to delete an existing token object

Authorizations:
AccessTokenContentType
path Parameters
token_id
required
string

A Token ID

Responses

Response samples

Content type
application/json
{
  • "success": true
}

comments

Endpoint to retrieve Comments

get_comment_list

Endpoint to list Comment objects in bulk

Authorizations:
AccessTokenContentType
query Parameters
challenge_id
integer
user_id
integer
team_id
integer
page_id
integer
q
string

Responses

Response samples

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

post_comment_list

Endpoint to create a Comment object

Authorizations:
AccessTokenContentType

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    }
}

delete_comment

Endpoint to delete a specific Comment object

Authorizations:
AccessTokenContentType
path Parameters
comment_id
required
string

Responses

Response samples

Content type
application/json
{
  • "success": true
}

shares

Endpoint to create Share links

post_share

Authorizations:
AccessTokenContentType

Responses

brackets

Endpoint to retrieve Brackets

get_bracket_list

Authorizations:
AccessTokenContentType
query Parameters
name
string
description
string
type
string
q
string

Responses

post_bracket_list

Authorizations:
AccessTokenContentType

Responses

delete_bracket

Authorizations:
AccessTokenContentType
path Parameters
bracket_id
required
integer

Responses

patch_bracket

Authorizations:
AccessTokenContentType
path Parameters
bracket_id
required
integer

Responses