Xporter API Documentation
website·Indexed 32 days ago
https://docs.xporter.comA suite of APIs for school data integration and communication, featuring SCIM 2.0 for identity management, OneRoster support for educational data, and a Communications API for multi-channel messaging and push notifications. Includes tools for school-scoped authentication, bearer token management, and identity provisioning.
What's inside Xporter
- Xporter Identity provides identity-management endpoints designed for school and management integrations. It allows developers to provision and maintain user access within an authenticated establishment. Key capabilities include retrieving user data, creating logins or manual users, resetting passwords, and generating or assigning QR codes for sign-in workflows.
Overview of VenturEd Solutions Communications API capabilities
The VenturEd Solutions Communications API allows developers to send multi-channel messages to students, parents, and staff. Key capabilities include:
- Multi-Channel Messaging: Support for Push notifications (Eduspot app), rich Timeline content (Eduspot app), SMS with delivery tracking/callbacks, and personalized HTML emails.
- Smart Routing: Automatic delivery optimization based on recipient preferences.
- Education Integration: Integration with school management systems, compliance with education data protection, and message history tracking within Groupcall and Teachers2Parents platforms.
- Billing: Ability to pass message charges to specific schools for messages sent on their behalf.
- Developer Tools: RESTful API design, a sandbox environment for testing, and real-time delivery status updates via webhooks.
Understand Xporter on Demand data caching and TTLs
Xporter on Demand uses a caching layer between the MIS and API endpoints to improve performance. Data is stored in encrypted databases with specific Time To Live (TTL) values. Most databases are refreshed automatically every night around 03:00 UTC. For endpoints requiring specific parameters (like dates), data is fetched in real-time unless a cached request with the same parameters already exists, in which case expired data is returned immediately while fresh data is fetched in the background.Database Name TTL (Minutes) Refresh Mode XodSchoolData 1440 Auto (Overnight) XodAttendanceSummary 1440 Auto (Overnight) XodAssessmentTables 1440 Auto (Overnight) XodAttendanceForDate (Today) 30 Auto (Overnight/On Request) XodConductForToday 30 Auto (Overnight/On Request) XodConductPoints 30 Auto (Overnight/On Request) XodConductForDateRange 720 On Request XodAssessmentResults 30 On Request XodEndpointInfo 5 On Request Xporter OneRoster API Overview
Xporter provides a compliant IMS Global OneRoster v1.1 API for third-party systems to retrieve rostering data, including organisations, users, classes, enrolments, and academic sessions from connected schools.Base URL: https://xporter.groupcall.com/ims/oneroster/v1p1Xporter OneRoster v1.1 API Overview
Xporter provides a school-scoped IMS OneRoster v1.1 API for partners to retrieve rostering data for specific schools. The API base URL ishttps://xporter.groupcall.com/ims/oneroster/v1p1/.https://xporter.groupcall.com/ims/oneroster/v1p1/Xporter SCIM 2.0 API Overview
Xporter provides a school-scoped SCIM 2.0 API to provision users and groups from school MIS data. The API operates in pull mode only, meaning it acts as the source of truth. Identity Providers (IdPs) read data from Xporter; write-back operations (POST,PUT,PATCH,DELETEon/Usersor/Groups) are not supported and will return a405 Method Not Allowedstatus. When configuring connectors like Microsoft Entra ID or Okta, use import-only mode.Understand the Xporter API authentication security model
Xporter API uses a per-school authentication model to ensure high security and data segregation. Instead of a single global API key, the system generates a uniqueschoolSecretevery time a school authorizes an application. This secret is sent via aPOSTrequest to the application's definedauthorisationURL. To access the API, the application must use theschoolSecretto generate a time-limitedtoken. This architecture prevents a single compromised key from exposing multiple schools and ensures that an authenticated session can only return data for the specific school associated with that token.Understand Xporter API Token types
Xporter provides two distinct types of tokens to control authorization and data access:
- Management Tokens: Used to access Management and Automation APIs. These do not provide access to school-level data.
- School Tokens: Used to access School Data APIs. These are unique to each school that authorizes your application.
Implement Embedded Elements in Eduspot app messages
Embedded Elements are components included in message content that render as interactive elements in the Eduspot app timeline. They follow a specific XML-like format where the element type is defined and the configuration is provided as a Base64 encoded JSON string.<x-TYPE data="PAYLOAD" />TYPE: The action or service the element represents.PAYLOAD: A Base64 encoded JSON string containing configuration instructions.
Xporter SCIM API Integration Checklist
Follow these guidelines for a successful integration:
- Credentials: Use the relying party identifier (
rp), establishment identifier (estab), and shared secret. - Token Management: Cache the
access_tokenand reuse it until theexpires_induration has passed. If a401is received, re-authenticate and retry once. - Pagination: Use
startIndexandcountfor large result sets. - Efficiency: Use
filter=meta.lastModified gt "<timestamp>"for delta syncs after the initial load. - Deletions: Treat users with
active: falseas candidates for deletion. - Relationships: Group member
valuefields correspond directly to Useridfields.
- Credentials: Use the relying party identifier (
Register an application for Xporter API access
To use the Xporter API, you must register your application to obtain access credentials. The registration process involves three main steps:
- Submit Registration: Provide your application details via the registration form.
- Email Verification: Verify your contact information through the email sent to you.
- Xporter Management: Once verified, your email provides access to Xporter Manage, where you can configure your application and use the API sandbox.
Required Information for Registration:
- Application Name: A descriptive name for your app.
- Host Name: The domain or hostname used to uniquely identify your application.
- Contact Details: A valid email address and mobile number.
Authenticate Xporter REST API requests using a bearer token
The Xporter REST API uses a custom bearer-styleAuthorizationheader for token authorization. The token must be prefixed withIdaas.Authorization: Idaas {STSToken}