---
updatedAt: 2026-04-21T21:32:21.000Z
agentTools:
  projectIndex: https://docs.oneschema.co/llms.txt
---

# Getting Started with Importer

An overview of how to setup the OneSchema Embeddable Importer

OneSchema Importer is the embeddable CSV importer used by product and engineering teams to save months of development time when compared to building a self-serve importer in-house ([demo video](https://www.youtube.com/watch?v=ObGvrFL_HKs)).

Setting up OneSchema's Embeddable Importer takes less than 20 minutes and has four main steps:

1. [Define the validation rules](https://docs.oneschema.co/docs/creating-and-editing-templates) `5 mins`
2. [Quickly embed](https://docs.oneschema.co/docs/quickstart-embedding-with-the-sdk) using the provided code snippet `3 mins`
3. [Customize the look and feel](https://docs.oneschema.co/docs/customizations) of the Importer `4 mins`
4. Handle [ingesting the clean data](https://docs.oneschema.co/docs/importing-validated-data)

To begin, [request a demo](https://www.oneschema.co/request-a-demo) if you have not yet done so.

<Image align="center" alt="Four steps to get started with OneSchema" border={false} caption="Four steps to get started with OneSchema" src="https://files.readme.io/bf96e4a-Docs_graphic_-_no_arrows_1.png" />

## Example JS embedding code snippet

```javascript
<div>
  <script src="https://d3ah8o189k1llu.cloudfront.net/oneschema-importer-latest.min.js"></script>
  <style>
  .oneschema-iframe {
    width: 100vw;
    height: 100vh;
    border: none;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1000;
  }
  </style>
  <script type="text/javascript">
    /*
      if you would like to use this sample in a JavaScript file as part of your
      build you can install the npm package '@oneschema/importer', copy this
      sample into a new file, and add this import statement:
      import oneschemaImporter from '@oneschema/importer'
    */
    const importer = oneschemaImporter({
      clientId: "<YOUR_CLIENT_ID_HERE>",
      templateKey: "<YOUR_TEMPLATE_KEY_HERE>",
      importConfig: { type: "local" },
      userJwt: "<YOUR_JWT_HERE>",
      devMode: false,
    })

    function launchOneSchema() {
      importer.launch()

      importer.on("launch", (data) => {
        // TODO: handle launch
        console.log(data)
      })

      importer.on("success", (data) => {
        // TODO: handle success
        console.log(data)
      })

      importer.on("cancel", () => {
        // TODO: handle cancel
      })

      importer.on("error", (message) => {
        // TODO: handle errors
        console.log(message)
      })
    }
  </script>

  <button onclick="launchOneSchema()">Launch embed</button>
</div>
```

The snippet shown is [JavaScript](https://docs.oneschema.co/docs/javascript) however OneSchema also has SDKs for [React](https://docs.oneschema.co/docs/react), [Angular](https://docs.oneschema.co/docs/angular), and [Vue](https://docs.oneschema.co/docs/vue).