Releases: gladly/app-platform-appcfg-cli
v5.3.1
Release Notes
appcfg v5.3.1 04/16/2026
New Features
- added
appcfg add admin-uifor generating the admin UI form configuration from template integration attributes. - added
appcfg validate admin-uifor validating admin UI form configuration against the form schema and required integration attributes. - added
appcfg add ui-formfor generating the configuration need to display action forms to Gladly agents. - added
appcfg test ui-formfor testing action form configuration. - added
appcfg run oauth --refresh-tokento enable testing of OAuthauthorization_codegrant type refresh_token logic
Improvements
appcfg add ui-templatenow specifies template language version 1.2 in the flexible.card file that is created. Flexible card template language version 1.2 supports specifying adataFilterand/ordataOrderattribute for the<List>component for filtering and sorting the list data respectively.
The check-compatible-config and config copy commands have been updated to be more consistent with existing commands.
appcfg apps check-compatible-confighas moved to
appcfg apps config compatibleand now takes the configuration
name as its argument rather than an app identifier.appcfg apps config copynow takes the configuration name as its
positional argument directly, replacing the previous app identifier
argument and--from-configflag.
The previous commands are no longer available. See compatible and
copy in the docs.
Bug Fixes
appcfg validatewas not ensuring that type and field names were unique indata_schema.graphqlandactions_schema.graphql.- Type checking of field arguments and input fields is now properly enforced according to the GraphQL specification. Input types can either be a scalar, an enum or an input object.
appcfg edit ui-templatenow properly exits when theClosebutton is pressed in the app card visualizer UI associated with the edit session.
v4.9.0
appcfg 02/18/2026
New Features
- Added appcfg apps config copy command to copy a configuration from one app version to another. The command checks compatibility and supports force copying with confirmation for incompatible configurations.
- Added appcfg apps check-compatible-config command to verify if an existing configuration is compatible with a new major version of an application.
Bug Fixes
- Fixed external data caching issue in data pull operations.
v4.8.0
New Features
-
JWT Generation: Added
genJwtandmustGenJwttemplate functions for generating JSON Web Tokens with support for RSA, ECDSA, and HMAC signing algorithms. View details withappcfg platform template-functions. -
OAuth Improvements: OAuth access_token templates now have access to
.oauth.redirect_urivia template data, providing more context during token generation. -
Optional Content Type: The
--content-typeflag is now optional when--http-methodisPATCH,POST, orPUTforappcfg add {action | data-pull | oauth}commands. These HTTP methods no longer require a request body.
Bug Fixes
-
GraphQL Schema Validation: Fixed backward compatibility checking for
actions_schema.graphqlfiles. Adding new nullable inputs to existing fields is now correctly recognized as backward compatible.- Example:
lookupOrdersByEmail(emailAddress: String!)→lookupOrdersByEmail(emailAddress: String!, maxOrders: Int)
- Example:
-
OAuth URL Template Data: The
.oauth.request.urltemplate data value for OAuthrequest_url.gtplandrequest_body.gtpltemplates now provides the absolute URL of the redirect request instead of just the relative path.
v4.5.1
Gladly App Platform CLI
New Features
- Added
appcfg ai contextcommand to fetch and display the latest app platform AI context document for AI agents - Added
appcfg ai commandscommand to show available commands and their descriptions for AI agents - Added
appcfg updatecommand to self-update to the latest version from GitHub releases - Added
appcfg apps config displayto print the structure of app configurations and secrets files with null values - Added
appcfg edit ui-template {template name} -d {data file}to allow editing cards in the visualizer using data specified in the_edit_folder
Improvements
appcfg run data-pullandappcfg run data-graphqlnow share one_run_folder under thedatafolder for configurationappcfg run actionandappcfg run action-graphqlnow share one_run_folder under theactionsfolder for configuration- All
appcfg run *commands now have access to a top level_run_folder for common configuration across all run commands - Configuration data and dataset folders are now directly located in the
_test_and_run_folders instead of nested in an additionaldatafolder appcfg add ui-templatenow creates the_edit_folder instead of the_test_folder when adding a new card- Added visibility (public/private) column to
appcfg apps list
Bug Fixes
- Fixed
appcfg add oauth passwordspecifying the wronggrant_typein theconfig.jsonfile - Fixed
appcfg add oauth passwordandappcfg add oauth client_credentialscreating unnecessaryrequest_body.gtplfiles for HTTP methods that do not require a body - Fixed
appcfg run action-graphqlgenerating incorrect query and mutation operations for fields with scalar and enum types
v4.2.1
Gladly App Platform CLI
This release of app config adds several improvements and bug fixes, focusing on providing more insight and transparency into configurations and improving command accuracy. Among them are a new command to find outdated configurations, a new flag to strip fields from the operation result of appcfg run data-graphql, and a new column to appcfg apps config list to display the configuration. Check below for the full list of improvements and fixes.
CLI Improvements
- View Current Configuration Values: The
appcfg apps config listcommand now provides more comprehensive information by displaying the current values set on a configuration. - Improved
appcfg apps install --helpOutput: Deprecated commands have been removed from theappcfg apps install --helpoutput for better clarity. - Local Time Display for Dates: The
appcfg apps listandappcfg apps config listcommands now display dates for applications and configurations in your local time.
New Commands and Flags
-
Streamlined Data-GraphQL Output: The
appcfg run data-graphqlcommand now includes a--stripflag. This will remove the data field and the operation name field from the GraphQL response. -
Identify Outdated Configurations: We've added a new command,
appcfg apps config outdated, to help you easily identify configurations that are running on outdated application versions and are eligible for an upgrade. Note: You can only upgrade a configuration within the same major version.
Bug Fixes
- Resolved Command Completion Issues: Completions no longer incorrectly appear for
appcfg apps listandappcfg apps config listcommands, which do not take arguments. - Flexible
appcfg test data-pullEmpty File Handling: Theappcfg test data-pullcommand now correctly allows for emptyexpected_request_url.txtandexpected_request_body.*test files. This aligns withrequest_url.gtplandrequest_body.gtpltemplates which can generate empty results when no requests should be made. - Correct Data Consolidation in
appcfg run data-graphql: This release fixes an issue whereappcfg run data-graphqlwas not correctly consolidating data. Previously, when multiple data pulls for the same data type returned identical data, the GraphQL result would include the copies. - Accurate Data Retrieval for Dependent Data Types: An issue causing
appcfg run data-pullandappcfg run data-graphqlto sometimes return incorrect data for applications with dependent data types has been resolved. - Correct Sorting in
appcfg run data-graphql: Data returned byappcfg run data-graphqlis now correctly sorted in descending order by the "external updated at" timestamp.
v4.1.7
Gladly App Platform CLI
This release of appcfg focuses on bug fixes and stability improvements, addressing issues with command execution, error reporting, and help text accuracy.
CLI Fixes
- Updated help text references to
appcfg apps config ...commands to use the newer syntax - Fixed panics in the
appcfg apps oauthcommand due to missing env variables, which are optional for this command - Fixed error in the
appcfg run data-graphqlandappcfg run data-pullcommands when outputting to a file. - Fixed typo in error message when app configuration root does not exist.
- Errors that occur in
external_id.gtpl,external_updated_at.gtplandexternal_parent_id.gtpldata pull templates are now reported when executing tests and runningdata-graphqlqueries - Updated
appcfg add ui-templatelanguageVersionfrom 1.0 to 1.1
v4.1.1
Gladly App Platform Enhancements and Changes
This release of appcfg introduces a more resilient CLI that captures diagnostics for debugging unexpected panics. It also simplifies the OAuth authorization flow for apps and enhances log recording defaults.
Breaking Changes
- OAuth flow
Theappcfg apps oauthcommand now launches your default browser to initiate the OAuth authorization_code flow. The-t/--tokenand-u/--userflags no longer apply to this command. - Simplified detailed logging
Runningappcfg apps logs record-detailedwithout any flags now starts detailed logging by default for a 12-hour window; use--stopto end recording. (Previously you needed to supply--begin/--end, and sessions were limited to 6 hours.)
New Commands and Flags
- Add UI templates
Theappcfg add ui-template {template name}command scaffolds a full UI-template folder—config JSON, template, and test fixtures—for your GraphQL schema and type.
CLI Improvements
- Diagnostics on Panic: If
appcfgcrashes unexpectedly, it now generates an encrypted diagnostics file with helpful debugging context, including the error trace, CLI version, command path, OS, and architecture. This file can be shared with Gladly support. - Completion-env generator
appcfg apps completion-envhelps you export the right environment variables for shell autocompletion. - Extended logging window
Detailed-logging sessions now default to 12 hours (up from 6 hours).
CLI Fixes
- Tweaked autocompletion to prevent invalid suggestions.
- Fixed line-wrapping inconsistencies in help text.
-t/--tokenand-u/--userflags now only apply to commands that actually require credentials.
v3.0.0
Gladly App Platform Enhancements and Changes
We are releasing version 3.0.0 of the appcfg tool. We added logging commands for errors to give developers visibility into the applications they build for the Gladly App Platform and permit developers to efficiently debug their applications should the need arise.
We also moved configuration related commands to appcfg apps config, which introduces a breaking change in this version, listed below.
Breaking Changes
- The commands for managing configurations (
appcfg apps *-config) have been consolidated under a newconfigsubcommand.appcfg apps config create– Create a configuration for a given application.appcfg apps config update– Update an existing configuration.appcfg apps config delete– Remove a configuration entirely.appcfg apps config list- Lists all existing configurations.- Includes a
--identifier(or-i) flag to filter configurations belonging to a specific application.
- Includes a
New Commands and Flags
The logs command will have subcommands list and detail and record-detailed which will be described below with their flags. All the logs returned by these commands will be in JSON format. Remember to specify the --help flag with the command or check the docs for a more detailed description of their usage.
appcfg apps logs list- The
listsubcommand will list the top level GraphQL error logs from all your installed apps with a max limit of 100 logs. - The
--beginand--endflags which will search logs based on theirISO8601timestamp. - The
--identifierflag will filter logs based on their app identifier (author/appName/majorVersion.minorVersion.patch).
- The
appcfg apps logs detail- The
detailsubcommand will retrieve detailed logs about one of the log’sidprovided from thelistsubcommand. Detailed logs include the parent GraphQL error log and information about all the API calls your app makes to your system. - The
--exclude-graphqlflag will exclude the parent GraphQL error log from being included in the detailed logs.
- The
appcfg apps logs record-detailed- Records detailed logs for the provided configuration. Tab completion is provided to supply a list of configurations for which you can record.
- One of
--beginand--endflags are required to begin or end recording on the configuration. - Note: You must run
appcfg apps logs record-detailedto start recording detailed logs.
CLI Improvements
- Revised the
appcfg apps listcommand.- The
apps listcommand now shows only your applications, rather than both apps and configs. - The
-appsand-configsflags have been removed to simplify usage. - The
appcfg apps oauthcommand now accepts the configuration name as a valid argument and supports autocompletion.
- The
CLI Fixes
- Fixes some autocompletes that were running despite there being no valid autocomplete options.
- Fixes line wrapping formatting issues for
--helpflags on commands.
v2.1.0
App platform enhancements and changes
- Introduced validation of integration attributes against templates. All referenced values must be provided when creating, updating, and upgrading configurations. This ensures more reliable configuration changes and helps identify missing values earlier in the process.
CLI Improvements
-
Added new
appcfg apps delete-configandappcfg apps uninstallcommands.delete-config: Allows deletion of configurations associated with your applications. It is recommended to deactivate the configuration first and monitor your environment to ensure no unexpected issues arise before finally deleting it.uninstall: Enables you to remove applications from your environment entirely. Ensure that all configurations related to that application are removed before uninstalling the app.
-
The
appscommands now require using the application's identifier, rather than allowing both identifier and name, to improve clarity and consistency regarding which forms of identification are valid inputs. -
The
apps installcommand now uses--filepath(or-f) to specify the application ZIP file, replacing all references to--file. This change aligns the install command with the build command, making it clearer what file needs to be submitted. -
Autocompletion for the
apps upgradecommand now only suggests applications that have at least one configuration and have an eligible application version to upgrade to. This makes it easier to find and upgrade only those apps that can actually be upgraded. -
The
apps installcommand now supports absolute paths to ZIP files, providing greater flexibility in specifying the location of the application files. In addition, when building a ZIP file, a missing.zipextension will now be appended automatically, and creating ZIP files directly in the root directory is prevented to maintain a cleaner file structure. -
"App Name" references have been replaced with "App Identifier" throughout the output and usage text for the
appscommands, ensuring consistent and clear terminology. Theappsusage text has also been updated to reference the new commands and reflect the current capabilities.
CLI Fixes
-
The
GLADLY_APP_CFG_TOKENvalue is now redacted in the output of--helpforappscommands, preventing sensitive credentials from appearing in help messages. -
When adding a signing header via
appcfg add signing-header, files are now correctly placed in theauthentication/request_signingdirectory instead ofauthentication/request_signing/headers, ensuring files are generated in the intended location.
v1.1.0
App platform enhancements and changes
- Added a
rawResponsefield toconfig.json. When this is set, no processing will be done to the response from the external system for this request, it is instead passed as-is to theresponse_transformation.gtpl. In this case, therawDatatemplate attribute will be raw byte array from the response. This provides additional flexibility for handling the diverse responses an API might return. However, the developer is now responsible for managing all the possible states, HTTP codes, and response parsing for this request. - Added the
fromXmlandmustFromXmltemplate functions; this will allow for processing "raw" XML responses in the "response_transformation.gtpl" template and provide parity when not processing raw response data.
CLI Improvements
- Added a new subcommand,
apps, to be used for managing your App Platform applications and configurations. See the--helpoption for exact usage.appcfg apps install- Allows you to install your App Platform application zip files into your Gladly environment
appcfg apps create-config- Allows you to create configurations for your applications, which will serve and execute app platform requests, pulling data and performing actions in an external system
appcfg apps update-config- Allows you to update a configuration with a new name or any other configuration details, such as changing API keys
appcfg apps list- Shows information on what applications and configurations are in your Gladly environment
appcfg apps info- Shows detailed information about an application, including associated configurations and their settings
appcfg apps upgrade- Allows you to upgrade configurations to newer versions to incorporate new changes or fixes of an updated application
appcfg apps oauth- Allows you to authorize your application that uses the OAuth authorization_code grant
- Added new environment variables and flags for authenticating into Gladly, which is necessary for the
appsset of commands--gladly, -g, GLADLY_APP_CFG_HOST: The Gladly environment for which to run against--user, -u, GLADLY_APP_CFG_USER: The user email of the created API token--token, -t, GLADLY_APP_CFG_TOKEN: The API token associated with the user email
CLI Fixes
appcfg add auth-headerwill no longer generate ainputs.jsontest file, since auth headers do not have access to inputs- For actions, when the HTTP status code is greater than 300 and the response Content-Type is not one of the supported content types, continue instead of failing. This is to account for APIs that do not set the Content-Type correctly, even when the response is JSON. Developers can parse this value in the template to process the response, using something like:
{{$responseData := fromJson .response.body }}