> For the complete documentation index, see [llms.txt](https://monitoring.toolkit.citiobs.eu/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://monitoring.toolkit.citiobs.eu/data-platforms/how-to-offer-obs-data-model-api.md).

# How to offer observations with a neutral data model and in an interoperable API?

### Description

To offer observations using a neutral data model and in interoperable API, CitiObs proposes to use the SensorThings API and STAplus as the foundation for a vendor-neutral, data-neutral system.

SensorThings API (STA) is an open standard developed by the Open Geospatial Consortium (OGC) for connecting IoT devices, data, and applications using a geospatial-enabled, unified data model and RESTful web interface. It provides a standardized data structure for observation, linking data to sensors and things, without bias toward vendor or data type.

![OGC STA Sensing Entities Diagramm](/files/D2YKBKYdiTxjLKD9jldg)

Figure: OGC STA Sensing Entities Diagram

STAPlus is an extension to the OGC SensorThings API (STA) designed to improve the handling of sensor data, especially for multi-user environments and citizen science applications. It adds features for expressing ownership, licensing, and grouping of observations, addressing requirements such as user association, licensing for data re-use, and relating observations with other resources and supporting interoperability and compliance with FAIR principles. STAPlus prevents personal data storage in the API itself, keeping the model unbiased and privacy-compliant.

### Why is this relevant?

STA is already adopted in many smart cities, with the addition of the extension STAplus to include the human dimension of data collection and the concept of ownership by licencing. These standards ensure interoperability, rapid deployment, and the adoption of existing and future sensors, devices, and data, which therefore permit easy integration of the data generated by the COs in an interoperable architecture of services compatible with the European Open Science Cloud (EOSC) and other infrastructures.

### How can this be done?

1. **Deploy an STA server**: To deploy a SensorThings API (STA) service, use an existing open-source STA server implementation—one of the most widely used is FROST-Server.
2. **Enable STAplus extension**: To enable a STAPlus extension, use an existing open-source implementation such as the FROST-Server-PLUS plugin.
3. **Add observations**: Use the API to post observations, attaching them to datastreams owned by parties, and add licenses or group relationships according to your use case.
4. **Implement a APIs endopoints**: Consume and exchange data via API endpoints, ensuring licensing and ownership metadata travel with the data, upholding interoperability.

### Useful resources

* [OGC SensorThings API](https://www.ogc.org/standards/sensorthings/). OGC provides Geospatial Standards such as STA and STAPlus, an open, geospatial-enabled and unified way to interconnect the Internet of Things (IoT) devices, data, and applications over the Web.
* [FROST-Server github Repository](https://github.com/FraunhoferIOSB/FROST-Server). FROST-Server provides a open-source and full server implementation of STA service.
* [FROST-Server documentation](https://fraunhoferiosb.github.io/FROST-Server/). FROST-Server documentation provides a full tutorial and configuration guide for further customization, security, and scaling needs.

### You might also be interested in….

\*[How to deploy an architectural stack that transforms raw data to Decision Ready Information](/data-integration/how-deploy-arch-stack.md)

* [How to centralize access to Analysis Ready Data?](https://github.com/CitiObs/environmental-monitoring-toolkit/blob/main/docs/data-integration/how-centralize-access-ard.md)

\*[How to add a data visualization to support decision?](/data-integration/how-to-add-visual-support-system.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://monitoring.toolkit.citiobs.eu/data-platforms/how-to-offer-obs-data-model-api.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
