Table of contents

Item Object

An Item Object contains all the metadata for an individual Item. This documentation outlines the primary fields maintained by the GrayMeta Platform, but does not include file-type specific metadata.

File information

The GrayMeta Platform extracts and maintains

  • id - (string) Unique ID for this item
  • name - (string) Name of the item
  • size - (int) Size of the file in bytes
  • stow_url - (URL string) A URL that uniquely identifies the item
  • mime_type - (string) The MIME type of the item (if known)
  • last_harvested - (timestamp) When the item was last harvested
  • last_modified - (timestamp) When the item was last modified
  • etag - (string) String describing the contents of the item, if it changes it indicates that the file has changed
  • thumbnail - (object) Details about the thumbnail for this item (see the Thumbnail API documentation for more information)
  • width & height - (int) Dimensions of the item (relates to images and videos)
  • geo - (object) geolocation information (if known)

Location and Container

The GrayMeta Platform keeps track of where the Item is using a range of Container and Location specific fields:

  • location_id - (string) ID of the Location of this Item
  • location_kind - (string) The kind of Location (e.g. azure or s3) - see Location Kinds API
  • location_name - (string) Human readable name of the Location
  • stow_container_id - (string) ID of the Container
  • stow_container_name - (string) Name of the Container

Content hashes

The GrayMeta Platform maintains hashes of the contents of the item:

  • c4id - (string) The Cinema Content Creation Cloud c4 identifier
  • md5 - (string) MD5 checksum of the contents of the file
  • sha1 - (string) SHA-1 checksum of the contents of the file
  • sha512 - (string) SHA-512 checksum of the contents of the file

Summary

The GrayMeta Platform summarizes enrichment data for each item

  • summary.tags - (array) Descriptive tags of objects found within the item
  • summary.tags[].name - (string) The tag string
  • summary.tags[].confidence - (number) How confident the system is that the tag is accurate. Zero indicates unknown confidence.
  • summary.tags[].source - (string) Source denotes the cognitive service used to detect tag
  • summary.people - (array) The people found within the item
  • summary.people[].name - (string) Name of the person (if known)
  • summary.people[].age - (number) Age approximates years old of face found
  • summary.people[].gender - (string) Gender detects if face is male or female
  • summary.people[].rectangle - (object) Contains top, left, height and width of rectangle that denotes location of found face with (0,0) at top left corner
  • summary.people[].top - (number) The y coordinate of top of rectangle
  • summary.people[].left - (number) The x coordinate of the left side of the rectangle.
  • summary.people[].width - (number) Width of rectangle
  • summary.people[].height - (number) Height of rectangle
  • summary.people[].source - (string) Source denotes the cognitive service used to detect face
  • summary.description.text - (string) Description of item that contains the highest confidence
  • summary.description.source - (string) Source of description with the highest confidence
  • summary.description.confidence - (float64) Confidence of description
  • summary.descriptions - (array) All descriptive phrases retrieved from all cognitive services for the item
  • summary.descriptions[].text - (string) Descriptive phrase for the item
  • summary.descriptions[].confidence - (number) How confident the system is that the description is accurate. Zero indicates unknown confidence.
  • summary.descriptions[].source - (string) Source denotes the cognitive service used to generate descriptive text
  • summary.logos - (array) Logos detected within the item
  • summary.logos[].name - (string) Name of the logo found
  • summary.logos[].size - (string) Size category of the logo found (tiny, small, medium, large)
  • summary.logos[].logoquadrilateral - (array) Contains the coordinates of the quadrilateral that encloses the logo
  • summary.logos[].confidence - (number) How confident the system is that the logo is accurate. Zero indicates unknown confidence.
  • summary.logos[].source - (string) Source denotes the cognitive service used to generate logo information
  • summary.locations - (array) Landmarks and locations detected within the item
  • summary.locations.feature_collection - (array) Feature collection of all feature objects in GeoJson format
  • summary.locations.feature_collection.type - (string) Feature type
  • summary.locations.feature_collection.geometry - (object) Feature collection of all feature objects
  • summary.locations.feature_collection.geometry.coordinates - (array) Latitude and longitude coordinates
  • summary.locations.feature_collection.geometry.type - (string) Type of geometry
  • summary.locations.feature_collection.properties - (object) Custom properties for feature
  • summary.locations.feature_collection.properties.name - (string) Name of location
  • summary.locations.feature_collection.properties.confidence - (number) Confidence of location
  • summary.locations.feature_collection.properties.source - (string) Source denotes the cognitive service used to determine location information
  • summary.ocr - (array) Summary of OCR text extracted from the item
  • summary.ocr[].text - (string) OCR text
  • summary.ocr[].source - (string) Source denotes the cognitive service used to gather OCR data
  • summary.speech_to_text - (array) Summary of speech to text extracted from the item
  • summary.speech_to_text[].transcript - (string) Transcript of speech to text of audio or video item
  • summary.speech_to_text[].transcript.start_at - (number) Time in seconds denoting start time of transcript
  • summary.speech_to_text[].transcript.end_at - (number) Time in seconds denoting end time of transcript
  • summary.speech_to_text[].transcript.text - (string) Speech to text of audio or video item between start_at and end_at time
  • summary.speech_to_text[].source - (string) Source denotes the service used to extract speech to text of audio or video item
  • summary.nsfw - (object) Object indicating the result of adult or NSFW content detection
  • summary.nsfw.source - (string) A key indicating the source of the decision
  • summary.nsfw.nsfw - (bool) Whether the item is considered not suitable for work or not
  • summary.nsfw.nsfw_score - (number) A value from 0 to 1 indicating how unsuitable the item is. 0 means safe, 1 means unsafe.

Magnets and Enrichers

The GrayMeta Platform harvests each item by extracting data from magnets and enriching data with enrichers:

  • magnets - (array) Summary of magnets and enrichers run status
  • magnets.errors - (array) Error messages surfaced from failed magnets and enrichers
  • magnets.has_errors - (array) Magnet and enrichers that did not complete successfully
  • magnets.ran - (array) Magnets and enrichers that ran on the item

Example:

	"magnets": {
		"errors": null,
		"has_errors": null,
		"ran": [
			"enricher(amazon_rekognition:1.0)",
			"enricher(enrich_geo:1.0)",
			"enricher(enrich_thumb_phash:1.0)",
			"enricher(enrich_thumbnail:1.0)",
			"enricher(enrich_video_azure:1.0)",
			"enricher(enrich_video_google:1.0)",
			"enricher(enrich_video_phash:1.0)",
			"enricher(promote_emotions:1.0)",
			"enricher(promote_location:1.0)",
			"enricher(promote_mediainfo:1.0)",
			"enricher(promote_mime_category:1.0)",
			"magnet(github.com/graymeta/magnets/csv:1.0)",
			"magnet(github.com/graymeta/magnets/m2ts:1.0)",
			"magnet(github.com/graymeta/mf2/magnets/audiopeak:2.0)",
			"magnet(github.com/graymeta/mf2/magnets/dbf:1.0)",
			"magnet(github.com/graymeta/mf2/magnets/docx:3.0)",
			"magnet(github.com/graymeta/mf2/magnets/dpx:2.0)",
			"magnet(github.com/graymeta/mf2/magnets/email:2.0)",
			"magnet(github.com/graymeta/mf2/magnets/exiv2:1.0)",
			"magnet(github.com/graymeta/mf2/magnets/fdx:2.0)",
			"magnet(github.com/graymeta/mf2/magnets/google_speech:1.0)",
			"magnet(github.com/graymeta/mf2/magnets/hashes:1.0)",
			"magnet(github.com/graymeta/mf2/magnets/html:1.0)",
			"magnet(github.com/graymeta/mf2/magnets/json:1.0)",
			"magnet(github.com/graymeta/mf2/magnets/mediainfo:3.0)",
			"magnet(github.com/graymeta/mf2/magnets/ocr:2.0)",
			"magnet(github.com/graymeta/mf2/magnets/pdf:3.0)",
			"magnet(github.com/graymeta/mf2/magnets/pocketsphinx_speech_to_text:1.0)",
			"magnet(github.com/graymeta/mf2/magnets/pptx:1.0)",
			"magnet(github.com/graymeta/mf2/magnets/prproj:1.0)",
			"magnet(github.com/graymeta/mf2/magnets/psd:1.0)",
			"magnet(github.com/graymeta/mf2/magnets/samma:1.0)",
			"magnet(github.com/graymeta/mf2/magnets/speech_watson:1.0)",
			"magnet(github.com/graymeta/mf2/magnets/thumbnailer:1.0)",
			"magnet(github.com/graymeta/mf2/magnets/tokens:1.0)",
			"magnet(github.com/graymeta/mf2/magnets/video_main_frames:1.0)",
			"magnet(github.com/graymeta/mf2/magnets/video_previews:1.0)",
			"magnet(github.com/graymeta/mf2/magnets/volumedetect:3.0)",
			"magnet(github.com/graymeta/mf2/magnets/weather:1.1)",
			"magnet(github.com/graymeta/mf2/magnets/x2j:1.0)",
			"magnet(github.com/graymeta/mf2/magnets/xlsx:1.0)"
		]
	},

This documentation is generated from the latest version of GrayMeta Platform. For documentation relevant to your own deployed version, please use the documentation inside the application.