WICK API Documentation


The WICK API is a RESTful web API that allows developers to create and manage their own databases, tables, and data. Each account is secured with API keys unique to your account. You are in control of your data.

Quick Links

General

/wick/version
GET
https://mysafeinfo.com/wick/version
This method allows you to get the current version of the WICK API.
Response Body:
1.9.1.1

/wick/{designerkey}/info
GET
https://mysafeinfo.com/wick/{designerkey}/info
This method allows you to access various information about your account, quotas, whitelists, and more.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "Success": true,
  "Message": "",
  "DatabaseName": "default",
  "DeveloperName": "Matt",
  "IsDefault": true,
  "DatabasesCount": "2",
  "DatabasesMax": "5",
  "TablesCount": "2",
  "TablesMax": "5",
  "ColumnsMax": "15",
  "RowsMax": "1000",
  "Expires": "Never",
  "DesignerKey": "ABC123",
  "ReaderKey": "ABC234",
  "InsertKey": "ABC345",
  "UpdateKey": "ABC456",
  "DeleteKey": "ABC567",
  "DesignerReferers": "*",
  "ReaderReferers": "*",
  "InsertReferers": "*",
  "UpdateReferers": "*",
  "DeleteReferers": "*",
  "DesignerIPAddresses": "*",
  "ReaderIPAddresses": "*",
  "InsertIPAddresses": "*",
  "UpdateIPAddresses": "*",
  "DeleteIPAddresses": "*"
}

/wick/{designerkey}/whois
GET
https://mysafeinfo.com/wick/{designerkey}/whois
This method allows you to access the IP address and referrer when testing and setting up whitelists.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "Success": true,
  "Message": "",
  "IP": "127.0.0.1",
  "Referrer": "test.com"
}

Data Types

/wick/datatypes
GET
https://mysafeinfo.com/wick/datatypes
This method allows you to get a list of all the data types that are supported.
Response Body:
[
  "bigint",
  "bit",
  "char",
  "date",
  "datetime",
  "datetime2",
  "datetimeoffset",
  "decimal",
  "float",
  "int",
  "money",
  "nchar",
  "nvarchar",
  "smalldatetime",
  "smallint",
  "smallmoney",
  "time",
  "timestamp",
  "tinyint",
  "varchar",
  "varbinary"
]

/wick/datatypes/simple
GET
https://mysafeinfo.com/wick/datatypes/simple
This method allows you to get a condensed list of the data types that are supported and most commonly used.
Response Body:
[
  "string",
  "number",
  "boolean",
  "date",
  "datetime",
  "decimal",
  "money"
]

/wick/datatypes/template
GET
https://mysafeinfo.com/wick/datatypes/template
This method allows you to get the schema necessary to create or alter a column in your table.
Response Body:
{
  "DataType": "varchar",
  "AllowNulls": "No",
  "DefaultValue": "''",
  "Length": "50",
  "Precision": "8",
  "Scale": "2",
  "Unique": "No"
}

/wick/datatypes/template/{datatype}
GET
https://mysafeinfo.com/wick/datatypes/template/{datatype}
This method allows you to get the schema necessary to create or alter a column in your table, for a specific data type.


https://mysafeinfo.com/wick/datatypes/template/string
{
  "DataType": "string",
  "AllowNulls": "No",
  "DefaultValue": "''",
  "Length": "50",
  "Unique": "No"
}

/wick/datatypes/templates
GET
https://mysafeinfo.com/wick/datatypes/templates
This method allows you to get a list of all the data types that are supported and includes the template necessary for adding and altering columns.
Response Body:
{
   "Advanced":[
      {
         "DataType":"bigint",
         "Template":{
            "DataType":"bigint",
            "AllowNulls":"No",
            "DefaultValue":"0"
         }
      },
      {
         "DataType":"bit",
         "Template":{
            "DataType":"bit",
            "AllowNulls":"No",
            "DefaultValue":"0"
         }
      },
      {
         "DataType":"char",
         "Template":{
            "DataType":"char",
            "AllowNulls":"No",
            "DefaultValue":"''",
            "Length":"50",
            "Unique":"No"
         }
      },
      {
         "DataType":"date",
         "Template":{
            "DataType":"date",
            "AllowNulls":"No",
            "DefaultValue":""
         }
      },
      {
         "DataType":"datetime",
         "Template":{
            "DataType":"datetime",
            "AllowNulls":"No",
            "DefaultValue":""
         }
      },
      {
         "DataType":"datetime2",
         "Template":{
            "DataType":"datetime2",
            "AllowNulls":"No",
            "DefaultValue":""
         }
      },
      {
         "DataType":"datetimeoffset",
         "Template":{
            "DataType":"datetimeoffset",
            "AllowNulls":"No",
            "DefaultValue":""
         }
      },
      {
         "DataType":"decimal",
         "Template":{
            "DataType":"decimal",
            "AllowNulls":"No",
            "DefaultValue":"0",
            "Precision":"8",
            "Scale":"2"
         }
      },
      {
         "DataType":"float",
         "Template":{
            "DataType":"float",
            "AllowNulls":"No",
            "DefaultValue":"0",
            "Precision":"8",
            "Scale":"2"
         }
      },
      {
         "DataType":"int",
         "Template":{
            "DataType":"int",
            "AllowNulls":"No",
            "DefaultValue":"0"
         }
      },
      {
         "DataType":"money",
         "Template":{
            "DataType":"money",
            "AllowNulls":"No",
            "DefaultValue":"0",
            "Precision":"8",
            "Scale":"2"
         }
      },
      {
         "DataType":"nchar",
         "Template":{
            "DataType":"nchar",
            "AllowNulls":"No",
            "DefaultValue":"''",
            "Length":"50",
            "Unique":"No"
         }
      },
      {
         "DataType":"nvarchar",
         "Template":{
            "DataType":"nvarchar",
            "AllowNulls":"No",
            "DefaultValue":"''",
            "Length":"50",
            "Unique":"No"
         }
      },
      {
         "DataType":"smalldatetime",
         "Template":{
            "DataType":"smalldatetime",
            "AllowNulls":"No",
            "DefaultValue":""
         }
      },
      {
         "DataType":"smallint",
         "Template":{
            "DataType":"smallint",
            "AllowNulls":"No",
            "DefaultValue":"0"
         }
      },
      {
         "DataType":"smallmoney",
         "Template":{
            "DataType":"smallmoney",
            "AllowNulls":"No",
            "DefaultValue":"0",
            "Precision":"8",
            "Scale":"2"
         }
      },
      {
         "DataType":"time",
         "Template":{
            "DataType":"time",
            "AllowNulls":"No",
            "DefaultValue":""
         }
      },
      {
         "DataType":"timestamp",
         "Template":{
            "DataType":"timestamp",
            "AllowNulls":"No",
            "DefaultValue":""
         }
      },
      {
         "DataType":"tinyint",
         "Template":{
            "DataType":"tinyint",
            "AllowNulls":"No",
            "DefaultValue":"0"
         }
      },
      {
         "DataType":"varchar",
         "Template":{
            "DataType":"varchar",
            "AllowNulls":"No",
            "DefaultValue":"''",
            "Length":"50",
            "Unique":"No"
         }
      },
      {
         "DataType":"varbinary",
         "Template":{
            "DataType":"varbinary",
            "AllowNulls": "Yes"
         }
      }
   ],
   "Simple":[
      {
         "DataType":"string",
         "Template":{
            "DataType":"string",
            "AllowNulls":"No",
            "DefaultValue":"''",
            "Length":"50",
            "Unique":"No"
         }
      },
      {
         "DataType":"number",
         "Template":{
            "DataType":"number",
            "AllowNulls":"No",
            "DefaultValue":"0"
         }
      },
      {
         "DataType":"boolean",
         "Template":{
            "DataType":"boolean",
            "AllowNulls":"No",
            "DefaultValue":"0"
         }
      },
      {
         "DataType":"date",
         "Template":{
            "DataType":"date",
            "AllowNulls":"No",
            "DefaultValue":""
         }
      },
      {
         "DataType":"datetime",
         "Template":{
            "DataType":"datetime",
            "AllowNulls":"No",
            "DefaultValue":""
         }
      },
      {
         "DataType":"decimal",
         "Template":{
            "DataType":"decimal",
            "AllowNulls":"No",
            "DefaultValue":"0",
            "Precision":"8",
            "Scale":"2"
         }
      },
      {
         "DataType":"money",
         "Template":{
            "DataType":"money",
            "AllowNulls":"No",
            "DefaultValue":"0",
            "Precision":"8",
            "Scale":"2"
         }
      }
   ]
}

Databases

/wick/{masterkey}/databases
GET
https://mysafeinfo.com/wick/{masterkey}/databases
This method allows you to see a list of all of your databases.
Note: The {masterkey} provides access to create and rename databases, and access to all database keys. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
[
  {
    "Success": true,
    "Message": "",
    "DatabaseName": "default",
    "DeveloperName": "Matt",
    "IsDefault": true,
    "DatabasesCount": "2",
    "DatabasesMax": "5",
    "TablesCount": "2",
    "TablesMax": "5",
    "ColumnsMax": "15",
    "RowsMax": "1000",
    "Expires": "Never",
    "DesignerKey": "ABC123",
    "ReaderKey": "ABC234",
    "InsertKey": "ABC345",
    "UpdateKey": "ABC456",
    "DeleteKey": "ABC567",
    "DesignerReferers": "*",
    "ReaderReferers": "*",
    "InsertReferers": "*",
    "UpdateReferers": "*",
    "DeleteReferers": "*",
    "DesignerIPAddresses": "*",
    "ReaderIPAddresses": "*",
    "InsertIPAddresses": "*",
    "UpdateIPAddresses": "*",
    "DeleteIPAddresses": "*"
  },
  {
    "Success": true,
    "Message": "",
    "DatabaseName": "sandbox",
    "DeveloperName": "Matt",
    "IsDefault": false,
    "DatabasesCount": "2",
    "DatabasesMax": "5",
    "TablesCount": "1",
    "TablesMax": "5",
    "ColumnsMax": "15",
    "RowsMax": "1000",
    "Expires": "Never",
    "DesignerKey": "XYZC123",
    "ReaderKey": "XYZ234",
    "InsertKey": "XYZ345",
    "UpdateKey": "XYZ456",
    "DeleteKey": "XYZ567",
    "DesignerReferers": "*",
    "ReaderReferers": "*",
    "InsertReferers": "*",
    "UpdateReferers": "*",
    "DeleteReferers": "*",
    "DesignerIPAddresses": "*",
    "ReaderIPAddresses": "*",
    "InsertIPAddresses": "*",
    "UpdateIPAddresses": "*",
    "DeleteIPAddresses": "*"
  }
]

/wick/{masterkey}/databases/info
GET
https://mysafeinfo.com/wick/{masterkey}/databases/info
This method allows you to validate your master key and see your database count and maximum number of allowed databases.
Note: The {masterkey} provides access to create and rename databases, and access to all database keys. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "Success": true,
  "Message": "",
  "DeveloperName": "Matt",
  "DatabasesCount": "2",
  "DatabasesMax": "5",
  "CanUseManagementStudio": true
}

/wick/{masterkey}/databases/count
GET
https://mysafeinfo.com/wick/{masterkey}/databases/count
This method allows you to get the number of databases in your account.
Note: The {masterkey} provides access to create and rename databases, and access to all database keys. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 2,
  "Success": true,
  "Message": ""
}

/wick/{masterkey}/databases/create
GET
https://mysafeinfo.com/wick/{masterkey}/databases/create
This method allows you to create a new database, randomly named, in your account if your quota has not been reached.
Note: The {masterkey} provides access to create and rename databases, and access to all database keys. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Database created successfully"
}

/wick/{masterkey}/databases/create/{name}
GET
https://mysafeinfo.com/wick/{masterkey}/databases/create/{name}
This method allows you to create a new database, with a specific name, in your account if your quota has not been reached.
Note: The {masterkey} provides access to create and rename databases, and access to all database keys. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Database created successfully"
}

/wick/{masterkey}/databases/{sourcedatabase}/rename/{targetdatabase}
GET
https://mysafeinfo.com/wick/{masterkey}/databases/{sourcedatabase}/rename/{targetdatabase}
This method allows you to rename a database. The database name is a friendly name used to help you manage your databases.
Note: The {masterkey} provides access to create and rename databases, and access to all database keys. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Database renamed successfully"
}

/wick/{masterkey}/databases/{name}
DELETE
https://mysafeinfo.com/wick/{masterkey}/databases/{name}
This method allows you to delete a database in your account. Deleting a database will delete all the tables and data in the database.
Note: The {masterkey} provides access to create and rename databases, and access to all database keys. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Database deleted successfully"
}

/wick/{masterkey}/databases/{sourcedatabase}/clone/{targetdatabase}
GET
https://mysafeinfo.com/wick/{masterkey}/databases/{sourcedatabase}/clone/{targetdatabase}
This method allows you to clone an existing database in your account. The target database must be alphanumeric and unique within your account. By default this will clone the schema but not the data.
Note: The {masterkey} provides access to create and rename databases, and access to all database keys. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Database cloned successfully"
}

/wick/{masterkey}/databases/{sourcedatabase}/clone/{targetdatabase}/false
GET
https://mysafeinfo.com/wick/{masterkey}/databases/{sourcedatabase}/clone/{targetdatabase}/false
This method allows you to clone an existing database in your account. The target database must be alphanumeric and unique within your account. This will clone the schema but not the data.
Note: The {masterkey} provides access to create and rename databases, and access to all database keys. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Database cloned successfully"
}

/wick/{masterkey}/databases/{sourcedatabase}/clone/{targetdatabase}/true
GET
https://mysafeinfo.com/wick/{masterkey}/databases/{sourcedatabase}/clone/{targetdatabase}/true
This method allows you to clone an existing database in your account. The target database must be alphanumeric and unique within your account. This will clone the schema and the data.
Note: The {masterkey} provides access to create and rename databases, and access to all database keys. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Database cloned successfully"
}

Tables

/wick/{designerkey}/tables/{table}/create
GET
https://mysafeinfo.com/wick/{designerkey}/tables/{table}/create
This method allows you to create a new table in your database. The table name must be alphanumeric and unique within your database. All tables are created with a primary key identity column named ID. The ID column can be renamed, but not deleted.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Table created successfully"
}

/wick/{designerkey}/tables/{table}/create
POST
https://mysafeinfo.com/wick/{designerkey}/tables/{table}/create
This method allows you to create a new table in your database and optionally create the columns in bulk. The table name must be alphanumeric and unique within your database. All tables are created with a primary key identity column named ID. The ID column can be renamed, but not deleted.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Content-Type:
application/json; charset=utf-8
Request Body:
[
  {
    "Name": "Column1",
    "DataType": "varchar",
    "AllowNulls": "No",
    "DefaultValue": "''",
    "Length": "50",
    "Unique": "No"
  },
  {
    "Name": "Column2",
    "DataType": "int",
    "AllowNulls": "No",
    "DefaultValue": "0"
  },
  {
    "Name": "Column3",
    "DataType": "decimal",
    "AllowNulls": "No",
    "DefaultValue": "0",
    "Precision": "8",
    "Scale": "2"
  }
]
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Table created successfully"
}

/wick/{designerkey}/tables/{table}
DELETE
https://mysafeinfo.com/wick/{designerkey}/tables/{table}
This method allows you to delete a table in your database.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Table deleted successfully"
}

/wick/{designerkey}/tables/{sourcetable}/rename/{targettable}
GET
https://mysafeinfo.com/wick/{designerkey}/tables/{sourcetable}/rename/{targettable}
This method allows you to rename an existing table in your database. The target table must be alphanumeric and unique within your database.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Table renamed successfully"
}

/wick/{designerkey}/tables/{sourcetable}/clone/{targettable}
GET
https://mysafeinfo.com/wick/{designerkey}/tables/{sourcetable}/clone/{targettable}
This method allows you to clone an existing table in your database. The target table must be alphanumeric and unique within your database. By default this will clone the schema but not the data.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Table cloned successfully"
}

/wick/{designerkey}/tables/{sourcetable}/clone/{targettable}/false
GET
https://mysafeinfo.com/wick/{designerkey}/tables/{sourcetable}/clone/{targettable}/false
This method allows you to clone an existing table in your database. The target table must be alphanumeric and unique within your database. This will clone the schema but not the data.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Table cloned successfully"
}

/wick/{designerkey}/tables/{sourcetable}/clone/{targettable}/true
GET
https://mysafeinfo.com/wick/{designerkey}/tables/{sourcetable}/clone/{targettable}/true
This method allows you to clone an existing table in your database. The target table must be alphanumeric and unique within your database. This will clone the schema and the data.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Table cloned successfully"
}

/wick/{designerkey|readerkey|insertkey|updatekey|deletekey}/tables
GET
https://mysafeinfo.com/wick/{designerkey|readerkey|insertkey|updatekey|deletekey}/tables
This method allows you to get the list of tables in your database.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Note: The {readerkey} allows you to read data from your table. You are responsible for taking all reasonable steps to protect your keys.
Note: The {insertkey} allows you to add data to your table. You are responsible for taking all reasonable steps to protect your keys.
Note: The {updatekey} allows you to edit data in your table. You are responsible for taking all reasonable steps to protect your keys.
Note: The {deletekey} allows you to delete data from your table. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
[
  {
    "Name": "table1",
    "CreateDate": "2015-05-17T17:49:44.23",
    "ModifyDate": "2015-05-20T12:35:16.187",
    "RowCount": 1176,
    "ColumnCount": 11
  },
  {
    "Name": "table2",
    "CreateDate": "2015-05-28T17:58:20.39",
    "ModifyDate": "2015-05-28T17:58:36.79",
    "RowCount": 59,
    "ColumnCount": 5
  },
  {
    "Name": "table3",
    "CreateDate": "2015-05-28T17:59:20.31",
    "ModifyDate": "2015-05-28T17:59:20.343",
    "RowCount": 27,
    "ColumnCount": 7
  }
]

/wick/{designerkey}/tables/count
GET
https://mysafeinfo.com/wick/{designerkey}/tables/count
This method allows you to get the number of tables in your database.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 4,
  "Success": true,
  "Message": ""
}

/wick/{designerkey}/tables/{table}/records/count
GET
https://mysafeinfo.com/wick/{designerkey}/tables/{table}/records/count
This method allows you to get the number of records in your table.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 11,
  "Success": true,
  "Message": ""
}

/wick/{designerkey|readerkey|insertkey|updatekey|deletekey}/tables/{table}/template
GET
https://mysafeinfo.com/wick/{designerkey|readerkey|insertkey|updatekey|deletekey}/tables/{table}/template
This method allows you to get the template of your table in JSON format to use for the for the POST/PUT when inserting/editing table data.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Note: The {readerkey} allows you to read data from your table. You are responsible for taking all reasonable steps to protect your keys.
Note: The {insertkey} allows you to add data to your table. You are responsible for taking all reasonable steps to protect your keys.
Note: The {updatekey} allows you to edit data in your table. You are responsible for taking all reasonable steps to protect your keys.
Note: The {deletekey} allows you to delete data from your table. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "customerid": "",
  "customername": "",
  "customertype": "",
  "address1": "",
  "address2": "",
  "city": "",
  "statecode": "",
  "postalcode": "",
  "countrycode": "",
  "phonenumber": "",
  "emailaddress": ""
}

/wick/{designerkey}/tables/export
GET
https://mysafeinfo.com/wick/{designerkey}/tables/export

This method allows you to download a zip file containing all of your tables exported in the specified format.

You can optionally specify which format you want your data exported as using the following querystring parameter:
  • format=json (default)
  • format=xml
  • format=csv
  • format=excel
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
Compressed zip file

/wick/{designerkey}/tables/{table}/import
POST
https://mysafeinfo.com/wick/{designerkey}/tables/{table}/import
This method allows you to create a new table in your database with the schema and data from a Base64 encoded file containing JSON, XML, CSV, or Excel (xlsx) data. This example uses the JSON data for the U.S. Original 13 Colonies. Whether you are using JSON, XML, CSV, or Excel data, you simply need to Base64 encode the data to POST in the request body. The table name must be alphanumeric and unique within your database. All tables are created with a primary key identity column named ID. The ID column can be renamed, but not deleted.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Request Body:
Wwp7CiJPcmRlciI6IDEsCiJZZWFyIjogMTYwNywKIlN0YXRlTmFtZSI6ICJWaXJnaW5pYSIsCiJTdGF0ZUNvZGUiOiAiVkEiCn0sCnsKIk9yZGVyIjogMiwKIlllYXIiOiAxNjI2LAoiU3RhdGVOYW1lIjogIk5ldyBZb3JrIiwKIlN0YXRlQ29kZSI6ICJOWSIKfSwKewoiT3JkZXIiOiAzLAoiWWVhciI6IDE2MzAsCiJTdGF0ZU5hbWUiOiAiTWFzc2FjaHVzZXR0cyIsCiJTdGF0ZUNvZGUiOiAiTUEiCn0sCnsKIk9yZGVyIjogNCwKIlllYXIiOiAxNjMzLAoiU3RhdGVOYW1lIjogIk1hcnlsYW5kIiwKIlN0YXRlQ29kZSI6ICJNRCIKfSwKewoiT3JkZXIiOiA1LAoiWWVhciI6IDE2MzYsCiJTdGF0ZU5hbWUiOiAiUmhvZGUgSXNsYW5kIiwKIlN0YXRlQ29kZSI6ICJSSSIKfSwKewoiT3JkZXIiOiA2LAoiWWVhciI6IDE2MjYsCiJTdGF0ZU5hbWUiOiAiQ29ubmVjdGljdXQiLAoiU3RhdGVDb2RlIjogIkNUIgp9LAp7CiJPcmRlciI6IDcsCiJZZWFyIjogMTYzOCwKIlN0YXRlTmFtZSI6ICJOZXcgSGFtcHNoaXJlIiwKIlN0YXRlQ29kZSI6ICJOSCIKfSwKewoiT3JkZXIiOiA4LAoiWWVhciI6IDE2MzgsCiJTdGF0ZU5hbWUiOiAiRGVsYXdhcmUiLAoiU3RhdGVDb2RlIjogIkRFIgp9LAp7CiJPcmRlciI6IDksCiJZZWFyIjogMTY1MywKIlN0YXRlTmFtZSI6ICJOb3J0aCBDYXJvbGluYSIsCiJTdGF0ZUNvZGUiOiAiTkMiCn0sCnsKIk9yZGVyIjogMTAsCiJZZWFyIjogMTY2MywKIlN0YXRlTmFtZSI6ICJTb3V0aCBDYXJvbGluYSIsCiJTdGF0ZUNvZGUiOiAiU0MiCn0sCnsKIk9yZGVyIjogMTEsCiJZZWFyIjogMTY2NCwKIlN0YXRlTmFtZSI6ICJOZXcgSmVyc2V5IiwKIlN0YXRlQ29kZSI6ICJOSiIKfSwKewoiT3JkZXIiOiAxMiwKIlllYXIiOiAxNjgyLAoiU3RhdGVOYW1lIjogIlBlbm5zeWx2YW5pYSIsCiJTdGF0ZUNvZGUiOiAiUEEiCn0sCnsKIk9yZGVyIjogMTMsCiJZZWFyIjogMTczMiwKIlN0YXRlTmFtZSI6ICJHZW9yZ2lhIiwKIlN0YXRlQ29kZSI6ICJHQSIKfQpd
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Table imported successfully"
}

Columns

/wick/{designerkey}/tables/{table}/columns/{column}/create?datatype={datatype}&allownulls={allownulls}&defaultvalue={defaultvalue}&length={length}&precision={precision}&scale={scale}&unique={unique}
GET
https://mysafeinfo.com/wick/{designerkey}/tables/{table}/columns/{column}/create?datatype={datatype}&allownulls={allownulls}&defaultvalue={defaultvalue}&length={length}&precision={precision}&scale={scale}&unique={unique}
This method allows you to create a new column in your table. The column name must be alphanumeric and unique within your table.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Column created successfully"
}

/wick/{designerkey}/tables/{table}/columns/{column}/create
POST
https://mysafeinfo.com/wick/{designerkey}/tables/{table}/columns/{column}/create
This method allows you to create a new column in your table. The column name must be alphanumeric and unique within your table. The request body for this API call expects a datatype template to be passed in.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Content-Type:
application/json; charset=utf-8
Request Body:
{
    "DataType": "varchar",
    "AllowNulls": "No",
    "DefaultValue": "''",
    "Length": "50",
    "Precision": "8",
    "Scale": "2",
    "Unique": "No"
}
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Column created successfully"
}

/wick/{designerkey}/tables/{table}/columns
POST
https://mysafeinfo.com/wick/{designerkey}/tables/{table}/columns
This method allows you to add, alter, rename, and delete columns in your table in bulk. Column names must be alphanumeric and unique within your table.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Actions:
add
alter
rename
delete
rename,alter
Content-Type:
application/json; charset=utf-8
Request Body:
[
  {
    "Action": "add",
    "SourceColumn": "Column1",
    "DataType": "varchar",
    "AllowNulls": "No",
    "DefaultValue": "''",
    "Length": "50",
    "Unique": "No"
  },
  {
    "Action": "alter",
    "SourceColumn": "Column1",
    "DataType": "varchar",
    "AllowNulls": "No",
    "DefaultValue": "''",
    "Length": "100",
    "Unique": "No"
  },
  {
    "Action": "rename",
    "SourceColumn": "Column1",
    "TargetColumn": "Column2"
  },
  {
    "Action": "delete",
    "SourceColumn": "Column1"
  },
  {
    "Action": "add",
    "SourceColumn": "Column1",
    "DataType": "int",
    "AllowNulls": "No",
    "DefaultValue": "0"
  },
  {
    "Action": "rename,alter",
    "SourceColumn": "Column1",
    "TargetColumn": "Column2",
    "DataType": "decimal",
    "AllowNulls": "No",
    "DefaultValue": "0",
    "Precision": "8",
    "Scale": "2"
  }
]
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Columns processed successfully"
}

/wick/{designerkey}/tables/{table}/columns/{column}
DELETE
https://mysafeinfo.com/wick/{designerkey}/tables/{table}/columns/{column}
This method allows you to delete a column in your table.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Column deleted successfully"
}

/wick/{designerkey}/tables/{table}/columns/{sourcecolumn}/rename/{targetcolumn}
GET
https://mysafeinfo.com/wick/{designerkey}/tables/{table}/columns/{sourcecolumn}/rename/{targetcolumn}
This method allows you to rename an existing column in your table. The target column must be alphanumeric and unique within your table.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Column renamed successfully"
}

/wick/{designerkey}/tables/{table}/columns/{column}/alter
POST
https://mysafeinfo.com/wick/{designerkey}/tables/{table}/columns/{column}/alter
This method allows you to alter an existing column in your table. The request body for this API call expects a datatype template to be passed in.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Content-Type:
application/json; charset=utf-8
Request Body:
{
    "DataType": "varchar",
    "AllowNulls": "No",
    "DefaultValue": "''",
    "Length": "50",
    "Precision": "8",
    "Scale": "2",
    "Unique": "No"
}
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Column altered successfully"
}

/wick/{designerkey|readerkey|insertkey|updatekey|deletekey}/tables/{table}/columns
GET
https://mysafeinfo.com/wick/{designerkey|readerkey|insertkey|updatekey|deletekey}/tables/{table}/columns
This method allows you to get the list of columns in your table.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Note: The {readerkey} allows you to read data from your table. You are responsible for taking all reasonable steps to protect your keys.
Note: The {insertkey} allows you to add data to your table. You are responsible for taking all reasonable steps to protect your keys.
Note: The {updatekey} allows you to edit data in your table. You are responsible for taking all reasonable steps to protect your keys.
Note: The {deletekey} allows you to delete data from your table. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
[
  {
    "Name": "customerid",
    "Type": "int",
    "Length": 4,
    "Precision": 10,
    "Scale": 0,
    "Collation": "",
    "Nullable": false,
    "Identity": true,
    "Default": "",
    "Sequence": 1
  },
  {
    "Name": "customername",
    "Type": "varchar",
    "Length": 80,
    "Precision": 0,
    "Scale": 0,
    "Collation": "SQL_Latin1_General_CP1_CI_AS",
    "Nullable": false,
    "Identity": false,
    "Default": "('')",
    "Sequence": 2
  },
  {
    "Name": "customertype",
    "Type": "varchar",
    "Length": 20,
    "Precision": 0,
    "Scale": 0,
    "Collation": "SQL_Latin1_General_CP1_CI_AS",
    "Nullable": false,
    "Identity": false,
    "Default": "('')",
    "Sequence": 3
  },
  {
    "Name": "address1",
    "Type": "varchar",
    "Length": 80,
    "Precision": 0,
    "Scale": 0,
    "Collation": "SQL_Latin1_General_CP1_CI_AS",
    "Nullable": false,
    "Identity": false,
    "Default": "('')",
    "Sequence": 4
  },
  {
    "Name": "address2",
    "Type": "varchar",
    "Length": 80,
    "Precision": 0,
    "Scale": 0,
    "Collation": "SQL_Latin1_General_CP1_CI_AS",
    "Nullable": false,
    "Identity": false,
    "Default": "('')",
    "Sequence": 5
  },
  {
    "Name": "city",
    "Type": "varchar",
    "Length": 40,
    "Precision": 0,
    "Scale": 0,
    "Collation": "SQL_Latin1_General_CP1_CI_AS",
    "Nullable": false,
    "Identity": false,
    "Default": "('')",
    "Sequence": 6
  },
  {
    "Name": "statecode",
    "Type": "char",
    "Length": 2,
    "Precision": 0,
    "Scale": 0,
    "Collation": "SQL_Latin1_General_CP1_CI_AS",
    "Nullable": false,
    "Identity": false,
    "Default": "('')",
    "Sequence": 7
  },
  {
    "Name": "postalcode",
    "Type": "varchar",
    "Length": 10,
    "Precision": 0,
    "Scale": 0,
    "Collation": "SQL_Latin1_General_CP1_CI_AS",
    "Nullable": false,
    "Identity": false,
    "Default": "('')",
    "Sequence": 8
  },
  {
    "Name": "countrycode",
    "Type": "varchar",
    "Length": 3,
    "Precision": 0,
    "Scale": 0,
    "Collation": "SQL_Latin1_General_CP1_CI_AS",
    "Nullable": false,
    "Identity": false,
    "Default": "('')",
    "Sequence": 9
  },
  {
    "Name": "phonenumber",
    "Type": "varchar",
    "Length": 10,
    "Precision": 0,
    "Scale": 0,
    "Collation": "SQL_Latin1_General_CP1_CI_AS",
    "Nullable": false,
    "Identity": false,
    "Default": "('')",
    "Sequence": 10
  },
  {
    "Name": "emailaddress",
    "Type": "varchar",
    "Length": 80,
    "Precision": 0,
    "Scale": 0,
    "Collation": "SQL_Latin1_General_CP1_CI_AS",
    "Nullable": false,
    "Identity": false,
    "Default": "('')",
    "Sequence": 11
  }
]

/wick/{designerkey}/tables/{table}/columns/count
GET
https://mysafeinfo.com/wick/{designerkey}/tables/{table}/columns/count
This method allows you to get the number of columns in your table.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 11,
  "Success": true,
  "Message": ""
}

Writer

/wick/{insertkey}/tables/{table}
POST
https://mysafeinfo.com/wick/{insertkey}/tables/{table}
This method allows you to create a new record in your table. The request body for this API call expects a table template to be passed in.
Note: The {insertkey} allows you to add data to your table. You are responsible for taking all reasonable steps to protect your keys.
Note: Not all columns are required to be specified; however, any column not specified must either allow nulls or have a default value.
Content-Type:
application/json; charset=utf-8
Request Body:
{
    "Column1": "",
    "Column2": "",
    "Column3": ""
}
Response Body:
{
  "ID": 1,
  "Success": true,
  "Message": "Record added successfully"
}

/wick/{updatekey}/tables/{table}/{id}
PUT
https://mysafeinfo.com/wick/{updatekey}/tables/{table}/{id}
This method allows you to update an existing record in your table. The request body for this API call expects a table template to be passed in.
Note: The {updatekey} allows you to edit data in your table. You are responsible for taking all reasonable steps to protect your keys.
Note: This performs a delta update on the existing record. If you pass in Column1=ABC it would update the record to have a value of ABC for Column1 and would leave any other columns unchanged.
Content-Type:
application/json; charset=utf-8
Request Body:
{
    "Column1": "",
    "Column2": "",
    "Column3": ""
}
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Record updated successfully"
}

/wick/{deletekey}/tables/{table}/{id}
DELETE
https://mysafeinfo.com/wick/{deletekey}/tables/{table}/{id}
This method allows you to delete a record from your table.
Note: The {deletekey} allows you to delete data from your table. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Record deleted successfully"
}

/wick/{deletekey}/tables/{table}/truncate
GET
https://mysafeinfo.com/wick/{deletekey}/tables/{table}/truncate
This method allows you to truncate your table.
Note: The {deletekey} allows you to delete data from your table. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Table truncated successfully"
}

/wick/{designerkey}/tables/{table}
PATCH
https://mysafeinfo.com/wick/{designerkey}/tables/{table}
This method allows you to add, update, or delete records in your table in bulk.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Identity column values:
 0 = add
 N = update
-N = delete
Content-Type:
application/json; charset=utf-8
Request Body:
[
  {
    "ID": "0",
    "Email": "bill@test.com",
    "Name": "Bill Smith"
  },
  {
    "ID": "0",
    "Email": "sally@test.com",
    "Name": "Sally Jones"
  },
  {
    "ID": "-2"
  },
  {
    "ID": "-4"
  },
  {
    "ID": "5",
    "Name": "Bob"
  }
]
Response Body:
{
  "ID": 0,
  "Success": true,
  "Message": "Records processed successfully"
}

Reader

/wick/{designerkey|readerkey|insertkey|updatekey|deletekey}/tables/{table}
GET
https://mysafeinfo.com/wick/{designerkey|readerkey|insertkey|updatekey|deletekey}/tables/{table}

This method allows you to get all data from your table.

You can optionally use the following querystring parameters to customize how you retrieve data from your table.
  • sort=ColumnName asc
  • sort=ColumnName desc
  • top=X
  • pagesize=X
  • pagenumber=X
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Note: The {readerkey} allows you to read data from your table. You are responsible for taking all reasonable steps to protect your keys.
Note: The {insertkey} allows you to add data to your table. You are responsible for taking all reasonable steps to protect your keys.
Note: The {updatekey} allows you to edit data in your table. You are responsible for taking all reasonable steps to protect your keys.
Note: The {deletekey} allows you to delete data from your table. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
[
  {
    "customerid": 45,
    "customername": "Stunkard Brokers Services",
    "customertype": "",
    "address1": "",
    "address2": "",
    "city": "Kaufman",
    "statecode": "TX",
    "postalcode": "58145",
    "countrycode": "",
    "phonenumber": "555144816",
    "emailaddress": ""
  },
  {
    "customerid": 46,
    "customername": "Jovic Delivery  LLC",
    "customertype": "",
    "address1": "",
    "address2": "",
    "city": "Waynesburg",
    "statecode": "PA",
    "postalcode": "62982",
    "countrycode": "",
    "phonenumber": "555139639",
    "emailaddress": ""
  },
  {
    "customerid": 47,
    "customername": "Juntilla Packaging",
    "customertype": "",
    "address1": "",
    "address2": "",
    "city": "Waynesburg",
    "statecode": "PA",
    "postalcode": "106368",
    "countrycode": "",
    "phonenumber": "555127017",
    "emailaddress": ""
  }
]

/wick/{designerkey|readerkey|insertkey|updatekey|deletekey}/tables/{table}/{id}
GET
https://mysafeinfo.com/wick/{designerkey|readerkey|insertkey|updatekey|deletekey}/tables/{table}/{id}
This method allows you to get a specific record from your table.
Note: The {designerkey} provides access to create, rename, and delete databases, tables, columns, and more. You are responsible for taking all reasonable steps to protect your keys.
Note: The {readerkey} allows you to read data from your table. You are responsible for taking all reasonable steps to protect your keys.
Note: The {insertkey} allows you to add data to your table. You are responsible for taking all reasonable steps to protect your keys.
Note: The {updatekey} allows you to edit data in your table. You are responsible for taking all reasonable steps to protect your keys.
Note: The {deletekey} allows you to delete data from your table. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
{
  "customerid": 45,
  "customername": "Stunkard Brokers Services",
  "customertype": "",
  "address1": "",
  "address2": "",
  "city": "Kaufman",
  "statecode": "TX",
  "postalcode": "58145",
  "countrycode": "",
  "phonenumber": "555144816",
  "emailaddress": ""
}

/api/data?list=custom&token={readerkey}&table={table}&format=json
GET
https://mysafeinfo.com/api/data?list=custom&token={readerkey}&table={table}&format=json
This method allows you to tap into the Data API to retrieve your data. The Data API provides several features to customize your data, including formatting, sorting, filtering, column aliasing, column selection, and much more.
Note: The {readerkey} allows you to read data from your table. You are responsible for taking all reasonable steps to protect your keys.
Response Body:
[
  {
    "customerid": 45,
    "customername": "Stunkard Brokers Services",
    "customertype": "",
    "address1": "",
    "address2": "",
    "city": "Kaufman",
    "statecode": "TX",
    "postalcode": "58145",
    "countrycode": "",
    "phonenumber": "555144816",
    "emailaddress": ""
  },
  {
    "customerid": 46,
    "customername": "Jovic Delivery  LLC",
    "customertype": "",
    "address1": "",
    "address2": "",
    "city": "Waynesburg",
    "statecode": "PA",
    "postalcode": "62982",
    "countrycode": "",
    "phonenumber": "555139639",
    "emailaddress": ""
  },
  {
    "customerid": 47,
    "customername": "Juntilla Packaging",
    "customertype": "",
    "address1": "",
    "address2": "",
    "city": "Waynesburg",
    "statecode": "PA",
    "postalcode": "106368",
    "countrycode": "",
    "phonenumber": "555127017",
    "emailaddress": ""
  }
]

mysafeinfo.com