> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ropes.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Get problem details

> Get detailed information for a specific problem



## OpenAPI

````yaml https://api.ropes.ai/api/docs/openapi.json get /api/public/problems/{problemId}
openapi: 3.0.0
info:
  title: Ropes Public API
  version: 1.0.0
  description: >-
    Public API for Ropes. Authenticate using your API key in the x-api-key
    header.
servers:
  - url: https://api.ropes.ai
    description: Production server
  - url: http://localhost:3001
    description: Local development server
security: []
paths:
  /api/public/problems/{problemId}:
    get:
      tags:
        - Problems
      summary: Get problem details
      description: Get detailed information for a specific problem
      parameters:
        - schema:
            type: string
            description: The unique identifier of the problem
          required: true
          description: The unique identifier of the problem
          name: problemId
          in: path
      responses:
        '200':
          description: Successfully retrieved problem details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetailsResponse'
        '401':
          description: Unauthorized - Invalid or missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemErrorResponse'
        '404':
          description: Problem not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemErrorResponse'
        '500':
          description: Server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemErrorResponse'
      security:
        - ApiKeyAuth: []
components:
  schemas:
    ProblemDetailsResponse:
      type: object
      properties:
        problem:
          $ref: '#/components/schemas/ProblemDetails'
      required:
        - problem
    ProblemErrorResponse:
      type: object
      properties:
        error:
          type: string
          description: Error message
      required:
        - error
    ProblemDetails:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the problem
        name:
          type: string
          description: Display name/title of the problem
        status:
          type: string
          enum:
            - Ready
            - Creating
            - Editing
          description: Current status of the problem
        duration:
          type: number
          nullable: true
          description: Problem duration in minutes
        candidateSummary:
          type: string
          nullable: true
          description: Summary shown to candidates
        problemSummary:
          type: string
          nullable: true
          description: Internal summary of the problem
        scoringCategories:
          type: array
          items:
            $ref: '#/components/schemas/ProblemScoringCategory'
          description: Scoring categories with weights and rubrics
        integrationSource:
          type: string
          description: Integration source for the problem
        externalId:
          type: string
          description: External ID from the ATS integration
        testMode:
          type: boolean
          description: >-
            True if this is a non-production problem created for API integration
            testing.
        isFromRopesTestBank:
          type: boolean
          description: True if this problem is from the shared Ropes Test Bank.
      required:
        - id
        - name
        - status
        - duration
        - candidateSummary
        - problemSummary
        - scoringCategories
      description: Detailed problem information
    ProblemScoringCategory:
      type: object
      properties:
        title:
          type: string
          description: Title of the scoring category
        weight:
          type: number
          description: Weight/percentage value configured for this scoring category
        rubric:
          type: string
          description: Rubric/prompt used when evaluating this category
      required:
        - title
        - weight
        - rubric
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key

````