আপনি 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
জাভা
Listsources = 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();