---
title: "Retrieve form dimensions"
method: GET
path: "/forms/{formId}/analytics/dimensions"
tags: ["Forms"]
---

# Retrieve form dimensions

`GET /forms/{formId}/analytics/dimensions`

## Request

- Base URL: `https://api.tally.so`
- URL: `https://api.tally.so/forms/{formId}/analytics/dimensions`
- Auth: HTTP bearer

Returns visitor breakdowns by source, browser, OS, device, location, and form language.

## Path parameters

- `formId` string, required

## Query parameters

- `period` 'today' | 'yesterday' | '24h' | '7d' | '30d' | '3m' | '6m' | '12m' | 'all', required

## Response `200`

Form dimensions analytics

- object
  - `source` object
  - `browser` object
  - `os` object
  - `device` object
  - `country` object
  - `city` object
  - `language` object: Visits per form language code, e.g. `nl` or `pt-BR`. A visit records a language only when the form has more than one language at that time.

## Other responses

- `401`: Unauthorized
- `403`: Forbidden
- `404`: Form not found

## Changes

- **2026-10-29** `8b37e41e11fa`: 1 info
  - added the optional property `language` to the response with the `200` status

[Operation history](https://skmtc.dev/tally/apis/tally-api/changes/forms/:formId/analytics/dimensions/get.md)

---

[API](https://skmtc.dev/tally/apis/tally-api.md) - [All operations](https://skmtc.dev/tally/apis/tally-api/llms.txt) - [OpenAPI document](https://skmtc.dev/tally/apis/tally-api/revisions/8b37e41e11fa?raw)
