---
title: "create repository"
method: POST
path: "/repositories"
tags: ["repositories"]
---

# create repository

`POST /repositories`

## Query parameters

- `bare` boolean

## Request body

- RepositoryCreation
  - `name` string, required
  - `storage_id` string — Unique identifier of the underlying data store. *EXPERIMENTAL*
  - `storage_namespace` string, required — Filesystem URI to store the underlying data in (e.g. "s3://my-bucket/some/path/")
  - `default_branch` string
  - `sample_data` boolean
  - `read_only` boolean

## Response `201`

repository

- Repository
  - `id` string, required
  - `creation_date` integer, required — Unix Epoch in seconds
  - `default_branch` string, required
  - `storage_id` string — Unique identifier of the underlying data store. *EXPERIMENTAL*
  - `storage_namespace` string, required — Filesystem URI to store the underlying data in (e.g. "s3://my-bucket/some/path/")
  - `read_only` boolean — Whether the repository is a read-only repository- not relevant for bare repositories

## Other responses

- `400` — Validation Error
- `401` — Unauthorized
- `409` — Resource Conflicts With Target
- `429` — too many requests
- `default` — Internal Server Error

---

[API](https://skmtc.net/treeverse/apis/lakefs-api.md) · [All operations](https://skmtc.net/treeverse/apis/lakefs-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/treeverse/lakefs-api/revisions/4617f80bee61/schema)
