AlgoJudge documentation0.1
REST reference

Instance Admin

PUT/instance

Request Body

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

curl -X PUT "https://example.com/instance" \  -H "Content-Type: application/json" \  -d '{    "localRegistrationEnabled": true,    "requireEmail": true,    "requireConfirmedEmail": true,    "showLogo": true,    "showLocalSignIn": true,    "accountDeletionEnabled": true  }'
{  "name": "string",  "localRegistrationEnabled": true,  "requireEmail": true,  "requireConfirmedEmail": true,  "externalJudgingEnabled": true,  "seriesRestrictionsEnabled": true,  "documents": [    {      "kind": "string",      "language": "string",      "title": "string",      "validFrom": "string",      "isTemplate": true,      "fileId": "string",      "sha256": "string",      "sizeBytes": 0    }  ],  "logo": {    "fileId": "string",    "mimeType": "string",    "sizeBytes": 0,    "sha256": "string"  },  "logoTranslations": [    {      "language": "string",      "logo": {        "fileId": "string",        "mimeType": "string",        "sizeBytes": 0,        "sha256": "string"      }    }  ],  "showLogo": true,  "showLocalSignIn": true,  "showHero": true,  "providers": [    {      "slug": "string",      "displayName": "string"    }  ],  "signInRedirectProvider": "string",  "registerRedirectProvider": "string",  "accountDeletionEnabled": true,  "theme": {    "light": {      "primary": "string",      "secondary": "string",      "accent": "string",      "link": "string",      "body": "string",      "surface": "string",      "text": "string",      "dimmed": "string",      "border": "string",      "navBackground": "string",      "navText": "string",      "navActiveBackground": "string",      "navActiveText": "string",      "headerBackground": "string",      "headerText": "string"    },    "dark": {      "primary": "string",      "secondary": "string",      "accent": "string",      "link": "string",      "body": "string",      "surface": "string",      "text": "string",      "dimmed": "string",      "border": "string",      "navBackground": "string",      "navText": "string",      "navActiveBackground": "string",      "navActiveText": "string",      "headerBackground": "string",      "headerText": "string"    },    "fontFamily": "string",    "fontFamilyHeadings": "string",    "fonts": [      {        "name": "string",        "family": "string",        "weight": 0,        "style": "string",        "fileId": "string",        "sha256": "string",        "sizeBytes": 0      }    ],    "fileId": "string",    "sha256": "string"  }}
GET/instance/access-keys

Response Body

curl -X GET "https://example.com/instance/access-keys"
[  {    "name": "string",    "updatedAt": "string"  }]
PUT/instance/access-keys/{name}

Path Parameters

name*string

Request Body

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

curl -X PUT "https://example.com/instance/access-keys/string" \  -H "Content-Type: application/json" \  -d '{    "value": "string"  }'
[  {    "name": "string",    "updatedAt": "string"  }]
GET/instance/access-keys/{name}/value

Path Parameters

name*string

Response Body

curl -X GET "https://example.com/instance/access-keys/string/value"
{  "name": "string",  "value": "string",  "expiresAt": "string"}
GET/instance/redirects

Response Body

curl -X GET "https://example.com/instance/redirects"
{  "signIn": {    "slug": "string",    "displayName": "string",    "state": "string"  },  "register": {    "slug": "string",    "displayName": "string",    "state": "string"  }}
GET/instance/external-content

Response Body

curl -X GET "https://example.com/instance/external-content"
{  "enabled": true,  "hosts": [    "string"  ]}
PUT/instance/external-content

Request Body

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

curl -X PUT "https://example.com/instance/external-content" \  -H "Content-Type: application/json" \  -d '{    "hosts": [      "string"    ]  }'
{  "enabled": true,  "hosts": [    "string"  ]}
PUT/instance/logo

Request Body

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

curl -X PUT "https://example.com/instance/logo" \  -H "Content-Type: application/json" \  -d '{}'
{  "name": "string",  "localRegistrationEnabled": true,  "requireEmail": true,  "requireConfirmedEmail": true,  "externalJudgingEnabled": true,  "seriesRestrictionsEnabled": true,  "documents": [    {      "kind": "string",      "language": "string",      "title": "string",      "validFrom": "string",      "isTemplate": true,      "fileId": "string",      "sha256": "string",      "sizeBytes": 0    }  ],  "logo": {    "fileId": "string",    "mimeType": "string",    "sizeBytes": 0,    "sha256": "string"  },  "logoTranslations": [    {      "language": "string",      "logo": {        "fileId": "string",        "mimeType": "string",        "sizeBytes": 0,        "sha256": "string"      }    }  ],  "showLogo": true,  "showLocalSignIn": true,  "showHero": true,  "providers": [    {      "slug": "string",      "displayName": "string"    }  ],  "signInRedirectProvider": "string",  "registerRedirectProvider": "string",  "accountDeletionEnabled": true,  "theme": {    "light": {      "primary": "string",      "secondary": "string",      "accent": "string",      "link": "string",      "body": "string",      "surface": "string",      "text": "string",      "dimmed": "string",      "border": "string",      "navBackground": "string",      "navText": "string",      "navActiveBackground": "string",      "navActiveText": "string",      "headerBackground": "string",      "headerText": "string"    },    "dark": {      "primary": "string",      "secondary": "string",      "accent": "string",      "link": "string",      "body": "string",      "surface": "string",      "text": "string",      "dimmed": "string",      "border": "string",      "navBackground": "string",      "navText": "string",      "navActiveBackground": "string",      "navActiveText": "string",      "headerBackground": "string",      "headerText": "string"    },    "fontFamily": "string",    "fontFamilyHeadings": "string",    "fonts": [      {        "name": "string",        "family": "string",        "weight": 0,        "style": "string",        "fileId": "string",        "sha256": "string",        "sizeBytes": 0      }    ],    "fileId": "string",    "sha256": "string"  }}
DELETE/instance/theme

Response Body

curl -X DELETE "https://example.com/instance/theme"
{  "name": "string",  "localRegistrationEnabled": true,  "requireEmail": true,  "requireConfirmedEmail": true,  "externalJudgingEnabled": true,  "seriesRestrictionsEnabled": true,  "documents": [    {      "kind": "string",      "language": "string",      "title": "string",      "validFrom": "string",      "isTemplate": true,      "fileId": "string",      "sha256": "string",      "sizeBytes": 0    }  ],  "logo": {    "fileId": "string",    "mimeType": "string",    "sizeBytes": 0,    "sha256": "string"  },  "logoTranslations": [    {      "language": "string",      "logo": {        "fileId": "string",        "mimeType": "string",        "sizeBytes": 0,        "sha256": "string"      }    }  ],  "showLogo": true,  "showLocalSignIn": true,  "showHero": true,  "providers": [    {      "slug": "string",      "displayName": "string"    }  ],  "signInRedirectProvider": "string",  "registerRedirectProvider": "string",  "accountDeletionEnabled": true,  "theme": {    "light": {      "primary": "string",      "secondary": "string",      "accent": "string",      "link": "string",      "body": "string",      "surface": "string",      "text": "string",      "dimmed": "string",      "border": "string",      "navBackground": "string",      "navText": "string",      "navActiveBackground": "string",      "navActiveText": "string",      "headerBackground": "string",      "headerText": "string"    },    "dark": {      "primary": "string",      "secondary": "string",      "accent": "string",      "link": "string",      "body": "string",      "surface": "string",      "text": "string",      "dimmed": "string",      "border": "string",      "navBackground": "string",      "navText": "string",      "navActiveBackground": "string",      "navActiveText": "string",      "headerBackground": "string",      "headerText": "string"    },    "fontFamily": "string",    "fontFamilyHeadings": "string",    "fonts": [      {        "name": "string",        "family": "string",        "weight": 0,        "style": "string",        "fileId": "string",        "sha256": "string",        "sizeBytes": 0      }    ],    "fileId": "string",    "sha256": "string"  }}
PUT/instance/theme

Request Body

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

curl -X PUT "https://example.com/instance/theme" \  -H "Content-Type: application/json" \  -d '{}'
{  "name": "string",  "localRegistrationEnabled": true,  "requireEmail": true,  "requireConfirmedEmail": true,  "externalJudgingEnabled": true,  "seriesRestrictionsEnabled": true,  "documents": [    {      "kind": "string",      "language": "string",      "title": "string",      "validFrom": "string",      "isTemplate": true,      "fileId": "string",      "sha256": "string",      "sizeBytes": 0    }  ],  "logo": {    "fileId": "string",    "mimeType": "string",    "sizeBytes": 0,    "sha256": "string"  },  "logoTranslations": [    {      "language": "string",      "logo": {        "fileId": "string",        "mimeType": "string",        "sizeBytes": 0,        "sha256": "string"      }    }  ],  "showLogo": true,  "showLocalSignIn": true,  "showHero": true,  "providers": [    {      "slug": "string",      "displayName": "string"    }  ],  "signInRedirectProvider": "string",  "registerRedirectProvider": "string",  "accountDeletionEnabled": true,  "theme": {    "light": {      "primary": "string",      "secondary": "string",      "accent": "string",      "link": "string",      "body": "string",      "surface": "string",      "text": "string",      "dimmed": "string",      "border": "string",      "navBackground": "string",      "navText": "string",      "navActiveBackground": "string",      "navActiveText": "string",      "headerBackground": "string",      "headerText": "string"    },    "dark": {      "primary": "string",      "secondary": "string",      "accent": "string",      "link": "string",      "body": "string",      "surface": "string",      "text": "string",      "dimmed": "string",      "border": "string",      "navBackground": "string",      "navText": "string",      "navActiveBackground": "string",      "navActiveText": "string",      "headerBackground": "string",      "headerText": "string"    },    "fontFamily": "string",    "fontFamilyHeadings": "string",    "fonts": [      {        "name": "string",        "family": "string",        "weight": 0,        "style": "string",        "fileId": "string",        "sha256": "string",        "sizeBytes": 0      }    ],    "fileId": "string",    "sha256": "string"  }}
GET/instance/fonts

Response Body

curl -X GET "https://example.com/instance/fonts"
[  "string"]
POST/instance/fonts

Request Body

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

curl -X POST "https://example.com/instance/fonts" \  -H "Content-Type: application/json" \  -d '{    "fileId": "string",    "name": "string"  }'
{  "name": "string",  "localRegistrationEnabled": true,  "requireEmail": true,  "requireConfirmedEmail": true,  "externalJudgingEnabled": true,  "seriesRestrictionsEnabled": true,  "documents": [    {      "kind": "string",      "language": "string",      "title": "string",      "validFrom": "string",      "isTemplate": true,      "fileId": "string",      "sha256": "string",      "sizeBytes": 0    }  ],  "logo": {    "fileId": "string",    "mimeType": "string",    "sizeBytes": 0,    "sha256": "string"  },  "logoTranslations": [    {      "language": "string",      "logo": {        "fileId": "string",        "mimeType": "string",        "sizeBytes": 0,        "sha256": "string"      }    }  ],  "showLogo": true,  "showLocalSignIn": true,  "showHero": true,  "providers": [    {      "slug": "string",      "displayName": "string"    }  ],  "signInRedirectProvider": "string",  "registerRedirectProvider": "string",  "accountDeletionEnabled": true,  "theme": {    "light": {      "primary": "string",      "secondary": "string",      "accent": "string",      "link": "string",      "body": "string",      "surface": "string",      "text": "string",      "dimmed": "string",      "border": "string",      "navBackground": "string",      "navText": "string",      "navActiveBackground": "string",      "navActiveText": "string",      "headerBackground": "string",      "headerText": "string"    },    "dark": {      "primary": "string",      "secondary": "string",      "accent": "string",      "link": "string",      "body": "string",      "surface": "string",      "text": "string",      "dimmed": "string",      "border": "string",      "navBackground": "string",      "navText": "string",      "navActiveBackground": "string",      "navActiveText": "string",      "headerBackground": "string",      "headerText": "string"    },    "fontFamily": "string",    "fontFamilyHeadings": "string",    "fonts": [      {        "name": "string",        "family": "string",        "weight": 0,        "style": "string",        "fileId": "string",        "sha256": "string",        "sizeBytes": 0      }    ],    "fileId": "string",    "sha256": "string"  }}
DELETE/instance/fonts/{name}

Path Parameters

name*string

Response Body

curl -X DELETE "https://example.com/instance/fonts/string"
{  "name": "string",  "localRegistrationEnabled": true,  "requireEmail": true,  "requireConfirmedEmail": true,  "externalJudgingEnabled": true,  "seriesRestrictionsEnabled": true,  "documents": [    {      "kind": "string",      "language": "string",      "title": "string",      "validFrom": "string",      "isTemplate": true,      "fileId": "string",      "sha256": "string",      "sizeBytes": 0    }  ],  "logo": {    "fileId": "string",    "mimeType": "string",    "sizeBytes": 0,    "sha256": "string"  },  "logoTranslations": [    {      "language": "string",      "logo": {        "fileId": "string",        "mimeType": "string",        "sizeBytes": 0,        "sha256": "string"      }    }  ],  "showLogo": true,  "showLocalSignIn": true,  "showHero": true,  "providers": [    {      "slug": "string",      "displayName": "string"    }  ],  "signInRedirectProvider": "string",  "registerRedirectProvider": "string",  "accountDeletionEnabled": true,  "theme": {    "light": {      "primary": "string",      "secondary": "string",      "accent": "string",      "link": "string",      "body": "string",      "surface": "string",      "text": "string",      "dimmed": "string",      "border": "string",      "navBackground": "string",      "navText": "string",      "navActiveBackground": "string",      "navActiveText": "string",      "headerBackground": "string",      "headerText": "string"    },    "dark": {      "primary": "string",      "secondary": "string",      "accent": "string",      "link": "string",      "body": "string",      "surface": "string",      "text": "string",      "dimmed": "string",      "border": "string",      "navBackground": "string",      "navText": "string",      "navActiveBackground": "string",      "navActiveText": "string",      "headerBackground": "string",      "headerText": "string"    },    "fontFamily": "string",    "fontFamilyHeadings": "string",    "fonts": [      {        "name": "string",        "family": "string",        "weight": 0,        "style": "string",        "fileId": "string",        "sha256": "string",        "sizeBytes": 0      }    ],    "fileId": "string",    "sha256": "string"  }}
GET/instance/documents/{kind}

Path Parameters

kind*string

Response Body

curl -X GET "https://example.com/instance/documents/string"
[  {    "kind": "string",    "language": "string",    "title": "string",    "validFrom": "string",    "isTemplate": true,    "fileId": "string",    "sha256": "string",    "sizeBytes": 0  }]
POST/instance/documents/{kind}

Path Parameters

kind*string

Request Body

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

curl -X POST "https://example.com/instance/documents/string" \  -H "Content-Type: application/json" \  -d '{    "statements": [      {        "fileId": "string"      }    ]  }'
{  "name": "string",  "localRegistrationEnabled": true,  "requireEmail": true,  "requireConfirmedEmail": true,  "externalJudgingEnabled": true,  "seriesRestrictionsEnabled": true,  "documents": [    {      "kind": "string",      "language": "string",      "title": "string",      "validFrom": "string",      "isTemplate": true,      "fileId": "string",      "sha256": "string",      "sizeBytes": 0    }  ],  "logo": {    "fileId": "string",    "mimeType": "string",    "sizeBytes": 0,    "sha256": "string"  },  "logoTranslations": [    {      "language": "string",      "logo": {        "fileId": "string",        "mimeType": "string",        "sizeBytes": 0,        "sha256": "string"      }    }  ],  "showLogo": true,  "showLocalSignIn": true,  "showHero": true,  "providers": [    {      "slug": "string",      "displayName": "string"    }  ],  "signInRedirectProvider": "string",  "registerRedirectProvider": "string",  "accountDeletionEnabled": true,  "theme": {    "light": {      "primary": "string",      "secondary": "string",      "accent": "string",      "link": "string",      "body": "string",      "surface": "string",      "text": "string",      "dimmed": "string",      "border": "string",      "navBackground": "string",      "navText": "string",      "navActiveBackground": "string",      "navActiveText": "string",      "headerBackground": "string",      "headerText": "string"    },    "dark": {      "primary": "string",      "secondary": "string",      "accent": "string",      "link": "string",      "body": "string",      "surface": "string",      "text": "string",      "dimmed": "string",      "border": "string",      "navBackground": "string",      "navText": "string",      "navActiveBackground": "string",      "navActiveText": "string",      "headerBackground": "string",      "headerText": "string"    },    "fontFamily": "string",    "fontFamilyHeadings": "string",    "fonts": [      {        "name": "string",        "family": "string",        "weight": 0,        "style": "string",        "fileId": "string",        "sha256": "string",        "sizeBytes": 0      }    ],    "fileId": "string",    "sha256": "string"  }}
DELETE/instance/documents/{kind}

Path Parameters

kind*string

Response Body

curl -X DELETE "https://example.com/instance/documents/string"
{  "name": "string",  "localRegistrationEnabled": true,  "requireEmail": true,  "requireConfirmedEmail": true,  "externalJudgingEnabled": true,  "seriesRestrictionsEnabled": true,  "documents": [    {      "kind": "string",      "language": "string",      "title": "string",      "validFrom": "string",      "isTemplate": true,      "fileId": "string",      "sha256": "string",      "sizeBytes": 0    }  ],  "logo": {    "fileId": "string",    "mimeType": "string",    "sizeBytes": 0,    "sha256": "string"  },  "logoTranslations": [    {      "language": "string",      "logo": {        "fileId": "string",        "mimeType": "string",        "sizeBytes": 0,        "sha256": "string"      }    }  ],  "showLogo": true,  "showLocalSignIn": true,  "showHero": true,  "providers": [    {      "slug": "string",      "displayName": "string"    }  ],  "signInRedirectProvider": "string",  "registerRedirectProvider": "string",  "accountDeletionEnabled": true,  "theme": {    "light": {      "primary": "string",      "secondary": "string",      "accent": "string",      "link": "string",      "body": "string",      "surface": "string",      "text": "string",      "dimmed": "string",      "border": "string",      "navBackground": "string",      "navText": "string",      "navActiveBackground": "string",      "navActiveText": "string",      "headerBackground": "string",      "headerText": "string"    },    "dark": {      "primary": "string",      "secondary": "string",      "accent": "string",      "link": "string",      "body": "string",      "surface": "string",      "text": "string",      "dimmed": "string",      "border": "string",      "navBackground": "string",      "navText": "string",      "navActiveBackground": "string",      "navActiveText": "string",      "headerBackground": "string",      "headerText": "string"    },    "fontFamily": "string",    "fontFamilyHeadings": "string",    "fonts": [      {        "name": "string",        "family": "string",        "weight": 0,        "style": "string",        "fileId": "string",        "sha256": "string",        "sizeBytes": 0      }    ],    "fileId": "string",    "sha256": "string"  }}