Versions Compared

Key

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

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 PORTAL verbinden. Alle Cloud-Connect APIs sind nach der REST-Architektur aufgebaut. Der Zugriff wird dabei über die Standard HTTP-Methoden GET, POST, PUT 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:innen & Gruppen. Darüber hinaus können Profilbilder über die API manipuliert werden.

Funktionalitäten der Benutzer API

  • Anlegen von Benutzer & Gruppenund Editieren von Benutzer:innen & Gruppen

  • Löschen von Benutzer & Gruppenund Auslesen von Benutzer:innen & Gruppen

Inhaltsverzeichnis

Expand
titleInhaltsverzeichnis anzeigen
Table of Contents
maxLevel4
Detaillierte Beschreibung

Grundlegendes zur Benutzer API

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

Verfügbare Endpunkte für User

Benutzer:innen sind alle Autoren Autor:innen und Leser:innen im PortalPORTAL. Über die Benutzer - API können sämtliche Informationen von Benutzern Benutzer:innen ausgelesen oder manipuliert werden. Auch das Löschen von einzelnen Nutzern Benutzer:innen ist über die API möglich. Wird ein Nutzer :e Benutzer:in gelöscht, hat das auch das Löschen seiner bzw. ihrer 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

    • user_ids

  • 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": [
    {
      "embeds":{
        "embedcode": {
          "e3rux4b8nc0" {
            "content": "<b>Bold</b>"
          }
        }
      },
      "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": "[embedcode=e3rux4b8nc0][/embedcode]This is the example biography from Max Mustermann.",
      "gender": "male",
      "birthdate": "1977-03-07",
      "tags": [
        "Tagger",
        "I'm a Tag"
      ]
    }
  ]
}

Sofern ein

Status
colourBlue
titleGET
-Aufruf mehr als 10.000 Treffer zurückgibt, wird ein 400-Fehler ausgegeben. In diesem Fall müssen die Ergebnisse mithilfe der Filter weiter eingeschränkt werden.

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 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
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 bzw. einer Benutzer:in 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 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"
}

Trouble Shooting bei 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

Berechtigte Nutzer

Die Benutzer API ist eine Adminfunktion, welche Nutzer mit der Berechtigung “Zugang zur API-Dokumentation“abrufen dürfen.

Die Interaktive Bedienung - Try it out

Die API 2.0 BETA Dokumentation kann bereits ohne große Programmierkenntnisse oder ein darauf ausgerichtetes Programm bedient werden. Hierfür gibt es die “Try-it-out” - Funktion.

Jeder Lesende (GET) Endpunkt der Dokumentation hat einen “Try it out” Button. Hierüber können Daten nach den im Front-End vorliegenden Filtern aus dem Live-System abgerufen werden. Bedingung für das Benutzen der Funktion ist ein gültiger API key .

Image Removed

 Der 'Try it out' Button

NoteUm ein versehentliches Manipulieren der Daten zu verhindern, ist die Benutzung auf die Lesenden Endpunkte (GET) beschränkt.

Request

Insert excerpt
API 2.0 Dokumentation PORTAL
API 2.0 Dokumentation PORTAL
name400
nopaneltrue

404 - Not Found

Insert excerpt
API 2.0 Dokumentation PORTAL
API 2.0 Dokumentation PORTAL
name404
nopaneltrue

Verwandte Themen

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

Include Page
Disclaimer der PEIQ PORTAL - Produktdokumentation
Disclaimer der PEIQ PORTAL - Produktdokumentation

Nur für PEIQ-Mitarbeiter:innen
https://peiq.atlassian.net/wiki/x/9IC0Ag