On this page
trainingTutor
query · in the family Your own session
What it does
Ask the tutor a question about one course — it answers from the course’s own steps and the bank’s explanations, naming what it rests on.
Ask the tutor ONE question about ONE course (🎓: ONE strict call on the metered AI lane (office.training_tutor) GROUNDED on the course's own words, its ACTIVE question bank (the right answers and explanations the manager authored) and the questions YOU missed on your last practice — the answer (at most 1200 characters) names the steps and questions it rests on (grounds). question is 1..400 characters (VALIDATION otherwise); stepN, when given, is one of the play's steps. At most 30 asks an hour per person (RATE_LIMIT/THROTTLED with retryAfterSeconds — unmetered); a keyless or failing assistant refuses INTEGRATION/UNAVAILABLE — the course's steps are the answer. NOTHING is stored. SELF on the USER plane — every principal keeps it.
What happens
A tutoring assist that spends kernels; nothing is stored; at most thirty asks an hour.
Who may call it
Capability area: Your own session — What every signed-in person may do for themselves — their session, their profile and their own work.
- Owner
- System Administrator
- Manager
- Associate Manager
- Warehouse Associate
- Sales Associate
- Cashier
- An API key whose scope allows
api:trainingTutor
Arguments
| Name | Type | Required | Notes |
|---|---|---|---|
courseKey | String String! | yes | No further notes. |
question | String String! | yes | No further notes. |
stepN | Int | no | No further notes. |
Returns
TrainingTutorAnswer TrainingTutorAnswer! — The tutor's answer: plain words (at most 1200 characters), the grounds it rests on, the model that spoke. NOTHING is stored.
Example request
query ExampleTrainingTutor($courseKey: String!, $question: String!, $stepN: Int) {
trainingTutor(courseKey: $courseKey, question: $question, stepN: $stepN) {
answer
model
}
}
Variables:
{
"courseKey": "<course key>",
"question": "<question>",
"stepN": 1
}
Example response
{
"data": {
"trainingTutor": {
"answer": "<answer>",
"model": "<model>"
}
},
"extensions": {
"at": {
"callId": "01EXAMPLE-CALL-ID",
"version": {
"requested": null,
"serviced": {
"name": "genesis",
"number": 0
}
}
}
}
}
Errors this call can answer
VALIDATION/INVALID— Something in the request is not valid. (VALIDATION)AUTHN/REQUIRED— Sign in to do this. (AUTHN)AUTHZ/FORBIDDEN— Your role does not allow this action. (AUTHZ)RATE_LIMIT/THROTTLED— Too many requests in a short time. (RATE_LIMIT)