# 3. Receive Data

Once the code is installed the users will be able to submit their files via the csvbox importer. The raw files uploaded by the users will be available on your dashboard's 'Import' page. The data will also be pushed to your app as per the [destination ](/destinations.md)type configuration of your sheet.

#### Sample JSON response for destination API/Webhook: <a href="#sample-response" id="sample-response"></a>

```json
[
  {
    "import_id": 79418895,
    "sheet_id": 55,
    "sheet_name": "Products",
    "row_number": 1,
    "total_rows": 1009,
    "env_name": "default", 
    "original_filename": "products01_24.csv",
    "row_data": {
          "Name": "TP-Link TL-WN822N Wireless N300 High Gain USB Adapter",
          "SKU": "AS-100221",
          "Price": "33.00",
          "Quantity": "3",
          "Image URL": "https://cdn.shopify.com/s/files/1/1491/9536/products/31jJOj1DS5L_070b4893-b7af-482f-8a15-d40f5e06760d.jpg?v=1521803806"
    },
    "custom_fields": {
      "user_id": "1002"
    }
  },
  {
    "import_id": 79418895,
    "sheet_id": 55,
    "sheet_name": "Products",
    "row_number": 2,
    "total_rows": 1009,
    "env_name": "default", 
    "original_filename": "products01_24.csv",
    "row_data":{
          "Name": "EPower Technology EP-600PM Power Supply 600W ATX12V 2.3 Single 120mm Cooling Fan Bare",
          "SKU": "AS-103824",
          "Price": "95.35",
          "Quantity": "8",
          "Image URL": "https://cdn.shopify.com/s/files/1/1491/9536/products/71pRC5VjF-L_8f840eb9-6a47-407f-999c-490f7814159d.jpg?v=1521803806"
        },
    "custom_fields": {
      "user_id": "1002"
    }
  },
]

```

{% hint style="warning" %}
All import data and RAW files will be retained for one month. You also have the option to bypass storing the files in our data store.
{% endhint %}

### Import Complete Webhook

Optionally, you can subscribe to the import complete event webhook via the sheet settings page. This webhook will fire when the CSVbox completes the import process for any user. Here is some example JSON that could be sent to your webhook endpoint:

```json
  {
    "import_id": 79418895,
    "sheet_id": 575,
    "sheet_name": "Products Import",
    "env_name": "default", 
    "original_filename": "products01_24.csv",
    "destination_type": "webhook",
    "row_count": 100,
    "row_success": 98,
    "row_fail": 2,
    "import_status": "Partial",
    "import_starttime": 87987897897,
    "import_endtime": 90890890809,
    "original_filename": "example-01.csv",
    "raw_file": "https://file-download-link",
    "custom_fields": {
      "user_id": "Z1001"
    },
    "raw_columns": [
        "Name", "Product SKU", "Origin Date", "Sale Price", "Inventory", "Img", "Notes"
    ],
    "column_mappings": [
      { "Name": "Name" },
      { "SKU": "Product SKU" },
      { "Price": "Sale Price" },
      { "Quantity": "Inventory"},
      { "Image URL": "Img"}
    ]
  }
```

### Data on the Client Side

You also have the option to receive the entire CSV data in JSON format inside the **`data`** object of the [**`callback`**](https://help.csvbox.io/getting-started/2.-install-code#callback-function) function.\
\
To receive the CSV data in the callback function simply activate this option on the sheet '**Destination**' page.

<div align="left"><img src="/files/Zees8pK4XbtwCQsHcYcH" alt="Send JSON data to client"></div>

You will then receive the JSON data in the **`rows`** property of the **`data`** object. Check the sample below:

```json
{
  "import_id": 79418895,
  "sheet_id": 575,
  "sheet_name": "Products Import",
  "destination_type": "webhook",
  "env_name": "default", 
  "original_filename": "products01_24.csv",
  "row_count": 2,
  "row_success": 2,
  "row_fail": 0,
  "import_status": "Success",
  "import_starttime": 87987897897,
  "import_endtime": 90890890809,
  "raw_file": "https://file-download-link",
  "custom_fields": {
    "user_id": "Z1001"
  },
  "column_mappings": [
      { "Name": "Name" },
      { "SKU": "Product SKU" },
      { "Price": "Sale Price" },
      { "Quantity": "Inventory"},
      { "Image URL": "Img"},
      { "Barcode": "Barcode"},
      { "Tags": "Attributes"}
    ],
   "raw_columns": [
        "Name", "Product SKU", "Origin Date", "Sale Price", "Inventory", "Img", "Notes"
    ],
  "rows": [
    {
      "Name": "Nike Shoes Greenhorn",
      "SKU": "NSGH",
      "Price": "195.35",
      "Quantity": "2",
      "_dynamic_data": {
        "inventory": "11",
        "origin": "uk"
      },
      "_unmapped_data": {
        "Barcode": "2748937411",        
        "Tags": "green"
      }
    },
    {
      "Name": "Nike Shoes Airflow",
      "SKU": "NSAF",
      "Price": "295.35",
      "Quantity": "1",
      "_dynamic_data": {
         "inventory": "2",
         "origin": "uk"
      },
      "_unmapped_data": {
        "Barcode": "5648937421",        
        "Tags": "blue"
      }
    }
  ]
}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.csvbox.io/getting-started/3.-receive-data.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
