---
title: "Create site log"
method: POST
path: "/site-logs"
tags: ["SiteLogs"]
---

# Create site log

`POST /site-logs`

## Request

- Base URL: `https://app.buildworkpro.com/api/v1`
- URL: `https://app.buildworkpro.com/api/v1/site-logs`
- Auth: HTTP bearer

## Headers

- `Idempotency-Key` string, uuid

## Request body

- object
  - `projectId` integer, required
  - `logDate` string, required
  - `title` string, nullable
  - `notes` string, required
  - `tags` string[]
  - `personnelCount` integer, nullable
  - `workPerformed` string, nullable
  - `materialsReceived` string, nullable
  - `visitorsOnSite` string, nullable
  - `issues` string, nullable
  - `lat` number, nullable
  - `lng` number, nullable
  - `clientId` string, uuid, nullable: Optional idempotency key (a UUID the client mints once per queued create and repeats on every retry). A repeat with the same key from the same user returns the existing record with 200 instead of creating a duplicate.

## Response `200`

Replay of an earlier create with the same `clientId` — the existing site log, unchanged

- object
  - `data` SiteLog, required
    - `id` integer, required
    - `projectId` integer, required
    - `logDate` union, required
      - string, date-time
      - string
    - `title` string, nullable, required
    - `notes` string, nullable, required
    - `personnelCount` integer, nullable, required
    - `workPerformed` string, nullable, required
    - `materialsReceived` string, nullable, required
    - `visitorsOnSite` string, nullable, required
    - `issues` string, nullable, required
    - `tags` string[], nullable, required
    - `lat` number, nullable, required
    - `lng` number, nullable, required
    - `isReviewed` boolean, required
    - `createdAt` union, required
      - string, date-time
      - string
    - `updatedAt` union, required
      - string, date-time
      - string
  - `meta` ResponseMeta, required
    - `request_id` string: Server-generated request identifier
    - `pagination` PaginationMeta
      - `cursor` string, nullable, required: Opaque cursor for the next page; null when no more results
      - `has_more` boolean, required: Whether more pages are available after this one
      - `count` integer, required: Items in this page

## Other responses

- `201`: Created
- `409`: Error
- `422`: Error

---

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