0

Bei der Entwicklung und dem Testen gegen die Google Kontakte v3-API (Bereich https://www.google.com/m8/feeds/) habe ich einen Eintrag in der gemeinsamen Kontaktliste unserer Firma erstellt (dh im Verzeichnisordner), der keine ID hat und es auch nicht ist anklickbar ("Kontakt wurde nicht gefunden"). Daher kann ich diesen Eintrag nicht löschen. Es ist auch nicht aufgeführt, wenn Sie "Kontakte" anfragen (totalResults: 0).Phantomeintrag erstellt in freigegebenen Google-Kontakten

Google for Work Support konnte hier nicht helfen und empfohlen, in diesem Forum zu fragen. Ich hoffe, dass jemand weiß, wie man diesen Phantomeintrag los wird.

Antwort

1

Wie erwartet das Löschen von Google getan werden musste und war nicht möglich, mit einem zusätzlichen API-Aufruf von meiner Seite.

0

Mit der Shared Contacts API können Clientanwendungen externe Kontakte abrufen und aktualisieren, die für alle Benutzer in einer Google Apps-Domain freigegeben sind. Freigegebene Kontakte sind für alle Nutzer einer Apps-Domain sichtbar und alle Google-Dienste haben Zugriff auf die Kontaktliste.

Erstellen Sie eine XML-Darstellung des zu veröffentlichenden freigegebenen Kontakts. Diese XML muss in Form eines Atom Element der Kontakt Art sein, die wie folgt aussehen könnte:

<atom:entry xmlns:atom='http://www.w3.org/2005/Atom' 
xmlns:gd='http://schemas.google.com/g/2005'> 
<atom:category scheme='http://schemas.google.com/g/2005#kind' 
term='http://schemas.google.com/contact/2008#contact' /> 
<gd:name> 
<gd:givenName>Elizabeth</gd:givenName> 
<gd:familyName>Bennet</gd:familyName> 
<gd:fullName>Elizabeth Bennet</gd:fullName> 
</gd:name> 
<atom:content type='text'>Notes</atom:content> 
<gd:email rel='http://schemas.google.com/g/2005#work' 
primary='true' 
address='[email protected]' displayName='E. Bennet' /> 
<gd:email rel='http://schemas.google.com/g/2005#home' 
address='[email protected]' /> 
<gd:phoneNumber rel='http://schemas.google.com/g/2005#work' 
primary='true'> 
(206)555-1212 
</gd:phoneNumber> 
<gd:phoneNumber rel='http://schemas.google.com/g/2005#home'> 
(206)555-1213 
</gd:phoneNumber> 
<gd:im address='[email protected]' 
protocol='http://schemas.google.com/g/2005#GOOGLE_TALK' 
primary='true' 
rel='http://schemas.google.com/g/2005#home' /> 
<gd:structuredPostalAddress 
rel='http://schemas.google.com/g/2005#work' 
primary='true'> 
<gd:city>Mountain View</gd:city> 
<gd:street>1600 Amphitheatre Pkwy</gd:street> 
<gd:region>CA</gd:region> 
<gd:postcode>94043</gd:postcode> 
<gd:country>United States</gd:country> 
<gd:formattedAddress> 
1600 Amphitheatre Pkwy Mountain View 
</gd:formattedAddress> 
</gd:structuredPostalAddress> 

</atom:entry> 

https://www.google.com/m8/feeds/contacts/example.com/full 

Der Google-Server erstellt einen Kontakt den Eintrag mit Ihnen geschickt, dann gibt ein HTTP 201 CREATED Statuscode zusammen mit einer Kopie des neuen Kontakts in Form eines <entry> Elements.

Ihre Clientanwendung kann mit der API für freigegebene Kontakte neue freigegebene Kontakte erstellen, vorhandene freigegebene Kontakte bearbeiten oder löschen und nach freigegebenen Kontakten suchen, die bestimmten Kriterien entsprechen.

Um einen Kontakt zu löschen, senden Sie eine autorisierte DELETE Anfrage an die Bearbeitungs-URL des Kontakts.

Die URL ist von der Form:

https://www.google.com/m8/feeds/contacts/{userEmail}/full/{contactId} 

mit den entsprechenden Werten anstelle von Useremail und contactID.

Hinweis: Der Standardwert userEmail-Standardwert kann verwendet werden, um auf den authentifizierten Benutzer zu verweisen.

Um sicherzustellen, dass die an die API gesendete Anforderung die Änderungen eines anderen Clients nicht überschreibt, sollte der Kontakteintrag Etag im Anforderungsheader angegeben werden.

If-Match: Etag 

Wenn die Etag veraltet ist, antwortet der Server mit einem HTTP 412 Precondition Failed Statuscode.

<!-- Request --> 
DELETE /m8/feeds/contacts/default/full/contactId 
If-match: Etag 
... 
<!-- Response --> 
HTTP/1.1 200 OK 
+0

Nun, ich kenne alle diese Schritte und normalerweise arbeiten sie ohne Probleme. In diesem Fall hat der erwähnte Kontakt keine ID! Es wird nur in der Liste des Verzeichnisordners angezeigt, aber es kann nicht wie ein normaler Kontakteintrag gelöscht werden. – valley