--- title: "init_library_request" url: "https://docs.adyen.com/point-of-sale/classic-library-deprecation/classic-library-integrations/c-library-integration/structs/init_library_request" source_url: "https://docs.adyen.com/point-of-sale/classic-library-deprecation/classic-library-integrations/c-library-integration/structs/init_library_request.md" canonical: "https://docs.adyen.com/point-of-sale/classic-library-deprecation/classic-library-integrations/c-library-integration/structs/init_library_request" last_modified: "2026-05-24T12:54:31+02:00" language: "en" --- # init\_library\_request [View source](/point-of-sale/classic-library-deprecation/classic-library-integrations/c-library-integration/structs/init_library_request.md) Contains the following data elements: | Name | Type | Description | | ----------------- | ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `flags` | Unsigned Integer | A set of library flags. | | library\_log | void function | The C library uses this function to write log lines. | | `environment` | ADYEnvironment | Defines the environment, where the system executes transactions, using ENVIRONMENT\_TYPE values: ENVIRONMENT\_LIVE or ENVIRONMENT\_TEST. | | `pos_name` | char | The symbolic POS name. | | `app_name` | char | The Integrator/Merchant App name.Format this value like so: **Cash register company and product** /** Cash register product version** / **Adyen integration name** / **Adyen integration version**. For example,  **Acme Corp POS** / **1.2.1** / **Acme Adyen connector** / **0.1 ** | | `app_id` | char | The Integrator/Merchant App ID. | | `integrator_name` | char | The integrator name.This value should be the name of the company deploying cash register or Point-of-Sale solution, for example,  **Retail Consultancy Corp.** | The following data elements are used in cases where the library throws an exception which is not related to a PED, otherwise the data elements in [ped\_device\_info](/point-of-sale/classic-library-deprecation/classic-library-integrations/c-library-integration/structs/ped_device_info) will be used | Name | Type | Required | Description | | ----------------- | ---------------- | ------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `throw_exception` | void function | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") |  Function called when an exception is thrown. | | `echo_struct` | state pointer | ![-x-](/user/data/smileys/emoji/x.png "-x-") | A POS-defined struct that is echoed back in the callback. Use this to share a POS data struct between the call to the library and the callback from the library. You can add any pointer to `echo_struct`, and this will be returned on its specific callback. | | `logArea` | Unsigned Integer | ![-x-](/user/data/smileys/emoji/x.png "-x-") | Defines the parts of the logs you can see. As default set this to 0xffff. |