# Objects

## 1. Complete Data Set

This is the structure of the complete data set holding your API key and a database of all content entries associated with your API key.

This data set is retrieved by making the [`/query`](https://docs.echo3d.com/queries#get-entries) API call.

{% tabs %}
{% tab title="Object" %}

```
{
  "apiKey": "API_KEY",    // Your API Key
  "db": {                 // A collection of all content entries                
    ...
  }
}
```

{% endtab %}

{% tab title="Example" %}

```
{
  "apiKey": "API_KEY",
  "db": {
    "edc343c7-37d3-4132-9cd7-52c4902b24c7": {
      "id": "edc343c7-37d3-4132-9cd7-52c4902b24c7",
      "target": {
        "id": "0c63d1f8-8038-478b-8b60-df6cedeff5cb",
        "type": "BRICK_TARGET",
        "holograms": [
          "0839a395-4a48-47d1-b819-a923184a7314"
        ]
      },
      "hologram": {
        "filename": "Skyscraper.obj",
        "storageID": "d686a655-e800-430d-bfd2-e38cdfb0c9e9",
        "textureFilenames": [
          "Skyscraper_BaseColor.png"
        ],
        "textureStorageIDs": [
          "f9b43711-cf79-44e5-90c5-ac781c8d9288"
        ],
        "materialFilename": "Skyscraper.mtl",
        "materialStorageID": "891d0b32-4f4b-4f7d-a2e2-d5922611928d",
        "id": "0839a395-4a48-47d1-b819-a923184a7314",
        "type": "MODEL_HOLOGRAM",
        "targetID": "0c63d1f8-8038-478b-8b60-df6cedeff5cb"
      },
      "sdks": [
        true,
        true,
        false,
        true,
        false,
        false,
        false,
        true,
        true
      ],
      "additionalData": {
        "qrWebXRStorageID": "5ead9dc6-0b11-4133-b342-d43ac95d1116",
        "qrARjsStorageFilename": "qr_arjs_blue-water-4646.png",
        "qrARjsTargetStorageFilename": "qr_arjs_blue-water-4646.patt",
        "vuforiaHologramStorageID": "7068cd74-6c9f-4106-9326-585c56fa4475",
        "glbHologramStorageID": "d686a655-e800-430d-bfd2-e38cdfb0c9e9.glb",
        "qrARjsMarkerStorageFilename": "marker_qr_arjs_blue-water-4646.png",
        "source": "Skyscraper by Poly by Google, CC-BY, https://poly.google.com/view/dIsZyy2FUY-",
        "qrARjsTargetStorageID": "e85b7db2-42a9-4f76-aacc-8f7be4a5e05f",
        "usdzHologramStorageID": "d686a655-e800-430d-bfd2-e38cdfb0c9e9.usdz",
        "qrARjsStorageID": "f78b7b84-979d-4dfc-b478-e369b560a623",
        "accessHistory": "[\"1587253959697\",\"1587254928553\",\"1587254944219\",\"1587254945465\"]",
        "createdAt": "1587253959697",
        "qrWebXRStorageFilename": "qr_webxr_blue-water-4646.png",
        "usdzHologramStorageFilename": "Skyscraper.usdz",
        "vuforiaHologramStorageFilename": "Skyscraper.h",
        "lastAccessed": "1587254945465",
        "qrARjsMarkerStorageID": "343df194-e7ae-4c34-adbf-5718542aca37",
        "glbHologramStorageFilename": "Skyscraper.glb"
      }
    }
  }
}
```

{% endtab %}
{% endtabs %}

## 2. Entries Database

This is the structure of the collection of all content entries associated with your API key.

This database is retrieved by making the [`/query`](https://docs.echo3d.com/queries#get-entries) API call and referring to its `db` component.

{% tabs %}
{% tab title="Object" %}

```
"db": {                 // A collection of all content entries                
    "ENTRY_ID_1": {       // First content entry
      ...
    }
    "ENTRY_ID_2": {       // Second content entry
      ...
    }
    ...                   // Additonal content entries
  }
```

{% endtab %}

{% tab title="Example" %}

```
"db": {
    "edc343c7-37d3-4132-9cd7-52c4902b24c7": {
      "id": "edc343c7-37d3-4132-9cd7-52c4902b24c7",
      "target": {
        "id": "0c63d1f8-8038-478b-8b60-df6cedeff5cb",
        "type": "BRICK_TARGET",
        "holograms": [
          "0839a395-4a48-47d1-b819-a923184a7314"
        ]
      },
      "hologram": {
        "filename": "Skyscraper.obj",
        "storageID": "d686a655-e800-430d-bfd2-e38cdfb0c9e9",
        "textureFilenames": [
          "Skyscraper_BaseColor.png"
        ],
        "textureStorageIDs": [
          "f9b43711-cf79-44e5-90c5-ac781c8d9288"
        ],
        "materialFilename": "Skyscraper.mtl",
        "materialStorageID": "891d0b32-4f4b-4f7d-a2e2-d5922611928d",
        "id": "0839a395-4a48-47d1-b819-a923184a7314",
        "type": "MODEL_HOLOGRAM",
        "targetID": "0c63d1f8-8038-478b-8b60-df6cedeff5cb"
      },
      "sdks": [
        true,
        true,
        false,
        true,
        false,
        false,
        false,
        true,
        true
      ],
      "additionalData": {
        "qrWebXRStorageID": "5ead9dc6-0b11-4133-b342-d43ac95d1116",
        "qrARjsStorageFilename": "qr_arjs_blue-water-4646.png",
        "qrARjsTargetStorageFilename": "qr_arjs_blue-water-4646.patt",
        "vuforiaHologramStorageID": "7068cd74-6c9f-4106-9326-585c56fa4475",
        "glbHologramStorageID": "d686a655-e800-430d-bfd2-e38cdfb0c9e9.glb",
        "qrARjsMarkerStorageFilename": "marker_qr_arjs_blue-water-4646.png",
        "source": "Skyscraper by Poly by Google, CC-BY, https://poly.google.com/view/dIsZyy2FUY-",
        "qrARjsTargetStorageID": "e85b7db2-42a9-4f76-aacc-8f7be4a5e05f",
        "usdzHologramStorageID": "d686a655-e800-430d-bfd2-e38cdfb0c9e9.usdz",
        "qrARjsStorageID": "f78b7b84-979d-4dfc-b478-e369b560a623",
        "accessHistory": "[\"1587253959697\",\"1587254928553\",\"1587254944219\",\"1587254945465\",\"1587254963484\"]",
        "createdAt": "1587253959697",
        "qrWebXRStorageFilename": "qr_webxr_blue-water-4646.png",
        "usdzHologramStorageFilename": "Skyscraper.usdz",
        "vuforiaHologramStorageFilename": "Skyscraper.h",
        "lastAccessed": "1587254963484",
        "qrARjsMarkerStorageID": "343df194-e7ae-4c34-adbf-5718542aca37",
        "glbHologramStorageFilename": "Skyscraper.glb"
      }
    }
  }
```

{% endtab %}
{% endtabs %}

## 3. Content Entries

This is the structure of a single content entry in the database associated with your API key.

This content entry is retrieved by making the [`/query`](https://docs.echo3d.com/queries#get-entries) API call and referring to the`db['ENTRY_ID']` component.

{% tabs %}
{% tab title="Object" %}

```
"ENTRY_ID": {             // First content entry
      "id": "ENTRY_ID",     // Content entry ID
      "hologram": {         // The hologram
        ...
      },
      "target": {           // The target
        ...
      },
      "additionalData": {   // The metadata sscocaite with this entry
        ...
      },
      "sdks": [             // A list of SDK supporting this content
        ...
      ]
    }
```

{% endtab %}

{% tab title="Example" %}

```
"edc343c7-37d3-4132-9cd7-52c4902b24c7": {
      "id": "edc343c7-37d3-4132-9cd7-52c4902b24c7",
      "target": {
        "id": "0c63d1f8-8038-478b-8b60-df6cedeff5cb",
        "type": "BRICK_TARGET",
        "holograms": [
          "0839a395-4a48-47d1-b819-a923184a7314"
        ]
      },
      "hologram": {
        "filename": "Skyscraper.obj",
        "storageID": "d686a655-e800-430d-bfd2-e38cdfb0c9e9",
        "textureFilenames": [
          "Skyscraper_BaseColor.png"
        ],
        "textureStorageIDs": [
          "f9b43711-cf79-44e5-90c5-ac781c8d9288"
        ],
        "materialFilename": "Skyscraper.mtl",
        "materialStorageID": "891d0b32-4f4b-4f7d-a2e2-d5922611928d",
        "id": "0839a395-4a48-47d1-b819-a923184a7314",
        "type": "MODEL_HOLOGRAM",
        "targetID": "0c63d1f8-8038-478b-8b60-df6cedeff5cb"
      },
      "additionalData": {
        "qrWebXRStorageID": "5ead9dc6-0b11-4133-b342-d43ac95d1116",
        "qrARjsStorageFilename": "qr_arjs_blue-water-4646.png",
        "qrARjsTargetStorageFilename": "qr_arjs_blue-water-4646.patt",
        "vuforiaHologramStorageID": "7068cd74-6c9f-4106-9326-585c56fa4475",
        "glbHologramStorageID": "d686a655-e800-430d-bfd2-e38cdfb0c9e9.glb",
        "qrARjsMarkerStorageFilename": "marker_qr_arjs_blue-water-4646.png",
        "source": "Skyscraper by Poly by Google, CC-BY, https://poly.google.com/view/dIsZyy2FUY-",
        "qrARjsTargetStorageID": "e85b7db2-42a9-4f76-aacc-8f7be4a5e05f",
        "usdzHologramStorageID": "d686a655-e800-430d-bfd2-e38cdfb0c9e9.usdz",
        "qrARjsStorageID": "f78b7b84-979d-4dfc-b478-e369b560a623",
        "accessHistory": "[\"1587253959697\",\"1587254928553\",\"1587254944219\",\"1587254945465\",\"1587254963484\",\"1587255480604\",\"1587255693450\"]",
        "createdAt": "1587253959697",
        "qrWebXRStorageFilename": "qr_webxr_blue-water-4646.png",
        "usdzHologramStorageFilename": "Skyscraper.usdz",
        "vuforiaHologramStorageFilename": "Skyscraper.h",
        "lastAccessed": "1587255693450",
        "qrARjsMarkerStorageID": "343df194-e7ae-4c34-adbf-5718542aca37",
        "glbHologramStorageFilename": "Skyscraper.glb"
      },
      "sdks": [
        true,
        true,
        false,
        true,
        false,
        false,
        false,
        true,
        true
      ]
    }
```

{% endtab %}
{% endtabs %}

## 4. Assets

This is the structure of a single asset inside a single content entry in the database based on type.

This asset is retrieved by making the [`/query`](https://docs.echo3d.com/queries#get-entries) API call and referring to the`db['ENTRY_ID']['hologram']` component.

### Any Type of Asset

This is data available for any asset of any type.

{% tabs %}
{% tab title="Object" %}

```
"hologram": {
  "id": "HOLOGRAM_ID",          // Hologram ID
  "type": "HOLOGRAM_TYPE",      // Hologram type, e.g. MODEL_HOLOGRAM, VIDEO_HOLOGRAM, or IMAGE_HOLOGRAM
  "targetID": "TARGET_ID",      // The ID of the associated target
  "filename": "FILENAME",       // The filename of the hologram
  "storageID": "STORAGE_ID"     // The storage ID of the hologram file
},
```

{% endtab %}

{% tab title="Example" %}

```
"hologram": {
  "id": "9d45a992-4f27-4559-9eef-6cec05f79ce7",
  "type": "VIDEO_HOLOGRAM",
  "targetID": "7daa5469-2ac7-40f6-8823-814ac2e596f8",
  "filename": "big_buck_bunny.mp4",
  "storageID": "fa67df18-2a60-4bb6-a7b6-3d5d6a80c6d8"
},
```

{% endtab %}
{% endtabs %}

### Model Assets

This is data available for model assets.

{% tabs %}
{% tab title="Object" %}

```
"hologram": {
        "id": "HOLOGRAM_ID",                      // Hologram ID
        "type": "MODEL_HOLOGRAM",                 // Hologram type
        "targetID": "TARGET_ID",                  // The ID of the associated target
        "filename": "FILENAME",                   // The filename of the hologram
        "storageID": "STORAGE_ID",                // The storage ID of the hologram file
        "textureFilenames": [                     // A collection of the filenames of the hologram's texture files
          "TEXTURE_FILENAME_1",                      // The filename of the first texture file
          "TEXTURE_FILENAME_2",                      // The filename of the second texture file
          ...                                        // Additional texture files
        ],
        "textureStorageIDs": [                     // A collection of the storage IDs of the hologram's texture files
          "TEXTURE_STORAGE_ID_1",                    // The storage ID of the first texture file
          "TEXTURE_STORAGE_ID_2",                    // The storage ID of the second texture file
          ...                                        // Additional texture files
        ],
        "materialFilename": "MATERIAL_FILENAME",   // The filename of the hologram's material file
        "materialStorageID": "MATERIAL STORAGE_ID" // The storage ID of the hologram's material file
      },
```

{% endtab %}

{% tab title="Example" %}

```
"hologram": {
        "id": "0839a395-4a48-47d1-b819-a923184a7314",
        "type": "MODEL_HOLOGRAM",
        "targetID": "0c63d1f8-8038-478b-8b60-df6cedeff5cb",
        "filename": "Skyscraper.obj",
        "storageID": "d686a655-e800-430d-bfd2-e38cdfb0c9e9",
        "textureFilenames": [
          "Skyscraper_BaseColor.png"
        ],
        "textureStorageIDs": [
          "f9b43711-cf79-44e5-90c5-ac781c8d9288"
        ],
        "materialFilename": "Skyscraper.mtl",
        "materialStorageID": "891d0b32-4f4b-4f7d-a2e2-d5922611928d"
      },
```

{% endtab %}
{% endtabs %}

### Video Assets

&#x20;This is data available for video assets.

{% tabs %}
{% tab title="Object" %}

```
"hologram": {
  "id": "HOLOGRAM_ID",          // Hologram ID
  "type": "VIDEO_HOLOGRAM",      // Hologram type
  "targetID": "TARGET_ID",      // The ID of the associated target
  "filename": "FILENAME",       // The filename of the hologram
  "storageID": "STORAGE_ID"     // The storage ID of the hologram file
},
```

{% endtab %}

{% tab title="Example" %}

```
"hologram": {
  "id": "9d45a992-4f27-4559-9eef-6cec05f79ce7",
  "type": "VIDEO_HOLOGRAM",
  "targetID": "7daa5469-2ac7-40f6-8823-814ac2e596f8",
  "filename": "big_buck_bunny.mp4",
  "storageID": "fa67df18-2a60-4bb6-a7b6-3d5d6a80c6d8"
},
```

{% endtab %}
{% endtabs %}

### Image Assets

This is data available for image assets.

{% tabs %}
{% tab title="Object" %}

```
"hologram": {
  "id": "HOLOGRAM_ID",          // Hologram ID
  "type": "VIDEO_HOLOGRAM",     // Hologram type; same as for video holograms
  "targetID": "TARGET_ID",      // The ID of the associated target
  "filename": "FILENAME",       // The filename of the hologram
  "storageID": "STORAGE_ID"     // The storage ID of the hologram file
},
```

{% endtab %}

{% tab title="Example" %}

```
"hologram": {
  "id": "9d45a992-4f27-4559-9eef-6cec05f79ce7",
  "type": "VIDEO_HOLOGRAM",
  "targetID": "7daa5469-2ac7-40f6-8823-814ac2e596f8",
  "filename": "air.png",
  "storageID": "fa67df18-2a60-4bb6-a7b6-3d5d6a80c6d8"
},
```

{% endtab %}
{% endtabs %}

## 5. Targets

This is the structure of a single target inside a single content entry in the database based on type.

This target is retrieved by making the [`/query`](https://docs.echo3d.com/queries#get-entries) API call and referring to the`db['ENTRY_ID']['target']` component.

### Any Type of Target

This is data available for any target of any type.

{% tabs %}
{% tab title="Object" %}

```
"target": {
  "id": "TARGET_ID",           // Target ID
  "type": "TARGET_TYPE",       // Target type, e.g. BRICK_TARGET, GEOLOCATION_TARGET, or IMAGE_TARGET
  "holograms": [               // A collection of IDs of holograms associated with this target
    "HOLOGRAM_ID_1",             // The ID of the first holograms
    "HOLOGRAM_ID_2",             // The ID of the second holograms
    ...                          // Additional holograms
  ]
},
```

{% endtab %}

{% tab title="Example" %}

```
"target": {
  "id": "0c63d1f8-8038-478b-8b60-df6cedeff5cb",
  "type": "BRICK_TARGET",
  "holograms": [
    "0839a395-4a48-47d1-b819-a923184a7314"
  ]
},
```

{% endtab %}
{% endtabs %}

### Surface Targets

This is the data available for surface targets.

{% tabs %}
{% tab title="Object" %}

```
"target": {
  "id": "TARGET_ID",           // Target ID
  "type": "BRICK_TARGET",      // Target type
  "holograms": [               // A collection of IDs of holograms associated with this target
    "HOLOGRAM_ID_1",             // The ID of the first holograms
    "HOLOGRAM_ID_2",             // The ID of the second holograms
    ...                          // Additional holograms
  ]
},
```

{% endtab %}

{% tab title="Example" %}

```
"target": {
  "id": "0c63d1f8-8038-478b-8b60-df6cedeff5cb",
  "type": "BRICK_TARGET",
  "holograms": [
    "0839a395-4a48-47d1-b819-a923184a7314"
  ]
},
```

{% endtab %}
{% endtabs %}

### Location Targets

{% tabs %}
{% tab title="Object" %}

```
"target": {
  "id": "TARGET_ID",           // Target ID
  "type": "GEOLOCATION_TARGET",// Target type
  "holograms": [               // A collection of IDs of holograms associated with this target
    "HOLOGRAM_ID_1",             // The ID of the first holograms
    "HOLOGRAM_ID_2",             // The ID of the second holograms
    ...                          // Additional holograms
  ],
  "country": "COUNTRY",       // The location's country, e.g. US
  "city": "CITY",             // The location's country, e.g. New York
  "place": "NAME",            // The location's name, e.g Times Square 
  "latitude": ##.######,      // The location's latitude coordinate
  "longitude": ##.######      // The location's longitude coordinate
},
```

{% endtab %}

{% tab title="Example" %}

```
"target": {
  "id": "803d5d89-1615-455d-ad49-15c69bfc3f4f",
  "type": "GEOLOCATION_TARGET",
  "holograms": [
    "303ee6b8-f63a-4827-99d5-073dad8569f6"
  ],
  "country": "US",
  "city": "New York",
  "place": "Times Square",
  "latitude": 40.713055,
  "longitude": -74.007225
},

```

{% endtab %}
{% endtabs %}

### Image Targets

{% tabs %}
{% tab title="Object" %}

```
"target": {
  "id": "TARGET_ID",           // Target ID
  "type": "BRICK_TARGET",      // Target type
  "holograms": [               // A collection of IDs of holograms associated with this target
    "HOLOGRAM_ID_1",             // The ID of the first holograms
    "HOLOGRAM_ID_2",             // The ID of the second holograms
    ...                          // Additional holograms
  ]
  "filename": "FILENAME",      // The filename of the image file
  "storageID": "STORAGE_ID"    // The storage ID of the image file
},
```

{% endtab %}

{% tab title="Example" %}

```
"target": {
  "id": "935a9bb9-3cbd-4c42-a899-68dc41567e7a",
  "type": "IMAGE_TARGET",
  "holograms": [
    "b963bce7-41be-4d15-9713-2d63f1917132"
  ],
  "filename": "air.png",
  "storageID": "f41ab59d-f4df-422c-830a-63fe4e7107f0",
},
```

{% endtab %}
{% endtabs %}

## 6. Metadata

This is the structure of the metadata of a single content entry in the database.

This metadata is retrieved by making the [/get](https://docs.echo3d.com/data#get-metadata-of-an-entry) API call.

Alternatively, this metadata is retrieved by making the [`/query`](https://docs.echo3d.com/queries#get-entries) API call and referring to the`db['ENTRY_ID']['additionalData']` component.&#x20;

A specific value can be retrieved by referring to the`db['ENTRY_ID']['additionalData'][KEY]` or `db['ENTRY_ID']['additionalData'].KEY`.

{% tabs %}
{% tab title="Object" %}

```
"additionalData": {
        "KEY_1": "VALUE_1",    // The first metadata entry, i.e. pair of key and value
        "KEY_2": "VALUE_2",    // The second metadata entry, i.e. another pair of key and value
        ...                    // Additional metadata entries , i.e. more pairs of keys and values
      },
```

{% endtab %}

{% tab title="Example" %}

```
"additionalData": {
        "qrWebXRStorageID": "5ead9dc6-0b11-4133-b342-d43ac95d1116",
        "qrARjsStorageFilename": "qr_arjs_blue-water-4646.png",
        "qrARjsTargetStorageFilename": "qr_arjs_blue-water-4646.patt",
        "vuforiaHologramStorageID": "7068cd74-6c9f-4106-9326-585c56fa4475",
        "glbHologramStorageID": "d686a655-e800-430d-bfd2-e38cdfb0c9e9.glb",
        "qrARjsMarkerStorageFilename": "marker_qr_arjs_blue-water-4646.png",
        "source": "Skyscraper by Poly by Google, CC-BY, https://poly.google.com/view/dIsZyy2FUY-",
        "qrARjsTargetStorageID": "e85b7db2-42a9-4f76-aacc-8f7be4a5e05f",
        "usdzHologramStorageID": "d686a655-e800-430d-bfd2-e38cdfb0c9e9.usdz",
        "qrARjsStorageID": "f78b7b84-979d-4dfc-b478-e369b560a623",
        "accessHistory": "[\"1587253959697\",\"1587254928553\",\"1587254944219\",\"1587254945465\",\"1587254963484\",\"1587255480604\",\"1587255693450\"]",
        "createdAt": "1587253959697",
        "qrWebXRStorageFilename": "qr_webxr_blue-water-4646.png",
        "usdzHologramStorageFilename": "Skyscraper.usdz",
        "vuforiaHologramStorageFilename": "Skyscraper.h",
        "lastAccessed": "1587255693450",
        "qrARjsMarkerStorageID": "343df194-e7ae-4c34-adbf-5718542aca37",
        "glbHologramStorageFilename": "Skyscraper.glb"
      },
```

{% endtab %}
{% endtabs %}

## 7. Supported SDKs

This is the structure of the supported SDK array of a single content entry in the database.

{% tabs %}
{% tab title="Object" %}

```
"sdks": [
        true/false,     // Vuforia support
        true/false,     // ARCore support
        true/false,     // ARKit support
        true/false,     // Unity support
        true/false,     // EasyAR support
        true/false,     // Wikitude support
        true/false,     // Kudan support
        true/false,     // WebXR support
        true/false      // AR.JS support
      ],
```

{% endtab %}

{% tab title="Example" %}

```
"sdks": [
        true,
        true,
        false,
        true,
        false,
        false,
        false,
        true,
        true
      ],
```

{% endtab %}
{% endtabs %}
