---
title: "List projects"
method: GET
path: "/projects"
tags: ["Projects"]
---

# List projects

`GET /projects`

## Request

- Base URL: `https://app.vulk.dev/api/v1`
- URL: `https://app.vulk.dev/api/v1/projects`
- Auth: HTTP bearer

Scope `projects.read`. Newest first.

## Query parameters

- `limit` integer
- `offset` integer

## Response `200`

The account's projects.

- ProjectList
  - `projects` ProjectSummary[], required
    - `id` string, required
    - `title` string, required
    - `kind` 'app' | 'image' | 'video' | 'mesh', required: `app` for a website or app; `image`, `video` or `mesh` for a standalone design asset.
    - `createdAt` string, date-time, required
    - `url` string, uri, required: The project's page in the editor.
  - `count` integer, required
  - `pagination` object, required
    - `limit` integer, required
    - `offset` integer, required
    - `count` integer, required
    - `hasMore` boolean, required

## Other responses

- `400`: A parameter or body field is wrong; the sentence names it (code VALIDATION_ERROR).
- `401`: No key, a malformed key, or a revoked or expired one (code UNAUTHORIZED).
- `403`: The key lacks the scope the endpoint needs (code FORBIDDEN).
- `429`: Over 60 requests in a minute; wait `retryAfter` seconds (code RATE_LIMITED).

---

[API](https://skmtc.dev/vulk/apis/vulk-rest-api.md) · [All operations](https://skmtc.dev/vulk/apis/vulk-rest-api/llms.txt) · [OpenAPI document](https://skmtc.dev/vulk/apis/vulk-rest-api/revisions/b30510c5149c?raw)
