---
title: "Create a private customer location proof"
method: POST
path: "/v1/account/location-proofs"
---

# Create a private customer location proof

`POST /v1/account/location-proofs`

## Request

- Base URL: `https://loppee.com`
- URL: `https://loppee.com/v1/account/location-proofs`
- Auth: HTTP bearer

Accepts one fresh, consented device-location reading from a signed-in Loppee customer and returns only an opaque short-lived proof id. Exact coordinates are encrypted, never returned, and never placed in a search URL.

## Request body

- CustomerLocationProofRequest
  - `latitude` number, required
  - `longitude` number, required
  - `accuracy_meters` number, required
  - `captured_at` string, date-time, required

## Response `201`

Private location proof created.

- CustomerLocationProofResponse
  - `location_proof_id` string, uuid, required
  - `status` 'ready', required
  - `usable_until` string, date-time, required
  - `uses_remaining` integer, required
  - `coordinates_returned` unknown, required

## Other responses

- `400`: The location reading is stale, outside supported US bounds, or less accurate than 500 metres.
- `401`: A valid signed-in customer session is required.
- `403`: The session is not an active customer account.
- `429`: Too many location-proof requests.

---

[API](https://skmtc.dev/loppee/apis/loppee-business-registry-api-for-external-agents.md) · [All operations](https://skmtc.dev/loppee/apis/loppee-business-registry-api-for-external-agents/llms.txt) · [OpenAPI document](https://skmtc.dev/loppee/apis/loppee-business-registry-api-for-external-agents/revisions/37285f7cddcd?raw)
