add-candidate-note
ChatGPTAdd a text note to a current application by interaction id. Raw invitations are not application candidates yet.
add-job-to-globalcast
ChatGPTAdds a published job post to GlobalCast, the free distribution to external channels. Only call it when the user explicitly asks to distribute, promote, or publish the job to GlobalCast. Check the "globalcast" field first: list-short-job-posts and get-full-job-post both return it, and when globalcast.added is true the job is already in GlobalCast — say so and do not offer to add it again. The job must be active; an unpublished job has to be published in Turrior first. There is no way to remove a job from GlobalCast on its own: it leaves GlobalCast only when the job itself is unpublished. Calling this tool twice changes nothing and returns the current state.
add-to-shortlist
ChatGPTAdd a talent to the current company user shortlist by talent.id.
attach-quiz
ChatGPTAttach a previously created quiz of any type to a job post by ids.
cancel-calendly-interview
ChatGPTCancel a Calendly interview that is in active state.
change-candidates-status
ChatGPTBulk status update for applications returned by get-candidates, including applications converted from invitations. Raw invitations cannot enter the application funnel. The response includes a report with status changes and per-candidate errors because not all transitions are allowed. Change candidate statuses only when the operator explicitly asks to change the status of specific candidates. Never initiate a status change based on scores, assessments, reports, or your own recommendation. If the candidates or target status are unclear, ask the operator to clarify before calling this tool.
create-new-job
ChatGPTCreate a job posting for talents when the user explicitly asks to create one. To enable publishing, fill title, description, responsibilities, experience, categoryId, experienceId, hours, wage, wageInterval, frequency, typeOfWork, englishLevel, and jobTypesIds. The responsibilities and skills sections should each contain at least 5 bullet points when enough context is available. Use company profile and conversation context to infer useful details, but ask gradually when required information is missing. Be careful with countryIds: it must be an array of numeric country IDs, not country objects. After creation, confirm the job and remind the user it still needs to be published. If the user requests immediate publication, collect every publish-required field before creating the job. In particular, wage and wageInterval are required. Wage is always expressed in USD.
create-quiz
ChatGPTFor text quizzes only. Create a quiz, test, or qualification form that can be attached to a vacancy, or created separately. If attached to a vacancy, the quiz becomes a mandatory condition for submitting an application. The assistant may independently develop questions from the conversation context and should inform the user after successful creation.
create-video-quiz
ChatGPTFor video quizzes only. Create an async interview that can be attached to a vacancy, or created separately. If attached to a vacancy, the video quiz becomes a mandatory condition for submitting an application. The assistant may independently develop questions from the conversation context and should inform the user after successful creation.
edit-company-profile
ChatGPTEdit the current company profile with one or more fields, similar to a PATCH request. Use this when mandatory company profile fields are empty or when the company representative asks to update profile data. By default this tool only saves changes. Set publishAfterEdit=true only when the user explicitly asks to publish the profile. When publication is requested but required fields are missing, the changes are still saved and the response identifies every field that prevents publication. A rejected profile is submitted for moderation and becomes pending rather than public. When current profile values matter, call get-company-profile first and then send only changed fields. Company description is truncated to 2000 characters before saving.
find-city
ChatGPTSearch cities by name and return compact city data.
get-calendly-event-types
ChatGPTReturns Calendly event types from the user account, filtered to Google Meet event types, including name and uri. If the user wants to invite a candidate but does not specify an event type, use the first suitable event type from this list.
get-candidate-notes
ChatGPTGet notes for a candidate-job interaction.
get-candidates
ChatGPTReturn the call results to the user as markdown for data presentation. Get the list of job applicants and invitations, also referred to as candidates or interactions. The data includes the job post, talent, applicationScore.weightedScore, and applicationScore.decisionComment. Use minScore 75 for green score applicants. Use sortBy "score" for top candidates. For count questions, use the required filters with limit 1 and read total. When several interaction types are required, call this tool multiple times because interactionType accepts only one value.
get-company-profile
ChatGPTReturns the current private company profile, equivalent to GET /api/profile/company. Use this before edit-company-profile when profile changes should be based on existing data. If the user asks to update profile data after reading it, call edit-company-profile with only the fields that should change. The returned company description is truncated to 2000 characters.
get-full-job-post
ChatGPTReturns the complete data of a job post by id. Use after identifying the job and before modifications. When the user asks for an application/apply link, retrieve the full job post and, if status is "active" and slug is present, construct the external application link as "https://turrior.com/apply/" + slug. The "globalcast" field carries the GlobalCast state: globalcast.added true means the job is already distributed and must not be added again, while globalcast.error explains why the last attempt did not stick.
get-industries-list
ChatGPTReturns the full list of company industries with IDs, names, and categories. Use this before setting company profile industryId in edit-company-profile. Choose the best matching industry from the returned list based on the user context; do not guess industryId from memory.
get-interviews
ChatGPTGet Calendly interviews with candidates, either by date interval or by pagination.
get-quiz-answers
ChatGPTOnly for quiz type 'text' (qualification form). Retrieve the quiz completed by a talent for a position. Use when a job application contains a quizId and the user wants to inspect or assess the candidate's answers. Offer to evaluate the talent's competence based on the responses.
get-quizzes-list
ChatGPTReturns the company quizzes of both text and video types, including only id, title, and type. Use this to identify the quiz ID before attaching a quiz/test to a job.
get-talents-details
ChatGPTRetrieve detailed information about a talent by talent.id or talentId. Each call increments the talent profile view count.
get-video-quiz-answers
ChatGPTOnly for quiz type 'video' (video interview). Retrieve the video quiz completed by a talent for a position. Use when a job application contains a quizId and the user wants to inspect or assess the candidate's video interview answers. Offer to evaluate the talent's competence based on the responses.
invite-candidate-to-interview
ChatGPTInvite a candidate from a current application (including an application converted from an invitation) to a Calendly meeting. Raw job invitations are not eligible. Get event types from get-calendly-event-types first. If the user does not specify an event type, use the first suitable event type; if they do, infer the closest event type by name.
list-short-job-posts
ChatGPTReturns a short list of the current company job posts with id, title, status and GlobalCast state. Use this to find the job id by title when the user names a job and the id is not already known, including when they ask for an application/apply link. The "globalcast" field tells whether the job is already distributed through GlobalCast: when globalcast.added is true, never offer to add it again.
patch-job
ChatGPTUpdate one or more fields of an existing job post by id. Use only when the user explicitly requests a job modification. Before calling this tool, identify the correct job post and retrieve current full data with get-full-job-post. Only include fields that the user explicitly wants to change; this is a partial update and preserves other values.
publish-job
ChatGPTPublish an existing job post by id. Use when the user asks to publish a job. If the backend reports missing required fields, inform the user that the job post is not fully completed yet and suggest editing the missing fields before publishing.
put-quiz
ChatGPTFor text quizzes only. Update an existing quiz in full-replacement mode. All provided fields replace the existing quiz state: omitted existing questions/options are removed, new ones are added, and existing ones are overwritten. Use when the user iterates on a previously created quiz and wants to resend the entire revised object. If attached to a job, the updated version becomes effective for applicants.
put-video-quiz
ChatGPTFor video quizzes only. Update an existing video interview quiz in full-replacement mode. All provided fields replace the existing quiz state: omitted existing questions are removed, new ones are added, and existing ones are overwritten. Use when the user iterates on a previously created video quiz and wants to resend the entire revised object.
search-categories
ChatGPTSearches active job categories by a fragment of the category or occupation name. Use this to find category IDs.
search-countries
ChatGPTSearch countries by a fragment of the English country name to get country IDs.
search-languages
ChatGPTSearch languages by a fragment of the language name to get language IDs.
un-publish-job
ChatGPTDisable, hide, or unpublish an existing job post by id.