Create custom applications

To enable your product to securely access the Kiteworks API, you need to create a “custom application” inside their developer portal that represents your product. You configure things like its name, redirect URLs, and how it will authenticate (OAuth or JWT). This lets the service identify your app, control access, apply rate limits, and revoke or audit usage if needed.

You can create multiple custom applications to automate specific business workflows, such as on-boarding new Kiteworks users to access relevant folders automatically. The Custom Application page in the Kiteworks PDN Admin lists all custom applications that exist on the system.

To create a custom application:

  1. Go to Application Setup > Apps and Plugins > API, and then click Create Custom Application.
  2. On the Create Custom Application page, enter the following information:

    • Name: Enter a name for the custom application.
    • Description: Enter a description of the application.
    • Flows: Select the authorization flow that your application will use to obtain an access token.

      • Authorization code: The Standard OAuth 2.0 authorization-​code grant type consists of authorization,​ consent,​ and code redemption process.
      • JWT: This authentication flow allows for impersonation of Kiteworks users. It is intended to be used only by clients operating in secure environments. Using it for publicly available clients should be considered a security risk. When this option is selected, an additional JWT configuration section is displayed. You need to enter the required details to finish the setup for the JWT token. For more information see JWT Authorization.
    • Enable refresh token: If enabled, when an access token expires,​ a new access token can be obtained using a refresh token without re-​initiating the authorization process.​
    • Redirect URI: Enter a redirect URI for securely passing authorization requests. The Redirect URI can contain custom schemes like a server URL (such as https://) or an app URL (such as myapp://). For example, myapp://127.0.0.1/path. Or it could contain %%HOST%% which will resolve the hostname of the current Kiteworks instance. For example, https://%%HOST%%/oauth_callback.php.
    • Access token lifetime: Set the duration for a token lifetime.
    • Refresh token lifetime: If "Enable Refresh Token" is enabled, set the duration that an access token can be refreshed.
  3. Click the APIs you plan to use for your custom application.

    Scopes are defined limits to client applications for accessing data. By selecting the appropriate scopes for the application, you allow or restrict certain tasks from being performed by a user or on behalf of a Kiteworks user. Each custom application that is created can have server-side authorization scopes. You can define on the server which endpoints the custom application is allowed to use and how they can be used.

  4. Click Add Application, and then copy the Client Application ID, Client Secret Key, and the Signature Secret to a secure location for safe-keeping.

    Caution: The Client Application ID and Client Secret Key cannot be changed and should be protected since these credentials could be used to access Kiteworks systems, potentially exposing the systems to loss or theft of critical information. You are responsible for keeping these credentials safe and sharing them with only trusted individuals.

  5. Confirm that you copied the Client Application ID, Client Secret Key, and the Signature Secret.
  6. Click the custom application you just created and customize additional settings as needed.

    • Settings: You can make changes to the initial settings you already configured.
    • Scopes: You can add or remove API scopes.
    • Security:

      • Remote wipe enabled: Enable remote wipe functionality for the application.
      • Pin enabled: Specify whether a PIN should be enabled for the application. This is recommended for mobile applications.
      • White listed apps: List any third-​party mobile applications that can be used to open files via the "Open-​In" menu.​ Use comma-​separated ID search strings (for example, com.​domainname.​appname,​ *).
  7. Click Save.

  8. To test the custom application, go to https://<hostname of your Kiteworks deployment>/rest/index.html.