---
title: "Create one or more new geodata objects"
method: POST
path: "/{apiKey}/api/geodata"
tags: ["Geodata"]
---

# Create one or more new geodata objects

`POST /{apiKey}/api/geodata`

## Oauth2 Roles ##  
 - Requires user to have one of the following roles: admin, editor, owner, service

## Path parameters

- `apiKey` string, required

## Request body

- Geodata[]
  - `id` string, nullable
  - `lastModified` string, date-time, nullable
  - `lastModifiedBy` string, nullable
  - `createdAt` string, date-time, nullable
  - `createdBy` string, nullable
  - `parentId` string, nullable
  - `datasetId` string, nullable
  - `externalId` string, nullable
  - `solutionId` string, nullable
  - `baseType` string, nullable
  - `displayTypeId` string, nullable
  - `displaySetting` DisplaySetting
    - `name` string, nullable
    - `iconUrl` string, nullable
    - `iconScale` number, double, nullable
    - `iconSize` IconSize
      - `width` number, double, nullable
      - `height` number, double, nullable
    - `iconPlacement` union
      - 0 | 1 | 2 | 3 | 4
      - 'ABOVE' | 'BELOW' | 'LEFT' | 'RIGHT' | 'CENTER'
    - `labelTemplate` string, nullable
    - `visible` boolean, nullable
    - `zoomFrom` number, double, nullable
    - `zoomTo` number, double, nullable
    - `labelZoomFrom` number, double, nullable
    - `labelZoomTo` number, double, nullable
    - `labelMaxWidth` number, double, nullable
    - `iconVisible` boolean, nullable
    - `labelVisible` boolean, nullable
    - `polygon` DisplayPolygon
      - `visible` boolean, nullable
      - `zoomFrom` number, double, nullable
      - `zoomTo` number, double, nullable
      - `strokeWidth` number, double, nullable
      - `strokeColor` string, nullable
      - `strokeOpacity` number, double, nullable
      - `fillColor` string, nullable
      - `fillOpacity` number, double, nullable
      - `lightnessFactor` number, double, nullable
    - `markerElevation` number, double, nullable
    - `walls` Data3D
      - `visible` boolean, nullable
      - `height` number, double, nullable
      - `color` string, nullable
      - `zoomFrom` number, double, nullable
      - `zoomTo` number, double, nullable
      - `lightnessFactor` number, double, nullable
    - `extrusion` Data3D
      - `visible` boolean, nullable
      - `height` number, double, nullable
      - `color` string, nullable
      - `zoomFrom` number, double, nullable
      - `zoomTo` number, double, nullable
      - `lightnessFactor` number, double, nullable
    - `model3D` Model3d
      - `visible` boolean, nullable
      - `zoomFrom` number, double, nullable
      - `zoomTo` number, double, nullable
      - `model` string, nullable
      - `rotationX` number, double, nullable
      - `rotationY` number, double, nullable
      - `rotationZ` number, double, nullable
      - `scale` number, double, nullable
    - `model2D` Model2d
      - `visible` boolean, nullable
      - `zoomFrom` number, double, nullable
      - `zoomTo` number, double, nullable
      - `model` string, nullable
      - `widthMeters` number, double, nullable
      - `heightMeters` number, double, nullable
      - `bearing` number, double, nullable
    - `badge` BadgeDisplayRule
      - `visible` boolean, nullable
      - `zoomFrom` number, double, nullable
      - `zoomTo` number, double, nullable
      - `radius` number, double, nullable
      - `strokeWidth` number, double, nullable
      - `strokeColor` string, nullable
      - `fillColor` string, nullable
      - `scale` number, double, nullable
      - `position` union
        - 0 | 1 | 2 | 3
        - 'TOP_LEFT' | 'TOP_RIGHT' | 'BOTTOM_LEFT' | 'BOTTOM_RIGHT'
    - `labelStyle` LabelDisplayRule
      - `textSize` integer, nullable
      - `textColor` string, nullable
      - `textOpacity` number, double, nullable
      - `haloColor` string, nullable
      - `haloWidth` integer, nullable
      - `haloBlur` integer, nullable
      - `bearing` number, double, nullable
      - `graphic` GraphicsLabel
        - `backgroundImage` string, nullable
        - `stretchX` array[], nullable
          - integer[]
        - `stretchY` array[], nullable
          - integer[]
        - `content` integer[], nullable
      - `labelPosition` union
        - 0 | 1 | 2 | 3
        - 'TOP' | 'BOTTOM' | 'LEFT' | 'RIGHT'
    - `labelType` union
      - 0 | 1 | 2
      - 'FLOATING' | 'FLAT' | 'GRAPHIC'
  - `geometry` Geometry
    - `type` 0 | 1 | 2 | 3 | 4 | 5 | 6
  - `anchor` Point
    - `type` 0 | 1 | 2 | 3 | 4 | 5 | 6
    - `coordinates` number[], nullable
  - `aliases` string[], nullable
  - `categories` string[], nullable
  - `status` 0 | 1 | 2 — Bit 1: Active. Bit 2: Searchable. For Locations Status.Active is not used in never SDKs, it is overwritten with bool from evaluating if the current time is between ActiveFrom-ActiveTo. Searchable is used
  - `baseTypeProperties` object, nullable
  - `properties` object, nullable
  - `tilesUrl` string, nullable
  - `tileStyles` TileStyle[], nullable
    - `displayName` string, nullable
    - `style` string, nullable
  - `additionalDetails` GeodataDetail[], nullable
    - `key` string, nullable, required
    - `detailType` union, required
      - 0 | 1 | 2 | 3
      - 'email' | 'phone' | 'url' | 'openinghours'
    - `value` string, nullable
    - `active` boolean, nullable
    - `icon` string, nullable
    - `displayText` object, nullable
    - `openingHours` OpeningHourInfo
      - `standardOpeningHours` StandardOpeningHours
        - `monday` OpeningHours
          - `closedAllDay` boolean
          - `startTime` string, time, nullable
          - `endTime` string, time, nullable
        - `tuesday` OpeningHours
          - `closedAllDay` boolean
          - `startTime` string, time, nullable
          - `endTime` string, time, nullable
        - `wednesday` OpeningHours
          - `closedAllDay` boolean
          - `startTime` string, time, nullable
          - `endTime` string, time, nullable
        - `thursday` OpeningHours
          - `closedAllDay` boolean
          - `startTime` string, time, nullable
          - `endTime` string, time, nullable
        - `friday` OpeningHours
          - `closedAllDay` boolean
          - `startTime` string, time, nullable
          - `endTime` string, time, nullable
        - `saturday` OpeningHours
          - `closedAllDay` boolean
          - `startTime` string, time, nullable
          - `endTime` string, time, nullable
        - `sunday` OpeningHours
          - `closedAllDay` boolean
          - `startTime` string, time, nullable
          - `endTime` string, time, nullable

## Response `200`

OK

- string[]

## Other responses

- `201` — Created
- `400` — BadRequest
- `401` — Unauthorized. User needs to login first.

---

[API](https://skmtc.net/mapsindoors/apis/integration-api.md) · [All operations](https://skmtc.net/mapsindoors/apis/integration-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/mapsindoors/integration-api/revisions/7f2454dc70d5/schema)
