Plot observations

Upload plot observations

Changed on
post/plot-observations

Request

Query parameters

dry_runboolean

If true, validates and previews the upload without persisting any data. The response will be wrapped in a dry_run_data envelope.

Request body multipart/form-data

plot_observationsstring binary required

Parquet file containing new plot observations (required).

projectsstring binary

Parquet file containing new projects (optional).

partiesstring binary

Parquet file containing new parties (optional).

referencesstring binary

Parquet file containing new references (optional).

soilsstring binary

Parquet file containing details about observed soils (optional).

disturbancesstring binary

Parquet file containing details about observed disturbances (optional).

community_classificationsstring binary

Parquet file containing community classifications of observed plots (optional).

stratastring binary

Parquet file containing details about strata defined for plot observations (optional).

strata_cover_datastring binary

Parquet file containing details about plant cover as observed in different strata of a plot (optional).

stem_datastring binary

Parquet file containing details about counts and/or other details about stems observed on a plot (optional).

taxon_interpretationsstring binary

Parquet file containing taxon interpretations of plants observed on a plot (optional).

contributorsstring binary

Parquet file containing party contributions to the plot observations, projects, and/or community classifications (optional).

Response

Upload accepted. When dry_run=false (default), returns an upload summary. When dry_run=true, the same summary is nested under dry_run_data and the data is not actually inserted into VegBank.

OR

Example response

{
  "counts": {
    "xx": {
      "inserted": 1
    },
    "yy": {
      "inserted": 2
    },
    "ds": {
      "inserted": 1
    }
  },
  "resources": {
    "xx": [
      {
        "action": "INSERT",
        "user_xx_code": "my_xx_code",
        "vb_xx_code": "xx.123"
      }
    ],
    "yy": [
      {
        "action": "INSERT",
        "user_yy_code": "my_yy_code_1",
        "vb_yy_code": "yy.123"
      }
    ],
    "ds": [
      {
        "action": "INSERT",
        "user_ds_code": "upload_dataset_20260325110254",
        "vb_ds_code": "ds.123"
      }
    ]
  }
}

Changes

    • breaking

      added the new required request property

    • breaking

      request body became required

    • breaking

      the request's body type changed from array to object

    • breaking

      added subschema #2: DryRunSummary to the response body oneOf list for the response status

    • breaking

      the response's body type changed from array to no type for status

    • info

      added the new optional query request parameter dry_run

    • info

      added the new optional request property

    • info

      added the new optional request property

    • info

      added the new optional request property

    • info

      added the new optional request property

    • info

      added the new optional request property

    • info

      added the new optional request property

    • info

      added the new optional request property

    • info

      added the new optional request property

    • info

      added the new optional request property

    • info

      added the new optional request property

    • info

      added the new optional request property

    • breaking

      the request property type changed from no type to object

    • info

      the endpoint scheme security oauth2 was added to the API