AmigoCloud API
Aug 27,2026

GISBox is a one-stop 3D GIS data editing, conversion and publishing platform that supports editing in multiple GIS formats such as OSGB/GEOTIFF/RVT, converting to 3DTiles/Terrain and publishing.

Introduction

AmigoCloud API is an open interface for cloud-based geospatial data services. After authenticating with a dedicated API key, users can perform operations such as reading, writing, querying, and managing cloud GIS datasets. It is compatible with the GDAL/OGR driver, supports multiple spatial data formats including vector and raster, and provides a Python SDK for easy developer integration. It is suitable for scenarios such as offline mobile data collection and multi-device data synchronization.

File Structure

According to the public GDAL/OGR driver documentation and related information on the AmigoCloud API, the file/data structure of the AmigoCloud API can be described at the following levels:

  • Project Level: Multiple projects can be created under each AmigoCloud account. The project ID is the basic unit for accessing data, typically formatted as AmigoCloud:<project_id>.
  • Dataset Level: A project contains multiple datasets (equivalent to tables in a database). Each dataset has a unique dataset_id and name, and is accessed via the datasets=id1,id2,... parameter.
  • Feature/Record Level: Each dataset stores geographic features (points, lines, polygons). Each feature has a system-generated amigo_id (GUID) as its unique identifier, along with a geometry field and attribute fields.
  • Geometry Field: Supports multiple geometry types (Point, LineString, Polygon, etc.). The geometry column is nullable by default (GEOMETRY_NULLABLE=YES), and can be modified through configuration.
  • Attribute Fields: Each feature can carry any number of attribute columns, with types including string, numeric, date, etc., and supports attribute filtering queries.

Pros

  1. Seamless integration with the GDAL/OGR ecosystem: As a native driver of GDAL/OGR, it can be directly accessed using mature command-line tools such as ogrinfo and ogr2ogr without the need for additional client-side development, resulting in a low learning curve.
  2. Full CRUD capabilities: Through the OGR API, database-level operations such as INSERT (CreateFeature), UPDATE (SetFeature), DELETE (DeleteFeature), CREATE TABLE (CreateLayer), and DROP TABLE (DeleteLayer) can be mapped and implemented, providing complete functionality.
  3. Supports both spatial and attribute filtering: Spatial filters (SetSpatialFilter) and attribute filters (SetAttributeFilter) can be forwarded to the server for execution, reducing data transfer and improving query efficiency.
  4. Multi-format compatibility: Through the GDAL driver layer, it supports import and export of more than 40 vector and raster formats (such as Shapefile, GeoJSON, GeoPackage, FlatGeobuf, etc.), making format conversion highly convenient.
  5. Provides a Python SDK: An official Python SDK is available, facilitating the integration of cloud GIS data operations into scripts and automated workflows.
  6. Suitable for offline and multi-device synchronization scenarios: Particularly well-suited for typical GIS workflows involving offline data collection on mobile devices followed by upload and synchronization to the cloud.

Cons

  1. Network-dependent, offline unavailable: All operations must be performed via HTTPS requests to the cloud service. It is completely unusable without network connectivity and is not suitable for purely offline operations.
  2. Performance limitations with frequent interactions: The documentation explicitly notes that when there are numerous client/server round-trip interactions (e.g., inserting features one by one), the default synchronous publishing mode can lead to noticeable performance degradation, requiring batch operation optimization.
  3. Strong dependency on the AmigoCloud platform: The service is defined and controlled by the AmigoCloud backend. All permissions, availability, and service stability are subject to this platform, posing a vendor lock-in risk.
  4. Limited documentation and community resources: Compared to mainstream cloud GIS platforms (such as ArcGIS Online and GeoServer), AmigoCloud has fewer public documentation, community discussions, and third-party tutorials available, making issue troubleshooting more difficult.
  5. Feature depth inferior to professional GIS cloud platforms: Lacks advanced enterprise-level GIS features such as advanced spatial analysis, complex editing transactions, version management, and fine-grained permission control. It is better suited for lightweight data management rather than complex spatial processing.
  6. Geometry field nullable by default: GEOMETRY_NULLABLE defaults to YES. If a project has strict data integrity requirements, this must be explicitly configured; otherwise, invalid geometry records may be created.

Application Scenario

The AmigoCloud API is suitable for scenarios where spatial data needs to be centrally stored in the cloud and shared across multiple devices—for example, offline data collected in the field on mobile devices and then uploaded to the cloud for unified management and synchronization. It is also suitable for team-collaborative GIS projects, where multiple users can simultaneously perform CRUD operations on the same dataset via the API, enabling real-time data updates and sharing. Additionally, with its support for various vector and raster formats, it can be used for cloud-based conversion and distribution between different spatial data formats, as well as providing backend spatial data services for automated scripts and lightweight web applications.

Example

1. AmigoCloud Map.

Snipaste_2026-07-08_09-33-25_1783474467815.jpg

File Opening Mode

1. Contaminated land assessment.

Snipaste_2026-07-08_09-43-13_1783475018348.jpg

Related GIS Services

LocationIQ API

Geoapify Maps & Location API

Stadia Maps API

Thunderforest Maps API

References

  1. https://amigocloud.com/
  2. https://gdal.org/en/stable/drivers/vector/amigocloud.html
  3. https://github.com/amigocloud/amigocloud_samples