XML-RPC API
Connecting
Authentifizierung
Fehler
Methoden
API Endpunkt: https://secure.gravatar.com/xmlrpc?user=[email_hash]
Es ist zwingend erforderlich, dass du dich mit secure.gravatar.com verbindest und dass dies per HTTPS geschieht. Das dient der Sicherheit sowohl unserer als auch deiner Benutzer. Der email_hash GET Parameter entspricht dem md5-Hash der E-Mail-Adresse des Benutzers nachdem diese in Kleinbuchstaben umgewandelt und gekürzt wurde.
Alle Parameter für alle Methoden sollten in einem einzigen Objekt, innerhalb eines assoziativen Arrarys, übergeben werden.
Es ist zwingend erforderlich, dass du dich mit secure.gravatar.com verbindest und dass dies per HTTPS geschieht. Das dient der Sicherheit sowohl unserer als auch deiner Benutzer. Der email_hash GET Parameter entspricht dem md5-Hash der E-Mail-Adresse des Benutzers nachdem diese in Kleinbuchstaben umgewandelt und gekürzt wurde.
Alle Parameter für alle Methoden sollten in einem einzigen Objekt, innerhalb eines assoziativen Arrarys, übergeben werden.
Authentifizierung
Benutzererkennung erfolgt auf Ebene der API. Du übergibst dem Methodenaufruf ein Passwort als Parameter. Der Inhalt dieses Parameters wird in Klartext übergeben. Der Passwort-Parameter wird immer aus den Aufrufargumenten entfernt, bevor die Methoden mit ihrer Verarbeitung beginnen. Aus diesem Grund solltest Du damit rechnen, daß er von der Testmethode grav.test nicht wieder zurückgegeben wird.
Fehler
Fehler werden normalerweise mit einer Nummer und für Menschen lesbarem Text ausgegeben. Dem Text sollte soweit möglich Folge geleistet werden. Eine kurze Beschreibung der numerischen Fehlercodes lautet wie folgt:
-7 Verwende secure.gravatar.com -8 Interner Fehler -9 Authentifizierungsfehler -10 Methoden-Parameter fehlt -11 Methoden-Parameter ungültig -100 Diverse Fehler (siehe Text)
Methoden
grav.exists - prüfe, ob einem Hash ein Gravatar zugeordnet ist @param (array)$args['hashes'] ein Array von zu überprüfenden Hashes @param (string)$args['password'] zur Authentifizierung @return array ( hash => (bool)exists, ) grav.addresses - gib eine Liste von Adressen für dieses Konto aus @param (string)$args['password'] zur Authentifizierung @return array ( address => array ( rating => (int)rating, userimage => (int)userimage, userimage_url => (int)userimage_url ) ) grav.userimages - liefere ein Array an Benutzerbildern für dieses Konto zurück @param (string)$args['password'] zur Authentifizierung @return array ( userimage => array( (int)rating, // 0:g, 1:pg, 2:r, 3:x (string)url, ) ) grav.saveData - Speichere binäre Bilddaten als ein Benutzerbild für dieses Konto @param (string)$args['data'] a base64_encode()d image @param (int)$args['rating'] 0:g, 1:pg, 2:r, 3:x @param (string)$args['password'] zur Authentifizierung @return (bool)false im Fehlerfall, (string)userimage bei Erfolg grav.saveUrl - Lese ein Bild über dessen URL ein und speichere dieses als Benutzerbild für dieses Konto @param (string)$args['url'] eine vollständige URL zum Bild @param (int)$args['rating'] 0:g, 1:pg, 2:r, 3:x @param (string)$args['password'] zur Authentifizierung @return (bool)false im Fehlerfall, (string)userimage bei Erfolg grav.useUserimage - verwendet ein Benutzerbild als Gravatar für eine von mehreren Adressen für dieses Konto @param (string)$args['userimage'] Das Benutzerbild, das du verwenden möchtest @param (array)$args['addresses'] Eine Liste der E-Mail-Adressen, für die du dieses Benutzerbild verwenden möchtest @param (string)$args['password'] zur Authentifizierung @return array( address => (bool)status ) grav.removeImage - entferne das Benutzerbild, das mit einer oder mehreren E-Mail-Adressen verknüpft ist @param (array)$args['addresses'] Eine Liste der E-Mail-Adressen, für die du dieses Benutzerbild verwenden möchtest @param (string)$args['password'] zur Authentifizierung @return array( address => (bool)status ) grav.deleteUserimage - entferne ein Benutzerbild aus dem Konto und jede E-Mail-Adresse, die damit verknüpft ist @param (string)$args['userimage'] Das Benutzerbild, das du aus dem Konto entfernen möchtest @param (string)$args['password'] zur Authentifizierung @return (bool)status grav.test - a test function @param (string)$args['password'] zur Authentifizierung @return (mixed)$args