Skip to content

Overview

EveryPoint supports uploading, storing, generating, and downloading files of various types such as images, videos, point clouds, or meshes. The following sections provide more details on how to leverage files within the API.

Supported file types

The following sections describe the types of files that are supported by the API.

Images

An image is a single image file that is available in the API.

Endpoint: /v3{instance-uri}/images

Supported image formats are:

  • JPG
  • HEIC

Image resolutions larger than 2 megapixels are recommended. Also, best results are achieved when the image has not been modified (e.g. resized or edited using a photo manipulation tool), and when the original EXIF data is intact. For example, the following EXIF values are useful: Make, Model, FocalLength, FocalLengthIn35mmFilm, FocalPlaneXResolution, FocalPlaneYResolution, FocalPlaneResolutionUnit, LensModel, DateTimeOriginal, GPSLatitude, GPSLatitudeRef, GPSLongitude, GPSLongitudeRef, GPSAltitude, GPSAltitudeRef, ExposureBiasValue, FNumber, ExposureTime, ISOSpeedRatings.

Videos

A video is a single video file that is available in the API.

Endpoint: /v3{instance-uri}/videos

Supported video formats are:

  • MP4
  • MOV

For best results, video resolutions of 1080p (1920 × 1080) or larger are recommended.

AR Sessions

An AR session is a single AR session file that is available in the API.

Endpoint: /v3{instance-uri}/ar-sessions

An AR session contains both visual data (e.g. a recorded video) as well as sensor data (e.g. inertial measurements). Supported AR session formats are:

AR Lidar Sessions

An AR lidar session is a single AR lidar session file that is available in the API.

Endpoint: /v3{instance-uri}/ar-lidar-sessions

An AR lidar session contains visual data (e.g. a recorded video), sensor data (e.g. inertial measurements), as well as lidar depth data. Supported AR lidar session formats are:

Point Clouds

A point cloud is a single point cloud file that is available in the API.

Endpoint: /v3{instance-uri}/point-clouds

Supported point cloud formats are:

  • PLY
  • E57

Meshes

A mesh is a single mesh file that is available in the API.

Endpoint: /v3{instance-uri}/meshes

Supported mesh formats are:

  • USDZ
  • OBJ (the OBJ, MTL, and texture files are stored as a single ZIP)

Orthomosaics

An orthomosaic is an orthorectified image that seamlessly stitches together multiple input images, removing geometric distortion and differences in brightness and exposure. An orthomosaic also contains georeferencing information, so that it can be positioned with respect to standard GPS coordinates.

Endpoint: /v3{instance-uri}/orthomosaics

Supported orthomosaic formats are:

  • KML (a PNG and KML stored as a single ZIP)
  • TIFF (GeoTIFF)

File operations

A variety of operations can be performed with a file including:

The following sections provide details for additional operations that can be performed.

Get details of a file

Returns details for an individual file.

Route: /v3{instance-uri}{file-uri}
Method: GET

Sample response body:

{
  "success": true,
  "data": {
    "image": {
      "uri": "/images/1234-5678",
      "name": "my photo",
      "type": "jpg",
      "size": 12345,
      "created_by_job": "/jobs/0123-4567",
      "url": "https://storage.everypoint.io/files?1234-5678",
      "thumbnail_url": "https://storage.everypoint.io/thumbnails?1234-5678",
      "attributes": {
        "date_time_local": "2022-01-31T18:10:05"
      },
      "custom_attributes": {
        "my_attribute": "My custom attribute value."
      },
      "annotations": [
        {
          "uri": "/images/1234-5678/annotations/2345-6789",
          "label": "/labels/pallet",
          "geometry": {
            "type": "box",
            "min": {"x": 123, "y": 234},
            "max": {"x": 345, "y": 456}
          }
        }
      ]
    }
  }
}

Description of the response properties:

  • "uri" - Resource identifier for this file.
  • "name" - Base part of the underlying file's name (with no extension).
  • "type" - File's extension (converted to lowercase and with no period).
  • "size" - Size of the file in bytes.
  • "created_by_job" - URI of the job that created this file (in the case that this file is an output of a job), and null otherwise.
  • "url" - URL that can be used to download this file.
  • "thumbnail_url" - URL that can be used to download a thumbnail representation of the file. A thumbnail may not be available for every file, or it may not be available immediately. A thumbnail will typically be a square, low resolution JPG or GIF. For example, images may be represented by a small square JPG, videos as a short GIF animation, and point clouds as a cropped top-down rendering that is saved as a JPG. The quality or availability of thumbnails may change over time.
  • "attributes" - Dictionary with standard attribute names and values that have been defined for this file.
  • "custom_attributes" - Dictionary with custom attribute names and values that have been defined for this file.
  • "annotations" - List of annotations that have been defined for this file (if the file type supports annotations).

In the case that the file is a multipart upload that is not yet complete, the "url", "thumbnail_url", and "size" properties will be omitted, and the following new properties will be provided:

  • "status" - Status of the multipart upload, which will be set to "uploading".
  • "total_parts" - Total number of expected parts.
  • "uploaded_parts" - Number of parts that have been uploaded so far.

Delete a file

Removes a file from the API.

Route: /v3{instance-uri}{file-uri}
Method: DELETE

Sample response body:

{
  "success": true
}