Interested in a ServiceNow event built for developers? Registration for now[dev]26 is officially open!

Bulk import of data into servicenow

klavan32
Tera Contributor

Hi Team,

 

We have integration with tesseract, where we get user records in bulk. Here, third party team provides data in JSON format hitting our snow API and we have to handle the data and copy it into our table.

 

Please help with the multiple ways we can handle data and bulk import into our tables.

 

 

4 REPLIES 4

Tejas Adhalrao
Kilo Sage

hi @klavan32  ,

If the third party is sending bulk user data as JSON to ServiceNow, there are several approaches. The right one depends mainly on the volume and whether you need transformation/validation before inserting into the target table.

  1. Scripted REST API + GlideRecord
    The API receives the JSON, parses it, loops through the records and inserts/updates the target table directly. This is simple for smaller volumes, but for large payloads you need to consider transaction time and performance.
  2. Scripted REST API + Import Set
    For bulk integrations, this is usually the approach I would consider first. The REST API receives the JSON and loads the records into an Import Set/staging table. Then a Transform Map handles field mapping, validation, coalesce, and insert/update into the target table.
  3. Import Set API
    If the third party can call the ServiceNow Import Set API directly, you may not need to build a custom Scripted REST API. ServiceNow can receive the data into the staging table and the Transform Map can process it.
  4. IntegrationHub
    If you already have IntegrationHub and the integration requires additional processing, Flow Designer/IntegrationHub can be used to orchestrate the integration. For high-volume data loads, however, I would still carefully consider Import Sets rather than creating one Flow execution per user.

For a bulk user integration like this, I would generally keep the flow as:

Tesseract → REST/Import Set API → Staging table → Transform Map → Target table

The staging layer gives you better control over validation, coalesce/update logic, error handling and transform history, and it also prevents the external system from directly manipulating your target table.

If the payload is very large, I would also consider batch/chunk processing rather than sending thousands of records in a single transaction.

 

If this helps, please mark it as Helpful and accept the solution.
Regards,
Tejas

 

Hi @Tejas Adhalrao  Thank you for the list of solutions you have provided. I have tried the solution "Scripted REST API + Import Set", but i could see transform map is triggering automatically as soon as the records are inserted into import set. Could you please help me the steps to avoid this behaviour.

Mark Manders
Tera Patron

What did you already try? What information did you find that didn't provide the solution you need? 


Please mark any helpful or correct solutions as such. That helps others find their solutions.
Mark

Hi @Mark Manders I have tried scripted REST API + import set staging table + transform map to transform the records that have been pushed to post resource but somehow transform map is triggering for every record which is stopping us to use this solution.