Use API to create GeoEvent objects

709
1
Jump to solution
08-23-2021 04:35 PM
Jordan
by
New Contributor II

Hey All,

We're looking at using the GeoEvent API (https://server.url:6143/geoevent/admin/api/index.html) to programmatically do the following:

  1. Create/Delete outputs; Stream Service and Spatiotemporal BDS Features.
  2. Update an existing GeoEvent Service with the new outputs, connecting the flows between the nodes etc.

We think we have enough information in the API to achieve this, in terms of the payloads and what URLs/request types to use.

However, is someone able to provide some guidance on if there is anything special about the way GeoEvent creates the GUIDs for the name of each object? For example, if we use a POST to create a new output, are we expected to generate the GUID and add it as part of the payload for the POST, or will GeoEvent create this itself and send it back in the response?

Cheers,

Jordan

Tags (3)
0 Kudos
1 Solution

Accepted Solutions
Jordan
by
New Contributor II

Update here.

We've managed to get this all working. We've written a Python wrapper around the GeoEvent API, so we can combine the Python API and our custom GeoEvent wrapper to manage some of our processes within GeoEvent.

It creates, updates, deletes stream services and big data store services, updates geoevent services and places nodes and connects the flows between them all etc. and then also sets all the properties on the resulting Portal items.

In terms of my original question, it seems as if you do not need to use a proper GUID for creating new GeoEvent service nodes (outputs, filters etc.). We just use a unique identifier for each one and set that as the 'ref' or 'name' property. Then we can access that node again using that unique identifier to search.

Cheers,

Jordan

View solution in original post

1 Reply
Jordan
by
New Contributor II

Update here.

We've managed to get this all working. We've written a Python wrapper around the GeoEvent API, so we can combine the Python API and our custom GeoEvent wrapper to manage some of our processes within GeoEvent.

It creates, updates, deletes stream services and big data store services, updates geoevent services and places nodes and connects the flows between them all etc. and then also sets all the properties on the resulting Portal items.

In terms of my original question, it seems as if you do not need to use a proper GUID for creating new GeoEvent service nodes (outputs, filters etc.). We just use a unique identifier for each one and set that as the 'ref' or 'name' property. Then we can access that node again using that unique identifier to search.

Cheers,

Jordan