Included in SSIS PowerPack

SSIS JSON Source

Turn JSON files and REST API responses into clean tabular data for your SSIS data flow.

Read local files, REST API responses, or JSON stored in an SSIS variable. Extract nested data with JSONPath, configure authentication and pagination, and send rows to SQL Server or another SSIS destination, all without a script component.

The trial includes JSON Source and every other PowerPack component

SSIS JSON Source editor showing REST API configuration and JSON preview grid
API requests, files & nested arrays

Trusted by data teams worldwide

MicrosoftIBMOracleDell TechnologiesHPCiscoAT&TVerizonDHLFedExUPSWalmart

Also rated on Capterra★★★★★ , Trustpilot★★★★★ and BBBA+ — see why teams trust ZappySys

At a glance

What JSON Source can do

JSON Source reads local files, web URLs, or a JSON string, then flattens nested arrays with JSONPath so you can load SQL Server like any other SSIS source, with no script component needed.

Nested JSON & JSONPath

Point JSONPath at the array you want, such as $.Branches[*] or $.value[*], and get rows.

  • De-normalize nested objects and arrays into a flat, table-like layout
  • JSONPath to pick any hierarchy or array
  • Select Filter UI shows the JSON structure (arrays marked with their own icon) so you can pick a hierarchy visually

See the JSONPath example

Array flattening & pivoting

De-normalize nested JSON into a flat document just like a regular database table.

  • Array flattening (child items as columns)
  • 2D arrays, pivoting, and regex filters
  • Extract multiple arrays from one JSON file or API response (with JSON Parser Transform)

See the JSONPath example

OAuth 1.0 & 2.0

The security standard adopted by major cloud services such as Google API, Facebook, Salesforce, Dynamics CRM, and Office 365.

  • OAuth 1.0 and 2.0 (Google, Salesforce, Office 365, and more)
  • Pass credentials through the OAuth Connection Manager

See auth screenshots

Basic, token & HMAC

Call APIs with Basic authorization (UserID / Password) or a dynamic token; HMAC covers APIs like Azure CosmosDB / DocumentDB.

  • HTTP Basic and dynamic token
  • HMAC (SHA256 / SHA512 / MD5)
  • Basic authorization (UserID / Password), OAuth 1.0 and 2.0, or a dynamic token, via a connection

See auth screenshots

Headers, cookies & TLS

Set the URL, HTTP method, headers, and body; add cookies or a proxy when the service requires it.

  • Custom headers, cookies, and proxy
  • HTTPS with TLS 1.2 (SSIS 2014 or higher) or TLS 1.3

See access modes

REST API pagination

Loop through every page until the API reports the last page.

  • Paginate via URL parameter, body, or header
  • Detect the last page by row count, status code, error message, or response size
  • OData paging patterns

REST API pagination guide

Large-file streaming

Streams very large JSON files record by record.

  • Streaming mode instead of loading the whole file into memory, avoiding OutOfMemory errors
  • Append --FAST to the filter (e.g. $.Root.Row--FAST) to turn on streaming
  • Design with a small sample file, then point at the full file at runtime
  • Metadata editor with scan-row control and lock

Streaming setup guide

SQL Server 2012–2025 & ADF

Runs in your environment on SQL Server 2012–2025 and Azure-SSIS.

  • SQL Server 2025, 2022, 2019, 2017, 2016, 2014, 2012 (32/64-bit)
  • Azure Data Factory (SSIS IR)
  • Design packages in Visual Studio 2017, 2019, 2022, or 2026
  • Windows only (64-bit OS): Windows 7–11 or Windows Server 2012–2025

Compatibility and requirements

Files, URLs & JSON strings

Read JSON files (single or multiple), call a REST API, or parse a JSON string, then preview sample data.

  • File mode: one file or a wildcard such as *.json for files with a similar structure
  • API mode: specify the URL, HTTP method, headers, and body
  • Direct string mode: paste JSON or read it from an SSIS variable

See the three access modes

See all features
  • Read data from JSON files or RESTful API services (such as Twitter, Zendesk)
  • De-normalize nested JSON into a flat, table-like layout, just like a regular database table
  • Fast performance with large files (see how we processed 3 million rows in 3 mins from a 1.2 GB XML file)
  • Extract a nested hierarchy or array using a JSONPath expression (see also: Extract multiple arrays using JSON Parser Transform)
  • Support for OAuth 1.0 and 2.0, the security standard used by major cloud services (e.g. Google API, Facebook, Salesforce, Dynamics CRM, Office 365, MailChimp, and many more)
  • Call OData services (read more)
  • Call the Amazon AWS API (e.g. EC2, API Gateway, Lambda and more)
  • Call APIs using Dynamic Token authentication or Basic authorization (i.e. UserID / Password)
  • Loop through multiple files using a wildcard pattern (e.g. *.json)
  • Support for array flattening (child array items as columns)
  • HTTP requests with custom headers
  • Support for HMAC authentication (SHA256, SHA512, MD5) for APIs like Azure CosmosDB / DocumentDB
  • REST API pagination support to loop through multiple requests (explained here and here)
  • Support for 2D arrays and complex transformations (see this article and this for Google BigQuery)
  • Support for pivoting (convert columns to rows)
  • Output raw JSON from an inner array, with optional indenting
  • HTTPS / TLS 1.2 support for more secure communication
  • Support for passing cookies
  • Support for proxy servers
  • Option to cancel infinite pagination when saving in the UI
  • Option to parse output from a command-line standard output stream (e.g. cmd:>curl -k http://httpbin.org/get)
  • Filter expressions (e.g. $.store.books[?(@.price<10)])
  • Support for SQL Server 2025, 2022, 2019, 2017, 2016, 2014, 2012 (32/64-bit) and Azure Data Factory

Runs in your environment ·

SQL Server 2012–2025

and Azure-SSIS · Read the FAQ

Three access modes

One component for files, APIs, and JSON in a variable.

Pick how the document arrives. Preview rows in the UI, then map columns to SQL like a normal data flow.

Load JSON files into a SQL table, including wildcards.

Point at one file or a folder pattern such as *.json. Preview sample rows, then output FileName and FilePath columns so each record still knows where it came from.

  • Single file or wildcard loop without a Foreach enumerator
  • Files must share a similar structure
  • Preview before you map the destination
SSIS JSON Source file mode reading JSON from a path or web URL

Inside the UI

Key settings, as they appear in SSDT.

Real screens from the JSON Source UI. Step through OAuth, paging, metadata, and error output, or open any shot at full size.

Read JSON from a web URL

Set Access Mode to File path or web URL, paste the endpoint, then enter a JSONPath such as $.value[*]. Click Preview to confirm the rows before you map a destination.

JSONPath example

Point at the array you want. Leave the rest behind.

The Select Filter UI shows objects versus arrays. Expressions start at $. Use [*] for every record in an array. Below: input JSON, expression, and illustrative output rows.

  1. Input JSON

    One customer record with a nested Branches array.

    input.json

    [
      {
        "CustomerID": "C1",
        "CompanyName": "Company 1",
        "Branches": [
          { "Name": "BranchA1", "City": "City1_1" },
          { "Name": "BranchB1", "City": "City1_2" }
        ]
      }
    ]
  2. Set the JSONPath filter

    Filter$.Branches[*]

    Each item in the Branches array becomes one row.

    Include Parent Columns: On Adds parent fields such as CustomerID and CompanyName to each row, so they repeat for every branch.

  3. Output rows for your data flow

    Illustrative output rows from the JSON input
    CustomerID parent CompanyName parent Name City
    C1 Company 1 BranchA1 City1_1
    C1 Company 1 BranchB1 City1_2

    Connect these rows to SQL Server or another SSIS destination.

Other expressions on the same input

Expression What you get
$ Every root record
$.CompanyName Company name of each record
$.Branches[*] All branches as rows
$.Branches[:1] First branch of every record
$.value[*] Typical OData / REST array

Illustrative input and output. More than one array? See when to use JSON Parser Transform.

Compatibility and requirements

Designed to stay inside your SSIS runtime.

  • SQL Server 2012 through 2025, 32-bit and 64-bit
  • Windows only, 64-bit OS required. SQL Server Express and Web editions do not include SSIS
  • Azure Data Factory SSIS Integration Runtime
  • Self-hosted: credentials and data stay in your environment (external API calls still reach that service)
  • Fully functional 30-day trial of SSIS PowerPack

FAQ

Questions teams ask before they drop JSON Source on the canvas.

What JSON inputs does JSON Source support?

JSON from a local file (including wildcards), a REST / web URL, or a direct JSON string, including a value stored in an SSIS variable. Optional command-line / stdout JSON input is also available for advanced scenarios.

How do I read many JSON files without a loop?

Use a wildcard path such as c:\data\cust*_???.json. Optional FileName and FilePath output columns identify which file produced each row. See file mode above.

Can it page through a REST API?

Yes. Paginate via URL parameter, request body, or HTTP header, and set the end condition. Read the REST API pagination guide for URL, path, cursor, body, header, and token paging. OData feeds can page automatically.

Does it support OAuth?

OAuth 1.0 and 2.0 through the OAuth Connection Manager, plus Basic auth, dynamic tokens, and HMAC for APIs such as Azure CosmosDB. See the authentication boxes in Features.

Which SQL Server versions can I run it on?

SQL Server 2025, 2022, 2019, 2017, 2016, 2014, and 2012 (32- and 64-bit), plus Azure Data Factory with an SSIS Integration Runtime (packages must target SQL Server 2017). See Compatibility and requirements.

Where is the full property reference?

Open the JSON Source help file for properties, error handling, and JSONPath examples. System requirements are on the installation page.

Independent ratings

Trusted by data teams, recognized by the industry

See why teams trust ZappySys (opens in new tab)

What customers say

  • Customer story

    ZappySys has been a fantastic way to bring our small company into the world of APIs, automation, and systems integration by providing tools within an easy-to-use framework.

    Ben KingeryOxspring Paul
  • Customer story

    At Synchronous Customers, we need to connect various types of data quickly. The super handy ZappySys connectors and great documentation let us do it without writing a lot of code.

    Joel ConnerSynchronous Customers
  • Customer story

    I looked everywhere for a product that could integrate to a web portal backend API via JSON. After many attempts, ZappySys was the only solution that gave me all the options I needed in a quick & clean interface within SSIS.

    Maz DunicSave the Children Australia
  • Customer story

    We have worked with the ZappySys support team for over a year and have consistently found them extremely helpful — resourceful and creative in offering multiple solutions to our challenges.

    Senthil SekarPublicis Groupe
  • Trustpilot

    I’ve been using ZappySys for over 6 years — it makes development faster, and I introduced it to my current company.

    Anna JohnsonTrustpilot review
  • Trustpilot

    I’m integrating data from APIs into database tables with SSIS/ZappySys — very easy to use, fast, and highly efficient without writing complex code.

    Carolyn S.Trustpilot review
  • Customer quote

    I submitted a support request and had someone logged in and fixing things within 2 hours.

    Barry Wilson
  • Customer quote

    The REST source is very powerful — the only thing I found I could use after trying components from major vendors.

    Jes KirkupKTC
  • Customer quote

    Whenever we run into an obstacle, ZappySys has a solution for us. We are so glad that we chose ZappySys PowerPack.

    Kevin ChenBerricle

Start your free trial today

Install SSIS PowerPack and drag JSON Source onto a Data Flow.

Preview real data before you map a destination, with no script component required.

  • Data Flow Source in SSISJSON Source appears in the toolbox after you install PowerPack.
  • Fully functional 30-day trialSSIS PowerPack, running in your environment.
  • Live supportHelp during your trial and after purchase.

New purchases may be eligible for refund review within 30 days. See the refund policy.

Talk to an engineer before or during your trial.

1 / 9