Survey

Survey

Implements

Fields

action (UpsertActionType!)

Determines if it was a create or update.

color (String!)

The color that can be used when rendering things like photo dots for this survey. Format is #RRGGBB.

content_hash (String!)

The current content hash for this item.

created_at (ISO8601DateTime!)

The timestamp of when the item was created in the system.

created_by (User!)

The user who created this item.

end_time (String!)

Timestamp of when the survey was completed. This attribute can be used as the date_attribute_name in a date_range query.

feature_sets (FeatureSetsQueryResult!)

A list of feature sets associated with this survey.

Argument Type Description
order_by FeatureSetSortingAttributes

Order the results by a specific attribute.

order_by_direction SortDirection

Direction (ascending or descending) of the ordered results.

pagination Pagination

Paginate the results.

type FeatureSetType

Filter the results by feature set type.

field (Field!)

the associated field of this survey.

files (FilesQueryResult!)

A list of files associated with this survey.

Argument Type Description
date_range DateRange

Filter the results by a date range.

order_by FileSortingAttributes

Order the results by a specific attribute.

order_by_direction SortDirection

Direction (ascending or descending) of the ordered results.

pagination Pagination

Paginate the results.

image_upload_ended_at (ISO8601DateTime)

The time after which the last source image uploaded and processing was requested. If uploaded multiple times, the time the last upload ended. For surveys that lack source imagery this will be null.

image_upload_started_at (ISO8601DateTime)

The time at which the first source image was uploaded. If uploaded multiple times - the time the last upload started. For surveys that lack source imagery this will be null.

images (ImagesQueryResult!)

A list of images associated with this survey.

Argument Type Description
bounds Bounds

Filter the results using a bounding box.

calculated_index CalculatedIndex

An index such as NDVI or NDRE calculated for this image.

color_applied ColorApplied

The color application (if present) for this image.

date_range DateRange

Filter the results using a date range.

haversine_radius HaversineRadius

Filter the results using a haversine radius.

order_by ImageSortingAttributes

Order the results by a specific attribute.

order_by_direction SortDirection

Direction (ascending or descending) of the ordered results.

pagination Pagination

Paginate the results.

sensor_type SensorType

The type of sensor captured the image.

light_sensor_condition (LightSensorCondition!)

The lighting condition detected by the sensor

message (String)

A message returned for surveys that have failed during processing.

mosaics (MosaicsQueryResult!)

A list of mosaics associated with this survey.

Argument Type Description
mosaic_type MosaicType

Filter the results by mosaic type.

order_by MosaicSortingAttributes

Order the results by a specific attribute.

order_by_direction SortDirection

Direction (ascending or descending) of the ordered results.

pagination Pagination

Paginate the results.

quality MosaicQuality

Filter the results by mosaic quality.

name (String!)

Name of the survey.

notes (String)

Notes pertaining to this survey.

organization (Organization!)

The associated organization.

owner_type (FeatureSetOwnerType!)

Type of the feature set owner

sentera_id (ID!)

A system-generated key identifying a specific instance of a survey.

start_time (String!)

Timestamp when the survey was started. This attribute can be used as the date_attribute_name in a date_range query.

status (SurveyStatus!)

The status of the survey.

updated_at (ISO8601DateTime!)

The timestamp of when the item was last updated in the system.

updated_by (User)

The user who last updated this item.

Examples

Images for a survey

Retrieve the images for a specific survey

Try this example in GraphiQL
query RetrieveSurveyImages {
  survey(sentera_id: "itqkn28_CO_SHORT1_CV_test_dc0d87d_170907_235328") {
  images {
    results {
      sentera_id
      latitude
      longitude
      path
      filename
      camera_make
      camera_model
      url
      download_filename
    }
  }
  }
}

{
  "data": {
  "survey": {
    "images": {
      "results": [
        {
          "sentera_id": "jkxco43_IM_SHORT1_CV_test_dc0d87d_170907_235328",
          "latitude": 45.328761,
          "longitude": -93.521094,
          "path": "NDVI_Data",
          "filename": "86d4b80ce100-FW00024.jpg",
          "camera_make": "Sentera",
          "camera_model": "NIR_1.2MP-GS-0002_4.14mm-0001_000",
          "url": "Pre-signed Amazon S3 URL",
          "download_filename": "NDVI_Data_86d4b80ce100-FW00024.jpg"
        }
      ]
    }
  }
  }
}

Images for a survey constrained by sensor type

Retrieve images for a specific survey based on the sensor type of the image. Refer here for a complete list of sensor types that can be used to filter images.

Try this example in GraphiQL
query RetrieveSurveyImagesBySensorType {
  survey(sentera_id: "1vnryfu_CO_gpezKrisOrg_AD_83o0gd1t_d6471d4_20160104_235407") {
  images(sensor_type: RGNIR) {
    total_count
    results {
      sentera_id
      sensor_type
      url
    }
  }
  }
}

{
  "data": {
  "survey": {
    "images": {
      "total_count": 625,
      "results": [
        {
          "sentera_id": "4h52ti1_IM_gpezKrisOrg_AD_83o0gd1t_d6471d4_20160104_235455",
          "sensor_type": "RGNIR",
          "url": "Pre-signed Amazon S3 Url"
        }
      ]
    }
  }
  }
}

Images for a survey constrained by calculated index

Retrieve images for a specific survey based on the calculated index for the image. Refer here for a complete list of calculated indexes that can be used to filter images.

Try this example in GraphiQL
query RetrieveSurveyImagesByCalculatedIndex {
  survey(sentera_id: "1vnryfu_CO_gpezKrisOrg_AD_83o0gd1t_d6471d4_20160104_235407") {
  images(calculated_index: NDVI) {
    total_count
    results {
      sentera_id
      calculated_index
    }
  }
  }
}

{
  "data": {
  "survey": {
    "images": {
      "total_count": 813,
      "results": [
        {
          "sentera_id": "pcwpadc_IM_gpezKrisOrg_AD_83o0gd1t_d6471d4_20160104_235434",
          "calculated_index": "NDVI"
        }
      ]
    }
  }
  }
}

Images for a survey constrained by color applied

Retrieve images for a specific survey based on the color applied for the image. Refer here for a complete list of color applied values that can be used to filter images.

Try this example in GraphiQL
query RetrieveSurveyImagesByColorApplied {
  survey(sentera_id: "1zny1wy_CO_sceoJoeTestRe_AD_gto1datq_8e5187a_20160122_191109") {
  images(color_applied: RED_TO_GREEN) {
    total_count
    results {
      sentera_id
      color_applied
    }
  }
  }
}

{
  "data": {
  "survey": {
    "images": {
      "total_count": 52,
      "results": [
        {
          "sentera_id": "93zvhop_IM_sceoJoeTestRe_AD_gto1datq_8e5187a_20160122_191128",
          "color_applied": "RED_TO_GREEN"
        }
      ]
    }
  }
  }
}

Images for a survey constrained by haversine radius

Retrieve images for a specific survey based on a haversine radius. This constraint cannot be used with the bounds constraint in the same query.

Try this example in GraphiQL
query RetrieveSurveyImagesByHaversineRadius {
  survey(sentera_id: "itqkn28_CO_SHORT1_CV_test_dc0d87d_170907_235328") {
  images(
    haversine_radius: {
    latitude: 45.100
    longitude: -93.600
    radius: 50
    radius_unit: METERS
  }) {
    total_count
    results {
      sentera_id
      latitude
      longitude
      camera_make
      camera_model
      url
    }
  }
  }
}

{
  "data": {
  "survey": {
    "images": {
      "total_count": 498,
      "results": [
        {
          "sentera_id": "jkxco43_IM_SHORT1_CV_test_dc0d87d_170907_235328",
          "latitude": 45.053278,
          "longitude": -93.62901,
          "camera_make": "Sentera",
          "camera_model": "NIR_1.2MP-GS-0002_4.14mm-0001_000",
          "url": "Pre-signed Amazon S3 URL"
        }
      ]
    }
  }
  }
}

Images for a survey constrained by a bounding rectangle

Retrieve images for a specific survey based on a bounding rectangle (southwest geo coordinate, northeast geo coordinate). This constraint cannot be used with the haversine radius constraint in the same query.

Try this example in GraphiQL
query RetrieveSurveyImagesByBoundingBox {
  survey(sentera_id: "itqkn28_CO_SHORT1_CV_test_dc0d87d_170907_235328") {
  images(
    bounds: {
    sw_geo_coordinate: {
      latitude: 44.55
      longitude: -93.6
    },
    ne_geo_coordinate: {
      latitude: 44.65
      longitude: -93.5
    }
  }) {
    total_count
    results {
      sentera_id
      latitude
      longitude
      camera_make
      camera_model
      url
    }
  }
  }
}

{
  "data": {
  "survey": {
    "images": {
      "total_count": 236,
      "results": [
        {
          "sentera_id": "jkxco43_IM_SHORT1_CV_test_dc0d87d_170907_235328",
          "latitude": 45.053278,
          "longitude": -93.62901,
          "camera_make": "Sentera",
          "camera_model": "NIR_1.2MP-GS-0002_4.14mm-0001_000",
          "url": "Pre-signed Amazon S3 URL"
        }
      ]
    }
  }
  }
}

Images for a survey constrained by date range

Retrieve images for a specific survey based on a date range.

Try this example in GraphiQL
query RetrieveSurveyImagesByDateRange {
  survey(sentera_id: "itqkn28_CO_SHORT1_CV_test_dc0d87d_170907_235328") {
  images(
    date_range: {
      date_attribute_name: "created_at"
      start_timestamp: "2017-09-03T03:05:48Z"
      end_timestamp: "2017-09-08T03:00:48Z"
    }
  ) {
    total_count
    results {
      sentera_id
      latitude
      longitude
      camera_make
      camera_model
      url
    }
  }
  }
}

{
  "data": {
  "survey": {
    "images": {
      "total_count": 329,
      "results": [
        {
          "sentera_id": "jkxco43_IM_SHORT1_CV_test_dc0d87d_170907_235328",
          "latitude": 45.053278,
          "longitude": -93.62901,
          "camera_make": "Sentera",
          "camera_model": "NIR_1.2MP-GS-0002_4.14mm-0001_000",
          "url": "Pre-signed Amazon S3 URL"
        }
      ]
    }
  }
  }
}

Ordering images for a survey

Retrieve images for a specific survey ordered by a specific attribute. Refer here for a complete list of attributes that can be used to order images.

Try this example in GraphiQL
query RetrieveSurveyImagesOrdered {
  survey(sentera_id: "itqkn28_CO_SHORT1_CV_test_dc0d87d_170907_235328") {
  images(
    order_by: FILENAME
    order_by_direction: DESCENDING) {
    results {
      sentera_id
      latitude
      longitude
      camera_make
      camera_model
      url
    }
  }
  }
}

{
  "data": {
  "survey": {
    "images": {
      "results": [
        {
          "sentera_id": "jkxco43_IM_SHORT1_CV_test_dc0d87d_170907_235328",
          "latitude": 45.053278,
          "longitude": -93.62901,
          "camera_make": "Sentera",
          "camera_model": "NIR_1.2MP-GS-0002_4.14mm-0001_000",
          "url": "Pre-signed Amazon S3 URL"
        }
      ]
    }
  }
  }
}

Paginating images for a survey

Retrieve images for a survey a page at a time.

Try this example in GraphiQL
query RetrieveSurveyImagesPaginated {
  survey(sentera_id: "itqkn28_CO_SHORT1_CV_test_dc0d87d_170907_235328") {
  images(
    pagination: {
      page: 2
      page_size: 30
    }
  ) {
    total_count
    page
    page_size
    results {
      sentera_id
      latitude
      longitude
      camera_make
      camera_model
      url
    }
  }
  }
}

{
  "data": {
  "survey": {
    "images": {
      "total_count": 124,
      "page": 2,
      "page_size": 30,
      "results": [
        {
          "sentera_id": "jkxco43_IM_SHORT1_CV_test_dc0d87d_170907_235328",
          "latitude": 45.053278,
          "longitude": -93.62901,
          "camera_make": "Sentera",
          "camera_model": "NIR_1.2MP-GS-0002_4.14mm-0001_000",
          "url": "Pre-signed Amazon S3 URL"
        }
      ]
    }
  }
  }
}

Derived Images

Derived images are images that have been derived/produced during a processing step from the images that were originally imported. One scenario under which derived images are produced is when a spot scout analytic is generated from a set of images. The derived images will contain annotations added by Sentera's analytics processing software indicating where within the original image plants or weeds were detected. In this case, these derived images will have a derived type of ANNOTATION.

Try this example in GraphiQL
query RetrieveDerivedImages {
  survey(sentera_id: "itqkn28_CO_SHORT1_CV_test_dc0d87d_170907_235328") {
  images {
    results {
      sentera_id
      derived_images(derived_type: ANNOTATION) {
        sentera_id
        mosaic_sentera_id
        derived_type
        filename
        url
      }
    }
  }
  }
}

{
  "data": {
  "survey": {
    "images": {
      "results": [
        {
          "sentera_id": "jkxco43_IM_SHORT1_CV_test_dc0d87d_170907_235328",
          "derived_images": [
            {
              "sentera_id": "acvxy55_FI_SHORT1_CV_test_dc0d87d_170907_235328",
              "mosaic_sentera_id": "bvnoq71_MO_SHORT1_CV_test_dc0d87d_170907_235328",
              "derived_type": "ANNOTATION",
              "filename": "86d4b80ce100-FW00024.jpg",
              "url": "Pre-signed Amazon S3 URL"
            }
          ]
        }
      ]
    }
  }
  }
}

Mosaics for a survey constrained by mosaic type

Retrieve mosaics for a specific survey based on a type of mosaic. Refer here for a complete list of mosaic types that can be used to filter mosaics.

Try this example in GraphiQL
{
  survey(sentera_id: "itqkn28_CO_SHORT1_CV_test_dc0d87d_170907_235328") {
  mosaics(mosaic_type: NDVI) {
    results {
      sentera_id
      quality
      mosaic_type
    }
  }
  }
}

{
  "data": {
  "survey": {
    "mosaics": {
      "results": [
        {
          "sentera_id": "bvmiu79_MO_SHORT1_CV_test_dc0d87d_170907_235328",
          "quality": "quick",
          "mosaic_type": "NDVI"
        },
        {
          "sentera_id": "fgjkw43_MO_SHORT1_CV_test_dc0d87d_170907_235328",
          "quality": "quick",
          "mosaic_type": "NDVI"
        }
      ]
    }
  }
  }
}

Survey by Sentera ID with feature sets

Retrieve a survey and its feature sets of a specific type

Try this example in GraphiQL
query SurveyWithFeatureSetsOfType {
  survey(sentera_id: "itqkn28_CO_SHORT1_CV_test_dc0d87d_170907_235328") {
  sentera_id
  start_time
  end_time
  feature_sets(type: TASSEL_COUNT) {
    results {
      sentera_id
      name
      type
    }
  }
  }
}

{
  "data": {
  "survey": {
    "sentera_id": "itqkn28_CO_SHORT1_CV_test_dc0d87d_170907_235328",
    "start_time": "2017-09-03T16:25:32Z",
    "end_time": "2017-09-03T16:45:32Z",
    "feature_sets": {
      "results": [
        {
          "sentera_id": "bn5xs29_FS_SHORT1_CV_test_dc0d87d_170907_235328",
          "name": "North Forty Tassel Count",
          "type": "TASSEL_COUNT"
        }
      ]
    }
  }
  }
}