NAV

Introduction

PanadaData provides high performance fake data generation.

Testing your application with realistic data is an important step in creating a successful product. Quite often you can’t actually use production data for your (performance) testing. This is where we come in. We can generate arbitrary amounts of high quality testing data to your specifications. Either access the APIs directly or even download generated data for easy offline ingestion. This is especially useful for system which are not connected to the internet for security reasons. The data is generated in a convenient JSON dump which you can import in pretty much any language!

If you need a custom data format or are missing a datatype, please don’t hesitate to get in touch!

Test drive the future of your application!

Noteworthy updates

Getting started

Hello world

{
 "count":5,
 "fields":[
 	{"name":"Name","type":"name"},
 	{"name":"Age","type":"integer","min":0,"max":100}
 ]
}

Let’s generate our first row of data. We’re going to use curl for this. We need to tell the enginge what kind of fields we want to have and how many rows we want.

The way to do that is to create a POST body with the options as simple JSON:

We’re just going to have it create 5 rows of names and random ages. Let’s use CURL to actually request the rows:

curl -H "Content-Type: application/json" -X POST --data "@testbody" https://data.panadadata.com/generate

This will give us our 5 rows:

[["Taylor,Lisa F.",13],["Quilty,Emma R.",11],["Martinez,Edgar F.",16],["Jung,Brendan A.",19],["Koivu,Jane W.",10]]

Examples

Downloading test data as a file

Downloading test data as a file for later or offline use is pretty straightforward. You just call the API directly and save the data you get. Here’s a simple example:

curl -H "Content-Type: application/json" \
-X POST \
--data '{"count":10000,"fields":[{"name":"Name","type":"name"},{"name":"Age","type":"integer"}],"headers":false}' \
https://data.panadadata.com/generate \
-o 10kdata.json

This will give us 10k rows into 10kdata.json.

Accessing the API directly

Integrating the API directly into your program can be as simple as this:

require 'rest-client'

payload = '{"count":"10","fields":[{"name":"Name","type":"name"}]}'
response=RestClient.post("https://data.panadadata.com/generate", payload,headers={content_type: :"application/json", accept: :json})
data=JSON.parse(response.body)

Request builder

Number of rows
Return headers
Fields
NameType
NameType

Documentation

General Options

count:integer

  ```json
  { "count":42 }
  ```
  The number of rows to be generated. Currently limited to 1000

headers:boolean

  ```json
  { "headers":false}
  ```

Output the field names as first row, defaults to false.

fields:array

{
 "fields":[
   {"name":"Name","type":"name"},
   {"name":"Age","type":"integer","min":0,"max":100}
 ]
}

Array of column definitions. See below for details.

Field Options

{
   "fields":[
      {"type":"string"}
   ]
}

The only required field is type. If you have enabled namedfields or headers, name also becomes required.

name:string

{
   "fields":[
      {"name":"something","type":"string"},
      {"name":"stuff","type":"string"}
 ]
}

Name of the returned field. Requried if either namedfields or headers are enabled.

type:string

{
   "count":1,
   "namedfields":true,
   "headers":true,
   "fields":[
      {"name":"city","type":"city"},
      {"name":"color","type":"color"},
      {"name":"company","type":"company"},
      {"name":"float","type":"float"},
      {"name":"integer","type":"integer"},
      {"name":"mission","type":"mission"},
      {"name":"name","type":"name"},
      {"name":"phone","type":"phone"},
      {"name":"product","type":"product"},
      {"name":"ssn","type":"ssn"},
      {"name":"state","type":"state"},
      {"name":"street","type":"street"},
      {"name":"string","type":"string"},
      {"name":"title","type":"title"},
      {"name":"zip","type":"zip"},
   ]
}

Type of the data to be generated into this column. As indicated some fields accept one of these options:

Fields can be one of the following:

Contact

Send us an email:

Privacy

PanadaData respects privacy and as a result we are not collecting any identifying information or usage information of the API itself.

Cookies

PanadaData (“we” or “us” or “our”) may use cookies, web beacons, tracking pixels, and other tracking technologies when you visit our website panadadata.com, including any other media form, media channel, mobile website, or mobile application related or connected thereto (collectively, the “Site”) to help customize the Site and improve your experience.

We reserve the right to make changes to this Cookie Policy at any time and for any reason. We will alert you about any changes by updating the “Last Updated” date of this Cookie Policy. Any changes or modifications will be effective immediately upon posting the updated Cookie Policy on the Site, and you waive the right to receive specific notice of each such change or modification.

You are encouraged to periodically review this Cookie Policy to stay informed of updates. You will be deemed to have been made aware of, will be subject to, and will be deemed to have accepted the changes in any revised Cookie Policy by your continued use of the Site after the date such revised Cookie Policy is posted.

What are cookies?

A “cookie” is a string of information which assigns you a unique identifier that we store on your computer. Your browser then provides that unique identifier to use each time you submit a query to the Site. We use cookies on the Site to, among other things, keep track of services you have used, record registration information, record your user preferences, keep you logged into the Site, facilitate purchase procedures, and track the pages you visit. Cookies help us understand how the Site is being used and improve your user experience.