listActions

The "listActions" action returns a list of all JSON actions supported by the JSON Action API. It also returns basic session and server information. It is useful for testing and troubleshooting. This action requires a valid "authToken" to prevent this information from being used by unauthorized users. 

Each action is returned as an object that contains the "action", "apiVersion", and "api" properties. 

  • "action" is the name of the JSON action.
  • "apiVersion" is the version of the action.
  • "api" is the group that contains the action. The group is primarily for organizational purposes. 

 

Request examples

Minimal

{
  "action": "listActions",
  "params": {},
  "authToken": "replaceWithAuthTokenFromCreateSession"
}
 
 

 

Response examples

Minimal

{
  "result": {
    "authToken": "replaceWithAuthTokenFromCreateSession",
    "username": "ADMIN",
    "description": "My Session",
    "defaultDatabaseName": "faircom",
    "defaultOwnerName": "admin",
    "defaultBinaryFormat": "hex",
    "defaultVariantFormat": "json",
    "defaultStringFormat": "json",
    "defaultFixedLengthCharFormat": "sql",
    "defaultResponseOptions": {
      "dataFormat": "objects",
      "numberFormat": "string",
      "binaryFormat": "hex",
      "variantFormat": "json",
      "stringFormat": "json",
      "fixedLengthCharFormat": "sql",
      "includeBookmarks": false
    },
    "idleConnectionTimeoutSeconds": 60000,
    "idleCursorTimeoutSeconds": 600,
    "defaultApi": "db",
    "defaultDebug": "none",
    "transformBufferInitialBytes": 0,
    "permanentSession": false,
    "sessionStartTimestamp": "2026-07-16T12:15:20",
    "sessionLastAccessedTimestamp": "2026-07-16T18:55:09",
    "defaultRetentionPolicy": "autoPurge",
    "defaultRetentionUnit": "week",
    "defaultRetentionPeriod": 4,
    "serverVersion": "FairCom EDGE Server - V5.1.5.145(Build-260610)",
    "data": [
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "alterAccount"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "alterCodePackage"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "alterLabel"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "alterRole"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "alterSession"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "alterStreamingConnection"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "changeLabels"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "cloneAccount"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "cloneCodePackage"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "cloneRole"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "createAccount"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "createAndStartDataChangeStreams"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "createCodePackage"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "createLabel"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "createRole"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "createSession"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "createStreamingConnection"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "deleteDataChangeStreams"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "deleteSession"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "deleteStreamingConnection"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "deleteValues"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "describeAccounts"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "describeCodePackageHistory"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "describeCodePackages"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "describeDataChangeStreams"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "describeRoles"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "describeSessions"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "describeValues"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "describeValuesFromHierarchy"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "dropAccounts"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "dropRole"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "getKeysFromHierarchy"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "getLabelsLinkedToRecordIds"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "getRecordIdsLinkedToLabel"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "getValues"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "getValuesFromHierarchy"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "hasPermissions"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "linkLabelsToRecords"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "linkRolesWithAccounts"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "linkRoleWithPrivileges"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "listAccounts"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "listActions"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "listCodePackageHistory"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "listCodePackages"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "listDataChangeStreams"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "listLabelGroups"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "listLabels"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "listPrivileges"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "listRoles"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "listServices"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "listSessions"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "listStreamingConnectionProblems"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "listStreamingConnections"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "manageService"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "optimizeLabelLinks"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "pauseStreamingConnection"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "pingSession"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "renameKeys"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "resumeStreamingConnection"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "revertCodePackage"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "setValues"
      },
      {
        "api": "admin",
        "apiVersion": "1.0.0",
        "action": "unlinkLabelsFromRecords"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "alterTable"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "closeCursor"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "commitTransaction"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "createDatabase"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "createIndex"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "createTable"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "createTransaction"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "createTransactionSavepoint"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "deleteDatabase"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "deleteIndexes"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "deleteRecords"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "deleteTables"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "describeTables"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "getRecordsByIds"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "getRecordsByIndex"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "getRecordsByPartialKeyRange"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "getRecordsByTable"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "getRecordsFromCursor"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "getRecordsInKeyRange"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "getRecordsStartingAtKey"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "getRecordsUsingSQL"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "insertRecords"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "listDatabases"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "listIndexes"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "listTables"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "listTransactions"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "listTransactionsInAllSessions"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "rebuildIndexes"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "rebuildTables"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "revertToTransactionSavepoint"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "rollbackTransaction"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "runSQLStatements"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "truncateRecords"
      },
      {
        "api": "db",
        "apiVersion": "1.0",
        "action": "updateRecords"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "alterInput"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "alterIntegrationTable"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "alterOutput"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "alterTag"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "alterThing"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "alterTransform"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "copyIntegrationTableTransformSteps"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "createInput"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "createIntegrationTable"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "createOutput"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "createTag"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "createThing"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "createTransform"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "deleteInput"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "deleteIntegrationTables"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "deleteOutput"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "deleteTags"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "deleteThings"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "deleteTransform"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "describeInputs"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "describeIntegrationTables"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "describeOutputs"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "describeTags"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "describeThings"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "describeTransforms"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "listInputs"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "listIntegrationTables"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "listOutputs"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "listTags"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "listThings"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "listTransforms"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "rerunIntegrationTableTransformSteps"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "runTransform"
      },
      {
        "api": "hub",
        "apiVersion": "1.0.0",
        "action": "testIntegrationTableTransformSteps"
      },
      {
        "api": "mq",
        "apiVersion": "1.0.0",
        "action": "alterMqSession"
      },
      {
        "api": "mq",
        "apiVersion": "1.0.0",
        "action": "configureBrokerConnection"
      },
      {
        "api": "mq",
        "apiVersion": "1.0.0",
        "action": "configureTopic"
      },
      {
        "api": "mq",
        "apiVersion": "1.0.0",
        "action": "createMqApiSession"
      },
      {
        "api": "mq",
        "apiVersion": "1.0.0",
        "action": "deleteBrokerConnection"
      },
      {
        "api": "mq",
        "apiVersion": "1.0.0",
        "action": "deleteMqSession"
      },
      {
        "api": "mq",
        "apiVersion": "1.0.0",
        "action": "deleteTopic"
      },
      {
        "api": "mq",
        "apiVersion": "1.0.0",
        "action": "describeBrokerConnections"
      },
      {
        "api": "mq",
        "apiVersion": "1.0.0",
        "action": "describeMqSessions"
      },
      {
        "api": "mq",
        "apiVersion": "1.0.0",
        "action": "describeTopics"
      },
      {
        "api": "mq",
        "apiVersion": "1.0.0",
        "action": "getMessagesFromMqApiSession"
      },
      {
        "api": "mq",
        "apiVersion": "1.0.0",
        "action": "getMessagesFromMqTopic"
      },
      {
        "api": "mq",
        "apiVersion": "1.0.0",
        "action": "listBrokerConnections"
      },
      {
        "api": "mq",
        "apiVersion": "1.0.0",
        "action": "listMqSessions"
      },
      {
        "api": "mq",
        "apiVersion": "1.0.0",
        "action": "listTopics"
      },
      {
        "api": "mq",
        "apiVersion": "1.0.0",
        "action": "publishMessagesToMq"
      },
      {
        "api": "mq",
        "apiVersion": "1.0.0",
        "action": "quiesceTopics"
      },
      {
        "api": "mq",
        "apiVersion": "1.0.0",
        "action": "subscribeToMq"
      },
      {
        "api": "transform",
        "apiVersion": "1.0.0",
        "action": "alterTransform"
      },
      {
        "api": "transform",
        "apiVersion": "1.0.0",
        "action": "copyIntegrationTableTransformSteps"
      },
      {
        "api": "transform",
        "apiVersion": "1.0.0",
        "action": "createTransform"
      },
      {
        "api": "transform",
        "apiVersion": "1.0.0",
        "action": "deleteTransform"
      },
      {
        "api": "transform",
        "apiVersion": "1.0.0",
        "action": "describeTransforms"
      },
      {
        "api": "transform",
        "apiVersion": "1.0.0",
        "action": "listTransforms"
      },
      {
        "api": "transform",
        "apiVersion": "1.0.0",
        "action": "rerunIntegrationTableTransformSteps"
      },
      {
        "api": "transform",
        "apiVersion": "1.0.0",
        "action": "runTransform"
      },
      {
        "api": "transform",
        "apiVersion": "1.0.0",
        "action": "testIntegrationTableTransformSteps"
      }
    ]
  },
  "authToken": "replaceWithAuthTokenFromCreateSession",
  "errorCode": 0,
  "errorMessage": ""
}
 
 

 

 

Properties

Response properties ("result")

Property Description Type Limits (inclusive)

authToken

The "authToken" property signifies that the client is authenticated and authorized.

It is supplied by the server in response to the connect action.

Clients must include it in all subsequent requests to validate that they are authenticated and authorized. If the client does not supply the correct values, the server returns an unauthorized error.

string 0 to 255 bytes

data

The "data" property contains a response message. Its contents are defined by the action. It is an empty array when no results are available.

array of objects

"api"

"apiVersion"

"action"

defaultApi

The "defaultApi" property specifies the default value of the "api" property when it is omitted from an action request. 

string enum

"admin"

"hub"

"mq"

"db"

defaultBinaryFormat

The "binaryFormat" property determines the format of binary values embedded in JSON strings. For more details, see binaryFormat string One of the following: "base64", "hex", or "byteArray".

defaultDatabaseName

The "defaultDatabaseName" property specifies which database name to use when the "databaseName" property is omitted. Its value is case-insensitive.

string 1 to 64 bytes

defaultDebug

The "defaultDebug" property defines the default value of the "debug" property for all requests in a session. 

Important This is different than the "debug" property in that the "debug" property can be universally used in any action while the "defaultDebug" property is only set in the "createSession" action and sets the "debug" property for any action run using the session being created.

  • Possible values include:
    • "none"
    • "max"
  • If "defaultDebug" is omitted or set to null, it defaults to "max".
    • This causes the server to include the "debugInfo" property in the response.
    • This setting is typically used in development environments and for temporarily troubleshooting issues in production environments.
  • For maximum performance, set "defaultDebug" to "none".
    • This causes the server to omit the "debugInfo" property in the response.
    • This setting is typically used in production and staging environments where it is desirable to have maximum performance and minimal network traffic.
string enum

"none"

"max"

defaultFixedLengthCharFormat

The "defaultFixedLengthCharFormat" property defines the default value of the "fixedLengthCharFormat" property when a JSON Action request does not otherwise define it.  string enum

"sql"

"trimTrailingSpaces"

"trimTrailingPadding"

defaultOwnerName

The "defaultOwnerName" property is is used by "createSession" and "alterSession" to specify the default owner of objects created by the session. Its value must be a valid username of an account. If it is omitted, null, or "", it defaults to the value of the session's "username" property.

  • See Object owner in the JSON DB Concepts section for an explanation of how to use the "defaultOwnerName" and "ownername" properties to specify the owner of objects.
  • When "ownerName" is omitted the server uses the "defaultOwnerName" property value set during login.
  • In "createSession" and "alterSession" when "defaultOwnerName" is omitted or set to null:
    • In the JSON DB API, the server sets "defaultOwnerName" to the "username" of the logged-in user. Thus, by default, the logged-in account owns the objects it creates.
    • In the JSON Hub API and JSON MQ API, the server sets "defaultOwnerName" to "admin" allowing the server to own the objects it creates.
  • Actions that create objects, such as "createTable" and "createIntegrationTable", can omit the "ownerName" property, making the server set "ownerName" to the value of "defaultOwnerName".
  • When an action that creates an object sets the "ownerName" property to a valid account name, the specified account owns the created object and an account that owns an object has full management rights over the object. You can use object ownership as a simple way to control access to objects.
  • When "ownerName" is set to the empty string, then no account owns the object. Unowned objects can be managed by administrator accounts and by accounts assigned to roles that grant access rights to the object, making it useful when you want to prevent an account from owning an object and inheriting full management rights to that object.
string 1 to 64 bytes

defaultResponseOptions

The "defaultResponseOptions" property defines a default value for "responseOptions" that is used by default in all other action calls. It defaults to an empty object.

JSON NAV allows you to choose how your program detects errors. By default, all error properties are included in each response – unless you override this behavior as shown in the example.

The example omits the error object in all responses which makes it easier for statically typed languages, such as C, C++, Java, C#, and VB, because they prefer properties to always be present. To help these languages, the "errorCode", "errorMessage", and "errorData" properties are always present whether there is an error or not.

Example

 "defaultResponseOptions": {
      "binaryFormat": "hex",
      "dataFormat": "objects",
      "numberFormat": "number",
      "variantFormat": "json"
    }
object

"binaryFormat"

"dataFormat"

"numberFormat"

defaultResponseOptions

.binaryFormat

The "binaryFormat" property designates the format of binary values embedded in JSON strings. See binaryFormat for more details.  string One of the following: "base64", "hex", or "byteArray".

defaultResponseOptions

.dataFormat

The "dataFormat" property (case-insensitive) defines the format of the "data" property. The default for "dataFormat" can be changed during a "createSession" action by assigning a different value to the "dataFormat" property in "defaultResponseOptions".

  • "dataFormat" in the response shows the client how the server formatted the "data" property.
    • Possible values include:
      • "arrays"
        • This is the default and causes the server to return results as an array of arrays, which is the most efficient.
      • "objects"
        • This returns results as an array of objects. This is less efficient but is simpler to generate, read, and troubleshoot.
string

"autoDetect"

"arrays"

"objects"

defaultResponseOptions

.fixedLengthCharFormat

The "fixedLengthCharFormat" property controls how the "getRecords" actions return values from fields with the "char" data type (CT_FSTRING), which is FairCom's fixed-length string field. It does not apply to other field types, such as "varchar", "lvarchar", "binary", "varbinary", and "lvarbinary". string

"sql"

"trimTrailingSpaces"

"trimTrailingPadding"

defaultResponseOptions

.includeBookmarks

The "includeBookmarks" property indicates whether or not bookmarks are included in the response by default. Boolean

true

false

defaultResponseOptions

.numberFormat

The "numberFormat" property (case-sensitive) defines the format of JSON numbers. 

When "numberFormat" occurs in "mapOfPropertiesToFields", it tells the server how to encode or decode a number assigned to a JSON property.

For example, including "numberFormat" in a "tableFieldsToJson" transform step controls if the server encodes a number in a JSON property as a number or a number embedded in a string.

Possible values:
  • "number"
    • This causes the server to return numeric values as JSON numbers, such as -18446744073709551616.000144722494 .
    • This is most efficient.
    • JSON represents numbers are base-ten numbers that may have any number of digits.
    • Large numbers, such as 18446744073709551616.000144722494 are known to cause problems with JSON parsers and some programming languages, such as JavaScript, which are limited to the smaller range and binary rounding errors of IEEE floating point numbers.
  • "string"
    • This returns the server to embed numeric values in JSON strings, such as "18446744073709551616.000144722494".
    • This is slightly less efficient because it includes two extra double quote characters
    • Returning numbers embedded in strings ensures JSON parsers and programming languages will not automatically convert the number to a numeric representation that loses precision, introduces rounding errors, truncates values, or generates errors. This allows your application to control how numbers are processed.
string

"number"

"string"

defaultResponseOptions

.stringFormat

The "stringFormat" property in "responseOptions" changes how "char", "varchar", "lvarchar", and "variant" string field values are returned.

This property applies to all "getRecords..." actions, except for "getRecordsUsingSql" because SQL controls the format of strings it returns.

string

"json"

"hex"

defaultResponseOptions

.variantFormat

The "variantFormat" property tells the server how to interpret the variant data included in a JSON Action request. For more details, see "variantFormat". string

"json"

"binary"

"string"

"variantObject"

defaultRetentionPeriod

The "defaultRetentionPeriod" property specifies how many retention units will be retained if the "retentionPeriod" property is omitted. It is used in tandem with "defaultRetentionUnit", the retention period describing how many units, and the retention unit describing what kind of unit of measurement. For example, if the "defaultRetentionPeriod" is set to 4, and the "defaultRetentionUnit" is set to "week", the server will purge messages once 4 weeks have passed by default.

integer 1 to 100

defaultRetentionPolicy

The "defaultRetentionPolicy" property specifies the default way in which messages are persisted if the "retentionPolicy" property is omitted. Using this property, you can configure messages to persist indefinitely, be purged according to the retention unit and period, or be immediately purged by default.

string enum

"doNotPersist"

"neverPurge"

"autoPurge"

defaultRetentionUnit

The "defaultRetentionUnit" property specifies the type of retention unit if the "retentionUnit" property is omitted. It is used in tandem with "defaultRetentionUnit", the retention period describing how many units, and the retention unit describing what kind of unit of measurement. For example, if the "defaultRetentionPeriod" is set to 4, and the "defaultRetentionUnit" is set to "week", the server will purge messages once 4 weeks have passed by default.

string enum

"minute"

"hour"

"day"

"week"

"month"

"year"

"forever"

defaultStringFormat

The "defaultStringFormat" property sets the default value of the "stringFormat" property when a JSON Action request does not include it.  string enum

"json"

"hex"

defaultVariantFormat

The "defaultVariantFormat" property sets the default value of the "variantFormat" property when a JSON Action request does not include it. string enum

"json"

"binary"

"string"

"variantObject"

description

The "description" property provides additional information about an object, such as a label or thing. You can use it as internal or external documentation of a label's meaning, purpose, and usage.

Markdown is a good language for formatting description text. You must ensure the text is compatible with a JSON string. For example, you must escape a double quote character using the backslash character:  \".

string 1 to 65,500 bytes

idleConnectionTimeoutSeconds

The "idleConnectionTimeoutSeconds" property specifies the number of seconds a session with no activity will remain open.

A value of 0 keeps a session open indefinitely.

integer 0 to 2147483647

idleCursorTimeoutSeconds

The "idleCursorTimeoutSeconds" property is the number of seconds to keep a cursor open.

  • Each time a cursor retrieves records, the cursor timer restarts.
  • A value of -1 keeps a cursor open indefinitely.
  • A value of 0 immediately closes a cursor after the current operation.
integer 0 to 2147483647

permanentSession

The "permanentSession" property indicates if a session is permanent. For more details, see "permanentSession". Boolean

true

false

serverVersion

The "serverVersion" property indicates which version of the FairCom server the request was made to.

  "result": {
    "sessionStartTimestamp": "2025-08-28T15:44:56",
    "sessionLastAccessedTimestamp": "2025-08-28T18:07:07",
    "defaultRetentionPolicy": "autoPurge",
    "defaultRetentionUnit": "week",
    "defaultRetentionPeriod": 4,
    "serverVersion": "FairCom EDGE Server - V4.2.4.109(Build-250819)"
  },
string The name of the version of the FairCom server to which the request was made.

sessionLastAccessedTimestamp

The "sessionLastAccessedTimestamp" property indicates the date/time when the session was last accessed.

"result": {
  "sessionStartTimestamp": "2025-08-27T20:26:25",
  "sessionLastAccessedTimestamp": "2025-08-27T20:56:25"
  },
timestamp An ISO 8601 timestamp

sessionStartTimestamp

The "sessionStartTimestamp" property indicates the date/time when the session was first initialized.

"result": {
  "sessionStartTimestamp": "2025-08-27T20:26:25",
  "sessionLastAccessedTimestamp": "2025-08-27T20:56:25"
  },
timestamp An ISO 8601 timestamp

transformBufferInitialBytes

The "transformBufferInitialBytes" property specifies the number of bytes the session allocates initially for its transform buffer. Omit this property or set it to 0 when you do not plan on using the "transformCodeName" property to transform the JSON returned from the "getRecords..." actions. If you plan on transforming the JSON, you can set the "transformBufferInitialBytes" property to the number of bytes that you anticipate the server will need to store the results of each transform. If the server needs more memory, it automatically increases the buffer size; thus, this property optimizes to help prevent the server from performing expensive memory allocations.

integer 0 or more bytes

username

The "username" property specifies the account name of a user or application.

It is required by the "createSession" action for authentication.

All API actions are performed in the context of the account identified by "username". For example, all tables created by an account are owned by the account. All queries use tables owned by the account.

In JSON DB API and JSON Hub API, use the "ownerName" property to cause an action to use a different account name than the value of "username". This allows an account to use tables created by another account and to create tables that are owned by another account.

Unlike other property names, such as "databaseName", "username" is all lowercase.

A zero-length username is invalid.

Note See System specifications for requirements of this and all other system properties.

Within the User keystore, different users can have the same key with different values. For example, the "db" and "sam" users can have their own "settings/default/" key and assign their own value to it.

 

 

string

 

 

1 to 64 bytes