Contacts: patch

Autorisation requise

Permet de mettre à jour un contact. Cette méthode est compatible avec la sémantique "patch". Voir un exemple

Requête

Requête HTTP

PATCH https://www.googleapis.com/mirror/v1/contacts/id

Paramètres

Nom du paramètre Valeur Description
Paramètres de chemin d'accès
id string Identifiant du contact.

Autorisation

Cette requête nécessite une autorisation ayant la portée suivante. En savoir plus sur le processus d'authentification et d'autorisation

Champ d'application
https://www.googleapis.com/auth/glass.timeline

Corps de la requête

Dans le corps de la requête, indiquez les parties pertinentes d'une ressource Contacts, conformément aux règles de la sémantique patch.

Réponse

Lorsque cette méthode fonctionne, elle renvoie une ressource Contacts dans le corps de réponse.

Exemples

Remarque : Les langages de programmation compatibles ne figurent pas tous dans les exemples de code présentés pour cette méthode (consultez la page Bibliothèques clientes pour obtenir la liste des langages compatibles).

Java

Elle utilise la bibliothèque cliente Java.

import com.google.api.services.mirror.Mirror;
import com.google.api.services.mirror.model.Contact;

import java.io.IOException;

public class MyClass {
  // ...

  /**
   * Rename an existing contact for the current user.
   * 
   * @param service Authorized Mirror service.
   * @param contactId ID of the contact to rename.
   * @param newDisplayName New displayName for the contact.
   * @return Patched contact on success, {@code null} otherwise.
   */
  public static Contact renameContact(Mirror service, String contactId, String newDisplayName) {
    Contact patchedContact = new Contact();
    patchedContact.setDisplayName(newDisplayName);

    try {
      return service.contacts().patch(contactId, patchedContact).execute();
    } catch (IOException e) {
      System.err.println("An error occurred: " + e);
      return null;
    }
  }

  // ...
}

.NET

Elle utilise la bibliothèque cliente.NET.

using System;

using Google.Apis.Mirror.v1;
using Google.Apis.Mirror.v1.Data;

public class MyClass {
  // ...

  /// <summary>
  /// Rename an existing contact for the current user.
  /// </summary>
  /// <param name='service'>Authorized Mirror service.</param>
  /// <param name='contactId'>ID of the contact to rename.</param>
  /// <param name='newDisplayName'>
  /// New displayName for the contact.
  /// </param>
  /// <returns>
  /// Patched contact on success, null otherwise.
  /// </returns>
  public static Contact RenameContact(MirrorService service,
      String contactId, String newDisplayName) {
    Contact patchedContact = new Contact() {
      DisplayName = newDisplayName
    };
    try {
      return service.Contacts.Patch(
          patchedContact, contactId).Fetch();
    } catch (Exception e) {
      Console.WriteLine("An error occurred: " + e.Message);
      return null;
    }
  }

  // ...
}

PHP

Elle utilise la bibliothèque cliente PHP.

/**
 * Rename an existing contact for the current user.
 *
 * @param Google_MirrorService $service Authorized Mirror service.
 * @param string $contactId ID of the contact to rename.
 * @param string $newDisplayName New displayName for the contact.
 * @return Google_Contact Patched contact on success, null otherwise.
 */
function renameContact($service, $contactId, $newDisplayName) {
  try {
    $patchedContact = new Google_Contact();
    $patchedContact->setDisplayName($newDisplayName);
    return $service->contacts->patch($contactId, $patchedContact);
  } catch (Exception $e) {
    print 'An error occurred: ' . $e->getMessage();
    return null;
  }
}

Python

Elle utilise la bibliothèque cliente Python.

from apiclient import errors
# ...

def rename_contact(service, contact_id, new_display_name):
  """Rename an existing contact for the current user.

  Args:
    service: Authorized Mirror service.
    contact_id: ID of the contact to rename.
    new_display_name: New displayName for the contact.

  Returns:
    return Patched contact on success, None otherwise.
  """
  patched_contact = {'displayName': new_display_name}
  try:
    return service.contacts().patch(
        id=contact_id, body=patched_contact).execute()
  except errors.HttpError, error:
    print 'An error occurred: %s' % error
    return None

Ruby

Elle utilise la bibliothèque cliente Ruby.

##
# Rename an existing contact for the current user.
#
# @param [Google::APIClient] client
#   Authorized client instance.
# @param [String] contact_id
#   ID of the contact to rename.
# @param [String] new_display_name
#   New displayName for the contact.
# @return [Google::APIClient::Schema::Mirror::V1::Contact]
#   Patched contact on success, nil otherwise.
def rename_contact(client, contact_id, new_display_name)
  mirror = client.discovered_api('mirror', 'v1')
  patched_contact = mirror.contacts.patch.request_schema.new({
    'displayName' => new_display_name
  })
  result = client.execute(
    :api_method => mirror.contacts.patch,
    :parameters => { 'id' => contact_id },
    :body_object => contact)
  if result.success?
    return result.data
  else
    puts "An error occurred: #{result.data['error']['message']}"
  end
end

Go

Elle utilise la bibliothèque cliente Go.

import (
        "code.google.com/p/google-api-go-client/mirror/v1"
        "fmt"
)

// RenameContact renames an existing contact for the current user.
func RenameContact(g *mirror.Service, contactId string,
        newDisplayName string) (*mirror.Contact, error) {
        s := &mirror.Contact{DisplayName: newDisplayName}
        r, err := g.Contacts.Patch(contactId, s).Do()
        if err != nil {
                fmt.Printf("An error occurred: %v\n", err)
                return nil, err
        }
        return r, nil
}

HTTP brut

N'utilise pas de bibliothèque cliente.

PATCH /mirror/v1/contacts/harold HTTP/1.1
Authorization: Bearer auth token
Content-Type: application/json
Content-Length: length

{
  "displayName": "Harold Penguin"
}