Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Status
colourPurple
titlezur abnahme

Zusammenfassung

Webservice

REST

Objekt

JSON

Trigger

Info

Mithilfe der PEIQ Cloud-Connect APIs(engl. Application Programming Interfaces, Programmierschnittstellen) können Verlage Teile ihrer bestehenden Systeme und Produkte mit dem PEIQ Portal verbinden. Alle Cloud-Connect APIs sind nach der REST-Architektur aufgebaut. Der Zugriff wird dabei über die Standard HTTP-Methoden GET, POST, PUT

, DELETE

Anbieter

PEIQ

Syntax

Cloud Connect API

Info

und DELETE gesteuert. Die Zugriffskontrolle erfolgt hierbei über eine Implementierung nach OAuth V2 Standard.

Die Benutzer API dient zum Anlegen, Editieren, Löschen und Auslesen von Benutzer & Gruppen. Darüber hinaus können Profilbilder über die API manipuliert werden.

Produkt (Label)

portal

Übergeordnetes Modul (Label)

API, Benutzer und Gruppen

Inhaltsverzeichnis

Funktionalitäten der Benutzer API

  • Zum Anlegen, Editieren, Löschen und Auslesen von Benutzer & Gruppen.

  • Es handelt sich bei der Benutzer-API um eine Public API

  • Zur Aktivierung des Features ist eine Beauftragung seitens des Kunden notwendig.

Inhaltsverzeichnis

Expand
titleInhaltsverzeichnis anzeigen
Table of Contents
maxLevel4
Interne

Detaillierte Beschreibung

Basis URL

Code Block
languagehtml
https://yourdomain.com/api/v2/users

Die Benutzer API dient zum Anlegen, Editieren, Löschen und Auslesen von Benutzer & Gruppen. Darüber hinaus können Profilbilder über die API manipuliert werden.

Verfügbare Endpunkte für User

Benutzer sind alle Autoren und Leser im Portal. Über die Benutzer-API können sämtliche Informationen von Benutzern ausgelesen oder manipuliert werden. Auch das Löschen von einzelnen Nutzern ist über die API möglich. Wird ein Nutzer gelöscht, hat das auch das Löschen seiner veröffentlichten Inhalte zur Folge. Es ist daher sehr darauf zu achten, wer diesen Endpunkt bedient und wie.

Status
colourBlue
titleGET

  • Get All Users by Filters

    • first_name

    • last_name

    • email

    • updated_since

    • registration_date_from

    • registration_date_to

    • enabled

    • locked

    • lock_state (available values: none, pending_approval, locked)

    • tags

  • Get User Information by user_id

    • user_id

  • Get User Information by Authentication Token

  • Get All User Segments

Response

Code Block
languagejson
{
  "total_results": 234,
  "total_pages": 12,
  "page": 1,
  "page_size": 20,
  "data": [
    {
      "id": "1",
      "remote_id": {
        "ssofact": "12345"
      },
      "first_name": "Max",
      "last_name": "Mustermann",
      "full_name": "Max Mustermann",
      "credits": 132,
      "group_ids": [
        2,
        3
      ],
      "email": "max@mustermann.de",
      "registration_date": "2015-03-07T03:00:00+00:00",
      "last_login": "2019-03-07T13:00:00+00:00",
      "user_type": "person",
      "user_segment": "leserreporter",
      "location_id": 17,
      "static_tags": [
        "commercial"
      ],
      "avatar": {
        "url": "https://example.com/resources/mediadb/user/2019/04/18/1/1_M.jpg",
        "id": "12"
      },
      "wallpaper": {
        "url": "https://example.com/resources/mediadb/user/2019/04/18/1/1_XL.jpg",
        "id": "13"
      },
      "lock_state": "none",
      "enabled": true,
      "address": {
        "street": "Example Street",
        "street_number": "123",
        "zipcode": "86159",
        "city": "Augsburg",
        "phone": "08212849204"
      },
      "biograpy": "This is the example biography from Max Mustermann.",
      "gender": "male",
      "birthdate": "1977-03-07",
      "tags": [
        "Tagger",
        "I'm a Tag"
      ]
    }
  ]
}

Status
colourGreen
titlePOST

  • Create User

Status
colourYellow
titlePUT

  • Update User

Status
colourRed
titleDELETE

  • Delete User by ID

    • user_id

Request Body

Code Block
languagejson
{
  "remote_id": {
    "ssofact": "12345"
  },
  "first_name": "Max",
  "last_name": "Mustermann",
  "credits": 1,
  "group_ids": [
    2,
    3
  ],
  "email": "max@mustermann.de",
  "plaintext_password": "Password123!",
  "last_login": "2019-03-07T13:00:00+00:00",
  "user_type": "person",
  "user_segment": "leserreporter",
  "location_id": 17,
  "static_tags": [
    "commercial"
  ],
  "lock_state": "none",
  "enabled": true,
  "address": {
    "street": "Example Street",
    "street_number": "123",
    "zipcode": "86159",
    "city": "Augsburg",
    "phone": "08212849204"
  },
  "biograpy": "This is the example biography from Max Mustermann.",
  "gender": "male",
  "birthdate": "1977-03-07",
  "tags": [
    "Tagger",
    "I'm a Tag"
  ]
}

HTTP Status Codes

Code Block
200 - Success         Alles hat wie erwartet funktioniert
201 - User Successfully Created
204 - User Successfully Updated / Deleted
400 - Bad Reqest      Der Request war nicht akzeptabel. Das liegt oft an einem fehlenden Parameter. Checken Sie hierfür den gesendeten Request Body.
404 - User Not Found  Der User scheint nicht zu existieren


Verfügbare Endpunkte für User Groups

Benutzergruppen können im Portal über die Berechtigungsgruppenverwaltung angelegt werden. Der API Endpunkt dient dazu, die IDs von Benutzergruppen zu ermitteln und diese dem User zuzuweisen.

Status
colourBlue
titleGET

  • Get All User Groups

  • Get User Group Information by group_id

    • group_id

Response

Code Block
languagejson
[
  {
    "id": 1,
    "name": "Super Admin",
    "description": "Super Admins have access to everything on the Portal."
  }
]

HTTP Status Codes

Code Block
200 - Success           Alles hat wie erwartet funktioniert
400 - Bad Reqest        Der Request war nicht akzeptabel. Das liegt oft an einem fehlenden Parameter. Checken Sie hierfür den gesendeten Request Body.
404 - Group Not Found   Die Gruppe scheint nicht zu existieren


Verfügbare Endpunkte für User Images

Die Profilseite eines Benutzers enthält sowohl ein Profilbild als auch ein Panorama-Wallpaper. Über folgende Endpunkte können die Bilder gelesen und gelöscht oder neue Bilder, z.B. von externen Quellen, ins Portal geladen werden.

Status
colourBlue
titleget

  • Get User Avatar by user_id

    • user_id

  • Get User Wallpaper by user_id

    • user_id

Response

Code Block
languagejson
{
  "id": "1",
  "url_set": {
    "NATIVE": "https://www.example.com/resources/mediadb/article/2019/03/27/1/1_NATIVE.jpg",
    "T": "https://www.example.com/resources/mediadb/article/2019/03/27/1/1_T.jpg",
    "XS": "https://www.example.com/resources/mediadb/article/2019/03/27/1/1_XS.jpg",
    "S": "https://www.example.com/resources/mediadb/article/2019/03/27/1/1_S.jpg",
    "M": "https://www.example.com/resources/mediadb/article/2019/03/27/1/1_M.jpg",
    "L": "https://www.example.com/resources/mediadb/article/2019/03/27/1/1_L.jpg",
    "XL": "https://www.example.com/resources/mediadb/article/2019/03/27/1/1_XL.jpg",
    "XXL": "https://www.example.com/resources/mediadb/article/2019/03/27/1/1_XXL.jpg"
  },
  "user_id": 1,
  "created": "2019-03-07T00:00:00+00:00",
  "modified": "2019-03-07T00:00:00+00:00",
  "focus_x": "2",
  "focus_y": "3"
}

Status
colourGreen
titlePOST

  • Upload User Avatar for a specific User

    • user_id

  • Upload User Wallpaper for a specific User

    • user_id

Status
colourRed
titledelete

  • Delete User Avatar by user_id

    • user_id

  • Delete User Wallpaper by user_id

    • user_id

Request Body

Code Block
languagejson
{
  "url": "https://www.example.com/resources/mediadb/article/2019/03/04/1/1_XL.jpg",
  "creation_date": "2019-03-07T00:00:00+00:00",
  "focus_x": "2",
  "focus_y": "3"
}

HTTP Status Codes

Code Block
languagehtml
200 - Success           Alles hat wie erwartet funktioniert
201 - User Avatar / Wallpaper successfully created
204 - User Avatar / Wallpaper successfully deleted
400 - Bad Reqest        Der Request war nicht akzeptabel. Das liegt oft an einem fehlenden Parameter. Checken Sie hierfür den gesendeten Request Body.
404 - User Not Found    Der User scheint nicht zu existieren

Setup & Konfiguration

Aktivierung Feature

Aufwand Technik

Als Change Request (Releaseunabhängig)

https://docs.google.com/document/d/1loSYAex--vFIdZ0OAAfcw8buiiCKFlZpdm3QpkvcIr0/edit?ts=5d9c7c36#heading=h.9blbyv4a4qgm

0,25PH

Die API 2.0 Dokumentation ist in jedem Portal vorhanden. Zugang erhält man mit der Berechtigung “Zugang zur API Dokumentation”

Der Zugang zur /wiki/spaces/CORE/pages/44400763 selbst ist jedoch pro Modul aktivierbar. Siehe hierfür die jeweiligen Angaben zum Setup.

Konfigurationsparameter

Warning

Es sind keine Konfigurationsmöglichkeiten für die Schnittstelle vorhanden.

Bekannte Einschränkungen

Note

Entwicklungsverlauf

Modul im Einsatz bei

  • [ALLIN] (all-in.de)

    Status
    colourGreen
    titleOnline (V2)

  • [WVW] (lokalkompass.de)

    Status
    colourGreen
    titleOnline (V2)

  • Alte Version (V1) genutzt von:

    Verwandte Themen

    Verwandte Seiten

    Filter by label (Content by label)
    showLabelsfalse
    showSpacefalse
    cqllabel = "api" and space = "CORE"

    Verwandte Labels

    Related Labels
    labelsapi

    Ansprechpartner

    Teil 2 - EXTERN für Kunden & Interessenten
    Status
    colourGreen
    titleextern

    Note

    In diesem Teil werden über sogenannte Auszüge Snippets für die extern zugänglichen Dokumente und Seiten erstellt. Diese Auszüge werden vom Customer Success auf weitere Seiten kuratiert.

    Neue Auszüge können über /auszug erstellt werden.

    Änderungen an bereits bestehenden Auszügen dürfen nicht vorgenommen werden. Siehe hierzu die Anleitung /wiki/spaces/CORE/pages/44204087.

    Allgemeine Beschreibung
    Status
    colourGreen
    titleextern

    Note

    Beschreibt in wenigen Sätzen die Ziele bzw. Vorteile des Moduls / Features sowie als Stichwortliste dessen Leistungsumfang. Die Allgemeine Beschreibung ist als Einstieg für den Kunden zu verstehen und beantwortet folgende Fragen: Warum brauche ich das? Was kann das?

    Excerpt

    Details
    Status
    colourGreen
    titleextern

    Note

    Externe Produktdokumentation für die Kunden (Customer Success): Inhalt der aktuell FAQ benannten Dokumente, aber nicht als Frage-Antwort, sondern einfach als Dokumentation für den (potenziellen) Kunden (ohne kritische interne Hinweise, ohne Aufwände, vor allem ohne Links auf die interne CORE-Umgebung).

    Excerpt

    Release-Notes
    Status
    colourGreen
    titleextern

    Excerpt

    Monat 202X - Zusammenfassung

    Text

    Excerpt

    Monat 202X - Zusammenfassung

    Text

    Anleitung zum Setup
    Status
    colourGreen
    titleextern

    Excerpt

    Historie

    change-history
    404 - User Not Found    Der User scheint nicht zu existieren

    Setup & Konfiguration

    • Zur Aktivierung des Features ist eine Beauftragung seitens des Kunden notwendig.

    • Die API 2.0 Dokumentation ist in jedem Portal vorhanden. Zugang erhält man mit der Berechtigung “Zugang zur API Dokumentation”

    Verwandte Themen

    Filter by label (Content by label)
    showLabelsfalse
    showSpacefalse
    cqllabel in ( "api" , "api-dokumentation" , "schnittstellen" ) and space = "PPSD"