---
title: "Get latest report for a project"
method: GET
path: "/v1/reports/latest"
tags: ["Reports"]
---

# Get latest report for a project

`GET /v1/reports/latest`

## Request

- Base URL: `https://www.seoforgpt.io/api`
- URL: `https://www.seoforgpt.io/api/v1/reports/latest`
- Auth: HTTP bearer

## Query parameters

- `projectId` string, uuid, required
- `source` 'main' | 'custom'
- `view` 'raw' | 'summary' | 'full'
- `answer_detail` 'summary' | 'full'
- `raw_results_limit` integer
- `raw_results_offset` integer

## Response `200`

OK

- ReportResponse
  - `data` object
  - `meta` BillingMeta: Plan and quota snapshot (shape may evolve)

## Other responses

- `400`: Invalid input
- `401`: Missing or invalid bearer token
- `404`: Resource not found
- `429`: Rate limit exceeded. Responses include the current IETF `RateLimit` and `RateLimit-Policy` structured fields, compatibility `RateLimit-*` and `X-RateLimit-*` fields, and `Retry-After` on 429.
- `500`: Server error
- `default`: Any documented or unexpected 4xx or 5xx response uses the same typed error envelope.

---

[API](https://skmtc.dev/seoforgpt/apis/seoforgpt-public-api.md) · [All operations](https://skmtc.dev/seoforgpt/apis/seoforgpt-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/seoforgpt/apis/seoforgpt-public-api/revisions/d90da8f1ea73?raw)
