getInterestingObjectRecordsInCommunity

/api/v2/communities/{communityId}/objectrecords/interesting

All authorized users can retrieve the most interesting public object records in a community in eHive. A request to the /api/v2/communities/{communityId}/objectrecords/interesting resource will return an Object Records Collection JSON object.


Try the getInterestingObjectRecordsInCommunity Method

You can enter real values into the form below and test them against our live API. The response you see is a genuine JSON response from the API.

Name Data Type Parameter Type Length Required Description
communityId Integer Path 32-bit signed two's complement YES The id for the community you wish filter by.
hasImages Boolean Query - NO A query parameters that allows you to retrieve only Object Records that contain images.
offset Integer Query 32-bit signed two's complement NO The offset query parameters allows you to paginate your search results.
limit Integer Query 32-bit signed two's complement NO The limit query parameters allows you to limit the number of search results per request.

	

Code Examples

Included below are some code snippets from our code samples projects. The examples show the main elements needed to use our API client libraries.

Java

Prerequisites

  1. Download the Java API client library.
  2. Create a new Java class file.
  3. Add the Java API client library JAR to your classpath.
  4. Create a blank file that is accessible from wherever you are running this example. The file is used to store your API authentication token, so it must be readable and writable. You can name the file anything you like as long as it is valid in Java.

Start Coding

  1. Instantiate an EHiveApi object. The EHiveApi object contains all of the methods available in the API. The API requires authentication credentials so you will need to configure your EHiveApi object with valid credentials. There are a number of ways to instantiate the EHiveApi object but for this example you will simply pass all of the parameters you need into the EHiveApi object's constructor:
    private static String clientId = "...462";
    private static String clientSecret = "...98a9";
    private static String trackingId = "...eaca";
    private static String pathToOauthPropertiesFile = "oauth.properties";
    ...
    EHiveApi eHiveApi = new EHiveApi(clientId, clientSecret, trackingId, pathToOauthPropertiesFile);
  2. Invoke the getInterestingObjectRecordsInCommunity() method and assign the return value to an ObjectRecordsCollection domain object as follows:
    ObjectRecordsCollection objectRecordsCollection = eHiveApi.getInterestingObjectRecordsInCommunity(1001, false, 0, 12);
  3. Access the ObjectRecord information using the ObjectRecord domain object's getter method.
    Long recordId = objectRecord.getObjectRecordId();
    System.out.println(recordId);

View the full example below.

import com.ehive.api.EHiveApi;
import com.ehive.api.domain.objects.Attribute;
import com.ehive.api.domain.objects.Field;
import com.ehive.api.domain.objects.FieldRow;
import com.ehive.api.domain.objects.FieldSet;
import com.ehive.api.domain.objects.Media;
import com.ehive.api.domain.objects.MediaRow;
import com.ehive.api.domain.objects.MediaSet;
import com.ehive.api.domain.objects.ObjectRecord;
import com.ehive.api.domain.objects.ObjectRecordsCollection;
import com.ehive.api.domain.objects.Attribute.AttributeIdentifier;
import com.ehive.api.exceptions.EHiveApiException;
import com.ehive.api.exceptions.EHiveFatalServerException;
import com.ehive.api.exceptions.EHiveForbiddenException;
import com.ehive.api.exceptions.EHiveNotFoundException;
import com.ehive.api.exceptions.EHiveUnauthorizedException;

public class GetInterestingObjectRecordsInCommunity {
	
	private static String clientId = "...462"; 
	private static String clientSecret = "...98a9"; 
	private static String trackingId = "...eaca"; 
	private static String pathToOauthPropertiesFile = "oauth.properties";
	
	private static Integer community_id = 1001;
	
	private static Boolean hasImages = false;
	private static Integer offset = 0;
	private static Integer limit = 12;
	
	public static void main(String[] args) throws EHiveApiException, EHiveFatalServerException, EHiveNotFoundException, EHiveUnauthorizedException, EHiveForbiddenException {
		
		// Instantiate the EHiveApi object
		EHiveApi eHiveApi = new EHiveApi(clientId, clientSecret, trackingId, pathToOauthPropertiesFile);
		
		// Invoke an API method
		ObjectRecordsCollection objectRecordsCollection = eHiveApi.getInterestingObjectRecordsInCommunity(community_id, hasImages, offset, limit);
		
		// Print some output using the returned object records collection
		printObjectRecordInfo(objectRecordsCollection);
		
	}
	
	private static void printObjectRecordInfo(ObjectRecordsCollection objectRecordsCollection) {
		StringBuilder stringBuilder = new StringBuilder();
		
		stringBuilder.append("Search results found: " + objectRecordsCollection.getTotalObjects() + "\n\n");
		stringBuilder.append("----------------------------------------------------------------------------\n\n");
		
		for (ObjectRecord objectRecord : objectRecordsCollection.getObjectRecords()) {
			stringBuilder.append("Record ID: " + objectRecord.getObjectRecordId().toString() + "\n\n");
			
			for (FieldSet fieldSet : objectRecord.getFieldSets()) {
				stringBuilder.append("FIELD SET: " + fieldSet.getIdentifier() + "\n");
				
				for (FieldRow fieldRow : fieldSet.getFieldRows()) {
					for (Field field : fieldRow.getFields()) {
						for (Attribute attribute : field.getAttributes()) {
							if (AttributeIdentifier.getIdentifier(attribute.getKey()) == AttributeIdentifier.LABEL) { 
								stringBuilder.append(attribute.getValue() + ":");
							} else if (AttributeIdentifier.getIdentifier(attribute.getKey()) == AttributeIdentifier.VALUE) {
								stringBuilder.append("\t   " + attribute.getValue() + "\n\n");
							}
						}
					}
				}
				stringBuilder.append("\n\n");
			}
			for (MediaSet mediaSet : objectRecord.getMediaSets()) {
				stringBuilder.append(mediaSet.getIdentifier().toUpperCase() + " URL: \n");
				
				for (MediaRow mediaRow : mediaSet.getMediaRows()) {
					for (Media media : mediaRow.getMedia()) {
						for (Attribute attribute : media.getAttributes()) {
							if (AttributeIdentifier.getIdentifier(attribute.getKey()) == AttributeIdentifier.URL) { 
								stringBuilder.append(attribute.getValue() + "\n");
							} 
						}
					}
				}
			}
			stringBuilder.append("----------------------------------------------------------------------------\n\n");
		}
		System.out.println(stringBuilder.toString());
	}
}
		


PHP

Prerequisites

  1. Download the PHP API client library.
  2. Create a new php script file.
  3. Add EHiveApi.php from the PHP API client library to your include path.
  4. Locate the oauth.tok file in the transport/oauth directory of the PHP API client library and ensure that it has both read and write permission enabled.

Start Coding

  1. Instantiate an EHiveApi object. The EHiveApi class contains all of the functions available to you in the API.
  2. Configure your EHiveApi object with valid authentication credentials. There are a number of ways to instantiate the EHiveApi object but for this example you will simply pass all of the parameter you need into the EHiveApi object's constructor:
    private static $clientId = "...5935";
    private static $clientSecret = "...4c4b";
    private static $trackingId = "...7861";
    
    ...
    $eHiveApi = new EHiveApi(GetInterestingObjectRecordsInCommunityDemo::$clientId, 
    						 GetInterestingObjectRecordsInCommunityDemo::$clientSecret, 
    						 GetInterestingObjectRecordsInCommunityDemo::$trackingId);
  3. Invoke the getInterestingObjectRecordsInCommunity() method and assign the return value to a variable as follows:
    $objectRecordsCollection = $eHiveApi->getInterestingObjectRecordsInCommunity(1001, false, 0, 12);
  4. Access the information on the ObjectRecord object.
    echo $objectRecord->objectRecordId;

View the full example below.


require_once '../../lib/ehive_api_client-php-1.0.0/EHiveApi.php';

class GetInterestingObjectRecordsInCommunityDemo {
	
	private static $clientId = "...5935";
	private static $clientSecret = "...4c4b";
	private static $trackingId = "...7861";
	
	
	private static $communityId = 1001;
	private static $hasImages = false;
	private static $catalogueType = "";
	private static $offset = 0;
	private static $limit = 12;

	public function printObjectRecordsInEHiveInfo() {
		
		// Instantiate the EHiveApi object
		$eHiveApi = new EHiveApi(
				GetInterestingObjectRecordsInCommunityDemo::$clientId, 
				GetInterestingObjectRecordsInCommunityDemo::$clientSecret, 
				GetInterestingObjectRecordsInCommunityDemo::$trackingId);
		
		// Invoke an API method
		$objectRecordsCollection = $eHiveApi->getInterestingObjectRecordsInCommunity(
				GetInterestingObjectRecordsInCommunityDemo::$communityId, 
				GetInterestingObjectRecordsInCommunityDemo::$catalogueType,
				GetInterestingObjectRecordsInCommunityDemo::$hasImages, 
				GetInterestingObjectRecordsInCommunityDemo::$offset, 
				GetInterestingObjectRecordsInCommunityDemo::$limit);
		
		// Print some output using the returned records collection object
		echo "\n\nSearch results found: {$objectRecordsCollection->totalObjects} \n\n";
		echo "----------------------------------------------------------------------------\n\n";
		
		foreach ($objectRecordsCollection->objectRecords as $key => $objectRecord) {
			echo "Record ID: {$objectRecord->objectRecordId}\n";
			
			foreach ($objectRecord->fieldSets as $key => $fieldSet) {
				echo "FIELD SET: {$fieldSet->identifier}\n";
				
				foreach ($fieldSet->fieldRows as $key => $fieldRow) {
					foreach ($fieldRow->fields as $key => $field) {
						foreach ($field->attributes as $key => $attribute) {
							if ($attribute->key == 'label') { 
								echo "{$attribute->value}:";
							} else if ($attribute->key == 'value') {
								echo "\t   {$attribute->value}\n\n";
							}
						}
					}
				}
				echo "\n\n";
			}
			
			foreach ($objectRecord->mediaSets as $key => $mediaSet) {
				echo strtoupper($mediaSet->identifier) . " URL: \n";
				
				foreach ($mediaSet->mediaRows as $key => $mediaRow) {
					foreach ($mediaRow->media as $key => $media) {
						foreach ($media->attributes as $key => $attribute) {
							if ($attribute->key == 'url') { 
								echo "\t   {$attribute->value}\n";
							} 
						}
					}
				}
			}
			echo "----------------------------------------------------------------------------\n\n";
		}
	}
}

$getInterestingObjectRecordsInCommunityDemo = new GetInterestingObjectRecordsInCommunityDemo();

$getInterestingObjectRecordsInCommunityDemo->printObjectRecordsInEHiveInfo();