Skip to main content

Clever

Clever is a comprehensive education technology platform that provides secure single sign-on access to educational applications, enabling schools and districts to manage student data, streamline digital learning, and ensure seamless integration between educational tools.

Clever icon

Power end-to-end data operations for your Clever API with Nexla. Our bi-directional Clever connector is purpose-built for Clever, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to Clever or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Clever workflows fast, secure, and fully governed.

Features

Type: API

SourceDestination

  • Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
  • Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
  • API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
  • Request optimization with intelligent batching, retry, and caching to minimize API calls and costs

Prerequisites

Before creating a Clever credential, you need to obtain a District App Token from your Clever account. The District App Token is required to authenticate with the Clever API v3.0.

To obtain your District App Token, you need to have a Clever account with a district that has authorized your application. Once a district authorizes your application, you can generate a District App Token. The token is generated when a district authorizes your application, and you can copy it from the district's Overview page in the Clever UI. The District App Token is sent in the Authorization: Bearer {token} header to authenticate all API requests to the Clever API v3.0. For detailed information about token setup and authentication, refer to the Clever API documentation.

Authenticate

Credentials required

FieldRequiredSecretDescription
District App TokenYesYesEnter the token generated when a district authorizes your application. Click on a district in the Clever UI to copy the token in the district's Overview.

Create a credential in Nexla

  1. After selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.

New Credential Overlay – Clever

CleverCred.png
  1. Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.

  2. Enter your Clever District App Token in the District App Token field. This is the token generated when a district authorizes your application. You can copy the token from the district's Overview page in the Clever UI by clicking on a district. The District App Token is sent in the Authorization: Bearer {token} header to authenticate all API requests to the Clever API v3.0.

    Keep your District App Token secure and do not share it publicly. The token provides access to your Clever district data and should be treated as sensitive information. The District App Token is sent in the Authorization: Bearer {token} header for all API requests to the Clever API v3.0. To obtain a token, a district must authorize your application first. For detailed information about obtaining and managing tokens, see the Clever API documentation.

  3. Click the Save button at the bottom of the overlay. The newly added credential will now appear in a tile on the Authenticate screen during data source/destination creation.

Use as a data source

To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the Clever connector tile, then select the credential that will be used to connect to the Clever instance, and click Next; or, create a new Clever credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common Clever endpoints. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below.

Fetch Schools

This endpoint retrieves all schools in the district. Use this endpoint when you need to access school information, school settings, or school metadata for your Clever district.

  • This endpoint automatically retrieves all schools from your Clever district. No additional configuration is required beyond selecting this endpoint template.
  • The endpoint uses GET requests to https://api.clever.com/v3.0/schools?limit=10000. The endpoint URL is automatically constructed based on the Clever API base URL.
  • The endpoint uses token-based pagination, automatically fetching additional pages as needed using the starting_after query parameter. When a response includes data items, Nexla automatically uses the ID of the last item as the starting_after parameter in the subsequent request to fetch the next page of results.
  • The endpoint will return all schools in your district. The response data is extracted from the data array in the API response ($.data[*]), with each school record processed individually.

This endpoint supports pagination through the starting_after token mechanism. When a response includes data items, Nexla automatically uses the ID of the last item from the data array as the starting_after parameter in the subsequent request to fetch the next page of results. The endpoint uses token-based pagination (iteration.type: paging.next.token) through the starting_after mechanism. The response data path is $.data[*], which extracts all items from the data array in the API response. The endpoint limits results to 10,000 items per request. For detailed information about retrieving schools, see the Clever API documentation.

Fetch Users

This endpoint retrieves a list of contact, district admin, staff, student, and/or teacher users. Use this endpoint when you need to access user information, user roles, or user metadata for your Clever district.

  • This endpoint automatically retrieves all users from your Clever district. No additional configuration is required beyond selecting this endpoint template.
  • The endpoint uses GET requests to https://api.clever.com/v3.0/users?limit=10000. The endpoint URL is automatically constructed based on the Clever API base URL.
  • The endpoint uses token-based pagination, automatically fetching additional pages as needed using the starting_after query parameter. When a response includes data items, Nexla automatically uses the ID of the last item as the starting_after parameter in the subsequent request to fetch the next page of results.
  • The endpoint will return all users in your district. The response data is extracted from the data array in the API response ($.data[*]), with each user record processed individually.

This endpoint supports pagination through the starting_after token mechanism. When a response includes data items, Nexla automatically uses the ID of the last item from the data array as the starting_after parameter in the subsequent request to fetch the next page of results. The endpoint uses token-based pagination (iteration.type: paging.next.token) through the starting_after mechanism. The response data path is $.data[*], which extracts all items from the data array in the API response. The endpoint limits results to 10,000 items per request. For detailed information about retrieving users, see the Clever API documentation.

Fetch Sections

This endpoint retrieves a list of all sections. Use this endpoint when you need to access section information, class sections, or section metadata for your Clever district.

  • This endpoint automatically retrieves all sections from your Clever district. No additional configuration is required beyond selecting this endpoint template.
  • The endpoint uses GET requests to https://api.clever.com/v3.0/sections?limit=10000. The endpoint URL is automatically constructed based on the Clever API base URL.
  • The endpoint uses token-based pagination, automatically fetching additional pages as needed using the starting_after query parameter. When a response includes data items, Nexla automatically uses the ID of the last item as the starting_after parameter in the subsequent request to fetch the next page of results.
  • The endpoint will return all sections in your district. The response data is extracted from the data array in the API response ($.data[*]), with each section record processed individually.

This endpoint supports pagination through the starting_after token mechanism. When a response includes data items, Nexla automatically uses the ID of the last item from the data array as the starting_after parameter in the subsequent request to fetch the next page of results. The endpoint uses token-based pagination (iteration.type: paging.next.token) through the starting_after mechanism. The response data path is $.data[*], which extracts all items from the data array in the API response. The endpoint limits results to 10,000 items per request. For detailed information about retrieving sections, see the Clever API documentation.

Fetch Districts

This endpoint retrieves a list of districts. Use this endpoint when you need to access district information, district settings, or district metadata.

  • This endpoint automatically retrieves all districts. No additional configuration is required beyond selecting this endpoint template.
  • The endpoint uses GET requests to https://api.clever.com/v3.0/districts?limit=10000. The endpoint URL is automatically constructed based on the Clever API base URL.
  • The endpoint uses token-based pagination, automatically fetching additional pages as needed using the starting_after query parameter. When a response includes data items, Nexla automatically uses the ID of the last item as the starting_after parameter in the subsequent request to fetch the next page of results.
  • The endpoint will return all districts. The response data is extracted from the data array in the API response ($.data[*]), with each district record processed individually.

This endpoint supports pagination through the starting_after token mechanism. When a response includes data items, Nexla automatically uses the ID of the last item from the data array as the starting_after parameter in the subsequent request to fetch the next page of results. The endpoint uses token-based pagination (iteration.type: paging.next.token) through the starting_after mechanism. The response data path is $.data[*], which extracts all items from the data array in the API response. The endpoint limits results to 10,000 items per request. For detailed information about retrieving districts, see the Clever API documentation.

Fetch Tokens

This endpoint retrieves API tokens for the authenticated user. Use this endpoint when you need to access token information or manage API tokens.

  • This endpoint automatically retrieves API tokens for the authenticated user. No additional configuration is required beyond selecting this endpoint template.
  • The endpoint uses GET requests to https://clever.com/oauth/tokens. The endpoint URL is automatically constructed based on the Clever OAuth base URL.
  • The endpoint does not use pagination and returns the complete token information in a single request.
  • The endpoint will return API tokens for the authenticated user. The response data is extracted from the root-level object in the API response ($), and Nexla will process the entire response structure.

The endpoint uses a static URL (iteration.type: static.url) and does not require pagination. The response data path is $, which extracts the entire root-level object from the API response. For detailed information about retrieving tokens, see the Clever API documentation.

Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.

Manual configuration

Clever data sources can also be manually configured to ingest data from any valid Clever API v3.0 endpoint, including endpoints not covered by the pre-built templates, chained API calls, or custom request parameters. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, date/time and lookup macros, path to data, metadata, and request headers.

Clever API endpoints typically follow the pattern https://api.clever.com/v3.0/{endpoint_path}, and Bearer token authentication in the Authorization header is handled automatically by your credential configuration. Clever API responses typically use a data array to contain the data for list endpoints (path $.data[*]), or a root-level object for single-resource endpoints (path $). For detailed information about available Clever API endpoints, see the Clever API documentation.

Once all of the relevant settings have been configured, click the Create button in the upper right corner of the screen to save and create the new Clever data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.