entities-spec.json 3.6 KB
Newer Older
{
	"openapi": "3.0.1",
	"info": {
		"title": "NGSI-LD Entities",
		"version": "latest"
	},
canterafonsj's avatar
canterafonsj committed
	"components": {
		"parameters": {
			"id": {
				"name": "id",
				"description": "Comma separated list of URIs to be retrieved",
				"in": "query",
				"required": false,
				"schema": {
					"type": "string",
					"format": "uri"
				}
			},
			"type": {
				"name": "type",
				"description": "Comma separated list of Entity type names to be retrieved",
				"in": "query",
				"required": false,
				"schema": {
					"type": "string",
					"minLength": 1
				}
			},
			"idPattern": {
				"name": "idPattern",
				"description": "Regular expression that must be matched by Entity ids",
				"in": "query",
				"required": false,
				"schema": {
					"type": "string",
					"minLength": 1
				}
			},
			"attrs": {
				"name": "attrs",
				"description": "Comma separated list of attribute names (properties or relationships) to be retrieved",
				"in": "query",
				"required": false,
				"schema": {
					"type": "string",
					"minLength": 1
				}
			},
			"q": {
				"name": "q",
				"description": "Query",
				"in": "query",
				"required": false,
				"schema": {
					"type": "string",
					"minLength": 1
				}
			},
			"georel": {
				"name": "georel",
				"description": "Geo-relationship",
				"in": "query",
				"required": false,
				"schema": {
					"$ref": ""
				}
			},
			"geometry": {
				"name": "geometry",
				"description": "Geometry",
				"in": "query",
				"required": false,
				"schema": {
					"$ref": ""
				}
			},
			"coordinates": {
				"name": "coordinates",
				"description": "Coordinates serialized as a string",
				"in": "query",
				"required": false,
				"schema": {
					"$ref": ""
				}
			},
			"geoproperty": {
				"name": "geoproperty",
				"description": "The name of the property that contains the geo-spatial data that will be used to resolve the geoquery",
				"in": "query",
				"required": false,
				"schema": {
					"type": "string",
					"minLength": 1
				}
			},
			"csf": {
				"name": "csf",
				"description": "Context Source Filter",
				"in": "query",
				"required": false,
				"schema": {
					"type": "string",
					"minLength": 1
				}
			}
		}
	},
	"paths": {
		"/entities/": {
			"get": {
				"description": "Retrieve a set of entities which matches a specific query from an NGSI-LD system",
				"operationId": "queryEntities",
canterafonsj's avatar
canterafonsj committed
				"parameters": [
					{
						"$ref": "#/components/parameters/id"
					},
					{
						"$ref": "#/components/parameters/idPattern"
					},
					{
						"$ref": "#/components/parameters/type"
					},
					{
						"$ref": "#/components/parameters/attrs"
					},
					{
						"$ref": "#/components/parameters/q"
					},
					{
						"$ref": "#/components/parameters/georel"
					},
					{
						"$ref": "#/components/parameters/geometry"
					},
					{
						"$ref": "#/components/parameters/coordinates"
					},
					{
						"$ref": "#/components/parameters/geoproperty"
					},
					{
						"$ref": "#/components/parameters/csf"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json;application/ld+json": {
								"schema": {
									"$ref": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/schema/EntityList.json#"
								},
								"examples": {
									"simple": {
										"externalValue": "https://forge.etsi.org/gitlab/NGSI-LD/NGSI-LD/raw/master/examples/Entity-example.json"
									}
								}
							}
						}
					},
					"400": {
						"description": "Bad request",
						"content": {
							"application/json": {
								"schema": {
									"$ref": ""
								}
							}
						}
					}
				}
			}
		}
	}
}