Virtual Organisation:Edelprofil mittels REST API aktualisieren

From VZ Developer Wiki
Jump to: navigation, search

Schritt für Schritt | <= vorheriger Schritt 3 | Schritt 4 | nächster Schritt 5 =>



Beim Aktualisieren eines Edelprofils kann der gesamte Inhalt des Profil angepasst werden. So z. B. der Name, Geburtstag, die Einsortierung in Kategorien, der eigentliche Inhalt (Profilvorderseite sowie -rückseite). Des weiteren können auch die Profilbilder zu einem Edelprofil gepflegt werden.

  • die Anfrage muss über die Methode PUT abgesetzt werden.
  • zusätzlich muss der Header gesetzt werden

Beispiel für den Header:

  content-type: application/json; charset:UTF-8
  • die eigentlichen Daten für das Edelprofil müssen in Form eines json-Strings über den Request-Body übergeben werden

Beispiel für einen json-String

{
      "general":
      {
        "firstName":"Maxi",
        "lastName":"Mustermännchen",
        "email":"new@email.de",
        "birthday":"2010-08-05"
      },
      "settings":
      {
        "invisible":"0",
        "showFlipside":"1",
        "deactivateFrontside":"0",
        "activateFlipsideMenu":"1"
      },
      "category":
      {
        "primaryCategory":"3",
        "secondaryCategories":["4"]
      },
      "content": 
      {
        "frontsideContent":"<p>newText new <vz-counter> </vz-counter>Text newText newText newText</p>",
        "flipsideContent":"<p>newText newText newText newText newText</p>"
      },
      "images":
      {
        "profileImages":
        {
          "big":"<base64 encoded string>" 
        }
      }
} 
  • unter "general" gibt es die Option "invisible". Diese kann gesetzt werden damit das Profil nur für sich selbst sichtbar ist.
  • setzt man "invisible" auf 0, so wird das Edelprofil auf der jeweiligen Plattform für alle sichtbar. Die Option kann genutzt werden um das Edelprofil ungestört zu gestalten.
  • für den Inhalt kann HTML verwendet werden, welches entsprechend für die Vorderseite (content) und Rückseite (extraContent) gepflegt wird.
  • innerhalb von HTML-Tags können die vorgebenen CSS-Klassen verwendet werden
  • für spezielle Objekte wie z. B. den Anhängerzähler (<vz-counter> </vz-counter>) oder die Pinnwand gibt es VZ-eigene Tags. Die genaue Verwendung wird unter VZML beschrieben.
  • unter Image Handling wird beschrieben wie Bilder verwaltet werden können


Beispiel für die Anfrage:

  • die Aktualisierungsanfrage muss über die Methode PUT abgesetzt werden.

Notwendige Parameter dafür sind:

  • platform => 1
  • guid => le0fxLzABAIQvJV-jdAUrA
  • token => 1272ab3c77d40ccdd248e139bddfcad42db9b52c
https://vo.apivz.net/Api/Vo/V1/?action=profile&platform=1&guid=le0fxLzABAIQvJV-jdAUrA&token=1272ab3c77d40ccdd248e139bddfcad42db9b52c


Beispiel Response:

{
    "meta":
    {
        "version":1,
        "nonce":"",
        "count":1,
        "success":true
    },
    "content":"Successfully updated profile: le0fxLzABAIQvJV-jdAUrA"
}

Json Request-Body

|general|

  • hier werden Accountbezogene Daten übergeben, welche auch direkt im Profil auftauchen.
  • WICHTIG: die Email-Adresse muss einmalig sein
       => firstName
       => lastName
       => email
       => birthday

|settings|

  • für jedes Edelprofil können individuell Einstellungen vorgenommen werden.
       => invisible":"0",
       => showFlipside":"1",
       => deactivateFrontside":"0",
       => activateFlipsideMenu":"1"
  • über invisible kann das Edelprofil an- und abgeschalten werden. (an=0 / aus=1)
  • showFlipside aktiviert/deaktiviert man die Rückseite eines Edelprofils. (aktivieren=1 / deaktivieren=0) Standardeinstellung bei neu angelegten Edelprofilen ist "0".
  • die Edelprofil - Vorderseite kann über deactivateFrontside de-/aktiviert werden (aktivieren=0 / deaktivieren=1) Die Deativierung macht nur Sinn, wenn die Rückseite des Edelprofils aktiviert ist.
  • Standardgemäß ist auf der Edelprofil - Rückseite kein Navigationsmenü vorhanden. Auf Wunsch kann das Navigationsmenü über activateFlipsideMenu de-/aktiviert werden. (aktivieren=1 / deaktivieren=0)

|category|

       => primaryCategory
       => secondaryCategories

|content|

  • in den content werden die eigentlichen Edelprofilinhalte gepackt.
       => frontsideContent
       => flipsideContent
  • frontsideContent bekommt im HTML-Format jeglichen Edelprofilinhalt, welcher für die Edelprofil - Vorderseite bestimmt ist.
  • flipsideContent bekommt im HTML-Format jeglichen Edelprofilinhalt, welcher für die Edelprofil - Rückseite bestimmt ist.

|images|

  • hier können die Profilbilder in verschiedenen Größen hochgeladen werden.
       => small
       => medium
       => big



Schritt für Schritt | <= vorheriger Schritt 3 | Schritt 4 | nächster Schritt 5 =>