An open API service indexing awesome lists of open source software.

https://github.com/skyguy126/schoolloop_client

Pulls data from a School Loop portal
https://github.com/skyguy126/schoolloop_client

Last synced: 8 months ago
JSON representation

Pulls data from a School Loop portal

Awesome Lists containing this project

README

          

# School Loop Client

***Pulls data from a School Loop portal***

#### Features
Simple login and logout methods and easy to use data.

```java
public static void main(String[] args) {
// Create a new client instance with your school's domain
SClient client = new SClient("yourschool.schoolloop.com");

// Log in
boolean loginSuccess = client.login("username", "password");

// Get the session cookie
String session = client.getCookie();

// Set a previous session cookie and check if it is still valid
client.setCookie(session);
boolean isSessionValid = client.isCookieValid();

// Load the portal
boolean loadSuccess = client.loadPortal();

// Parse the academic data from the portal
client.parseAcademics();

// Get the parsed academic data
ArrayList academicData = client.getAcademicData();

String className = academicData.get(0).getName();
String gradePercent = academicData.get(0).getGradePercent();

// Invalidate the current session
client.logout();
}
```

View `SClientTester.java` for a more complete example.

**Current Feature Set (WIP)**

##### Academics
- Period
- Course Name
- Teacher
- Is Published
- Grade Letter
- Grade Percent
- Number of Zeros
- Progress Report
- Weight Scale

##### Calendar
- Day
- Date
- Assignments

--------

#### Dependencies
[Jsoup](https://jsoup.org/), [OKHttp](http://square.github.io/okhttp/), [Okio](https://github.com/square/okio), [Apache HttpComponents](http://hc.apache.org/httpcomponents-client-ga/)