---
title: "Get Annual Report Pdf"
method: GET
path: "/companies/{company_id}/annual-report/pdf"
tags: ["reporting"]
---

# Get Annual Report Pdf

`GET /companies/{company_id}/annual-report/pdf`

## Request

- Base URL: `https://app.zeno-works.ch` (the document declares no server; this is the origin it was published from)
- URL: `https://app.zeno-works.ch/companies/{company_id}/annual-report/pdf`
- Auth: none declared

The fiscal year's Jahresrechnung as a PDF (CompanyMember).

Bilanz (OR Art. 959a) + Erfolgsrechnung (OR Art. 959b Abs. 2), on the statutory
Mindestgliederung, with the preceding year's figures beside them where the books hold
that year (OR Art. 958d Abs. 3). An **open** fiscal year still accepts postings, so its
document carries an ENTWURF band rather than being refused — the year-end path is a
review loop, and a fiduciary needs the draft to review.

The document states on its face that it comprises Bilanz and Erfolgsrechnung and that
the Anhang (OR Art. 959c) is not included. Explicit non-member ``company_id`` → 403.

``fiscal_year`` is **required**: the JSON sibling may fall back to the latest year with
data, but a document that silently reports a different year than the reader asked for
is a different kind of mistake.

## Path parameters

- `company_id` string, required

## Query parameters

- `fiscal_year` integer, required: The fiscal year to report on.
- `with_accounts` boolean: Print the chart accounts under each statutory position. On by default: it is what a Steuerverwaltung reviewer wants when a position looks unusual.

## Headers

- `authorization` string, nullable

## Cookies

- `access_token` string, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/zeno-works/apis/zeno-api.md) · [All operations](https://skmtc.dev/zeno-works/apis/zeno-api/llms.txt) · [OpenAPI document](https://skmtc.dev/zeno-works/apis/zeno-api/revisions/1eb93dde146c?raw)
