damdafa-com Simulator Hakim Game Engine API

The Simulator Hakim Game Engine API from damdafa-com — 5 operation(s) for simulator hakim game engine.

Operations 5

POST /api/v1/matchmaking Matchmaking #
POST /api/v1/session/{session_id}/telemetry Sync Telemetry #
POST /api/v1/session/{session_id}/action Record Action #
POST /api/v1/rate Rate Game #
GET /api/v1/leaderboard Get Leaderboard #

Specifications

Schemas & Data

📊
JSONSchema
https://artifacts.apis.io/damdafa-com/json-schema/damdafa-com-generation-create-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/damdafa-com/json-schema/damdafa-com-track-lead-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/damdafa-com/json-schema/damdafa-com-user-update-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/damdafa-com/json-schema/damdafa-com-purchase-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/damdafa-com/json-schema/damdafa-com-auth-create-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/damdafa-com/json-schema/damdafa-com-referral-redeem-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/damdafa-com/json-schema/damdafa-com-user-profile-schema.json
📊
JSONSchema
https://artifacts.apis.io/damdafa-com/json-schema/damdafa-com-action-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/damdafa-com/json-schema/damdafa-com-telemetry-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/damdafa-com/json-schema/damdafa-com-user-profile-in-db-schema.json
📊
JSONSchema
https://artifacts.apis.io/damdafa-com/json-schema/damdafa-com-mockup-screen-schema.json
📊
JSONSchema
https://artifacts.apis.io/damdafa-com/json-schema/damdafa-com-render-job-schema.json
📊
JSONSchema
https://artifacts.apis.io/damdafa-com/json-schema/damdafa-com-screenshot-group-schema.json
📊
JSONSchema
https://artifacts.apis.io/damdafa-com/json-schema/damdafa-com-export-job-schema.json
📊
JSONSchema
https://artifacts.apis.io/damdafa-com/json-schema/damdafa-com-text-element-schema.json

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/damdafa-com:damdafa-com-simulator-hakim-game-engine-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

damdafa-com-simulator-hakim-game-engine-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Damdafa Com Simulator Hakim Game Engine API
  version: 1.0.0
  description: 'Operations tagged Simulator Hakim Game Engine across 2 of this provider''s published API definitions: judge-damdafa-com-openapi.json, judge-damdafa-com-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: /judge
tags:
- name: Simulator Hakim Game Engine
paths:
  /api/v1/matchmaking:
    post:
      tags:
      - Simulator Hakim Game Engine
      summary: Matchmaking
      description: Matches a player with an available case for their resolved jurisdiction.
      operationId: matchmaking_api_v1_matchmaking_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MatchmakingRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MatchmakingResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MatchmakingErrorResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    servers:
    - url: /judge
  /api/v1/session/{session_id}/telemetry:
    post:
      tags:
      - Simulator Hakim Game Engine
      summary: Sync Telemetry
      operationId: sync_telemetry_api_v1_session__session_id__telemetry_post
      parameters:
      - name: session_id
        in: path
        required: true
        schema:
          type: string
          title: Session Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TelemetryRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    servers:
    - url: /judge
  /api/v1/session/{session_id}/action:
    post:
      tags:
      - Simulator Hakim Game Engine
      summary: Record Action
      operationId: record_action_api_v1_session__session_id__action_post
      parameters:
      - name: session_id
        in: path
        required: true
        schema:
          type: string
          title: Session Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ActionRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    servers:
    - url: /judge
  /api/v1/rate:
    post:
      tags:
      - Simulator Hakim Game Engine
      summary: Rate Game
      operationId: rate_game_api_v1_rate_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RateGameRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateGameResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    servers:
    - url: /judge
  /api/v1/leaderboard:
    get:
      tags:
      - Simulator Hakim Game Engine
      summary: Get Leaderboard
      description: Returns the leaderboard for the requested storefront region.
      operationId: get_leaderboard_api_v1_leaderboard_get
      security:
      - HTTPBearer: []
      parameters:
      - name: timeframe
        in: query
        required: false
        schema:
          type: integer
          default: 2
          title: Timeframe
      - name: tier
        in: query
        required: false
        schema:
          type: integer
          default: 0
          title: Tier
      - name: countryCode
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/CountryCode'
          default: uk
      - name: ProviderId
        in: header
        required: false
        schema:
          anyOf:
          - $ref: '#/components/schemas/AUTH_PROVIDER'
          - type: 'null'
          title: Providerid
      - name: X-Provider-Id
        in: header
        required: false
        schema:
          anyOf:
          - $ref: '#/components/schemas/AUTH_PROVIDER'
          - type: 'null'
          title: X-Provider-Id
      - name: X-Device-Id
        in: header
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: X-Device-Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LeaderboardResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    servers:
    - url: /judge
components:
  schemas:
    PostGameAnalytics:
      properties:
        telemetry:
          items:
            type: string
          type: array
          title: Telemetry
          default:
          - time_spent_seconds
          - selected_verdict_id
          - selected_reason_id
          - difficulty_mode_played
          - selected_gameplay_path_id
      type: object
      title: PostGameAnalytics
    PublicStage2Reasoning:
      properties:
        prompt:
          type: string
          title: Prompt
        options:
          items:
            $ref: '#/components/schemas/PublicReasoningOption'
          type: array
          title: Options
      type: object
      required:
      - prompt
      - options
      title: PublicStage2Reasoning
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    GamePlatform:
      type: string
      enum:
      - ios
      - android
      - web
      - windows
      - macos
      - unknown
      title: GamePlatform
    DialogueText:
      properties:
        text_id:
          type: string
          title: Text Id
          description: Unique ID for this dialogue text, e.g., 'STEP1_VAR_A'
        text:
          type: string
          title: Text
        focused_evidence_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Focused Evidence Id
          description: The evidence this text focuses on
        is_made_up:
          type: boolean
          title: Is Made Up
          description: True if this text is a hallucinated/made-up argument for data farming.
          default: false
      type: object
      required:
      - text_id
      - text
      title: DialogueText
    TrapCategory:
      type: string
      enum:
      - NONE
      - ABSOLUTE_CERTAINTY_FALLACY
      - RIGHT_VERDICT_WRONG_REASON
      - DELAYING_JUSTICE
      - BURDEN_OF_PROOF_ERROR
      - CRIMINAL_PREJUDICIAL_TRAP
      - EMOTIONAL_BIAS
      - PROCEDURAL_OVERSIGHT
      - EXPERT_DELEGATION_ERROR
      - HINDSIGHT_BIAS
      title: TrapCategory
    PublicReasoningOption:
      properties:
        reason_id:
          type: string
          title: Reason Id
        text:
          type: string
          title: Text
      type: object
      required:
      - reason_id
      - text
      title: PublicReasoningOption
    LawDomain:
      type: string
      enum:
      - CRIMINAL
      - CIVIL
      - ADMINISTRATIVE
      - FAMILY
      title: LawDomain
    CodexLaw:
      properties:
        document_id:
          type: string
          title: Document Id
          description: The OpenSearch document ID or exact database reference for this law.
        title:
          type: string
          title: Title
          description: The title of the law or court decision (e.g. 'Yargıtay 3. Ceza Dairesi - 2019/3202 E.', 'Türk Medeni Kanunu - Madde 16')
        text:
          type: string
          title: Text
          description: The text of the law or court decision. Use '\n' properly to separate paragraphs.
        is_correct:
          type: boolean
          title: Is Correct
          description: True if this is the correct law that solves the case, False if it is a trap.
        trap_category:
          $ref: '#/components/schemas/TrapCategory'
          description: If this is a trap law, which trap category does it correspond to? Use NONE if it is correct.
          default: NONE
      type: object
      required:
      - document_id
      - title
      - text
      - is_correct
      title: CodexLaw
    VerdictID:
      type: string
      enum:
      - V_BERAAT
      - V_MAHKUMIYET
      - V_HAGB
      - V_USULDEN_RET
      - V_ESASTAN_KABUL
      - V_ESASTAN_RET
      - V_GOREVSIZLIK
      - V_YETKISIZLIK
      - V_DUSME
      - V_CEZA_VERILMESINE_YER_OLMADIGI
      - V_KABUL
      - V_KISMEN_KABUL
      - V_RET
      - V_ZAMANASIMI
      title: VerdictID
    LawyerModePlan:
      properties:
        description:
          type: string
          title: Description
          description: Overview of the lawyer mode gameplay loop for this case.
        mechanics:
          type: string
          title: Mechanics
          description: Specific mechanics for how the player acts as a lawyer rather than a judge.
        evidence_selection:
          items:
            type: string
          type: array
          title: Evidence Selection
          description: List of evidence IDs the lawyer needs to choose from.
        goal:
          type: string
          title: Goal
          description: The main objective for the lawyer player.
      type: object
      required:
      - description
      - mechanics
      - evidence_selection
      - goal
      title: LawyerModePlan
    PreTrialBriefing:
      properties:
        title:
          type: string
          title: Title
          description: Title of the case (e.g., 'Temyiz İncelemesi', 'İş Kazası Tazminat Davası'). Do NOT include phrases like 'Dava Dosyası Özeti' or 'Özet' in the title, as it is already implied.
        background:
          type: string
          title: Background
          description: Summary of the conflict
        evidence_dossier:
          items:
            $ref: '#/components/schemas/EvidenceItem'
          type: array
          title: Evidence Dossier
          description: Documents for the judge to review before trial
      type: object
      required:
      - title
      - background
      - evidence_dossier
      title: PreTrialBriefing
    PublicVerdictOption:
      properties:
        verdict_id:
          type: string
          title: Verdict Id
        button_text:
          type: string
          title: Button Text
      type: object
      required:
      - verdict_id
      - button_text
      title: PublicVerdictOption
    SpeakerID:
      type: string
      enum:
      - PROSECUTOR
      - DEFENDANT
      - DEFENDANT_LAWYER
      - PLAINTIFF
      - PLAINTIFF_LAWYER
      - WITNESS_1
      - WITNESS_2
      - WITNESS_3
      - EXPERT
      - EXPERT_1
      - EXPERT_2
      - EXTRA_1
      - EXTRA_2
      - EXTRA_3
      - OTHER_1
      - OTHER_2
      - OTHER_3
      title: SpeakerID
    ActionResponse:
      properties:
        status:
          type: string
          title: Status
        sessionId:
          type: string
          title: Sessionid
        isCorrect:
          type: boolean
          title: Iscorrect
        systemFeedback:
          anyOf:
          - type: string
          - type: 'null'
          title: Systemfeedback
        score:
          anyOf:
          - type: integer
          - type: 'null'
          title: Score
        playerEloChange:
          anyOf:
          - type: number
          - type: 'null'
          title: Playerelochange
        caseEloChange:
          anyOf:
          - type: number
          - type: 'null'
          title: Caseelochange
        newPlayerElo:
          anyOf:
          - type: number
          - type: 'null'
          title: Newplayerelo
        groundTruth:
          anyOf:
          - $ref: '#/components/schemas/GroundTruth'
          - type: 'null'
      type: object
      required:
      - status
      - sessionId
      - isCorrect
      title: ActionResponse
    GroundTruth:
      properties:
        historical_winner:
          type: string
          title: Historical Winner
          description: Who actually won the real case (e.g., 'DEFENDANT (Davalı)')
        legal_rule:
          type: string
          title: Legal Rule
          description: The core legal principle that determined the outcome
      type: object
      required:
      - historical_winner
      - legal_rule
      title: GroundTruth
    CountryCode:
      type: string
      enum:
      - tr
      - az
      - be
      - de
      - us
      - uk
      - fr
      title: CountryCode
    MatchmakingErrorResponse:
      properties:
        detail:
          $ref: '#/components/schemas/GameError'
      type: object
      required:
      - detail
      title: MatchmakingErrorResponse
    PublicPregeneratedGameCaseV3:
      properties:
        level_id:
          type: string
          title: Level Id
        source_doc_id:
          type: string
          title: Source Doc Id
          description: The original source document ID
        source_title:
          type: string
          title: Source Title
          description: The original source document title
        source_model:
          anyOf:
          - type: string
          - type: 'null'
          title: Source Model
          description: The model used to generate this case
        created_at:
          type: string
          format: date-time
          title: Created At
        country_code:
          $ref: '#/components/schemas/CountryCode'
          description: The country code this case is generated for (e.g. TR, AZ, BE, DE, US, UK, FR)
        law_domain:
          $ref: '#/components/schemas/LawDomain'
          description: The domain of law (e.g. CRIMINAL, CIVIL, ADMINISTRATIVE, FAMILY)
        court_level:
          $ref: '#/components/schemas/CourtLevel'
          description: The level of the court (e.g. FIRST_INSTANCE, APPEAL, SUPREME)
        pre_trial_briefing:
          $ref: '#/components/schemas/PreTrialBriefing'
        dynamic_variables:
          additionalProperties:
            $ref: '#/components/schemas/DynamicVariable'
          type: object
          title: Dynamic Variables
          description: Dictionary of variables used in string placeholders, specifically for dynamic date (age) calculations.
        characters:
          items:
            $ref: '#/components/schemas/CharacterProfile'
          type: array
          title: Characters
          description: List of characters involved in the case with their generated UI features.
        codex_laws:
          items:
            $ref: '#/components/schemas/CodexLaw'
          type: array
          title: Codex Laws
          description: List of actual laws retrieved and used in the game (1 correct + distractors) for the Codex panel.
        gameplay_progression:
          items:
            $ref: '#/components/schemas/DialogueStep'
          type: array
          title: Gameplay Progression
        gameplay_ab_testing:
          items:
            $ref: '#/components/schemas/GameplayVariantPath'
          type: array
          title: Gameplay Ab Testing
          description: List of A/B testing variations for dialogue
        stage_1_verdict:
          anyOf:
          - $ref: '#/components/schemas/PublicStage1Verdict'
          - type: 'null'
        stage_2_reasoning:
          additionalProperties:
            $ref: '#/components/schemas/PublicStage2Reasoning'
          type: object
          title: Stage 2 Reasoning
          default: {}
        difficulty_matrices_ab_testing:
          $ref: '#/components/schemas/DifficultyMatrices'
        post_game_analytics:
          $ref: '#/components/schemas/PostGameAnalytics'
        selected_difficulty:
          type: string
          title: Selected Difficulty
          description: The difficulty level selected by the engine before AB testing (e.g., 'EASY', 'MEDIUM', 'HARD').
        lawyer_mode_plan:
          $ref: '#/components/schemas/LawyerModePlan'
          description: Proposed gameplay plan for adapting this case to the Lawyer simulator.
        suggested_shared_features:
          additionalProperties:
            type: string
          type: object
          title: Suggested Shared Features
          description: Proposed features that would benefit both Judge and Lawyer simulators.
        id:
          anyOf:
          - type: string
          - type: 'null'
          title: Id
        status:
          anyOf:
          - type: string
          - type: 'null'
          title: Status
      type: object
      required:
      - country_code
      - law_domain
      - court_level
      - pre_trial_briefing
      - gameplay_progression
      - gameplay_ab_testing
      - difficulty_matrices_ab_testing
      - post_game_analytics
      - selected_difficulty
      - lawyer_mode_plan
      title: PublicPregeneratedGameCaseV3
    GameplayVariantPath:
      properties:
        path_id:
          type: string
          title: Path Id
          description: e.g., 'VARIANT_FOCUS_MEDICAL'
        text_ids:
          items:
            type: string
          type: array
          title: Text Ids
          description: Ordered list of text_ids that form a coherent dialogue
      type: object
      required:
      - path_id
      - text_ids
      title: GameplayVariantPath
    AUTH_PROVIDER:
      type: string
      enum:
      - firebase
      - google
      - apple
      title: AUTH_PROVIDER
    FeedbackRating:
      type: string
      enum:
      - UP
      - DOWN
      title: FeedbackRating
    DynamicVariable:
      properties:
        base_value_type:
          $ref: '#/components/schemas/DynamicVariableBaseType'
          description: Select a semantic constant. The game engine will populate this at runtime based on the player's jurisdiction.
        modifier:
          type: string
          title: Modifier
          description: Modifier syntax (e.g., '-16y -rand_m -rand_d' for random date offsets)
          default: '0'
        format:
          type: string
          title: Format
          description: e.g., 'date_long', 'date_short', 'number'
          default: text
      type: object
      required:
      - base_value_type
      title: DynamicVariable
    DynamicVariableBaseType:
      type: string
      enum:
      - CURRENT_DATE
      title: DynamicVariableBaseType
    CharacterProfile:
      properties:
        speaker_id:
          $ref: '#/components/schemas/SpeakerID'
          description: Unique ID for the character. Should match the 'speaker_id' in DialogueStep.
        name:
          type: string
          title: Name
          description: Name of the character
        role:
          type: string
          title: Role
          description: Role of the character in the case (e.g., 'Prosecutor', 'Defendant', 'Witness')
        avatar_seed:
          type: string
          title: Avatar Seed
          description: Unique seed for the DiceBear avataaars procedural generation
        avatar_features:
          $ref: '#/components/schemas/AvatarFeatures'
          description: Procedural avatar configuration
      type: object
      required:
      - speaker_id
      - name
      - role
      - avatar_seed
      - avatar_features
      title: CharacterProfile
    GameStep:
      type: string
      enum:
      - Matchmaking
      - Briefing
      - Dialogue
      - VerdictSelection
      - ReasoningSelection
      - Score
      - Unknown
      title: GameStep
    TelemetryRequest:
      properties:
        lastStepReached:
          anyOf:
          - $ref: '#/components/schemas/GameStep'
          - type: 'null'
        codexOpenedCount:
          anyOf:
          - type: integer
          - type: 'null'
          title: Codexopenedcount
        evidenceViewedCount:
          anyOf:
          - type: integer
          - type: 'null'
          title: Evidenceviewedcount
        interruptionCount:
          anyOf:
          - type: integer
          - type: 'null'
          title: Interruptioncount
        activeTimeMs:
          anyOf:
          - type: integer
          - type: 'null'
          title: Activetimems
      type: object
      title: TelemetryRequest
    RateGameRequest:
      properties:
        sessionId:
          type: string
          title: Sessionid
        rating:
          $ref: '#/components/schemas/FeedbackRating'
        feedbackText:
          anyOf:
          - type: string
          - type: 'null'
          title: Feedbacktext
      type: object
      required:
      - sessionId
      - rating
      title: RateGameRequest
    CourtLevel:
      type: string
      enum:
      - FIRST_INSTANCE
      - APPEAL
      - SUPREME
      title: CourtLevel
    ActionRequest:
      properties:
        actionType:
          type: string
          title: Actiontype
        actionValue:
          type: string
          title: Actionvalue
        complete:
          type: boolean
          title: Complete
          default: false
        timeSpentSeconds:
          anyOf:
          - type: integer
          - type: 'null'
          title: Timespentseconds
      type: object
      required:
      - actionType
      - actionValue
      title: ActionRequest
    RateGameResponse:
      properties:
        sessionId:
          type: string
          title: Sessionid
        newPlayerElo:
          type: number
          title: Newplayerelo
      type: object
      required:
      - sessionId
      - newPlayerElo
      title: RateGameResponse
    MatchmakingResponse:
      properties:
        sessionId:
          type: string
          title: Sessionid
        gameCaseId:
          type: string
          title: Gamecaseid
        levelId:
          type: string
          title: Levelid
        caseData:
          $ref: '#/components/schemas/PublicPregeneratedGameCaseV3'
      type: object
      required:
      - sessionId
      - gameCaseId
      - levelId
      - caseData
      title: MatchmakingResponse
    EvidenceItem:
      properties:
        evidence_id:
          type: string
          title: Evidence Id
        name:
          type: string
          title: Name
        content:
          type: string
          title: Content
      type: object
      required:
      - evidence_id
      - name
      - content
      title: EvidenceItem
    LeaderboardResponse:
      properties:
        players:
          items:
            $ref: '#/components/schemas/LeaderboardEntry'
          type: array
          title: Players
      type: object
      required:
      - players
      title: LeaderboardResponse
    LeaderboardEntry:
      properties:
        id:
          type: string
          title: Id
        displayName:
          type: string
          title: Displayname
        elo:
          type: number
          title: Elo
        avatar:
          anyOf:
          - type: string
          - type: 'null'
          title: Avatar
      type: object
      required:
      - id
      - displayName
      - elo
      title: LeaderboardEntry
    DifficultyMatrices:
      properties:
        EASY:
          additionalProperties:
            items:
              type: string
            type: array
          propertyNames:
            $ref: '#/components/schemas/VerdictID'
          type: object
          title: Easy
          description: Map EACH verdict_id to a list of reason_ids for EASY mode. Difficulty increases with more options. Thus, EASY mode must have the FEWEST options/distractors (e.g. exactly 2 options). If a verdict has only 1 choice, leave the list empty []. Never provide a list of exactly 1 item.
        MEDIUM:
          additionalProperties:
            items:
              type: string
            type: array
          propertyNames:
            $ref: '#/components/schemas/VerdictID'
          type: object
          title: Medium
          description: Map EACH verdict_id to a list of reason_ids for MEDIUM mode. MEDIUM mode must have a MODERATE number of options/distractors (e.g. exactly 3 options). If a verdict has only 1 choice, leave the list empty []. Never provide a list of exactly 1 item.
        HARD:
          additionalProperties:
            items:
              type: string
            type: array
          propertyNames:
            $ref: '#/components/schemas/VerdictID'
          type: object
          title: Hard
          description: Map EACH verdict_id to a list of reason_ids for HARD mode. HARD mode must have the MOST options/distractors (e.g. 4 or more options). If a verdict has only 1 choice, leave the list empty []. Never provide a list of exactly 1 item.
      type: object
      required:
      - EASY
      - MEDIUM
      - HARD
      title: DifficultyMatrices
    PublicStage1Verdict:
      properties:
        prompt:
          type: string
          title: Prompt
        options:
          items:
            $ref: '#/components/schemas/PublicVerdictOption'
          type: array
          title: Options
      type: object
      required:
      - prompt
      - options
      title: PublicStage1Verdict
    AvatarFeatures:
      properties:
        top:
          type: string
          enum:
          - bigHair
          - bob
          - bun
          - curly
          - curvy
          - dreads
          - dreads01
          - dreads02
          - frida
          - frizzle
          - fro
          - froBand
          - hat
          - hijab
          - longButNotTooLong
          - miaWallace
          - shaggy
          - shaggyMullet
          - shavedSides
          - shortCurly
          - shortFlat
          - shortRound
          - shortWaved
          - sides
          - straight01
          - straight02
          - straightAndStrand
          - theCaesar
          - theCaesarAndSidePart
          - turban
          - winterHat02
          - winterHat03
          - winterHat04
          - winterHat1
          title: Top
          description: Hair or head wear style
          default: shortFlat
        accessories:
          anyOf:
          - type: string
            enum:
            - eyepatch
            - kurt
            - prescription01
            - prescription02
            - round
            - sunglasses
            - wayfarers
          - type: 'null'
          title: Accessories
          description: Accessories
        hairColor:
          type: string
          title: Haircolor
          description: Hair color hex code
          default: 2c1b18
        facialHair:
          anyOf:
          - type: string
            enum:
            - beardLight
            - beardMajestic
            - beardMedium
            - moustacheFancy
            - moustacheMagnum
          - type: 'null'
          title: Facialhair
          description: Facial hair style
        clothes:
          type: string
          enum:
          - blazerAndShirt
          - blazerAndSweater
          - collarAndSweater
          - graphicShirt
          - hoodie
          - overall
          - shirtCrewNeck
          - shirtScoopNeck
          - shirtVNeck
          title: Clothes
          description: Clothing style
          default: blazerAndShirt
        eyes:
          type: string
          enum:
          - closed
          - cry
          - default
          - eyeRoll
          - happy
          - hearts
          - side
          - squint
          - surprised
          - wink
          - winkWacky
          - xDizzy
          title: Eyes
          description: Eye style
          default: default
        eyebrows:
          type: string
          enum:
          - angry
          - angryNatural
          - default
          - defaultNatural
          - flatNatural
          - frownNatural
          - raisedExcited
          - raisedExcitedNatural
          - sadConcerned
          - sadConcernedNatural
          - unibrowNatural
          - upDown
          - upDownNatural
          title: Eyebrows
          description: Eyebrow style
          default: default
        mouth:
          type: string
          enum:
          - concerned
          - default
          - disbelief
          - eating
          - grimace
          - sad
          - screamOpen
          - serious
          - smile
          - tongue
          - twinkle
          - vomit
          title: Mouth
          description: Mouth style
          default: default
        skinColor:
          type: string
          title: Skincolor
          description: Skin tone hex code
          default: ffdbb4
      type: object
      title: AvatarFeatures
    DialogueStep:
      properties:
        step:
          type: integer
          title: Step
          description: The order of the dialogue
        speaker_id:
          $ref: '#/components/schemas/SpeakerID'
          description: Who is speaking
        text_variants:
          items:
            $ref: '#/components/schemas/DialogueText'
          type: array
          title: Text Variants
          description: Multiple text variations for this step
      type: object
      required:
      - step
      - speaker_id
      - text_variants
      title: DialogueStep
    MatchmakingRequest:
      properties:
        playerId:
          type: string
          title: Playerid
        playerName:
          anyOf:
          - type: string
          - type: 'null'
          title: Playername
        countryCode:
          type: string
          enum:
          - tr
          - az
          - be
          - de
          - fr
          - uk
          - us
          title: Countrycode
          default: uk
        platform:
          anyOf:
          - $ref: '#/components/schemas/GamePlatform'
          - type: 'null'
        appVersion:
          anyOf:
          - type: string
          - type: 'null'
          title: Appversion
      type: object
      required:
      - playerId
      title: MatchmakingRequest
    GameError:
      type: string
      enum:
      - NO_CASES_AVAILABLE
      title: GameError
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer
x-refined-from:
- judge-damdafa-com-openapi.json
- judge-damdafa-com-openapi.json