diff --git a/ci/openapi.sh b/ci/openapi.sh
index 3d7fc94f971d87f93a8606cee12c45366d6e7819..25eb5effa6b2abf9d2ffe2693d2bc629629df9e3 100755
--- a/ci/openapi.sh
+++ b/ci/openapi.sh
@@ -1,5 +1,4 @@
 #!/bin/sh -e
 mkdir -p output
 pip install -e .
-pip install uritemplate==3 apistar>=0.7.2
 PONOS_DATA_DIR=/tmp arkindex/manage.py generateschema --generator_class arkindex.project.openapi.SchemaGenerator > output/schema.yml
diff --git a/requirements.txt b/requirements.txt
index 57ee497f5e276cfdad77df9f4a308c602cf8f94d..92fb84f516229a3799f12fc9275196e1ad60f58f 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,6 +1,7 @@
 # -r ./base/requirements.txt
 
 arkindex-common==0.2.0
+apistar==0.7.2
 certifi==2017.7.27.1
 channels==2.3.1
 channels-redis==2.4.1
@@ -25,4 +26,6 @@ responses==0.10.7
 requests==2.22
 sentry-sdk==0.14.3
 urllib3==1.22
+uritemplate==3
 git+https://gitlab.com/arkindex/common.git#egg=arkindex-common
+git+https://gitlab.com/teklia/apistar.git#egg=apistar
diff --git a/tests-requirements.txt b/tests-requirements.txt
index 06985e8590ee9062e85166409df0e47617c121e1..f12d83ef91bf66d197c821dfad6bd4038ccc0bfd 100644
--- a/tests-requirements.txt
+++ b/tests-requirements.txt
@@ -2,6 +2,5 @@ flake8==3.6.0
 tripoli
 django-nose
 coverage
-uritemplate==3
 responses
 mock~=4.0.0