OptHub AppSync GraphQL API
OptHubのGraphQL APIに関するドキュメントです。
API Endpoints
https://ruoupps4u5grdk3vd3l7s2kuwu.appsync-api.ap-northeast-1.amazonaws.com/graphql
Queries
getAppInfo
Description
アプリ情報の取得
Response
Returns an AppInfo!
Example
Query
query getAppInfo {
getAppInfo {
name
version
stage
uid
}
}
Response
{
"data": {
"getAppInfo": {
"name": "opthub",
"version": "0.1.0",
"stage": "dev",
"uid": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b"
}
}
}
getCLIVersionStatus
Description
OptHub Clientに表示するメッセージの取得
Response
Returns [VersionStatusMessage]!
Arguments
Name | Description |
---|---|
version - String
|
OptHub Client CLI のバージョン |
Example
Query
query getCLIVersionStatus($version: String) {
getCLIVersionStatus(version: $version) {
label
labelColor
message
messageColor
}
}
Variables
{"version": "abc123"}
Response
{
"data": {
"getCLIVersionStatus": [
{
"label": "Error",
"labelColor": "red",
"message": "This version is not latest. Please update opthub-client version.",
"messageColor": "black"
}
]
}
}
getCompetition
Description
コンペの取得
Response
Returns a Competition
Example
Query
query getCompetition(
$id: String,
$alias: String
) {
getCompetition(
id: $id,
alias: $alias
) {
id
createdAt
updatedAt
alias
localizedTitle {
...LocalizedStringFragment
}
localizedSubtitle {
...LocalizedStringFragment
}
localizedAbstract {
...LocalizedStringFragment
}
visibility
openAt
closeAt
localizedDescription {
...LocalizedStringFragment
}
localizedRule {
...LocalizedStringFragment
}
mode
locales
submissionURL
owner {
...UserProfileFragment
}
matchIds
participantsCount
isScored
}
}
Variables
{"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b", "alias": "eccomp2024"}
Response
{
"data": {
"getCompetition": {
"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b",
"createdAt": "xyz789",
"updatedAt": "abc123",
"alias": "eccomp2024",
"localizedTitle": LocalizedString,
"localizedSubtitle": LocalizedString,
"localizedAbstract": LocalizedString,
"visibility": "public",
"openAt": "xyz789",
"closeAt": "abc123",
"localizedDescription": LocalizedString,
"localizedRule": LocalizedString,
"mode": "server_evaluation",
"locales": ["ja"],
"submissionURL": "abc123",
"owner": UserProfile,
"matchIds": ["abc123"],
"participantsCount": 123,
"isScored": false
}
}
}
getCompetitionParticipant
Description
コンペの参加者の取得
Response
Returns a CompetitionParticipant
Arguments
Name | Description |
---|---|
competition - CompetitionIdentifierInput!
|
コンペを特定するための情報 |
participant - ParticipantInput!
|
参加者を特定するための情報 |
Example
Query
query getCompetitionParticipant(
$competition: CompetitionIdentifierInput!,
$participant: ParticipantInput!
) {
getCompetitionParticipant(
competition: $competition,
participant: $participant
) {
competitionId
type
id
score
ranking
participatedAt
user {
...UserProfileFragment
}
}
}
Variables
{
"competition": CompetitionIdentifierInput,
"participant": ParticipantInput
}
Response
{
"data": {
"getCompetitionParticipant": {
"competitionId": "ae383a1f-fef5-47c1-85f9-ef34756d58ac",
"type": "User",
"id": "ae383a1f-fef5-47c1-85f9-ef34756d58ac",
"score": 0.497,
"ranking": 2,
"participatedAt": "2020-01-01T00:00:00Z",
"user": UserProfile
}
}
}
getCompetitionParticipants
Description
コンペの参加者の一覧を取得
Response
Returns a CompetitionParticipantsResponse!
Example
Query
query getCompetitionParticipants(
$id: String,
$alias: String,
$limit: Int,
$isRanking: Boolean,
$lastFetchedSortKey: String
) {
getCompetitionParticipants(
id: $id,
alias: $alias,
limit: $limit,
isRanking: $isRanking,
lastFetchedSortKey: $lastFetchedSortKey
) {
participants {
...CompetitionParticipantFragment
}
isLast
lastFetchedSortKey
}
}
Variables
{
"id": "xyz789",
"alias": "xyz789",
"limit": 123,
"isRanking": false,
"lastFetchedSortKey": "xyz789"
}
Response
{
"data": {
"getCompetitionParticipants": {
"participants": [CompetitionParticipant],
"isLast": true,
"lastFetchedSortKey": "abc123"
}
}
}
getCompetitionsByIndicator
Description
指標が使われているコンペの取得
Response
Returns [Competition!]!
Example
Query
query getCompetitionsByIndicator(
$id: String,
$alias: String
) {
getCompetitionsByIndicator(
id: $id,
alias: $alias
) {
id
createdAt
updatedAt
alias
localizedTitle {
...LocalizedStringFragment
}
localizedSubtitle {
...LocalizedStringFragment
}
localizedAbstract {
...LocalizedStringFragment
}
visibility
openAt
closeAt
localizedDescription {
...LocalizedStringFragment
}
localizedRule {
...LocalizedStringFragment
}
mode
locales
submissionURL
owner {
...UserProfileFragment
}
matchIds
participantsCount
isScored
}
}
Variables
{"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b", "alias": "best"}
Response
{
"data": {
"getCompetitionsByIndicator": [
{
"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b",
"createdAt": "abc123",
"updatedAt": "abc123",
"alias": "eccomp2024",
"localizedTitle": LocalizedString,
"localizedSubtitle": LocalizedString,
"localizedAbstract": LocalizedString,
"visibility": "public",
"openAt": "xyz789",
"closeAt": "xyz789",
"localizedDescription": LocalizedString,
"localizedRule": LocalizedString,
"mode": "server_evaluation",
"locales": ["ja"],
"submissionURL": "xyz789",
"owner": UserProfile,
"matchIds": ["xyz789"],
"participantsCount": 987,
"isScored": false
}
]
}
}
getCompetitionsByParticipantUser
Description
ユーザが参加しているコンペと参加したコンペの取得。ユーザを指定しない場合はログインユーザに対する結果を取得する。
Response
Example
Query
query getCompetitionsByParticipantUser(
$id: String,
$name: String
) {
getCompetitionsByParticipantUser(
id: $id,
name: $name
) {
participating {
...CompetitionFragment
}
participated {
...CompetitionFragment
}
}
}
Variables
{"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b", "name": "ryuji"}
Response
{
"data": {
"getCompetitionsByParticipantUser": {
"participating": [Competition],
"participated": [Competition]
}
}
}
getCompetitionsByProblem
Description
問題が使われているコンペの取得
Response
Returns [Competition!]!
Example
Query
query getCompetitionsByProblem(
$id: String,
$alias: String
) {
getCompetitionsByProblem(
id: $id,
alias: $alias
) {
id
createdAt
updatedAt
alias
localizedTitle {
...LocalizedStringFragment
}
localizedSubtitle {
...LocalizedStringFragment
}
localizedAbstract {
...LocalizedStringFragment
}
visibility
openAt
closeAt
localizedDescription {
...LocalizedStringFragment
}
localizedRule {
...LocalizedStringFragment
}
mode
locales
submissionURL
owner {
...UserProfileFragment
}
matchIds
participantsCount
isScored
}
}
Variables
{"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b", "alias": "sphere"}
Response
{
"data": {
"getCompetitionsByProblem": [
{
"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b",
"createdAt": "abc123",
"updatedAt": "xyz789",
"alias": "eccomp2024",
"localizedTitle": LocalizedString,
"localizedSubtitle": LocalizedString,
"localizedAbstract": LocalizedString,
"visibility": "public",
"openAt": "abc123",
"closeAt": "abc123",
"localizedDescription": LocalizedString,
"localizedRule": LocalizedString,
"mode": "server_evaluation",
"locales": ["ja"],
"submissionURL": "xyz789",
"owner": UserProfile,
"matchIds": ["xyz789"],
"participantsCount": 987,
"isScored": true
}
]
}
}
getCompetitionsByUser
Description
ユーザが作成したコンペの取得。ユーザを指定しない場合はログインユーザに対する結果を取得する。
Response
Returns [Competition!]!
Example
Query
query getCompetitionsByUser(
$id: String,
$name: String
) {
getCompetitionsByUser(
id: $id,
name: $name
) {
id
createdAt
updatedAt
alias
localizedTitle {
...LocalizedStringFragment
}
localizedSubtitle {
...LocalizedStringFragment
}
localizedAbstract {
...LocalizedStringFragment
}
visibility
openAt
closeAt
localizedDescription {
...LocalizedStringFragment
}
localizedRule {
...LocalizedStringFragment
}
mode
locales
submissionURL
owner {
...UserProfileFragment
}
matchIds
participantsCount
isScored
}
}
Variables
{"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b", "name": "ryuji"}
Response
{
"data": {
"getCompetitionsByUser": [
{
"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b",
"createdAt": "abc123",
"updatedAt": "xyz789",
"alias": "eccomp2024",
"localizedTitle": LocalizedString,
"localizedSubtitle": LocalizedString,
"localizedAbstract": LocalizedString,
"visibility": "public",
"openAt": "abc123",
"closeAt": "abc123",
"localizedDescription": LocalizedString,
"localizedRule": LocalizedString,
"mode": "server_evaluation",
"locales": ["ja"],
"submissionURL": "abc123",
"owner": UserProfile,
"matchIds": ["abc123"],
"participantsCount": 123,
"isScored": false
}
]
}
}
getIndicator
Description
指標の取得
Example
Query
query getIndicator(
$id: String,
$alias: String
) {
getIndicator(
id: $id,
alias: $alias
) {
id
alias
localizedTitle {
...LocalizedStringFragment
}
localizedSubtitle {
...LocalizedStringFragment
}
localizedAbstract {
...LocalizedStringFragment
}
visibility
order
dockerImage
github
isOpenSource
license
localizedDescription {
...LocalizedStringFragment
}
localizedIODescription {
...LocalizedStringFragment
}
environments {
...IndicatorEnvironmentsFragment
}
locales
createdAt
updatedAt
owner {
...UserProfileFragment
}
}
}
Variables
{"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b", "alias": "sphere"}
Response
{
"data": {
"getIndicator": {
"id": "xyz789",
"alias": "xyz789",
"localizedTitle": LocalizedString,
"localizedSubtitle": LocalizedString,
"localizedAbstract": LocalizedString,
"visibility": "public",
"order": "ascending",
"dockerImage": "xyz789",
"github": "xyz789",
"isOpenSource": false,
"license": "abc123",
"localizedDescription": LocalizedString,
"localizedIODescription": LocalizedString,
"environments": [IndicatorEnvironments],
"locales": ["ja"],
"createdAt": "xyz789",
"updatedAt": "abc123",
"owner": UserProfile
}
}
}
getIndicatorsByUser
Description
ユーザが作成した指標の取得。ユーザを指定しない場合はログインユーザに対する結果を取得する。
Response
Returns [Indicator!]!
Example
Query
query getIndicatorsByUser(
$id: String,
$name: String
) {
getIndicatorsByUser(
id: $id,
name: $name
) {
id
alias
localizedTitle {
...LocalizedStringFragment
}
localizedSubtitle {
...LocalizedStringFragment
}
localizedAbstract {
...LocalizedStringFragment
}
visibility
order
dockerImage
github
isOpenSource
license
localizedDescription {
...LocalizedStringFragment
}
localizedIODescription {
...LocalizedStringFragment
}
environments {
...IndicatorEnvironmentsFragment
}
locales
createdAt
updatedAt
owner {
...UserProfileFragment
}
}
}
Variables
{"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b", "name": "ryuji"}
Response
{
"data": {
"getIndicatorsByUser": [
{
"id": "abc123",
"alias": "abc123",
"localizedTitle": LocalizedString,
"localizedSubtitle": LocalizedString,
"localizedAbstract": LocalizedString,
"visibility": "public",
"order": "ascending",
"dockerImage": "xyz789",
"github": "abc123",
"isOpenSource": true,
"license": "xyz789",
"localizedDescription": LocalizedString,
"localizedIODescription": LocalizedString,
"environments": [IndicatorEnvironments],
"locales": ["ja"],
"createdAt": "xyz789",
"updatedAt": "abc123",
"owner": UserProfile
}
]
}
}
getMatch
Description
競技の取得
Response
Returns a Match
Arguments
Name | Description |
---|---|
id - String
|
競技のID |
alias - UniqueMatchAliasInput
|
競技のエイリアス |
Example
Query
query getMatch(
$id: String,
$alias: UniqueMatchAliasInput
) {
getMatch(
id: $id,
alias: $alias
) {
id
createdAt
updatedAt
competition {
...CompetitionFragment
}
problem {
...ProblemFragment
}
indicator {
...IndicatorFragment
}
alias
successTrialsBudget
submissionsBudget
isTutorial
problemPublicEnvironments {
...KeyValueFragment
}
indicatorPublicEnvironments {
...KeyValueFragment
}
problemPrivateEnvironments {
...NullableKeyValueFragment
}
indicatorPrivateEnvironments {
...NullableKeyValueFragment
}
openAt
closeAt
scoredParticipantsCount
}
}
Variables
{
"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b",
"alias": "{ match: 'mc-mop', competition: 'eccomp2024' }"
}
Response
{
"data": {
"getMatch": {
"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b",
"createdAt": "xyz789",
"updatedAt": "abc123",
"competition": Competition,
"problem": Problem,
"indicator": Indicator,
"alias": "mc-mop",
"successTrialsBudget": 123,
"submissionsBudget": 987,
"isTutorial": false,
"problemPublicEnvironments": [KeyValue],
"indicatorPublicEnvironments": [KeyValue],
"problemPrivateEnvironments": [NullableKeyValue],
"indicatorPrivateEnvironments": [NullableKeyValue],
"openAt": "xyz789",
"closeAt": "abc123",
"scoredParticipantsCount": 987
}
}
}
getMatchParticipant
Description
競技の参加者の取得
Response
Returns a MatchParticipant
Arguments
Name | Description |
---|---|
match - MatchIdentifierInput!
|
競技を特定するための情報 |
participant - ParticipantInput!
|
参加者を特定するための情報 |
Example
Query
query getMatchParticipant(
$match: MatchIdentifierInput!,
$participant: ParticipantInput!
) {
getMatchParticipant(
match: $match,
participant: $participant
) {
matchId
type
id
successTrialsNum
submissionsNum
score
participatedAt
user {
...UserProfileFragment
}
}
}
Variables
{
"match": MatchIdentifierInput,
"participant": ParticipantInput
}
Response
{
"data": {
"getMatchParticipant": {
"matchId": "ae383a1f-fef5-47c1-85f9-ef34756d58ac",
"type": "User",
"id": "ae383a1f-fef5-47c1-85f9-ef34756d58ac",
"successTrialsNum": 8,
"submissionsNum": 15,
"score": 0.497,
"participatedAt": "2020-01-01T00:00:00Z",
"user": UserProfile
}
}
}
getMatchParticipants
Description
競技の参加者の一覧を取得
Response
Returns a MatchParticipantsResponse!
Arguments
Name | Description |
---|---|
id - String
|
競技のID |
alias - UniqueMatchAliasInput
|
競技のエイリアス |
limit - Int
|
取得する件数 |
isRanking - Boolean
|
ランキング形式で取得するかどうか |
lastFetchedSortKey - String
|
最後に取得したキー |
Example
Query
query getMatchParticipants(
$id: String,
$alias: UniqueMatchAliasInput,
$limit: Int,
$isRanking: Boolean,
$lastFetchedSortKey: String
) {
getMatchParticipants(
id: $id,
alias: $alias,
limit: $limit,
isRanking: $isRanking,
lastFetchedSortKey: $lastFetchedSortKey
) {
participants {
...MatchParticipantFragment
}
isLast
lastFetchedSortKey
}
}
Variables
{
"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b",
"alias": "{ match: 'mc-mop', competition: 'eccomp2024' }",
"limit": 123,
"isRanking": false,
"lastFetchedSortKey": "xyz789"
}
Response
{
"data": {
"getMatchParticipants": {
"participants": [MatchParticipant],
"isLast": true,
"lastFetchedSortKey": "xyz789"
}
}
}
getMatchParticipantsScores
Description
競技の参加者のスコア系列の取得
Response
Returns [MatchParticipantScores!]!
Arguments
Name | Description |
---|---|
match - MatchIdentifierInput!
|
競技を特定するための情報 |
participants - [ParticipantInput!]!
|
参加者を特定するための情報 |
startTrialNo - Int
|
最初の試行番号(指定しない場合は1) |
endTrialNo - Int
|
最後の試行番号(指定しない場合は最後の試行) |
interval - Int!
|
データを取得する間隔(最後の試行は間隔に依存せず必ず取得される) |
Example
Query
query getMatchParticipantsScores(
$match: MatchIdentifierInput!,
$participants: [ParticipantInput!]!,
$startTrialNo: Int,
$endTrialNo: Int,
$interval: Int!
) {
getMatchParticipantsScores(
match: $match,
participants: $participants,
startTrialNo: $startTrialNo,
endTrialNo: $endTrialNo,
interval: $interval
) {
participant {
...MatchParticipantFragment
}
scores {
...MatchParticipantScoreFragment
}
}
}
Variables
{
"match": MatchIdentifierInput,
"participants": [ParticipantInput],
"startTrialNo": 987,
"endTrialNo": 987,
"interval": 123
}
Response
{
"data": {
"getMatchParticipantsScores": [
{
"participant": MatchParticipant,
"scores": [MatchParticipantScore]
}
]
}
}
getMatchTrialByParticipant
Description
特定の参加者の特定の競技に対する試行の一覧を取得する。
Response
Returns a MatchTrial
Arguments
Name | Description |
---|---|
match - MatchIdentifierInput!
|
競技の識別子 |
participant - ParticipantInput
|
参加者を特定するための情報。指定しない場合はログインユーザもしくはログインユーザが所属しているチームが利用される。コンペ開催中は管理者を除いてこのパラメータは指定不可。 |
trialNo - Int!
|
試行番号 |
Example
Query
query getMatchTrialByParticipant(
$match: MatchIdentifierInput!,
$participant: ParticipantInput,
$trialNo: Int!
) {
getMatchTrialByParticipant(
match: $match,
participant: $participant,
trialNo: $trialNo
) {
trialNo
matchId
participantType
participantId
userId
status
solution {
...MatchTrialSolutionFragment
}
evaluation {
...MatchTrialEvaluationFragment
}
score {
...MatchTrialScoreFragment
}
createdAt
}
}
Variables
{
"match": MatchIdentifierInput,
"participant": ParticipantInput,
"trialNo": 987
}
Response
{
"data": {
"getMatchTrialByParticipant": {
"trialNo": 1,
"matchId": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b",
"participantType": "User",
"participantId": "ae383a1f-fef5-47c1-85f9-ef34756d58ac",
"userId": "ae383a1f-fef5-47c1-85f9-ef34756d58ac",
"status": "evaluating",
"solution": MatchTrialSolution,
"evaluation": MatchTrialEvaluation,
"score": MatchTrialScore,
"createdAt": "abc123"
}
}
}
getMatchTrialsByParticipant
Description
特定の参加者の特定の競技に対する試行の一覧を取得する。
Response
Returns a MatchTrialsResponse!
Arguments
Name | Description |
---|---|
match - MatchIdentifierInput!
|
競技の識別子 |
participant - ParticipantInput
|
参加者を特定するための情報。指定しない場合はログインユーザもしくはログインユーザが所属しているチームが利用される。コンペ開催中は管理者を除いてこのパラメータは指定不可。 |
range - MatchTrialsRangeInput
|
取得するデータの範囲 |
order - Order
|
取得順。指定しない場合は昇順。 |
Example
Query
query getMatchTrialsByParticipant(
$match: MatchIdentifierInput!,
$participant: ParticipantInput,
$range: MatchTrialsRangeInput,
$order: Order
) {
getMatchTrialsByParticipant(
match: $match,
participant: $participant,
range: $range,
order: $order
) {
isFirst
isLast
startTrialNo
endTrialNo
trials {
...MatchTrialFragment
}
}
}
Variables
{
"match": MatchIdentifierInput,
"participant": ParticipantInput,
"range": MatchTrialsRangeInput,
"order": "ascending"
}
Response
{
"data": {
"getMatchTrialsByParticipant": {
"isFirst": false,
"isLast": true,
"startTrialNo": 1,
"endTrialNo": 10,
"trials": [MatchTrial]
}
}
}
getMatchesByCompetition
Description
コンペの競技の一覧の取得
Example
Query
query getMatchesByCompetition(
$id: String,
$alias: String
) {
getMatchesByCompetition(
id: $id,
alias: $alias
) {
id
createdAt
updatedAt
competition {
...CompetitionFragment
}
problem {
...ProblemFragment
}
indicator {
...IndicatorFragment
}
alias
successTrialsBudget
submissionsBudget
isTutorial
problemPublicEnvironments {
...KeyValueFragment
}
indicatorPublicEnvironments {
...KeyValueFragment
}
problemPrivateEnvironments {
...NullableKeyValueFragment
}
indicatorPrivateEnvironments {
...NullableKeyValueFragment
}
openAt
closeAt
scoredParticipantsCount
}
}
Variables
{"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b", "alias": "eccomp2024"}
Response
{
"data": {
"getMatchesByCompetition": [
{
"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b",
"createdAt": "abc123",
"updatedAt": "abc123",
"competition": Competition,
"problem": Problem,
"indicator": Indicator,
"alias": "mc-mop",
"successTrialsBudget": 123,
"submissionsBudget": 123,
"isTutorial": false,
"problemPublicEnvironments": [KeyValue],
"indicatorPublicEnvironments": [KeyValue],
"problemPrivateEnvironments": [NullableKeyValue],
"indicatorPrivateEnvironments": [
NullableKeyValue
],
"openAt": "abc123",
"closeAt": "abc123",
"scoredParticipantsCount": 123
}
]
}
}
getProblem
Description
問題の取得
Example
Query
query getProblem(
$id: String,
$alias: String
) {
getProblem(
id: $id,
alias: $alias
) {
id
alias
localizedTitle {
...LocalizedStringFragment
}
localizedSubtitle {
...LocalizedStringFragment
}
localizedAbstract {
...LocalizedStringFragment
}
visibility
dockerImage
localizedDescription {
...LocalizedStringFragment
}
github
isOpenSource
license
locales
environments {
...ProblemEnvironmentsFragment
}
localizedIODescription {
...LocalizedStringFragment
}
createdAt
updatedAt
owner {
...UserProfileFragment
}
}
}
Variables
{"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b", "alias": "sphere"}
Response
{
"data": {
"getProblem": {
"id": "xyz789",
"alias": "abc123",
"localizedTitle": LocalizedString,
"localizedSubtitle": LocalizedString,
"localizedAbstract": LocalizedString,
"visibility": "public",
"dockerImage": "abc123",
"localizedDescription": LocalizedString,
"github": "abc123",
"isOpenSource": true,
"license": "abc123",
"locales": ["ja"],
"environments": [ProblemEnvironments],
"localizedIODescription": LocalizedString,
"createdAt": "abc123",
"updatedAt": "xyz789",
"owner": UserProfile
}
}
}
getProblemsByUser
Description
ユーザが作成した問題の取得。ユーザを指定しない場合はログインユーザに対する結果を取得する。
Response
Returns [Problem!]!
Example
Query
query getProblemsByUser(
$id: String,
$name: String
) {
getProblemsByUser(
id: $id,
name: $name
) {
id
alias
localizedTitle {
...LocalizedStringFragment
}
localizedSubtitle {
...LocalizedStringFragment
}
localizedAbstract {
...LocalizedStringFragment
}
visibility
dockerImage
localizedDescription {
...LocalizedStringFragment
}
github
isOpenSource
license
locales
environments {
...ProblemEnvironmentsFragment
}
localizedIODescription {
...LocalizedStringFragment
}
createdAt
updatedAt
owner {
...UserProfileFragment
}
}
}
Variables
{"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b", "name": "ryuji"}
Response
{
"data": {
"getProblemsByUser": [
{
"id": "xyz789",
"alias": "abc123",
"localizedTitle": LocalizedString,
"localizedSubtitle": LocalizedString,
"localizedAbstract": LocalizedString,
"visibility": "public",
"dockerImage": "xyz789",
"localizedDescription": LocalizedString,
"github": "abc123",
"isOpenSource": true,
"license": "abc123",
"locales": ["ja"],
"environments": [ProblemEnvironments],
"localizedIODescription": LocalizedString,
"createdAt": "abc123",
"updatedAt": "abc123",
"owner": UserProfile
}
]
}
}
getPublicCompetitions
Description
公開されているコンペの取得
Response
Returns [Competition!]!
Example
Query
query getPublicCompetitions {
getPublicCompetitions {
id
createdAt
updatedAt
alias
localizedTitle {
...LocalizedStringFragment
}
localizedSubtitle {
...LocalizedStringFragment
}
localizedAbstract {
...LocalizedStringFragment
}
visibility
openAt
closeAt
localizedDescription {
...LocalizedStringFragment
}
localizedRule {
...LocalizedStringFragment
}
mode
locales
submissionURL
owner {
...UserProfileFragment
}
matchIds
participantsCount
isScored
}
}
Response
{
"data": {
"getPublicCompetitions": [
{
"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b",
"createdAt": "xyz789",
"updatedAt": "abc123",
"alias": "eccomp2024",
"localizedTitle": LocalizedString,
"localizedSubtitle": LocalizedString,
"localizedAbstract": LocalizedString,
"visibility": "public",
"openAt": "xyz789",
"closeAt": "abc123",
"localizedDescription": LocalizedString,
"localizedRule": LocalizedString,
"mode": "server_evaluation",
"locales": ["ja"],
"submissionURL": "xyz789",
"owner": UserProfile,
"matchIds": ["abc123"],
"participantsCount": 987,
"isScored": true
}
]
}
}
getPublicIndicators
Description
公開されている指標の取得
Response
Returns [Indicator!]!
Example
Query
query getPublicIndicators {
getPublicIndicators {
id
alias
localizedTitle {
...LocalizedStringFragment
}
localizedSubtitle {
...LocalizedStringFragment
}
localizedAbstract {
...LocalizedStringFragment
}
visibility
order
dockerImage
github
isOpenSource
license
localizedDescription {
...LocalizedStringFragment
}
localizedIODescription {
...LocalizedStringFragment
}
environments {
...IndicatorEnvironmentsFragment
}
locales
createdAt
updatedAt
owner {
...UserProfileFragment
}
}
}
Response
{
"data": {
"getPublicIndicators": [
{
"id": "abc123",
"alias": "abc123",
"localizedTitle": LocalizedString,
"localizedSubtitle": LocalizedString,
"localizedAbstract": LocalizedString,
"visibility": "public",
"order": "ascending",
"dockerImage": "abc123",
"github": "abc123",
"isOpenSource": true,
"license": "xyz789",
"localizedDescription": LocalizedString,
"localizedIODescription": LocalizedString,
"environments": [IndicatorEnvironments],
"locales": ["ja"],
"createdAt": "xyz789",
"updatedAt": "abc123",
"owner": UserProfile
}
]
}
}
getPublicProblems
Description
公開されている問題の取得
Response
Returns [Problem!]!
Example
Query
query getPublicProblems {
getPublicProblems {
id
alias
localizedTitle {
...LocalizedStringFragment
}
localizedSubtitle {
...LocalizedStringFragment
}
localizedAbstract {
...LocalizedStringFragment
}
visibility
dockerImage
localizedDescription {
...LocalizedStringFragment
}
github
isOpenSource
license
locales
environments {
...ProblemEnvironmentsFragment
}
localizedIODescription {
...LocalizedStringFragment
}
createdAt
updatedAt
owner {
...UserProfileFragment
}
}
}
Response
{
"data": {
"getPublicProblems": [
{
"id": "abc123",
"alias": "xyz789",
"localizedTitle": LocalizedString,
"localizedSubtitle": LocalizedString,
"localizedAbstract": LocalizedString,
"visibility": "public",
"dockerImage": "xyz789",
"localizedDescription": LocalizedString,
"github": "xyz789",
"isOpenSource": true,
"license": "abc123",
"locales": ["ja"],
"environments": [ProblemEnvironments],
"localizedIODescription": LocalizedString,
"createdAt": "xyz789",
"updatedAt": "abc123",
"owner": UserProfile
}
]
}
}
getS3UploadURL
Description
署名付きURLの取得
Response
Returns an GetS3UploadURLResponse
Arguments
Name | Description |
---|---|
path - String
|
S3のパス |
Example
Query
query getS3UploadURL($path: String) {
getS3UploadURL(path: $path) {
url
}
}
Variables
{"path": "abc123"}
Response
{
"data": {
"getS3UploadURL": {"url": "xyz789"}
}
}
getUserProfile
Description
ユーザのプロフィールの取得。ユーザを指定しない場合はログインユーザに対する結果を取得する。
Response
Returns a UserProfile
Example
Query
query getUserProfile(
$id: String,
$name: String
) {
getUserProfile(
id: $id,
name: $name
) {
id
name
}
}
Variables
{"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b", "name": "ryuji"}
Response
{
"data": {
"getUserProfile": {
"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b",
"name": "xyz789"
}
}
}
Mutations
createAPIKey
Description
APIキーの作成
Example
Query
mutation createAPIKey($force: Boolean) {
createAPIKey(force: $force) {
value
expiresAt
}
}
Variables
{"force": true}
Response
{
"data": {
"createAPIKey": {
"value": "abc123",
"expiresAt": AWSDateTime
}
}
}
createCompetition
Description
コンペの作成
Response
Returns a CreateCompetitionResponse!
Arguments
Name | Description |
---|---|
input - CreateCompetitionInput!
|
コンペ作成リクエストの入力 |
Example
Query
mutation createCompetition($input: CreateCompetitionInput!) {
createCompetition(input: $input) {
id
}
}
Variables
{"input": CreateCompetitionInput}
Response
{"data": {"createCompetition": {"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b"}}}
createIndicator
Description
指標の作成
Response
Returns a CreateIndicatorResponse!
Arguments
Name | Description |
---|---|
input - CreateIndicatorInput!
|
指標作成リクエストの入力 |
Example
Query
mutation createIndicator($input: CreateIndicatorInput!) {
createIndicator(input: $input) {
id
}
}
Variables
{"input": CreateIndicatorInput}
Response
{
"data": {
"createIndicator": {"id": "abc123"}
}
}
createMatch
Description
競技の作成
Response
Returns a CreateMatchResponse!
Arguments
Name | Description |
---|---|
input - CreateMatchInput!
|
競技の作成リクエストの入力 |
Example
Query
mutation createMatch($input: CreateMatchInput!) {
createMatch(input: $input) {
id
}
}
Variables
{"input": CreateMatchInput}
Response
{"data": {"createMatch": {"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b"}}}
createProblem
Description
問題の作成
Response
Returns a CreateProblemResponse!
Arguments
Name | Description |
---|---|
input - CreateProblemInput!
|
問題作成リクエストの入力 |
Example
Query
mutation createProblem($input: CreateProblemInput!) {
createProblem(input: $input) {
id
}
}
Variables
{"input": CreateProblemInput}
Response
{
"data": {
"createProblem": {"id": "abc123"}
}
}
createSolution
Description
解の作成
Response
Returns a CreateSolutionResponse!
Arguments
Name | Description |
---|---|
matchId - String
|
競技のID |
matchAlias - UniqueMatchAliasInput
|
競技のエイリアス |
variable - AWSJSON!
|
解空間の変数 |
Example
Query
mutation createSolution(
$matchId: String,
$matchAlias: UniqueMatchAliasInput,
$variable: AWSJSON!
) {
createSolution(
matchId: $matchId,
matchAlias: $matchAlias,
variable: $variable
) {
matchId
participantType
participantId
trialNo
}
}
Variables
{
"matchId": "04fcaf2c-7289-f4b6-07d9-3a4ec0dab9ad",
"matchAlias": "{ match: 'mc-mop', competition: 'eccomp2024' }",
"variable": AWSJSON
}
Response
{
"data": {
"createSolution": {
"matchId": "04fcaf2c-7289-f4b6-07d9-3a4ec0dab9ad",
"participantType": "User",
"participantId": "8ddca3f7-91da-47d4-f52b-dcf2cd87aa70",
"trialNo": 4
}
}
}
deleteCompetition
Description
コンペの削除
Response
Returns a DeleteCompetitionResponse
Example
Query
mutation deleteCompetition(
$id: String,
$alias: String
) {
deleteCompetition(
id: $id,
alias: $alias
) {
id
}
}
Variables
{
"id": "abc123",
"alias": "xyz789"
}
Response
{
"data": {
"deleteCompetition": {"id": "abc123"}
}
}
deleteIndicator
Description
指標の削除
Response
Returns a DeleteIndicatorResponse
Example
Query
mutation deleteIndicator(
$id: String,
$alias: String
) {
deleteIndicator(
id: $id,
alias: $alias
) {
id
}
}
Variables
{
"id": "xyz789",
"alias": "xyz789"
}
Response
{
"data": {
"deleteIndicator": {"id": "xyz789"}
}
}
deleteMatch
Description
競技の削除
Response
Returns a DeleteMatchResponse!
Arguments
Name | Description |
---|---|
id - String
|
競技のID |
alias - UniqueMatchAliasInput
|
Example
Query
mutation deleteMatch(
$id: String,
$alias: UniqueMatchAliasInput
) {
deleteMatch(
id: $id,
alias: $alias
) {
id
}
}
Variables
{
"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b",
"alias": UniqueMatchAliasInput
}
Response
{"data": {"deleteMatch": {"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b"}}}
deleteProblem
Description
問題の削除
Response
Returns a DeleteProblemResponse
Example
Query
mutation deleteProblem(
$id: String,
$alias: String
) {
deleteProblem(
id: $id,
alias: $alias
) {
id
}
}
Variables
{
"id": "abc123",
"alias": "abc123"
}
Response
{
"data": {
"deleteProblem": {"id": "xyz789"}
}
}
participateCompetition
Description
コンペの参加
Response
Returns a CompetitionParticipant
Example
Query
mutation participateCompetition(
$id: String,
$alias: String
) {
participateCompetition(
id: $id,
alias: $alias
) {
competitionId
type
id
score
ranking
participatedAt
user {
...UserProfileFragment
}
}
}
Variables
{
"id": "xyz789",
"alias": "xyz789"
}
Response
{
"data": {
"participateCompetition": {
"competitionId": "ae383a1f-fef5-47c1-85f9-ef34756d58ac",
"type": "User",
"id": "ae383a1f-fef5-47c1-85f9-ef34756d58ac",
"score": 0.497,
"ranking": 2,
"participatedAt": "2020-01-01T00:00:00Z",
"user": UserProfile
}
}
}
publishCompetition
Description
コンペの可視性の更新
Response
Returns a Competition!
Example
Query
mutation publishCompetition(
$id: String,
$alias: String
) {
publishCompetition(
id: $id,
alias: $alias
) {
id
createdAt
updatedAt
alias
localizedTitle {
...LocalizedStringFragment
}
localizedSubtitle {
...LocalizedStringFragment
}
localizedAbstract {
...LocalizedStringFragment
}
visibility
openAt
closeAt
localizedDescription {
...LocalizedStringFragment
}
localizedRule {
...LocalizedStringFragment
}
mode
locales
submissionURL
owner {
...UserProfileFragment
}
matchIds
participantsCount
isScored
}
}
Variables
{
"id": "xyz789",
"alias": "xyz789"
}
Response
{
"data": {
"publishCompetition": {
"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b",
"createdAt": "xyz789",
"updatedAt": "abc123",
"alias": "eccomp2024",
"localizedTitle": LocalizedString,
"localizedSubtitle": LocalizedString,
"localizedAbstract": LocalizedString,
"visibility": "public",
"openAt": "abc123",
"closeAt": "xyz789",
"localizedDescription": LocalizedString,
"localizedRule": LocalizedString,
"mode": "server_evaluation",
"locales": ["ja"],
"submissionURL": "abc123",
"owner": UserProfile,
"matchIds": ["abc123"],
"participantsCount": 123,
"isScored": false
}
}
}
publishIndicator
Description
指標の可視性の更新
Response
Returns an Indicator!
Example
Query
mutation publishIndicator(
$id: String,
$alias: String
) {
publishIndicator(
id: $id,
alias: $alias
) {
id
alias
localizedTitle {
...LocalizedStringFragment
}
localizedSubtitle {
...LocalizedStringFragment
}
localizedAbstract {
...LocalizedStringFragment
}
visibility
order
dockerImage
github
isOpenSource
license
localizedDescription {
...LocalizedStringFragment
}
localizedIODescription {
...LocalizedStringFragment
}
environments {
...IndicatorEnvironmentsFragment
}
locales
createdAt
updatedAt
owner {
...UserProfileFragment
}
}
}
Variables
{
"id": "abc123",
"alias": "abc123"
}
Response
{
"data": {
"publishIndicator": {
"id": "abc123",
"alias": "abc123",
"localizedTitle": LocalizedString,
"localizedSubtitle": LocalizedString,
"localizedAbstract": LocalizedString,
"visibility": "public",
"order": "ascending",
"dockerImage": "xyz789",
"github": "xyz789",
"isOpenSource": true,
"license": "abc123",
"localizedDescription": LocalizedString,
"localizedIODescription": LocalizedString,
"environments": [IndicatorEnvironments],
"locales": ["ja"],
"createdAt": "abc123",
"updatedAt": "abc123",
"owner": UserProfile
}
}
}
publishProblem
Description
可視性の更新
Example
Query
mutation publishProblem(
$id: String,
$alias: String
) {
publishProblem(
id: $id,
alias: $alias
) {
id
alias
localizedTitle {
...LocalizedStringFragment
}
localizedSubtitle {
...LocalizedStringFragment
}
localizedAbstract {
...LocalizedStringFragment
}
visibility
dockerImage
localizedDescription {
...LocalizedStringFragment
}
github
isOpenSource
license
locales
environments {
...ProblemEnvironmentsFragment
}
localizedIODescription {
...LocalizedStringFragment
}
createdAt
updatedAt
owner {
...UserProfileFragment
}
}
}
Variables
{
"id": "xyz789",
"alias": "xyz789"
}
Response
{
"data": {
"publishProblem": {
"id": "xyz789",
"alias": "abc123",
"localizedTitle": LocalizedString,
"localizedSubtitle": LocalizedString,
"localizedAbstract": LocalizedString,
"visibility": "public",
"dockerImage": "abc123",
"localizedDescription": LocalizedString,
"github": "abc123",
"isOpenSource": true,
"license": "abc123",
"locales": ["ja"],
"environments": [ProblemEnvironments],
"localizedIODescription": LocalizedString,
"createdAt": "xyz789",
"updatedAt": "abc123",
"owner": UserProfile
}
}
}
updateCompetition
Description
コンペの更新
Response
Returns an UpdateCompetitionResponse!
Arguments
Name | Description |
---|---|
id - String!
|
ID |
input - UpdateCompetitionInput!
|
コンペの更新リクエストの入力 |
Example
Query
mutation updateCompetition(
$id: String!,
$input: UpdateCompetitionInput!
) {
updateCompetition(
id: $id,
input: $input
) {
id
}
}
Variables
{
"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b",
"input": UpdateCompetitionInput
}
Response
{"data": {"updateCompetition": {"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b"}}}
updateIndicator
Description
指標の更新
Response
Returns an UpdateIndicatorResponse!
Arguments
Name | Description |
---|---|
id - String!
|
ID |
input - UpdateIndicatorInput!
|
指標の更新リクエストの入力 |
Example
Query
mutation updateIndicator(
$id: String!,
$input: UpdateIndicatorInput!
) {
updateIndicator(
id: $id,
input: $input
) {
id
}
}
Variables
{
"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b",
"input": UpdateIndicatorInput
}
Response
{
"data": {
"updateIndicator": {"id": "xyz789"}
}
}
updateMatch
Description
競技の更新
Response
Returns an UpdateMatchResponse!
Arguments
Name | Description |
---|---|
id - String!
|
ID |
input - UpdateMatchInput!
|
競技の更新リクエストの入力 |
Example
Query
mutation updateMatch(
$id: String!,
$input: UpdateMatchInput!
) {
updateMatch(
id: $id,
input: $input
) {
id
}
}
Variables
{
"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b",
"input": UpdateMatchInput
}
Response
{"data": {"updateMatch": {"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b"}}}
updateProblem
Description
問題の更新
Response
Returns an UpdateProblemResponse!
Arguments
Name | Description |
---|---|
id - String!
|
ID |
input - UpdateProblemInput!
|
問題の更新リクエストの入力 |
Example
Query
mutation updateProblem(
$id: String!,
$input: UpdateProblemInput!
) {
updateProblem(
id: $id,
input: $input
) {
id
}
}
Variables
{
"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b",
"input": UpdateProblemInput
}
Response
{
"data": {
"updateProblem": {"id": "xyz789"}
}
}
Types
APIKey
Fields
Field Name | Description |
---|---|
value - String!
|
APIキーの値 |
expiresAt - AWSDateTime!
|
有効期限 |
Example
{
"value": "xyz789",
"expiresAt": AWSDateTime
}
AWSDateTime
Description
AppSyncで利用可能な日時用の型
Example
AWSDateTime
AWSJSON
Description
AppSyncで利用可能なJSON型
Example
AWSJSON
AppInfo
Boolean
Description
The Boolean
scalar type represents true
or false
.
Example
true
Competition
Description
コンペ
Fields
Field Name | Description |
---|---|
id - String!
|
ID |
createdAt - String!
|
作成日時 |
updatedAt - String!
|
更新日時 |
alias - String!
|
エイリアス |
localizedTitle - LocalizedString!
|
言語ごとのタイトル |
localizedSubtitle - LocalizedString
|
言語ごとのサブタイトル |
localizedAbstract - LocalizedString!
|
言語ごとの要約 |
visibility - Visibility!
|
可視性 |
openAt - String!
|
開始日時 |
closeAt - String!
|
終了日時 |
localizedDescription - LocalizedString
|
言語ごとの説明 |
localizedRule - LocalizedString
|
言語ごとのルール |
mode - CompetitionMode
|
コンペのモード |
locales - [Locale!]!
|
コンペの対応言語 |
submissionURL - String
|
コンペの提出用URL |
owner - UserProfile
|
コンペのオーナー |
matchIds - [String!]!
|
競技のIDの一覧 |
participantsCount - Int!
|
参加者数 |
isScored - Boolean!
|
スコアが登録されているか |
Example
{
"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b",
"createdAt": "xyz789",
"updatedAt": "xyz789",
"alias": "eccomp2024",
"localizedTitle": LocalizedString,
"localizedSubtitle": LocalizedString,
"localizedAbstract": LocalizedString,
"visibility": "public",
"openAt": "abc123",
"closeAt": "xyz789",
"localizedDescription": LocalizedString,
"localizedRule": LocalizedString,
"mode": "server_evaluation",
"locales": ["ja"],
"submissionURL": "abc123",
"owner": UserProfile,
"matchIds": ["abc123"],
"participantsCount": 123,
"isScored": true
}
CompetitionIdentifierInput
CompetitionMode
Description
コンペの開催形式
Values
Enum Value | Description |
---|---|
|
サーバー評価 |
|
ファイル提出 |
Example
"server_evaluation"
CompetitionParticipant
Fields
Field Name | Description |
---|---|
competitionId - String!
|
コンペのID |
type - ParticipantType!
|
参加者の種別 |
id - String!
|
参加者のID |
score - Float
|
競技の結果を総合したコンペのスコア。コンペの主催者が終了後に格納。 |
ranking - Int
|
競技の結果を総合したコンペの総合順位。コンペの主催者が終了後に格納。 |
participatedAt - String!
|
参加時刻 |
user - UserProfile
|
参加者のプロフィール |
Example
{
"competitionId": "ae383a1f-fef5-47c1-85f9-ef34756d58ac",
"type": "User",
"id": "ae383a1f-fef5-47c1-85f9-ef34756d58ac",
"score": 0.497,
"ranking": 2,
"participatedAt": "2020-01-01T00:00:00Z",
"user": UserProfile
}
CompetitionParticipantsResponse
Fields
Field Name | Description |
---|---|
participants - [CompetitionParticipant!]!
|
コンペの参加者の一覧 |
isLast - Boolean!
|
今回取得したデータが全データの最後尾かどうか |
lastFetchedSortKey - String
|
今回取得した最後尾のキー |
Example
{
"participants": [CompetitionParticipant],
"isLast": true,
"lastFetchedSortKey": "xyz789"
}
CreateCompetitionInput
Description
コンペ作成リクエストの入力
Fields
Input Field | Description |
---|---|
alias - String!
|
エイリアス |
localizedTitle - LocalizedStringInput!
|
言語ごとのタイトル |
localizedSubtitle - LocalizedStringInput
|
言語ごとのサブタイトル |
localizedAbstract - LocalizedStringInput!
|
言語ごとの要約 |
visibility - Visibility!
|
可視性 |
openAt - AWSDateTime!
|
開始日時 |
closeAt - AWSDateTime!
|
終了日時 |
localizedDescription - LocalizedStringInput
|
言語ごとの説明 |
localizedRule - LocalizedStringInput
|
言語ごとのルール |
mode - CompetitionMode!
|
コンペのモード |
locales - [Locale!]!
|
コンペの対応言語 |
submissionURL - String
|
コンペの提出用URL |
Example
{
"alias": "eccomp2024",
"localizedTitle": LocalizedStringInput,
"localizedSubtitle": LocalizedStringInput,
"localizedAbstract": LocalizedStringInput,
"visibility": "public",
"openAt": AWSDateTime,
"closeAt": AWSDateTime,
"localizedDescription": LocalizedStringInput,
"localizedRule": LocalizedStringInput,
"mode": "server_evaluation",
"locales": ["ja"],
"submissionURL": "abc123"
}
CreateCompetitionResponse
Description
コンペ作成リクエストの結果
Fields
Field Name | Description |
---|---|
id - String!
|
作成されたコンペのID |
Example
{"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b"}
CreateIndicatorInput
Description
指標の作成リクエストの入力
Fields
Input Field | Description |
---|---|
alias - String!
|
指標のエイリアス |
localizedTitle - LocalizedStringInput!
|
言語ごとの指標のタイトル |
localizedSubtitle - LocalizedStringInput
|
言語ごとの指標のサブタイトル |
localizedAbstract - LocalizedStringInput!
|
言語ごとの指標の要約 |
visibility - Visibility!
|
指標の可視性 |
order - Order!
|
指標の順位の順序 |
dockerImage - String
|
指標のDockerイメージ |
github - String
|
dockerImageのgithubリポジトリのURL |
isOpenSource - Boolean
|
ソースコードがオープンソースであるかどうか |
license - String
|
ソースコードのライセンス |
localizedDescription - LocalizedStringInput
|
言語ごとの指標の説明 |
localizedIODescription - LocalizedStringInput
|
指標のIOの説明 |
environments - [IndicatorEnvironmentsInput!]
|
指標の環境変数 |
locales - [Locale!]
|
指標の対応言語 |
Example
{
"alias": "abc123",
"localizedTitle": LocalizedStringInput,
"localizedSubtitle": LocalizedStringInput,
"localizedAbstract": LocalizedStringInput,
"visibility": "public",
"order": "ascending",
"dockerImage": "abc123",
"github": "xyz789",
"isOpenSource": true,
"license": "abc123",
"localizedDescription": LocalizedStringInput,
"localizedIODescription": LocalizedStringInput,
"environments": [IndicatorEnvironmentsInput],
"locales": ["ja"]
}
CreateIndicatorResponse
Description
指標の作成リクエストの結果
Fields
Field Name | Description |
---|---|
id - String!
|
作成された指標のID |
Example
{"id": "abc123"}
CreateMatchInput
Description
競技作成リクエストの入力
Fields
Input Field | Description |
---|---|
competitionID - String!
|
コンペのID |
problemID - String!
|
競技に使う問題のID |
indicatorID - String!
|
競技に使う指標のID |
alias - String!
|
コンペのエイリアスと競技のエイリアスの組み |
isTutorial - Boolean!
|
チュートリアルの競技かどうか |
successTrialsBudget - Int!
|
各参加者に割り当てられる解の評価回数 |
submissionsBudget - Int!
|
各参加者に割り当てられる解の送信回数 |
problemPublicEnvironments - [KeyValueInput!]!
|
問題で使用される公開環境変数 |
indicatorPublicEnvironments - [KeyValueInput!]!
|
指標で使用される公開環境変数 |
problemPrivateEnvironments - [KeyValueInput!]!
|
問題で使用される非公開の環境変数 |
indicatorPrivateEnvironments - [KeyValueInput!]!
|
指標で使用される非公開の環境変数 |
openAt - AWSDateTime
|
競技の開始日時 |
closeAt - AWSDateTime
|
競技の終了日時 |
Example
{
"competitionID": "xyz789",
"problemID": "b9e9c56f-8fb8-6e0c-9781-5904891bbd31",
"indicatorID": "2ebf5d5a-5a10-5674-f3d3-d2b0d214e43f",
"alias": "eccomp2024#mc-mop",
"isTutorial": true,
"successTrialsBudget": 123,
"submissionsBudget": 123,
"problemPublicEnvironments": [KeyValueInput],
"indicatorPublicEnvironments": [KeyValueInput],
"problemPrivateEnvironments": [KeyValueInput],
"indicatorPrivateEnvironments": [KeyValueInput],
"openAt": AWSDateTime,
"closeAt": AWSDateTime
}
CreateMatchResponse
Description
競技作成リクエストの出力
Fields
Field Name | Description |
---|---|
id - String!
|
作成されたコンペのID |
Example
{"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b"}
CreateProblemInput
Description
問題の作成リクエストの入力
Fields
Input Field | Description |
---|---|
alias - String!
|
問題のエイリアス |
localizedTitle - LocalizedStringInput!
|
言語ごとの問題のタイトル |
localizedSubtitle - LocalizedStringInput
|
言語ごとの問題のサブタイトル |
localizedAbstract - LocalizedStringInput!
|
言語ごとの問題の要約 |
visibility - Visibility!
|
問題の可視性 |
dockerImage - String
|
問題のDockerイメージ |
localizedDescription - LocalizedStringInput
|
言語ごとの指標の説明 |
github - String
|
dockerImageのgithubリポジトリのURL |
isOpenSource - Boolean
|
ソースコードがオープンソースであるかどうか |
license - String
|
ソースコードのライセンス |
locales - [Locale!]
|
問題の対応言語 |
environments - [ProblemEnvironmentsInput!]
|
問題の環境変数 |
localizedIODescription - LocalizedStringInput
|
問題のIOの説明 |
Example
{
"alias": "abc123",
"localizedTitle": LocalizedStringInput,
"localizedSubtitle": LocalizedStringInput,
"localizedAbstract": LocalizedStringInput,
"visibility": "public",
"dockerImage": "abc123",
"localizedDescription": LocalizedStringInput,
"github": "abc123",
"isOpenSource": true,
"license": "abc123",
"locales": ["ja"],
"environments": [ProblemEnvironmentsInput],
"localizedIODescription": LocalizedStringInput
}
CreateProblemResponse
Description
問題の作成リクエストの結果
Fields
Field Name | Description |
---|---|
id - String!
|
作成された問題のID |
Example
{"id": "xyz789"}
CreateSolutionResponse
Description
解の作成リクエストの結果
Example
{
"matchId": "04fcaf2c-7289-f4b6-07d9-3a4ec0dab9ad",
"participantType": "User",
"participantId": "8ddca3f7-91da-47d4-f52b-dcf2cd87aa70",
"trialNo": 4
}
DeleteCompetitionResponse
Description
コンペの削除リクエストの結果
Fields
Field Name | Description |
---|---|
id - String!
|
削除されたコンペのID |
Example
{"id": "xyz789"}
DeleteIndicatorResponse
Description
指標の削除リクエストの結果
Fields
Field Name | Description |
---|---|
id - String!
|
削除された指標のID |
Example
{"id": "abc123"}
DeleteMatchResponse
Description
競技削除リクエストのレスポンス
Fields
Field Name | Description |
---|---|
id - String!
|
削除されたコンペのID |
Example
{"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b"}
DeleteProblemResponse
Description
問題の削除リクエストの結果
Fields
Field Name | Description |
---|---|
id - String!
|
削除された問題のID |
Example
{"id": "abc123"}
Float
Description
The Float
scalar type represents signed double-precision fractional values as specified by IEEE 754.
Example
987.65
GetCompetitionsByParticipantUserResponse
Fields
Field Name | Description |
---|---|
participating - [Competition!]!
|
参加中のコンペの一覧(参加等登録をしたコンペのうち終了日前のコンペの一覧) |
participated - [Competition!]!
|
参加中のコンペの一覧(参加等登録をしたコンペのうち終了日後のコンペの一覧) |
Example
{
"participating": [Competition],
"participated": [Competition]
}
GetS3UploadURLResponse
Description
署名付きURLの取得の結果
Fields
Field Name | Description |
---|---|
url - String!
|
署名付きURL |
Example
{"url": "abc123"}
Indicator
Description
指標
Fields
Field Name | Description |
---|---|
id - String!
|
指標のID |
alias - String!
|
指標のエイリアス |
localizedTitle - LocalizedString!
|
言語ごとの指標のタイトル |
localizedSubtitle - LocalizedString
|
言語ごとの指標のサブタイトル |
localizedAbstract - LocalizedString!
|
言語ごとの指標の要約 |
visibility - Visibility!
|
指標の可視性 |
order - Order!
|
指標の順位の順序 |
dockerImage - String
|
指標のDockerイメージ |
github - String
|
指標のGitHubリポジトリ |
isOpenSource - Boolean
|
ソースコードがオープンソースであるかどうか |
license - String
|
ソースコードのライセンス |
localizedDescription - LocalizedString
|
言語ごとの指標の説明 |
localizedIODescription - LocalizedString
|
指標のIOの説明 |
environments - [IndicatorEnvironments!]
|
指標の環境変数 |
locales - [Locale!]!
|
指標の対応言語 |
createdAt - String!
|
指標の作成日時 |
updatedAt - String!
|
指標の更新日時 |
owner - UserProfile
|
指標のオーナー |
Example
{
"id": "abc123",
"alias": "xyz789",
"localizedTitle": LocalizedString,
"localizedSubtitle": LocalizedString,
"localizedAbstract": LocalizedString,
"visibility": "public",
"order": "ascending",
"dockerImage": "xyz789",
"github": "abc123",
"isOpenSource": false,
"license": "xyz789",
"localizedDescription": LocalizedString,
"localizedIODescription": LocalizedString,
"environments": [IndicatorEnvironments],
"locales": ["ja"],
"createdAt": "abc123",
"updatedAt": "abc123",
"owner": UserProfile
}
IndicatorEnvironments
Description
指標の環境変数の型
Fields
Field Name | Description |
---|---|
key - String!
|
環境変数のキー |
localizedDescription - LocalizedString!
|
環境変数の説明 |
defaultValue - String
|
環境変数のデフォルト値 |
Example
{
"key": "abc123",
"localizedDescription": LocalizedString,
"defaultValue": "xyz789"
}
IndicatorEnvironmentsInput
Description
指標の環境変数の入力型
Fields
Input Field | Description |
---|---|
key - String!
|
環境変数のキー |
localizedDescription - LocalizedStringInput!
|
環境変数の説明 |
defaultValue - String
|
環境変数のデフォルト値 |
Example
{
"key": "abc123",
"localizedDescription": LocalizedStringInput,
"defaultValue": "xyz789"
}
Int
Description
The Int
scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.
Example
987
KeyValue
KeyValueInput
Locale
Values
Enum Value | Description |
---|---|
|
日本語 |
|
英語 |
Example
"ja"
LocalizedString
LocalizedStringInput
Match
Description
競技
Fields
Field Name | Description |
---|---|
id - String!
|
ID |
createdAt - String!
|
作成日時 |
updatedAt - String!
|
更新日時 |
competition - Competition
|
コンペ |
problem - Problem
|
競技に使う問題 |
indicator - Indicator
|
競技に使う指標 |
alias - String!
|
競技のエイリアス |
successTrialsBudget - Int!
|
各参加者に割り当てられる解の評価回数 |
submissionsBudget - Int!
|
各参加者に割り当てられる解の送信回数 |
isTutorial - Boolean!
|
チュートリアルの競技かどうか |
problemPublicEnvironments - [KeyValue!]!
|
問題で使用される公開環境変数 |
indicatorPublicEnvironments - [KeyValue!]!
|
指標で使用される公開環境変数 |
problemPrivateEnvironments - [NullableKeyValue!]!
|
問題で使用される非公開の環境変数 |
indicatorPrivateEnvironments - [NullableKeyValue!]!
|
指標で使用される非公開の環境変数 |
openAt - String!
|
競技の開始日時 |
closeAt - String!
|
競技の終了日時 |
scoredParticipantsCount - Int
|
スコアが登録された参加者数 |
Example
{
"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b",
"createdAt": "xyz789",
"updatedAt": "abc123",
"competition": Competition,
"problem": Problem,
"indicator": Indicator,
"alias": "mc-mop",
"successTrialsBudget": 123,
"submissionsBudget": 123,
"isTutorial": false,
"problemPublicEnvironments": [KeyValue],
"indicatorPublicEnvironments": [KeyValue],
"problemPrivateEnvironments": [NullableKeyValue],
"indicatorPrivateEnvironments": [NullableKeyValue],
"openAt": "xyz789",
"closeAt": "xyz789",
"scoredParticipantsCount": 123
}
MatchIdentifierInput
Fields
Input Field | Description |
---|---|
id - String
|
競技のID |
alias - UniqueMatchAliasInput
|
競技のエイリアス |
Example
{
"id": "xyz789",
"alias": UniqueMatchAliasInput
}
MatchParticipant
Description
競技の参加者
Fields
Field Name | Description |
---|---|
matchId - String!
|
競技のID |
type - ParticipantType!
|
参加者の種別 |
id - String!
|
参加者のID |
successTrialsNum - Int!
|
提出した解のうち評価とスコアの計算に成功した試行の数 |
submissionsNum - Int!
|
解の提出回数 |
score - Float
|
競技に対するスコア |
participatedAt - String!
|
参加時刻 |
user - UserProfile
|
参加者のプロフィール |
Example
{
"matchId": "ae383a1f-fef5-47c1-85f9-ef34756d58ac",
"type": "User",
"id": "ae383a1f-fef5-47c1-85f9-ef34756d58ac",
"successTrialsNum": 8,
"submissionsNum": 15,
"score": 0.497,
"participatedAt": "2020-01-01T00:00:00Z",
"user": UserProfile
}
MatchParticipantScore
MatchParticipantScores
Fields
Field Name | Description |
---|---|
participant - MatchParticipant!
|
競技の参加者 |
scores - [MatchParticipantScore!]!
|
競技の参加者のスコア |
Example
{
"participant": MatchParticipant,
"scores": [MatchParticipantScore]
}
MatchParticipantsResponse
Fields
Field Name | Description |
---|---|
participants - [MatchParticipant!]!
|
競技の参加者の一覧 |
isLast - Boolean!
|
今回取得したデータが全データの最後尾かどうか |
lastFetchedSortKey - String
|
今回取得した最後尾のキー |
Example
{
"participants": [MatchParticipant],
"isLast": true,
"lastFetchedSortKey": "abc123"
}
MatchTrial
Fields
Field Name | Description |
---|---|
trialNo - Int!
|
試行番号 |
matchId - String!
|
競技のID |
participantType - ParticipantType!
|
参加者の種別 |
participantId - String!
|
参加者のID |
userId - String!
|
ユーザID |
status - MatchTrialStatus!
|
試行の状況 |
solution - MatchTrialSolution!
|
送信された解 |
evaluation - MatchTrialEvaluation
|
評価結果 |
score - MatchTrialScore
|
スコアの計算結果 |
createdAt - String!
|
試行の作成日時(解の作成日時と同じ) |
Example
{
"trialNo": 1,
"matchId": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b",
"participantType": "User",
"participantId": "ae383a1f-fef5-47c1-85f9-ef34756d58ac",
"userId": "ae383a1f-fef5-47c1-85f9-ef34756d58ac",
"status": "evaluating",
"solution": MatchTrialSolution,
"evaluation": MatchTrialEvaluation,
"score": MatchTrialScore,
"createdAt": "xyz789"
}
MatchTrialEvaluation
Example
{
"objective": AWSJSON,
"constraint": AWSJSON,
"feasible": false,
"info": AWSJSON,
"startedAt": "abc123",
"finishedAt": "xyz789",
"error": "abc123",
"status": "Success"
}
MatchTrialScore
Fields
Field Name | Description |
---|---|
value - Float
|
スコアの値 |
startedAt - String
|
スコア計算の開始日時 |
finishedAt - String
|
スコア計算の終了日時 |
error - String
|
スコア計算のエラー情報 |
status - RunnerStatus!
|
スコア計算のステータス |
Example
{
"value": 987.65,
"startedAt": "abc123",
"finishedAt": "abc123",
"error": "xyz789",
"status": "Success"
}
MatchTrialSolution
MatchTrialStatus
Values
Enum Value | Description |
---|---|
|
評価中 |
|
スコア計算中 |
|
成功 |
|
評価失敗 |
|
スコア計算失敗 |
Example
"evaluating"
MatchTrialsRangeInput
Fields
Input Field | Description |
---|---|
startTrialNo - Int
|
データの一番最初の試行番号。0以下の値を指定した場合は、[現在のユーザの解の送信数] + [指定した値]となる。endTrialNoを指定している場合は使用不可能なので、代わりにlimitを使ってデータ数を決定する。 |
endTrialNo - Int
|
データの一番最後の試行番号。0以下の値を指定した場合は、[現在のユーザの解の送信数] + [指定した値]となる。startTrialNoを指定している場合は使用不可能なので、代わりにlimitを使ってデータ数を決定する。 |
limit - Int
|
取得数の上限(正の整数) |
Example
{"startTrialNo": 1, "endTrialNo": 1, "limit": 20}
MatchTrialsResponse
Fields
Field Name | Description |
---|---|
isFirst - Boolean!
|
一番最初の試行番号まで取得した場合にtrue |
isLast - Boolean!
|
一番最後の試行番号まで取得した場合にtrue |
startTrialNo - Int
|
取得したデータの一番最初の試行番号 |
endTrialNo - Int
|
取得したデータの一番最後の試行番号 |
trials - [MatchTrial!]!
|
試行の一覧 |
Example
{
"isFirst": true,
"isLast": true,
"startTrialNo": 1,
"endTrialNo": 10,
"trials": [MatchTrial]
}
NullableKeyValue
Order
Values
Enum Value | Description |
---|---|
|
昇順 |
|
降順 |
Example
"ascending"
ParticipantInput
Description
参加者を特定するための入力。userIdのみもしくはtypeとidの両方を指定する必要がある。userIdのみを指定した場合は、当該ユーザがチームで参加している場合は当該チーム、個人で参加している場合は当該ユーザが参加者として利用される。
Fields
Input Field | Description |
---|---|
type - ParticipantType
|
参加者の種別 |
id - String
|
参加者のID |
userId - String
|
ユーザID |
Example
{
"type": "User",
"id": "ae383a1f-fef5-47c1-85f9-ef34756d58ac",
"userId": "ae383a1f-fef5-47c1-85f9-ef34756d58ac"
}
ParticipantType
Description
参加者の種別
Values
Enum Value | Description |
---|---|
|
ユーザ |
|
チーム |
Example
"User"
Problem
Description
問題
Fields
Field Name | Description |
---|---|
id - String!
|
問題のID |
alias - String!
|
問題のエイリアス |
localizedTitle - LocalizedString!
|
言語ごとの問題のタイトル |
localizedSubtitle - LocalizedString
|
言語ごとの問題のサブタイトル |
localizedAbstract - LocalizedString!
|
言語ごとの問題の要約 |
visibility - Visibility!
|
問題の可視性 |
dockerImage - String
|
問題のDockerイメージ |
localizedDescription - LocalizedString
|
言語ごとの問題の説明 |
github - String
|
dockerImageのgithubリポジトリのURL |
isOpenSource - Boolean
|
ソースコードがオープンソースであるかどうか |
license - String
|
ソースコードのライセンス |
locales - [Locale!]!
|
問題の対応言語 |
environments - [ProblemEnvironments!]
|
問題の環境変数 |
localizedIODescription - LocalizedString
|
問題のIOの説明 |
createdAt - String!
|
問題の作成日時 |
updatedAt - String!
|
問題の更新日時 |
owner - UserProfile
|
問題のオーナー |
Example
{
"id": "abc123",
"alias": "abc123",
"localizedTitle": LocalizedString,
"localizedSubtitle": LocalizedString,
"localizedAbstract": LocalizedString,
"visibility": "public",
"dockerImage": "abc123",
"localizedDescription": LocalizedString,
"github": "abc123",
"isOpenSource": false,
"license": "xyz789",
"locales": ["ja"],
"environments": [ProblemEnvironments],
"localizedIODescription": LocalizedString,
"createdAt": "xyz789",
"updatedAt": "abc123",
"owner": UserProfile
}
ProblemEnvironments
Description
問題の環境変数の型
Fields
Field Name | Description |
---|---|
key - String!
|
|
localizedDescription - LocalizedString!
|
|
defaultValue - String
|
Example
{
"key": "abc123",
"localizedDescription": LocalizedString,
"defaultValue": "abc123"
}
ProblemEnvironmentsInput
Description
問題の環境変数の入力型
Fields
Input Field | Description |
---|---|
key - String!
|
|
localizedDescription - LocalizedStringInput!
|
|
defaultValue - String
|
Example
{
"key": "xyz789",
"localizedDescription": LocalizedStringInput,
"defaultValue": "abc123"
}
RunnerStatus
Description
EvaluatorやScorerにおける実行ステータス
Values
Enum Value | Description |
---|---|
|
成功 |
|
失敗 |
Example
"Success"
String
Description
The String
scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
Example
"abc123"
UniqueMatchAliasInput
UpdateCompetitionInput
Fields
Input Field | Description |
---|---|
alias - String
|
エイリアス |
localizedTitle - LocalizedStringInput
|
言語ごとのタイトル |
localizedSubtitle - LocalizedStringInput
|
言語ごとのサブタイトル |
localizedAbstract - LocalizedStringInput
|
言語ごとの要約 |
visibility - Visibility
|
可視性 |
openAt - AWSDateTime
|
開始日時 |
closeAt - AWSDateTime
|
終了日時 |
localizedDescription - LocalizedStringInput
|
言語ごとの説明 |
localizedRule - LocalizedStringInput
|
言語ごとのルール |
mode - CompetitionMode
|
コンペのモード |
locales - [Locale!]
|
コンペの対応言語 |
submissionURL - String
|
コンペの提出用URL |
Example
{
"alias": "eccomp2024",
"localizedTitle": LocalizedStringInput,
"localizedSubtitle": LocalizedStringInput,
"localizedAbstract": LocalizedStringInput,
"visibility": "public",
"openAt": AWSDateTime,
"closeAt": AWSDateTime,
"localizedDescription": LocalizedStringInput,
"localizedRule": LocalizedStringInput,
"mode": "server_evaluation",
"locales": ["ja"],
"submissionURL": "xyz789"
}
UpdateCompetitionResponse
Description
コンペ作成リクエストの結果
Fields
Field Name | Description |
---|---|
id - String!
|
作成されたコンペのID |
Example
{"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b"}
UpdateIndicatorInput
Fields
Input Field | Description |
---|---|
alias - String
|
指標のエイリアス |
localizedTitle - LocalizedStringInput
|
言語ごとの指標のタイトル |
localizedSubtitle - LocalizedStringInput
|
言語ごとの指標のサブタイトル |
localizedAbstract - LocalizedStringInput
|
言語ごとの指標の要約 |
visibility - Visibility
|
指標の可視性 |
order - Order
|
指標の順位の順序 |
dockerImage - String
|
指標のDockerイメージ |
github - String
|
dockerImageのgithubリポジトリのURL |
isOpenSource - Boolean
|
ソースコードがオープンソースであるかどうか |
license - String
|
ソースコードのライセンス |
localizedDescription - LocalizedStringInput
|
言語ごとの指標の説明 |
localizedIODescription - LocalizedStringInput
|
指標のIOの説明 |
environments - [IndicatorEnvironmentsInput!]
|
指標の環境変数 |
locales - [Locale!]
|
指標の対応言語 |
Example
{
"alias": "abc123",
"localizedTitle": LocalizedStringInput,
"localizedSubtitle": LocalizedStringInput,
"localizedAbstract": LocalizedStringInput,
"visibility": "public",
"order": "ascending",
"dockerImage": "xyz789",
"github": "abc123",
"isOpenSource": true,
"license": "xyz789",
"localizedDescription": LocalizedStringInput,
"localizedIODescription": LocalizedStringInput,
"environments": [IndicatorEnvironmentsInput],
"locales": ["ja"]
}
UpdateIndicatorResponse
Fields
Field Name | Description |
---|---|
id - String!
|
更新された指標のID |
Example
{"id": "xyz789"}
UpdateMatchInput
Description
競技更新リクエストの入力
Fields
Input Field | Description |
---|---|
alias - String
|
競技のエイリアス |
isTutorial - Boolean
|
チュートリアルの競技かどうか |
problemPublicEnvironments - [KeyValueInput!]
|
問題で使用される公開環境変数 |
indicatorPublicEnvironments - [KeyValueInput!]
|
指標で使用される公開環境変数 |
problemPrivateEnvironments - [KeyValueInput!]
|
問題で使用される非公開の環境変数 |
indicatorPrivateEnvironments - [KeyValueInput!]
|
指標で使用される非公開の環境変数 |
openAt - AWSDateTime
|
競技の開始日時 |
closeAt - AWSDateTime
|
競技の終了日時 |
Example
{
"alias": "xyz789",
"isTutorial": false,
"problemPublicEnvironments": [KeyValueInput],
"indicatorPublicEnvironments": [KeyValueInput],
"problemPrivateEnvironments": [KeyValueInput],
"indicatorPrivateEnvironments": [KeyValueInput],
"openAt": AWSDateTime,
"closeAt": AWSDateTime
}
UpdateMatchResponse
Description
競技更新リクエストの出力
Fields
Field Name | Description |
---|---|
id - String!
|
更新されたコンペのID |
Example
{"id": "dd69dc7f-5d82-4f2c-9be7-420a6f77202b"}
UpdateProblemInput
Description
問題の更新リクエストの入力
Fields
Input Field | Description |
---|---|
alias - String
|
問題のエイリアス |
localizedTitle - LocalizedStringInput
|
言語ごとの問題のタイトル |
localizedSubtitle - LocalizedStringInput
|
言語ごとの問題のサブタイトル |
localizedAbstract - LocalizedStringInput
|
言語ごとの問題の要約 |
visibility - Visibility
|
問題の可視性 |
dockerImage - String
|
問題のDockerイメージ |
github - String
|
dockerImageのgithubリポジトリのURL |
isOpenSource - Boolean
|
ソースコードがオープンソースであるかどうか |
license - String
|
ソースコードのライセンス |
localizedDescription - LocalizedStringInput
|
言語ごとの指標の説明 |
localizedIODescription - LocalizedStringInput
|
問題のIOの説明 |
environments - [ProblemEnvironmentsInput!]
|
問題の環境変数 |
locales - [Locale!]
|
問題の対応言語 |
Example
{
"alias": "xyz789",
"localizedTitle": LocalizedStringInput,
"localizedSubtitle": LocalizedStringInput,
"localizedAbstract": LocalizedStringInput,
"visibility": "public",
"dockerImage": "abc123",
"github": "abc123",
"isOpenSource": false,
"license": "xyz789",
"localizedDescription": LocalizedStringInput,
"localizedIODescription": LocalizedStringInput,
"environments": [ProblemEnvironmentsInput],
"locales": ["ja"]
}
UpdateProblemResponse
Description
問題の更新リクエストの結果
Fields
Field Name | Description |
---|---|
id - String!
|
更新された問題のID |
Example
{"id": "xyz789"}
UserProfile
VersionStatusMessage
Example
{
"label": "Error",
"labelColor": "red",
"message": "This version is not latest. Please update opthub-client version.",
"messageColor": "black"
}
Visibility
Description
コンペ、問題、指標で用いる可視性
Values
Enum Value | Description |
---|---|
|
公開 |
|
非公開 |
|
限定公開 |
Example
"public"