UNICEF Data Context layer API
The Context layer API from UNICEF Data — 6 operation(s) for context layer.
The Context layer API from UNICEF Data — 6 operation(s) for context layer.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/unicef-data-context-layer-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: GeoSight Basemap Context layer API
version: v1.0.0
servers:
- url: https://geosight.unicef.org/api/v1
security:
- ApiKey Auth: []
tags:
- name: Context layer
paths:
/context-layers/:
parameters: []
get:
operationId: context-layer-list
description: Return list of accessed context layer for the user.
parameters:
- name: page
in: query
description: Page number in pagination
schema:
type: integer
default: 1
- name: page_size
in: query
description: Total records in a page
schema:
type: integer
default: 25
- name: sort
in: query
description: 'Fields to be sorted should be specified as a comma-separated list.e.g: sort=name for asc, -sort=name for desc'
required: false
schema:
type: string
- name: fields
in: query
description: 'Fields to be returned should be specified as a comma-separated list.e.g: fields=__all__ for returning all fields, fields=name,category to return just name and category'
required: false
schema:
type: string
- name: name__contains
in: query
description: Filter data by partial name.
schema:
type: string
- name: description__contains
in: query
description: Filter data by partial description.
schema:
type: string
- name: category__name__in
in: query
description: Filter data by multiple category. Put multiple filter using comma separator.
schema:
type: string
- name: type__in
in: query
description: Filter data by multiple type. Put multiple filter using comma separator.
schema:
type: string
responses:
'200':
description: ''
content:
application/json:
schema:
required:
- count
- results
type: object
properties:
count:
type: integer
next:
type:
- string
- 'null'
format: uri
previous:
type:
- string
- 'null'
format: uri
results:
type: array
items:
$ref: '#/components/schemas/ContextLayer'
tags:
- Context layer
post:
operationId: context-layer-create
description: Create a context layer.
responses:
'201':
description: ''
content:
application/json:
schema:
description: Data that is needed to create/edit context layer.
type: object
properties:
name:
title: Name
type: string
description:
title: Description
type: string
category:
title: Category
type: string
url:
title: Url
type: string
type:
title: Type
description: The choices are ['ARCGIS', 'Geojson', 'Raster COG', 'Raster Tile', 'Vector Tile', 'Related Table', 'Cloud Native GIS Layer']
type: string
styles:
title: Styles
description: String of JSON containing style configuration. The styles are simply a list of layers in a Mapbox style.
type: object
example:
name: Context Layer
description: ''
layer_type: Cloud Native GIS Layer
category: Test
styles:
- id: '1'
type: circle
paint:
circle-color: '#98F194'
circle-radius: 6
circle-opacity: 1
circle-stroke-width: 1
source: 00000000-0000-0000-0000-000000000000
source-layer: default
- id: '2'
type: circle
paint:
circle-color: '#88005C'
circle-radius: 6
circle-opacity: 1
circle-stroke-width: 1
source: 00000000-0000-0000-0000-000000000000
source-layer: default
tags:
- Context layer
requestBody:
content:
application/json:
schema:
description: Data that is needed to create/edit context layer.
type: object
properties:
name:
title: Name
type: string
description:
title: Description
type: string
category:
title: Category
type: string
url:
title: Url
type: string
type:
title: Type
description: The choices are ['ARCGIS', 'Geojson', 'Raster COG', 'Raster Tile', 'Vector Tile', 'Related Table', 'Cloud Native GIS Layer']
type: string
styles:
title: Styles
description: String of JSON containing style configuration. The styles are simply a list of layers in a Mapbox style.
type: object
example:
name: Context Layer
description: ''
layer_type: Cloud Native GIS Layer
category: Test
styles:
- id: '1'
type: circle
paint:
circle-color: '#98F194'
circle-radius: 6
circle-opacity: 1
circle-stroke-width: 1
source: 00000000-0000-0000-0000-000000000000
source-layer: default
- id: '2'
type: circle
paint:
circle-color: '#88005C'
circle-radius: 6
circle-opacity: 1
circle-stroke-width: 1
source: 00000000-0000-0000-0000-000000000000
source-layer: default
required: true
/context-layers/{context_layer_id}/attributes/:
parameters:
- name: context_layer_id
in: path
required: true
schema:
type: string
get:
operationId: context-layer-attribute-list
description: Return attributes of accessed context layer for the user.Specifically for cloud native layer.
parameters:
- name: page
in: query
description: Page number in pagination
schema:
type: integer
default: 1
- name: page_size
in: query
description: Total records in a page
schema:
type: integer
default: 25
- name: sort
in: query
description: 'Fields to be sorted should be specified as a comma-separated list.e.g: sort=name for asc, -sort=name for desc'
required: false
schema:
type: string
- name: fields
in: query
description: 'Fields to be returned should be specified as a comma-separated list.e.g: fields=__all__ for returning all fields, fields=name,category to return just name and category'
required: false
schema:
type: string
responses:
'200':
description: ''
tags:
- Context layer
/context-layers/{context_layer_id}/data/download/:
parameters:
- name: context_layer_id
in: path
required: true
schema:
type: string
post:
operationId: context-layer-features-download
description: Download data based on output type.
parameters:
- name: file_format
in: query
description: Selected file format to be returned.
required: true
schema:
type: string
enum:
- original
- geojson
- shapefile
- geopackage
- kml
responses:
'201':
description: ''
tags:
- Context layer
/context-layers/{context_layer_id}/data/features/:
parameters:
- name: context_layer_id
in: path
required: true
schema:
type: string
get:
operationId: context-layer-features-list
description: Retrieve features of accessed context layer for the user.Specifically for cloud native layer.
parameters:
- name: page
in: query
description: Page number in pagination
schema:
type: integer
default: 1
- name: page_size
in: query
description: Total records in a page
schema:
type: integer
default: 25
- name: sort
in: query
description: 'Fields to be sorted should be specified as a comma-separated list.e.g: sort=name for asc, -sort=name for desc'
required: false
schema:
type: string
- name: fields
in: query
description: 'Fields to be returned should be specified as a comma-separated list.e.g: fields=__all__ for returning all fields, fields=name,category to return just name and category'
required: false
schema:
type: string
responses:
'200':
description: ''
tags:
- Context layer
post:
operationId: context-layer-features-post
description: 'Add new feature(s) for the accessed context layer for the user.
Need to be at least edit data permission.
Payload is geojson format. The geometry type should be the same with the current data.
'
responses:
'201':
description: ''
content:
application/json:
schema:
description: Geojson data.
type: object
example:
type: FeatureCollection
features:
- type: Feature
properties:
id: 1
name: New data
category: Category 1
geometry:
type: Point
coordinates:
- 0
- 0
tags:
- Context layer
requestBody:
content:
application/json:
schema:
description: Geojson data.
type: object
example:
type: FeatureCollection
features:
- type: Feature
properties:
id: 1
name: New data
category: Category 1
geometry:
type: Point
coordinates:
- 0
- 0
required: true
patch:
operationId: context-layer-features-put
description: "Update filtered feature of the accessed context layer for the user. Restricted to updating only one feature at a time. \nNeed to be at least edit data permission.\n\nPayload is in json with field names as keys and value as the new value. \ne.g. {\"field_1\": \"new_value\", \"field_2\": \"new_value}."
responses:
'200':
description: ''
tags:
- Context layer
delete:
operationId: context-layer-features-delete
description: 'Remove filtered feature of the accessed context layer for the user. Restricted to deleting only one feature at a time.
Need to be at least edit data permission.'
responses:
'204':
description: ''
tags:
- Context layer
/context-layers/{context_layer_id}/data/replace/:
parameters:
- name: context_layer_id
in: path
required: true
schema:
type: string
post:
operationId: context-layer-features-replace
description: 'Replace all data ofthe accessed context layer for the user.
Need to be at least edit data permission.
Payload is geojson format.'
responses:
'201':
description: ''
content:
application/json:
schema:
description: Geojson data.
type: object
example:
type: FeatureCollection
features:
- type: Feature
properties:
id: 1
name: New data
category: Category 1
geometry:
type: Point
coordinates:
- 0
- 0
tags:
- Context layer
requestBody:
content:
application/json:
schema:
description: Geojson data.
type: object
example:
type: FeatureCollection
features:
- type: Feature
properties:
id: 1
name: New data
category: Category 1
geometry:
type: Point
coordinates:
- 0
- 0
required: true
/context-layers/{id}/:
parameters:
- name: id
in: path
required: true
schema:
type: string
get:
operationId: context-layer-detail
description: Return detailed of context layer.
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/ContextLayer'
tags:
- Context layer
put:
operationId: context-layer-detail-update
description: Replace a detailed of context layer.
responses:
'200':
description: ''
content:
application/json:
schema:
description: Data that is needed to create/edit context layer.
type: object
properties:
name:
title: Name
type: string
description:
title: Description
type: string
category:
title: Category
type: string
url:
title: Url
type: string
type:
title: Type
description: The choices are ['ARCGIS', 'Geojson', 'Raster COG', 'Raster Tile', 'Vector Tile', 'Related Table', 'Cloud Native GIS Layer']
type: string
styles:
title: Styles
description: String of JSON containing style configuration. The styles are simply a list of layers in a Mapbox style.
type: object
example:
name: Context Layer
description: ''
layer_type: Cloud Native GIS Layer
category: Test
styles:
- id: '1'
type: circle
paint:
circle-color: '#98F194'
circle-radius: 6
circle-opacity: 1
circle-stroke-width: 1
source: 00000000-0000-0000-0000-000000000000
source-layer: default
- id: '2'
type: circle
paint:
circle-color: '#88005C'
circle-radius: 6
circle-opacity: 1
circle-stroke-width: 1
source: 00000000-0000-0000-0000-000000000000
source-layer: default
tags:
- Context layer
requestBody:
content:
application/json:
schema:
description: Data that is needed to create/edit context layer.
type: object
properties:
name:
title: Name
type: string
description:
title: Description
type: string
category:
title: Category
type: string
url:
title: Url
type: string
type:
title: Type
description: The choices are ['ARCGIS', 'Geojson', 'Raster COG', 'Raster Tile', 'Vector Tile', 'Related Table', 'Cloud Native GIS Layer']
type: string
styles:
title: Styles
description: String of JSON containing style configuration. The styles are simply a list of layers in a Mapbox style.
type: object
example:
name: Context Layer
description: ''
layer_type: Cloud Native GIS Layer
category: Test
styles:
- id: '1'
type: circle
paint:
circle-color: '#98F194'
circle-radius: 6
circle-opacity: 1
circle-stroke-width: 1
source: 00000000-0000-0000-0000-000000000000
source-layer: default
- id: '2'
type: circle
paint:
circle-color: '#88005C'
circle-radius: 6
circle-opacity: 1
circle-stroke-width: 1
source: 00000000-0000-0000-0000-000000000000
source-layer: default
required: true
patch:
operationId: context-layer-detail-partial-update
description: Update just partial data based on payload a detailed of context layer.
responses:
'200':
description: ''
content:
application/json:
schema:
description: Data that is needed to create/edit context layer.
type: object
properties:
name:
title: Name
type: string
description:
title: Description
type: string
category:
title: Category
type: string
url:
title: Url
type: string
type:
title: Type
description: The choices are ['ARCGIS', 'Geojson', 'Raster COG', 'Raster Tile', 'Vector Tile', 'Related Table', 'Cloud Native GIS Layer']
type: string
styles:
title: Styles
description: String of JSON containing style configuration. The styles are simply a list of layers in a Mapbox style.
type: object
example:
name: Context Layer
description: ''
layer_type: Cloud Native GIS Layer
category: Test
styles:
- id: '1'
type: circle
paint:
circle-color: '#98F194'
circle-radius: 6
circle-opacity: 1
circle-stroke-width: 1
source: 00000000-0000-0000-0000-000000000000
source-layer: default
- id: '2'
type: circle
paint:
circle-color: '#88005C'
circle-radius: 6
circle-opacity: 1
circle-stroke-width: 1
source: 00000000-0000-0000-0000-000000000000
source-layer: default
tags:
- Context layer
requestBody:
content:
application/json:
schema:
description: Data that is needed to create/edit context layer.
type: object
properties:
name:
title: Name
type: string
description:
title: Description
type: string
category:
title: Category
type: string
url:
title: Url
type: string
type:
title: Type
description: The choices are ['ARCGIS', 'Geojson', 'Raster COG', 'Raster Tile', 'Vector Tile', 'Related Table', 'Cloud Native GIS Layer']
type: string
styles:
title: Styles
description: String of JSON containing style configuration. The styles are simply a list of layers in a Mapbox style.
type: object
example:
name: Context Layer
description: ''
layer_type: Cloud Native GIS Layer
category: Test
styles:
- id: '1'
type: circle
paint:
circle-color: '#98F194'
circle-radius: 6
circle-opacity: 1
circle-stroke-width: 1
source: 00000000-0000-0000-0000-000000000000
source-layer: default
- id: '2'
type: circle
paint:
circle-color: '#88005C'
circle-radius: 6
circle-opacity: 1
circle-stroke-width: 1
source: 00000000-0000-0000-0000-000000000000
source-layer: default
required: true
delete:
operationId: context-layer-detail-delete
description: Delete a context layer.
responses:
'204':
description: ''
tags:
- Context layer
components:
schemas:
ContextLayer:
required:
- name
type: object
properties:
id:
title: ID
type: integer
readOnly: true
modified_at:
title: Modified at
type: string
readOnly: true
created_at:
title: Created at
type: string
readOnly: true
category:
title: Category
type: string
readOnly: true
ogc_api:
title: Ogc api
type: string
readOnly: true
name:
title: Name
type: string
maxLength: 512
minLength: 1
description:
title: Description
type:
- string
- 'null'
source:
title: Source
type:
- string
- 'null'
maxLength: 512
layer_type:
title: Layer type
description: 'The type of layer for this context layer.<br>For <b>ArcGIS</b>, put feature server of REST. e.g : https://{host}/rest/services/{layer}/FeatureServer/1.<br>For <b>GeoJson</b>, put url of geojson.<br>For <b>Raster tile</b>, put XYZ url.<br>For <b>Raster COG</b>, put url of cog.<br>For <b>Related table</b>, select existing related table name.<br>For <b>Vector tile</b>, put XYZ url.<br>For <b>Cloud native gis layer</b>, select the layer from cloud native gis.'
type: string
enum:
- ARCGIS
- Geojson
- Raster Tile
- Raster COG
- Vector Tile
- Related Table
- Cloud Native GIS Layer
label_config:
title: Label config
type:
- object
- 'null'
securitySchemes:
ApiKey_Auth:
type: apiKey
in: header
name: Authorization