# insertRows

## Overview

This endpoint can be used for streaming a small number of rows into a table at high frequency. For bulk uploading a large number of records, use the upload post interface. &#x20;

## HTTP Request

```http
POST /api/v1/tables/:tableReference/uploads/:uploadName/rows
```

## Path parameters

| Parameter      | Description                                                                                                                                    |
| -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| tableReference | A qualified reference to the table. See [referencing resources](https://docs.redivis.com/api/referencing-resources) for more information.      |
| uploadName     | The name of the upload. Make sure to [URL encode](https://en.wikipedia.org/wiki/URL_encoding) the name if it contains any reserved characters. |

{% hint style="info" %}
This endpoint extends the [general API structure](https://docs.redivis.com/api/rest-api/general-structure)
{% endhint %}

## Request body

Provide a JSON object with information about the table.

<table><thead><tr><th width="153.09375">Property name</th><th width="170.22005208333331">Type</th><th>Description</th></tr></thead><tbody><tr><td><strong>rows</strong></td><td>Array[Object]</td><td><p><strong>Required.</strong> An array of rows, where each row is an object whose keys represent the variable name and values represent that row's value for the given variable.</p><p></p><p>Note that booleans, integers, and floats must be expressed as their JSON types, not as strings. Date, DateTime, and Time types should use the canonical string representation (e.g., <code>1970-01-01T00:00:00.000</code>). Geographies must be expressed as WKT encoded strings (e.g., <code>POINT(10 20)</code>).</p><p></p><p>The overall payload cannot exceed 100MB. </p><p></p><p>E.g.: </p><pre><code>[
  { 
    "name": "Jane", 
    "age": 30 
  },
  {
    "name": "John", 
    "age": 5 
  },
  ...
]
</code></pre><p></p><p></p></td></tr></tbody></table>

## Authorization

Edit access to the dataset is required. Your access token must have the following scope:

* data.edit

[Learn more about authorization.](https://docs.redivis.com/api/rest-api/authorization)

## Response body

If successful, returns the following payload with a status code of 201.

```json5
{
  "kind": "insertRowsResponse",
  "rowsAdded": int
}
```
