---
title: "Bulk index repositories"
method: PUT
path: "/v3beta1/organizations/{org_id}/repositories/indexing"
tags: ["repositories"]
---

# Bulk index repositories

`PUT /v3beta1/organizations/{org_id}/repositories/indexing`

## Request

- The document declares no server URL.
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/devinenterprise/apis/devin-api-v1/docs/v3beta1/organizations/:org_id/repositories/indexing/put.ts> (a function with typed inputs; its response is checked against the schema)

Idempotently enables indexing for a batch of repositories and triggers indexing jobs.

## Path parameters

- `org_id` string, required

## Request body

- BulkIndexRepositoriesRequest
  - `repositories` RepositoryIndexingItem[], required
    - `branch_names` string[]
    - `repository_path` string, required: e.g., 'org/repo-name'

## Response `200`

Successful Response

- RepositoryIndexingResponse[]
  - `branches` string[], required
  - `indexing_enabled` boolean, required
  - `indexing_status` RepoIndexingStatusResponse
    - `indexing_enabled` boolean, required
    - `latest_completed_search_index_job` RepoIndexJobResponse, required
      - `branch_name` string, nullable, required
      - `commit` string, required
      - `created_at` integer, required
      - `job_id` string, required
      - `status` 'failed' | 'completed' | 'in_progress', required
    - `latest_completed_wiki_index_job` RepoIndexJobResponse, required
      - `branch_name` string, nullable, required
      - `commit` string, required
      - `created_at` integer, required
      - `job_id` string, required
      - `status` 'failed' | 'completed' | 'in_progress', required
    - `latest_indexes` RepoIndexJobResponse[], required
      - `branch_name` string, nullable, required
      - `commit` string, required
      - `created_at` integer, required
      - `job_id` string, required
      - `status` 'failed' | 'completed' | 'in_progress', required
  - `repository_path` string, required

## Other responses

- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
- `409`: Conflict
- `422`: Unprocessable Content
- `429`: Too Many Requests

---

[API](https://skmtc.dev/devinenterprise/apis/devin-api-v1.md) - [All operations](https://skmtc.dev/devinenterprise/apis/devin-api-v1/llms.txt) - [OpenAPI document](https://skmtc.dev/devinenterprise/apis/devin-api-v1/revisions/e3244476af1c?raw)
