dYdX Arena Leaderboard GraphQL API Reference

Welcome to the dYdX Arena Leaderboard GraphQL API Reference!

Terms of Service

https://dydxarena.com/terms

API Endpoints
# Staging:
https://leaderboard-api-dev.openreach.tech/graphql-trader

Note

Please use a GraphQL client(ex. Altair) to access the dev API endpoint.

Queries

addressCompetitions

Response

Returns an AddressCompetitionsResult!

Arguments
Name Description
input - AddressCompetitionsInput!

Example

Query
query AddressCompetitions($input: AddressCompetitionsInput!) {
  addressCompetitions(input: $input) {
    competitions {
      competition {
        competitionId
        title
        description
        participantUpperLimit
        participantLowerLimit
        host {
          address
          name
        }
        totalPrize
        minimumDeposit
        minimumTradingVolume
        imageUrl
        schedules {
          category {
            categoryId
            name
            description
          }
          scheduledDatetime
        }
        status {
          statusId
          name
          phasedAt
        }
      }
      competitionParticipantStatus {
        statusId
        name
        phasedAt
      }
      competitionParticipantNote
      ranking
      performanceBaseline
      prizeUsdAmount
      roi
      pnl
      totalVolume
    }
    pagination {
      totalCount
      limit
      offset
    }
  }
}
Variables
{"input": AddressCompetitionsInput}
Response
{
  "data": {
    "addressCompetitions": {
      "competitions": [AddressCompetition],
      "pagination": Pagination
    }
  }
}

addressCurrentCompetition

Response

Returns an AddressCurrentCompetitionResult!

Arguments
Name Description
input - AddressCurrentCompetitionInput!

Example

Query
query AddressCurrentCompetition($input: AddressCurrentCompetitionInput!) {
  addressCurrentCompetition(input: $input) {
    competition {
      competitionId
      title
      description
      participantUpperLimit
      participantLowerLimit
      host {
        address
        name
      }
      totalPrize
      minimumDeposit
      minimumTradingVolume
      imageUrl
      schedules {
        category {
          categoryId
          name
          description
        }
        scheduledDatetime
      }
      status {
        statusId
        name
        phasedAt
      }
    }
    ranking {
      address {
        address
        name
      }
      performanceBaseline
      ranking
      roi
      pnl
      calculatedAt
      totalVolume
    }
    competitionParticipantStatus {
      statusId
      name
      phasedAt
    }
  }
}
Variables
{"input": AddressCurrentCompetitionInput}
Response
{
  "data": {
    "addressCurrentCompetition": {
      "competition": CompetitionSummary,
      "ranking": CompetitionRanking,
      "competitionParticipantStatus": StatusPhase
    }
  }
}

addressCurrentCompetitionTransfers

Arguments
Name Description
input - AddressCurrentCompetitionTransfersInput!

Example

Query
query AddressCurrentCompetitionTransfers($input: AddressCurrentCompetitionTransfersInput!) {
  addressCurrentCompetitionTransfers(input: $input) {
    transfers {
      blockHeight
      blockTime
      category {
        categoryId
        name
        description
      }
      amount
      senderAddress
      recipientAddress
      transactionHash
    }
    pagination {
      totalCount
      limit
      offset
    }
  }
}
Variables
{"input": AddressCurrentCompetitionTransfersInput}
Response
{
  "data": {
    "addressCurrentCompetitionTransfers": {
      "transfers": [CompetitionTransfer],
      "pagination": Pagination
    }
  }
}

addressName

Response

Returns an AddressNameResult!

Arguments
Name Description
input - AddressNameInput!

Example

Query
query AddressName($input: AddressNameInput!) {
  addressName(input: $input) {
    name
  }
}
Variables
{"input": AddressNameInput}
Response
{
  "data": {
    "addressName": {"name": "xyz789"}
  }
}

addressPastCompetitions

Response

Returns an AddressPastCompetitionsResult!

Arguments
Name Description
input - AddressPastCompetitionsInput!

Example

Query
query AddressPastCompetitions($input: AddressPastCompetitionsInput!) {
  addressPastCompetitions(input: $input) {
    competitions {
      competition {
        competitionId
        title
        description
        participantUpperLimit
        participantLowerLimit
        host {
          address
          name
        }
        totalPrize
        minimumDeposit
        minimumTradingVolume
        imageUrl
        schedules {
          category {
            categoryId
            name
            description
          }
          scheduledDatetime
        }
        status {
          statusId
          name
          phasedAt
        }
      }
      rank
      prize
      performanceBaseline
      roi
      pnl
    }
    pagination {
      totalCount
      limit
      offset
    }
  }
}
Variables
{"input": AddressPastCompetitionsInput}
Response
{
  "data": {
    "addressPastCompetitions": {
      "competitions": [AddressPastCompetition],
      "pagination": Pagination
    }
  }
}

addressProfile

Response

Returns an AddressProfileResult!

Arguments
Name Description
input - AddressProfileInput!

Example

Query
query AddressProfile($input: AddressProfileInput!) {
  addressProfile(input: $input) {
    address
    name
    addressImageUrl
    xAccountUserName
  }
}
Variables
{"input": AddressProfileInput}
Response
{
  "data": {
    "addressProfile": {
      "address": "xyz789",
      "name": "abc123",
      "addressImageUrl": "xyz789",
      "xAccountUserName": "xyz789"
    }
  }
}

competition

Response

Returns a CompetitionResult!

Arguments
Name Description
input - CompetitionInput!

Example

Query
query Competition($input: CompetitionInput!) {
  competition(input: $input) {
    competition {
      competitionId
      title
      description
      participantUpperLimit
      participantLowerLimit
      host {
        address
        name
      }
      totalPrize
      minimumDeposit
      minimumTradingVolume
      imageUrl
      schedules {
        category {
          categoryId
          name
          description
        }
        scheduledDatetime
      }
      status {
        statusId
        name
        phasedAt
      }
      prizeRules {
        rankFrom
        rankTo
        amount
      }
      outcomeCsvUrl
      defaultLeaderboardSortOption {
        targetColumn
        orderBy
      }
    }
  }
}
Variables
{"input": CompetitionInput}
Response
{"data": {"competition": {"competition": Competition}}}

competitionCurrentDynamicPrizeRule

Arguments
Name Description
input - CompetitionCurrentDynamicPrizeRuleInput!

Example

Query
query CompetitionCurrentDynamicPrizeRule($input: CompetitionCurrentDynamicPrizeRuleInput!) {
  competitionCurrentDynamicPrizeRule(input: $input) {
    currentTradingVolumeUsd
    currentDynamicPrizeRule {
      targetTradingVolumeUsd
      competitionPrizeCategory {
        categoryId
        name
        description
      }
      rankFrom
      rankTo
      amount
    }
  }
}
Variables
{"input": CompetitionCurrentDynamicPrizeRuleInput}
Response
{
  "data": {
    "competitionCurrentDynamicPrizeRule": {
      "currentTradingVolumeUsd": "xyz789",
      "currentDynamicPrizeRule": [
        CompetitionDynamicPrizeRule
      ]
    }
  }
}

competitionDynamicPrizeRules

Arguments
Name Description
input - CompetitionDynamicPrizeRulesInput!

Example

Query
query CompetitionDynamicPrizeRules($input: CompetitionDynamicPrizeRulesInput!) {
  competitionDynamicPrizeRules(input: $input) {
    prizeRules {
      targetTradingVolumeUsd
      competitionPrizeCategory {
        categoryId
        name
        description
      }
      totalCategoryPrizeAmount
    }
  }
}
Variables
{"input": CompetitionDynamicPrizeRulesInput}
Response
{
  "data": {
    "competitionDynamicPrizeRules": {
      "prizeRules": [CompetitionDynamicPrizeRuleSummary]
    }
  }
}

competitionEnrolledParticipantsNumber

Example

Query
query CompetitionEnrolledParticipantsNumber($input: CompetitionEnrolledParticipantsNumberInput!) {
  competitionEnrolledParticipantsNumber(input: $input) {
    enrolledParticipantsNumber
  }
}
Variables
{"input": CompetitionEnrolledParticipantsNumberInput}
Response
{
  "data": {
    "competitionEnrolledParticipantsNumber": {"enrolledParticipantsNumber": 987}
  }
}

competitionFinalOutcome

Response

Returns a CompetitionFinalOutcomeResult!

Arguments
Name Description
input - CompetitionFinalOutcomeInput!

Example

Query
query CompetitionFinalOutcome($input: CompetitionFinalOutcomeInput!) {
  competitionFinalOutcome(input: $input) {
    myOutcome {
      address {
        address
        name
      }
      ranking
      performanceBaseline
      prizeUsdAmount
      pnl
      roi
    }
    outcomes {
      address {
        address
        name
      }
      ranking
      performanceBaseline
      prizeUsdAmount
      pnl
      roi
    }
    pagination {
      totalCount
      limit
      offset
    }
  }
}
Variables
{"input": CompetitionFinalOutcomeInput}
Response
{
  "data": {
    "competitionFinalOutcome": {
      "myOutcome": CompetitionFinalOutcome,
      "outcomes": [CompetitionFinalOutcome],
      "pagination": Pagination
    }
  }
}

competitionLeaderboard

Response

Returns a CompetitionLeaderboardResult!

Arguments
Name Description
input - CompetitionLeaderboardInput!

Example

Query
query CompetitionLeaderboard($input: CompetitionLeaderboardInput!) {
  competitionLeaderboard(input: $input) {
    myRanking {
      address {
        address
        name
      }
      performanceBaseline
      ranking
      roi
      pnl
      calculatedAt
      totalVolume
    }
    rankings {
      address {
        address
        name
      }
      performanceBaseline
      ranking
      roi
      pnl
      calculatedAt
      totalVolume
    }
    pagination {
      totalCount
      limit
      offset
    }
  }
}
Variables
{"input": CompetitionLeaderboardInput}
Response
{
  "data": {
    "competitionLeaderboard": {
      "myRanking": CompetitionRanking,
      "rankings": [CompetitionRanking],
      "pagination": Pagination
    }
  }
}

competitionParticipant

Response

Returns a CompetitionParticipantResult!

Arguments
Name Description
input - CompetitionParticipantInput!

Example

Query
query CompetitionParticipant($input: CompetitionParticipantInput!) {
  competitionParticipant(input: $input) {
    participant {
      competitionParticipantId
      address {
        address
        name
      }
      status {
        statusId
        name
        phasedAt
      }
      equity
    }
  }
}
Variables
{"input": CompetitionParticipantInput}
Response
{
  "data": {
    "competitionParticipant": {
      "participant": CompetitionParticipant
    }
  }
}

competitionParticipantStatuses

Example

Query
query CompetitionParticipantStatuses {
  competitionParticipantStatuses {
    statuses {
      statusId
      name
      description
    }
  }
}
Response
{
  "data": {
    "competitionParticipantStatuses": {
      "statuses": [Status]
    }
  }
}

competitionParticipants

Response

Returns a CompetitionParticipantsResult!

Arguments
Name Description
input - CompetitionParticipantsInput!

Example

Query
query CompetitionParticipants($input: CompetitionParticipantsInput!) {
  competitionParticipants(input: $input) {
    myParticipation {
      competitionParticipantId
      address {
        address
        name
      }
      status {
        statusId
        name
        phasedAt
      }
      equity
    }
    participants {
      competitionParticipantId
      address {
        address
        name
      }
      status {
        statusId
        name
        phasedAt
      }
      equity
    }
    pagination {
      totalCount
      limit
      offset
    }
  }
}
Variables
{"input": CompetitionParticipantsInput}
Response
{
  "data": {
    "competitionParticipants": {
      "myParticipation": CompetitionParticipant,
      "participants": [CompetitionParticipant],
      "pagination": Pagination
    }
  }
}

competitionStatistics

Response

Returns a CompetitionStatisticsResult!

Example

Query
query CompetitionStatistics {
  competitionStatistics {
    totalHostedCompetitionsNumber
    totalEnrolledCompetitionParticipantsNumber
    totalPaidOutPrizesUsdAmount
  }
}
Response
{
  "data": {
    "competitionStatistics": {
      "totalHostedCompetitionsNumber": 987,
      "totalEnrolledCompetitionParticipantsNumber": 987,
      "totalPaidOutPrizesUsdAmount": "abc123"
    }
  }
}

competitionStatuses

Response

Returns a CompetitionStatusesResult!

Example

Query
query CompetitionStatuses {
  competitionStatuses {
    statuses {
      statusId
      name
      description
    }
  }
}
Response
{"data": {"competitionStatuses": {"statuses": [Status]}}}

competitionTradingMetrics

Arguments
Name Description
input - CompetitionTradingMetricsInput!

Example

Query
query CompetitionTradingMetrics($input: CompetitionTradingMetricsInput!) {
  competitionTradingMetrics(input: $input) {
    myMetric {
      address {
        address
        name
      }
      makerFees
      takerFees
      totalFees
      makeVolume
      takerVolume
      totalVolume
      calculatedAt
    }
    metrics {
      address {
        address
        name
      }
      makerFees
      takerFees
      totalFees
      makeVolume
      takerVolume
      totalVolume
      calculatedAt
    }
    pagination {
      totalCount
      limit
      offset
    }
  }
}
Variables
{"input": CompetitionTradingMetricsInput}
Response
{
  "data": {
    "competitionTradingMetrics": {
      "myMetric": CompetitionTradingMetric,
      "metrics": [CompetitionTradingMetric],
      "pagination": Pagination
    }
  }
}

competitions

Response

Returns a CompetitionsResult!

Arguments
Name Description
input - CompetitionsInput!

Example

Query
query Competitions($input: CompetitionsInput!) {
  competitions(input: $input) {
    competitions {
      competitionId
      title
      description
      participantUpperLimit
      participantLowerLimit
      host {
        address
        name
      }
      totalPrize
      minimumDeposit
      minimumTradingVolume
      imageUrl
      schedules {
        category {
          categoryId
          name
          description
        }
        scheduledDatetime
      }
      status {
        statusId
        name
        phasedAt
      }
    }
    pagination {
      totalCount
      limit
      offset
    }
  }
}
Variables
{"input": CompetitionsInput}
Response
{
  "data": {
    "competitions": {
      "competitions": [CompetitionSummary],
      "pagination": Pagination
    }
  }
}

participantsCurrentEquities

Arguments
Name Description
input - ParticipantsCurrentEquitiesInput!

Example

Query
query ParticipantsCurrentEquities($input: ParticipantsCurrentEquitiesInput!) {
  participantsCurrentEquities(input: $input) {
    equities {
      competitionParticipantId
      equity
    }
  }
}
Variables
{"input": ParticipantsCurrentEquitiesInput}
Response
{
  "data": {
    "participantsCurrentEquities": {
      "equities": [ParticipantEquity]
    }
  }
}

searchAddresses

Response

Returns a SearchAddressesResult!

Arguments
Name Description
input - SearchAddressesInput!

Example

Query
query SearchAddresses($input: SearchAddressesInput!) {
  searchAddresses(input: $input) {
    addresses {
      address
      name
    }
    pagination {
      totalCount
      limit
      offset
    }
  }
}
Variables
{"input": SearchAddressesInput}
Response
{
  "data": {
    "searchAddresses": {
      "addresses": [AddressSummary],
      "pagination": Pagination
    }
  }
}

searchAddressesByName

Response

Returns a SearchAddressesByNameResult!

Arguments
Name Description
input - SearchAddressesByNameInput!

Example

Query
query SearchAddressesByName($input: SearchAddressesByNameInput!) {
  searchAddressesByName(input: $input) {
    addresses {
      address
      name
    }
    pagination {
      totalCount
      limit
      offset
    }
  }
}
Variables
{"input": SearchAddressesByNameInput}
Response
{
  "data": {
    "searchAddressesByName": {
      "addresses": [AddressSummary],
      "pagination": Pagination
    }
  }
}

Mutations

addCompetition

Response

Returns an AddCompetitionResult!

Arguments
Name Description
input - AddCompetitionInput!

Example

Query
mutation AddCompetition($input: AddCompetitionInput!) {
  addCompetition(input: $input) {
    competitionId
  }
}
Variables
{"input": AddCompetitionInput}
Response
{"data": {"addCompetition": {"competitionId": 123}}}

bulkUpdateParticipantStatus

Arguments
Name Description
input - BulkUpdateParticipantStatusInput!

Example

Query
mutation BulkUpdateParticipantStatus($input: BulkUpdateParticipantStatusInput!) {
  bulkUpdateParticipantStatus(input: $input) {
    success
  }
}
Variables
{"input": BulkUpdateParticipantStatusInput}
Response
{"data": {"bulkUpdateParticipantStatus": {"success": true}}}

generateXaccountOauthUrl

Response

Returns a GenerateXaccountOauthUrlResult!

Arguments
Name Description
input - GenerateXaccountOauthUrlInput!

Example

Query
mutation GenerateXaccountOauthUrl($input: GenerateXaccountOauthUrlInput!) {
  generateXaccountOauthUrl(input: $input) {
    url
  }
}
Variables
{"input": GenerateXaccountOauthUrlInput}
Response
{
  "data": {
    "generateXaccountOauthUrl": {
      "url": "abc123"
    }
  }
}

joinCompetition

Response

Returns a JoinCompetitionResult!

Arguments
Name Description
input - JoinCompetitionInput!

Example

Query
mutation JoinCompetition($input: JoinCompetitionInput!) {
  joinCompetition(input: $input) {
    competitionId
  }
}
Variables
{"input": JoinCompetitionInput}
Response
{"data": {"joinCompetition": {"competitionId": 123}}}

putAddressImage

Response

Returns a PutAddressImageResult!

Arguments
Name Description
input - PutAddressImageInput!

Example

Query
mutation PutAddressImage($input: PutAddressImageInput!) {
  putAddressImage(input: $input) {
    addressImageUrl
  }
}
Variables
{"input": PutAddressImageInput}
Response
{
  "data": {
    "putAddressImage": {
      "addressImageUrl": "abc123"
    }
  }
}

putAddressName

Response

Returns a putAddressNameResult!

Arguments
Name Description
input - putAddressNameInput!

Example

Query
mutation PutAddressName($input: putAddressNameInput!) {
  putAddressName(input: $input) {
    addressId
  }
}
Variables
{"input": putAddressNameInput}
Response
{"data": {"putAddressName": {"addressId": 987}}}

revokeXaccountOauth

Response

Returns a RevokeXaccountOauthResult!

Arguments
Name Description
input - RevokeXaccountOauthInput!

Example

Query
mutation RevokeXaccountOauth($input: RevokeXaccountOauthInput!) {
  revokeXaccountOauth(input: $input) {
    success
    revokedTokens
  }
}
Variables
{"input": RevokeXaccountOauthInput}
Response
{
  "data": {
    "revokeXaccountOauth": {
      "success": false,
      "revokedTokens": ["xyz789"]
    }
  }
}

unregisterFromCompetition

Response

Returns an UnregisterFromCompetitionResult!

Arguments
Name Description
input - UnregisterFromCompetitionInput!

Example

Query
mutation UnregisterFromCompetition($input: UnregisterFromCompetitionInput!) {
  unregisterFromCompetition(input: $input) {
    competitionId
  }
}
Variables
{"input": UnregisterFromCompetitionInput}
Response
{"data": {"unregisterFromCompetition": {"competitionId": 987}}}

updateCompetition

Response

Returns an UpdateCompetitionResult!

Arguments
Name Description
input - UpdateCompetitionInput!

Example

Query
mutation UpdateCompetition($input: UpdateCompetitionInput!) {
  updateCompetition(input: $input) {
    competitionId
  }
}
Variables
{"input": UpdateCompetitionInput}
Response
{"data": {"updateCompetition": {"competitionId": 123}}}

updateCompetitionLimits

Response

Returns an UpdateCompetitionLimitsResult!

Arguments
Name Description
input - UpdateCompetitionLimitsInput!

Example

Query
mutation UpdateCompetitionLimits($input: UpdateCompetitionLimitsInput!) {
  updateCompetitionLimits(input: $input) {
    competitionId
  }
}
Variables
{"input": UpdateCompetitionLimitsInput}
Response
{"data": {"updateCompetitionLimits": {"competitionId": 987}}}

updateCompetitionOptions

Response

Returns an UpdateCompetitionOptionsResult!

Arguments
Name Description
input - UpdateCompetitionOptionsInput!

Example

Query
mutation UpdateCompetitionOptions($input: UpdateCompetitionOptionsInput!) {
  updateCompetitionOptions(input: $input) {
    success
  }
}
Variables
{"input": UpdateCompetitionOptionsInput}
Response
{"data": {"updateCompetitionOptions": {"success": false}}}

updateCompetitionPrizeRules

Arguments
Name Description
input - UpdateCompetitionPrizeRulesInput!

Example

Query
mutation UpdateCompetitionPrizeRules($input: UpdateCompetitionPrizeRulesInput!) {
  updateCompetitionPrizeRules(input: $input) {
    competitionId
  }
}
Variables
{"input": UpdateCompetitionPrizeRulesInput}
Response
{"data": {"updateCompetitionPrizeRules": {"competitionId": 987}}}

updateCompetitionSchedules

Response

Returns an UpdateCompetitionSchedulesResult!

Arguments
Name Description
input - UpdateCompetitionSchedulesInput!

Example

Query
mutation UpdateCompetitionSchedules($input: UpdateCompetitionSchedulesInput!) {
  updateCompetitionSchedules(input: $input) {
    competitionId
  }
}
Variables
{"input": UpdateCompetitionSchedulesInput}
Response
{"data": {"updateCompetitionSchedules": {"competitionId": 987}}}

updateCompetitionStatus

Response

Returns an UpdateCompetitionStatusResult!

Arguments
Name Description
input - UpdateCompetitionStatusInput!

Example

Query
mutation UpdateCompetitionStatus($input: UpdateCompetitionStatusInput!) {
  updateCompetitionStatus(input: $input) {
    competitionId
  }
}
Variables
{"input": UpdateCompetitionStatusInput}
Response
{"data": {"updateCompetitionStatus": {"competitionId": 987}}}

uploadCompetitionParticipantsCsv

Arguments
Name Description
input - UploadCompetitionParticipantsCsvInput!

Example

Query
mutation UploadCompetitionParticipantsCsv($input: UploadCompetitionParticipantsCsvInput!) {
  uploadCompetitionParticipantsCsv(input: $input) {
    success
    invalidFormatAddresses {
      address
      lineNumber
    }
    alreadyJoinedAddresses {
      address
      lineNumber
    }
  }
}
Variables
{"input": UploadCompetitionParticipantsCsvInput}
Response
{
  "data": {
    "uploadCompetitionParticipantsCsv": {
      "success": true,
      "invalidFormatAddresses": [AddressCsvLine],
      "alreadyJoinedAddresses": [AddressCsvLine]
    }
  }
}

uploadImage

Response

Returns an UploadImageResult!

Arguments
Name Description
input - UploadImageInput!

Example

Query
mutation UploadImage($input: UploadImageInput!) {
  uploadImage(input: $input) {
    imageId
    contentType
    image
    imageUrl
  }
}
Variables
{"input": UploadImageInput}
Response
{
  "data": {
    "uploadImage": {
      "imageId": 987,
      "contentType": "xyz789",
      "image": "xyz789",
      "imageUrl": "xyz789"
    }
  }
}

Types

AddCompetitionInput

Fields
Input Field Description
title - String!
description - String!
minimumDeposit - String!
minimumTradingVolume - String!
totalPrize - String!
imageUrl - String
participantUpperLimit - Int!
participantLowerLimit - Int!
schedules - [CompetitionScheduleInput!]!
prizeRules - [PrizeRuleInput!]!
leaderboardSortOption - LeaderboardSortOptionInput!
signature - SignatureInput!
Example
{
  "title": "abc123",
  "description": "abc123",
  "minimumDeposit": "xyz789",
  "minimumTradingVolume": "xyz789",
  "totalPrize": "xyz789",
  "imageUrl": "xyz789",
  "participantUpperLimit": 123,
  "participantLowerLimit": 123,
  "schedules": [CompetitionScheduleInput],
  "prizeRules": [PrizeRuleInput],
  "leaderboardSortOption": LeaderboardSortOptionInput,
  "signature": SignatureInput
}

AddCompetitionResult

Fields
Field Name Description
competitionId - Int!
Example
{"competitionId": 123}

AddressCompetition

Fields
Field Name Description
competition - CompetitionSummary!
competitionParticipantStatus - StatusPhase!
competitionParticipantNote - String
ranking - Int
performanceBaseline - Float
prizeUsdAmount - String
roi - Float
pnl - Float
totalVolume - Float
Example
{
  "competition": CompetitionSummary,
  "competitionParticipantStatus": StatusPhase,
  "competitionParticipantNote": "xyz789",
  "ranking": 123,
  "performanceBaseline": 987.65,
  "prizeUsdAmount": "xyz789",
  "roi": 987.65,
  "pnl": 987.65,
  "totalVolume": 987.65
}

AddressCompetitionsInput

Fields
Input Field Description
address - String!
pagination - PaginationInput!
Example
{
  "address": "abc123",
  "pagination": PaginationInput
}

AddressCompetitionsResult

Fields
Field Name Description
competitions - [AddressCompetition!]!
pagination - Pagination!
Example
{
  "competitions": [AddressCompetition],
  "pagination": Pagination
}

AddressCsvLine

Fields
Field Name Description
address - String!
lineNumber - Int!
Example
{"address": "xyz789", "lineNumber": 123}

AddressCurrentCompetitionInput

Fields
Input Field Description
address - String!
Example
{"address": "xyz789"}

AddressCurrentCompetitionResult

Fields
Field Name Description
competition - CompetitionSummary
ranking - CompetitionRanking
competitionParticipantStatus - StatusPhase
Example
{
  "competition": CompetitionSummary,
  "ranking": CompetitionRanking,
  "competitionParticipantStatus": StatusPhase
}

AddressCurrentCompetitionTransfersInput

Fields
Input Field Description
address - String!
pagination - PaginationInput!
Example
{
  "address": "abc123",
  "pagination": PaginationInput
}

AddressCurrentCompetitionTransfersResult

Fields
Field Name Description
transfers - [CompetitionTransfer!]!
pagination - Pagination!
Example
{
  "transfers": [CompetitionTransfer],
  "pagination": Pagination
}

AddressNameInput

Fields
Input Field Description
address - String!
Example
{"address": "abc123"}

AddressNameResult

Fields
Field Name Description
name - String
Example
{"name": "xyz789"}

AddressPastCompetition

Fields
Field Name Description
competition - CompetitionSummary!
rank - Int!
prize - String!
performanceBaseline - Float!
roi - Float
pnl - Float
Example
{
  "competition": CompetitionSummary,
  "rank": 123,
  "prize": "xyz789",
  "performanceBaseline": 987.65,
  "roi": 987.65,
  "pnl": 987.65
}

AddressPastCompetitionsInput

Fields
Input Field Description
address - String!
pagination - PaginationInput!
Example
{
  "address": "xyz789",
  "pagination": PaginationInput
}

AddressPastCompetitionsResult

Fields
Field Name Description
competitions - [AddressPastCompetition!]!
pagination - Pagination!
Example
{
  "competitions": [AddressPastCompetition],
  "pagination": Pagination
}

AddressProfileInput

Fields
Input Field Description
address - String!
Example
{"address": "xyz789"}

AddressProfileResult

Fields
Field Name Description
address - String!
name - String
addressImageUrl - String
xAccountUserName - String
Example
{
  "address": "abc123",
  "name": "xyz789",
  "addressImageUrl": "xyz789",
  "xAccountUserName": "xyz789"
}

AddressSummary

Fields
Field Name Description
address - String!
name - String!
Example
{
  "address": "xyz789",
  "name": "abc123"
}

Boolean

Description

The Boolean scalar type represents true or false.

Example
true

BulkUpdateParticipantStatusInput

Fields
Input Field Description
competitionParticipantIds - [Int!]!
statusId - Int!
signature - SignatureInput!
Example
{
  "competitionParticipantIds": [987],
  "statusId": 123,
  "signature": SignatureInput
}

BulkUpdateParticipantStatusResult

Fields
Field Name Description
success - Boolean!
Example
{"success": false}

Competition

Fields
Field Name Description
competitionId - Int!
title - String!
description - String!
participantUpperLimit - Int!
participantLowerLimit - Int!
host - AddressSummary!
totalPrize - String!
minimumDeposit - String!
minimumTradingVolume - String!
imageUrl - String
schedules - [CompetitionSchedule!]!
status - StatusPhase!
prizeRules - [CompetitionPrizeRule!]!
outcomeCsvUrl - String
defaultLeaderboardSortOption - SortOption!
Example
{
  "competitionId": 987,
  "title": "xyz789",
  "description": "xyz789",
  "participantUpperLimit": 123,
  "participantLowerLimit": 123,
  "host": AddressSummary,
  "totalPrize": "abc123",
  "minimumDeposit": "xyz789",
  "minimumTradingVolume": "abc123",
  "imageUrl": "abc123",
  "schedules": [CompetitionSchedule],
  "status": StatusPhase,
  "prizeRules": [CompetitionPrizeRule],
  "outcomeCsvUrl": "abc123",
  "defaultLeaderboardSortOption": SortOption
}

CompetitionCurrentDynamicPrizeRuleInput

Fields
Input Field Description
competitionId - Int!
Example
{"competitionId": 987}

CompetitionCurrentDynamicPrizeRuleResult

Fields
Field Name Description
currentTradingVolumeUsd - String!
currentDynamicPrizeRule - [CompetitionDynamicPrizeRule!]!
Example
{
  "currentTradingVolumeUsd": "xyz789",
  "currentDynamicPrizeRule": [CompetitionDynamicPrizeRule]
}

CompetitionDynamicPrizeRule

Fields
Field Name Description
targetTradingVolumeUsd - String!
competitionPrizeCategory - CompetitionPrizeCategory!
rankFrom - Int!
rankTo - Int!
amount - String!
Example
{
  "targetTradingVolumeUsd": "abc123",
  "competitionPrizeCategory": CompetitionPrizeCategory,
  "rankFrom": 987,
  "rankTo": 987,
  "amount": "abc123"
}

CompetitionDynamicPrizeRuleSummary

Fields
Field Name Description
targetTradingVolumeUsd - String!
competitionPrizeCategory - CompetitionPrizeCategory!
totalCategoryPrizeAmount - String!
Example
{
  "targetTradingVolumeUsd": "abc123",
  "competitionPrizeCategory": CompetitionPrizeCategory,
  "totalCategoryPrizeAmount": "abc123"
}

CompetitionDynamicPrizeRulesInput

Fields
Input Field Description
competitionId - Int!
Example
{"competitionId": 123}

CompetitionDynamicPrizeRulesResult

Fields
Field Name Description
prizeRules - [CompetitionDynamicPrizeRuleSummary!]!
Example
{"prizeRules": [CompetitionDynamicPrizeRuleSummary]}

CompetitionEnrolledParticipantsNumberInput

Fields
Input Field Description
competitionId - Int!
Example
{"competitionId": 987}

CompetitionEnrolledParticipantsNumberResult

Fields
Field Name Description
enrolledParticipantsNumber - Int!
Example
{"enrolledParticipantsNumber": 987}

CompetitionFinalOutcome

Fields
Field Name Description
address - AddressSummary!
ranking - Int!
performanceBaseline - Float!
prizeUsdAmount - String!
pnl - Float!
roi - Float!
Example
{
  "address": AddressSummary,
  "ranking": 987,
  "performanceBaseline": 123.45,
  "prizeUsdAmount": "xyz789",
  "pnl": 123.45,
  "roi": 987.65
}

CompetitionFinalOutcomeInput

Fields
Input Field Description
competitionId - Int!
address - String
pagination - PaginationInput!
Example
{
  "competitionId": 987,
  "address": "xyz789",
  "pagination": PaginationInput
}

CompetitionFinalOutcomeResult

Fields
Field Name Description
myOutcome - CompetitionFinalOutcome
outcomes - [CompetitionFinalOutcome!]!
pagination - Pagination!
Example
{
  "myOutcome": CompetitionFinalOutcome,
  "outcomes": [CompetitionFinalOutcome],
  "pagination": Pagination
}

CompetitionInput

Fields
Input Field Description
competitionId - Int!
Example
{"competitionId": 987}

CompetitionLeaderboardInput

Fields
Input Field Description
competitionId - Int!
address - String
pagination - PaginationInput!
Example
{
  "competitionId": 987,
  "address": "xyz789",
  "pagination": PaginationInput
}

CompetitionLeaderboardResult

Fields
Field Name Description
myRanking - CompetitionRanking
rankings - [CompetitionRanking!]!
pagination - Pagination!
Example
{
  "myRanking": CompetitionRanking,
  "rankings": [CompetitionRanking],
  "pagination": Pagination
}

CompetitionParticipant

Fields
Field Name Description
competitionParticipantId - Int!
address - AddressSummary!
status - StatusPhase!
equity - Float!
Example
{
  "competitionParticipantId": 987,
  "address": AddressSummary,
  "status": StatusPhase,
  "equity": 123.45
}

CompetitionParticipantInput

Fields
Input Field Description
competitionId - Int!
address - String!
Example
{"competitionId": 123, "address": "abc123"}

CompetitionParticipantResult

Fields
Field Name Description
participant - CompetitionParticipant
Example
{"participant": CompetitionParticipant}

CompetitionParticipantStatusesResult

Fields
Field Name Description
statuses - [Status!]!
Example
{"statuses": [Status]}

CompetitionParticipantsInput

Fields
Input Field Description
competitionId - Int!
statusId - Int
address - String
pagination - PaginationInput!
Example
{
  "competitionId": 987,
  "statusId": 123,
  "address": "xyz789",
  "pagination": PaginationInput
}

CompetitionParticipantsResult

Fields
Field Name Description
myParticipation - CompetitionParticipant
participants - [CompetitionParticipant!]!
pagination - Pagination!
Example
{
  "myParticipation": CompetitionParticipant,
  "participants": [CompetitionParticipant],
  "pagination": Pagination
}

CompetitionPrizeCategory

Fields
Field Name Description
categoryId - Int!
name - String!
description - String!
Example
{
  "categoryId": 123,
  "name": "abc123",
  "description": "abc123"
}

CompetitionPrizeRule

Fields
Field Name Description
rankFrom - Int!
rankTo - Int!
amount - String!
Example
{
  "rankFrom": 987,
  "rankTo": 123,
  "amount": "abc123"
}

CompetitionRanking

Fields
Field Name Description
address - AddressSummary!
performanceBaseline - Float!
ranking - Int!
roi - Float!
pnl - Float!
calculatedAt - DateTime!
totalVolume - Float!
Example
{
  "address": AddressSummary,
  "performanceBaseline": 123.45,
  "ranking": 123,
  "roi": 987.65,
  "pnl": 987.65,
  "calculatedAt": "2007-12-03T10:15:30Z",
  "totalVolume": 987.65
}

CompetitionResult

Fields
Field Name Description
competition - Competition!
Example
{"competition": Competition}

CompetitionSchedule

Fields
Field Name Description
category - ScheduleCategory!
scheduledDatetime - DateTime!
Example
{
  "category": ScheduleCategory,
  "scheduledDatetime": "2007-12-03T10:15:30Z"
}

CompetitionScheduleInput

Fields
Input Field Description
categoryId - Int!
scheduledDatetime - DateTime!
Example
{
  "categoryId": 987,
  "scheduledDatetime": "2007-12-03T10:15:30Z"
}

CompetitionStatisticsResult

Fields
Field Name Description
totalHostedCompetitionsNumber - Int!
totalEnrolledCompetitionParticipantsNumber - Int!
totalPaidOutPrizesUsdAmount - String!
Example
{
  "totalHostedCompetitionsNumber": 987,
  "totalEnrolledCompetitionParticipantsNumber": 123,
  "totalPaidOutPrizesUsdAmount": "xyz789"
}

CompetitionStatusesResult

Fields
Field Name Description
statuses - [Status!]!
Example
{"statuses": [Status]}

CompetitionSummary

Fields
Field Name Description
competitionId - Int!
title - String!
description - String!
participantUpperLimit - Int!
participantLowerLimit - Int!
host - AddressSummary!
totalPrize - String!
minimumDeposit - String!
minimumTradingVolume - String!
imageUrl - String
schedules - [CompetitionSchedule!]!
status - StatusPhase!
Example
{
  "competitionId": 123,
  "title": "abc123",
  "description": "xyz789",
  "participantUpperLimit": 123,
  "participantLowerLimit": 987,
  "host": AddressSummary,
  "totalPrize": "xyz789",
  "minimumDeposit": "abc123",
  "minimumTradingVolume": "abc123",
  "imageUrl": "xyz789",
  "schedules": [CompetitionSchedule],
  "status": StatusPhase
}

CompetitionTradingMetric

Fields
Field Name Description
address - AddressSummary!
makerFees - Float!
takerFees - Float!
totalFees - Float!
makeVolume - Float!
takerVolume - Float!
totalVolume - Float!
calculatedAt - DateTime!
Example
{
  "address": AddressSummary,
  "makerFees": 987.65,
  "takerFees": 987.65,
  "totalFees": 123.45,
  "makeVolume": 987.65,
  "takerVolume": 123.45,
  "totalVolume": 123.45,
  "calculatedAt": "2007-12-03T10:15:30Z"
}

CompetitionTradingMetricsInput

Fields
Input Field Description
competitionId - Int!
address - String
pagination - PaginationInput!
Example
{
  "competitionId": 123,
  "address": "abc123",
  "pagination": PaginationInput
}

CompetitionTradingMetricsResult

Fields
Field Name Description
myMetric - CompetitionTradingMetric
metrics - [CompetitionTradingMetric!]!
pagination - Pagination!
Example
{
  "myMetric": CompetitionTradingMetric,
  "metrics": [CompetitionTradingMetric],
  "pagination": Pagination
}

CompetitionTransfer

Fields
Field Name Description
blockHeight - Int!
blockTime - DateTime!
category - TransferCategory!
amount - String!
senderAddress - String!
recipientAddress - String!
transactionHash - String!
Example
{
  "blockHeight": 987,
  "blockTime": "2007-12-03T10:15:30Z",
  "category": TransferCategory,
  "amount": "abc123",
  "senderAddress": "xyz789",
  "recipientAddress": "abc123",
  "transactionHash": "abc123"
}

CompetitionsInput

Fields
Input Field Description
title - String
statusId - Int
hostAddress - String
pagination - PaginationInput!
Example
{
  "title": "xyz789",
  "statusId": 987,
  "hostAddress": "xyz789",
  "pagination": PaginationInput
}

CompetitionsResult

Fields
Field Name Description
competitions - [CompetitionSummary!]!
pagination - Pagination!
Example
{
  "competitions": [CompetitionSummary],
  "pagination": Pagination
}

DateTime

Example
"2007-12-03T10:15:30Z"

Float

Description

The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.

Example
987.65

GenerateXaccountOauthUrlInput

Fields
Input Field Description
signature - SignatureInput!
Example
{"signature": SignatureInput}

GenerateXaccountOauthUrlResult

Fields
Field Name Description
url - String!
Example
{"url": "abc123"}

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

JoinCompetitionInput

Fields
Input Field Description
competitionId - Int!
name - String!
signature - SignatureInput!
Example
{
  "competitionId": 123,
  "name": "abc123",
  "signature": SignatureInput
}

JoinCompetitionResult

Fields
Field Name Description
competitionId - Int!
Example
{"competitionId": 123}

LeaderboardSortOptionInput

Fields
Input Field Description
targetColumn - String!
orderBy - String!
Example
{
  "targetColumn": "xyz789",
  "orderBy": "abc123"
}

Pagination

Fields
Field Name Description
totalCount - Int!
limit - Int!
offset - Int!
Example
{"totalCount": 987, "limit": 123, "offset": 987}

PaginationInput

Fields
Input Field Description
limit - Int!
offset - Int!
sort - SortInput
Example
{"limit": 123, "offset": 987, "sort": SortInput}

ParticipantEquity

Fields
Field Name Description
competitionParticipantId - Int!
equity - String!
Example
{
  "competitionParticipantId": 123,
  "equity": "abc123"
}

ParticipantsCurrentEquitiesInput

Fields
Input Field Description
competitionParticipantIds - [Int!]!
timestamp - String!
Example
{
  "competitionParticipantIds": [123],
  "timestamp": "abc123"
}

ParticipantsCurrentEquitiesResult

Fields
Field Name Description
equities - [ParticipantEquity!]!
Example
{"equities": [ParticipantEquity]}

PrizeRuleInput

Fields
Input Field Description
rankFrom - Int!
rankTo - Int!
amount - String!
Example
{
  "rankFrom": 987,
  "rankTo": 987,
  "amount": "xyz789"
}

PutAddressImageInput

Fields
Input Field Description
file - Upload!
signature - SignatureInput!
Example
{
  "file": Upload,
  "signature": SignatureInput
}

PutAddressImageResult

Fields
Field Name Description
addressImageUrl - String!
Example
{"addressImageUrl": "xyz789"}

RevokeXaccountOauthInput

Fields
Input Field Description
signature - SignatureInput!
Example
{"signature": SignatureInput}

RevokeXaccountOauthResult

Fields
Field Name Description
success - Boolean!
revokedTokens - [String!]!
Example
{
  "success": false,
  "revokedTokens": ["abc123"]
}

ScheduleCategory

Fields
Field Name Description
categoryId - Int!
name - String!
description - String!
Example
{
  "categoryId": 123,
  "name": "abc123",
  "description": "abc123"
}

SearchAddressesByNameInput

Fields
Input Field Description
query - String!
pagination - PaginationInput!
Example
{
  "query": "xyz789",
  "pagination": PaginationInput
}

SearchAddressesByNameResult

Fields
Field Name Description
addresses - [AddressSummary!]!
pagination - Pagination!
Example
{
  "addresses": [AddressSummary],
  "pagination": Pagination
}

SearchAddressesInput

Fields
Input Field Description
query - String!
pagination - PaginationInput!
Example
{
  "query": "xyz789",
  "pagination": PaginationInput
}

SearchAddressesResult

Fields
Field Name Description
addresses - [AddressSummary!]!
pagination - Pagination!
Example
{
  "addresses": [AddressSummary],
  "pagination": Pagination
}

SignatureInput

Fields
Input Field Description
signDoc - String!
signature - String!
publicKey - String!
address - String!
signatureType - String!
Example
{
  "signDoc": "xyz789",
  "signature": "xyz789",
  "publicKey": "abc123",
  "address": "abc123",
  "signatureType": "xyz789"
}

SortInput

Fields
Input Field Description
targetColumn - String!
orderBy - String!
Example
{
  "targetColumn": "abc123",
  "orderBy": "xyz789"
}

SortOption

Fields
Field Name Description
targetColumn - String!
orderBy - String!
Example
{
  "targetColumn": "abc123",
  "orderBy": "abc123"
}

Status

Fields
Field Name Description
statusId - Int!
name - String!
description - String!
Example
{
  "statusId": 123,
  "name": "xyz789",
  "description": "abc123"
}

StatusPhase

Fields
Field Name Description
statusId - Int!
name - String!
phasedAt - DateTime!
Example
{
  "statusId": 123,
  "name": "abc123",
  "phasedAt": "2007-12-03T10:15:30Z"
}

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
"xyz789"

TransferCategory

Fields
Field Name Description
categoryId - Int!
name - String!
description - String!
Example
{
  "categoryId": 123,
  "name": "xyz789",
  "description": "xyz789"
}

UnregisterFromCompetitionInput

Fields
Input Field Description
competitionId - Int!
signature - SignatureInput!
Example
{"competitionId": 987, "signature": SignatureInput}

UnregisterFromCompetitionResult

Fields
Field Name Description
competitionId - Int!
Example
{"competitionId": 123}

UpdateCompetitionInput

Fields
Input Field Description
competitionId - Int!
title - String!
description - String!
imageUrl - String
signature - SignatureInput!
Example
{
  "competitionId": 987,
  "title": "abc123",
  "description": "abc123",
  "imageUrl": "xyz789",
  "signature": SignatureInput
}

UpdateCompetitionLimitsInput

Fields
Input Field Description
competitionId - Int!
participantUpperLimit - Int!
participantLowerLimit - Int!
minimumDeposit - String!
minimumTradingVolume - String!
signature - SignatureInput!
Example
{
  "competitionId": 987,
  "participantUpperLimit": 987,
  "participantLowerLimit": 987,
  "minimumDeposit": "abc123",
  "minimumTradingVolume": "xyz789",
  "signature": SignatureInput
}

UpdateCompetitionLimitsResult

Fields
Field Name Description
competitionId - Int!
Example
{"competitionId": 123}

UpdateCompetitionOptionsInput

Fields
Input Field Description
competitionId - Int!
defaultLeaderboardSortOption - LeaderboardSortOptionInput!
signature - SignatureInput!
Example
{
  "competitionId": 123,
  "defaultLeaderboardSortOption": LeaderboardSortOptionInput,
  "signature": SignatureInput
}

UpdateCompetitionOptionsResult

Fields
Field Name Description
success - Boolean!
Example
{"success": true}

UpdateCompetitionPrizeRulesInput

Fields
Input Field Description
competitionId - Int!
prizeRules - [PrizeRuleInput!]!
signature - SignatureInput!
Example
{
  "competitionId": 987,
  "prizeRules": [PrizeRuleInput],
  "signature": SignatureInput
}

UpdateCompetitionPrizeRulesResult

Fields
Field Name Description
competitionId - Int!
Example
{"competitionId": 123}

UpdateCompetitionResult

Fields
Field Name Description
competitionId - Int!
Example
{"competitionId": 987}

UpdateCompetitionSchedulesInput

Fields
Input Field Description
competitionId - Int!
schedules - [CompetitionScheduleInput!]!
signature - SignatureInput!
Example
{
  "competitionId": 123,
  "schedules": [CompetitionScheduleInput],
  "signature": SignatureInput
}

UpdateCompetitionSchedulesResult

Fields
Field Name Description
competitionId - Int!
Example
{"competitionId": 123}

UpdateCompetitionStatusInput

Fields
Input Field Description
competitionId - Int!
statusId - Int!
signature - SignatureInput!
Example
{
  "competitionId": 123,
  "statusId": 987,
  "signature": SignatureInput
}

UpdateCompetitionStatusResult

Fields
Field Name Description
competitionId - Int!
Example
{"competitionId": 123}

Upload

Example
Upload

UploadCompetitionParticipantsCsvInput

Fields
Input Field Description
competitionId - Int!
file - Upload!
signature - SignatureInput!
Example
{
  "competitionId": 987,
  "file": Upload,
  "signature": SignatureInput
}

UploadCompetitionParticipantsCsvResult

Fields
Field Name Description
success - Boolean!
invalidFormatAddresses - [AddressCsvLine]!
alreadyJoinedAddresses - [AddressCsvLine]!
Example
{
  "success": true,
  "invalidFormatAddresses": [AddressCsvLine],
  "alreadyJoinedAddresses": [AddressCsvLine]
}

UploadImageInput

Fields
Input Field Description
file - Upload!
Example
{"file": Upload}

UploadImageResult

Fields
Field Name Description
imageId - Int!
contentType - String!
image - String!
imageUrl - String!
Example
{
  "imageId": 987,
  "contentType": "xyz789",
  "image": "xyz789",
  "imageUrl": "abc123"
}

putAddressNameInput

Fields
Input Field Description
name - String!
signature - SignatureInput!
Example
{
  "name": "abc123",
  "signature": SignatureInput
}

putAddressNameResult

Fields
Field Name Description
addressId - Int!
Example
{"addressId": 987}