---
title: "Create a space"
method: POST
path: "/maps-service/spaces"
tags: ["Spaces"]
---

# Create a space

`POST /maps-service/spaces`

## Request

- Base URL: `https://api.therr.com/v1`
- URL: `https://api.therr.com/v1/maps-service/spaces`
- Auth: API key in header `x-api-key`

Creates a new business listing / space. Requires latitude, longitude, and a message. Optionally link it to your organization via `organizationId`.

## Request body

- CreateSpaceRequest
  - `fromUserId` string, uuid, required: Your user ID
  - `message` string, required: Space description / about text
  - `notificationMsg` string: Short notification message (displayed in feeds)
  - `latitude` number, required: Latitude of the space location
  - `longitude` number, required: Longitude of the space location
  - `radius` number: Radius in meters (default: 10). Required if polygonCoords not provided.
  - `polygonCoords` array[]: Array of [latitude, longitude] pairs defining the space boundary. Required if radius not provided.
    - number[]
  - `category` string: Business category (e.g., 'restaurant', 'bar', 'shop')
  - `isPublic` boolean: Whether the space is publicly visible
  - `isDraft` boolean: Whether this is a draft listing
  - `organizationId` string, uuid: Link space to an organization. You must have admin or manager access to the organization.
  - `addressReadable` string: Human-readable address
  - `addressStreetAddress` string
  - `addressRegion` string
  - `addressLocality` string
  - `postalCode` integer
  - `phoneNumber` string
  - `businessEmail` string, email
  - `websiteUrl` string, uri
  - `menuUrl` string, uri
  - `orderUrl` string, uri
  - `reservationUrl` string, uri
  - `priceRange` integer: Price range (1-5)
  - `openingHours` object: Opening hours by day of week
  - `hashTags` string: Comma-separated hash tags
  - `medias` object[]: Array of media objects to attach

## Response `201`

Space created successfully

- Space
  - `id` string, uuid
  - `fromUserId` string, uuid
  - `organizationId` string, uuid, nullable
  - `message` string
  - `notificationMsg` string
  - `category` string
  - `latitude` number
  - `longitude` number
  - `radius` number
  - `region` string: Country code
  - `isPublic` boolean
  - `isDraft` boolean
  - `addressReadable` string
  - `phoneNumber` string
  - `businessEmail` string
  - `websiteUrl` string
  - `menuUrl` string
  - `orderUrl` string
  - `reservationUrl` string
  - `priceRange` integer
  - `openingHours` object
  - `hashTags` string
  - `createdAt` string, date-time
  - `updatedAt` string, date-time

## Other responses

- `400`: Validation error or duplicate post
- `403`: Insufficient permissions for the specified organization

---

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