/elternportal-api

unofficial APIs for connecting to elternportal/ infoportal by art soft and more GmbH

Primary LanguageTypeScript

ElternPortal API Client ๐Ÿ“š

This library provides an easy-to-use interface for interacting with the ElternPortal system, a platform for school-parent communication in Germany.

Features ๐ŸŒŸ

  • Authentication: Securely log in to the ElternPortal system
  • Kid Management: Set and retrieve information about children linked to the account
  • School Information: Fetch various details about the school
  • Announcements: Get updates from the school's bulletin board (Schwarzes Brett)
  • Calendar: Retrieve school events and schedules
  • Parent Letters: Access and download parent letters (Elternbriefe)
  • Lost and Found: View items in the lost and found section

Installation ๐Ÿ’ป

pnpm i @philippdormann/elternportal-api

Usage ๐Ÿš€

Initializing the Client

import { getElternportalClient } from "@philippdormann/elternportal-api";

const client = await getElternportalClient({
  short: "schoolcode",
  username: "your_username",
  password: "your_password",
  kidId: 0, // Optional
});

Available Methods

Get Kids ๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ

const kids = await client.getKids();

Get School Information ๐Ÿซ

const schoolInfo = await client.getSchoolInfos();

Get Bulletin Board (Schwarzes Brett) ๐Ÿ“Œ

const posts = await client.getSchwarzesBrett(includeArchived);

Get School Calendar (Termine) ๐Ÿ“…

const events = await client.getTermine(fromDate, toDate);

Get Timetable ๐Ÿ•’

const timetable = await client.getStundenplan();

Get Lost and Found Items ๐Ÿงฆ

const lostItems = await client.getFundsachen();

Get Parent Letters ๐Ÿ“ฌ

const letters = await client.getElternbriefe();

Download Files ๐Ÿ“

const bulletinFile = await client.getSchwarzesBrettFile(fileId);
const letterFile = await client.getElternbrief(letterId);

Types ๐Ÿ“

The library includes TypeScript definitions for various data structures:

  • SchoolInfo
  • Termin (Calendar Event)
  • Elternbrief (Parent Letter)
  • SchwarzesBrettBox (Bulletin Board Item)
  • ElternportalFile