# Seed Import

{% hint style="warning" %}
Since the 2405 release, using Aidbox in FHIR schema validation engine is recommended, which is incompatible with zen or Entity/Attribute options.

Please, use [Init Bundle](../../../../configuration/init-bundle.md) instead.

[Setup Aidbox with FHIR Schema validation engine](broken-reference)
{% endhint %}

You can declare a set of resources in Aidbox project and get them loaded in one or many Aidboxes on start. To do this you need to describe the seed service in the system entrypoint.

### Example

```clojure
{ns     importbox
 import #{aidbox
          zenbox}

 seed
 {:zen/tags  #{aidbox/service}
  :engine    aidbox/seed
  :files     ["patients.ndjson.gz"]
  :resources [{:id "rpt-1" :resourceType "Patient"}
              {:id "rpt-2" :resourceType "Patient"}]
  :migrations [{:id "mig-1" :sql "create table mytable (id text)"}
               {:id "mig-2" :sql "insert into mytable values ('hello')"}]}

 importbox
 {:zen/tags #{aidbox/system}
  :zen/desc "Import box for test"
  :services {:seed seed}}}
```

In this example `importbox/importbox` is the system entrypoint defined in the **`AIDBOX_ZEN_ENTRYPOINT`** variable, the files described in the `:files` field are located inside the zen project defined in the variable **`AIDBOX_ZEN_PATHS`**.

### Seed Service

`:files` - which `ndjson.gz` files will be imported at system startup. These files must be located inside the zen project described in the variable **`AIDBOX_ZEN_PATHS`**.

`:resources` - in-place resources definitions that will be imported at system startup.

`:migrations` — vector of migrations. Each migration is a map containing `id` and `sql` keys.
