PHPackages                             andreas\_galistel/ss12000client - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. andreas\_galistel/ss12000client

ActiveLibrary[API Development](/categories/api)

andreas\_galistel/ss12000client
===============================

A PHP client library for the SS12000 API, providing structured and asynchronous interaction with all API endpoints.

v0.2.0(10mo ago)00MITPHPPHP &gt;=7.4

Since Jul 27Pushed 10mo agoCompare

[ Source](https://github.com/Delph1/php-composer-SS12000client)[ Packagist](https://packagist.org/packages/andreas_galistel/ss12000client)[ Docs](https://github.com/Delph1/php-composer-SS12000client)[ RSS](/packages/andreas-galistel-ss12000client/feed)WikiDiscussions main Synced today

READMEChangelog (2)Dependencies (1)Versions (3)Used By (0)

**SS12000 PHP Client Library**
==============================

[](#ss12000-php-client-library)

This is a PHP client library designed to simplify interaction with the SS12000 API, a standard for information exchange between school administration processes based on OpenAPI 3.x. The library leverages GuzzleHttp for robust HTTP communication, providing a structured and object-oriented approach to interact with **all** the API's defined endpoints.

You can download your own personal copy of the SS12000 standard for free from here: [sis.se](https://www.sis.se/standarder/kpenstandard/forkopta-standarder/informationshantering-inom-utbildningssektorn/).

### **Important**

[](#important)

The SS12000 does not require the server to support all of the endpoints. You need to actually look at the server documentation to see which endpoints that are actually available with each service. Adding some sort of discovery service is beyond the scope of this small library in my humble opinion.

All dates are in the RFC 3339 format, we're not cavemen here.

**Table of Contents**
---------------------

[](#table-of-contents)

- [**SS12000 PHP Client Library**](#ss12000-php-client-library)
    - [**Important**](#important)
    - [**Table of Contents**](#table-of-contents)
    - [**Installation**](#installation)
    - [**Usage**](#usage)
        - [**Initializing the Client**](#initializing-the-client)
        - [**Fetching Data with Query Parameters (Filtering, Pagination, Sorting)**](#fetching-data-with-query-parameters-filtering-pagination-sorting)
        - [**Sample code based on appendix C in the SS12000 standard**](#sample-code-based-on-appendix-c-in-the-ss12000-standard)
            - [**Fetching basic person data at an organizations (C1)**](#fetching-basic-person-data-at-an-organizations-c1)
            - [**Fetching information related to a person (C2)**](#fetching-information-related-to-a-person-c2)
            - [**Service management data (C3)**](#service-management-data-c3)
            - [**Teacher relations (C4)**](#teacher-relations-c4)
        - [**Webhooks (Subscriptions)**](#webhooks-subscriptions)
    - [**API Reference**](#api-reference)
    - [**Webhook Receiver (PHP Example)**](#webhook-receiver-php-example)
    - [**Contribute**](#contribute)
    - [**License**](#license)

**Installation**
----------------

[](#installation)

This library is designed to be installed via Composer.

1. **Ensure Composer is Installed:** If you don't have Composer, download and install it from [getcomposer.org](https://getcomposer.org/download/).
2. **Create composer.json:** In the root of your PHP project, create a composer.json file with the following content (if you haven't already):

```
   {
    "require": {
        "php": ">=7.4",
        "guzzlehttp/guzzle": "^7.0",
        "andreas_galistel/ss12000client": "^0.2"
    }
}

```

3. **Install Dependencies:** Run Composer to install the library and its dependencies (Guzzle).

```
composer install

```

**Usage**
---------

[](#usage)

### **Initializing the Client**

[](#initializing-the-client)

To start using the client, include Composer's autoloader and create an instance of SS12000\\Client\\SS12000Client.

```
