Overview
The Certiverse–TrueAbility integration lets an organization deliver a TrueAbility hands-on lab (a Performance Based Test, or PBT) as a test part inside a scheduled, proctored Certiverse exam. Certiverse owns booking, proctoring, the test driver and results ; TrueAbility owns the virtual machine (VM), the candidate's tasks and lab scoring.
User: Organizations that certify hands-on technical skills.
Configuration: Requires a Certiverse Org Admin with access to Certiverse Connectors and access to Exam Management.
| Capability | What it does |
| Connector | Stores the TrueAbility API key once per organization (Admin > Org > Integrations & Connectors) |
| Exam configuration | Links an exam to one TrueAbility Ability Screen (the lab) |
| Provisioning in advance | Sends a reservation to TrueAbility at booking so the VM is built before the appointment (must be scheduled at least 24+ |
| Delivery | Launches the TrueAbility console from the PBT test part; candidate can exit and resume |
| Proctor controls | Add time, pause, resume and stop pass through to the TrueAbility assessment |
| Scoring | Stores the TrueAbility score and pass/fail; combines with multiple-choice test parts using a PBT weight. |
Key constraint: TrueAbility exams must be scheduled, normally 24+ hours ahead, because TrueAbility builds the VM before the appointment.
How it works
TrueAbility is a provision-in-advance provider: Certiverse sends the reservation when the booking is made, then hands control to TrueAbility only for the PBT test part. All calls use TrueAbility API v1 with the org's API key; TrueAbility calls back through webhooks Certiverse registers when the exam is activated.
The Certiverse event triggers the TrueAbility call beside it. Final results wait for assessment_finalized, so scores usually appear 10–60 minutes after the candidate finishes.
Prerequisites
Have these in place before configuring anything in Certiverse.
| Item | Owner | Notes |
| TrueAbility account and API key | Client / TrueAbility | Sent in the X-API-KEY header on every call. Sandbox and production keys are separate. |
| Published Ability Screen(s) | Client / TrueAbility | The lab the candidate will take. Must be visible to the API key. |
| VM build window | TrueAbility | Time TrueAbility needs to build the VM before the appointment (e.g., 12 hours). Drives the booking lead time. |
| Certiverse role with Connectors access | Certiverse | Org Admin |
| Live proctored, scheduled delivery | Certiverse | Only scheduled appointments are supported for TrueAbility exams. |
| Store exam set up | Certiverse | Booking, price, eligibility and time slots as for any store exam. |
| Secure browser allow-list (if used) | Certiverse | If the exam uses Safe Exam Browser, allow the TrueAbility console URLs. |
Candidates also need a stable connection and a supported browser, because the lab runs remotely in TrueAbility.
Data schema
Data moves in five groups: connector credentials, exam configuration, the reservation, delivery state, and results. Field names below are the Certiverse labels; TrueAbility JSON property names follow their API v1 docs and should be confirmed against the current spec before sharing externally.
Connector (organization level)
| Field | Type | Required | Source | Notes |
| Connection Type | Fixed | Yes | Certiverse | Performance Based Testing |
| Partner | Fixed | Yes | Certiverse | TrueAbility |
| API Key | String (secret) | Yes | TrueAbility | Encrypted at rest; only the last 4 characters are shown after saving. Can be replaced, never viewed. |
Exam configuration (Exam Management)
| Field | Type | Required | Level | Notes |
| Has Performance Based Test | Boolean | Yes | Exam | Turns on PBT options |
| PBT Provider | Enum | Yes | Exam | TrueAbility |
| Connector | Reference | Yes | Exam | A TrueAbility connector configured for the org |
| Ability Screen | ID + name | Yes | Exam | Picked from GET /ability_screens; shown as Name (ID). Set at exam level because the form is chosen only at launch. |
| Use As Performance Based Test | Boolean | Yes | Test part | Exactly one test part per form; that part holds no sections or items |
| PBT Weight | Decimal 0.0000–1000.0000 | If scored with other parts | Test part | Converts the 0–1 TrueAbility score to raw points |
| Test part scoring type | Enum | Yes | Test part | e.g. PBT Provider Determined (pass/fail comes from TrueAbility; no passing-score field) |
Reservation (Certiverse → TrueAbility at booking)
| Data | Type | Required | Notes |
| Ability Screen ID | String | Yes | From exam configuration |
| Appointment date-time | ISO 8601, UTC | Yes | Booking start; TrueAbility builds the VM ahead of it |
| Test Delivery Location | ISO country code | Yes | Collected at booking (IP geolocation default, candidate can change); used for regional provisioning |
| Candidate identity | Name, email | Yes | Booking candidate |
| Reservation UUID | String | Returned | TrueAbility's ID; stored on the Certiverse booking and used for all later calls |
Delivery (stored on the candidate exam)
| Data | Type | Notes |
| Assessment ID | String | Returned when the assessment starts |
| Console URL | URL | Returned by POST /assessments/{id}/start; opened when the PBT test part is reached |
| Assessment state | Enum | in_progress, paused, ended, finalized, errored |
| Webhook events | Event | assessment_ended, assessment_errored, assessment_finalized, sent to Certiverse |
Results (TrueAbility → Certiverse)
| Data | Type | Notes |
| Score | Decimal 0.0–1.0 | Retrieved via GET /assessment_reservations/{uuid} after assessment_finalized |
| Pass/fail | Boolean | Provider-determined |
| Section sub-scores | List of name, score, pass/fail | Optional; shown on score reports via a token. No item-level data is stored. |
| PBT scored date | UTC timestamp | When Certiverse received the final score |
Score formula when a PBT is combined with multiple-choice parts:
\text{Exam raw score} = (\text{PBT weight} \times \text{TrueAbility score}) + \text{MC raw score}
Example: a 50-item MC part with 30 correct, PBT weight 50 and TrueAbility score 0.5 gives 25 + 30 = 55.
Configuration steps
Setup takes four stages: create the connector, configure the exam, configure the form, then set up the store exam. Do them in this order; the exam settings only list connectors that already exist.
1. Create the TrueAbility connector
- Go to Admin > Connectors > Performance Based Testing
- Filter by Connection Type Performance Based Testing, or Partner TrueAbility, and select the TrueAbility tile.
- Provide a Name for the connector.
- Enter the API Key supplied by TrueAbility.
- Validate the key and click Create. After saving, only the last 4 characters display.
2. Configure the exam
- Go to Exam Management, open the exam, and select Advanced Settings gear icon.
- Under Performance Based Test, turn on Has Performance Based Test.
- Select TrueAbility as the provider.
- If you see "This organization has no TrueAbility connectors configured", complete step 1 first. Go to Connectors opens it (Org Admin only).
- Select the Connector.
- Select the Ability Screen from the list returned by TrueAbility (shown as Name (ID)).
- Save or Update.
3. Configure the exam form
- Open the exam form and add, or select, the test part for the lab.
- Toggle on Use As Performance Based Test. The Delivery tab then labels it "Performance Based Test". This part cannot hold sections or items.
- Set the test part scoring type:
- PBT Provider Determined to use TrueAbility's pass/fail.
- Otherwise set a PBT Weight (0–1000, up to 4 decimals) so the score combines with any multiple-choice parts.
- Add multiple-choice test parts if the exam is mixed-format. Only one PBT test part is allowed per form.
- Approve and activate the form. Once a form is active, the PBT toggle on its test part is locked.
4. Set up the store exam
- Set delivery to Live Proctored, scheduled.
- Confirm time slots respect the VM build window: bookings must start at least 24 hours out.
- To let a specific candidate book sooner, add a Bypass schedule in advance exception for that user and exam. TrueAbility still requires at least 13 hours (12-hour build window + 1).
- If needed, limit concurrent PBT sessions or bookable days and hours for the exam in the Store Exams configuration.
Testing and validation
Run one end-to-end booking in QA with TrueAbility sandbox Ability Screens before going live, and check each step below.
- Connector saves and validates; key shows masked
- Ability Screen list loads after selecting the connector
- Exam form with the PBT test part approves and activates
- Booking 24+ hours out creates a reservation in TrueAbility (check the TrueAbility admin)
- Cancelling the booking deletes the TrueAbility reservation
- Rescheduling updates the reservation time
- At launch, the PBT test part opens the TrueAbility console
- Proctor chat and controls work while the lab is open
- Proctor add time, pause and resume reach TrueAbility
- "I am done with my Performance Based Test" returns to Certiverse with Resume and Finish options
- Finish Exam stops the TrueAbility assessment (including when paused)
- After assessment_finalized, score and pass/fail appear in the Candidate Results Report
- Mixed-format forms show the correct Reported Score and score report sub-scores
Troubleshooting and FAQ
| Symptom | Likely cause | Fix |
| "No TrueAbility connectors configured" in Advanced Settings | Connector not created for the org | Org Admin creates it under Integrations & Connectors |
| Ability Screen list is empty | Wrong or sandbox-only API key, or no published screens | Re-enter the key; confirm screens with TrueAbility |
| Booking fails or reservation missing in TrueAbility | Appointment inside the VM build window, or the async reservation job failed | Book 24+ hours out (13+ with a bypass); check booking logs and retry |
| "The Performance Based Test portion of this exam could not be provisioned in the partner platform." | Start assessment call failed at launch | Check reservation exists and API key is valid; contact TrueAbility |
| Lab stays in progress in TrueAbility after Finish Exam | Stop call not sent | Fixed for paused labs (PD-16923); stop manually in TrueAbility if it recurs |
| Candidate cannot re-enter the lab | Candidate clicked Complete Assessment in TrueAbility, which ends it | Expected; candidate finishes the exam in Certiverse |
| Reported Score blank | TrueAbility not yet finalized (10–60 minutes) | Wait for assessment_finalized |
| Add time returns an error | Request made inside 24 hours of the appointment | Add time earlier, or the proctor adds time live |
| Non-US keyboard issues in the lab | Keyboard layout not passed to the VM | Known issue; advise candidates |
Can a candidate book an unscheduled or on-demand TrueAbility exam? No. Only scheduled appointments are supported, because the VM is built in advance.
Does a no-show need any action? No. TrueAbility takes the VM offline when it expires (about 4 hours, depending on the lab).
Can each exam form use a different Ability Screen? No. TrueAbility is set at exam level because the reservation is sent at booking, before a form is chosen.
Can PBT exams be rescored in Certiverse? No. Rescoring is blocked for PBT exams and forms; scores come from TrueAbility.
TrueAbility API v1 reference: app.trueability.com/api/docs/v1.
Contact Us
If you have any questions or need additional assistance, please contact us by either emailing support@certiverse.com or by submitting a ticket from this article.
Updated
Comments
0 comments
Article is closed for comments.