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

# Review results

> List completed interviews, read full transcripts and AI assessments, and export reports.

Reviewing a candidate is three steps: find the result, read its details, and (optionally) export a report.

| Step                     | Endpoint                      | MCP tool                       |
| ------------------------ | ----------------------------- | ------------------------------ |
| List results             | `GET /merchant-result-list`   | `list_interview_results`       |
| Read transcript + scores | `POST /job-interview-details` | `get_interview_result_details` |
| Export PDF / HTML / JSON | `POST /job-interview-pdf`     | `generate_interview_report`    |

## 1. Find the result

List your merchant's results, newest first. Everything is a query parameter — no request body.

<CodeGroup>
  ```bash cURL theme={null}
  curl -G https://cool.jobmojito.com/functions/v1/merchant-result-list \
    -H "Authorization: Bearer $SUPABASE_JWT" \
    --data-urlencode "tab=completed" \
    --data-urlencode "order_by=score" \
    --data-urlencode "limit=25"
  ```
</CodeGroup>

Useful filters: `interview_id` (one interview), `tab` (`completed`, `shortlist`, `undecided`, `decided-selected`, `decided-rejected`, …), `step` (`pre-screening` or `interview`), `order_by` (`score`, `created_at_newest`, …), `filter_text`, plus `limit`/`offset`.

The response has `data[]` and `pagination`. Each row includes `interview_result_id`, `candidate_name`, `candidate_email`, `status`, `decision_status`, and `score`. Grab the `interview_result_id` for the next step.

<Tip>
  To browse candidates instead of results, use `GET /merchant-candidate-list` (`list_candidates`); to browse interview definitions, use `GET /merchant-interview-list` (`list_interviews`).
</Tip>

## 2. Read the transcript and assessment

<CodeGroup>
  ```bash cURL theme={null}
  curl -X POST https://cool.jobmojito.com/functions/v1/job-interview-details \
    -H "Authorization: Bearer $SUPABASE_JWT" \
    -H "Content-Type: application/json" \
    -d '{
      "interview_result_id": "RESULT_UUID",
      "get_signed_recordings": false
    }'
  ```
</CodeGroup>

You get the overall scores (`score`, `score_sentiment`, `score_words_per_minute`, …), AI write-ups (`ai_analysis`, `ai_analysis_recruiter`, `ai_analysis_recruiter_why_hire` / `…_why_not_hire`), any `recruiter_risks`, and the full `transcript` array. Each transcript item has `question_asked`, `answer`, per-answer `ai_analysis`, and a `score`.

## 3. Export a report

Generate a shareable report as a PDF (signed URL), raw HTML, or structured JSON. Pass a single `interview_result_id` or an array `interview_result_ids` for a combined report.

<CodeGroup>
  ```bash PDF theme={null}
  curl -X POST https://cool.jobmojito.com/functions/v1/job-interview-pdf \
    -H "Authorization: Bearer $SUPABASE_JWT" \
    -H "Content-Type: application/json" \
    -d '{
      "interview_result_id": "RESULT_UUID",
      "export_type": "pdf",
      "store_file": true,
      "export_features_result": {
        "ai_recruiter_assessment": true,
        "ai_scoring_rubric": true,
        "transcript": true,
        "analytics": true
      }
    }'
  ```

  ```bash JSON theme={null}
  curl -X POST https://cool.jobmojito.com/functions/v1/job-interview-pdf \
    -H "Authorization: Bearer $SUPABASE_JWT" \
    -H "Content-Type: application/json" \
    -d '{ "interview_result_id": "RESULT_UUID", "export_type": "json" }'
  ```
</CodeGroup>

The response shape depends on `export_type`:

* `pdf` → `pdf_export_url` + `pdf_export_valid_until` (set `store_file: true`).
* `html` → `html_export` (a full HTML document string).
* `json` → `json_export` (structured object).

### Report content toggles (`export_features_result`)

<Note>
  Set `export_features_result.mojito_language_code` to translate the report into another language (0.1 credit per result when it differs from the result's own language).
</Note>

<Tip>
  Want to give a candidate another go? `POST /job-interview-result-request-another-attempt` (`request_another_interview_attempt`) re-opens a submitted result.
</Tip>
