JobMojito
HomePublic pageAdmin app
HomePublic pageAdmin app
  1. Actions API
  • Welcome
  • API keys creation
  • API usage and libraries
  • Vibe coding
  • Platform
    • Interview workflow
    • Interview scoring
    • Data privacy model
    • Custom web domain
  • Actions API
    • Client URL for new user
      POST
    • Client URL for existing user
      POST
    • Invite user
      POST
    • Interview result, details with transcript
      POST
    • Interview result, generate html/PDF report
      POST
    • Create interview, using position data
      POST
    • Create interview, using position data & candidate pre-screening
      POST
    • Create interview, using provided questions
      POST
  • Tables API
    • interview_def_set
      • /interview_def_set
      • /interview_def_set
      • /interview_def_set
      • /interview_def_set
    • interview_def_pre_screening
      • /interview_def_pre_screening
      • /interview_def_pre_screening
      • /interview_def_pre_screening
      • /interview_def_pre_screening
    • interview_def_question
      • /interview_def_question
      • /interview_def_question
      • /interview_def_question
      • /interview_def_question
    • interview_def_response
      • /interview_def_response
      • /interview_def_response
      • /interview_def_response
      • /interview_def_response
    • interview_file
      • /interview_file
      • /interview_file
      • /interview_file
      • /interview_file
    • interview_file_page
      • /interview_file_page
      • /interview_file_page
      • /interview_file_page
      • /interview_file_page
    • interview_result
      • /interview_result
      • /interview_result
      • /interview_result
      • /interview_result
    • interview_templates
      • /interview_templates
      • /interview_templates
      • /interview_templates
      • /interview_templates
    • interview_result_question
      • /interview_result_question
      • /interview_result_question
      • /interview_result_question
      • /interview_result_question
    • interview_result_pre_screening
      • /interview_result_pre_screening
      • /interview_result_pre_screening
      • /interview_result_pre_screening
      • /interview_result_pre_screening
    • knowledge_base
      • /knowledge_base
      • /knowledge_base
      • /knowledge_base
      • /knowledge_base
    • knowledge_base_store
      • /knowledge_base_store
      • /knowledge_base_store
      • /knowledge_base_store
      • /knowledge_base_store
    • knowledge_base_chunks
      • /knowledge_base_chunks
      • /knowledge_base_chunks
      • /knowledge_base_chunks
      • /knowledge_base_chunks
    • position_def_set
      • /position_def_set
      • /position_def_set
      • /position_def_set
      • /position_def_set
    • position_def_step
      • /position_def_step
      • /position_def_step
      • /position_def_step
      • /position_def_step
    • position_result
      • /position_result
      • /position_result
      • /position_result
      • /position_result
    • position_result_step
      • /position_result_step
      • /position_result_step
      • /position_result_step
      • /position_result_step
    • profile
      • /profile
      • /profile
      • /profile
      • /profile
    • profile_interview
      • /profile_interview
      • /profile_interview
      • /profile_interview
      • /profile_interview
  • Webhooks
    • Creating webhooks
    • Webhook: Interview submitted
  1. Actions API

Create interview, using position data & candidate pre-screening

POST
/job-interview-create-for-candidate-with-token
This endpoint will receive candidate data, position information, will generate the interview. These are the steps taken by the endpoint
1.
Generate interview for specific position
2.
Register candidate
3.
Generate token for the candidate to take the interview
Some or all fields below could be provided (that would make the interview questions more relevant) or if they are not provided, we will generate them using our LLM.
description
description_long
candidate_expectations
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://cool.jobmojito.com/functions/v1/job-interview-create-for-candidate-with-token' \
--header 'Content-Type: application/json' \
--data-raw '{
    "position_name": "executive senior project manager",
    "position_location": "remote",
    "candidate_name": "John 2",
    "candidate_email": "john@email.com",
    "mojito_language_code": "en",
    "location": "remote",
    "candidate_resume": "I was working as a cleaner in multiple establishments like hotels, restaurants",
    "position_country_code": "sk",
    "candidate_country_code": "sk"
}'
Response Response Example
200 - Example 1
{
  "status": "ai_accept",
  "position_def_set_id": "40fc74dd-db38-47cb-9c6b-d2c631a697f8",
  "interview_def_set_id": "44c18c93-d7fe-4bb0-9f50-e4958179f2e9",
  "profile_interview_id": "8267200c-3a48-49f3-9559-b0178ddb8a5c",
  "interview_url": "https://..."
}

Request

Authorization
Provide your bearer token in the
Authorization
header when making requests to protected resources.
Example:
Authorization: Bearer ********************
Body Params application/json
position_external_id
string 
optional
External code of the interview (put your ID here)
interview_template_id
string 
optional
Avatar ID from table interview_templates
position_location
string 
required
Provide location of the position, if it is remote, provide text "remote"
position_name
string 
required
Name of the position
position_country_code
string 
required
Country code of the position
position_description
string 
optional
Short description of the position
position_description_long
string 
optional
Long description of position (expected MD formating)
mojito_language_code
string 
required
Language code of the interview
merchant_id
string 
optional
Your merchant_id
candidate_external_id
string 
optional
External code of the candidate (put your ID here)
candidate_country_code
string 
required
Location code of the candidate's residency
candidate_name
string 
required
Candidate name
candidate_email
string 
required
Candidate email
candidate_linkedin_url
string 
optional
Candidate linkedin url
candidate_resume
string 
required
Candidate resume as plaintext
interview_attempts
number 
optional
Maximum number of interview attempts
>= 1<= 10
Examples

Responses

🟢200Success
application/json
Body
status
enum<string> 
required
Allowed values:
ai_acceptrecruiter_acceptrecruiter_actionai_rejectrecruiter_rejectalready-applied
position_def_set_id
string 
required
Position ID
interview_def_set_id
string 
required
Interview ID
profile_interview_id
string 
required
Candidate profile ID
interview_url
string 
optional
Frontend URL to which Candidate should be redirected to
reason
string 
required
Reason text for the candidate when status is ai_reject, recruiter_reject or already-applied
🟠422Invalid input
🔴500Server error
Previous
Create interview, using position data
Next
Create interview, using provided questions
Built with