VitrinaAPI

Ajustes del workspace

La identidad general del workspace (nombre, zona horaria, idioma, moneda, sitio web) y las decisiones de Vitrina Ads: cómo se respondió el paso del tag y la meta mensual.

Beta
Puede cambiar en cualquier momento, con una entrada en el changelog y aviso a quienes la llamaron recientemente — ver versionado.

Descarga la proyección completa de la API pública: openapi.json.

MétodoRutaQué hace
GET/tenant/settingsRead tenant-level settings
PUT/tenant/settingsPatch tenant-level settings

GET /tenant/settings

Read tenant-level settings

The stored settings object, as saved through PUT /tenant/settings. Among its keys, ads holds the Vitrina Ads wizard choice: \{ tag_choice: "site" | "no_site" | null, tag_choice_at: string | null \} (tag_choice_at is stamped by the server on every write); absent when the workspace never answered the «Instalar el tag» step. Only the keys documented here are part of the API pública: the workspace's general identity (name, timezone, language, currency, date_format, website) and the Vitrina Ads choices under ads. A connected app receives exactly those keys; the workspace's own credentials may see further workspace-configuration keys, which are not contract and may change without notice.

curl https://api.vitrinadev.com/api/v1/tenant/settings \
  -H "Authorization: Bearer $VITRINA_KEY"

Ejemplo de respuesta (200)

{
  "data": {
    "name": "Automotora Demo",
    "timezone": "America/Santiago",
    "language": "es",
    "currency": "CLP",
    "website": "https://www.automotora-demo.cl",
    "ads": {
      "tag_choice": "site",
      "tag_choice_at": "2026-09-23T15:00:00.000Z",
      "goal": {
        "kind": "outcomes",
        "target": 30,
        "period": "month"
      },
      "goal_at": "2026-09-01T12:00:00.000Z",
      "goal_by": "20000000-0000-4000-8000-000000000001"
    }
  }
}

Responde: 200 · 400 · 401 · 403 · 404 · 409 · 429

PUT /tenant/settings

Patch tenant-level settings

Shallow-merges the body into the stored settings and answers the result. ads is merged key by key (a write that sends only ads.tag_choice keeps ads.goal), and the server stamps tag_choice_at / goal_at / goal_by — a client never sends them (400). A connected app may write only ads; any other key is refused with 403 and nothing is written. Only the keys documented here are part of the API pública: the workspace's general identity (name, timezone, language, currency, date_format, website) and the Vitrina Ads choices under ads. A connected app receives exactly those keys; the workspace's own credentials may see further workspace-configuration keys, which are not contract and may change without notice.

curl -X PUT https://api.vitrinadev.com/api/v1/tenant/settings \
  -H "Authorization: Bearer $VITRINA_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "ads": {
      "tag_choice": "site"
    }
  }'

Ejemplo de respuesta (200)

{
  "data": {
    "name": "Automotora Demo",
    "timezone": "America/Santiago",
    "language": "es",
    "currency": "CLP",
    "website": "https://www.automotora-demo.cl",
    "ads": {
      "tag_choice": "site",
      "tag_choice_at": "2026-09-24T12:00:00.000Z"
    }
  }
}

Responde: 200 · 400 · 401 · 403 · 404 · 409 · 429

En esta página