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 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 & Gruppen. Darüber hinaus können Profilbilder über die API manipuliert werden.

Funktionalitäten der Benutzer API

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

  • Editieren von Benutzer & Gruppen

  • Löschen 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.

  • Auslesen von Benutzer & Gruppen

Inhaltsverzeichnis

Expand
titleInhaltsverzeichnis anzeigen
Table of Contents
maxLevel4

Detaillierte Beschreibung

Basis URL

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

Grundlegendes zur Benutzer API

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

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

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

ist in jedem Portal vorhanden. Zugang erhält man mit der Berechtigung “Zugang zur API 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 Added

 Der 'Try it out' Button

Note

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

Verwandte Themen

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