Skip to content

Getting Started

DANGER

This API is currently in beta. Endpoints, parameters, and response formats may change at any time without prior notice.

The YouViCo API lets you build integrations that read and interact with your team's projects, versions, and comments — directly from your own tools or workflows.

You can use the API to:

  • Search and retrieve projects and versions in a workspace
  • Read and post comments on versions
  • Add or remove emoji reactions
  • Update the review status of a version

All API access is authenticated with an API key scoped to a specific workspace.

Base URL

All requests go to:

https://api.youvico.com/api

For example, to search projects:

GET https://api.youvico.com/api/projects.search

Get your API key

Go to Settings → API Keys in the YouViCo app and create a new key. Give it a descriptive name and choose the workspace it should have access to.

WARNING

Your API key is only shown once at the time of creation. Once you leave the page, it cannot be retrieved again. Copy it immediately and store it somewhere safe.

Keep it secret — never expose it in client-side code or public repositories. If a key is compromised, delete it and issue a new one.

Authentication

Include your API key in every request as a Bearer token in the Authorization header:

Authorization: Bearer YOUR_API_KEY

Request format

The API follows REST conventions. Endpoints accept and return JSON.

For requests with a body (POST, PATCH, DELETE), set the Content-Type header:

Content-Type: application/json

A typical request looks like this:

bash
curl -X POST 'https://api.youvico.com/api/versions/:id/comments' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{ "content": "Looks great, approved." }'

Response format

All responses return JSON. Successful responses wrap the result in a data field:

json
{
  "data": {
    "id": "bdbff5de-96d7-468f-9db0-85fe28bd6b62",
    "name": "Launch Campaign"
  }
}

List endpoints return data as an array, along with a page object for pagination:

json
{
  "data": [ ... ],
  "page": {
    "current": 1,
    "hasNext": true
  }
}

Some endpoints (status updates, reactions) return 204 No Content with no body on success.

Error responses

When something goes wrong, the API returns an appropriate HTTP status code and a JSON error body:

json
{
  "statusCode": 404,
  "message": "Not found"
}

See Errors & Rate Limits for the full list of error codes.

Type notation

API reference tables use the following type notation:

NotationMeaning
stringA required, non-null value of that type
string?Nullable — the value may be null
Required: NoOmittable — the field or parameter can be omitted from the request

Next steps