Who Is This For?
VClasses serves two primary audiences, each with a distinct role in the platform: Administrators and Instructors use the API to create and publish PDF assignments, monitor student submissions, review answers, and record grades with written feedback. If you are building a back-office dashboard, an LMS integration, or an automated grading pipeline, the admin endpoints are your primary surface. Students interact with the platform to download assignment PDFs, upload their completed work, and check the status of grades and feedback. Student-facing endpoints are designed to be lightweight and focused on the submission lifecycle. Throughout this documentation, examples and endpoint descriptions will indicate which role each operation targets so you can quickly find what applies to your use case.What VClasses Offers
PDF Homework
Create, publish, and manage homework assignments delivered as PDF files. Students download the PDF, complete their work, and submit responses — all tracked through the API.
PDF Quizzes
Run timed or untimed PDF-based quizzes with a dedicated submission pipeline. Quiz results feed directly into the grading workflow so instructors can review and score answers in one place.
Grading & Feedback
Assign numerical ratings and written comments to individual submissions. The grading API supports partial updates, so you can score and annotate submissions incrementally as you review them.
Submissions Management
Track every student submission across homework and quizzes — filter by class, student, status, or date. Paginated list endpoints make it easy to build review queues and reporting dashboards.
How It Works
The VClasses workflow follows a straightforward three-step cycle for every assignment, whether it is a homework task or a quiz.1
Create a class with a PDF assignment
An admin or instructor creates a class and attaches a PDF file as the assignment. The API returns a unique assignment ID that students and downstream systems use to reference that piece of work. You can set metadata such as due dates, maximum scores, and visibility flags at creation time.
2
Students submit their answers
Students retrieve the assignment PDF, complete their responses, and POST their submission back to the API. The platform records the submission timestamp, links it to the student’s account, and marks the assignment as pending review. Students can check their submission status at any time through the student-facing endpoints.
3
Admin reviews and grades
An administrator or instructor retrieves the list of pending submissions, reviews each one, and calls the grading endpoint to record a numerical rating and optional written feedback. The student’s record is updated immediately, and the grade becomes visible to the student through their status endpoint.
API Basics
All VClasses API endpoints share a common set of conventions that apply to every request you make. Base path — Every endpoint lives under/api/v3/. For example, the homework list endpoint is available at https://app.example.com/api/v3/admin/homeworks. There are no versioned sub-paths beyond v3; the version is embedded in the base path itself.
Authentication — All endpoints require a valid Bearer token passed in the Authorization header. You obtain your token through the authentication flow described in the Authentication guide. Tokens are scoped to a role (admin or student), so make sure you are using the correct token for the endpoints you are calling.
Content negotiation — You must include the header Accept: application/json on every request. The platform serves both an HTML web application and a JSON API from the same domain. Without this header, certain error conditions and redirects will return an HTML page instead of a machine-readable JSON error body, which will break any parsing logic in your integration.
Pagination — List endpoints return a standard pagination envelope with data, current_page, last_page, per_page, and total fields. Pass the page query parameter to navigate through result sets.
HTTP methods — The API follows REST conventions: GET for reads, POST for creates and actions (including grading), PUT/PATCH for updates, and DELETE for removal.
All endpoints require a valid Bearer token. Include
Authorization: Bearer <your-token> on every request. You must also set Accept: application/json on every request — without it, the platform may return an HTML redirect instead of a JSON error response, making it difficult to diagnose problems in your integration.
