Input-API

Mittels unserer Input-API können Sie Datensätze direkt in Freinet eintragen.
Folgende Module werden hierbei derzeit unterstützt:

  • Modul Einrichtung
  • Modul Angebot
  • Modul Freiwillige

Weitere Möglichkeiten

  • API für Empfehlungen / Vermittlungen
    (um Freiwillige und Angebote zu verbinden)

Sofern Sie Fragen zu einem Einsatz-Szenario haben, können Sie uns gerne kontaktieren.

 

Endpoints

Der Endpoint für das erstellen von Einrichtungen lautet

POST https://freinet-online.de/api/input/v3/einrichtung

Der Endpoint für das erstellen von Angeboten lautet

POST https://freinet-online.de/api/input/v3/angebot

Der Endpoint für das erstellen von Personen lautet

POST https://freinet-online.de/api/input/v3/personen

Der Endpoint für das erstellen von Vermittlungen lautet

POST https://freinet-online.de/api/input/v3/vermittlung
 

Responses

Responses

Antworten der API erfolgen als JSON Objekt
Success
{
    "STATUS": "OK",
    "NEW_EINRICHTUNGID": "{einrichtung_id}" // Bei Einrichtungen
    "NEW_ANGEBOTID": "{angebot_id}" // Bei Angeboten
    "NEW_USERID": "{user_id}" // Bei Freiwilligen
    "NEW_VERMITTLUNGID": "{vermittlung_id}" // Bei Vermittlungen Angebote/Freiwillige
}
        
Error
{
    "error": {
        "code": 417,
        "message": "Expectation Failed: TargetAgid missing"
    }
}
        
 

Beispiele

Einrichtung

Insert einer Einrichtung

/********************************
* $input_array eines UserInputs
* z.B.
*
* SetupInfos
* $input_array['init']['agencyID']='52'; // AgenturID
* $input_array['init']['accessKey']='xxxxxxxxx'; // AccessKey
* Infos zum User
* $input_array['einrichtung']['name']='Musteragentur';
* AdressDaten
* $input_array['einrichtung']['address'][1]['vorname']='Jan';
* $input_array['einrichtung']['address'][1]['nachname']='Rademacher';
* $input_array['einrichtung']['address'][1]['adress_strasse']='Am Musterweg';
* $input_array['einrichtung']['address'][1]['adress_plz']='26135';
* $input_array['einrichtung']['address'][1]['adress_ort']='Oldenburg';
* $input_array['einrichtung']['address'][1]['adress_tel_d']='123'; // Tel Dienstlich
* $input_array['einrichtung']['address'][1]['adress_tel_p']='123'; // Tel Privat
* $input_array['einrichtung']['address'][1]['adress_mobil']='123'; // Mobil
* $input_array['einrichtung']['address'][1]['adress_fax']='123'; // Fax
* Sonstige Infos
* $input_array['einrichtung']['unsupported'][]='Informationen, Informationen, für die es bei Freinet keine ›Entsprechung‹ gibt. (Die Informationen werden gesondert angezeigt)';
* Protokoll
* $input_array['protokoll'][1][title]='Mein Protokoll';
* $input_array['protokoll'][1]['content']='Mein Protokollinhalt';
* $input_array[''protokoll''][1][date]='2020-12-29';
*/
$input_array['init']['apiVersion']='1.0';
$input_array['init']['agencyID']='52';
$input_array['init']['accessKey']='xxxxxxxxx';
$input_array['init']['modul']='einrichtung'; // TargetModul freiwillige|einrichtung|angebot|kontakte

$input_array['init']['author']='Muster e.V.'; // Kontaktperson der API
$input_array['init']['author_mail']='mail@muster_e_V.de'; // E-Mail Adresse der API Kontaktperson

$input_array['entity']['anrede']='Herr'; // (mixed) Herr|Frau|1|2  (1=Herr, 2=Frau, 4=Divers)
$input_array['entity']['titel']='Dr.'; // Prof. Dr.
$input_array['entity']['vorname']='Markus';
$input_array['entity']['nachname']='Muster';


/*********************************
* Versand via cURL
*/
$url='https://freinet-online.de/api/input/v3/einrichtung';

$ch=curl_init($url);

# Setup request to send json via POST.
$payload=json_encode($input_array,JSON_PRETTY_PRINT);

curl_setopt($ch,CURLOPT_POSTFIELDS,$payload);
curl_setopt($ch,CURLOPT_HTTPHEADER,array('Content-Type:application/json'));
# Return response instead of printing.
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
# Send request.
$result=curl_exec($ch);
curl_close($ch);
		

Angebot

Insert einer Einrichtung mit Angebot

/********************************
* $input_array eines UserInputs
* z.B.
*
* SetupInfos
* $input_array['init']['agencyID']='52'; // AgenturID
* $input_array['init']['accessKey']='xxxxxxxxx'; // AccessKey
* Infos zur Einrichtung
* $input_array['einrichtung']['name']='Musteragentur';
* AdressDaten
* $input_array['einrichtung']['address'][1]['vorname']='Jan';
* $input_array['einrichtung']['address'][1]['nachname']='Rademacher';
* $input_array['einrichtung']['address'][1]['adress_strasse']='Am Musterweg';
* $input_array['einrichtung']['address'][1]['adress_plz']='26135';
* $input_array['einrichtung']['address'][1]['adress_ort']='Oldenburg';
* $input_array['einrichtung']['address'][1]['adress_tel_d']='123'; // Tel Dienstlich
* $input_array['einrichtung']['address'][1]['adress_tel_p']='123'; // Tel Privat
* $input_array['einrichtung']['address'][1]['adress_mobil']='123'; // Mobil
* $input_array['einrichtung']['address'][1]['adress_fax']='123'; // Fax
* Infos zum Angebot
* $input_array['angebot']['angebot_titel']='Vorlesen für Kinder im Vorschulalter';
* AdressDaten
* $input_array['angebot']['address'][1]['vorname']='Jan';
* $input_array['angebot']['address'][1]['nachname']='Rademacher';
* $input_array['angebot']['address'][1]['adress_strasse']='Am Musterweg';
* $input_array['angebot']['address'][1]['adress_plz']='26135';
* $input_array['angebot']['address'][1]['adress_ort']='Oldenburg';
* Sonstige Infos
* $input_array['angebot']['unsupported'][]='Informationen, Informationen, für die es bei Freinet keine ›Entsprechung‹ gibt. (Die Informationen werden gesondert angezeigt)';
* Protokoll
* $input_array['protokoll'][1]['title']='Mein Protokoll';
* $input_array['protokoll'][1]['content']='Mein Protokollinhalt';
* $input_array['protokoll'][1]['date']='2020-12-29';
*/
$input_array['init']['apiVersion']='1.0';
$input_array['init']['agencyID']='52';
$input_array['init']['accessKey']='xxxxxxxxx';
$input_array['init']['modul']='einrichtung'; // TargetModul freiwillige|einrichtung|angebot|kontakte

$input_array['init']['author']='Muster e.V.'; // Kontaktperson der API
$input_array['init']['author_mail']='mail@muster_e_V.de'; // E-Mail Adresse der API Kontaktperson

$input_array['entity']['anrede']='Herr'; // (mixed) Herr|Frau|1|2  (1=Herr, 2=Frau, 4=Divers)
$input_array['entity']['titel']='Dr.'; // Prof. Dr.
$input_array['entity']['vorname']='Markus';
$input_array['entity']['nachname']='Muster';


/*********************************
* Versand via cURL
*/
$url='https://freinet-online.de/api/input/v3/angebot';

$ch=curl_init($url);

# Setup request to send json via POST.
$payload=json_encode($input_array,JSON_PRETTY_PRINT);

curl_setopt($ch,CURLOPT_POSTFIELDS,$payload);
curl_setopt($ch,CURLOPT_HTTPHEADER,array('Content-Type:application/json'));
# Return response instead of printing.
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
# Send request.
$result=curl_exec($ch);
curl_close($ch);
		

Freiwillige

Insert eines Freiwilligen

/********************************
* $input_array eines UserInputs
* z.B.
*
* SetupInfos
* $input_array['init']['agencyID']='52'; // AgenturID
* $input_array['init']['accessKey']='xxxxxxxxx'; // AccessKey
* Infos zum User
* $input_array['entity']['vorname']='Jan';
* $input_array['entity']['nachname']='Rademacher';
* AdressDaten
* $input_array['entity']['address'][1]['adress_strasse']='Am Musterweg';
* $input_array['entity']['address'][1]['adress_plz']='26135';
* $input_array['entity']['address'][1]['adress_ort']='Oldenburg';
* $input_array['entity']['address'][1]['adress_tel_d']='123'; // Tel Dienstlich
* $input_array['entity']['address'][1]['adress_tel_p']='123'; // Tel Privat
* $input_array['entity']['address'][1]['adress_mobil']='123'; // Mobil
* $input_array['entity']['address'][1]['adress_fax']='123'; // Fax
* Sonstige Infos
* $input_array['entity']['unsupported'][]='Informationen, Informationen, für die es bei Freinet keine ›Entsprechung‹ gibt. (Die Informationen werden gesondert angezeigt)';
* Protokoll
* $input_array['protokoll'][1]['title']='Mein Protokoll';
* $input_array['protokoll'][1]['content']='Mein Protokollinhalt';
* $input_array['protokoll'][1]['date']='2020-12-29';
*/
$input_array['init']['apiVersion']='1.0';
$input_array['init']['agencyID']='52';
$input_array['init']['accessKey']='xxxxxxxxx';
$input_array['init']['modul']='personen'; // TargetModul freiwillige|einrichtung|angebot|kontakte

$input_array['init']['author']='Muster e.V.'; // Kontaktperson der API
$input_array['init']['author_mail']='mail@muster_e_V.de'; // E-Mail Adresse der API Kontaktperson

$input_array['entity']['anrede']='Herr'; // (mixed) Herr|Frau|1|2  (1=Herr, 2=Frau, 4=Divers)
$input_array['entity']['titel']='Dr.'; // Prof. Dr.
$input_array['entity']['vorname']='Rudi';
$input_array['entity']['nachname']='Dutschke';


/*********************************
* Versand via cURL
*/
$url='https://freinet-online.de/api/input/v3/personen';

$ch=curl_init($url);

# Setup request to send json via POST.
$payload=json_encode($input_array,JSON_PRETTY_PRINT);

curl_setopt($ch,CURLOPT_POSTFIELDS,$payload);
curl_setopt($ch,CURLOPT_HTTPHEADER,array('Content-Type:application/json'));
# Return response instead of printing.
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
# Send request.
$result=curl_exec($ch);
curl_close($ch);
		

Vermittlung

Insert einer Empfehlung/Vermittlung von ›Freiwilligen‹ zu ›Angeboten‹

/********************************
* $input_array einer Empfehlung/Vermittlung
* z.B.
*
* Teil 1) SetupInfos
* $input_array['init']['agencyID']='52'; // AgenturID
* $input_array['init']['accessKey']='gcBc66'; // AccessKey
*
* Teil 2) Infos zum Angebot
* $input_array['angebot']['angebot_id']='';
*
* Teil 3) Infos zum User (dem "Freiwilligen")
* $input_array['user']['user_id']='';
*
* Teil 4) Informationen zur Vermittlungen
* $input_array['einrichtung']['unsupported'][]='Informationen, Informationen, für die es bei Freinet keine ›Entsprechung‹ gibt. (Die Informationen werden gesondert angezeigt)';
*
* Teil 5) Sonstige Infos (optional)
* $input_array['angebot'][unsupported][]='Informationen, Informationen, für die es bei Freinet keine ›Entsprechung‹ gibt. (Die Informationen werden gesondert angezeigt)';
*
* Teil 8) Projekte (optional)
* $input_array['add_to_project'][1]='Name des Projektes'; // Der Datensatz "Angebot" soll zu einem Projekt hinzugefügt werden.
*
* Teil 9) Protokoll (optional)
* $input_array['protokoll'][1]['title']='Mein Protokoll';
* $input_array['protokoll'][1]['content']='Mein Protokollinhalt';
* $input_array['protokoll'][1]['date']='2020-12-29';
 */
 
/*
 * Teil 1) Einstellungen zur Authorisierung etc.
 */
$input_array['init']['apiVersion']='1.0';
$input_array['init']['agencyID']='52';
$input_array['init']['accessKey']='xxxxxxxxx';
$input_array['init']['modul']='vermittlung'; // TargetModul freiwillige|einrichtung|angebot|kontakte

$input_array['init']['author']='Muster e.V.'; // Kontaktperson der API
$input_array['init']['author_mail']='mail@musterverein.de'; // TargetModul freiwillige|einrichtung|angebot|kontakte

$input_array['init']['referer_name']='Muster e.V.'; // Sie können hier den Namen der Sendenden Webseite eintragen
$input_array['init']['referer_email']='mail@musterverein.de'; // ... und die zugehörige E-Mail
$input_array['init']['referer_homepage']='http://www.musterverein.de'; // ... und die zugehörige Webadresse

$input_array['init']['testing']=false; // wenn true, dann können Sie Ihr Skript testen, ohne das Daten eingetragen werden
									   // etwaige Fehlermeldungen, Hinweise werden ausgegeben.

// Verhalten bei Dubletten
$input_array['init']['halt_on_vermittlung_duplicate']=false; // wenn 'true', wird der Eintrag abgebrochen, wenn ein Angebot und User bereits vermittelt sind.

// Benachrichtigung einer Agenturmitarbeiter_in
$input_array['init']['notify_this_email_on_submission']='rademacher@freinet-online.de'; // Wer soll benachrichtigt werden, wenn ein neuer Datensatz eingetragen wird
																						// Leer lassen, wenn niemand benachrichtigt werden soll
$input_array['init']['name_of_receiver']='Hallo Jan,'; // Anrede für Nachrichteninhalt

// Selbstregistrierung
// "Hat sich der User persönlich über ein (Online-)Formular eingetragen?"
$input_array['init']['self_registered']=true; // setzen Sie 'true', wenn der User sich persönlich z.B. über ein (Online-)Formular eingetragen hat.

/*
 * Teil 2) Grunddaten
 * ID des Angebots etc.
 */
$input_array['angebot']['angebot_id']='172166';

/*
 * Teil 3) Grunddaten
 * ID des Users etc.
 */
$input_array['user']['user_id']='287158'; //


/*
 * Teil 4) Informationen zur Vermittlungen
 */

// Der Status der Vermittlung
// 0 = Empfehlung (Der User bekundet "Interesse" am Angebot)
// 10 = Vermittlung (Der User bestätigt die Teilnahme / "sagt fest zu" / wird dieses Angebot sicher wahrnehmen
$input_array['vermittlung']['vermittlungs_status']='10'; // int

// Sofern bereits klar ist, in welchem Zeitrahmen der USER aktiv sein wird, können Start- und/oder End-Datum gesetzt werden
$input_array['vermittlung']['datum_start']='2021-01-01'; // Unix Timestamp || IsoDate
$input_array['vermittlung']['datum_ende']='2021-01-05'; // Unix Timestamp || IsoDate

// Anzahl Begleit-Personen
// "Wieviele Personen werden mitgebracht" (also User PLUS weitere Personen )
$input_array['vermittlung']['anzahl_begleitpersonen']='0'; // int

// Ist diese Vermittlung Teil des Programms FSSJ
$input_array['vermittlung']['is_FSSJ']='1'; // int 0=Nein, 1=Ja

// Datumsangaben
// Wenn keine Datumsangaben übergeben werden, nimmt Freinet den aktuellen UnixTimestamp
$input_array['vermittlung']['erstellt']=date('Y-m-d H:i:s', time()); // "Erstell/Registrierungsdatum" (ISODate or Unixtimestamp)
$input_array['vermittlung']['dateline']='1451307448'; // "zuletzt bearbeitet" (ISODate or Unixtimestamp)

// Kommentar
$input_array['vermittlung']['kommentar']='Mein Kommentar zu dieser Vermittlung'; // varchar, max 500

/*
 * Teil 3) Nicht unterstützte Felder
 * Sofern Sie Felder importieren möchten, die Freinet "eigentlich" nicht unterstützt,
 * können Sie diese in folgendem Array speichern
 * Freinet legt diese Infos als json-Objekt in einer ImportSpalte an, die angezeigt, durchsucht, aber nicht verarbeitet werden kann.
 */
$input_array['vermittlung']['unsupported']['Frage']='Antwort';
$input_array['vermittlung']['unsupported']['foo']='bar';
$input_array['vermittlung']['unsupported']['Sonderzeichen']='frägt man sich " ab und\'s an. ';

/*********************************
* Versand via cURL
*/
$url='https://freinet-online.de/api/input/v3/vermittlung';

$ch=curl_init($url);

# Setup request to send json via POST.
$payload=json_encode($input_array,JSON_PRETTY_PRINT);

curl_setopt($ch,CURLOPT_POSTFIELDS,$payload);
curl_setopt($ch,CURLOPT_HTTPHEADER,array('Content-Type:application/json'));
# Return response instead of printing.
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
# Send request.
$result=curl_exec($ch);
curl_close($ch);
		
Key-Value Elemente einer Agentur filtern

Sie können sich hier eine Liste von Elementen anzeigen lassen, um für die API einige Schlüssel zu erhalten.

Wir verwenden Cookies. Durch die Nutzung unserer Website stimmen Sie der Verwendung von Cookies zu. Mehr erfahren.

Wir verwenden Cookies. Durch die Nutzung unserer Website stimmen Sie der Verwendung von Cookies zu. Mehr erfahren.