コネクタを利用してNGSIデータを取得するには、利用者コネクタが提供する REST-APIを使用する必要があります。
利用者コネクタが提供する REST-APIの詳細については下記から利用者コネクタメインのAPI仕様書をダウンロードし、参照してください。
NGSIデータを取得するためのAPIのリソースURLを指定します。
認可が必要なNGSIデータの場合は、クエリパラメータを含めたリソースのURL(カタログ項目:配信のダウンロードURL)に一致するデータのみ指定可能です。
認可が不要なNGSIデータの場合は、リソースURL(カタログ項目:配信のダウンロードURL)の範囲のデータの取得条件であれば、以下の2種類のURL、クエリパラメータが指定可能です。
NGSIで指定可能URL | 概要 |
---|---|
{NGSI取得先URL}/entities?type={entityType} | エンティティの一覧を取得するURL {entityType}で指定したtypeを持つエンティティの一覧を取得する。 例)https://{ドメイン名}/v2/entities?type= Room |
{NGSI取得先URL}/entities/{entityId}?type={entityType} | 任意のエンティティを取得するURL {entityId}で指定したエンティティの情報を取得する。{entityType}には{entityID}が属するentityTypeを指定する。 例)https://{ドメイン名}/v2/entities/Bcn_Welt?type=Room |
NGSIデータを取得するAPIにクエリパラメータを指定する場合は本ヘッダに指定するURLにクエリパラメータをしてください。
例){NGSI取得先URL}/entities?type=CareService&limit=10
CADDEコネクタがリソースの提供手段を特定するために用いる識別子です。
x-cadde-resource-api-type | 概要 |
---|---|
api/ngsi | NGSI形式のデータを取得する場合”api/ngsi”を指定する必要があります。 |
CADDE利用者コネクタがデータ提供者を特定するために用いる識別子です。
x-cadde-provider | 概要 |
---|---|
{CADDEユーザID(提供者)} | NGSI情報提供先のCADDEユーザID(提供者)を指定します。 |
利用者トークンを示すヘッダです。
Authorization | 概要 |
---|---|
トークンの値 | 利用者トークンを設定します。 |
API固有のヘッダを本ヘッダに指定することができます。
例として、NGSIデータを提供するデータ管理サーバに Orionを使用している場合、Orionでは、リクエストヘッダとしてFiware-ServiceおよびFiware-ServicePathを指定することで、マルチテナントおよびマルチサービスの機能を提供していますが、Fiware-Serviceおよび Fiware-ServicePathを本ヘッダに指定することができます。
x-cadde-options | 概要 |
---|---|
{ヘッダ項目}:{ヘッダの値}, {ヘッダ項目2}:{ヘッダの値2}, … | API固有のリクエストヘッダ NGSIデータを取得する際にAPIで固有のリクエストヘッダが必要となる場合に、そのヘッダを指定します。 ただし、ヘッダの値に ,(カンマ)を含むものは指定できません。 例)Fiware-Service:abc,Fiware-ServicePath:/path1 |
x-cadde-resource-urlヘッダの値はデータカタログ項目の「配信のダウンロードURL」です。
APIリクエストヘッダ | カタログ項目 | カタログパラメータ |
---|---|---|
x-cadde-resource-url | 配信のダウンロードURL | resources:url |
x-cadde-resource-api-typeヘッダの値はデータカタログ項目の「リソース提供手段の識別子」が対応します。
APIリクエストヘッダ | カタログ項目 | カタログパラメータ |
---|---|---|
x-cadde-resource-api-type | リソース提供手段の識別子 | resources:caddec_resource_type |
x-cadde-providerヘッダの値はデータカタログ項目の「CADDEユーザID(提供者)」が対応します。
APIリクエストヘッダ | カタログ項目 | カタログパラメータ |
---|---|---|
x-cadde-provider | CADDEユーザID(提供者) | extras:caddec_provider_id |
x-cadde-optionsヘッダを利用することで、Fiware-ServiceおよびFiware-ServicePathを指定することができます。
Fiware-ServiceおよびFiware-ServicePathの値はデータカタログ項目の「NGSIテナント」、「NGSIサービスパス」の値が対応します。
APIリクエストヘッダ | カタログ項目 | カタログパラメータ |
---|---|---|
x-cadde-options | NGSIテナント NGSIサービスパス |
resources:ngsi_tenant resources:ngsi_service_path |
$ curl -v -X GET "http://{利用者コネクタのFQDN}:{ポート番号}/cadde/api/v4/entities"
-H "x-cadde-resource-url: {配信のダウンロードURL}"
-H "x-cadde-resource-api-type: {リソース提供手段の識別子}"
-H "x-cadde-provider: {CADDEユーザID(提供者)}"
-H "Authorization: Bearer {利用者トークン}"
-H "x-cadde-options: Fiware-Service: {NGSIテナント}, Fiware-ServicePath: {NGSIサービスパス}"
カタログ項目 | カタログパラメータ | 項目の値 |
---|---|---|
配信のダウンロードURL | resources:url | https://closed.XX.go.jo/v2/entities?type=PublicFacility |
NGSIデータ種別 | resources:ngsi_entity_type | PublicFacility |
リソース提供手段の識別子 | resources:caddec_resource_type | api/ngsi |
CADDEユーザID(提供者) | extras:caddec_provider_id | [email protected] |
NGSIテナント | resources:ngsi_tenant | shinnihon |
NGSIテナントNGSIサービスパス | resources:ngsi_service_path | /shisetsu |
$ curl -v -X GET "http://CADDE.Y.co.jp:888/cadde/api/v4/entities"
-H "x-cadde-resource-url: https://closed.XX.go.jo/v2/entities?type=PublicFacility"
-H "x-cadde-resource-api-type: api/ngsi"
-H "x-cadde-provider: [email protected]"
-H "Authorization: Bearer XXXX"
-H "x-cadde-options: Fiware-Service: shinnihon, Fiware-ServicePath: /shisetsu"
$ curl -v -X GET "http://CADDE.Y.co.jp:888/cadde/api/v4/entities"
-H "x-cadde-resource-url: https://closed.XX.go.jo/v2/entities/entity1?type=PublicFacility"
-H "x-cadde-resource-api-type: api/ngsi"
-H "x-cadde-provider: [email protected]"
-H "Authorization: Bearer XXXX"
-H "x-cadde-options: Fiware-Service: shinnihon, Fiware-ServicePath: /shisetsu"
NGSIデータの取得APIでは、x-cadde-resource-urlに指定するURLにクエリパラメータを指定することで、データの取得条件を指定することができます。
認可が不要なデータの場合、データカタログ項目の「NGSIデータモデル」を参照することで、データの取得条件を利用者自身が決定することができます。
カタログ項目 | カタログパラメータ | 項目の値 |
---|---|---|
配信のダウンロードURL | resources:url | https://closed.XX.go.jo/v2/entities?type=PublicFacility |
NGSIデータ種別 | resources:ngsi_entity_type | PublicFacility |
リソース提供手段の識別子 | resources:caddec_resource_type | api/ngsi |
CADDEユーザID(提供者) | extras:caddec_provider_id | [email protected] |
NGSIテナント | resources:ngsi_tenant | shinnihon |
NGSIテナントNGSIサービスパス | resources:ngsi_service_path | /shisetsu |
NGSIデータモデル | resources:ngsi_data_model | { attrs:{ name: { description: イベント名称, types: Text, }, fee: { description: 入場料金, types: Number, metadata: { unit: { description:単位 } } }, : } } |
① 上記のデータカタログ項目の「NGSIデータモデル」を参照することで、公開されているデータは「fee」という項目が入場料金を示す項目であることがわかる。
② 「fee」は数値(Number)型であることがわかる。
$ curl -v -X GET "http://CADDE.Y.co.jp:888/cadde/api/v4/entities"
-H "x-cadde-resource-url: https://closed.XX.go.jo/v2/entities?type=Event_2021&q=fee<800"
-H “x-cadde-resource-api-type:api/ngsi”
-H "x-cadde-provider: [email protected]"
-H "Authorization: Bearer XXXX“
-H “x-cadde-options: Fiware-Service: shinnihon, Fiware-ServicePath: /event”