ডোমেন পরিচিতি এবং প্রোফাইল পড়ুন

আপনি Get Ready to Use the People API-এর ধাপগুলি সম্পূর্ণ করার পরে, আপনি ডিরেক্টরি পরিচিতি এবং প্রোফাইলগুলি পড়তে প্রস্তুত৷

নিম্নলিখিত কোড নমুনাগুলি দেখায় কিভাবে কয়েকটি সহজ অনুরোধ পাঠাতে হয়। পদ্ধতির সম্পূর্ণ তালিকার জন্য, রেফারেন্স ডকুমেন্টেশন দেখুন।

ডিরেক্টরির লোকেদের তালিকা করুন

ব্যবহারকারীর ডোমেন ডিরেক্টরিতে পরিচিতি এবং প্রোফাইলের একটি তালিকা পেতে , নিম্নলিখিত কোডটি ব্যবহার করুন:

প্রোটোকল

GET /v1/people:listDirectoryPeople?sources=DIRECTORY_SOURCE_TYPE_DOMAIN_CONTACT&sources=DIRECTORY_SOURCE_TYPE_DOMAIN_PROFILE&readMask=names,emailAddresses HTTP/1.1
Host: people.googleapis.com

জাভা

List<String> sources = new ArrayList<>();
sources.add("DIRECTORY_SOURCE_TYPE_DOMAIN_CONTACT");
sources.add("DIRECTORY_SOURCE_TYPE_DOMAIN_PROFILE");

ListDirectoryPeopleResponse response = peopleService.people().listDirectoryPeople()
    .setSources(sources)
    .setReadMask("metadata,names,emailAddresses")
    .execute();

List<Person> people = response.getPeople();

পরিবর্তিত হয়েছে যে ডিরেক্টরি মানুষ তালিকা

জাভা

// Initial request
List<String> sources = new ArrayList<>();
sources.add("DIRECTORY_SOURCE_TYPE_DOMAIN_CONTACT");
sources.add("DIRECTORY_SOURCE_TYPE_DOMAIN_PROFILE");

ListDirectoryPeopleResponse fullSyncResponse = peopleService.people().listDirectoryPeople()
    .setSources(sources)
    .setReadMask("metadata,names,emailAddresses")
    .setRequestSyncToken(true)
    .execute();
// Fetch all the pages
while (fullSyncResponse.getNextPageToken() != null) {
  fullSyncResponse = peopleService.people().listDirectoryPeople()
      .setSources(sources)
      .setReadMask("metadata,names,emailAddresses")
      .setRequestSyncToken(true)
      .setPageToken(fullSyncResponse.getNextPageToken())
      .execute();
}

// Some time passes

// Fetch incremental changes using the sync token returned in the last fullSyncResponse.
try {
  ListDirectoryPeopleResponse incrementalSyncResponse = peopleService.people().listDirectoryPeople()
      .setSources(sources)
      .setReadMask("metadata,names,emailAddresses")
      .setSyncToken(fullSyncResponse.getNextSyncToken())
      .execute();
  for (Person person : incrementalSyncResponse.getDirectoryPeople()) {
    handlePerson(person);
  }
  
  // Fetch all the pages
  while (incrementalSyncResponse.getNextPageToken() != null) {
    incrementalSyncResponse = peopleService.people().listDirectoryPeople
        .setSources(sources)
        .setReadMask("metadata,names,emailAddresses")
        .setSyncToken(fullSyncResponse.getNextSyncToken())
        .setPageToken(incrementalSyncResponse.getNextPageToken())
        .execute();
    for (Person person : incrementalSyncResponse.getDirectoryPeople()) {
      handlePerson(person);
    }
  }
} catch (GoogleJsonResponseException e) {
  if (e.getStatusCode() == 410) {
    // Sync token expired. Make full sync request.
  }
}

void handlePerson(Person person) {
  if (person.getMetadata().getDeleted()) {
    // Handle deleted person
  } else {
    // Handle changed person
  }
}

ListDirectory- এ সিঙ্ক আচরণ সম্পর্কে আরও বিশদ বিবরণ।

ডিরেক্টরির মানুষ অনুসন্ধান করুন

ব্যবহারকারীর ডোমেন ডিরেক্টরিতে পরিচিতি এবং প্রোফাইলের একটি তালিকা পেতে একটি উপসর্গ কোয়েরির সাথে মেলে , নিম্নলিখিত কোডটি ব্যবহার করুন:

প্রোটোকল

POST /v1/people:searchDirectoryPeople?query=John&sources=DIRECTORY_SOURCE_TYPE_DOMAIN_CONTACT&sources=DIRECTORY_SOURCE_TYPE_DOMAIN_PROFILE&readMask=names,emailAddresses HTTP/1.1
Host: people.googleapis.com

জাভা

List sources = new ArrayList<>();
sources.add("DIRECTORY_SOURCE_TYPE_DOMAIN_CONTACT");
sources.add("DIRECTORY_SOURCE_TYPE_DOMAIN_PROFILE");

SearchDirectoryPeopleResponse response = peopleService.people().searchDirectoryPeople()
    .setQuery("John")
    .setSources(sources)
    .setReadMask("metadata,names,emailAddresses")
    .execute();

List<Person> people = response.getPeople();