# init()

This function initializes a Panopticon session. If initialization is successful, the pointer that `context` points to is set to a valid context identifier. You must pass this context identifier as the first parameter to all other Panopticon functions.

## Syntax

    KVPanopticonError init(
       const char* const binDir,
       const char* const tempFolder,
       const char* const licenseOrganisation,
       const char* const licenseKey,
       KVPanopticonContext** const context /*out*/
    );

## Arguments

`binDir` | A null-terminated C string that contains the path of the directory where the Panopticon components are located.
`tempFolder` | (Optional) A null-terminated C string that contains the path of directory to use to store temporary files. Set this value to NULL to default to the system temporary directory.
`licenseOrganisation` | A pointer to a string that contains the organization name under which this installation of Panopticon is licensed. This value is the company name that appears at the top of the license key that Micro Focus provides. Add the text exactly as it appears in this file.
`licenseKey` | A pointer to a string that contains the license key for this installation of KeyView. This value is the appropriate license key provided by Micro Focus. The key is a string that contains 31 characters, for example 2TAD22D-2M6FV66-2KBF23S-2QEM5AB. Supply these characters exactly as they appear in the license key file, including the dashes. Do not include any leading or trailing spaces.
`context` | A valid pointer to a NULL pointer of type `KVPanopticonContext`. If initialization is successful, this target is set to a context-identifying value, which you must supply to subsequent Panopticon functions.

## Returns

If the function was successful, it returns `KVP_Success`. Otherwise, it returns a KVPanopticonError value describing the problem.

_FT_HTML5_bannerTitle.htm