Ingesting Entities from a CSV File

Apart from connecting to live Systems of Record and ingesting data into the SGNL Graph, SGNL also allows you to upload a CSV file for an entity. This enables you to ingest sample data representative of your organizational data, test policy snippets, and finalize them before connecting to your production Systems of Record.

Prerequisites

  • A System of Record and its associated entities created
  • A CSV file meeting the following requirements:
    • The maximum file size of the uploaded CSV file is 1 MB
    • The maximum number of records in the CSV file is limited to 5000
    • The CSV file header must match the externalIds of the attributes of the entity. Any other attributes in the header that are not in the entity configuration are ignored. You can exclude attributes from the CSV file.

Uploading a CSV for an Entity

  1. Let’s use a new Okta System of Record as an example to illustrate the CSV upload process. Below we have a new Okta System of Record with synchronization disabled and 0 entities ingested.

Systems of Record - New Okta SoR

And a CSV file for the OktaUser entity.

Systems of Record - OktaUser CSV File

  1. Click on OktaUser -> Import as shown in the figure below. If you do not have a CSV file, you can download the entity CSV template that is prepopulated with all attribute externalIds for the entity. Click Import.

Systems of Record - OktaUser CSV Import Systems of Record - OktaUser CSV Import Screen Systems of Record - OktaUser CSV Import Save

  1. In a few seconds, you should see in the Ingestion logs that the ingestion of the CSV data is complete. The Imported Objects value of the entity will be updated to reflect the number of entities imported, which should correspond to the number of records in the CSV file

Systems of Record - OktaUser CSV Import Completed Successfully

Systems of Record - OktaUser CSV Import Completed Successfully

  1. Once ingestion is complete and data from the CSV is in the SGNL graph, you can use Data Lens to explore the SGNL graph.

Note

  • Synchronization must not be enabled for entities that have objects imported through a CSV file. If it is enabled, SGNL will begin to ingest data from the configured System of Record, overwriting all data previously ingested via CSV. Likewise, uploading a CSV file will overwrite any data previously ingested from a live System of Record.
  • Uploading a new CSV containing additional, modified, or deleted records will lead to corresponding updates in the graph.
  • CSV upload is not supported for entities with child entities. SGNL supports ingesting complex entities with nested complex attributes that are modeled as child entities in SGNL. However, CSV upload is not supported for such entities.