This documentation aims to provide all the information you need to work with our API.
Use the links on the left to find the documentation for each endpoint.
To authenticate requests, include an Authorization
header with the value "Bearer {YOUR_AUTH_KEY}"
.
All authenticated endpoints are marked with a requires authentication
badge in the documentation below.
Generate long lived API tokens in the Settings > API Keys
section of your workspace.
APIs for managing interview assistant
This can be used when you want use our automated interview generation from an objective and some basic configuration options.
curl --request POST \
"https://app.mobrule.ai/api/v1/interview-assistant" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"objective\": \"My company is a specialist in the field of [your industry]. I want to hire a new employee and evaluate their skills and experience before hiring them. The most important details I need to know are their experience, skills, and any other relevant details in the industry.\",
\"approx_duration\": 15,
\"approx_questions\": 10,
\"user_uuid\": \"6ff8f7f6-1eb3-3525-be4a-3932c805afed\",
\"workspace_uuid\": \"6ff8f7f6-1eb3-3525-be4a-3932c805afed\"
}"
{
"status": "success",
"message": "Interview creation started",
"data": {
"generator_id": "some-random-id"
}
}
curl --request GET \
--get "https://app.mobrule.ai/api/v1/interview-assistant/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
cache-control
: no-cache, private
content-type
: application/json
x-ratelimit-limit
: 600
x-ratelimit-remaining
: 599
vary
: Origin
{
"message": "Unauthenticated."
}
APIs for managing interview sessions
Generates verification tokens and URLs for one or more users to access an interview session.
curl --request POST \
"https://app.mobrule.ai/api/v1/interview-sessions/fb260a39-51ec-461f-b835-3b1f71c2554e/pre-authenticate" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"emails\": [
\"user@example.com\",
\"user2@example.com\"
]
}"
{
"message": "Pre-authentication URLs generated successfully",
"urls": [
{
"email": "user@example.com",
"response_uuid": "123e4567-e89b-12d3-a456-426614174000",
"verification_url": "https://app.mobrule.com/interview-uuid/verify?token=abc123",
"expires_at": "2025-01-27T10:30:00Z"
}
]
}
APIs for managing responses
curl --request GET \
--get "https://app.mobrule.ai/api/v1/responses/9e906d5d-9d14-4fe6-8c19-3121d42f2e00" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
{
"status": "success",
"message": "Response retrieved successfully",
"data": {
"uuid": "uuid",
"state": "started",
"step": "questioning",
"interview_uuid": "0198666b-4a64-7397-9674-1a15b9688095",
"response_data": "array",
"person": {
"uuid": "0198666a-6545-704f-b52d-cdd79189bde3",
"name": "Jane Doe",
"email": "jane.doe@example.com",
"external_id": "",
"created_at": "2025-01-01T00:00:00.000000Z",
"updated_at": "2025-01-01T00:00:00.000000Z"
},
"created_at": "2025-01-01T00:00:00.000000Z",
"updated_at": "2025-01-01T00:00:00.000000Z"
}
}
APIs for managing workspaces
Your API key is assigned to a workspace. This endpoint will return the details of your workspace.
curl --request GET \
--get "https://app.mobrule.ai/api/v1/workspace" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
{
"status": "success",
"message": "Workspace found",
"data": {
"uuid": "string",
"name": "string",
"created_at": "string",
"updated_at": "string"
}
}