Optionally provide private feedback to help us improve this article...

Thank you for your feedback!


InstantKB Database Tables

This article details all the database tables that exist within InstantKB and briefly describes the purpose of each table. Table names appear in bold with a description below the table name.

Table Prefixes

You'll notice some tables are prefixed with "InstantASP_" and some tables are prefixed with "InstantKB_". The "InstantASP_" tables are shared tables and also exist within our InstantForum product. We do this for integration purposes. The "InstantKB_" tables are specific to InstantKB. 

Tables

InstantASP_Emails

This table holds queued emails within InstantKB.  By default whenever InstantKB generates an email the email will be placed into this database table. By default this table is queried every 60 seconds on a background thread to send emails in batches of 50. 

InstantASP_Fields

This table holds all default and custom form fields used throughout all InstantKB article, troubleshooter guides, downloads & ticket forms. 

InstantASP_FieldTemplateDetails

This table holds the layout or structure information of form fields for a specific field template within InstantKB. This includes the sort order of fields for a field template & if any fields are required, hidden or have default values.

InstantASP_FieldTemplates
This table holds basic information for field templates such as the name and the tab the field template is associated with. This table has a relationship to the InstantASP_FieldTemplateDetails table on the FieldTemplateID column. 

InstantASP_IgnoredSearchTerms

This table holds a key value pair of search & replace patterns which are parsed against all search strings a user provides within the InstantKB interface. Search patterns support regular expressions. This can be helpful to remove common terms from search strings before the search strnig is passed to our search methods. 

InstantASP_LanguageFilters

This table holds a key value pair of search & replace patterns which are parsed against all user comments within within the InstantKB interface. Search patterns support regular expressions.  This can be used to automatically filter competitor names or abusive language from user submitted comments. 

InstantASP_PickLists

Whenever you create a custom field of drop down list, radio button list or multiple selection drop down list an entry is added to this table to represent the drop down list. This allows us to establish a relationship between your custom field and the values that should appear within your custom field. 

InstantASP_PickListValues
This tables holds all individual values for any custom drop down fields, radio button lists or multiple selection drop down fields created as a custom field within InstantKB. 

InstantASP_Roles

This table holds all built-in and custom user roles available within InstantKB.  These are referred to as "Member Groups" within InstantKB interface. 

InstantASP_ScheduledTasks

This tables holds scheduled task information. Scheduled tasks are essentially web requests to a specific web end point at specific intervals. If any scheduled task are defined and scheduled tasks are enabled via the InstantKB application settings this table will be queried every 60 seconds to check if any tasks need to execute.

InstantASP_Searches 2014+

This table is used for reporting purposes and is used to generate the various search reports within the InstantKB admin control panel. This table holds every term a user performs within InstantKB. 

InstantASP_Sessions

This table is used to persist data we need to pass between pages for each session centrally within the database. For example if you attempt to perform an action within InstantKB that requires you to login you are taken to our login page. The original URL you first requested however is added to the InstantASP_Sessions table with a unique session identifier so you can be brought back to the correct page after you login or create a new account. 

 InstantASP_Settings

This table holds all general application settings. Application settings are stored as an XML string within the database for greater flexibility. For example this means we don't need to add a new database column for every new application setting we introduce. 

InstantASP_Tags

This tables holds all tags associated with articles within InstantKB. 

InstantASP_Users

This table holds all core user information within InstantKB. This includes the user's username, email address and hashed password. 

InstantASP_UsersRoles

This table holds a one to many relationship between users and roles within InstantKB. 

InstantASP_ViewState 2014+

This table is used to persist & centralize ASP.NET view state within the database. This also ensures smaller pages as we don't need to render view state on the client. 

InstantASP_Wrappers

This table is not currently used within InstantKB. This is a shared table that is currently only used within InstantForum. 

InstantKB_Alerts 2011+

This table holds any staff specific ticket alerts / notifications defined by staff members within InstantKB. Alerts can be used by regular staff members within InstantKB to let them know when new tickets arrive or when tickets are assigned to them. 

InstantKB_ArticleCategories

This table holds a one to many relationship between articles within InstantKB and categories. A single article can be placed into multiple categories within InstantKB. This is the table that holds this relationship. 

InstantKB_ArticleCommentRatings

This table holds how many up or down votes have been submitted for a specific user comment. 

InstantKB_ArticleComments

This table holds all user submitted comments for specific articles within InstantKB. 

InstantKB_ArticleCustomFields

This table holds the values for any custom fields you've defined for articles. 

InstantKB_ArticleRatings

This table holds each individual rating for articles. This is used to determine the rating for the 5 star rating control for the article by simply taken the mean of all individual ratings within this table. 

InstantKB_ArticleRead

This table is used for reporting purposes and to track which articles users have read. This table holds an entry for every article view with a corresponding date stamp. This table can grow quite large so we provide an option via the Admin CP to periodically clear this table if needed. 

InstantKB_ArticleRelatedLinks

This table holds the relationship between a single article and any other related articles. You can also link to external URLs from articles which are also stored in this table. 

InstantKB_ArticleRoles

This table holds a one to many relationship for an article and all roles associated with that article. Only users who belong to one or more of the same roles associated with the article would see the article.

InstantKB_Articles

This table holds all your InstantKB articles. This includes the title of your article, all meta data for the article and the article HTML. 

InstantKB_Attachments

This table holds all attachments associated with articles and tickets within InstantKB. 

InstantKB_AttachmentTypes

This table holds all permitted attachment file types your staff members are allowed to upload & attach to article or support tickets. 

InstantKB_Categories

This table holds all categories defined within InstantKB. You can create any number of categories within each InstantKB tab to help you organize the content within that tab. 

InstantKB_CategoryRoles
This table holds a one to many relationship between a category and the roles associated with that category. Only users who belong to one or more of the same roles associated with the category would see the category and contact within the category. 

InstantKB_Channels 2015+

Holds setting information for the various inbound support channels supported by InstantKB.

InstantKB_DataViews

This table holds the default & custom views defined for various grids within InstantKB. For example you can add custom fields to grids used within InstantKB or change the default sort by or sort order for various grids within InstantKB. 

InstantKB_Departments

This table holds the various staff departments for InstantKB. Staff departments can be used to help route inbound support tickets based on the department selected by the user or can be used to help control which workflows are available to staff members within the Staff CP. 

InstantKB_EmailHistory 2015+

This table stored a copy of each email received by InstantKB before it's converted into a support ticket. This table is used to check if InstantKB has already received the email if you choose not to delete emails from your server when InstantKB download the email.

InstantKB_Glossary

This table holds the glossary of terms you can define within InstantKB. The glossary of terms is accessible via a dedicated page within the InstantKB support portal. Terms that appear within articles are also automatically hyper-linked showing the definition from your Glossary. 

InstantKB_Levels

This table holds the default & custom values for the "Level" drop down list field when creating or editing articles. 

InstantKB_Notes

This table holds user and staff notes that are available from the user control panel and staff control panel. 

InstantKB_Notifications

This table holds information for any notifications that should trigger when content is placed into a specific work flow step. The RelatedEntityID is related to the WorkFlowStepID from the InstantKB_WorkFlowSteps table. 

InstantKB_PermissionSets

This table holds all user permission sets within InstantKB. Permission sets help you control what features are available to regular users when viewing content via the InstantKB front-end. 

InstantKB_PermissionSetsRoles

This table holds a one to one relationship between a user role or member group and a specific permission set within InstantKB. When a permission set is linked to a specific user role all users who have that role as there primary role within InstantKB will automatically inherit the permission defined within the permission set associated with the users primary role. 

InstantKB_PermissionSetsTabs

This table holds the specific permissions available to users for each built-in and custom tab within InstantKB for each permission set defined within the InstantKB_PermissionSets table. 

InstantKB_Priorities

This table holds the default & custom values for the "Priority" drop down list field when creating or editing articles or support tickets. 

InstantKB_Rules 2011+

This table holds all rules you can define as an administrator via the InstantKB Admin CP. Rules all you as an administrator to control how tickets are routed and which notifications are trigged when tickets arrive or are escalated. 

InstantKB_Settings

This table holds InstantKB specific application settings. Similar to the InstantASP_Settings table this table stores settings values in XML format for greater flexibility. 

InstantKB_SLAs 2011+

This table holds the service level agreements you can define for inbound customer support tickets within InstantKB. Service level agreements can be applied automatically to inbound tickets by creating a rule to associate the an SLA based on keywords within the ticket or which department the ticket was directed to. 

InstantKB_StaffPermissionSets

This table holds the various staff permissions you can define within InstantKB. Staff permissions allow you to control which features are available to staff members within the Staff CP based on the department the Staff Member belongs to. 

InstantKB_StaffPermissionSetsTabs

This table holds all staff permissions for each built-in and custom tab defined within InstantKB. 

InstantKB_StandardReplies

This table holds all public & private standard replies staff members can select from when responding to customer support tickets. 

InstantKB_Status

This table holds the default & custom values for the "Status" drop down list field when creating or editing articles or support tickets. 

InstantKB_TabRoles

This table holds a one to many relationship between a tab and the roles that are associated with that tab. Only users who belong to one or more of the same roles associated with the tab would see the tab and have access to categories & contact within the tab. 

InstantKB_Tabs

This table holds all the built-in and custom tabs defined within InstantKB. By default InstantKB is provided with 4 tabs (Knowledgebae, Troubleshooter, Downloads & Submit Ticket) however you can extend InstantKB and create your own custom tabs. For further information on tabs please see our Custom Tab Overview and Controlling Access To Tabs.

InstantKB_TicketCustomFields 2011+

This table holds the values for custom ticket fields.

InstantKB_TicketNotes 2011+

This table holds the notes associated with any ticket within InstantKB.

InstantKB_TicketReplies 2011+

This table holds all replies to a specific ticket within InstantKB.

InstantKB_Tickets 2011+

This table holds all customer support tickets within InstantKB. This table includes the ticket title, all ticket meta data and the ticket message. 

InstantKB_TroubleshooterSteps

This table holds the various questions shown below troubleshooter guides to help users navigate to the next stage in the troubleshooter guide. 

InstantKB_Types

This table holds the default & custom values for the "Type" drop down list field when creating or editing articles or support tickets. 

InstantKB_UserDepartments

This table holds a one to many relationship between your staff members and staff departments within InstantKB. Similar to member groups a staff member can have a single primary department and multiple secondary departments. The primary department is used to determine which staff permission set to apply to the staff member and the secondary departments are used to control which workflows are visible to the staff member. 

InstantKB_UserLevels

This table holds the various user / reputation levels associated with users within InstantKB. 

InstantKB_UserLists 2015+

These are referred to as contact lists within the InstantKB user interface. Holds each of the contact lists that can be defined to help you group and organize contacts within InstantKB

InstantKB_Users

This table holds InstantKB user specific settings. For example the users signature. 

InstantKB_UserUserLists 2015+

 Holds a one to many relationship for each user and several user or contact lists. 

 InstantKB_WhosOn

This table holds an entry for each active session within your InstantKB installation. This is used to provide real-time statistics. 

InstantKB_WorkFlowDepartments

This table holds a one to many relationship between single workflow and multiple departments. 

InstantKB_WorkFlows

This table holds all workflows you can define within InstantKB. Workflows within InstantKB can be used to enforce processes for ticket resolution or content approval. 

InstantKB_WorkFlowSteps

This table holds the individual steps available within each work flow. Each step represents a stage in your work flow. At each step various automated actions can be applied to the article or support ticket you are updating the workflow for. 

InstantKB_WorkFlowStepsNextSteps

This table is used to enforce the next available work flow steps you can place an article or ticket into placed on it's current work flow step.