Classmarker

Learn how to use Classmarker with Composio

Overview

SLUG: CLASSMARKER

Description

ClassMarker is a professional, flexible, and easy-to-use online quiz maker for business and education, offering customizable exams, instant grading, and detailed reporting.

Authentication Details

generic_api_key
stringRequired
generic_token
stringRequired
generic_key
stringRequired

Connecting to Classmarker

Create an auth config

Use the dashboard to create an auth config for the Classmarker toolkit. This allows you to connect multiple Classmarker accounts to Composio for agents to use.

1

Select App

Navigate to Classmarker.

2

Configure Auth Config Settings

Select among the supported auth schemes of and configure them here.

3

Create and Get auth config ID

Click “Create Classmarker Auth Config”. After creation, copy the displayed ID starting with ac_. This is your auth config ID. This is not a sensitive ID — you can save it in environment variables or a database. This ID will be used to create connections to the toolkit for a given user.

Connect Your Account

Using API Key

1from composio import Composio
2
3# Replace these with your actual values
4classmarker_auth_config_id = "ac_YOUR_CLASSMARKER_CONFIG_ID" # Auth config ID created above
5user_id = "0000-0000-0000" # UUID from database/app
6
7composio = Composio()
8
9def authenticate_toolkit(user_id: str, auth_config_id: str):
10 # Replace this with a method to retrieve an API key from the user.
11 # Or supply your own.
12 user_api_key = input("[!] Enter API key")
13
14 connection_request = composio.connected_accounts.initiate(
15 user_id=user_id,
16 auth_config_id=auth_config_id,
17 config={"auth_scheme": "API_KEY", "val": {"generic_api_key": user_api_key}}
18 )
19
20 # API Key authentication is immediate - no redirect needed
21 print(f"Successfully connected Classmarker for user {user_id}")
22 print(f"Connection status: {connection_request.status}")
23
24 return connection_request.id
25
26
27connection_id = authenticate_toolkit(user_id, classmarker_auth_config_id)
28
29# You can verify the connection using:
30connected_account = composio.connected_accounts.get(connection_id)
31print(f"Connected account: {connected_account}")

Tools

Executing tools

To prototype you can execute some tools to see the responses and working on the Classmarker toolkit’s playground

Python
1from composio import Composio
2from openai import OpenAI
3import json
4
5openai = OpenAI()
6composio = Composio()
7
8# User ID must be a valid UUID format
9user_id = "0000-0000-0000" # Replace with actual user UUID from your database
10
11tools = composio.tools.get(user_id=user_id, toolkits=["CLASSMARKER"])
12
13print("[!] Tools:")
14print(json.dumps(tools))
15
16def invoke_llm(task = "What can you do?"):
17 completion = openai.chat.completions.create(
18 model="gpt-4o",
19 messages=[
20 {
21 "role": "user",
22 "content": task, # Your task here!
23 },
24 ],
25 tools=tools,
26 )
27
28 # Handle Result from tool call
29 result = composio.provider.handle_tool_calls(user_id=user_id, response=completion)
30 print(f"[!] Completion: {completion}")
31 print(f"[!] Tool call result: {result}")
32
33invoke_llm()

Tool List

Tool Name: Create Access List Item

Description

Tool to add one or more access codes to an access list. Use after obtaining a valid access_list_id to grant exam access.

Action Parameters

access_list_id
integerRequired
codes
arrayRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create a new question category

Description

Tool to create a new question category. Use after confirming the parent category ID.

Action Parameters

category_name
stringRequired
parent_category_id
integerRequired
verify_only
boolean

Action Response

data
objectRequired
error
string
request_path
stringRequired
server_timestamp
integerRequired
status
stringRequired
successful
booleanRequired

Tool Name: Create Group

Description

Tool to create a new group. Use when you need to organize users into a specific group after planning your user structure.

Action Parameters

description
string
name
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create Question

Description

Tool to create a new question with specified text, type, and category. Use after finalizing details. Set verify_only=True to validate without creating.

Action Parameters

category_id
integerRequired
correct_feedback
string
correct_options
array
grade_style
string
incorrect_feedback
string
options
object
points
integerRequired
question
stringRequired
question_type
stringRequired
random_answers
booleanRequired
verify_only
boolean

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create ClassMarker User

Description

Tool to create a new user in ClassMarker. Use after gathering user details to provision accounts. Provide user info and optional group assignments. Returns the complete API response.

Action Parameters

email
stringRequired
first_name
stringRequired
group_ids
array
is_admin
boolean
last_name
stringRequired
password
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Access List Item

Description

Tool to delete one or more codes from an access list. Use after confirming the list exists.

Action Parameters

access_list_id
integerRequired
codes
arrayRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete API Key

Description

Tool to delete an API key by its ID. Use when you need to revoke an API key immediately.

Action Parameters

api_key_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Group

Description

Tool to delete a group by its ID. Use when you need to remove a group from ClassMarker.

Action Parameters

group_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete User

Description

Tool to delete a specific user by ID. Use when you need to remove a user from ClassMarker after verifying the user's identity.

Action Parameters

user_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Webhook

Description

Tool to delete a specific webhook listener. Use after confirming the webhook_id for removal.

Action Parameters

webhook_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Group Details

Description

Tool to retrieve detailed information about a specific group. Use after obtaining the group ID to inspect its properties.

Action Parameters

group_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Initial Finished After Timestamp

Description

Tool to compute the initial finishedAfter timestamp. Use when performing initial pagination of recent results. Defaults to two weeks ago.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Question

Description

Tool to retrieve a specific question by its ID. Use when you need detailed information of a question after confirming the question_id.

Action Parameters

question_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Recent Results For Group Exam

Description

Tool to fetch recent test results for a specific group and exam. Use after determining a UNIX timestamp to retrieve only results finished after that time for the group and exam.

Action Parameters

finishedAfterTimestamp
integerRequired
group_id
integerRequired
limit
integer
test_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Test Details

Description

Tool to retrieve detailed information for a specific test. Use when you need test metadata and its assigned contexts by ID.

Action Parameters

test_id
integerRequired

Action Response

data
object
error
string
request_path
stringRequired
server_timestamp
integerRequired
status
stringRequired
successful
booleanRequired

Tool Name: Get User Details

Description

Tool to retrieve detailed information about a specific user. Use after you have the user's ID and need the full user profile.

Action Parameters

user_id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Assignments

Description

Tool to list all assignments. Use when you need every test assignment grouped by group and link.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Question Categories

Description

Tool to retrieve all question categories. Use when you need to display or process category hierarchy.

Action Parameters

Action Response

data
objectRequired
error
string
request_path
stringRequired
server_timestamp
integerRequired
status
stringRequired
successful
booleanRequired

Tool Name: List Certificates

Description

Tool to list all certificates. Use when you need to retrieve all certificates available in the account.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Groups

Description

Tool to list all groups in your ClassMarker account. Use when you need to view group details and associated tests.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Questions

Description

Tool to list all questions. Use when you need to fetch or enumerate your account's question bank.

Action Parameters

page
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Recent Results For Groups

Description

Tool to retrieve recent exam results for all groups. Use after determining the timestamp when you need to fetch results finished after a specific UNIX time (<3 months old).

Action Parameters

finishedAfterTimestamp
integerRequired
limit
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Tests

Description

Tool to list all available tests. Use when you need an overview of every test before assignment or reporting.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Users

Description

Tool to list all users. Use when you need to retrieve every user in your account after confirming authentication.

Action Parameters

Action Response

data
objectRequired
error
string
request_path
stringRequired
server_timestamp
integerRequired
status
stringRequired
successful
booleanRequired

Tool Name: List Webhooks

Description

Tool to retrieve all configured webhooks. Use when you need to programmatically list your webhook configurations.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Update Sub-Category

Description

Tool to update an existing sub-category. Use when you need to rename or move a sub-category after confirming its IDs.

Action Parameters

category_id
integerRequired
category_name
stringRequired
parent_category_id
integerRequired
path_parent_category_id
integerRequired
verify_only
boolean

Action Response

data
objectRequired
error
string
request_path
stringRequired
server_timestamp
integerRequired
status
stringRequired
successful
booleanRequired

Tool Name: Update an existing parent category

Description

Tool to update an existing parent category. Use after confirming the parent category ID.

Action Parameters

parent_category_id
integerRequired
parent_category_name
stringRequired
verify_only
boolean

Action Response

data
objectRequired
error
string
request_path
stringRequired
server_timestamp
integerRequired
status
stringRequired
successful
booleanRequired

Tool Name: Update Question

Description

Tool to update an existing question in the question bank. Use after confirming the question ID and payload details. Set verify_only=True to validate without applying updates.

Action Parameters

category_id
integerRequired
correct_feedback
string
correct_options
array
grade_style
string
incorrect_feedback
string
options
object
points
integerRequired
question
stringRequired
question_id
integerRequired
question_type
stringRequired
random_answers
booleanRequired
verify_only
boolean

Action Response

data
objectRequired
error
string
successful
booleanRequired