Overview
API Management is an administrative applet used to create and manage API Endpoints and their defined Request Methods.
For developers, API Management is a framework for creating API's to support the needs of your firm. With auto-generated documentation, developers can leverage this applet to create secure integrations.
Non-developers who wish to leverage InFocus' API can request custom solutions via Clearview Support.
Field Descriptions
Toolbar
• | New Endpoint - Creates an API endpoint |
• | Save - Saves the currently loaded record |
• | Manage Resources - Launches the Resources dialogue where the following can be managed: |
o | Name - Name of the resource (e.g. Employees, Projects, etc.) |
o | Hide Documentation - Hides generated documentation for the selected endpoint |
• | Manage Keys - Used to create and manage API Keys. Launches the API Keys dialogue. |
o | Active - Key is Active when checked |
o | Key - API Key. Click the refresh icon to generate. |
o | Issue Date - Date created |
o | Expire Date - Date to expire |
o | Description - Key description |
Resources
The Resources pane allows you to select a resource and displays a list of endpoints that can be loaded and managed.
• | Dropdown - Lists all available resources for management |
• | Refresh (button) - Refreshes the list |
Endpoint Settings
Endpoint Settings are used to configure how requests can be made to a given endpoint.
• | Active - Endpoint is active when checked |
• | Hide Endpoint Documentation - Hides generated documentation for the selected endpoint |
• | Endpoint Group - Resource group or category to which the endpoint belongs |
• | Name - Endpoint name (e.g. Employees) |
• | Secure Route - URL for requests governed by API Key permissions |
• | Public Route - URL for public requests |
• | Generate Private Link - Click to generate a Public Route |
• | Allowed HTTP Methods - Defines the allowable request methods (e.g. GET, POST, PUT, DELETE). Check to allow. |
• | Description - Endpoint description and internal notes. |
Methods/Query
Methods and Query tab is used to define each available request method and it's attributes.
Header
• | Query Arguments - Defines a list of available arguments to be passed into the call. |
o | Parent - Used to group arguments |
o | Data Type - SQL Data type |
o | Default Value - Default value to use if NULL or blank is returned |
o | Sample Value - Sample Value for documentation |
o | Query Parameter - Enable as a parameter available to the query |
o | Required - Required for resource requests using the selected method |
o | Description - Argument description for documentation |
Query Tab
Defines the script that executes when requesting the selected request method.
• | Stored Procedure - Query is a stored procedure (e.g. z_my_storedproc). |
• | Hide Query Documentation - Hides generated documentation for the selected query |
• | Name - Name of the query |
• | Query (text box) - Enter your query here |
• | Data Source - Data Source for the query |
• | Generate Query Parameters - Click to generate Query Arguments (Query Parameter = Checked) for parameters found in the query. |
Documentation Tab
The Documentation tab is used to generate and review documentation for the loaded Method (e.g. GET, POST, etc.).
Documentation can be used by developers authorized to leverage the API.
• | Description - Query description for documentation. Markdown Formatting is supported. |
• | JSON Request - Sample request for POST, PUT and DELETE methods. |
• | Response - Sample response produced by the query |
Permissions Tab
Permissions tab is used to manage API Keys available to the loaded Method.
• | Enable - Key is enabled when checked |
• | Description - Key description |
• | Set Test Key (wizard) - Generates a temporary key for use in testing. Pre-fills the Auth. Key on the Testing tab. |
Testing Tab
Testing tab is used to validate API setup and view the results of your method.
Warning Queries executed will be processed on the database specified in the Route Base. Use caution for POST, PUT and DELETE methods.
• | Route Base - Base URL to call for testing purposes. Database is specified here and can be set to run on a [Sandbox](https://support.clearviewsoftware.net/articles/6118). (e.g. http://mycompany.infocusapp.com/api/database_name) |
• | Parameters - Query parameters defined above under Query Arguments. Parameter default can be overridden for testing. |
• | Secure Route - Pre-fills the Endpoint's Secure Route when checked |
• | Public Route - Pre-fills the Endpoint's Public Route when checked |
• | Auth. Key - API Key to use for test. Generated with the Set Test Key wizard on the Permissions tab. |
• | URL - Fully defined URL to call for testing. Route Base + Secure or Public Route |
• | Request tab - Request attributes. Used for POST, PUT and DELETE methods. |
o | Querystring - Query parameters to append to the request URL (e.g. ?emp_code=cw01) |
o | JSON Body - JSON formatted body of the request |
• | Response tab - Displays the formatted JSON Response |
• | Exec Querystring (button) - Executes the request Querystring |
• | Exec Body (button) - Executes the body of the request |
• | Executes Request (button) - Executes the loaded method using the settings defined here on the Testing tab. Once executed, InFocus will display the HTTP response code and the API response in the tab above. |
• | Copy Output - Copies the JSON object from the Response tab to the clipboard |
|