---
title: "Create a GL period"
method: POST
path: "/companies/{companyId}/gl-periods"
tags: ["GL Periods"]
---

# Create a GL period

`POST /companies/{companyId}/gl-periods`

## Request

- Base URL: `https://api.medianfi.com/api/v1`
- URL: `https://api.medianfi.com/api/v1/companies/{companyId}/gl-periods`
- Auth: HTTP bearer

Requires company role admin or owner.

## Request body

- CreateGlPeriodInput
  - `startDate` string, date, required
  - `endDate` string, date, required

## Response `201`

GL period created

- GlPeriodResponse
  - `success` boolean
  - `data` GlPeriod
    - `id` string, uuid
    - `companyId` string, uuid
    - `startDate` string, date
    - `endDate` string, date
    - `status` 'open' | 'closed'
    - `closedAt` string, date-time, nullable
    - `closedByUserId` string, uuid, nullable
    - `filingLockedAt` string, date-time, nullable
    - `filingLockedByUserId` string, uuid, nullable

## Other responses

- `401`: Authentication required
- `403`: Insufficient permissions or not a company member
- `409`: Period overlaps with existing period
- `422`: Validation error

---

[API](https://skmtc.dev/medianfi/apis/median-api.md) · [All operations](https://skmtc.dev/medianfi/apis/median-api/llms.txt) · [OpenAPI document](https://skmtc.dev/medianfi/apis/median-api/revisions/20090ea32b0d?raw)
