Skip to content

Configuration iframe

The iframe is the screen where the recruiter sets up the assessment for a job offer: the agent (pre-screening, additional information or interview scheduling), the contact channel, the questions and their importance. Skillee proposes a first plan based on the text of the job offer; the recruiter adjusts it, then confirms.

The URL comes from the POST /partners/beetween/assessment-builder-sessions call (see the quickstart). Load it as is, without modifying or caching it: it carries the company and the job offer.

<iframe
src="https://…"
title="Skillee assessment configuration"
style="width: 100%; height: 760px; border: 0"
></iframe>

The iframe’s interface follows the language of the recruiter’s browser. To force a language, add lang to the URL: &lang=en, &lang=de… (fr, en, de, es, it, pt). This setting only affects the screen: the language in which the agent speaks to the candidate is chosen in the iframe.

When the recruiter confirms, the iframe saves the assessment, then sends two messages to your page with postMessage. The first one only contains the ID to keep:

// iframeUrl: the URL received when the session was opened.
const SKILLEE_ORIGIN = new URL(iframeUrl).origin;
window.addEventListener('message', (event) => {
if (event.origin !== SKILLEE_ORIGIN) return;
if (event.data?.testId) {
// Store it with the job offer: it is the `assessmentId` for assignments.
saveAssessmentId(event.data.testId);
}
});
Message When Content
{ testId } The assessment is saved. The assessment ID.
{ type: 'skillee-plan:confirmed', … } Right after testId. The confirmed plan (job offer, settings, questions) and the save response in result.
{ type: 'skillee-plan:error', error } Generation or saving failed. A readable message, already shown to the recruiter in the iframe.
{ type: 'skillee-plan:close' } The recruiter closed the screen without confirming. —

A job offer can carry several assessments, for example a pre-screening followed by interview scheduling. Each time it opens, the iframe shows the ones that already exist: the recruiter edits one or adds a new one. Each assessment keeps its own testId.