This section is dedicated to the library for working with the HTTP client. On this page, all the steps necessary to start working are described
## Getting started
The HTTP module is designed to quickly create HTTP requests in 1C:Enterprise and OneScript using the fluent interface. Each request must be started by initializing the HTTP client in one of the following ways:
The client can also be initialized without specifying a URL. See *Initialization* for details
## Common procedure for creating a request
After client initialization, a new request can be described by any number of additional actions listed in the subsections of this documentation block
```bsl
URL = "https://exemple.com/post";
Data = New Structure("Field1,Field2,Field3", 10, "Text", 20);
Result = OPI_HTTPRequests.NewRequest()
.Initialize(URL)
.SetJsonBody(Data)
.AddHeader("X-My-Header1", "Hello")
.AddHeader("X-My-Header2", "world")
.AddAWS4Authorization("***", "***", "***")
.ProcessRequest("POST")
.ReturnResponseAsJSONObject();
```
In general, to execute the request after the end of formation, the `ProcessRequest(Method, Start = True)` function is used or the same function with the `Start = False` attribute and calling the `ExecuteRequest` function separately. To receive the final response after processing the request, one of the functions from the *Response receiving* section is used, depending on the expected body format
## Logging
During the client's operation, logging of its actions is performed. To retrieve the log, the `GetLog` function is used, which returns the recorded actions as either an array or a single string (depending on the value of the `AsString` parameter). Some functions from the *Response receiving* section may also return a log string within an exception when the `ExceptionOnError` parameter is specified (otherwise, in case of an error, the HTTP client object is returned, from which the log can be obtained manually).
```bsl
URL = "https://exemple.com";
ParamsStructure = New Structure("param1,param2", "text", 10);