LogoLogo
Studio
4.5
4.5
  • Harper Docs
  • Getting Started
  • Developers
    • Applications
      • Caching
      • Defining Schemas
      • Defining Roles
      • Debugging Applications
      • Define Fastify Routes
      • Web Applications
      • Example Projects
    • Components
      • Managing
      • Reference
      • Built-In Components
    • REST
    • Operations API
      • Quick Start Examples
      • Databases and Tables
      • NoSQL Operations
      • Bulk Operations
      • Users and Roles
      • Clustering
        • Clustering with NATS
      • Custom Functions
      • Components
      • Registration
      • Jobs
      • Logs
      • Utilities
      • Token Authentication
      • SQL Operations
      • Advanced JSON SQL Examples
    • Real-Time
    • Replication/Clustering
      • Sharding
      • Legacy NATS Clustering
        • Requirements and Definitions
        • Creating A Cluster User
        • Naming A Node
        • Enabling Clustering
        • Establishing Routes
        • Subscription Overview
        • Managing Subscriptions
        • Things Worth Knowing
        • Certificate Management
    • Security
      • JWT Authentication
      • Basic Authentication
      • mTLS Authentication
      • Configuration
      • Users & Roles
      • Certificate Management
    • SQL Guide
      • SQL Features Matrix
      • SQL Date Functions
      • SQL Reserved Word
      • SQL Functions
      • SQL JSON Search
      • SQL Geospatial Functions
    • Miscellaneous
      • Google Data Studio
      • SDKs
      • Query Optimization
  • Administration
    • Best Practices and Recommendations
    • Logging
      • Standard Logging
      • Audit Logging
      • Transaction Logging
    • Clone Node
    • Compact
    • Jobs
    • Harper Studio
      • Create an Account
      • Log In & Password Reset
      • Organizations
      • Instances
      • Query Instance Data
      • Manage Databases / Browse Data
      • Manage Clustering
      • Manage Instance Users
      • Manage Instance Roles
      • Manage Applications
      • Instance Metrics
      • Instance Configuration
      • Enable Mixed Content
  • Deployments
    • Configuration File
    • Harper CLI
    • Install Harper
      • On Linux
    • Upgrade a Harper Instance
    • Harper Cloud
      • IOPS Impact on Performance
      • Instance Size Hardware Specs
      • Alarms
      • Verizon 5G Wavelength
  • Technical Details
    • Reference
      • Analytics
      • Architecture
      • Content Types
      • Data Types
      • Dynamic Schema
      • GraphQL
      • Harper Headers
      • Harper Limits
      • Globals
      • Resource Class
      • Transactions
      • Storage Algorithm
      • Blob
    • Release Notes
      • Harper Tucker (Version 4)
        • 4.5.8
        • 4.5.7
        • 4.5.6
        • 4.5.5
        • 4.5.4
        • 4.5.3
        • 4.5.2
        • 4.5.1
        • 4.5.0
        • 4.4.24
        • 4.4.23
        • 4.4.22
        • 4.4.21
        • 4.4.20
        • 4.4.19
        • 4.4.18
        • 4.4.17
        • 4.4.16
        • 4.4.15
        • 4.4.14
        • 4.4.13
        • 4.4.12
        • 4.4.11
        • 4.4.10
        • 4.4.9
        • 4.4.8
        • 4.4.7
        • 4.4.6
        • 4.4.5
        • 4.4.4
        • 4.4.3
        • 4.4.2
        • 4.4.1
        • 4.4.0
        • 4.3.38
        • 4.3.37
        • 4.3.36
        • 4.3.35
        • 4.3.34
        • 4.3.33
        • 4.3.32
        • 4.3.31
        • 4.3.30
        • 4.3.29
        • 4.3.28
        • 4.3.27
        • 4.3.26
        • 4.3.25
        • 4.3.24
        • 4.3.23
        • 4.3.22
        • 4.3.21
        • 4.3.20
        • 4.3.19
        • 4.3.18
        • 4.3.17
        • 4.3.16
        • 4.3.15
        • 4.3.14
        • 4.3.13
        • 4.3.12
        • 4.3.11
        • 4.3.10
        • 4.3.9
        • 4.3.8
        • 4.3.7
        • 4.3.6
        • 4.3.5
        • 4.3.4
        • 4.3.3
        • 4.3.2
        • 4.3.1
        • 4.3.0
        • 4.2.8
        • 4.2.7
        • 4.2.6
        • 4.2.5
        • 4.2.4
        • 4.2.3
        • 4.2.2
        • 4.2.1
        • 4.2.0
        • 4.1.2
        • 4.1.1
        • 4.1.0
        • 4.0.7
        • 4.0.6
        • 4.0.5
        • 4.0.4
        • 4.0.3
        • 4.0.2
        • 4.0.1
        • 4.0.0
        • Tucker
      • HarperDB Monkey (Version 3)
        • 3.3.0
        • 3.2.1
        • 3.2.0
        • 3.1.5
        • 3.1.4
        • 3.1.3
        • 3.1.2
        • 3.1.1
        • 3.1.0
        • 3.0.0
      • HarperDB Penny (Version 2)
        • 2.3.1
        • 2.3.0
        • 2.2.3
        • 2.2.2
        • 2.2.0
        • 2.1.1
      • HarperDB Alby (Version 1)
        • 1.3.1
        • 1.3.0
        • 1.2.0
        • 1.1.0
  • More Help
    • Support
    • Slack
    • Contact Us
Powered by GitBook
On this page
  • Manage Applications
  • Things to Keep in Mind
  • Accessing Your Application Endpoints
  • Creating a New Application
  • Editing an Application
  1. Administration
  2. Harper Studio

Manage Applications

PreviousManage Instance RolesNextInstance Metrics

Last updated 1 month ago

are enabled by default and can be configured further through the Harper Studio. It is recommended to read through the documentation first to gain a strong understanding of Harper Applications behavior.

All Applications configuration and development is handled through the applications page of the Harper Studio, accessed with the following instructions:

  1. Navigate to the Harper Studio Organizations page.

  2. Click the appropriate organization that the instance belongs to.

  3. Select your desired instance.

  4. Click applications in the instance control bar.

Note, the applications page will only be available to super users.

Manage Applications

The Applications editor is not required for development and deployment, though it is a useful tool to maintain and manage your Harper Applications. The editor provides the ability to create new applications or import/deploy remote application packages.

The left bar is the applications file navigator, allowing you to select files to edit and add/remove files and folders. By default, this view is empty because there are no existing applications. To get started, either create a new application or import/deploy a remote application.

The right side of the screen is the file editor. Here you can make edit individual files of your application directly in the Harper Studio.

Things to Keep in Mind

To learn more about developing Harper Applications, make sure to read through the documentation.

When working with Applications in the Harper Studio, by default the editor will restart the Harper Applications server every time a file is saved. Note, this behavior can be turned off by toggling the auto toggle at the top right of the applications page. If you are constantly editing your application, it may result in errors causing the application not to run. These errors will not be visible on the application page, however they will be available in the Harper logs, which can be found on the .

The Applications editor stores unsaved changes in cache. This means that occasionally your editor will show a discrepancy from the code that is stored and running on your Harper instance. You can identify if the code in your Studio differs if the "save" and "revert" buttons are active. To revert the cached version in your editor to the version of the file stored on your Harper instance click the "revert" button.

Accessing Your Application Endpoints

Below is a breakdown of how to access each type of endpoint. In these examples, we will use a locally hosted instance with securePort set to 9926: https://localhost:9926.

Creating a New Application

  1. From the application page, click the "+ app" button at the top right.

  2. Click "+ Create A New Application Using The Default Template".

  3. Enter a name for your project, note project names must contain only alphanumeric characters, dashes and underscores.

  4. Click OK.

  5. Your project will be available in the applications file navigator on the left. Click a file to select a file to edit.

Editing an Application

  1. From the applications page, click the file you would like to edit from the file navigator on the left.

  2. Edit the file with any changes you'd like.

  3. Click "save" at the top right. Note, as mentioned above, when you save a file, the Harper Applications server will be restarted immediately.

Accessing your application endpoints varies with which type of endpoint you're creating. All endpoints, regardless of type, will be accessed via the . The default port is 9926, but you can verify what your instances is set to by navigating to the and examining the read only JSON version of your instance's config file looking specifically for either the http: port: 9926 or http: securePort: 9926 configs. If port is set, you will access your endpoints via http and if securePort is set, you will access your endpoints via https.

Standard REST Endpoints Standard REST endpoints are defined via the @export directive to tables in your schema definition. You can read more about these in the . Here, if we are looking to access a record with ID 1 from table Dog on our instance, , we could send a GET (or since this is a GET, we could post the URL in our browser) to https://localhost:9926/Dog/1.

Augmented REST Endpoints Harper Applications enable you to write for your resources. Accessing these endpoints is identical to accessing the standard REST endpoints above, though you may have defined custom behavior in each function. Taking the example from the , if we are looking to access the DogWithHumanAge example, we could send the GET to https://localhost:9926/DogWithHumanAge/1.

Fastify Routes If you need more functionality than the REST applications can provide, you can define your own custom endpoints using . The paths to these routes are defined via the application config.yaml file. You can read more about how you can customize the configuration options in the . By default, routes are accessed via the following pattern: [Instance URL]:[HTTP Port]/[Project Name]/[Route URL]. Using the example from the , where we've named our project application-template, we would access the getAll route at https://localhost/application-template/getAll.

Harper Applications
Applications
Applications
status page
instance config page
per the REST documentation
Define Fastify Routes documentation
Harper Application Template
Adding an Endpoint section of the Applications documentation
Custom Functionality with JavaScript
Applications documentation
Fastify Routes
Harper HTTP port found in the Harper configuration file