---
title: "Ensure Event App Project Endpoint"
method: POST
path: "/internal/eventApp/ensureProject"
---

# Ensure Event App Project Endpoint

`POST /internal/eventApp/ensureProject`

## Request

- Base URL: `https://api.pavoot.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.pavoot.com/internal/eventApp/ensureProject`
- Auth: none declared

Create (or return) the Photos project for an Events event.

Idempotent on `(media org, external_event_id)`, which matters more here
than on the manual path: this is called from a check-in, check-ins arrive
in bursts, and two guests scanning at the same instant must not produce
two projects for one event.

## Request body

- EnsureEventProjectRequest
  - `mediaOrgId` integer, required
  - `eventId` string, required
  - `eventName` string, nullable
  - `startsAt` string, nullable
  - `endsAt` string, nullable
  - `createdBy` string, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

## Changes

- **2026-09-17** `b580245ec7c5`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/pavoot/apis/pavoot-api/changes/internal/eventApp/ensureProject/post.md)

---

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