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

# Create a space

`POST /spaces`

Creates a new space.

## Request body

- Space — A data holder for features which points to a persistent storage.
  - `id` string — The unique identifier of the space which consists of an (optional) prefix and a base part (prefix-base).
  - `title` string — The space title.
  - `description` string — The space description in markdown format.
  - `owner` string — The identifier of the owner of this space, most likely the HERE account ID.
  - `shared` boolean — If set to __true__, every authenticated user can read the features in the space. When publishing a space it's also recommended to set the fields __copyright__ & __license__.
  - `readOnly` boolean — A flag indicating whether the space allows write operations (false) or not (true).
  - `copyright` Copyright[]
    - `label` string — The copyright label to be displayed by the client.
    - `alt` string — The description text for the label to be displayed by the client.
  - `license` 'AFL-3.0' | 'Apache-2.0' | 'Artistic-2.0' | 'BSL-1.0' | 'BSD-2-Clause' | 'BSD-3-Clause' | 'BSD-3-Clause-Clear' | 'CC0-1.0' | 'CC-BY-4.0' | 'CC-BY-SA-4.0' | 'WTFPL' | 'ECL-1.0' | 'ECL-2.0' | 'EUPL-1.1' | 'AGPL-3.0-only' | 'GPL-2.0-only' | 'GPL-3.0-only' | 'LGPL-2.1-only' | 'LGPL-3.0-only' | 'ISC' | 'LPPL-1.3c' | 'MS-PL' | 'MIT' | 'MPL-2.0' | 'OSL-3.0' | 'PostgreSQL' | 'OFL-1.1' | 'NCSA' | 'Unlicense' | 'Zlib' | 'ODbL-1.0' — Information about the license bound to the data within the space.
  - `storage` SpaceStorage — The configuration of the space storage provider to be contacted by the space API.
    - `id` string — The unique identifier of the connector to contact.
    - `params` SpaceStorageParams — The storage provider configuration, which contains optional parameters to be forwarded to the storage provider.
  - `extends` Extension — The extension definition which allows the space's content to be based on an existing space. The entities in the extension space override the features with the same id in the extended space.
    - `spaceId` string, required — The space id in which this space is extending
  - `client` SpaceClientInfo — An arbitrary object holding some hints or settings for the client, for example rendering instructions.
  - `packages` string[] — List of packages that this space belongs to.
  - `cid` string — An additional identifier specifying a context of the owner.
  - `createdAt` integer — The UNIX Epoch time of when this space has been created (in milliseconds since 01.01.1970). Defaults to October 1st, 2018.
  - `updatedAt` integer — The UNIX Epoch time of when this space has been last updated (in milliseconds since 01.01.1970). Defaults to October 1st, 2018.
  - `cacheTTL` integer — The maximum amount of seconds of how long to hold objects of this Space in a cache.
  - `contentUpdatedAt` integer — The UNIX Epoch time of when the content of this space has been last updated (in milliseconds since 01.01.1970). Defaults to October 1st, 2018.
  - `searchableProperties` SearchableProperties — A map defined by the user that indicates, which of the feature's properties to be searchable. The key is the name of the property (nested properties can be specified using the dot-notation e.g.: some.nested.property) and the value is a boolean telling whether the property should be searchable or not. Setting the value to `false` the property won't be searchable at all. (Even if the property was chosen to be searchable by the automated property-search algorithm before). Optional it is possible to define the datatype (object,array,string,number,boolean) of the property eg.: some.nested.property::array. If the datatype is not given, an attempt is made to determine it automatically.
  - `volatilityAtLastContentUpdate` number, double — The calculated volatility at the last content update time.
  - `volatility` number, double — An indicator, if the data in the space is edited often ( value tends to 1 ) or static ( value tends to 0 ).
  - `rights` string[] — The list of rights the current user has when accessing the space. This property is only shown when listing spaces with the option _includeRights=true_
  - `autoCacheProfile` CacheProfile — Provides cache information used to determine where and for how long the content should be held. Each of the properties of this object represents a component and its TTL (time-to-live) in seconds, where zero value means the content should not be cached.
    - `browserTTL` integer — For how long, in seconds, the client should hold the content cached.
    - `cdnTTL` integer — For how long, in seconds, the CDN should hold the content cached.
    - `serviceTTL` integer — For how long, in seconds, Data Hub should hold the content cached.
  - `listeners` Connector[] — A list of connector configurations in which Data Hub sends events asynchronously.
    - `id` string — The connector ID, which should correspond to one of the existing connectors in Data Hub.
    - `eventTypes` string[] — An array of strings where each of the elements, describes the type of event and in which phase Data Hub should notify the connector.
    - `params` unknown
  - `processors` Connector[] — A list of connector configurations in which Data Hub sends events synchronously.
    - `id` string — The connector ID, which should correspond to one of the existing connectors in Data Hub.
    - `eventTypes` string[] — An array of strings where each of the elements, describes the type of event and in which phase Data Hub should notify the connector.
    - `params` unknown
  - `versionsToKeep` integer — Defines how many versions will be kept, while older versions may be purged. By default this value will be set to 1. That means there will be only one (HEAD) state of the space and no further versions will be kept. If the value is bigger than 1, then older versions, up to the "versionsToKeep" version, can be retrieved by e.g. ?version=<version_number>
  - `tags` object — A map containing the tag ids and the respective referenced versions.

## Response `200`

The space.

- Space — A data holder for features which points to a persistent storage.
  - `id` string — The unique identifier of the space which consists of an (optional) prefix and a base part (prefix-base).
  - `title` string — The space title.
  - `description` string — The space description in markdown format.
  - `owner` string — The identifier of the owner of this space, most likely the HERE account ID.
  - `shared` boolean — If set to __true__, every authenticated user can read the features in the space. When publishing a space it's also recommended to set the fields __copyright__ & __license__.
  - `readOnly` boolean — A flag indicating whether the space allows write operations (false) or not (true).
  - `copyright` Copyright[]
    - `label` string — The copyright label to be displayed by the client.
    - `alt` string — The description text for the label to be displayed by the client.
  - `license` 'AFL-3.0' | 'Apache-2.0' | 'Artistic-2.0' | 'BSL-1.0' | 'BSD-2-Clause' | 'BSD-3-Clause' | 'BSD-3-Clause-Clear' | 'CC0-1.0' | 'CC-BY-4.0' | 'CC-BY-SA-4.0' | 'WTFPL' | 'ECL-1.0' | 'ECL-2.0' | 'EUPL-1.1' | 'AGPL-3.0-only' | 'GPL-2.0-only' | 'GPL-3.0-only' | 'LGPL-2.1-only' | 'LGPL-3.0-only' | 'ISC' | 'LPPL-1.3c' | 'MS-PL' | 'MIT' | 'MPL-2.0' | 'OSL-3.0' | 'PostgreSQL' | 'OFL-1.1' | 'NCSA' | 'Unlicense' | 'Zlib' | 'ODbL-1.0' — Information about the license bound to the data within the space.
  - `storage` SpaceStorage — The configuration of the space storage provider to be contacted by the space API.
    - `id` string — The unique identifier of the connector to contact.
    - `params` SpaceStorageParams — The storage provider configuration, which contains optional parameters to be forwarded to the storage provider.
  - `extends` Extension — The extension definition which allows the space's content to be based on an existing space. The entities in the extension space override the features with the same id in the extended space.
    - `spaceId` string, required — The space id in which this space is extending
  - `client` SpaceClientInfo — An arbitrary object holding some hints or settings for the client, for example rendering instructions.
  - `packages` string[] — List of packages that this space belongs to.
  - `cid` string — An additional identifier specifying a context of the owner.
  - `createdAt` integer — The UNIX Epoch time of when this space has been created (in milliseconds since 01.01.1970). Defaults to October 1st, 2018.
  - `updatedAt` integer — The UNIX Epoch time of when this space has been last updated (in milliseconds since 01.01.1970). Defaults to October 1st, 2018.
  - `cacheTTL` integer — The maximum amount of seconds of how long to hold objects of this Space in a cache.
  - `contentUpdatedAt` integer — The UNIX Epoch time of when the content of this space has been last updated (in milliseconds since 01.01.1970). Defaults to October 1st, 2018.
  - `searchableProperties` SearchableProperties — A map defined by the user that indicates, which of the feature's properties to be searchable. The key is the name of the property (nested properties can be specified using the dot-notation e.g.: some.nested.property) and the value is a boolean telling whether the property should be searchable or not. Setting the value to `false` the property won't be searchable at all. (Even if the property was chosen to be searchable by the automated property-search algorithm before). Optional it is possible to define the datatype (object,array,string,number,boolean) of the property eg.: some.nested.property::array. If the datatype is not given, an attempt is made to determine it automatically.
  - `volatilityAtLastContentUpdate` number, double — The calculated volatility at the last content update time.
  - `volatility` number, double — An indicator, if the data in the space is edited often ( value tends to 1 ) or static ( value tends to 0 ).
  - `rights` string[] — The list of rights the current user has when accessing the space. This property is only shown when listing spaces with the option _includeRights=true_
  - `autoCacheProfile` CacheProfile — Provides cache information used to determine where and for how long the content should be held. Each of the properties of this object represents a component and its TTL (time-to-live) in seconds, where zero value means the content should not be cached.
    - `browserTTL` integer — For how long, in seconds, the client should hold the content cached.
    - `cdnTTL` integer — For how long, in seconds, the CDN should hold the content cached.
    - `serviceTTL` integer — For how long, in seconds, Data Hub should hold the content cached.
  - `listeners` Connector[] — A list of connector configurations in which Data Hub sends events asynchronously.
    - `id` string — The connector ID, which should correspond to one of the existing connectors in Data Hub.
    - `eventTypes` string[] — An array of strings where each of the elements, describes the type of event and in which phase Data Hub should notify the connector.
    - `params` unknown
  - `processors` Connector[] — A list of connector configurations in which Data Hub sends events synchronously.
    - `id` string — The connector ID, which should correspond to one of the existing connectors in Data Hub.
    - `eventTypes` string[] — An array of strings where each of the elements, describes the type of event and in which phase Data Hub should notify the connector.
    - `params` unknown
  - `versionsToKeep` integer — Defines how many versions will be kept, while older versions may be purged. By default this value will be set to 1. That means there will be only one (HEAD) state of the space and no further versions will be kept. If the value is bigger than 1, then older versions, up to the "versionsToKeep" version, can be retrieved by e.g. ?version=<version_number>
  - `tags` object — A map containing the tag ids and the respective referenced versions.

## Other responses

- `400` — Malformed or Bad Request.
- `401` — Unauthorized to perform the request.
- `403` — Forbidden request. Insufficient rights to perform the request.
- `409` — An error response which indicates a conflict.
- `413` — Request entity too large.

---

[API](https://skmtc.net/here/apis/here-xyz-hub.md) · [All operations](https://skmtc.net/here/apis/here-xyz-hub/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/here/here-xyz-hub/versions/1c6c6a2bcac9/schema)
