---
title: "Lookup by phone number"
method: GET
path: "/v1/simulation/job/lookup"
tags: ["Simulation Job"]
---

# Lookup by phone number

`GET /v1/simulation/job/lookup`

Find the matching simulation using the number used by the Roark simulation agent.

## Query parameters

- `roarkPhoneNumber` string, required
- `callReceivedAt` string, date-time

## Response `200`

Successfully found simulation job

- object
  - `data` SimulationJobResponse, required — Simulation job with related entities
    - `simulationJobId` string, uuid, required — Simulation job ID
    - `status` string, required — Job status
    - `processingStatus` string, required — Processing status
    - `callId` string, uuid, nullable — ID of the call created for this simulation job. Null if the call has not been created yet.
    - `roarkPhoneNumber` string, nullable — Phone number provisioned by Roark for this simulation job in E.164 format. Null if the simulation job is queued and has not been assigned a phone number yet.
    - `runPlan` SimulationRunPlanRef, required
      - `id` string, uuid, required — Run plan ID
      - `name` string, required — Run plan name
      - `variables` object, required — Run-plan-level variables resolved for this job, keyed by variable name. Values are stringified by their declared type.
    - `persona` object, required
      - `id` string, uuid, required — Unique identifier of the persona
      - `name` string, required — The name the agent will identify as during conversations
      - `description` string, nullable — Human-readable description of the persona
      - `language` 'EN' | 'ES' | 'DE' | 'HI' | 'FR' | 'NL' | 'AR' | 'EL' | 'IT' | 'ID' | 'TH' | 'JA' | 'TL' | 'MS' | 'ZH' | 'TR' | 'PT' | 'HE', required — Primary language ISO 639-1 code for the persona
      - `secondaryLanguage` 'EN', nullable — Secondary language ISO 639-1 code for code-switching (e.g., Hinglish, Spanglish)
      - `understoodLanguages` string[], required — Languages the persona can understand. Multilingual combinations are limited by multilingual speech recognition support.
      - `accent` 'US' | 'US_X_SOUTH' | 'GB' | 'ES' | 'DE' | 'IN' | 'FR' | 'NL' | 'SA' | 'GR' | 'AU' | 'IT' | 'ID' | 'TH' | 'JP' | 'NZ' | 'PH' | 'SG' | 'MY' | 'HK' | 'TR' | 'PT' | 'IL', required — Accent of the persona, defined using ISO 3166-1 alpha-2 country codes with optional variants
      - `age` 'CHILD' | 'TEENAGER' | 'ADULT' | 'ELDERLY', required — How old the caller sounds and behaves. Only ages the persona's accent has a voice for are accepted; defaults to ADULT, which every accent supports.
      - `gender` 'MALE' | 'FEMALE', required — Gender of the persona
      - `backgroundNoise` 'NONE' | 'AIRPORT' | 'CHILDREN_PLAYING' | 'CITY' | 'COFFEE_SHOP' | 'DRIVING' | 'OFFICE' | 'THUNDERSTORM', required — Background noise setting
      - `speechPace` 'SUPER_SLOW' | 'SLOW' | 'NORMAL' | 'FAST' | 'SUPER_FAST', required — Speech pace of the persona
      - `speechClarity` 'CLEAR' | 'VAGUE' | 'RAMBLING', required — Speech clarity of the persona
      - `hasDisfluencies` boolean, required — Whether the persona uses filler words like "um" and "uh"
      - `baseEmotion` 'NEUTRAL' | 'CHEERFUL' | 'CONFUSED' | 'FRUSTRATED' | 'SKEPTICAL' | 'RUSHED' | 'DISTRACTED', required — Base emotional state of the persona
      - `intentClarity` 'CLEAR' | 'INDIRECT' | 'VAGUE', required — How clearly the persona expresses their intentions
      - `confirmationStyle` 'EXPLICIT' | 'VAGUE', required — How the persona confirms information
      - `memoryReliability` 'HIGH' | 'LOW', required — How reliable the persona's memory is
      - `responseTiming` 'RELAXED' | 'NORMAL' | 'QUICK', required — Controls how quickly the persona responds to pauses in conversation (QUICK, NORMAL, RELAXED)
      - `backstoryPrompt` string, nullable — Background story and behavioral patterns for the persona
      - `idleMessages` string[], nullable, required — Messages the persona will say when the agent goes silent during a call. null = "Automatic": language-appropriate defaults are used at call time.
      - `idleTimeoutSeconds` integer, required — Seconds of silence before the persona sends an idle message
      - `idleMessageMaxSpokenCount` integer, required — Maximum number of idle messages the persona will send before giving up
      - `idleMessageResetCountOnUserSpeechEnabled` boolean, required — Whether the idle message counter resets when the agent speaks
      - `properties` object, required — Additional custom properties about the persona
      - `createdAt` string, required — Creation timestamp
      - `updatedAt` string, required — Last update timestamp
    - `scenario` ScenarioResponse, required — Scenario used in a simulation
      - `id` string, uuid, required — Scenario ID
      - `description` string, nullable — Scenario description
    - `agentEndpoint` AgentEndpointResponse, required — Agent endpoint used in a simulation
      - `id` string, uuid, required — Agent endpoint ID
      - `name` string, required — Agent endpoint name
      - `phoneNumber` string, nullable, required — Agent endpoint phone number
      - `type` 'PHONE' | 'WEBSOCKET' | 'LIVEKIT' | 'SMALL_WEBRTC' | 'ELEVENLABS_WS' | 'KORE' | 'GOOGLE_CES' | 'DAILY', required — Agent endpoint type
    - `createdAt` string, required — When the job was created
    - `startedAt` string, nullable — When the job started
    - `completedAt` string, nullable — When the job completed

## Other responses

- `401` — Unauthorized
- `403` — Forbidden
- `404` — No active lease or associated job found
- `429` — Too Many Requests
- `500` — Internal Server Error

## Changes

- **2026-08-26** `b4a59c7057ca` — 1 breaking, 8 info
  - the response's body type/format changed from ``/`` to `object`/`` for status `404`
  - for the `query` request parameter `callReceivedAt`, the type/format was generalized from ``/`` to `string`/`date-time`
  - for the `query` request parameter `roarkPhoneNumber`, the type/format was generalized from ``/`` to `string`/``
  - added the optional property `details` to the response with the `404` status
  - …5 more
- **2026-08-17** `887b091b3d81` — 1 breaking, 11 warning, 5 info
  - the response property `data/persona/idleMessages` became nullable for the status `200`
  - added the new `DAILY` enum value to the `data/agentEndpoint/type` response property for the response status `200`
  - added the new `HE` enum value to the `data/persona/language` response property for the response status `200`
  - added the new `IL` enum value to the `data/persona/accent` response property for the response status `200`
  - …13 more
- **2026-04-17** `ec9443a8a36f` — 2 warning
  - added the new `GOOGLE_CES` enum value to the `data/agentEndpoint/type` response property for the response status `200`
  - added the new `KORE` enum value to the `data/agentEndpoint/type` response property for the response status `200`

[Change history](https://skmtc.dev/roarkhq/apis/roark-analytics-api/changes/v1/simulation/job/lookup/get.md)

---

[API](https://skmtc.dev/roarkhq/apis/roark-analytics-api.md) · [All operations](https://skmtc.dev/roarkhq/apis/roark-analytics-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/roarkhq/roark-analytics-api/revisions/1d61b68e9429/schema)
