Each returned item in the list contains all code package properties except the "code" property. This action helps the user find the current code package. If you want to retrieve the source code, use the "describeCodePackages" action.
Request examples
Typical
{
"api": "admin",
"action": "listCodePackages",
"params": {
"databaseName": "faircom",
"ownerName": "admin",
"partialName": "convert",
"codeTypeFilter": [ "getRecordsTransform", "expression" ],
"statusFilter": [
"developing",
"deleted",
"inactive",
"deprecated",
"testing",
"active"
],
"includeDeactivatedCode": true,
"commentFilter": "words, phrases, NEAR, full-text search",
"descriptionFilter": "words, phrases, NEAR, full-text search",
"metadataFilter": "words, phrases, NEAR, full-text search",
"skipRecords": 100,
"maxRecords": 25
},
"authToken": "replaceWithAuthTokenFromCreateSession"
}list all code packages
{
"api": "admin",
"action": "listCodePackages",
"params": {},
"authToken": "replaceWithAuthTokenFromCreateSession"
}list some code packages
{
"api": "admin",
"action": "listCodePackages",
"params": {
"codeTypeFilter": ["getRecordsTransform"],
"statusFilter": ["developing"],
"includeDeactivatedCode": true
},
"authToken": "replaceWithAuthTokenFromCreateSession"
}
Response examples
Typical
{
"result": {
"data": []
},
"debugInfo": {
"request": {
"api": "admin",
"action": "listCodePackages",
"params": {
"databaseName": "faircom",
"ownerName": "admin",
"partialName": "convert",
"codeTypeFilter": [
"getRecordsTransform",
"expression"
],
"statusFilter": [
"developing",
"deleted",
"inactive",
"deprecated",
"testing",
"active"
],
"includeDeactivatedCode": true,
"commentFilter": "words, phrases, NEAR, full-text search",
"descriptionFilter": "words, phrases, NEAR, full-text search",
"metadataFilter": "words, phrases, NEAR, full-text search",
"skipRecords": 100,
"maxRecords": 25
},
"debug": "max",
"authToken": "replaceWithAuthTokenFromCreateSession"
}
},
"errorCode": 0,
"errorMessage": "",
"authToken": "replaceWithAuthTokenFromCreateSession"
}List all code packages
{
"result": {
"data": [
{
"codeId": 6,
"databaseName": "faircom",
"ownerName": "admin",
"codeName": "convertAndCategorizeTemperature",
"codeVersion": 1,
"clonedCodeId": 4,
"codeStatus": "deleted",
"codeLanguage": "javascript",
"codeType": "getRecordsTransform",
"description": "",
"metadata": {
"keyword": "temperature",
"favorites": true
},
"createdBy": "ADMIN",
"createdOn": "2024-10-15T19:58:42.471",
"updatedBy": "ADMIN",
"updatedOn": "2024-10-15T19:58:42.471",
"comment": "",
"codeFormat": "utf8"
},
{
"codeId": 4,
"databaseName": "faircom",
"ownerName": "admin",
"codeName": "convertTemperature",
"codeVersion": 2,
"clonedCodeId": 0,
"codeStatus": "deleted",
"codeLanguage": "javascript",
"codeType": "getRecordsTransform",
"description": "",
"metadata": {
"keyword": "temperature",
"favorites": true
},
"createdBy": "ADMIN",
"createdOn": "2024-10-15T19:29:34.216",
"updatedBy": "ADMIN",
"updatedOn": "2024-10-15T19:56:49.879",
"comment": "",
"codeFormat": "utf8"
},
{
"codeId": 5,
"databaseName": "faircom",
"ownerName": "admin",
"codeName": "convertTemperature V2",
"codeVersion": 1,
"clonedCodeId": 4,
"codeStatus": "developing",
"codeLanguage": "javascript",
"codeType": "getRecordsTransform",
"description": "",
"metadata": {},
"createdBy": "ADMIN",
"createdOn": "2024-10-15T19:58:19.699",
"updatedBy": "ADMIN",
"updatedOn": "2024-10-15T19:58:19.699",
"comment": "",
"codeFormat": "utf8"
},
{
"codeId": 3,
"databaseName": "faircom",
"ownerName": "admin",
"codeName": "convertTemperature new",
"codeVersion": 2,
"clonedCodeId": 0,
"codeStatus": "active",
"codeLanguage": "javascript",
"codeType": "getRecordsTransform",
"description": "optional new description",
"metadata": {},
"createdBy": "ADMIN",
"createdOn": "2024-10-15T19:26:35.218",
"updatedBy": "ADMIN",
"updatedOn": "2024-10-15T19:27:28.192",
"comment": "optional change comment",
"codeFormat": "utf8"
}
]
},
"debugInfo": {
"request": {
"api": "admin",
"action": "listCodePackages",
"params": {},
"debug": "max",
"authToken": "replaceWithAuthTokenFromCreateSession"
}
},
"errorCode": 0,
"errorMessage": "",
"authToken": "replaceWithAuthTokenFromCreateSession"
}List some code packages
{
"result": {
"data": [
{
"codeId": 5,
"databaseName": "faircom",
"ownerName": "admin",
"codeName": "convertTemperature V2",
"codeVersion": 1,
"clonedCodeId": 4,
"codeStatus": "developing",
"codeLanguage": "javascript",
"codeType": "getRecordsTransform",
"description": "optional new description",
"metadata": {},
"createdBy": "ADMIN",
"createdOn": "2024-10-15T19:58:19.699",
"updatedBy": "ADMIN",
"updatedOn": "2024-10-15T19:58:19.699",
"comment": "optional change comment",
"codeFormat": "utf8"
}
]
},
"debugInfo": {
"request": {
"api": "admin",
"action": "listCodePackages",
"params": {
"codeTypeFilter": [
"getRecordsTransform"
],
"statusFilter": [
"developing"
],
"includeDeactivatedCode": true
},
"debug": "max",
"authToken": "replaceWithAuthTokenFromCreateSession"
}
},
"errorCode": 0,
"errorMessage": "",
"authToken": "replaceWithAuthTokenFromCreateSession"
}
Properties
Request properties ("params")
| Property | Description | Default | Type | Limits (inclusive) |
|---|---|---|---|---|
codeTypeFilter |
The "codeTypeFilter" property filters results by the value in the "codeType" property. If the array is empty, null, or omitted, it matches all code types; otherwise, it returns code packages with a code type that matches one of the array's values. |
Optional with default of ""
|
array |
|
commentFilter |
The "commentFilter" property filters the results by the value of the "comment" property. It defaults to null. If this value is not null or omitted, the results only include code packages with comments that match the full-text search specified in the "commentFilter" property. For example, to constrain results to include the three words FairCom Edge rocks anywhere in a comment, use "commentFilter": "FairCom Edge rocks". |
Optional with default of null
|
string | 1 to 65,500 bytes |
databaseName |
The You specify this property when you want to use a different database instead of the default. Your session's account must have the appropriate privileges to access the code package. This property is useful because objects, such as tables and code packages, can have the same name in multiple databases. This feature allows you to create multiple environments in the same server and reuse the same JSON actions in each environment. For example, you can create It is an error to set If no default database is specified during |
Defaults to the session's "defaultDatabaseName" property |
string | 1 to 64 bytes |
descriptionFilter |
The
|
Optional with default of null
|
string | 1 to 65,500 bytes |
includeDeactivatedCode |
The
|
Optional with default of null
|
Boolean |
|
maxRecords |
The "maxRecords" property specifies the maximum number of records to be returned. It is used with "skipRecords" to paginate the results. If the value is not null or omitted, the server returns the maximum number of results specified by "maxRecords". |
Optional with default of 20 |
integer |
-1 to 65535
|
metadataFilter |
The "metadataFilter" property filters results by the value of the "metadata" property. If the value is not null or omitted, the results only include code packages with metadata that match the full-text search specified in the "metadataFilter" property. A code package's "metadata" property contains a JSON object with user-defined key-value pairs. For example, to constrain results to include the key value pair "myProperty": "myValue" in the metadata, use the search string, "metadataFilter": "'myProperty' NEAR/0 'myValue'". Notice that NEAR/0 specifies no intervening words or phrases. If you want to allow a maximum of one intervening word, use NEAR/1. You can specify a maximum of any number of intervening words. |
Optional with default of null
|
string | 1 to 65,500 bytes |
ownerName |
The You specify this property when you want to use a different account instead of the default. Your session's account must have the appropriate privileges to access the code package. This property is useful because objects, such as tables and code packages, can have the same name in the same database as long as different accounts own each object. This feature allows you to create duplicate objects for different users on the same server and reuse the same JSON actions on those objects. For example, an administrator can copy objects from a production environment to her account so she can troubleshoot an issue using the same JSON actions, JavaScript, and SQL code. It is an error to set If no default owner is specified during |
Optional with default of the session's "defaultOwnerName" property |
string | 1 to 64 bytes |
partialName |
The |
Optional with default of ""
|
string | 1 to 64 bytes |
skipRecords |
The "skipRecords" property specifies the number of records to skip over when paginating the results. It is used with "maxRecords" to paginate the results. If the value is not null or omitted, the server returns results from the beginning. If it is > 0, the server skips over the specified number of records and returns results starting from that point up until it returns the maximum number of results as defined by "maxRecords". |
Optional with default of 0
|
integer |
0 to 9223372036854775807
|
statusFilter |
The
When using the tag actions, this property finds tags based on their status. You can include zero or more status values. The
|
Optional with default of []
|
array |
When using tag actions, |
Response properties ("result")
| Property | Description | Type | Limits (inclusive) |
|---|---|---|---|
data |
The |
array of objects | The action determines its contents. |
|
data .clonedCodeId |
The "result": {
"data": [
{
"codeId": 1,
"databaseName": "faircom",
"ownerName": "admin",
"codeName": "convertTemperature",
"codeVersion": 1,
"clonedCodeId": 0
]
}, |
integer | The cloned code ID. |
|
data .codeFormat |
The "codeFormat" property specifies the encoding of code in the code property. You must encode your code to embed it in a JSON string. "codeFormat" currently only supports the "utf8" encoding, requiring you to use JSON rules to escape problem characters in your code with the \ backslash character, such as \n. |
string | "utf8" |
|
data .codeId |
The "codeId" property specifies the unique numeric identifier of a code package. |
integer | No limit |
|
data .codeLanguage |
The "codeLanguage" property specifies the programming language of the code contained in the "code" property . Any string value is accepted. Currently, "javascript" and "json" are the only types of code the FairCom server can use. |
string |
|
|
data .codeName |
The It is an error to set The package's unique identifier is the combination of |
string | 1 to 64 bytes |
|
data .codeStatus |
The "codeStatus" property specifies a new status for the code. When you create a code package, it defaults to "developing". When you alter a code package, it defaults to the current state. You may set it to one of the following states: "developing", "deleted", "inactive", "deprecated", "testing", or "active". You can use "alterCodePackage" to transition from any state to any other. See "Use "codeStatus" to make a package runnable". |
string |
|
|
data .codeType |
The
|
string |
|
|
data .codeVersion |
The "result": {
"data": [
{
"codeId": 1,
"databaseName": "faircom",
"ownerName": "admin",
"codeName": "convertTemperature",
"codeVersion": 1,
"clonedCodeId": 0
]
}, |
integer | The version of the specified code package. |
|
data .comment |
The "comment" property explains the code change. |
string | 1 to 65,535 bytes |
|
data .createdBy |
The "result": {
"data": [
{
"createdBy": "ADMIN",
"createdOn": "2025-08-25T21:48:38.109",
"updatedBy": "ADMIN",
"updatedOn": "2025-08-25T21:48:38.109"
},
] |
string | The name of the account used to create the code package. |
|
data .createdOn |
The "result": {
"data": [
{
"createdBy": "ADMIN",
"createdOn": "2025-08-25T21:48:38.109",
"updatedBy": "ADMIN",
"updatedOn": "2025-08-25T21:48:38.109"
},
] |
timestamp | The date and time when the code package was created. |
|
data .databaseName |
The
|
string | 1 to 64 bytes |
|
data .description |
The 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:
In the Thing API, It defaults to
|
string | 1 to 65,500 bytes |
|
data .metadata |
The |
JSON | 0 to 65,500 bytes |
|
data .ownerName |
The "ownerName" property identifies the user who owns an object (see Object owner). |
string | 0 to 64 bytes |
|
data .updatedBy |
The "result": {
"data": [
{
"createdBy": "ADMIN",
"createdOn": "2025-08-25T21:48:38.109",
"updatedBy": "ADMIN",
"updatedOn": "2025-08-25T21:48:38.109"
},
] |
string | The name of the account last used to update the code package. |
|
data .updatedOn |
The "result": {
"data": [
{
"createdBy": "ADMIN",
"createdOn": "2025-08-25T21:48:38.109",
"updatedBy": "ADMIN",
"updatedOn": "2025-08-25T21:48:38.109"
},
] |
timestamp | The date and time the code package was last updated. |