---
title: "GET /v1/projects | Documentation - Vemetric"
description: "List projects"
url: https://vemetric.com/docs/api/endpoints/get-v1-projects
---

# List projects

Returns the projects the API key covers: the key's own project for a project key, the covered projects of the organization for an organization key. Use their IDs in the \`X-Vemetric-Project\` header.

* * *

Method

GET

Path

/v1/projects

This endpoint lists the projects your API key has access to. For a project API key, that’s its own project. For an organization API key, it’s either all projects of the organization or the projects chosen when the key was created.

Use the returned `id` in the `X-Vemetric-Project` header to send requests for a project with an organization API key. This endpoint itself doesn’t need the header.

## Headers

Authorization

required

Project or organization API key (starts with `vem_`), created in the project or organization settings on the API tab. Organization keys name the project of each request in the `X-Vemetric-Project` header.

Example: `Bearer vem_xxxxxxxxxxxx`

## Responses

200 Success

application/json

`projects`

Description

Projects the API key covers, sorted by name.

Type

array<object>

`id`

Description

Project ID

Type

string

Example

"1234567890123456"

* * *

`name`

Description

Project name

Type

string

Example

"My Website"

* * *

`domain`

Description

Project domain

Type

string

Example

"example.com"

* * *

* * *

400 Bad request - invalid request payload or parameters, or an organization key without the X-Vemetric-Project header

application/json

`error`

Description

Error details.

Type

object

`code`

Description

Machine-readable error code. `HTTP_ERROR` is returned for a malformed JSON body, `PROJECT_REQUIRED` for an organization key without the X-Vemetric-Project header.

Type

"VALIDATION\_ERROR" | "HTTP\_ERROR" | "PROJECT\_REQUIRED"

* * *

`message`

Description

Human-readable error message.

Type

string

* * *

`details`

Description

Per-field validation issues. Only present for `VALIDATION_ERROR`.

Type

array<object>

Show nested properties (2)

`field`

Description

Path to the invalid request field.

Type

string

Example

"groupBy.0"

* * *

`message`

Description

Validation error message for the field.

Type

string

* * *

* * *

* * *

401 Unauthorized - missing, malformed, invalid or revoked API key

application/json

`error`

Description

Error details.

Type

object

`code`

Description

Machine-readable error code.

Type

"UNAUTHORIZED"

* * *

`message`

Description

Human-readable error message.

Type

string

* * *

* * *

429 Rate limit exceeded - retry after the number of seconds in the Retry-After header

application/json

`error`

Description

Error details.

Type

object

`code`

Description

Machine-readable error code.

Type

"RATE\_LIMIT\_EXCEEDED"

* * *

`message`

Description

Human-readable error message.

Type

string

* * *

* * *

500 Unexpected internal error

application/json

`error`

Description

Error details.

Type

object

`code`

Description

Machine-readable error code.

Type

"INTERNAL\_ERROR"

* * *

`message`

Description

Human-readable error message.

Type

string

* * *

* * *
