{
    "openapi": "3.1.0",
    "info": {
        "title": "LOX24 API Specification (EN)",
        "description": "# Introduction\n\nOn these pages you will find our documentation for transmitting messages using the LOX24 SMS Gateway. The documentation\nhelps you to integrate our SMS API into your own applications and therefore to send and receive SMS messages.\nYou can find our SMS API at api.lox24.eu. You access the individual functions accordingly with a /function.\nE.g. api.lox24.eu/me for querying your customer account and api.lox24.eu/sms to send an SMS. All\nendpoints require authentication by HTTP Header.\n\n### Highlights\n\n- Use HTTPS, for fully SSL encrypted messages\n- Send concatenated sms, appearing as a single SMS on the handset\n- Send messages with text in GSM 03.38 charset or Unicode\n- Transmit any sender ID with up to 15 digits or 11 characters\n- Send a mass SMS to your complete mailing list with just one request\n- Receive replies to your sent messages via HTTP, HTTPS or SMTP\n- Receive or check the delivery status of outbound messages\n- Receive inbound messages from your (optional) inbound number\n\n### Request Content-Type\n\nThe Content-Type for POST and PUT requests can be set to `application/json`\nor `multipart/form-data` (on endpoints with file uploads).\n\n### Response Headers\n\nEach API response includes a unique request identifier in the `X-LOX24-REQUEST-ID` header.\nThis 32-character alphanumeric identifier is generated for every request and can be used\nfor support purposes when reporting issues or tracking specific API calls.\n\n### Datetime properties\n\nMost of the datetime requests/responses objects are unix timestamps (integer).\n\n### IP blocking\n\nIf more than three requests are received from an IP address with incorrect authentication data within one minute,\nall subsequent requests from this IP will receive a response with the 429 status (Too Many Requests) within the next ten\nminutes.\n\n## Authentication\n\nAll endpoints require you to be authenticated. To become authenticated you\nwill need to create an API token from your web-account ([http://account.lox24.eu](http://account.lox24.eu)\n\u201cSettings\u201d and \u201cAPI-Settings\u201d). Once you have your API Key you can pass it\nas an **HTTP header** like this:\n\n```\ncurl -X GET https://api.lox24.eu/me \\\n  -H 'Host: api.lox24.eu' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n```\n\n```\ncurl -X POST https://api.lox24.eu/groups/7116/phones \\\n  -H 'Content-Type: application/json' \\\n  -H 'Host: api.lox24.eu' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n  -d '{\n    \"phone\": \"+4917663804817\",\n    \"a\": \"o2\"\n}'\n```\n\n### Legacy authentication method\n\nWe also continue to support the old version of authentication with two headers 'X-LOX24-CLIENT-ID' and '\nX-LOX24-AUTH-TOKEN'\n\n```\ncurl -X GET https://api.lox24.eu/me \\\n  -H 'Host: api.lox24.eu' \\\n  -H 'X-LOX24-AUTH-TOKEN: e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n  -H 'X-LOX24-CLIENT-ID: 1234567'\n```\n\n### Important!\n\nNever share your secret keys. Keep them guarded and secure. If a key is\nunintentionally published, you can deactivate or delete it at any time\nin your web account (https://account.lox24.eu) in the \"Settings\" and \"API settings\".\n<!-- ReDoc-Inject: <security-definitions> -->\n",
        "version": "2.24",
        "contact": {
            "email": "berlin@lox24.eu",
            "url": "https://doc.lox24.eu"
        },
        "license": {
            "name": "LOX24 Terms of Service",
            "url": "https://www.lox24.eu/en/terms/"
        },
        "x-logo": {
            "url": "/images/logo.png",
            "href": "https://doc.lox24.eu/",
            "altText": "LOX24 API Specification"
        }
    },
    "servers": [
        {
            "url": "https://api.lox24.eu",
            "description": ""
        }
    ],
    "security": [
        {
            "token": []
        }
    ],
    "tags": [
        {
            "name": "sms",
            "x-displayName": "sms",
            "description": "The sms endpoint is used to send **individual SMS**. This includes regular SMS but also the dryrun for test purposes. In addition, there are a number of functions to query sent SMS, delete SMS or stop the dispatch.\n\n* Send single SMS\n* Query sent SMS\n* Stop time shifted SMS\n* Delete SMS data\n* Query SMS data\n\nIf you don't want to send single SMS, but want to send bulk SMS via the API, then the endpoint \"bulks\" is relevant.\n"
        },
        {
            "name": "bulks",
            "x-displayName": "bulks",
            "description": "The bulks interface is used to **send bulk SMS**. This includes the correct bulk SMS transmission to multiple phone numbers and/or groups but also the dryrun. In addition, there are a number of functions to query the status of a bulk or to stop the mailing.\n\n* Send bulk SMS\n* Query status of bulk SMS\n* Stop bulk SMS\n\nIf you don't want to send mass SMS but want to send individual SMS via the API, then the endpoint \"sms\" is relevant.\n"
        },
        {
            "name": "blocked-numbers",
            "x-displayName": "blocked numbers",
            "description": "The blocked numbers endpoint is used to manage **blocked phone numbers** for SMS campaigns. This allows you to maintain a list of phone numbers that should not receive SMS messages, either because they have been blocked at the customer's request or because users have unsubscribed. Phone numbers are automatically added to this list when users unsubscribe via short link campaign unsubscription forms of type 2 ('unsubscribed').\n\n* Add phone numbers to the blocked list.\n* Query blocked phone numbers\n* Remove phone numbers from the blocked list.\n* Filter blocked numbers by type or number.\n\nThis endpoint helps to ensure compliance with SMS regulations and user preferences by preventing messages from being sent to unwanted recipients."
        },
        {
            "name": "incomings",
            "x-displayName": "incomings",
            "description": "This interface is used to query inbound SMS (pull). The list of all incoming SMS, as well as the content of a particular SMS. Please note, however, that you can also receive the SMS as push, as soon as they arrive. The [push variant](/info/inbound-and-reply-sms/) is preferably, since you do not have to check for incoming SMS, but these are sent directly to your script.\n"
        },
        {
            "name": "groups",
            "x-displayName": "groups",
            "description": "The function \"Groups\" allows you to create bulk SMS mailing lists. Each mailing list represents a\ngroup. By using the functions in \"Groups\" you can create, view, delete and export the mailing lists.\n"
        },
        {
            "name": "phones",
            "x-displayName": "phones",
            "description": "This interface serves as a complement to groups. Using phones you can add, delete or modify phone numbers in your SMS mailing list. It is also possible to export the content of a group via this interface.\n"
        },
        {
            "name": "campaigns",
            "x-displayName": "campaigns",
            "description": "You can create a short link campaign via the campaigns API. A short link campaign is used to create a short link, which you can then use for individual and bulk SMS messages.\nYou can also query the existing short links via the interface and change or delete them.\n"
        },
        {
            "name": "links",
            "x-displayName": "links",
            "description": "The Links API is used to query the specific short links of one or all short link campaigns.\n"
        },
        {
            "name": "requests",
            "x-displayName": "requests",
            "description": "Via requests you can retrieve the results of your short link campaign. Depending on whether you have sent an SMS with simple or advanced tracking, you can determine which phone numbers have clicked how often on the links in your SMS. Through this interface it is possible to find out which recipients or which SMS have scored how well.\n"
        },
        {
            "name": "click-rate",
            "x-displayName": "click rate",
            "description": "By using this interface, you will be able to measure the number of clicks of your SMS mailings.\n"
        },
        {
            "name": "user",
            "x-displayName": "user",
            "description": "User is an assistance interface, e.g. to query the account balance or the credit line. This can be helpful to determine if there is still enough credit to send further SMS.\n"
        },
        {
            "name": "send-link",
            "x-displayName": "send a link",
            "description": "### How to send SMS with Short Links\n\nLOX24 allows you to shorten long URLs by replacing them with short URLs using our l24.pw domain.\n\nThis makes it also possible to implement powerful marketing campaigns. Thus, a unique short link can be sent with each SMS. This allows you to **track which of your customers clicked on the link**. With this data, you can interact with customers in a more targeted way or improve your campaigns.\n\nBut that's not all! LOX24 also offers special short links that allow the user to **subscribe or unsubscribe to your SMS newsletters**. This allows you to automate the double opt-in and opt-out in a legally compliant way.\n\n#### How to create a short link campaign\n\nPlease check the chapter [Create a Short Link Campaign](/api/operations/api_short_link_campaigns_post_collection/)\n\n***There are two types of campaigns:***\n\n1. Simple (type = 1). One short link will be used for all SMS. The link is free. The total number of clicks, the click-through rate and other data are collected.\n2. Advanced (type = 2). A unique short link for each SMS will be used. This allows you to determine which recipients have clicked on your link and which have not. The cost of each link is \u20ac0.005.\n\n\n#### How to create a signup link for a SMS mailing list.\n\nPlease read the chapter [Creating a signup form campaign](/api/operations/post_subscribe/).\n\nA special type of short link will be generated that will redirect the user to a signup form on our website (white label). You also need to add a group ID to determine the SMS mailing list. The phone numbers of the users who filled out the signup form will be added to this group.\n\n#### How to create an unsubscribe link for a SMS mailing list.\n\nPlease read the chapter [Creating an unsubscribe form campaign](/api/operations/post_unsubscribe/) chapter.\n\nA special short link is created that redirects the user to an unsubscribe form (white label). You can also add a group ID (SMS mailing list) from which the phone numbers of the users who sent the unsubscribe form will be removed. Even if the group is not listed when unsubscribing, the user's number will be added to the blacklist.\n\n#### How to send a SMS with a short link\n\nPlease check the chapter [Send the SMS](/api/operations/api_sms_post_collection/) or [Create the Bulk](/api/operations/api_bulks_post_collection/) for the general funtionality.\n\nTo send a SMS with a short link you need to put the following placeholder```[slink campaing_id]``` in the message text, whereby ```campaing_id``` is the value of the campaign-id. You will receive this value as a return value when you create a campaign. Of course, you can also query the value for existing campaigns. For example, this is what your SMS text would look like for a campaign with the ID *eGxoGRMq*:\n\n```\nPlease check a link [slink eGxoGRMq]\n```\n\nOur system replaces the value of the placeholder with the correct link for each SMS recipient. You can also use [SMS dry-run mode](/api/operations/api_sms_post_dryrun_collection/)  to check roughly how the text with the link will look like and what the final price of the SMS will be.\n\n#### How to check click count\n\n***(This information is only available for campaigns with Advanced type)***\n\nNumber of clicks on an individual SMS can be found by [SMS id](/api/operations/api_sms_clicks_per_message_get_collection/) or [list](/info/click-rate/) by all SMS.\n\n#### How to get a list of the all short links (by campaign)\n\nYou are able to get a [full list of the short links](/api/operations/api_short_links_get_collection/) which were generated by all your campaigns or [by some campaign](/api/operations/api_short_link_campaigns_short_links_get_item/).\n\n#### How to get a list of user requests by short links\n\nThere are endpoints which provide detalized information about user requests:\n\n- [full requests list](/api/operations/api_short_link_requests_get_collection/)\n- [by SMS](/api/operations/get_sms_requests/)\n- [by Bulk SMS](/api/operations/get_bulk_requests/)\n- [by Short Links Campaign](/api/operations/get_campaign_requests/)\n- [by Short Link](/api/operations/get_short_links_requests/)\n"
        },
        {
            "name": "fraud-detection",
            "x-displayName": "Fraud Detection API",
            "description": "The *Fraud Detection API* helps to identify suspicious requests to your service. The API receives data such as phone number, email and IP address of your potential customer from you in compliance with **data protection regulations** in Europe. Our system checks them using databases, algorithms and artificial intelligence. The API finally gives an assessment about the risk of a **fraud**. The risk is measured as the probability of fraud **from 0 to 100**, where `0` represents a small probability of fraud (good risk value) and `100` represents an extremely high probability of fraud (bad risk value).\n\nThe service also allows you to check each part of the request separately yourself, for example by passing only the phone data.\n\nIn addition to the risk score, the Fraud Detection AP response also contains **additional information** to help you with your **own risk assessment**:\n- About the Phone:\n\t- region\n\t- type of number (mobile, VoIP, etc.)\n\t- valid format\n\t- whether the number is possible at all\n- via e-mail:\n\t- is such an e-mail possible\n\t- is the domain of the given e-mail suspicious\n- about the IP address\n\t- region\n\t- state\n\t- city\n\t- postal code\n\t- geographic coordinates\n\t- ISP\n\t- risk assessment of the ISP\n\t- type of proxy server (if used)\n\t- type of connection\n- about the address\n    - country code (ISO 3166-1 alpha-2)\n    - city\n    - postal code\n    - street name\n    - street number\n\nDepending on the chosen tariff 'direct' the response and the processing speed of the request are different. Economy requests are suitable e.g. for a simple login. Pro requests for a new customer registration and direct requests for a product sale:\n- '**direct**' - the answer contains all detail data and the request is processed in a separate queue with **increased priority**.\n\n\nSince scoring takes some time, the request is processed in asynchronous mode and after processing the service sends the request data back in JSON format to the HTTP URL or email you specified. You can set this value in the web account under Settings and Notifications (**Event Notifications**).\nYou can also check the status of the request by its ID by sending a request to the API. However, we strongly recommend that you use the notification system (webhook), as the service might block your requests if there are a large number of requests from your side.\n"
        },
        {
            "name": "collection-filters",
            "x-displayName": "Collection filters",
            "description": "LOX24 API provides a generic system to apply filters and sort criteria on \ncollections. You can see which filters you can use in the property description.\n \n### Search filter\n\nThe API uses two types of the text filters:\n\n- ***partial*** strategy uses provided text to search for fields that \ncontain part of that text\n- ***exact*** strategy uses uses provided text to search for fields \nthat contain exactly that text\n\n**Note**: Search filters with the exact strategy can have multiple values \nfor the same property (in this case the condition will be similar to a SQL IN clause).\n\n#### Usage examples\n\nFind sms which `phone` property contains *\"4979\"* and `text` property \ncontains *\"hello\":\n\n```\ncurl -X GET https://api.lox24.eu/sms?phone=4979&text=hello \\\n  -H 'Host: api.lox24.eu' \\\n  -H 'X-LOX24-AUTH-TOKEN: e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n  -H 'X-LOX24-CLIENT-ID: 1234567' \n```\n\nFind sms with country `iso2` property equal 'DE' OR 'CH' and `status_code` = 0\n\n```\ncurl -X GET https://api.lox24.eu/sms?iso2[]=DE&iso2[]=CH&status_code=0 \\\n  -H 'Host: api.lox24.eu' \\\n  -H 'X-LOX24-AUTH-TOKEN: e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n  -H 'X-LOX24-CLIENT-ID: 1234567' \n```\n\n### Boolean filter\n\nThe boolean filter allows to search on boolean fields and values.\n\n**Syntax**: ?property=<true|false|1|0>\n\nGet sms which wasn't sent to the mobile operator yet: \n```\ncurl -X GET https://api.lox24.eu/sms?sent=0 \\\n  -H 'Host: api.lox24.eu' \\\n  -H 'X-LOX24-AUTH-TOKEN: e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n  -H 'X-LOX24-CLIENT-ID: 1234567' \n```\n\n### Exists filter\n\nThe exists filter allows to select items based on a nullable field value\n\n**Syntax**: ?exists[property]=<true|false|1|0>\n\nGet bulks which has property `is_unicode=null` (sms encoding auto-detection):\n```\ncurl -X GET https://api.lox24.eu/bulks?exists[is_unicode]=0 \\\n  -H 'Host: api.lox24.eu' \\\n  -H 'X-LOX24-AUTH-TOKEN: e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n  -H 'X-LOX24-CLIENT-ID: 1234567'\n```\n\n### Range Filter\n\nThe range filter allows to filter by a value lower than, greater than, \nlower than or equal, greater than or equal and between two values.\n\n**Syntax**: ?property[<lt|gt|lte|gte|between>]=value\n\n#### Usage examples\n\nFilter sms collection by the field `created_at` between 1575158400 (2019-12-01)\nand 1575676800 (2019-12-07): \n```\ncurl -X GET https://api.lox24.eu/sms?created_at[between]=1575158400..1575676800 \\\n  -H 'Host: api.lox24.eu' \\\n  -H 'X-LOX24-AUTH-TOKEN: e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n  -H 'X-LOX24-CLIENT-ID: 1234567' \n```\n\n\n\n### Order Filter (Sorting)\n\nThe order filter allows you to sort a collection against the given properties.\nOrder parameter `_order`.\n\n#### Usage examples\n\nSort sms collection by the field 'created_at' in descending order: \n```\ncurl -X GET https://api.lox24.eu/sms?_order[created_at]=desc \\\n  -H 'Host: api.lox24.eu' \\\n  -H 'X-LOX24-AUTH-TOKEN: e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n  -H 'X-LOX24-CLIENT-ID: 1234567' \n```\n"
        },
        {
            "name": "sms-status-codes",
            "x-displayName": "SMS status codes",
            "description": "Description of the sms status codes (property `status_code`):\n\n|Status code|Description|\n|---|---|\n|0|New just created message|\n|100|Message was successfuly transmitted to the mobile operator|\n|208|The destination network/country is blocked|\n|400|The message could not be delivered during maintenance|\n|410|The message was stopped before transmission via web account|\n|2000|No connection to landline possible at the moment|\n|3000|Not enough money on the user balance to send the message|\n|5000|No mobile operator found for this message|\n|6000|The message was stopped before transmission via API|\n"
        },
        {
            "name": "sms-delivery-report-codes-dlr",
            "x-displayName": "SMS delivery report codes (DLR)",
            "description": "For each transmitted SMS there is a delivery report (DLR). There are two ways to get these delivery reports:\n\n1. push http: We send the delivery reports via HTTP GET request or email (webhook) to your endpoint. See [`Event notifications`](/info/notifications/) for more information.\n2. pull http: you query the DLR using the endpoint [`GET /sms/{id}`](/api/operations/api_sms_get_item/) (id - SMS id) and check the parameter `dlr_code`.\n\n### Description of the delivery report status codes (property `dlr_code`):\n\n|Status code|Description|\n|---|---|\n|0|NONE: There is no delivery report available|\n|1|DELIVERY_OK: The message was successfully delivered|\n|2|DELIVERY_QUEUE: The message is scheduled for later sending|\n|4|DELIVERY_SUBMIT_ACK: The message is enroute|\n|8|DELIVERY_EXPIRED: The SMSC was unable to deliver the message in a specified amount of time. For instance when the phone was turned off|\n|16|DELIVERY_REJECTED: The message was rejected. The provider could have blocked phone numbers in this range|\n"
        },
        {
            "name": "encoding-and-number-of-characters",
            "x-displayName": "Encoding and count of characters",
            "description": "Generally, the SMS text has to be transfered with UTF-8 encoding  to the gateway. You have the option to use the parameter \"is_unicode\" to decide if you want to send a normal 7 bit \nor UCS-2 SMS.\n\n#### GSM 7 bit Standard-Alphabet (GSM 03.38)\nThe basic character set contains all characters that can be transmitted with a normal 7 bit SMS. Each of this characters counts as 1 character. The extended character set can also be transferred, but requires 2 characters for transmission. SMS which contain more than 160 characters are delivered to the handset as multiple SMS, each with 153 characters, and concatenated by the phone to one message. If you send an SMS explicitly with the GSM 03.38 charset and your message contains characters which are not part of the GSM charset, our system will try to convert your text using transliteration.\n\n**Basic Character Set**\n\n||0x00|0x10|0x20|0x30|0x40|0x50|0x60|0x70|\n|---|---|---|---|---|---|---|---|---|\n|0x00|@|\u0394|SP|0|\u00a1|P|\u00bf|p|\n|0x01|\u00a3|_|!|1|A|Q|a|q|\n|0x02|$|\u03a6|\"|2|B|R|b|r|\n|0x03|\u00a5|\u0393|#|3|C|S|c|s|\n|0x04|\u00e8|\u039b|\u00a4|4|D|T|d|t|\n|0x05|\u00e9|\u03a9|%|5|E|U|e|u|\n|0x06|\u00f9|\u03a0|&|6|F|V|f|v|\n|0x07|\u00ec|\u03a8|'|7|G|W|g|w|\n|0x08|\u00f2|\u03a3|(|8|H|X|h|x|\n|0x09|\u00c7|\u0398|)|9|I|Y|i|y|\n|0x0A|LF|\u039e|*|:|J|Z|j|z|\n|0x0B|\u00d8|ESC|+|;|K|\u00c4|k|\u00e4|\n|0x0C|\u00f8|\u00c6|,|<|L|\u00d6|l|\u00f6|\n|0x0D|CR|\u00e6|-|=|M|\u00d1|m|\u00f1|\n|0x0E|\u00c5|\u00df|.|>|N|\u00dc|n|\u00fc|\n|0x0F|\u00e5|\u00c9|/|?|O|\u00a7|o|\u00e0|\n\n- LF is a Line Feed control.\n- CR is a Carriage Return control, or filler.\n- ESC is an Escape control.\n- SP is a Space character.\n\n\n**Extended Character Set**\n\n||0x00|0x10|0x20|0x30|0x40|0x50|0x60|0x70|\n|---|---|---|---|---|---|---|---|---|\n|0x00| | | | ||| | | \n|0x01| | | | | | | | |\n|0x02| | | | | | | | |\n|0x03| | | | | | | | |\n|0x04| |^| | | | | | |\n|0x05| | | | | | |\u20ac| |\n|0x06| | | | | | | | |\n|0x07| | | | | | | | |\n|0x08| | |{| | | | | |\n|0x09| | |}| | | | | |\n|0x0A|FF| | | | | | | |\n|0x0B| |SS2| | | | | | |\n|0x0C| | | |[| | | | |\n|0x0D|CR2| | |~| | | | |\n|0x0E| | | |]| | | | |\n|0x0F| | |\\| | | | | ||\n\n- FF is a Page Break control. If not recognized, it shall be treated like LF.\n- CR2 is a control character. No language specific character shall be \nencoded at this position.\n- SS2 is a second Single Shift Escape control reserved for future extensions.\n\n#### UCS-2 (Unicode SMS)\nWith UCS-2 it is possible to transmit 1,112,064 characters. These characters \nrepresent nearly every spoken language. Each character counts as 1 character, \nbut Unicode SMS can only consist of 70 characters, or consist of multiple \nconcatenated SMS, each with 67 characters.\n\n#### Concatenated SMS\nFor technical reasons, with one sms only 160 characters of text (70 \ncharacters Unicode text) can be transferred. If you send an SMS with \nmore characters, then you send a so-called concatenated SMS. Overlong \ntext messages / Multi-SMS (concatenated SMS, Long SMS) are part messages \nand transmitted separately. Each part is a separate text message. The \nreceiver converts the parts again into a coherent text. To determine \nthat the message is a concatenated message and which part belongs to \nwhich part 7 characters (or 3 in Unicode) of the available characters \nare needed. This is the reason why one part of an overlong SMS can only \nconsist 153 characters (or 67 for Unicode) of your text. The maximum is \n1530 characters with one concatenated message (or 670 characters for \nUnicode).\n\n"
        },
        {
            "name": "kannel",
            "x-displayName": "Kannel API (emulation)",
            "description": "# Intro\n\nThis is a guide to set up and connect our SMS API to your Kannel client.\n\nIf you use Kannel to route messages to different SMS gateways you can\neasily add an additional SMSC module without changing your application\narchitecture.\n\nSupport: [berlin@lox24.eu](mailto:berlin@lox24.eu)\n\n# API Key\n\nTo send messages with Kannel you need to create an authentication key on\nthe [*account page*](https://account.lox24.eu) with the type \\'Kannel\nAPI\\'. Please go to \"*Settings*\" -> \"*API-Settings*\" and click on \"*Create new\nkey*\". You have to choose as type \"*Kannel API*\".\n\n![Account page an API key](/images/kannel/kannel-api-auth-key.png)\n\n# Config\n\nThere are two types of SMSC configurations possible to send SMS with\nLOX24 via Kannel:\n\n-   sending DLR requests to your endpoint\n-   sending DLR requests to your Kannel SMSC module, which in turn sends\n    a DLR request to your endpoint (DLR URL chaining)\n\n**Note**: What's about a DLR request you can read here:\n\n-   [Official Kannel's documentation](https://www.kannel.com/download/1.4.5/userguide-1.4.5/userguide.html#delivery-reports)\n-   [LOX24 DLR documentation](/info/sms-delivery-report-codes-dlr/)\n\n\n## Sending DLR requests to your endpoint\n\nLOX24 API will send delivery reports directly back to your endpoint\nwithout bypassing Kannel.\n\n![](/images/kannel/kannel_api_dlr.png)\n\nTo use the Kannel API just create a new SMSC config:\n\n  ```\n  group = smsc\n  smsc = http\n  system-type = kannel\n  smsc-id = \"lox24\"\n  allowed-smsc-id = \"lox24\"\n  port = 10443\n  send-url = \"https://lox24.eu/api/kannel/{SERVICE_CODE}.php\"\n  smsc-username = \"{USER_ID}\"\n  smsc-password = \"{API_KEY}\"\n  max-sms-octets = 1530\n  ```\n\n**Where**:\n\n-   *SERVICE_CODE* - any available for your account service code in lower\n    case, e.g. '*text2speech*', '*direct*' and etc.\n-   *USER_ID* - your account ID, same as the client ID used to login at\n    account.lox24.eu\n-   *API_KEY* - an active API token with type '*API Kannel*'. How to create it\n    see [*here*](/info/kannel/#api-key).\n\n## Sending DLR requests to Kannel\n\nWe will send delivery reports back to Kannel which will then send DLRs\nback to your endpoint.\n\n![](/images/kannel/kannel_api_dlr_chaining.png)\n\nTo use the Kannel API just create a new SMSC config:\n\n```\n  group = smsc\n  smsc = http\n  system-type = kannel\n  smsc-id = \"lox24\"\n  allowed-smsc-id = \"lox24\"\n  port = 10443\n  send-url = \"https://lox24.eu/api/kannel/{SERVICE_CODE}.php\"\n  smsc-username = \"{USER_ID}\"\n  smsc-password = \"{API_KEY}\"\n  dlr-url = \"http://youhosthere.com:10443/?username={USER_ID}&password={API_KEY}\"\n  connect-allow-ip = \"127.0.0.1;213.133.127.70;116.203.64.153;85.10.245.*\"\n  max-sms-octets = 1530\n```\n\n\n**Where**:\n\n-   *SERVICE_CODE* - any available for your account service code in lower\n    case, e.g. '*text2speech*', '*direct*' and etc.\n-   *USER_ID* - your account ID, same as the client ID used to login at\n    account.lox24.eu\n-   *API_KEY* - an active API token with type '*API Kannel*'. How to create it\n    see [*here*](/info/kannel/#api-key).\n\n## Additional notes\n\n### No DLR, but LOX24 notifications\n\nIf you set-up API v2 Status URL/E-mail in the lox24 web-account you are\nable to skip parameter `dlr-url` and get messages notifications in same\nway as if you sent SMS by our normal API v2 directly to a script on your\nserver or by mail [*docs*](/info/sms-delivery-report-codes-dlr/)\n\n![](/images/kannel/kannel_api_status_endpoint.png)\n\n### SMSC port\n\nIn the SMSC config samples are using port 10443, but it can be any port\nwhich you like. We are highly recommend blocking it by the firewall and\nallow TCP connections from LOX24 servers\n(116.203.64.153,213.133.127.70,85.10.245.\\*) and well-known hosts.\n\n## Supported DLR variables\n\nLOX24 Kannel API is a minimal Kannel implementation and does support\nonly the following variables:\n\n-   ***%d*** - Kannel report type (integer):\n    -   1: Delivered to phone\n    -   2: Non-Delivered to Phone\n    -   4: Queued on SMSC\n    -   8: Delivered to SMSC\n    -   16: Non-Delivered to SMSC\n\n-   ***%q*** - The international phone number (E.164), who will receive\n    the message.\n\n-   ***%T*** - The time of the delivery report expressed as seconds\n    since UNIX epoch.\n\n**Note:** You can use any other variables, but we can\\'t guarantee the\ncorrectness of the data.\n\n# Parameters\n\n## from\n\n*(required)*\n\nSender-ID of the message. Can be a number (up to 15 digits) or a text\n(up to 11 character). In case of a number please use preferentially\nE.164 phone number format. A sender of text may contain spaces but no\nother special characters. Please note that some countries do not support\nown sender IDs or do require pre-registration. Our system automatically\ntries to detect whether a sender ID is a text or a phone number. Avoid\nspecial characters in a number and enter it the same way as it would be\ndialed on a phone.\n\n## to\n\n*(required)*\n\nRecipient (international) number\n\n## text\n\n*(required)*\n\nThe message text can have a length of up to 1530 characters. With a\nUnicode SMS, the maximum character length is reduced to 670 characters.\nInternal encoding is UTF-8.\n\n## coding\n\n*(optional)*\n\nYou can send a SMS with parameter '*coding*':\n\n0 - GSM 03.38 (default),\n1 - 8-bit or\n2 - UCS-2 encoding.\n\n*In our case 8-bit and UCS-2 are the same (is\\_unicode = true) and will\nbe handled as unicode SMS.*\n\n## dlr-url\n\n*(optional)*\n\nSpecify an URL and have us call it with delivery status reports. If\nparameter 'dlr-url' is missed then will be using *API v2 DLR\nendpoint from user's settings* (if\nthem set).\n\n## deferred\n\n*(optional)*\n\nIf given, the SMS center will postpone the message to be delivered at\nnow plus this amount of minutes. If skipped then SMS will send ASAP.\n\n## Example of request\n\nThat example of get request which user sends to **his** Kannel smsbox\nwhich is listen on port 9001.\n\n[*http://127.0.0.1:9001/cgi-bin/sendsms?dlr-url=http://yourhost.com/dlr_test.php?status=%d%26time=%T%26q=%q%26customid=1234567&from=sender&password=test1&smsc=lox24&text=test%20message&to=+49751234567&username=test1&coding=0*](http://127.0.0.1:9001/cgi-bin/sendsms?dlr-url=http://yourhost.com/dlr_test.php?status=%d%26time=%T%26q=%q%26customid=1234567&from=sender&password=test1&smsc=lox24&text=test%20message&to=+49751234567&username=test1&coding=0)\n\n### Advice\nAdd to a DLR url custom parameter with internal message ID for proper DLR\nrequest processing. In our example that's a `customid` = 1234567.\n"
        },
        {
            "name": "notifications",
            "x-displayName": "Notifications",
            "description": "### Notifications\n\nThe event messaging system is a replacement for the outdated inbound sms and delivery report notification system (these\nold systems are considered obsolete, will not be improved, and are not recommended for use).\n\nThe event messaging system allows you to send information about events to URIs (http or email). You can customize the\nsystem to send notifications of one event to different URIs. You can also send different events to the same URI.\n\nTo configure the notifications, open the settings page (account.lox24.eu -> Settings -> Notifications), click \"Create\nwebhook\" and enter in the URI field the http address or e-mail where you want to receive notifications. By default, all\nevents will be sent to the specified URI. If you want to be notified only about certain events, check the box next to\nthe events you want to be notified about.\n\nIf additional webhooks are required, repeat the instructions above. A maximum of five individual notification settings\ncan be created.\n\nThe event information will be transmitted in the JSON object format, which has the same format for all events and\ndiffers only in the data of the event itself.\n\n#### Structure of the event object\n\n| Field                | Type              | Description                               |\n|----------------------|-------------------|-------------------------------------------|\n| id                   | string (36 chars) | Event ID                                  |\n| api_version          | string            | Version of the data structure             |\n| name                 | string            | Event name, e.g. 'sms.delivery'           |\n| created_at           | integer           | Unix timestamp when event was created     |\n| attempt_total        | integer           | Total number of attempts (re-tries).      |\n| attempt_number       | integer           | Current number of attempt                 |                                     |\n| data                 | object            | Event's data (see list of events)         |\n| notification_task_id | string (36 chars) | Notification task ID (request identifier) |\n\n##### Event example\n\n```json\n{\n    \"id\": \"a3cd6e19-8af2-498d-ad07-c7840f1b4ac8\",\n    \"data\": {\n        \"id\": \"d6c12ac4-cc7d-11ec-b6da-525400bbb7dc\",\n        \"key_id\": 8207,\n        \"dlr_code\": 1,\n        \"status_code\": 100,\n        \"callback_data\": \"some data from user's request here\"\n    },\n    \"name\": \"sms.delivery\",\n    \"created_at\": 1653378603,\n    \"api_version\": \"2022-05-25\",\n    \"attempt_number\": 1,\n    \"attempts_total\": 4,\n    \"notification_task_id\": \"3378de83-de66-4de8-9d29-2b10d41bb641\"\n}\n```\n\n#### Event transport types\n\nThe notification system can send event information in two ways (transports): HTTPS and E-mail.\n\n##### HTTP\n\nThe json is sent as the body of the http request with the header ```Content-Type: application/json```.\nThe service will continue to attempt to send the request (at increasing time intervals) until it receives a response\nwith a status code >= 200 and < 300 or the number of attempts reaches the value specified in the `attempt_number` field.\n\n**NOTE**: The response of your endpoint script is not taken into account therefore you have to monitor your script. In\nthe case of malfunctions there is no notification by us.\n\n##### E-mail\n\nThe json is sent as the email's body with a single attempt from an email `no-reply@lox24.eu`.\n\n##### Service hosts and IP adresses\n\nAlerts are sent from the following hosts `162.55.80.140` and `162.55.80.141`. If you use a firewall,\ndon't forget to whitelist those IP addresses.\n\n#### Events list\n\n- [sms.delivery](/api/webhooks/webhookssms-delivery-webhook/)\n- [sms.delivery.dryrun](/api/webhooks/webhookssms-delivery-dryrun-webhook/)\n- [sms.incoming](/api/webhooks/smsincomingwebhook/)\n- [sms.email.parsing.success](/api/webhooks/webhookssms-email-parsing-success/)\n- [sms.email.parsing.fail](/api/webhooks/webhookssms-email-parsing-fail/)\n- [bulk.email.parsing.success](/api/webhooks/bulkemailparsingsuccesswebhook/)\n- [bulk.email.parsing.fail](/api/webhooks/bulkemailparsingfailwebhook/)\n- [fraud-check.done](/api/webhooks/fraudcheckdonewebhook/)\n"
        },
        {
            "name": "inbound-and-reply-sms",
            "x-displayName": "Inbound SMS and Reply-SMS",
            "description": "### Inbound SMS and Reply-SMS:\n\nYou can get incoming SMS (mobile originated - SMS-MO) sent via push to a script on your web server. You can receive incoming SMS for your individual inbound number. You can order it in your web account under Settings and Inbound number. You can also receive free replies to Economy SMS sent to Germany.\n\nYou can specify an individual endpoint (HTTPS or mail) for each phone number. Alternatively, you can receive all incoming messages using our [Event Notification Service](/info/notifications/).\n\nPush service means that our gateway sends HTTP requests with data to a script on your host. On response with HTTP status code < `200` or >= `300`, service will do additional attempts but maximum three. The response of your script is not taken into account, so you need to monitor your script. In case of malfunctions we will not notify you. You can enter the URL for all push services in your LOX24 web account page (Settings -> API settings). Alternatively, you can also receive info about incoming SMS by e-mail.\n\nInbound SMS are sent as HTTP GET with the parameters `sender_id` for the sender's phone number, `text` for the message text and `time` as time when message was sent in Unix timestamp format. For reply SMS to Economy SMS you also receive `uuid` as assignment to the initial SMS. For an inbound phone number, `phone` contains inbound (receiver) phone number and `id` contains the ID of the incoming SMS.\n\nInbound SMS by mail contains a JSON object with the same parameters.\n\n| Parameter |Type     |Description|\n|-----------|---------|-----------|\n| id        | integer |Inbound SMS identifier (not for Economy reply SMS) |\n| phone     | string  |Inbound phone number (not for Economy reply SMS) |\n| sender_id | string  |Sender's phone number of the incoming SMS                      |\n| text      | string  |Message text                                                 |\n| time      | integer |Time at which the SMS was received by LOX24                 |\n| uuid      | UUID    |ID of the message that a reply has come (only for Economy reply SMS) |\n"
        },
        {
            "name": "ssml-language-detection",
            "x-displayName": "SSML and language detection",
            "description": "### Voice language detection\n\nWhen voice_lang is null, the system automatically detects the voice language from message content using the patrickschur/language-detection library.\n\nSupported languages: English (`EN`), German (`DE`), French (`FR`), Italian (`IT`), Spanish (`ES`), Polish (`PL`), Dutch (`NL`), Romanian (`RO`), Portuguese (`PT`), Czech (`CS`), Hungarian (`HU`), Swedish (`SV`), Danish (`DA`), Finnish (`FI`), Slovak (`SK`), Croatian (`HR`), Turkish (`TR`), Russian (`RU`), Bulgarian (`BG`), Ukrainian (`UK`).\n\n### SSML Support\n\nThe API now supports a subset of [SSML (Speech Synthesis Markup Language)](https://en.wikipedia.org/wiki/Speech_Synthesis_Markup_Language) for advanced voice message formatting.\n\n#### Supported Features\n\n##### Available Tags\n- `<break>` - Insert pauses in speech\n- `<say-as>` - Control pronunciation of text\n\n#### Tag Specifications\n\n##### `<break>` Tag\n- **Purpose**: Add pauses between words or sentences\n- **Attributes**: `time` (e.g., \"1s\", \"500ms\")\n- **Pricing**: <0.5ms = 1 char, <1s = 2 chars, <1,5s = 3 chars, etc.\n\n##### `<say-as>` Tag\n- **Purpose**: Control how text is interpreted and spoken\n- **Supported Attributes**:\n  - `interpret-as=\"characters\"` - Spell out text character by character\n- **Note**: Currently only \"characters\" value is supported\n\n#### Usage\n\nWrap your message content with the `<speak>` root element:\n\n```xml\n<speak>\n  Your verification code is <say-as interpret-as=\"characters\">A1B2C3</say-as>.\n  <break time=\"1s\"/>\n  Please enter it now.\n</speak>\n"
        },
        {
            "name": "email-to-sms",
            "x-displayName": "Email to SMS",
            "description": "### Sending SMS by Email\n\nYou can send SMS messages by email in two different ways: sending a single SMS to a specific phone number, or sending an SMS to a group of phone numbers.\n\n#### Sending a Single SMS\n\nTo send a single SMS, the email should be formatted as follows:\n\n```\n{{user_id}}.{{api_key}}.{{phone}}.{{service_code}}.{{sender_id}}.{{text_source}}.{{encoding}}.{{max_sms_parts}}@mail2sms.lox24.eu\n```\n\n#### Sending to Multiple Phone Numbers (Group SMS)\n\nTo send an SMS to phone numbers from a specific group, use the following format:\n\n```\n{{user_id}}.{{api_key}}.{{group_id}}.{{service_code}}.{{sender_id}}.{{text_source}}.{{encoding}}.{{max_sms_parts}}@email2bulk.lox24.eu\n```\n\n##### Parameters:\n\n| Order | Label         | Description                                                                                                                                     |\n|-------|---------------|-------------------------------------------------------------------------------------------------------------------------------------------------|\n| 1     | user_id       | User Id (integer), identical to the login to LOX24                                                                                                                                        |\n| 2     | api_key       | \"Email2SMS\" API key from the API Key settings page (\"Settings\" -> \"API Settings\")                                                                      |\n| 3     | phone/group_id| For single SMS, this is the phone number in E.164 format without leading \"+\" (e.g. \"491701234567\"). For group SMS, this is the Group Id you can find in your web-account or request by API                 |\n| 4     | service_code  | Service code 'text2speech' or 'direct' (default)                                                                                                  |\n| 5     | sender_id     | Sender Id: an integer from 1 to 6 (default 1). Selection of the sender from the senders previously saved in the account (\"Settings\" -> \"Sender-IDs\")  If sender id wasn't found, then the default value is 'email2sms'.                 |\n| 6     | text_source   | Text source: 0 - subject and body (by default), 1 - subject only, 2 - body only                                                                              |\n| 7     | encoding      | An integer: 0 - normal GSM (default), 1 - unicode, 2 - auto-detecting (by the whole text from request)                                           |\n| 8     | max_sms_parts | An integer between 1 and 10. Default value is 1. There's a limit to the length of text when parsing the email. Extra characters are used for concatenation in messages longer than the standard limits. |\n\n#### Email Addresses Examples\n\n##### Group SMS Examples\n\n**Send SMS to phones by a group id = 12345 (minimum parameters)**\n\n```\n1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.12345@email2bulk.lox24.eu\n```\n\n**Send SMS to phones by a group id = 12345 with service 'direct'**\n\n```\n1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.12345.direct@email2bulk.lox24.eu\n```\n\n**Send SMS to phones by a group id = 12345 with service 'direct' and with sender id = 2**\n\n```\n1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.12345.direct.2@email2bulk.lox24.eu\n```\n\n**Send SMS to phones by a group id = 12345 with service 'direct', with sender id = 2, and text from email's subject**\n\n```\n1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.12345.direct.2.1@email2bulk.lox24.eu\n```\n\n**Send SMS to phones by a group id = 12345 with service 'direct', with sender id = 2, with text from email's subject, and encoding auto-detection**\n\n```\n1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.12345.direct.2.1.2@email2bulk.lox24.eu\n```\n\n##### Single SMS Examples\n\n**Send SMS to a single phone number \"+1234567890\" (minimum parameters)**\n\n```\n1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.1234567890@mail2sms.lox24.eu\n```\n\n**Send SMS to a single phone number \"+1234567890\" with service 'direct'**\n\n```\n1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.1234567890.direct@mail2sms.lox24.eu\n```\n\n**Send SMS to a single phone number \"+1234567890\" with service 'direct' and sender id = 2**\n\n```\n1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.1234567890.direct.2@mail2sms.lox24.eu\n```\n\n**Send SMS to a single phone number \"+1234567890\" with service 'direct', with sender id = 2, and text from email's subject**\n\n```\n1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.1234567890.direct.2.1@mail2sms.lox24.eu\n```\n\n**Send SMS to a single phone number \"+1234567890\" with service 'direct', with sender id = 2, with text from email's subject, and encoding auto-detection**\n\n```\n1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.1234567890.direct.2.1.2@mail2sms.lox24.eu\n```\n\n#### Replies about errors\n\n\nMost errors are ignored to reduce unwanted flooding, including authentication-related errors. But for some errors, the system sends a JSON response with an error description.\n\n**Error JSON**\n\n| Property    | Description                                 |\n|-------------|---------------------------------------------|\n| field       | Error field in request                      |\n| description | Error description                           |\n| request     | EMail address to which the request was sent |\n\n##### Example\n{\"field\":\"group_id\",\"description\":\"Group with id = 12345 was not found!\",\"request\":\"1234567.e3f3a759b6677959b6ebfcxxxxxxxxxx.12345.direct@email2bulk.lox24.eu\"}\n\n#### Email Forwarding Warning\n\nPlease note that the mail gateway does not work with email forwarding. The email must be sent directly to the Mail2SMS gateway mailbox.\n"
        },
        {
            "name": "release-notes",
            "x-displayName": "Release notes",
            "description": "Release Notes tell you what's new in API. As always, we welcome your [feedback](mailto:berlin@lox24.eu).\n\n### 2.24 (2025-12-10)\n\n#### Added\n\n- New property `attempts_count_max` for SMS endpoint: Control the maximum number of delivery attempts for voice services (text2speech, text2speech_ssml). Accepts values 1, 2, or 3 for voice services, allowing fine-grained control over call retry behavior. Must be null for standard SMS services.\n\n### 2.23 (2025-11-20)\n\n#### Changed\n\n- Expanded voice message language support from 5 to 20 languages. Users can now set `voice_lang` to any of the following European languages: EN, DE, FR, IT, ES, PL, NL, RO, PT, CS, HU, SV, DA, FI, SK, HR, TR, RU, BG, UK.\n- Improved automatic language detection. Switched from phone prefix-based to AI-powered content analysis using message text when `voice_lang` is null.\n\n### 2.22 (2025-09-15)\n\n#### Added\n\n- New webhook events for phone subscription management: `phone.subscribe` and `phone.unsubscribe`\n- Added IP address v6 support for the endpoint `POST /fraud-checks`\n\n\n### 2.21 (2025-09-10)\n\n#### Added\n\n- New Endpoint: `/blocked_numbers`: added a dedicated REST API for managing blocked phone numbers in SMS campaigns. The endpoint provides complete CRUD functionality for maintaining a centralized blocklist of phone numbers that should not receive SMS messages.\n\n### 2.20 (2025-08-20)\n\n#### Added\n\n- Response headers - All API responses now include a unique `X-LOX24-REQUEST-ID` header for support and tracking purposes\n\n\n### 2.19 (2025-08-15)\n\n#### Changed\n\n- OpenAPI specification reorganized - Major restructuring with multiple semantic errors fixed\n- Documentation rendering - Replaced dynamic OpenAPI JSON browser rendering with static compiled HTML pages\n\n#### Added\n\n- Webhooks documentation - Added comprehensive webhooks description and implementation details\n- New webhook events for Email to SMS parsing: `sms.email.parsing.success` and `sms.email.parsing.fail`\n\n### 2.18 (2024-10-03)\n\n#### New\n\n- Added the [Email to single SMS feature](/info/email-to-sms/)\n\n\n### 2.17 (2023-06-28)\n\n#### New\n\n- SMS and SMS Bulk property `is_text_deleted` of endpoint [Simulate sending an SMS (for testing)](/api/operations/api_sms_post_collection/) and [Create the Bulk](/api/operations/api_bulks_post_collection/)\n- [Email2Bulk's property `max_sms_parts` of endpoint](/info/email-to-sms/)\n- Notifications per events `bulk.email.parsing.success` and `bulk.email.parsing.fail`\n- Added global property `is_text_deleted` to the endpoint `GET /me`.\n\n### 2.16 (2023-01-09)\n\n#### New\n\n- Added filter by the property `callback_data` of endpoint [Retrieves the collection of SMS](/api/operations/api_sms_get_collection/)\n- [Email2Bulk's property `max_sms_parts` of endpoint](/info/email-to-sms/)\n- Notifications per events `bulk.email.parsing.success` and `bulk.email.parsing.fail`\n\n\n### 2.15 (2022-10-25)\n\n#### New\n\n- Added an address property to [Fraud Detection API](/info/fraud-detection/)\n\n\n\n### 2.14 (2022-08-17)\n\n#### New\n\n- Added Phone's read-only properties `subscribed_at`, `unsubscribed_at` and `unsubscribed_reason` (see [Phone API](/api/operations/api_phones_get_item/)\n\n\n### 2.13 (2022-08-01)\n\n#### New\n\n- Added [Fraud Detection API](/info/fraud-detection/)\n-\n\n### 2.12 (2022-05-05)\n\n#### New\n\n- Added the [Email to SMS Bulk feature](/info/email-to-sms/)\n\n### 2.11 (2022-03-31)\n\n#### New\n\n- Added the short links functionality\n  - [Short link campaigns](/info/campaigns/)\n  - [Short links lists](/info/links/)\n  - [Requests by short links](/info/requests/)\n  - [Click rates statistics](/info/click-rate/)\n\n\n### 2.10 (2021-09-23)\n\n#### New\n\n- Added the endpoint [Delete the Incoming SMS](/api/operations/api_incomings_delete_item/)\n\n#### Fixes\n- The Incoming SMS list by default is ordered by decreasing values of the ```received_at``` field.\n\n\n### 2.9 (2021-05-06)\n\n#### New\n\n- Added the ability to authenticate using the new version of the API key\n  with a single header ```X-LOX24-AUTH-TOKEN```, header ```X-LOX24-AUTH-CLIENT-ID``` is deprecated and not recommended for use.\n\n\n### 2.8.1 (2021-04-01)\n\n#### New\n\n- Voice messages. Added ```voice_lang``` property to SMS and Bulk request/response objects.\n\n### 2.8.0 (2021-02-21)\n\n#### New\n\n- Temporary block IP address after multiple invalid authentication attempts.\n\n### 2.7.1 (2021-02-16)\n\n#### Fixes\n- Fixed request description in the [Create the Bulk](/api/operations/api_bulks_post_collection/) and [Simulate creating a Bulk (for testing)](/api/operations/api_bulks_post_dryrun_collection/)\n\n### 2.7 (2020-07-17)\n\n#### New\n\n- Created [Kannel API emulation](/info/kannel/).\n\n### 2.6 (2020-06-23)\n\n#### New\n\n- Added ability to send SMS with additional data which will be send back to DLR endpoint.\n\n### 2.5 (2020-06-10)\n\n#### Developer\n\n- Added sample code per Phones and Groups endpoints.\n\n### 2.4 (2020-05-29)\n\n#### Developer\n\n- Added sample code in GoLang, Java and Python.\n\n### 2.3 (2020-05-25)\n\n#### New\n\n- Added boolean filter of Bulks list  `GET /bulks` by the property `is_dryrun`.\n- Added timestamp property `balance_changed_at` to the endpoint `GET /me`.\n\n### 2.2 (2020-05-19)\n\n#### New\n\n- Created endpoints `GET /incomings` and `GET /incomings/{id}` to retrieve info about incoming and related SMS.\n- Enabled DLR report webhook on `POST /sms/dryrun` request.\n- Added *exact* filter by `key_id` on `GET /bulks` and `GET /sms`.\n\n\n#### Developer\n- Added sample code in PHP, C# and Javascript per `/sms`, `/bulks` and `/incomings` endpoints.\n- Added section [Inbound SMS and Reply-SMS](/info/inbound-and-reply-sms/) about incoming SMS.\n\n#### Fixed\n\n- Fixed a bug related to storing the ip address, date and time of the last API key use\n\n\n### 2.1 (2020-03-18)\n\n#### New\n\n- The feature that helps you make [bulk sms](/info/bulks/) in just one HTTP request:\n  - with text template and contact groups\n  - preliminary calculation of the cost of bulk SMS\n  - fast server response and asynchronous processing\n  - bulk SMS cancellation option even during processing\n- New endpoint POST /groups/{id}/phones/batch\n  - combine multiple POST /groups/{id}/phones to an one request\n- Implemented filters `GET /sms` by the property `bulk`\n- Implemented filters `GET /bulks` by the property `source`\n- Added API key ID info to `sms` and `bulks` responses\n\n#### Fixed\n\n- Added property `price` to SMS response object\n- Authorization parameters description in the API documentation\n\n### 2.0-beta (2019-12-15)\n\n#### New\n\n- API v2.0 has been developed in accordance with industry standards to make integration as easy as possible. In addition, you can now transmit large quantities of SMS with one query and retrieve detailed information about the messages at any time.\n\n- The extensive group functionality allows you to manage your mailing lists in our high-performance cloud and thus save your own resources. All this is still compliant with European data protection standards and the German Telecommunications Act.\n\n#### Developer\n\nYou can find the new API description at https://doc.lox24.eu/\n"
        }
    ],
    "paths": {
        "/bulks": {
            "get": {
                "operationId": "api_bulks_get_collection",
                "tags": [
                    "bulks"
                ],
                "responses": {
                    "200": {
                        "description": "bulks collection",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "hydra:member": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/schema.bulks.jsonld-bulk_read_status"
                                            }
                                        },
                                        "hydra:totalItems": {
                                            "$ref": "#/components/schemas/hydra.totalItems"
                                        },
                                        "hydra:view": {
                                            "$ref": "#/components/schemas/hydra.view"
                                        },
                                        "hydra:search": {
                                            "$ref": "#/components/schemas/hydra.search"
                                        }
                                    },
                                    "required": [
                                        "hydra:member"
                                    ]
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/schema.bulks-bulk_read_status"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Retrieves the collection of Bulks",
                "description": "Getting the list of bulks from the postbox, ordered by the field `created_at` in descending order. The postbox contains all sent, not sent and terminated SMS.  You can also optionally sort according to the price or the time of transmit to the network operator. You also have the option of transferring different search criteria to limit the output of postbox's messages.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/filter.common.page"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.uuid.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.uuid.exact"
                    },
                    {
                        "$ref": "#/components/parameters/order.common.created_at"
                    },
                    {
                        "$ref": "#/components/parameters/order.messages.delivery_at"
                    },
                    {
                        "$ref": "#/components/parameters/order.common.processed_at"
                    },
                    {
                        "$ref": "#/components/parameters/order.bulks.msg_total_count"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.text.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.sender_id.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.bulks.status_code.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.bulks.status_code.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.created_at.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.created_at.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.delivery_at.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.delivery_at.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.processed_at.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.processed_at.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.bulks.msg_total_count.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.bulks.msg_total_count.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.source.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.source.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.key_id.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.key_id.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.is_unicode.boolean"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.is_dryrun.boolean"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.is_unicode.exists"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X GET https://api.lox24.eu/bulks \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/bulks?_order[created_at]=desc\";\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; // or \"application/ld+json\"\n            httpWebRequest.Method = \"GET\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"bulks collection response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/bulks?sender_id=testsender\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.bulks;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetBulksCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\n        var url = \"https://api.lox24.eu/bulks?_order[created_at]=desc\";\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"bulks collection response\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n            } else {\n                System.out.println(\"Error: something went wrong, code(\" + httpResponse.statusCode() + \")\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar query = \"created_at[gte]=1589713050&_order[created_at]=desc\";\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/bulks?' + query,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - bulks collection response');\n        res.on('data', d => {process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    }  else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\n\nreq.end();\n\n\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$uri = 'https://api.lox24.eu/bulks';\n\n$filters = [\n    'sender_id' => 'test',\n    'created_at' => [\n        'gte' => 1588777845\n    ],\n    'page' => 1,\n    '_order' => [\n        'created_at' => 'desc'\n    ],\n];\n\n$uri .= $filters ? '?' . http_build_query($filters) : '';\n$curl = curl_init();\n\necho $uri;\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nurl = \"https://api.lox24.eu/bulks?_order[created_at]=desc\"\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - bulks collection response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n",
                        "label": "Python"
                    }
                ]
            },
            "post": {
                "operationId": "api_bulks_post_collection",
                "tags": [
                    "bulks"
                ],
                "responses": {
                    "201": {
                        "description": "bulks resource created",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.bulks.jsonld-bulk_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.bulks-bulk_read"
                                }
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/components/responses/400-bad-request"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "422": {
                        "$ref": "#/components/responses/422-unprocessable-entity"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Create the Bulk",
                "description": "Create a bulk SMS campaign by sending a POST request with message details and recipient information.",
                "parameters": [],
                "requestBody": {
                    "description": "The new bulks resource",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/schema.bulks-bulk_write"
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X POST https://api.lox24.eu/bulks \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n   -d '{\n\t\"sender_id\": \"testbulk\",\n    \"text\": \"test bulk text\",\n    \"service_code\": \"direct\",\n    \"phones\": [\"+49751234567\"],\n    \"msg_groups\": [7117],\n    \"delivery_at\": 1573724611,\n    \"is_unicode\": true,\n    \"source\": 1234,\n    \"voice_lang\": \"DE\"\n    }'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json;\nusing Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/bulks\";\n\n            var data = new {\n                sender_id = \"My Sender\",\n                text = \"Test message!\",\n                service_code = \"direct\",\n                phones = new string[]{\"+49751234567\", \"+49751234568\"},\n                msg_groups = new int[]{14514},\n                delivery_at = 1573724611,\n                is_unicode = true,\n                voice_lang = \"DE\"\n            };\n\n            string postdata = JsonConvert.SerializeObject(data);\n\n            Console.WriteLine(\"Post data: {0}\", postdata);\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.ContentType = \"application/json; charset=utf-8\";\n            httpWebRequest.Accept = \"application/json\"; // or application/ld+json\n            httpWebRequest.Method = \"POST\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))\n            {\n                streamWriter.Write(postdata);\n                streamWriter.Flush();\n                streamWriter.Close();\n            }\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n\n                    if(resp.StatusCode == HttpStatusCode.Created) {\n                        Console.WriteLine(\"Success:{0} {1}\", (int)resp.StatusCode, \"bulks resource created\");\n                    } else {\n                        Console.WriteLine(\"Error: wrong response code {0} on create bulk\", (int)resp.StatusCode);\n                    }\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.BadRequest: // 400\n                        Console.WriteLine(\"Error:400 Invalid input\");\n                        break;\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"bytes\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"POST\"\n\tconst URL = \"https://api.lox24.eu/bulks\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tpayload := map[string]interface{}{\n\t\t\"sender_id\":    \"testbulk\",\n\t\t\"text\":         \"test bulk text\",\n\t\t\"service_code\": \"direct\",\n\t\t\"phones\":       []string{\"+49751234567\"},\n\t\t\"msg_groups\":   []int{7117},\n\t\t\"delivery_at\":  1593724611,\n\t\t\"is_unicode\":   true,\n\t\t\"source\":       1234,\n\t\t\"voice_lang\":   \"DE\",\n\t}\n\n\tjsonPayload, _ := json.Marshal(payload)\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, bytes.NewBuffer(jsonPayload))\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Content-Type\", \"application/json\")\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 201:\n\t\tfmt.Println((string(body)))\n\tcase 400:\n\t\tfmt.Println(\"Error: code = 400 - Invalid input\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.bulks;\n\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class PostBulksCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/bulks\";\n\n        var json = new JSONObject();\n        json.put(\"sender_id\", \"My Sender\");\n        json.put(\"text\", \"Test message!\");\n        json.put(\"service_code\", \"direct\");\n        json.put(\"phones\", new String[]{\"+49751234567\", \"+49751234568\", \"+49751234569\"});\n        json.put(\"msg_groups\", new int[]{7116, 7117});\n        json.put(\"delivery_at\", 1573724611);\n        json.put(\"is_unicode\", true);\n        json.put(\"voice_lang\", \"DE\");\n\n        var postData = json.toString();\n\n        System.out.println(\"Post data: \" + postData);\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Content-Type\", \"application/json; charset=utf-8\")\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .POST(HttpRequest.BodyPublishers.ofString(postData))\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_CREATED) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"bulks resource created\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode() + \" on create bulk\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_BAD_REQUEST: // 400\n                        System.out.println(\"Error:400 Invalid input\");\n                        break;\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar postObj = {\n    sender_id: 'My Sender',\n    text: 'Test message',\n    service_code: 'direct',\n    phones: ['+49751234567', '+344354634'],\n    msg_groups: [7117],\n    delivery_at: 1573724611,\n    is_unicode: true,\n    voice_lang: 'DE',\n};\n\nvar postdata = JSON.stringify(postObj);\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/bulks',\n    method: 'POST',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'Content-Length': postdata.length,\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 201) {\n        console.log(\"Success: code = 201 - bulks resource created\");\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 400) {\n        console.log(\"Error: code = 400 - Invalid input\");\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.write(postdata);\nreq.end();\n\n\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$uri = 'https://api.lox24.eu/bulks';\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$body = [\n    'sender_id' => 'testbulk',\n    'text' => 'test bulk text',\n    'service_code' => 'direct',\n    'phones' => ['+49751234567'],\n    'msg_groups' => [7117],\n    'delivery_at' => 1573724611,\n    'is_unicode' => true,\n    'source' => 1234,\n    'voice_lang' => 'DE',\n];\n\nif(!$body = json_encode($body)) {\n    die('JSON encoding error!');\n}\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_POST => true,\n    CURLOPT_URL => $uri,\n    CURLOPT_POSTFIELDS => $body,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n        'Content-Type: application/json',\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 30,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(201 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nurl = \"https://api.lox24.eu/bulks\"\n\ndata = {\n    'sender_id': \"My Sender\",\n    'text' : \"Test message\",\n    'service_code' : \"direct\",\n    'phones': [\"+49751234567\", \"+49751234568\"],\n    'msg_groups': [14514],\n    'delivery_at': 1573724611,\n    'is_unicode': True,\n    'voice_lang' : \"DE\"\n}\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'Content-Type': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\nprint(\"Post data: \", json.dumps(data, indent=4))\n\ntry:\n    # timeout is 100 seconds\n    res = requests.post(url, headers=headers, json=data, timeout=100)\n    if res.status_code != 201: # Created\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - bulks resource created')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 400:\n        print(\"Error:400 Invalid input\")\n    elif res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(\"Response: \", json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/bulks/dryrun": {
            "post": {
                "operationId": "api_bulks_post_dryrun_collection",
                "tags": [
                    "bulks"
                ],
                "responses": {
                    "201": {
                        "description": "bulks resource created",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.bulks.jsonld-bulk_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.bulks-bulk_read"
                                }
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/components/responses/400-bad-request"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "422": {
                        "$ref": "#/components/responses/422-unprocessable-entity"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Simulate creating a Bulk (for testing)",
                "description": "This endpoint is used for test purposes to emulate the creating of an Bulk without actually creating SMS and passing them to the network operator for a fee.",
                "parameters": [],
                "requestBody": {
                    "description": "The new bulks resource",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/schema.bulks-bulk_write"
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X POST https://api.lox24.eu/bulks/dryrun \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n   -d '{\n\t\"sender_id\": \"testbulk\",\n    \"text\": \"test bulk text\",\n    \"service_code\": \"direct\",\n    \"phones\": [\"+49751234567\"],\n    \"msg_groups\": [7117],\n    \"delivery_at\": 1573724611,\n    \"is_unicode\": true,\n    \"source\": 1234,\n    \"voice_lang\": \"DE\"\n    }'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json;\nusing Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/bulks/dryrun\";\n\n            var data = new {\n                sender_id = \"My Sender\",\n                text = \"Test message!\",\n                service_code = \"direct\",\n                phones = new string[]{\"+49751234567\", \"+49751234568\"},\n                msg_groups = new int[]{14514},\n                delivery_at = 1573724611,\n                is_unicode = true,\n                voice_lang = \"DE\"\n            };\n\n            string postdata = JsonConvert.SerializeObject(data);\n\n            Console.WriteLine(\"Post data: {0}\", postdata);\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.ContentType = \"application/json; charset=utf-8\";\n            httpWebRequest.Accept = \"application/json\"; // or application/ld+json\n            httpWebRequest.Method = \"POST\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))\n            {\n                streamWriter.Write(postdata);\n                streamWriter.Flush();\n                streamWriter.Close();\n            }\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n\n                    if(resp.StatusCode == HttpStatusCode.Created) {\n                        Console.WriteLine(\"Success:{0} {1}\", (int)resp.StatusCode, \"bulks resource created\");\n                    } else {\n                        Console.WriteLine(\"Error: wrong response code {0} on create bulk\", (int)resp.StatusCode);\n                    }\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.BadRequest: // 400\n                        Console.WriteLine(\"Error:400 Invalid input\");\n                        break;\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"bytes\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"POST\"\n\tconst URL = \"https://api.lox24.eu/bulks/dryrun\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tpayload := map[string]interface{}{\n\t\t\"sender_id\":    \"testbulk\",\n\t\t\"text\":         \"test bulk text\",\n\t\t\"service_code\": \"direct\",\n\t\t\"phones\":       []string{\"+49751234567\"},\n\t\t\"msg_groups\":   []int{7117},\n\t\t\"delivery_at\":  1593724611,\n\t\t\"is_unicode\":   true,\n\t\t\"source\":       1234,\n\t\t\"voice_lang\":   \"DE\",\n\t}\n\n\tjsonPayload, _ := json.Marshal(payload)\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, bytes.NewBuffer(jsonPayload))\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Content-Type\", \"application/json\")\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 201:\n\t\tfmt.Println((string(body)))\n\tcase 400:\n\t\tfmt.Println(\"Error: code = 400 - Invalid input\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.bulks;\n\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class PostDryRunBulksCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/bulks/dryrun\";\n\n        var json = new JSONObject();\n        json.put(\"sender_id\", \"My Sender\");\n        json.put(\"text\", \"Test message!\");\n        json.put(\"service_code\", \"direct\");\n        json.put(\"phones\", new String[]{\"+49751234567\", \"+49751234568\", \"+49751234569\"});\n        json.put(\"msg_groups\", new int[]{7116, 7117});\n        json.put(\"delivery_at\", 1573724611);\n        json.put(\"is_unicode\", true);\n        json.put(\"voice_lang\", \"DE\");\n\n        var postData = json.toString();\n\n        System.out.println(\"Post data: \" + postData);\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Content-Type\", \"application/json; charset=utf-8\")\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .POST(HttpRequest.BodyPublishers.ofString(postData))\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_CREATED) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"bulks resource created\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode() + \" on create bulk\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_BAD_REQUEST: // 400\n                        System.out.println(\"Error:400 Invalid input\");\n                        break;\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar postObj = {\n    sender_id: 'My Sender',\n    text: 'Test message',\n    service_code: 'direct',\n    phones: ['+49751234567', '+344354634'],\n    msg_groups: [7117],\n    delivery_at: 1573724611,\n    is_unicode: true,\n    voice_lang: 'DE',\n};\n\nvar postdata = JSON.stringify(postObj);\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/bulks/dryrun',\n    method: 'POST',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'Content-Length': postdata.length,\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 201) {\n        console.log(\"Success: code = 201 - bulks resource created\");\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 400) {\n        console.log(\"Error: code = 400 - Invalid input\");\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.write(postdata);\nreq.end();\n\n\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$uri = 'https://api.lox24.eu/bulks/dryrun';\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$body = [\n    'sender_id' => 'testbulk',\n    'text' => 'test bulk text',\n    'service_code' => 'direct',\n    'phones' => ['+49751234567'],\n    'msg_groups' => [7117],\n    'delivery_at' => 1573724611,\n    'is_unicode' => true,\n    'source' => 1234,\n    'voice_lang' => 'DE',\n];\n\nif(!$body = json_encode($body)) {\n    die('JSON encoding error!');\n}\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_POST => true,\n    CURLOPT_URL => $uri,\n    CURLOPT_POSTFIELDS => $body,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n        'Content-Type: application/json',\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 30,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(201 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nurl = \"https://api.lox24.eu/bulks/dryrun\"\n\ndata = {\n    'sender_id': \"My Sender\",\n    'text' : \"Test message\",\n    'service_code' : \"direct\",\n    'phones': [\"+49751234567\", \"+49751234568\"],\n    'msg_groups': [14514],\n    'delivery_at': 1573724611,\n    'is_unicode': True,\n    'voice_lang' : \"DE\"\n}\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'Content-Type': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\nprint(\"Post data: \", json.dumps(data, indent=4))\n\ntry:\n    # timeout is 100 seconds\n    res = requests.post(url, headers=headers, json=data, timeout=100)\n    if res.status_code != 201: # Created\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - bulks resource created')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 400:\n        print(\"Error:400 Invalid input\")\n    elif res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(\"Response: \", json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/bulks/{id}": {
            "get": {
                "operationId": "api_bulks_get_item",
                "tags": [
                    "bulks"
                ],
                "responses": {
                    "200": {
                        "description": "bulks resource",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.bulks.jsonld-bulk_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.bulks-bulk_read"
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Retrieves the entry of Bulk",
                "description": "Getting the single Bulk entity by the ID (`uuid`). If Bulk not found then HTTP code 404 will response.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.bulks.id"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X GET https://api.lox24.eu/bulks/da0fa78c-4699-11ea-a637-96000028b339 \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            var id = \"343c785b-8567-11ea-aa81-96000028b339\";\n\n            string url = \"https://api.lox24.eu/bulks/\" + id;\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; //or application/ld+json\n            httpWebRequest.Method = \"GET\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"bulks resource response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/bulks/981f6497-a03e-11ea-b2e9-b8ca3a65338c\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.bulks;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetBulksItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var id = \"343c785b-8567-11ea-aa81-96000028b339\";\n\n        var url = \"https://api.lox24.eu/bulks/\" + id;\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"bulks resource created\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode() + \" on create bulk\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar id = '34153580-982d-11ea-aa81-96000028b339';\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/bulks/' + id,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - bulks resource response');\n        res.on('data', d => { process.stdout.write(d)})\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Resource not found\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\n\nreq.end();\n\n\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$id = '11111111-2222-3333-4444-55555555555';\n$uri = 'https://api.lox24.eu/bulks/' . $id;\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data ' . var_export($data, true);\n} elseif(404 === $code) {\n    echo \"Bulk with id = {$id} not found!\";\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\nbulk_id = \"343c785b-8567-11ea-aa81-96000028b339\"\n\nurl = f'https://api.lox24.eu/bulks/{bulk_id}'\n\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - bulks resource response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n",
                        "label": "Python"
                    }
                ]
            },
            "delete": {
                "operationId": "api_bulks_delete_item",
                "tags": [
                    "bulks"
                ],
                "responses": {
                    "204": {
                        "$ref": "#/components/responses/204-deleted"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Delete a Bulk",
                "description": "Remove the Bulk entity by the ID . Endpoint response doesn't contains the body and has HTTP code 204 if SMS was removed or 404 if it doesn't exists. Attention. The Bulk is also deleted from the itemised bill. Later complaints are therefore excluded due to lack of traceability.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "Bulk ID",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string"
                        },
                        "style": "simple",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X DELETE https://api.lox24.eu/bulks/da0fa78c-4699-11ea-a637-96000028b339 \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\n            var id = \"851b600d-901e-11ea-aa81-96000028b339\";\n            string url = \"https://api.lox24.eu/bulks/\" + id;\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\";\n            httpWebRequest.Method = \"DELETE\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    if(resp.StatusCode == HttpStatusCode.NoContent) { //204\n                        Console.WriteLine(\"Success: bulk was deleted\");\n                    } else {\n                        Console.WriteLine(\"Error: something went wrong, code({0})\", respCode);\n                        Stream respStream = resp.GetResponseStream();\n                        using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                        {\n                            string responseText = sr.ReadToEnd();\n\n                            JObject parsed = JObject.Parse(responseText);\n\n                            foreach (var pair in parsed)\n                            {\n                                Console.WriteLine(\"{0}: {1}\", pair.Key, pair.Value);\n                            }\n                        }\n                    }\n\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"DELETE\"\n\tconst URL = \"https://api.lox24.eu/bulks/981f6497-a03e-11ea-b2e9-b8ca3a65338c\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tswitch res.StatusCode {\n\tcase 204:\n\t\tfmt.Println(\"Bulk and related sms was deleted!\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.bulks;\n\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class DeleteBulksItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\n        var id = \"851b600d-901e-11ea-aa81-96000028b339\";\n        var url = \"https://api.lox24.eu/bulks/\" + id;\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .DELETE()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_NO_CONTENT) {\n                System.out.println(\"Success: bulk was deleted\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: something went wrong \" + httpResponse.statusCode());\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n                JSONObject parsed = new JSONObject(httpResponse.body());\n\n                parsed.keys().forEachRemaining(jsonKey -> System.out.println(jsonKey + \":\" + parsed.get(jsonKey)));\n\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar id = '20f39273-0566-11ea-a637-96000028b339';\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/bulks/' + id,\n    method: 'DELETE',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 204) {\n        console.log(\"Success: code = 204 - bulks resource deleted\");\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Resource not found\");\n    }  else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\n\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$id = '11111111-2222-3333-4444-55555555555';\n$uri = 'https://api.lox24.eu/bulks/' . $id;\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_CUSTOMREQUEST => 'DELETE',\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\nif(204 === $code) {\n    echo \"Bulk with id = {$id} was deleted!\";\n} elseif(404 === $code) {\n    echo \"Bulk with id = {$id} not found!\";\n} else {\n    $data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nbulk_id = \"851b600d-901e-11ea-aa81-96000028b339\"\n\nurl = f'https://api.lox24.eu/bulks/{bulk_id}'\n\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.delete(url, headers=headers, timeout=100)\n    if res.status_code != 204: # No Content\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - bulk was deleted')\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error: code = 404 -  Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/bulks/{id}/cancel": {
            "put": {
                "operationId": "api_bulks_put_cancel_item",
                "tags": [
                    "bulks"
                ],
                "responses": {
                    "200": {
                        "description": "bulks resource updated",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.bulks.jsonld-bulk_read_status"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.bulks-bulk_read_status"
                                }
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/components/responses/400-bad-request"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "422": {
                        "$ref": "#/components/responses/422-unprocessable-entity"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Cancel the Bulk processing",
                "description": "Cancel Bulk's processing if it has `status_code = 0` (New) or `status_code = 5` and related to the Bulk messages with `is_sent = False`",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.bulks.id"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X PUT https://api.lox24.eu/bulks/da0fa78c-4699-11ea-a637-96000028b339/cancel \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string id = \"984af866-902e-11ea-aa81-96000028b339\";\n            string url = \"https://api.lox24.eu/bulks/\" + id + \"/cancel\";\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000; //this can cause issues which is why we are manually setting this\n            httpWebRequest.Accept = \"application/json\";\n            httpWebRequest.Method = \"PUT\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    if(resp.StatusCode == HttpStatusCode.OK) {\n                        Console.WriteLine(\"Success: bulk {0} was canceled!\", id);\n                    } else {\n                        Console.WriteLine(\"Error: bulk {0} wasn't canceled, code = {0}\", (int)resp.StatusCode);\n                    }\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"PUT\"\n\tconst URL = \"https://api.lox24.eu/bulks/52a84594-9a7b-11ea-b2e9-b8ca3a65338c/cancel\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.bulks;\n\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class PutCancelBulksItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var id = \"343c785b-8567-11ea-aa81-96000028b339\";\n        var url = \"https://api.lox24.eu/bulks/\" + id + \"/cancel\";\n\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .PUT(HttpRequest.BodyPublishers.noBody())\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"bulks resource updated\");\n\n                JSONObject parsed = new JSONObject(httpResponse.body());\n\n                parsed.keys().forEachRemaining(jsonKey -> System.out.println(jsonKey + \":\" + parsed.get(jsonKey)));\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode() + \" on update bulks\");\n\n                switch (httpResponse.statusCode()) {\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar id = '4897749e-982d-11ea-aa81-96000028b339';\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/bulks/' + id + '/cancel',\n    method: 'PUT',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log(\"Success: code = 204 - bulks resource processing canceled\");\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Resource not found\");\n    }  else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\n\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$id = '11111111-2222-3333-4444-55555555555';\n$uri = 'https://api.lox24.eu/bulks/' . $id  . '/cancel';\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_CUSTOMREQUEST => 'PUT',\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo \"Bulk with id = {$id} was canceled: \" . var_export($data, true);\n} elseif(404 === $code) {\n    echo \"Bulk with id = {$id} not found!\";\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nbulk_id = \"343c785b-8567-11ea-aa81-96000028b339\"\n\nurl = f'https://api.lox24.eu/bulks/{bulk_id}/cancel'\n\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.put(url, headers=headers, timeout=100)\n    if res.status_code != 200: # Ok\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - bullks resource updated')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 400:\n        print(\"Error:400 Invalid input\")\n    elif res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(res.text)\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/bulks/{id}/status": {
            "get": {
                "operationId": "get_status",
                "tags": [
                    "bulks"
                ],
                "responses": {
                    "200": {
                        "description": "bulks resource",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.bulks.jsonld-bulk_read_status"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.bulks-bulk_read_status"
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Retrieves current status of the entry of Bulk",
                "description": "Getting short info about Bulk status",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.bulks.id"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X GET https://api.lox24.eu/bulks/da0fa78c-4699-11ea-a637-96000028b339/status \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            var id = \"343c785b-8567-11ea-aa81-96000028b339\";\n\n            string url = \"https://api.lox24.eu/bulks/\" + id + \"/status\";\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; //or application/ld+json\n            httpWebRequest.Method = \"GET\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"bulk status resource response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/bulks/981f6497-a03e-11ea-b2e9-b8ca3a65338c/status\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.bulks;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetBulksItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var id = \"343c785b-8567-11ea-aa81-96000028b339\";\n\n        var url = \"https://api.lox24.eu/bulks/\" + id + \"/status\";\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"bulks resource created\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode() + \" on create bulk\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar id = '4897749e-982d-11ea-aa81-96000028b339';\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/bulks/' + id + '/status',\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - bulks resource response');\n        res.on('data', d => { process.stdout.write(d)})\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Resource not found\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();\n\n\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$id = '11111111-2222-3333-4444-55555555555';\n$uri = 'https://api.lox24.eu/bulks/' . $id . '/status';\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} elseif(404 === $code) {\n    echo \"Bulk with id = {$id} not found!\";\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\nbulk_id = \"343c785b-8567-11ea-aa81-96000028b339\"\n\nurl = f'https://api.lox24.eu/bulks/{bulk_id}/status'\n\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - bulks resource response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/me": {
            "get": {
                "operationId": "getAccountInfo",
                "tags": [
                    "user"
                ],
                "responses": {
                    "200": {
                        "description": "client resource",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.client.jsonld-get"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.client-get"
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "User's profile information",
                "description": "With this interface, you can check your account balance. If you use a pre-paid\nAccount, you get your available balance (excluded VAT). If you have a post-paid account, you get your remaining sms credit\nlimit. The query response also contains information about your available SMS services and your groups.",
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X GET https://api.lox24.eu/me \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/me\";\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; // or application/ld+json\n            httpWebRequest.Method = \"GET\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"client resource response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                //int errorCode = int.Parse(Regex.Replace(ex.Message, @\"\\D\", \"\"));\n                switch (webResponse.StatusCode)\n                {\n\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/me\"\n\tconst Token = \"1234567:1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.user;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetAccountInfo {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/me\";\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\")\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder().build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"client resource response\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error:\" + httpResponse.statusCode());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/me',\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - client resource response');\n        res.on('data', d => {\n            process.stdout.write(d)\n        })\n    } else {\n        console.log(`statusCode: ${res.statusCode}`)\n        if (res.statusCode == 200) {\n            console.log(\"Success: code = 200 - bulks collection response\");\n        } else if (res.statusCode  == 401) {\n            console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n        } else if (res.statusCode  == 403) {\n            console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n        }  else {\n            console.log(\"Error: code = \" + res.statusCode );\n        }\n    }\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$uri = 'https://api.lox24.eu/me';\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\ntoken = \"4f8432430c640ee96c9f8a3eb880d477\"\nclient_id = \"3\"\n\nurl = 'https://api.lox24.eu/me'\n\n\nheaders = {\n    'Accept': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print('Success: code = 200 - client resource response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/fraud-checks": {
            "get": {
                "operationId": "api_fraud-check_get_collection",
                "tags": [
                    "fraud-detection"
                ],
                "responses": {
                    "200": {
                        "description": "fraud-check collection",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "hydra:member": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/schema.fraud-check.jsonld-fraud_request_read"
                                            }
                                        },
                                        "hydra:totalItems": {
                                            "$ref": "#/components/schemas/hydra.totalItems"
                                        },
                                        "hydra:view": {
                                            "$ref": "#/components/schemas/hydra.view"
                                        },
                                        "hydra:search": {
                                            "$ref": "#/components/schemas/hydra.search"
                                        }
                                    },
                                    "required": [
                                        "hydra:member"
                                    ]
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/schema.fraud-check-fraud_request_read"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "List of all Fraud Check requests",
                "description": "Retrieves the list of all previous Fraud Check requests",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/filter.common.page"
                    },
                    {
                        "$ref": "#/components/parameters/order.common.created_at"
                    },
                    {
                        "$ref": "#/components/parameters/filter.fraud-check.id.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.fraud-check.id.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.callback_data.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.fraud-check.request_phone.phone.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.fraud-check.request_email.email.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.fraud-check.request_ip.ip.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.fraud-check.status_code.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.fraud-check.status_code.array"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X GET https://api.lox24.eu/fraud-checks \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/fraud-checks?page=1&request_email.email=lox24.eu\";\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; // or \"application/ld+json\"\n            httpWebRequest.Method = \"GET\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"collection response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/fraud-checks?created_at[gte]=1590737094&request_email.email=lox24.eu\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.fraud_checks;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetFraudRequestsCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/fraud-checks?created_at[gte]=1590737094&request_email.email=lox24.eu\";\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\")\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder().build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"bulks collection response\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error:\" + httpResponse.statusCode());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nlet query = \"_order[created_at]=desc&request_email.email=%40gmail.com\";\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/fraud-checks?' + query,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - request resource response');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$uri = 'https://api.lox24.eu/fraud-checks';\n\n$filters = [\n    'request_email.email' => '@lox24.eu',\n    'id' => [\n        '8481900d-86ce-11ea-aa81-96000028b339',\n        'd5ceb189-86cd-11ea-aa81-96000028b339',\n    ],\n    'page' => 1,\n    '_order' => [\n        'created_at' => 'asc'\n    ],\n];\n\n$uri .= $filters ? '?' . http_build_query($filters) : '';\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: $token\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = $code, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nurl = 'https://api.lox24.eu/fraud-checks?created_at[gte]=1590737094&request_email.email=lox24.eu'\n\n\nheaders = {\n    'Accept': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - Fraud request collection response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n",
                        "label": "Python"
                    }
                ]
            },
            "post": {
                "operationId": "api_fraud-check_post_collection",
                "tags": [
                    "fraud-detection"
                ],
                "responses": {
                    "201": {
                        "description": "fraud-check resource created",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.fraud-check.jsonld-fraud_request_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.fraud-check-fraud_request_read"
                                }
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/components/responses/400-bad-request"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "402": {
                        "description": "There are not enough funds on your account!"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "422": {
                        "$ref": "#/components/responses/422-unprocessable-entity"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Creates a new Fraud Check request",
                "description": "Send a Fraud Check request and get risk score value back.",
                "parameters": [],
                "requestBody": {
                    "description": "The new fraud-check resource",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/schema.fraud-check-fraud_request_write"
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X POST https://api.lox24.eu/fraud-checks \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n  -d '{\n          \"service_code\": \"direct\",\n          \"phone\": \"+49751234567\",\n          \"email\": \"test@lox24.de\",\n          \"ip\": \"1.1.1.1\",\n          \"address\": {\n                \"iso2\": \"DE\",\n                \"city\": \"Berlin\",\n                \"postcode\": \"13353\",\n                \"street_number\": \"109\",\n                \"street_name\": \"Seestra\u00dfe\"\n          }\n\n}'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json;\nusing Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/fraud-checks\";\n\n            var data = new {\n                service_code = \"direct\",\n                phone = \"+49751234567\",\n                email = \"test@lox24.de\",\n                ip = \"1.1.1.1\",\n                address = new {\n                    iso2 = \"DE\",\n                    city = \"Berlin\",\n                    postcode = \"13353\",\n                    street_number = \"109\",\n                    street_name = \"Seestra\u00dfe\"\n                }\n            };\n\n            string postdata = JsonConvert.SerializeObject(data);\n\n            Console.WriteLine(\"Post data: {0}\", postdata);\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.ContentType = \"application/json; charset=utf-8\";\n            httpWebRequest.Accept = \"application/json\"; // or application/ld+json\n            httpWebRequest.Method = \"POST\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))\n            {\n                streamWriter.Write(postdata);\n                streamWriter.Flush();\n                streamWriter.Close();\n            }\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n\n                    if(resp.StatusCode == HttpStatusCode.Created) {\n                        Console.WriteLine(\"Success:{0} {1}\", (int)resp.StatusCode, \"sms resource created\");\n                    } else {\n                        Console.WriteLine(\"Error: wrong response code {0} on create sms\", (int)resp.StatusCode);\n                    }\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.BadRequest: // 400\n                        Console.WriteLine(\"Error:400 Invalid input\");\n                        break;\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.PaymentRequired: // 402\n                        Console.WriteLine(\"Error:402 There are not enough funds on your account!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"bytes\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"POST\"\n\tconst URL = \"https://api.lox24.eu/fraud-checks\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\taddress := map[string]interface{}{\n\t\t\"iso2\":          \"DE\",\n\t\t\"city\":          \"Berlin\",\n\t\t\"postcode\":      \"13353\",\n\t\t\"street_number\": \"109\",\n\t\t\"street_name\":   \"Seestra\u00dfe\",\n\t}\n\tpayload := map[string]interface{}{\n\t\t\"service_code\": \"direct\",\n\t\t\"phone\":        \"+49751234567\",\n\t\t\"email\":        \"test@lox24.de\",\n\t\t\"ip\":           \"1.1.1.1\",\n\t\t\"address\":      address,\n\t}\n\n\tjsonPayload, _ := json.Marshal(payload)\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, bytes.NewBuffer(jsonPayload))\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Content-Type\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 201:\n\t\tfmt.Println((string(body)))\n\tcase 400:\n\t\tfmt.Println(\"Error: code = 400 - Invalid input\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.fraud_checks;\n\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class PostFraudRequestCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/fraud-checks\";\n\n        var address = new JSONObject();\n        json.put(\"iso2\", \"DE\");\n        json.put(\"city\", \"Berlin\");\n        json.put(\"postcode\", \"13353\");\n        json.put(\"street_number\", \"109\");\n        json.put(\"street_name\", \"Seestra\u00dfe\");\n\n        var json = new JSONObject();\n\t\tjson.put(\"service_code\", \"direct\");\n\t\tjson.put(\"phone\", \"+49751234567\");\n\t\tjson.put(\"email\", \"test@lox24.de\");\n\t\tjson.put(\"ip\", \"1.1.1.1\");\n\t\tjson.put(\"address\", address);\n\n        var postData = json.toString();\n\n        System.out.println(\"Post data: \" + postData);\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Content-Type\", \"application/json; charset=utf-8\")\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .POST(HttpRequest.BodyPublishers.ofString(postData))\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_CREATED) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"request created\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode() + \" on create request\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_BAD_REQUEST: // 400\n                        System.out.println(\"Error:400 Invalid input\");\n                        break;\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_PAYMENT_REQUIRED: // 402\n                        System.out.println(\"Error:402 There are not enough funds on your account!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const token = \"7b7c6063bab885ce79814b5ff1ee6885\";\n\nlet postObj = {\n\t\"service_code\": \"direct\",\n\t\"phone\": \"+49751234567\",\n\t\"email\": \"test@lox24.de\",\n\t\"ip\": \"1.1.1.1\",\n    \"address\": {\n        \"iso2\": \"DE\",\n        \"city\": \"Berlin\",\n        \"postcode\": \"13353\",\n        \"street_number\": \"109\",\n        \"street_name\": \"Seestra\u00dfe\"\n    }\n};\n\nlet postdata = JSON.stringify(postObj);\n\nconst https = require('https');\nconst options = {\n    hostname: 'api.lox24.eu',\n    path: '/fraud-checks',\n    method: 'POST',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'Content-Length': postdata.length,\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 201) {\n        console.log(\"Success: code = 201 - request resource created\");\n        res.on('data', d => { process.stdout.write(d) })\n    }\n    else if (res.statusCode == 400) console.log(\"Error: code = 400 - Invalid input\");\n    else if (res.statusCode == 401) console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    else if (res.statusCode == 402) console.log(\"Error: code = 402 - There are not enough funds on your account!\");\n    else if (res.statusCode == 403) console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\nreq.write(postdata);\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$uri = 'https://api.lox24.eu/fraud-checks';\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$body = [\n    'service_code' => 'direct',\n    'phone' => '+49751234567',\n    'email' => 'test@lox24.de',\n    'ip' => '1.1.1.1',\n    'address' => [\n        'iso2' => 'DE',\n        'city' => 'Berlin',\n        'postcode' => '13353',\n        'street_number' => '109',\n        'street_name' => 'Seestra\u00dfe',\n    ],\n];\n\nif (!$body = json_encode($body)) {\n    die('JSON encoding error!');\n}\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_POST => true,\n    CURLOPT_URL => $uri,\n    CURLOPT_POSTFIELDS => $body,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: $token\",\n        'Accept: application/json', // or application/ld+json\n        'Content-Type: application/json',\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif (201 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = $code, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nurl = 'https://api.lox24.eu/fraud-checks'\n\n\ndata = {\n\t'service_code': 'direct',\n\t'phone': '+49751234567',\n\t'email': 'test@lox24.de',\n\t'ip': '1.1.1.1',\n    'address': {\n        'iso2': 'DE',\n        'city': 'Berlin',\n        'postcode': '13353',\n        'street_number': '109',\n        'street_name': 'Seestra\u00dfe'\n    }\n}\n\n\nheaders = {\n    'Accept': 'application/json',\n    'Content-Type': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\nprint(\"Post data : \", json.dumps(data, indent=4))\n\ntry:\n    # timeout is 100 seconds, the payload is automatically converted to json format\n    res = requests.post(url, headers=headers, json=data, timeout=100)\n    if res.status_code != 201: # Created\n        print(\"Error: Wrong response code on create sms\")\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - Fraud request resource created')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 400:\n        print(\"Error:400 Invalid input\")\n    elif res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 402:\n        print(\"Error:402 There are not enough funds on your account!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/fraud-checks/{id}": {
            "get": {
                "operationId": "api_fraud-check_get_item",
                "tags": [
                    "fraud-detection"
                ],
                "responses": {
                    "200": {
                        "description": "fraud-check resource",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.fraud-check.jsonld-fraud_request_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.fraud-check-fraud_request_read"
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Retrieve Fraud Check request",
                "description": "Returns the data of a specific Fraud Check request",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.fraud-check.id"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl https://api.lox24.eu/fraud-checks/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\n            var id = \"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee\";\n            string url = \"https://api.lox24.eu/fraud-checks/\" + id;\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; //or application/ld+json\n            httpWebRequest.Method = \"GET\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"item resource response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/fraud-checks/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.fraud_checks;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetBulksItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var id = \"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee\";\n\n        var url = \"https://api.lox24.eu/fraud-checks/\" + id;\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode());\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode());\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nconst id = 'aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee';\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/fraud-checks/' + id,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Resource not found\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\n\nreq.end();\n\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$id = '11111111-2222-3333-4444-55555555555';\n$uri = 'https://api.lox24.eu/fraud-checks/' . $id;\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: $token\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} elseif(404 === $code) {\n    echo \"Request with id = $id not found!\";\n} else {\n    echo \"Error: code = $code, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\nsms_id = \"11111111-2222-3333-4444-55555555555\"\n\nurl = f'https://api.lox24.eu/fraud-checks/{sms_id}'\n\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - Fraud request resource response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            },
            "delete": {
                "operationId": "api_fraud-check_delete_item",
                "tags": [
                    "fraud-detection"
                ],
                "responses": {
                    "204": {
                        "$ref": "#/components/responses/204-deleted"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Delete a specific previous Fraud Check request",
                "description": "Remove all information about a previous Fraud Check request.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.fraud-check.id"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X DELETE https://api.lox24.eu/fraud-checks/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee  \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\n            var id = \"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee\";\n            string url = \"https://api.lox24.eu/fraud-checks/\" + id;\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\";\n            httpWebRequest.Method = \"DELETE\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    if(resp.StatusCode == HttpStatusCode.NoContent) { //204\n                        Console.WriteLine(\"Success: sms was deleted\");\n                    } else {\n                        Console.WriteLine(\"Error: something went wrong, code({0})\", respCode);\n                        Stream respStream = resp.GetResponseStream();\n                        using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                        {\n                            string responseText = sr.ReadToEnd();\n\n                            JObject parsed = JObject.Parse(responseText);\n\n                            foreach (var pair in parsed)\n                            {\n                                Console.WriteLine(\"{0}: {1}\", pair.Key, pair.Value);\n                            }\n                        }\n                    }\n\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"DELETE\"\n\tconst URL = \"https://api.lox24.eu/fraud-checks/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tswitch res.StatusCode {\n\tcase 204:\n\t\tfmt.Println(\"Fraud request was deleted!\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.fraud_checks;\n\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class DeleteFraudRequestItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\n        var id = \"aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee\";\n        var url = \"https://api.lox24.eu/fraud-checks/\" + id;\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .DELETE()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_NO_CONTENT) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"request was deleted.\");\n            } else {\n                System.out.println(\"Error: something went wrong, code(\" + httpResponse.statusCode() + \")\");\n\n                JSONObject parsed = new JSONObject(httpResponse.body());\n\n                parsed.keys().forEachRemaining(jsonKey -> System.out.println(jsonKey + \":\" + parsed.get(jsonKey)));\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nlet id = 'aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee';\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/fraud-checks/' + id,\n    method: 'DELETE',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 204) {\n        console.log('Success: code = 204 - fraud request resource deleted');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Resource not found\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();\n\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$id = '11111111-2222-3333-4444-55555555555';\n$uri = 'https://api.lox24.eu/fraud-checks/' . $id;\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_CUSTOMREQUEST => 'DELETE',\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: $token\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\nif(204 === $code) {\n    echo \"Fraud check request with id = $id was deleted!\";\n} elseif(404 === $code) {\n    echo \"Fraud check request with id = $id not found!\";\n} else {\n    $data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n    echo \"Fraud check request: code = $code, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\nsms_id = \"11111111-2222-3333-4444-55555555555\"\n\nurl = f'https://api.lox24.eu/fraud-checks/{sms_id}'\n\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.delete(url, headers=headers, timeout=100)\n    if res.status_code != 204: # No Content\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - Fraud request was deleted')\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/groups": {
            "get": {
                "operationId": "api_groups_get_collection",
                "tags": [
                    "groups"
                ],
                "responses": {
                    "200": {
                        "description": "groups collection",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "hydra:member": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/schema.groups.jsonld-group_read"
                                            }
                                        },
                                        "hydra:totalItems": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "hydra:view": {
                                            "$ref": "#/components/schemas/hydra.view"
                                        },
                                        "hydra:search": {
                                            "$ref": "#/components/schemas/hydra.search"
                                        }
                                    },
                                    "required": [
                                        "hydra:member"
                                    ]
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/schema.groups-group_read"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Retrieves the collection of Groups",
                "description": "Returns all your groups (SMS distribution list).",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/filter.common.page"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X GET https://api.lox24.eu/groups \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/groups?page=1\";\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; // or \"application/ld+json\"\n            httpWebRequest.Method = \"GET\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"groups collection response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/groups?page=1\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.group;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetGroupsCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/groups?page=1\";\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"groups collection response\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n            } else {\n                System.out.println(\"Error: something went wrong, code(\" + httpResponse.statusCode() + \")\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar query = \"page=1\";\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/groups?' + query,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - groups list response');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$uri = 'https://api.lox24.eu/groups';\n\n$filters = [\n    'page' => 1,\n];\n\n$uri .= $filters ? '?' . http_build_query($filters) : '';\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nurl = \"https://api.lox24.eu/groups?page=1\"\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - groups collection response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n",
                        "label": "Python"
                    }
                ]
            },
            "post": {
                "operationId": "api_groups_post_collection",
                "tags": [
                    "groups"
                ],
                "responses": {
                    "201": {
                        "description": "groups resource created",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.groups.jsonld-group_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.groups-group_read"
                                }
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/components/responses/400-bad-request"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "422": {
                        "$ref": "#/components/responses/422-unprocessable-entity"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Create a Group",
                "description": "With this command you create a SMS mailing list which is stored in our system for you. A mailing list has a name, a description and five additional columns which you can add in addition to the phone number.",
                "parameters": [],
                "requestBody": {
                    "description": "The new groups resource",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/schema.groups-write"
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X POST https://api.lox24.eu/groups \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n  -d '{\n      \"name\": \"My Clients\",\n      \"description\": \"Best clients\",\n      \"name_a\": \"prefix\",\n      \"name_b\": \"name\",\n      \"name_c\": \"datetime\",\n      \"name_d\": \"price\",\n      \"name_e\": \"something_else\"\n}'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json;\nusing Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/groups\";\n\n\n            var data = new {\n                name = \"My Clients\",\n                description = \"Best clients\",\n                name_a = \"prefix\",\n                name_b = \"name\",\n                name_c = \"datetime\",\n                name_d = \"price\",\n                name_e = \"something_else\"\n            };\n\n            string postdata = JsonConvert.SerializeObject(data);\n\n            Console.WriteLine(\"Post data: {0}\", postdata);\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.ContentType = \"application/json; charset=utf-8\";\n            httpWebRequest.Accept = \"application/json\"; // or application/ld+json\n            httpWebRequest.Method = \"POST\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))\n            {\n                streamWriter.Write(postdata);\n                streamWriter.Flush();\n                streamWriter.Close();\n            }\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n\n                    if(resp.StatusCode == HttpStatusCode.Created) {\n                        Console.WriteLine(\"Success:{0} {1}\", (int)resp.StatusCode, \"group resource created\");\n                    } else {\n                        Console.WriteLine(\"Error: wrong response code {0} on create group\", (int)resp.StatusCode);\n                    }\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.BadRequest: // 400\n                        Console.WriteLine(\"Error:400 Invalid input\");\n                        break;\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"bytes\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"POST\"\n\tconst URL = \"https://api.lox24.eu/groups\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tpayload := map[string]interface{}{\n\t\t\"name\": \"My Clients\",\n\t\t\"description\": \"Best clients\",\n\t\t\"name_a\": \"prefix\",\n\t\t\"name_b\": \"name\",\n\t\t\"name_c\": \"datetime\",\n\t\t\"name_d\": \"price\",\n\t\t\"name_e\": \"something_else\",\n\t}\n\n\tjsonPayload, _ := json.Marshal(payload)\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, bytes.NewBuffer(jsonPayload))\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Content-Type\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 201:\n\t\tfmt.Println((string(body)))\n\tcase 400:\n\t\tfmt.Println(\"Error: code = 400 - Invalid input\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.group;\n\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class PostGroupCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/groups\";\n\n        var json = new JSONObject();\n        json.put(\"name\", \"My Clients\");\n        json.put(\"description\", \"Best clients\");\n        json.put(\"name_a\", \"prefix\");\n        json.put(\"name_b\", \"name\");\n        json.put(\"name_c\", \"datetime\");\n        json.put(\"name_d\", \"price\");\n        json.put(\"name_e\", \"something_else\");\n\n        var postData = json.toString();\n\n        System.out.println(\"Post data: \" + postData);\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Content-Type\", \"application/json; charset=utf-8\")\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .POST(HttpRequest.BodyPublishers.ofString(postData))\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_CREATED) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"group resource created\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode() + \" on create group\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_BAD_REQUEST: // 400\n                        System.out.println(\"Error:400 Invalid input\");\n                        break;\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar postObj = {\n    sender_id: 'My Sender',\n    text: 'Test message',\n    service_code: 'direct',\n    phone: '+49751234567',\n    delivery_at: 1573724611,\n    is_unicode: true\n};\n\nvar postdata = JSON.stringify(postObj);\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/groups',\n    method: 'POST',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'Content-Length': postdata.length,\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 201) {\n        console.log(\"Success: code = 201 - group resource created\");\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 400) {\n        console.log(\"Error: code = 400 - Invalid input\");\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 402) {\n        console.log(\"Error: code = 402 - There are not enough funds on your account!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\nreq.write(postdata);\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$uri = 'https://api.lox24.eu/groups';\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$body = [\n    \"name\" => \"My Clients\",\n    \"description\" => \"Best clients\",\n    \"name_a\" => \"prefix\",\n    \"name_b\" => \"name\",\n    \"name_c\" => \"datetime\",\n    \"name_d\" => \"price\",\n    \"name_e\" => \"something_else\",\n];\n\nif(!$body = json_encode($body)) {\n    die('JSON encoding error!');\n}\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_POST => true,\n    CURLOPT_URL => $uri,\n    CURLOPT_POSTFIELDS => $body,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n        'Content-Type: application/json',\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(201 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nurl = 'https://api.lox24.eu/groups'\n\n\ndata = {\n    'name': 'My Clients',\n    'description': 'Best clients',\n    'name_a': 'prefix',\n    'name_b': 'name',\n    'name_c': 'datetime',\n    'name_d': 'price',\n    'name_e': 'something_else'\n}\n\nheaders = {\n    'Accept': 'application/json',\n    'Content-Type': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\nprint(\"Post data : \", json.dumps(data, indent=4))\n\ntry:\n    # timeout is 100 seconds, the payload is automatically converted to json format\n    res = requests.post(url, headers=headers, json=data, timeout=100)\n    if res.status_code != 201: # Created\n        print(\"Error: Wrong response code on create group\")\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - group resource created')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 400:\n        print(\"Error:400 Invalid input\")\n    elif res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 402:\n        print(\"Error:402 There are not enough funds on your account!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/groups/{id}": {
            "get": {
                "operationId": "api_groups_get_item",
                "tags": [
                    "groups"
                ],
                "responses": {
                    "200": {
                        "description": "groups resource",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.groups.jsonld-group_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.groups-group_read"
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Retrieves the entry of Groups",
                "description": "Returns the data of the specific group, such as group and column name.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.groups.id"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl https://api.lox24.eu/groups/12344  \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            var id = \"12344\";\n\n            string url = \"https://api.lox24.eu/groups/\" + id;\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; //or application/ld+json\n            httpWebRequest.Method = \"GET\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"groups resource response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/groups/12344\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.group;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetGroupItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var userId = \"1234567\";\n        var id = \"12344\";\n\n        var url = \"https://api.lox24.eu/groups/\" + id;\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode());\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode());\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar id = '12344';\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/groups/' + id,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Resource not found\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\n\nreq.end();\n\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$id = '12344';\n$uri = 'https://api.lox24.eu/groups/' . $id;\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} elseif(404 === $code) {\n    echo \"Group with id = {$id} not found!\";\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\nid = \"12344\"\n\nurl = f'https://api.lox24.eu/groups/{id}'\n\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - group resource response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            },
            "put": {
                "operationId": "api_groups_put_item",
                "tags": [
                    "groups"
                ],
                "responses": {
                    "200": {
                        "description": "groups resource updated",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.groups.jsonld-group_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.groups-group_read"
                                }
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/components/responses/400-bad-request"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "422": {
                        "$ref": "#/components/responses/422-unprocessable-entity"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Edit a Group",
                "description": "Change the configuration of a group, such as the group name or description.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.groups.id"
                    }
                ],
                "requestBody": {
                    "description": "The updated groups resource",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/schema.groups-write"
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X PUT https://api.lox24.eu/groups/12344 \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n  -d '{\n      \"name\": \"My Clients\",\n      \"description\": \"Best clients\",\n      \"name_a\": \"prefix\",\n      \"name_b\": \"name\",\n      \"name_c\": \"datetime\",\n      \"name_d\": \"price\",\n      \"name_e\": \"something_else\"\n}'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "\nusing Newtonsoft.Json;\nusing Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/groups/12344\";\n\n\n            var data = new {\n                name = \"New group name\"\n            };\n\n            string postdata = JsonConvert.SerializeObject(data);\n\n            Console.WriteLine(\"Post data: {0}\", postdata);\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.ContentType = \"application/json; charset=utf-8\";\n            httpWebRequest.Accept = \"application/json\"; // or application/ld+json\n            httpWebRequest.Method = \"POST\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))\n            {\n                streamWriter.Write(postdata);\n                streamWriter.Flush();\n                streamWriter.Close();\n            }\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n\n                    if(resp.StatusCode == HttpStatusCode.Created) {\n                        Console.WriteLine(\"Success:{0} {1}\", (int)resp.StatusCode, \"group resource created\");\n                    } else {\n                        Console.WriteLine(\"Error: wrong response code {0} on create group\", (int)resp.StatusCode);\n                    }\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.BadRequest: // 400\n                        Console.WriteLine(\"Error:400 Invalid input\");\n                        break;\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"bytes\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"PUT\"\n\tconst URL = \"https://api.lox24.eu/groups/12344\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tpayload := map[string]interface{}{\n\t\t\"name\": \"New group name\",\n\t}\n\n\tjsonPayload, _ := json.Marshal(payload)\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, bytes.NewBuffer(jsonPayload))\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Content-Type\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 400:\n\t\tfmt.Println(\"Error: code = 400 - Invalid input\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.group;\n\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class PutGroupCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/groups/12344\";\n\n        var json = new JSONObject();\n        json.put(\"name\", \"New group name Clients\");\n\n        var data = json.toString();\n\n        System.out.println(\"PUT data: \" + data);\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Content-Type\", \"application/json; charset=utf-8\")\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .PUT(HttpRequest.BodyPublishers.ofString(data))\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"group resource updated);\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode() + \" on update group\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_BAD_REQUEST: // 400\n                        System.out.println(\"Error:400 Invalid input\");\n                        break;\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar id = '12344';\n\nvar postObj = {\n    \"name\": \"New group name\"\n};\n\nvar postdata = JSON.stringify(postObj);\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/groups/' + id,\n    method: 'PUT',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'Content-Length': postdata.length,\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log(\"Success: code = 201 - group resource updated\");\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 400) {\n        console.log(\"Error: code = 400 - Invalid input\");\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Resource not found\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode);\n    }\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\nreq.write(postdata);\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$uri = 'https://api.lox24.eu/groups/12344';\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$body = [\n    'name' => 'New group name',\n];\n\nif(!$body = json_encode($body)) {\n    die('JSON encoding error!');\n}\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_CUSTOMREQUEST => 'PUT',\n    CURLOPT_URL => $uri,\n    CURLOPT_POSTFIELDS => $body,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n        'Content-Type: application/json',\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\nid = \"12344\"\n\nurl = f'https://api.lox24.eu/groups/{id}'\n\n\ndata = {\n    'name': 'New group name'\n}\n\nheaders = {\n    'Accept': 'application/json',\n    'Content-Type': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\nprint(\"Post data : \", json.dumps(data, indent=4))\n\ntry:\n    # timeout is 100 seconds, the payload is automatically converted to json format\n    res = requests.put(url, headers=headers, json=data, timeout=100)\n    if res.status_code != 200: # OK\n        print(\"Error: Wrong response code on update group\")\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - group resource updated')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 400:\n        print(\"Error:400 Invalid input\")\n    elif res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            },
            "delete": {
                "operationId": "api_groups_delete_item",
                "tags": [
                    "groups"
                ],
                "responses": {
                    "204": {
                        "$ref": "#/components/responses/204-deleted"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Delete a Group",
                "description": "Delete the group together with all the associated phone numbers.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.groups.id"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X DELETE https://api.lox24.eu/groups/12344  \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "\nusing Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\n            var id = \"12344\";\n            string url = \"https://api.lox24.eu/groups/\" + id;\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\";\n            httpWebRequest.Method = \"DELETE\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    if(resp.StatusCode == HttpStatusCode.NoContent) { //204\n                        Console.WriteLine(\"Success: group was deleted\");\n                    } else {\n                        Console.WriteLine(\"Error: something went wrong, code({0})\", respCode);\n                        Stream respStream = resp.GetResponseStream();\n                        using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                        {\n                            string responseText = sr.ReadToEnd();\n\n                            JObject parsed = JObject.Parse(responseText);\n\n                            foreach (var pair in parsed)\n                            {\n                                Console.WriteLine(\"{0}: {1}\", pair.Key, pair.Value);\n                            }\n                        }\n                    }\n\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "\npackage main\n\nimport (\n\t\"fmt\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"DELETE\"\n\tconst URL = \"https://api.lox24.eu/groups/12344\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tswitch res.StatusCode {\n\tcase 204:\n\t\tfmt.Println(\"Group and related phones was deleted!\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.group;\n\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class DeleteGroupItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var userId = \"1234567\";\n\n        var id = \"12344\";\n        var url = \"https://api.lox24.eu/groups/\" + id;\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .DELETE()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_NO_CONTENT) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"group was delete.\");\n            } else {\n                System.out.println(\"Error: something went wrong, code(\" + httpResponse.statusCode() + \")\");\n\n                JSONObject parsed = new JSONObject(httpResponse.body());\n\n                parsed.keys().forEachRemaining(jsonKey -> System.out.println(jsonKey + \":\" + parsed.get(jsonKey)));\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar id = '12344';\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/groups/' + id,\n    method: 'DELETE',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 204) {\n        console.log('Success: code = 204 - group resource deleted');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Resource not found\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();\n\n\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$id = '12344';\n$uri = 'https://api.lox24.eu/groups/' . $id;\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_CUSTOMREQUEST => 'DELETE',\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\nif(204 === $code) {\n    echo \"Group with id = {$id} was deleted!\";\n} elseif(404 === $code) {\n    echo \"Group with id = {$id} not found!\";\n} else {\n    $data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n    echo \"Group: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\nid = \"12344\"\n\nurl = f'https://api.lox24.eu/groups/{id}'\n\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.delete(url, headers=headers, timeout=100)\n    if res.status_code != 204: # No Content\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - group was deleted')\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/groups/{id}/file/csv": {
            "get": {
                "operationId": "group_export_to_file",
                "tags": [
                    "phones"
                ],
                "responses": {
                    "200": {
                        "description": "Export group's phones as CSV file",
                        "content": {
                            "text/csv": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.groups-group_read"
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Export CSV of the Phones",
                "description": "##### Example of the CSV\n\n|id|phone|col_A|col_B|col_C|col_D|col_E|callback_data|\n|---|---|---|---|---|---|---|---|\n|7848412|+49123456780|Name|Second name|Foo|Bar|Zoo|12345|\n|7848413|+49123456781|Name|Second name|Foo|Bar|Zoo|12346|\n|7848414|+49123456782|Name|Second name|Foo|Bar|Zoo|12347|\n|7848415|+49123456783|Name|Second name|Foo|Bar|Zoo|12348|\n\nThe names of the columns will correspond to the values in the fields \n`name_X` of the corresponding `/group` object. If the corresponding \nvalue is missing, the default is `col_X`, where X = (a, b, c, d, e).\n",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.groups.id"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl https://api.lox24.eu/groups/7116/file/csv  \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class phones\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            var id = \"12344\";\n\n            string url = \"https://api.lox24.eu/groups/\" + id + \"/file/csv\";\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"text/csv\";\n            httpWebRequest.Method = \"GET\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"phones resource response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\turl := \"https://api.lox24.eu/groups/7116/file/csv\"\n\tmethod := \"GET\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(method, url, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println(string(body))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.phones;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GroupExportToFilePhonesItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var id = \"7116\";\n\n        var url = \"https://api.lox24.eu/groups/\" + id + \"/file/csv\";\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"text/csv\")\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"Import phones items as CSV file\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode() + \" on import phone items as CSV file\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/groups/12344/file/csv',\n    method: 'GET',\n    headers: {\n        'Accept': 'text/csv',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - phones list response');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$uri = 'https://api.lox24.eu/groups/12344/file/csv';\n\n$filters = [\n    'page' => 1,\n];\n\n$uri .= $filters ? '?' . http_build_query($filters) : '';\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: text/csv', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . $data;\n} else {\n    echo \"Error: code = {$code}, data = \" . $data;\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\ngroup_id = \"7116\"\n\nurl = f'https://api.lox24.eu/groups/{group_id}/file/csv'\n\n\nheaders = {\n    'Accept': 'text/csv',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - Import phone items as CSV file')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/groups/{id}/phones": {
            "get": {
                "operationId": "api_phones_get_collection",
                "tags": [
                    "phones"
                ],
                "responses": {
                    "200": {
                        "description": "groups resource",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "properties": {
                                        "hydra:member": {
                                            "items": {
                                                "$ref": "#/components/schemas/schema.phones.jsonld-phone_read"
                                            }
                                        }
                                    }
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/schema.phones-phone_read"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Retrieves the collection of Phones by Group ID",
                "description": "Retrieves the collection of Phones by Group ID",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.groups.id"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl https://api.lox24.eu/groups/7116/phones  \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class phones\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string id = \"12344\"\n            string url = \"https://api.lox24.eu/groups/12344/phones\";\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; // or \"application/ld+json\"\n            httpWebRequest.Method = \"GET\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"phones collection response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\turl := \"https://api.lox24.eu/groups/7116/phones\"\n\tmethod := \"GET\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(method, url, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println(string(body))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.phones;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetGroupPhonesGroupsItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var id = \"7116\";\n\n        var url = \"https://api.lox24.eu/groups/\" + id + \"/phones\";\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"phones resource response\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode() + \" on get group's items\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/groups/12344/phones',\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - phones list response');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$uri = 'https://api.lox24.eu/groups/12344/phones';\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\ngroup_id = \"7116\"\n\nurl = f'https://api.lox24.eu/groups/{group_id}/phones'\n\n\nheaders = {\n    'Accept': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - get group phones response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n",
                        "label": "Python"
                    }
                ]
            },
            "post": {
                "operationId": "api_phones_post_collection",
                "tags": [
                    "phones"
                ],
                "responses": {
                    "201": {
                        "description": "phones resource created",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.phones.jsonld-phone_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.phones-phone_read"
                                }
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/components/responses/400-bad-request"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "422": {
                        "$ref": "#/components/responses/422-unprocessable-entity"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Create a Phone",
                "description": "Create an entry with a phone number.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.groups.id"
                    }
                ],
                "requestBody": {
                    "description": "The new phones resource",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/schema.phones-phone_write"
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X POST https://api.lox24.eu/groups/12344/phones \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n  -d '{\n      \"phone\": \"+93701234567\",\n      \"a\": \"Mr. \",\n      \"b\": \"Smith \",\n      \"c\": \"2020-02-23 18:00\",\n      \"d\": \"12.34\",\n      \"e\": \"restaurant Blue Oyster\"\n}'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json;\nusing Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class phones\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/groups/12344/phones\";\n\n            var data = new {\n                phone = \"+93701234567\",\n                a = \"Mr. \",\n                b = \"Smith\",\n                c = \"2020-02-23 18:00\",\n                d = \"12.34\",\n                e = \"restaurant Blue Oyster\"\n            };\n\n            string postdata = JsonConvert.SerializeObject(data);\n\n            Console.WriteLine(\"Post data: {0}\", postdata);\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.ContentType = \"application/json; charset=utf-8\";\n            httpWebRequest.Accept = \"application/json\"; // or application/ld+json\n            httpWebRequest.Method = \"POST\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))\n            {\n                streamWriter.Write(postdata);\n                streamWriter.Flush();\n                streamWriter.Close();\n            }\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n\n                    if(resp.StatusCode == HttpStatusCode.Created) {\n                        Console.WriteLine(\"Success:{0} {1}\", (int)resp.StatusCode, \"phone resource created\");\n                    } else {\n                        Console.WriteLine(\"Error: wrong response code {0} on create phone\", (int)resp.StatusCode);\n                    }\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.BadRequest: // 400\n                        Console.WriteLine(\"Error:400 Invalid input\");\n                        break;\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"bytes\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\turl := \"https://api.lox24.eu/groups/7116/phones\"\n\tmethod := \"POST\"\n\n\tpayload := map[string]string{\n\t\t\"phone\": \"+93701234567\",\n\t\t\"a\":     \"Mr. \",\n\t\t\"b\":     \"Smith \",\n\t\t\"c\":     \"2020-02-23 18:00\",\n\t\t\"d\":     \"12.34\",\n\t\t\"e\":     \"restaurant Blue Oyster\",\n\t}\n\n\tjsonPayload, _ := json.Marshal(payload)\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(method, url, bytes.NewBuffer(jsonPayload))\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\")\n\treq.Header.Add(\"Content-Type\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 201:\n\t\tfmt.Println(string(body))\n\tcase 400:\n\t\tfmt.Println(\"Error: code = 400 - Invalid input\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.phones;\n\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class PostPhonesCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var id = \"12344\";\n\n        var url = \"https://api.lox24.eu/groups/\" + id + \"/phones\";\n\n        var json = new JSONObject();\n        json.put(\"phone\", \"+93701234567\");\n        json.put(\"a\", \"Mr. \");\n        json.put(\"b\", \"Smith \");\n        json.put(\"c\", \"2020-02-23 18:00\");\n        json.put(\"d\", \"12.34\");\n        json.put(\"e\", \"restaurant Blue Oyster\");\n\n        var postData = json.toString();\n\n        System.out.println(\"Post data: \" + postData);\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Content-Type\", \"application/json; charset=utf-8\")\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .POST(HttpRequest.BodyPublishers.ofString(postData))\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_CREATED) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"phones resource created\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode() + \" on create phone\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_BAD_REQUEST: // 400\n                        System.out.println(\"Error:400 Invalid input\");\n                        break;\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar postObj = {\n    phone: '+93701234567',\n    a: 'Mr. ',\n    b: 'Smith',\n    c: '2020-02-23 18:00',\n    d: '12.34',\n    e: 'restaurant Blue Oyster'\n};\n\nvar postdata = JSON.stringify(postObj);\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/groups',\n    method: 'POST',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'Content-Length': postdata.length,\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 201) {\n        console.log(\"Success: code = 201 - phone resource created\");\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 400) {\n        console.log(\"Error: code = 400 - Invalid input\");\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 402) {\n        console.log(\"Error: code = 402 - There are not enough funds on your account!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\nreq.write(postdata);\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$uri = 'https://api.lox24.eu/groups/12344/phones';\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$body = [\n    'phone' => '+93701234567',\n    'a' => 'Mr. ',\n    'b' => 'Smith ',\n    'c' => '2020-02-23 18 =>00',\n    'd' => '12.34',\n    'e' => 'restaurant Blue Oyster',\n];\n\nif(!$body = json_encode($body)) {\n    die('JSON encoding error!');\n}\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_POST => true,\n    CURLOPT_URL => $uri,\n    CURLOPT_POSTFIELDS => $body,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n        'Content-Type: application/json',\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(201 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\ngroup_id = \"12344\"\n\nurl = f'https://api.lox24.eu/groups/{group_id}/phones'\n\n\ndata = {\n    \"phone\": \"+93701234567\",\n    \"a\": \"Mr. \",\n    \"b\": \"Smith \",\n    \"c\": \"2020-02-23 18:00\",\n    \"d\": \"12.34\",\n    \"e\": \"restaurant Blue Oyster\",\n}\n\nheaders = {\n    'Accept': 'application/json',\n    'Content-Type': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\nprint(\"Post data : \", json.dumps(data, indent=4))\n\ntry:\n    # timeout is 100 seconds, the payload is automatically converted to json format\n    res = requests.post(url, headers=headers, json=data, timeout=100)\n    if res.status_code != 201: # Created\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - phones resource created')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 400:\n        print(\"Error:400 Invalid input\")\n    elif res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/groups/{id}/phones/batch": {
            "post": {
                "operationId": "phone_batch_post",
                "tags": [
                    "phones"
                ],
                "responses": {
                    "201": {
                        "description": "groups resource created",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.phones.jsonld-batch-read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.phones-batch-read"
                                }
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/components/responses/400-bad-request"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "422": {
                        "$ref": "#/components/responses/422-unprocessable-entity"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Create Phones by the batch",
                "description": "Instead of sending multiple requests better to send a single request with a list of Phone objects as body request.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.groups.id"
                    }
                ],
                "requestBody": {
                    "description": "The new groups resource",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/schema.phones-batch-write"
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json;\nusing Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class phones\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/groups/12344/phones/batch\";\n\n            var data = new[] {\n               new {\n                   phone = \"+93701234567\",\n                   a = \"Mr. \",\n                   b = \"Smith\"\n               },\n               new {\n                  phone = \"+93701234568\",\n                  a = \"Ms. \",\n                  b = \"Smith\"\n               }\n            }\n\n            string postdata = JsonConvert.SerializeObject(data);\n\n            Console.WriteLine(\"Post data: {0}\", postdata);\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.ContentType = \"application/json; charset=utf-8\";\n            httpWebRequest.Accept = \"application/json\"; // or application/ld+json\n            httpWebRequest.Method = \"POST\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))\n            {\n                streamWriter.Write(postdata);\n                streamWriter.Flush();\n                streamWriter.Close();\n            }\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n\n                    if(resp.StatusCode == HttpStatusCode.Created) {\n                        Console.WriteLine(\"Success:{0} {1}\", (int)resp.StatusCode, \"phone resource created\");\n                    } else {\n                        Console.WriteLine(\"Error: wrong response code {0} on create phone\", (int)resp.StatusCode);\n                    }\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.BadRequest: // 400\n                        Console.WriteLine(\"Error:400 Invalid input\");\n                        break;\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"bytes\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\turl := \"https://api.lox24.eu/groups/7116/phones/batch\"\n\tmethod := \"POST\"\n\n\tpayload := []map[string]string{\n\t\t{\n\t\t\t\"phone\": \"+93701234567\",\n\t\t\t\"a\":     \"Mr. \",\n\t\t\t\"b\":     \"Smith \",\n\t\t\t\"c\":     \"2020-02-23 18:00\",\n\t\t\t\"d\":     \"12.34\",\n\t\t\t\"e\":     \"restaurant Blue Oyster\",\n\t\t},\n\t}\n\n\tjsonPayload, _ := json.Marshal(payload)\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(method, url, bytes.NewBuffer(jsonPayload))\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\")\n\treq.Header.Add(\"Content-Type\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 201:\n\t\tfmt.Println(string(body))\n\tcase 400:\n\t\tfmt.Println(\"Error: code = 400 - Invalid input\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.phones;\n\nimport org.json.JSONArray;\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class PhoneBatchPostGroupsItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var id = \"7116\";\n\n        var url = \"https://api.lox24.eu/groups/\" + id + \"/phones/batch\";\n\n        var jsonArray = new JSONArray();\n        var validPhoneNumber = new JSONObject();\n        validPhoneNumber.put(\"phone\", \"+4912345678\");\n        validPhoneNumber.put(\"a\", \"column A text\");\n\n        var invalidPhoneNumber = new JSONObject();\n        invalidPhoneNumber.put(\"a\", \"column A text #2\");\n\n        jsonArray.put(validPhoneNumber);\n        jsonArray.put(invalidPhoneNumber);\n\n        var postData = jsonArray.toString();\n\n        System.out.println(\"Post data: \" + postData);\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Content-Type\", \"application/json; charset=utf-8\")\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .POST(HttpRequest.BodyPublishers.ofString(postData))\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_CREATED) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"phones resource created by the batch\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode() + \" on phones resource by the batch\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_BAD_REQUEST: // 400\n                        System.out.println(\"Error:400 Invalid input\");\n                        break;\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar postObj = [{\n    phone: '+93701234567',\n    a: 'Mr. ',\n    b: 'Smith',\n}, {\n    a: \"wrong phone resource\"\n}];\n\n\nvar postdata = JSON.stringify(postObj);\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/groups/12344/phone/batch',\n    method: 'POST',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'Content-Length': postdata.length,\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 201) {\n        console.log(\"Success: code = 201 - phone resource created\");\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 400) {\n        console.log(\"Error: code = 400 - Invalid input\");\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 402) {\n        console.log(\"Error: code = 402 - There are not enough funds on your account!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\nreq.write(postdata);\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$uri = 'https://api.lox24.eu/groups/12344/phones/batch';\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$body = [\n    [\n        'phone' => '+93701234567',\n        'a' => 'Mr. ',\n        'b' => 'Smith ',\n        'c' => '2020-02-23 18 =>00',\n        'd' => '12.34',\n        'e' => 'restaurant Blue Oyster',\n    ],\n    [\n        'a' => 'Invalid phone object',\n    ]\n];\n\nif(!$body = json_encode($body)) {\n    die('JSON encoding error!');\n}\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_POST => true,\n    CURLOPT_URL => $uri,\n    CURLOPT_POSTFIELDS => $body,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n        'Content-Type: application/json',\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(201 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\ngroup_id = \"7116\"\n\nurl = f'https://api.lox24.eu/groups/{group_id}/phones/batch'\n\n\ndata = [\n    {\n    \"phone\": \"+4912345678\",\n    \"a\": \"column A text\"\n    },\n    {\n    \"a\": \"column A text #2\"\n    }\n]\n\n\nheaders = {\n    'Accept': 'application/json',\n    'Content-Type': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\nprint(\"Post data : \", json.dumps(data, indent=4))\n\ntry:\n    # timeout is 100 seconds, the payload is automatically converted to json format\n    res = requests.post(url, headers=headers, json=data, timeout=100)\n    if res.status_code != 201:  # Created\n        res.raise_for_status()\n    else:\n        print(\n            f'Success: code = {res.status_code} - phones resource created by the batch')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/incomings": {
            "get": {
                "operationId": "api_incomings_get_collection",
                "tags": [
                    "incomings"
                ],
                "responses": {
                    "200": {
                        "description": "incomings collection",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "hydra:member": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/schema.incomings.jsonld-incoming_read"
                                            }
                                        },
                                        "hydra:totalItems": {
                                            "$ref": "#/components/schemas/hydra.totalItems"
                                        },
                                        "hydra:view": {
                                            "$ref": "#/components/schemas/hydra.view"
                                        },
                                        "hydra:search": {
                                            "$ref": "#/components/schemas/hydra.search"
                                        }
                                    },
                                    "required": [
                                        "hydra:member"
                                    ]
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/schema.incomings-incoming_read"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Retrieves the collection of Incoming SMS",
                "description": "Getting the list of incoming SMS ordered by the field `received_at` in descending order. The postbox contains all inbound sms and replies. For SMS replies property 'msg_uuid' filled by correspond /sms entity.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/filter.common.page"
                    },
                    {
                        "$ref": "#/components/parameters/order.incomings.received_at"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.text.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.incomings.from"
                    },
                    {
                        "$ref": "#/components/parameters/filter.incomings.to"
                    },
                    {
                        "$ref": "#/components/parameters/filter.incomings.msg_uuid"
                    },
                    {
                        "$ref": "#/components/parameters/filter.incomings.msg_uuid.array"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X GET https://api.lox24.eu/incomings \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/incomings?text=Test&msg_uuid[]=8481900d-86ce-11ea-aa81-96000028b339&msg_uuid[]=d5ceb189-86cd-11ea-aa81-96000028b339&page=1&_order[created_at]=desc\";\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; // or \"application/ld+json\"\n            httpWebRequest.Method = \"GET\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"Incoming SMS collection response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/incomings\"\n\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println(string(body))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.incomings;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetIncomingsCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/incomings?text=Test&msg_uuid[]=8481900d-86ce-11ea-aa81-96000028b339&msg_uuid[]=d5ceb189-86cd-11ea-aa81-96000028b339&page=1&_order[created_at]=desc\";\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"incomings collection response\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n            } else {\n                System.out.println(\"Error: something went wrong, code(\" + httpResponse.statusCode() + \")\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar query = \"text=Test&msg_uuid[]=8481900d-86ce-11ea-aa81-96000028b339&msg_uuid[]=d5ceb189-86cd-11ea-aa81-96000028b339&page=1&_order[created_at]=desc\";\n\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/incomings?' + query,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - incoming messages collection response');\n        res.on('data', d => {process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    }  else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\n\nreq.end();\n\n\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$uri = 'https://api.lox24.eu/incomings';\n\n$filters = [\n    'text' => 'Test',\n    'msg_uuid' => [\n        '8481900d-86ce-11ea-aa81-96000028b339',\n        'd5ceb189-86cd-11ea-aa81-96000028b339',\n    ],\n    'page' => 1,\n    '_order' => [\n        'received_at' => 'desc'\n    ],\n];\n\n$uri .= $filters ? '?' . http_build_query($filters) : '';\n$curl = curl_init();\n\necho $uri;\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nurl = \"https://api.lox24.eu/incomings?text=Test&msg_uuid[]=8481900d-86ce-11ea-aa81-96000028b339&msg_uuid[]=d5ceb189-86cd-11ea-aa81-96000028b339&page=1&_order[created_at]=desc\"\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - incomings collection response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/incomings/{uuid}": {
            "get": {
                "operationId": "api_incomings_get_item",
                "deprecated": false,
                "tags": [
                    "incomings"
                ],
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X GET https://api.lox24.eu/incomings/20f39273-0566-11ea-a637-96000028b339 \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            var id = \"343c785b-8567-11ea-aa81-96000028b339\";\n\n            string url = \"https://api.lox24.eu/incomings/\" + id;\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; //or application/ld+json\n            httpWebRequest.Method = \"GET\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"Incoming SMS resource response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/incomings/85c2b099-9d84-11ea-b2e9-b8ca3a65338c\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println(string(body))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.incomings;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetIncomingsItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var id = \"343c785b-8567-11ea-aa81-96000028b339\";\n\n        var url = \"https://api.lox24.eu/incomings/\" + id;\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"incomings resource created\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error:\" + httpResponse.statusCode());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "//const host = 'api.lox24.eu';\n//const clientid = \"1234567\";\n//const token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\nconst host = 'api2-test.lox24.eu';\nconst token = \"21911_4f8432430c640ee96c9f8a3eb880d477\";\n\nvar id = '8481900d-86ce-11ea-aa81-96000028b339';\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/incomings/' + id,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - incoming message resource response');\n        res.on('data', d => { process.stdout.write(d)})\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Resource not found\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\n\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$id = '11111111-2222-3333-4444-55555555555';\n$uri = 'https://api.lox24.eu/incomings/' . $id;\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} elseif(404 === $code) {\n    echo \"Incoming SMS with id = {$id} not found!\";\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\nincoming_id = \"343c785b-8567-11ea-aa81-96000028b339\"\n\nurl = f'https://api.lox24.eu/incomings/{incoming_id}'\n\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - incoming sms resource response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n",
                        "label": "Python"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "incomings resource",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.incomings.jsonld-incoming_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.incomings-incoming_read"
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Retrieves the entry of Incoming SMS",
                "description": "Getting the entry of incoming SMS. The postbox contains all inbound sms and replies. For SMS replies property 'msg_uuid' filled by correspond /sms entity.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.incomings.id"
                    }
                ]
            },
            "delete": {
                "operationId": "api_incomings_delete_item",
                "deprecated": false,
                "tags": [
                    "incomings"
                ],
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X DELETE https://api.lox24.eu/incomings/20f39273-0566-11ea-a637-96000028b339 \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            var id = \"343c785b-8567-11ea-aa81-96000028b339\";\n\n            string url = \"https://api.lox24.eu/incomings/\" + id;\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; //or application/ld+json\n            httpWebRequest.Method = \"DELETE\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"Incoming SMS resource response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"DELETE\"\n\tconst URL = \"https://api.lox24.eu/incomings/85c2b099-9d84-11ea-b2e9-b8ca3a65338c\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println(string(body))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.incomings;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetIncomingsItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var id = \"343c785b-8567-11ea-aa81-96000028b339\";\n\n        var url = \"https://api.lox24.eu/incomings/\" + id;\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .DELETE()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"incomings resource created\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error:\" + httpResponse.statusCode());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "//const host = 'api.lox24.eu';\n//const clientid = \"1234567\";\n//const token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\nconst host = 'api2-test.lox24.eu';\nconst token = \"21911_4f8432430c640ee96c9f8a3eb880d477\";\n\nvar id = '8481900d-86ce-11ea-aa81-96000028b339';\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/incomings/' + id,\n    method: 'DELETE',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - incoming message resource response');\n        res.on('data', d => { process.stdout.write(d)})\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Resource not found\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\n\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$id = '11111111-2222-3333-4444-55555555555';\n$uri = 'https://api.lox24.eu/incomings/' . $id;\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_CUSTOMREQUEST => 'DELETE',\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} elseif(404 === $code) {\n    echo \"Incoming SMS with id = {$id} not found!\";\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\nincoming_id = \"343c785b-8567-11ea-aa81-96000028b339\"\n\nurl = f'https://api.lox24.eu/incomings/{incoming_id}'\n\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.delete(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - incoming sms resource response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n",
                        "label": "Python"
                    }
                ],
                "responses": {
                    "204": {
                        "$ref": "#/components/responses/204-deleted"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Deleting an Inbound SMS",
                "description": "Received SMS (inbound or reply SMS) can be deleted from the server based on the UUID.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.incomings.id"
                    }
                ]
            }
        },
        "/phones/{id}": {
            "get": {
                "operationId": "api_phones_get_item",
                "tags": [
                    "phones"
                ],
                "responses": {
                    "200": {
                        "description": "phones resource",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.phones.jsonld-phone_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.phones-phone_read"
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Retrieves the entry of Phone",
                "description": "Query an entry with a phone number.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.phones.id"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl https://api.lox24.eu/phones/12344  \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class phones\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            var id = \"12344\";\n\n            string url = \"https://api.lox24.eu/phones/\" + id;\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; //or application/ld+json\n            httpWebRequest.Method = \"GET\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"phones resource response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\turl := \"https://api.lox24.eu/phones/12344\"\n\tmethod := \"GET\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(method, url, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println(string(body))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.phones;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetPhonesItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var id = \"12344\";\n\n        var url = \"https://api.lox24.eu/phones/\" + id;\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"phones resource response\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode() + \" on get phones item\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar id = '12344';\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/phones/' + id,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Resource not found\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\n\nreq.end();\n\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$id = '12344';\n$uri = 'https://api.lox24.eu/phones/' . $id;\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} elseif(404 === $code) {\n    echo \"Group with id = {$id} not found!\";\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nphone_id = \"12344\"\n\nurl = f'https://api.lox24.eu/phones/{phone_id}'\n\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - phones resource response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            },
            "put": {
                "operationId": "api_phones_put_item",
                "tags": [
                    "phones"
                ],
                "responses": {
                    "200": {
                        "description": "phones resource updated",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.phones.jsonld-phone_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.phones-phone_read"
                                }
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/components/responses/400-bad-request"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "422": {
                        "$ref": "#/components/responses/422-unprocessable-entity"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Edit the entry of Phone",
                "description": "Edit an entry with a phone number.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.phones.id"
                    }
                ],
                "requestBody": {
                    "description": "The updated phones resource",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/schema.phones-phone_write"
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X PUT https://api.lox24.eu/phones/12344 \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n  -d '{\n      \"phone\": \"+93701234567\",\n      \"a\": \"Mr. \",\n      \"b\": \"Smith \",\n      \"c\": \"2020-02-23 18:00\",\n      \"d\": \"12.34\",\n      \"e\": \"restaurant Blue Oyster\"\n}'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "\nusing Newtonsoft.Json;\nusing Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/phones/12344\";\n\n\n            var data = new {\n                phone = \"+93701234599\"\n            };\n\n            string postdata = JsonConvert.SerializeObject(data);\n\n            Console.WriteLine(\"Post data: {0}\", postdata);\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.ContentType = \"application/json; charset=utf-8\";\n            httpWebRequest.Accept = \"application/json\"; // or application/ld+json\n            httpWebRequest.Method = \"POST\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))\n            {\n                streamWriter.Write(postdata);\n                streamWriter.Flush();\n                streamWriter.Close();\n            }\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n\n                    if(resp.StatusCode == HttpStatusCode.Created) {\n                        Console.WriteLine(\"Success:{0} {1}\", (int)resp.StatusCode, \"phone resource updated\");\n                    } else {\n                        Console.WriteLine(\"Error: wrong response code {0} on update phone\", (int)resp.StatusCode);\n                    }\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.BadRequest: // 400\n                        Console.WriteLine(\"Error:400 Invalid input\");\n                        break;\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"bytes\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\turl := \"https://api.lox24.eu/phones/12344\"\n\tmethod := \"PUT\"\n\n\tpayload := map[string]string{\n\t\t\"phone\": \"+93701234567\",\n\t\t\"a\":     \"Mr. \",\n\t\t\"b\":     \"Smith \",\n\t\t\"c\":     \"2020-02-23 18:00\",\n\t\t\"d\":     \"12.34\",\n\t\t\"e\":     \"restaurant Blue Oyster\",\n\t}\n\n\tjsonPayload, _ := json.Marshal(payload)\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(method, url, bytes.NewBuffer(jsonPayload))\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\")\n\treq.Header.Add(\"Content-Type\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println(string(body))\n\tcase 400:\n\t\tfmt.Println(\"Error: code = 400 - Invalid input\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.phones;\n\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class PutPhonesItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var id = \"12344\";\n        var url = \"https://api.lox24.eu/phones/\" + id;\n\n        var json = new JSONObject();\n        json.put(\"phone\", \"+93701234567\");\n        json.put(\"a\", \"Mr. \");\n        json.put(\"b\", \"Smith \");\n        json.put(\"c\", \"2020-02-23 18:00\");\n        json.put(\"d\", \"12.34\");\n        json.put(\"e\", \"restaurant Blue Oyster\");\n\n\n        var putData = json.toString();\n\n        System.out.println(\"Put data: \" + putData);\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Content-Type\", \"application/json; charset=utf-8\")\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .PUT(HttpRequest.BodyPublishers.ofString(putData))\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"phones resource updated\");\n\n                JSONObject parsed = new JSONObject(httpResponse.body());\n\n                parsed.keys().forEachRemaining(jsonKey -> System.out.println(jsonKey + \":\" + parsed.get(jsonKey)));\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode() + \" on update phone\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_BAD_REQUEST: // 400\n                        System.out.println(\"Error:400 Invalid input\");\n                        break;\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar postObj = {\n    phone: '+93701234567',\n    a: 'Mr. ',\n    b: 'Smith',\n    c: '2020-02-23 18:00',\n    d: '12.34',\n    e: 'restaurant Blue Oyster'\n};\n\nvar postdata = JSON.stringify(postObj);\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/phones/1234',\n    method: 'PUT',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'Content-Length': postdata.length,\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log(\"Success: code = 200 - phone resource created\");\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 400) {\n        console.log(\"Error: code = 400 - Invalid input\");\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 402) {\n        console.log(\"Error: code = 402 - There are not enough funds on your account!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\nreq.write(postdata);\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$uri = 'https://api.lox24.eu/phones/12344';\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$body = [\n    'phone' => '+93701234567',\n];\n\nif(!$body = json_encode($body)) {\n    die('JSON encoding error!');\n}\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_CUSTOMREQUEST => 'PUT',\n    CURLOPT_URL => $uri,\n    CURLOPT_POSTFIELDS => $body,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n        'Content-Type: application/json',\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nphone_id = \"12344\"\n\nurl = f'https://api.lox24.eu/phones/{phone_id}'\n\ndata = {\n    \"phone\": \"+93701234567\",\n    \"a\": \"Mr. \",\n    \"b\": \"Smith \",\n    \"c\": \"2020-02-23 18:00\",\n    \"d\": \"12.34\",\n    \"e\": \"restaurant Blue Oyster\",\n}\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'Content-Type': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.put(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - phones resource updated')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 400:\n        print(\"Error:400 Invalid input\")\n    elif res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            },
            "delete": {
                "operationId": "api_phones_delete_item",
                "tags": [
                    "phones"
                ],
                "responses": {
                    "204": {
                        "$ref": "#/components/responses/204-deleted"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Delete the entry of Phone",
                "description": "Delete an entry with a phone number.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.phones.id"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X DELETE https://api.lox24.eu/phones/12344  \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "\nusing Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class phones\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\n            var id = \"12344\";\n            string url = \"https://api.lox24.eu/phones/\" + id;\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\";\n            httpWebRequest.Method = \"DELETE\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    if(resp.StatusCode == HttpStatusCode.NoContent) { //204\n                        Console.WriteLine(\"Success: phone was deleted\");\n                    } else {\n                        Console.WriteLine(\"Error: something went wrong, code({0})\", respCode);\n                        Stream respStream = resp.GetResponseStream();\n                        using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                        {\n                            string responseText = sr.ReadToEnd();\n\n                            JObject parsed = JObject.Parse(responseText);\n\n                            foreach (var pair in parsed)\n                            {\n                                Console.WriteLine(\"{0}: {1}\", pair.Key, pair.Value);\n                            }\n                        }\n                    }\n\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\turl := \"https://api.lox24.eu/phones/12344\"\n\tmethod := \"DELETE\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(method, url, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tswitch res.StatusCode {\n\tcase 204:\n\t\tfmt.Println(\"Success: code = 204 - phones resource deleted\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.phones;\n\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class DeletePhonesItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\n        var id = \"12344\";\n        var url = \"https://api.lox24.eu/phones/\" + id;\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .DELETE()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_NO_CONTENT) {\n                System.out.println(\"Success: phone was deleted\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: something went wrong \" + httpResponse.statusCode());\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n                JSONObject parsed = new JSONObject(httpResponse.body());\n\n                parsed.keys().forEachRemaining(jsonKey -> System.out.println(jsonKey + \":\" + parsed.get(jsonKey)));\n\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_BAD_REQUEST: // 400\n                        System.out.println(\"Error:400 Invalid input\");\n                        break;\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar id = '12344';\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/phones/' + id,\n    method: 'DELETE',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 204) {\n        console.log('Success: code = 204 - phones resource deleted');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Resource not found\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();\n\n\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$id = '12344';\n$uri = 'https://api.lox24.eu/phones/' . $id;\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_CUSTOMREQUEST => 'DELETE',\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\nif(204 === $code) {\n    echo \"Phone with id = {$id} was deleted!\";\n} elseif(404 === $code) {\n    echo \"Phone with id = {$id} not found!\";\n} else {\n    $data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n    echo \"Phone: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nid = \"12344\"\n\nurl = f'https://api.lox24.eu/phones/{id}'\n\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.delete(url, headers=headers, timeout=100)\n    if res.status_code != 204: # No Content\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - phones resource was deleted')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/short_link_campaigns": {
            "get": {
                "operationId": "api_short_link_campaigns_get_collection",
                "tags": [
                    "campaigns"
                ],
                "responses": {
                    "200": {
                        "description": "short_link_campaigns collection",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "hydra:member": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/schema.short_link_campaigns.jsonld-short_link_campaign_read"
                                            }
                                        },
                                        "hydra:totalItems": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "hydra:view": {
                                            "$ref": "#/components/schemas/hydra.view"
                                        },
                                        "hydra:search": {
                                            "$ref": "#/components/schemas/hydra.search"
                                        }
                                    },
                                    "required": [
                                        "hydra:member"
                                    ]
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/schema.short_link_campaigns-short_link_campaign_read"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "List of all Short Link Campaigns",
                "description": "Retrieve the list of all existing Short Link Campaigns ordered by the field `created_at` in descending order.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/filter.common.page"
                    },
                    {
                        "$ref": "#/components/parameters/order.common.created_at"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link.name.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.url.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.created_at.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.created_at.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.type.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.type.array"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X GET https://api.lox24.eu/short_link_campaigns \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/short_link_campaigns?page=1\";\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; // or \"application/ld+json\"\n            httpWebRequest.Method = \"GET\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"collection response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/short_link_campaigns?page=1\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.short_links;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetShortLinkCampaignCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/short_link_campaigns?page=1\";\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" collection response\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n            } else {\n                System.out.println(\"Error: something went wrong, code(\" + httpResponse.statusCode() + \")\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar query = \"page=1\";\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/short_link_campaigns?' + query,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - list response');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$uri = 'https://api.lox24.eu/short_link_campaigns';\n\n$filters = [\n    'page' => 1,\n];\n\n$uri .= $filters ? '?' . http_build_query($filters) : '';\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: $token\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = $code, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nurl = \"https://api.lox24.eu/short_link_campaigns?page=1\"\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - items collection response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n",
                        "label": "Python"
                    }
                ]
            },
            "post": {
                "operationId": "api_short_link_campaigns_post_collection",
                "tags": [
                    "campaigns"
                ],
                "responses": {
                    "201": {
                        "description": "short_link_campaigns resource created",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.short_link_campaigns.jsonld-short_link_campaign_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.short_link_campaigns-short_link_campaign_read"
                                }
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/components/responses/400-bad-request"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "422": {
                        "$ref": "#/components/responses/422-unprocessable-entity"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Create a Short Link Campaign",
                "description": "Create a new Short Link Campaign entity with destination url, type and name",
                "parameters": [],
                "requestBody": {
                    "description": "The new short_link_campaigns resource",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/schema.short_link_campaigns-short_link_campaign_write"
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X POST https://api.lox24.eu/short_link_campaigns \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n  -d '{\n      \"type\": 2,\n      \"name\": \"test #2\",\n      \"url\": \"https://some-destination-endpoint.here\"\n  }'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json;\nusing Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/short_link_campaigns\";\n\n            var data = new {\n                type = 2,\n                name = \"test #2\",\n                url = \"https://some-destination-endpoint.here\",\n            };\n\n            string postdata = JsonConvert.SerializeObject(data);\n\n            Console.WriteLine(\"Post data: {0}\", postdata);\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.ContentType = \"application/json; charset=utf-8\";\n            httpWebRequest.Accept = \"application/json\"; // or application/ld+json\n            httpWebRequest.Method = \"POST\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))\n            {\n                streamWriter.Write(postdata);\n                streamWriter.Flush();\n                streamWriter.Close();\n            }\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n\n                    if(resp.StatusCode == HttpStatusCode.Created) {\n                        Console.WriteLine(\"Success:{0} {1}\", (int)resp.StatusCode, \"item resource created\");\n                    } else {\n                        Console.WriteLine(\"Error: wrong response code {0} on create item\", (int)resp.StatusCode);\n                    }\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.BadRequest: // 400\n                        Console.WriteLine(\"Error:400 Invalid input\");\n                        break;\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"bytes\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"POST\"\n\tconst URL = \"https://api.lox24.eu/short_link_campaigns\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tpayload := map[string]interface{}{\n\t\t\"type\": 2,\n\t\t\"name\": \"test #2\",\n\t\t\"url\": \"https://some-destination-endpoint.here\",\n\t}\n\n\tjsonPayload, _ := json.Marshal(payload)\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, bytes.NewBuffer(jsonPayload))\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Content-Type\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 201:\n\t\tfmt.Println((string(body)))\n\tcase 400:\n\t\tfmt.Println(\"Error: code = 400 - Invalid input\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.short_links;\n\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class AddShortLinkCampaignItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/short_link_campaigns\";\n\n        var json = new JSONObject();\n\n        json.put(\"type\", 2);\n        json.put(\"name\", \"test #2\");\n        json.put(\"url\", \"https://some-destination-endpoint.here\");\n\n        var postData = json.toString();\n\n        System.out.println(\"Post data: \" + postData);\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Content-Type\", \"application/json; charset=utf-8\")\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .POST(HttpRequest.BodyPublishers.ofString(postData))\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_CREATED) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" resource created\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode() + \" on create item\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_BAD_REQUEST: // 400\n                        System.out.println(\"Error:400 Invalid input\");\n                        break;\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar postObj = {\n    type: 2,\n    name: \"test #2\",\n    url: \"https://some-destination-endpoint.here\"\n};\n\nvar postdata = JSON.stringify(postObj);\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/short_link_campaigns',\n    method: 'POST',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'Content-Length': postdata.length,\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 201) {\n        console.log(\"Success: code = 201 - resource created\");\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 400) {\n        console.log(\"Error: code = 400 - Invalid input\");\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 402) {\n        console.log(\"Error: code = 402 - There are not enough funds on your account!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\nreq.write(postdata);\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$uri = 'https://api.lox24.eu/short_link_campaigns';\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$body = [\n    \"type\" => 2,\n    \"name\" => \"test #2\",\n    \"url\" => \"https://some-destination-endpoint.here\",\n];\n\nif(!$body = json_encode($body)) {\n    die('JSON encoding error!');\n}\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_POST => true,\n    CURLOPT_URL => $uri,\n    CURLOPT_POSTFIELDS => $body,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: $token\",\n        'Accept: application/json', // or application/ld+json\n        'Content-Type: application/json',\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(201 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = $code, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nurl = 'https://api.lox24.eu/short_link_campaigns'\n\n\ndata = {\n   'type': 2,\n   'name': 'test #2',\n   'url': 'https://some-destination-endpoint.here'\n}\n\nheaders = {\n    'Accept': 'application/json',\n    'Content-Type': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\nprint(\"Post data : \", json.dumps(data, indent=4))\n\ntry:\n    # timeout is 100 seconds, the payload is automatically converted to json format\n    res = requests.post(url, headers=headers, json=data, timeout=100)\n    if res.status_code != 201: # Created\n        print(\"Error: Wrong response code on create campaign\")\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - resource created')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 400:\n        print(\"Error:400 Invalid input\")\n    elif res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 402:\n        print(\"Error:402 There are not enough funds on your account!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/short_link_campaigns/subscribe": {
            "post": {
                "operationId": "post_subscribe",
                "tags": [
                    "campaigns"
                ],
                "responses": {
                    "201": {
                        "description": "short_link_campaigns resource created",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.short_link_campaigns.jsonld-short_link_campaign_subscribe_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.short_link_campaigns-short_link_campaign_subscribe_read"
                                }
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/components/responses/400-bad-request"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "422": {
                        "$ref": "#/components/responses/422-unprocessable-entity"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Create a subscription form campaign",
                "description": "Creates a short link campaign that provides URL to a subscription form where users can subscribe to campaigns. The user phone number will be added to a user-defined group that you specify during campaign creation.",
                "parameters": [],
                "requestBody": {
                    "description": "The new short_link_campaigns resource",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/schema.short_link_campaigns-short_link_campaign_subscribe_write"
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X POST https://api.lox24.eu/short_link_campaigns/subscription \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n  -d '{\n      \"name\": \"test #2\",\n      \"group_id\": 12345\n  }'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json;\nusing Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/short_link_campaigns/subscription\";\n\n            var data = new {\n                name = \"test #2\",\n                group_id = 12345,\n            };\n\n            string postdata = JsonConvert.SerializeObject(data);\n\n            Console.WriteLine(\"Post data: {0}\", postdata);\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.ContentType = \"application/json; charset=utf-8\";\n            httpWebRequest.Accept = \"application/json\"; // or application/ld+json\n            httpWebRequest.Method = \"POST\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))\n            {\n                streamWriter.Write(postdata);\n                streamWriter.Flush();\n                streamWriter.Close();\n            }\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n\n                    if(resp.StatusCode == HttpStatusCode.Created) {\n                        Console.WriteLine(\"Success:{0} {1}\", (int)resp.StatusCode, \"item resource created\");\n                    } else {\n                        Console.WriteLine(\"Error: wrong response code {0} on create item\", (int)resp.StatusCode);\n                    }\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.BadRequest: // 400\n                        Console.WriteLine(\"Error:400 Invalid input\");\n                        break;\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"bytes\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"POST\"\n\tconst URL = \"https://api.lox24.eu/short_link_campaigns/subscription\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tpayload := map[string]interface{}{\n\t\t\"name\": \"test #2\",\n\t\t\"group_id\": 12345\n\t}\n\n\tjsonPayload, _ := json.Marshal(payload)\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, bytes.NewBuffer(jsonPayload))\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Content-Type\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 201:\n\t\tfmt.Println((string(body)))\n\tcase 400:\n\t\tfmt.Println(\"Error: code = 400 - Invalid input\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.short_links;\n\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class AddShortLinkCampaignItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/short_link_campaigns/subscription\";\n\n        var json = new JSONObject();\n\n        json.put(\"name\", \"test #2\");\n        json.put(\"group_id\", 12345);\n\n        var postData = json.toString();\n\n        System.out.println(\"Post data: \" + postData);\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Content-Type\", \"application/json; charset=utf-8\")\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .POST(HttpRequest.BodyPublishers.ofString(postData))\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_CREATED) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" resource created\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode() + \" on create item\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_BAD_REQUEST: // 400\n                        System.out.println(\"Error:400 Invalid input\");\n                        break;\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar postObj = {\n    group_id: 12345,\n    name: \"test #2\"\n};\n\nvar postdata = JSON.stringify(postObj);\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/short_link_campaigns/subscription',\n    method: 'POST',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'Content-Length': postdata.length,\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 201) {\n        console.log(\"Success: code = 201 - resource created\");\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 400) {\n        console.log(\"Error: code = 400 - Invalid input\");\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 402) {\n        console.log(\"Error: code = 402 - There are not enough funds on your account!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\nreq.write(postdata);\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$uri = 'https://api.lox24.eu/short_link_campaigns/subscription';\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$body = [\n    \"group_id\" => 12345,\n    \"name\" => \"test #2\",\n];\n\nif(!$body = json_encode($body)) {\n    die('JSON encoding error!');\n}\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_POST => true,\n    CURLOPT_URL => $uri,\n    CURLOPT_POSTFIELDS => $body,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: $token\",\n        'Accept: application/json', // or application/ld+json\n        'Content-Type: application/json',\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(201 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = $code, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nurl = 'https://api.lox24.eu/short_link_campaigns/subscription'\n\n\ndata = {\n   'group_id': 2,\n   'name': 'test #2',\n}\n\nheaders = {\n    'Accept': 'application/json',\n    'Content-Type': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\nprint(\"Post data : \", json.dumps(data, indent=4))\n\ntry:\n    # timeout is 100 seconds, the payload is automatically converted to json format\n    res = requests.post(url, headers=headers, json=data, timeout=100)\n    if res.status_code != 201: # Created\n        print(\"Error: Wrong response code on create campaign\")\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - resource created')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 400:\n        print(\"Error:400 Invalid input\")\n    elif res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 402:\n        print(\"Error:402 There are not enough funds on your account!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/short_link_campaigns/unsubscribe": {
            "post": {
                "operationId": "post_unsubscribe",
                "tags": [
                    "campaigns"
                ],
                "responses": {
                    "201": {
                        "description": "short_link_campaigns resource created",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.short_link_campaigns.jsonld-short_link_campaign_subscribe_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.short_link_campaigns-short_link_campaign_subscribe_read"
                                }
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/components/responses/400-bad-request"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "422": {
                        "$ref": "#/components/responses/422-unprocessable-entity"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Create a unsubscription form campaign",
                "description": "Creates a short link campaign that redirects users to a special unsubscription form where they can unsubscribe from SMS notifications and optionally provide a reason. You can optionally specify a phone group where the data will be collected. Even without specifying a group, the phone number will be added to the blocked numbers list with type 2 (unsubscribed).",
                "parameters": [],
                "requestBody": {
                    "description": "The new short_link_campaigns resource",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/schema.short_link_campaigns-short_link_campaign_subscribe_write"
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X POST https://api.lox24.eu/short_link_campaigns/unsubscription \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n  -d '{\n      \"name\": \"test #2\",\n      \"group_id\": 12345\n  }'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json;\nusing Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/short_link_campaigns/unsubscription\";\n\n            var data = new {\n                name = \"test #2\",\n                group_id = 12345,\n            };\n\n            string postdata = JsonConvert.SerializeObject(data);\n\n            Console.WriteLine(\"Post data: {0}\", postdata);\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.ContentType = \"application/json; charset=utf-8\";\n            httpWebRequest.Accept = \"application/json\"; // or application/ld+json\n            httpWebRequest.Method = \"POST\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))\n            {\n                streamWriter.Write(postdata);\n                streamWriter.Flush();\n                streamWriter.Close();\n            }\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n\n                    if(resp.StatusCode == HttpStatusCode.Created) {\n                        Console.WriteLine(\"Success:{0} {1}\", (int)resp.StatusCode, \"item resource created\");\n                    } else {\n                        Console.WriteLine(\"Error: wrong response code {0} on create item\", (int)resp.StatusCode);\n                    }\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.BadRequest: // 400\n                        Console.WriteLine(\"Error:400 Invalid input\");\n                        break;\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"bytes\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"POST\"\n\tconst URL = \"https://api.lox24.eu/short_link_campaigns/unsubscription\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tpayload := map[string]interface{}{\n\t\t\"name\": \"test #2\",\n\t\t\"group_id\": 12345\n\t}\n\n\tjsonPayload, _ := json.Marshal(payload)\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, bytes.NewBuffer(jsonPayload))\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Content-Type\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 201:\n\t\tfmt.Println((string(body)))\n\tcase 400:\n\t\tfmt.Println(\"Error: code = 400 - Invalid input\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.short_links;\n\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class AddShortLinkCampaignItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/short_link_campaigns/unsubscription\";\n\n        var json = new JSONObject();\n\n        json.put(\"name\", \"test #2\");\n        json.put(\"group_id\", 12345);\n\n        var postData = json.toString();\n\n        System.out.println(\"Post data: \" + postData);\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Content-Type\", \"application/json; charset=utf-8\")\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .POST(HttpRequest.BodyPublishers.ofString(postData))\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_CREATED) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" resource created\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode() + \" on create item\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_BAD_REQUEST: // 400\n                        System.out.println(\"Error:400 Invalid input\");\n                        break;\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar postObj = {\n    group_id: 12345,\n    name: \"test #2\"\n};\n\nvar postdata = JSON.stringify(postObj);\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/short_link_campaigns/unsubscription',\n    method: 'POST',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'Content-Length': postdata.length,\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 201) {\n        console.log(\"Success: code = 201 - resource created\");\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 400) {\n        console.log(\"Error: code = 400 - Invalid input\");\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 402) {\n        console.log(\"Error: code = 402 - There are not enough funds on your account!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\nreq.write(postdata);\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$uri = 'https://api.lox24.eu/short_link_campaigns/unsubscription';\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$body = [\n    \"group_id\" => 12345,\n    \"name\" => \"test #2\",\n];\n\nif(!$body = json_encode($body)) {\n    die('JSON encoding error!');\n}\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_POST => true,\n    CURLOPT_URL => $uri,\n    CURLOPT_POSTFIELDS => $body,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: $token\",\n        'Accept: application/json', // or application/ld+json\n        'Content-Type: application/json',\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(201 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = $code, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nurl = 'https://api.lox24.eu/short_link_campaigns/unsubscription'\n\n\ndata = {\n   'group_id': 2,\n   'name': 'test #2',\n}\n\nheaders = {\n    'Accept': 'application/json',\n    'Content-Type': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\nprint(\"Post data : \", json.dumps(data, indent=4))\n\ntry:\n    # timeout is 100 seconds, the payload is automatically converted to json format\n    res = requests.post(url, headers=headers, json=data, timeout=100)\n    if res.status_code != 201: # Created\n        print(\"Error: Wrong response code on create campaign\")\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - resource created')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 400:\n        print(\"Error:400 Invalid input\")\n    elif res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 402:\n        print(\"Error:402 There are not enough funds on your account!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/short_link_campaigns/{code}": {
            "get": {
                "operationId": "api_short_link_campaigns_get_item",
                "tags": [
                    "campaigns"
                ],
                "responses": {
                    "200": {
                        "description": "short_link_campaigns resource",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.short_link_campaigns.jsonld-short_link_campaign_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.short_link_campaigns-short_link_campaign_read"
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Get Short Link data by Campaign-ID",
                "description": "Retrieve a specific Short Link Campaign by it's ID. If the Campaign is not found then the HTTP code response will be 404.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.short_link_campaigns.code"
                    }
                ],
                "deprecated": false
            },
            "put": {
                "operationId": "api_short_link_campaigns_put_item",
                "tags": [
                    "campaigns"
                ],
                "responses": {
                    "200": {
                        "description": "short_link_campaigns resource updated",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.short_link_campaigns.jsonld-short_link_campaign_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.short_link_campaigns-short_link_campaign_read"
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Edit a Short Link Campaign",
                "description": "Edit the values of a specific Short Link Campaigns. If the Campaign is not found then the HTTP code response will be 404.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.short_link_campaigns.code"
                    }
                ],
                "requestBody": {
                    "description": "The updated short_link_campaigns resource",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/schema.short_link_campaigns-short_link_campaign_write"
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X PUT https://api.lox24.eu/short_link_campaigns/campaign_id_here \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n  -d '{\n      \"type\": 2,\n      \"name\": \"test #2\",\n      \"url\": \"https://some-destination-endpoint.here\"\n  }'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "\nusing Newtonsoft.Json;\nusing Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/short_link_campaigns/campaign_id_here\";\n\n            var data = new {\n                name = \"test #2\",\n                url = \"https://some-destination-endpoint.here\",\n            };\n\n\n            string postdata = JsonConvert.SerializeObject(data);\n\n            Console.WriteLine(\"Post data: {0}\", postdata);\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.ContentType = \"application/json; charset=utf-8\";\n            httpWebRequest.Accept = \"application/json\"; // or application/ld+json\n            httpWebRequest.Method = \"POST\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))\n            {\n                streamWriter.Write(postdata);\n                streamWriter.Flush();\n                streamWriter.Close();\n            }\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n\n                    if(resp.StatusCode == HttpStatusCode.Created) {\n                        Console.WriteLine(\"Success:{0} {1}\", (int)resp.StatusCode, \"item resource created\");\n                    } else {\n                        Console.WriteLine(\"Error: wrong response code {0} on create item\", (int)resp.StatusCode);\n                    }\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.BadRequest: // 400\n                        Console.WriteLine(\"Error:400 Invalid input\");\n                        break;\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"bytes\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"PUT\"\n\tconst URL = \"https://api.lox24.eu/short_link_campaigns/campaign_id_here\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tpayload := map[string]interface{}{\n\t\t\"name\": \"test #2\",\n\t\t\"url\": \"https://some-destination-endpoint.here\",\n\t}\n\n\tjsonPayload, _ := json.Marshal(payload)\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, bytes.NewBuffer(jsonPayload))\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Content-Type\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 400:\n\t\tfmt.Println(\"Error: code = 400 - Invalid input\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.short_links;\n\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class EditShortLinkCampaignItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/short_link_campaigns/campaign_id_here\";\n\n        var json = new JSONObject();\n        json.put(\"type\", 2);\n        json.put(\"name\", \"test #2\");\n        json.put(\"url\", \"https://some-destination-endpoint.here\");\n\n        var data = json.toString();\n\n        System.out.println(\"PUT data: \" + data);\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Content-Type\", \"application/json; charset=utf-8\")\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .PUT(HttpRequest.BodyPublishers.ofString(data))\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success: \" + httpResponse.statusCode() + \" resource updated\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode() + \" on update a campaign\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_BAD_REQUEST: // 400\n                        System.out.println(\"Error:400 Invalid input\");\n                        break;\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar id = 'campaign_id_here';\n\nvar postObj = {\n    name: \"test #2\",\n    url: \"https://some-destination-endpoint.here\"\n};\n\nvar postdata = JSON.stringify(postObj);\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/short_link_campaigns/' + id,\n    method: 'PUT',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'Content-Length': postdata.length,\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log(\"Success: code = 201 - resource updated\");\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 400) {\n        console.log(\"Error: code = 400 - Invalid input\");\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Resource not found\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode);\n    }\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\nreq.write(postdata);\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$uri = 'https://api.lox24.eu/short_link_campaigns/campaign_id_here';\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$body = [\n    \"name\" => \"test #2\",\n    \"url\" => \"https://some-destination-endpoint.here\",\n];\n\nif(!$body = json_encode($body)) {\n    die('JSON encoding error!');\n}\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_CUSTOMREQUEST => 'PUT',\n    CURLOPT_URL => $uri,\n    CURLOPT_POSTFIELDS => $body,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: $token\",\n        'Accept: application/json', // or application/ld+json\n        'Content-Type: application/json',\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = $code, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\nid = \"short_link_campaigns\"\n\nurl = f'https://api.lox24.eu/short_link_campaigns/{id}'\n\n\ndata = {\n   'name': 'test #2',\n   'url': 'https://some-destination-endpoint.here'\n}\nheaders = {\n    'Accept': 'application/json',\n    'Content-Type': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\nprint(\"Post data : \", json.dumps(data, indent=4))\n\ntry:\n    # timeout is 100 seconds, the payload is automatically converted to json format\n    res = requests.put(url, headers=headers, json=data, timeout=100)\n    if res.status_code != 200: # OK\n        print(\"Error: Wrong response code on update campaign\")\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - campaign updated')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 400:\n        print(\"Error:400 Invalid input\")\n    elif res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            },
            "delete": {
                "operationId": "api_short_link_campaigns_delete_item",
                "tags": [
                    "campaigns"
                ],
                "responses": {
                    "204": {
                        "$ref": "#/components/responses/204-deleted"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Delete a Short Link Campaign",
                "description": "Delete a Short Link Campaign. If the Campaign is not found then the HTTP code response will be 404.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.short_link_campaigns.code"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X DELETE https://api.lox24.eu/short_link_campaigns/campaign_id_here  \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "\nusing Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\n            var id = \"campaign_id_here\";\n            string url = \"https://api.lox24.eu/short_link_campaigns/\" + id;\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\";\n            httpWebRequest.Method = \"DELETE\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    if(resp.StatusCode == HttpStatusCode.NoContent) { //204\n                        Console.WriteLine(\"Success: item was deleted\");\n                    } else {\n                        Console.WriteLine(\"Error: something went wrong, code({0})\", respCode);\n                        Stream respStream = resp.GetResponseStream();\n                        using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                        {\n                            string responseText = sr.ReadToEnd();\n\n                            JObject parsed = JObject.Parse(responseText);\n\n                            foreach (var pair in parsed)\n                            {\n                                Console.WriteLine(\"{0}: {1}\", pair.Key, pair.Value);\n                            }\n                        }\n                    }\n\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "\npackage main\n\nimport (\n\t\"fmt\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"DELETE\"\n\tconst URL = \"https://api.lox24.eu/short_link_campaigns/campaign_id_here\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tswitch res.StatusCode {\n\tcase 204:\n\t\tfmt.Println(\"Item was deleted!\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.short_links;\n\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class DeleteShortLinkCampaignItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var userId = \"1234567\";\n\n        var id = \"campaign_id_here\";\n        var url = \"https://api.lox24.eu/short_link_campaigns/\" + id;\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .DELETE()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_NO_CONTENT) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"item was delete.\");\n            } else {\n                System.out.println(\"Error: something went wrong, code(\" + httpResponse.statusCode() + \")\");\n\n                JSONObject parsed = new JSONObject(httpResponse.body());\n\n                parsed.keys().forEachRemaining(jsonKey -> System.out.println(jsonKey + \":\" + parsed.get(jsonKey)));\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar id = 'campaign_id_here';\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/short_link_campaigns/' + id,\n    method: 'DELETE',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 204) {\n        console.log('Success: code = 204 - resource deleted');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Resource not found\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();\n\n\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$id = 'campaign_id_here';\n$uri = 'https://api.lox24.eu/short_link_campaigns/' . $id;\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_CUSTOMREQUEST => 'DELETE',\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: $token\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\nif(204 === $code) {\n    echo \"Item with id = $id was deleted!\";\n} elseif(404 === $code) {\n    echo \"Item with id = $id not found!\";\n} else {\n    $data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n    echo \"Campaign: code = $code, data = \" . var_export($data, true);\n}\n\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\nid = \"campaign_id_here\"\n\nurl = f'https://api.lox24.eu/short_link_campaigns/{id}'\n\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.delete(url, headers=headers, timeout=100)\n    if res.status_code != 204: # No Content\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - item was deleted')\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/bulks/{id}/requests": {
            "get": {
                "operationId": "get_bulk_requests",
                "tags": [
                    "requests"
                ],
                "responses": {
                    "200": {
                        "description": "short_link_requests collection",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "hydra:member": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/schema.short_link_requests.jsonld-short_link_request_read"
                                            }
                                        },
                                        "hydra:totalItems": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "hydra:view": {
                                            "$ref": "#/components/schemas/hydra.view"
                                        },
                                        "hydra:search": {
                                            "$ref": "#/components/schemas/hydra.search"
                                        }
                                    },
                                    "required": [
                                        "hydra:member"
                                    ]
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/schema.short_link_requests-short_link_request_read"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "List by a bulk sms ID",
                "description": "List of all requests by a SMS Bulk ID",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.bulks.id"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.page"
                    },
                    {
                        "$ref": "#/components/parameters/order.short_link_request.date"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.ip.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.url.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.user_agent.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.country.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.country.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.referer.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.type.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.type.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.browser.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.os.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.os_version.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.software_type.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.hardware_type.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.between"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.gt"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.gte"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.lt"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.lte"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X GET https://api.lox24.eu/bulks/{bulk_id_here}/requests \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string bulk = \"bulk_id_here\";\n            string url = \"https://api.lox24.eu/bulks/\" + bulk + \"/requests?page=1\";\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; // or \"application/ld+json\"\n            httpWebRequest.Method = \"GET\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"collection response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/bulks/{bulk_id_here}/requests?page=1\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.sms_clicks;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/bulks/{bulk_id_here}/requests?page=1\";\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" collection response\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n            } else {\n                System.out.println(\"Error: something went wrong, code(\" + httpResponse.statusCode() + \")\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar query = \"page=1\";\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/bulks/{bulk_id_here}/requests?' + query,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - list response');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n$bulkId = 'bulk_id';\n\n$uri = \"https://api.lox24.eu/bulks/$bulkId/requests\";\n\n$filters = [\n    'page' => 1,\n];\n\n$uri .= $filters ? '?' . http_build_query($filters) : '';\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: $token\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = $code, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\nbulkId = \"bulk_id\"\n\nurl = \"https://api.lox24.eu/bulks/{bulk_id}/requests?page=1\"\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - items collection response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/short_link_campaigns/{code}/requests": {
            "get": {
                "operationId": "get_campaign_requests",
                "tags": [
                    "requests"
                ],
                "responses": {
                    "200": {
                        "description": "short_link_requests collection",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "hydra:member": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/schema.short_link_requests.jsonld-short_link_request_read"
                                            }
                                        },
                                        "hydra:totalItems": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "hydra:view": {
                                            "$ref": "#/components/schemas/hydra.view"
                                        },
                                        "hydra:search": {
                                            "$ref": "#/components/schemas/hydra.search"
                                        }
                                    },
                                    "required": [
                                        "hydra:member"
                                    ]
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/schema.short_link_requests-short_link_request_read"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "List requests by campaign",
                "description": "Lists all clicks on shortlinks for a specific campaign",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.short_link_campaigns.code"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.page"
                    },
                    {
                        "$ref": "#/components/parameters/order.short_link_request.date"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.ip.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.url.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.user_agent.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.country.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.country.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.referer.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.type.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.type.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.browser.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.os.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.os_version.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.software_type.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.hardware_type.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.between"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.gt"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.gte"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.lt"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.lte"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X GET https://api.lox24.eu//short_link_campaigns/{campaign_id}/requests \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string campaign = \"campaign_id_here\";\n            string url = \"https://api.lox24.eu/short_link_campaigns/\" + campaign + \"/requests?page=1\";\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; // or \"application/ld+json\"\n            httpWebRequest.Method = \"GET\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"collection response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/short_link_campaigns/{campaign_id_here}/requests?page=1\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.sms_clicks;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/short_link_campaigns/{campaign_id_here}/requests?page=1\";\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" collection response\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n            } else {\n                System.out.println(\"Error: something went wrong, code(\" + httpResponse.statusCode() + \")\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar query = \"page=1\";\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/short_link_campaigns/{campaign_id_here}/requests?' + query,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - list response');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n$campaignId = 'campaign_id';\n\n$uri = \"https://api.lox24.eu/short_link_campaigns/$campaignId/requests\";\n\n$filters = [\n    'page' => 1,\n];\n\n$uri .= $filters ? '?' . http_build_query($filters) : '';\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: $token\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = $code, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\ncampaignId = \"campaign_id\"\n\nurl = \"https://api.lox24.eu/short_link_campaigns/{campaignId}/requests?page=1\"\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - items collection response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/short_link_requests": {
            "get": {
                "operationId": "api_short_link_requests_get_collection",
                "tags": [
                    "requests"
                ],
                "responses": {
                    "200": {
                        "description": "short_link_requests collection",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "hydra:member": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/schema.short_link_requests.jsonld-short_link_request_read"
                                            }
                                        },
                                        "hydra:totalItems": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "hydra:view": {
                                            "$ref": "#/components/schemas/hydra.view"
                                        },
                                        "hydra:search": {
                                            "$ref": "#/components/schemas/hydra.search"
                                        }
                                    },
                                    "required": [
                                        "hydra:member"
                                    ]
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/schema.short_link_requests-short_link_request_read"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "List all requests",
                "description": "Lists all clicks on shortlinks",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/filter.common.page"
                    },
                    {
                        "$ref": "#/components/parameters/order.short_link_request.date"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.ip.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.url.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.user_agent.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.country.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.country.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.referer.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.type.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.type.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.browser.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.browser_version.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.os.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.os_version.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.software_type.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.hardware_type.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.between"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.gt"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.gte"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.lt"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.lte"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X GET https://api.lox24.eu/short_link_requests \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/short_link_requests?page=1\";\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; // or \"application/ld+json\"\n            httpWebRequest.Method = \"GET\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"collection response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/short_link_requests?page=1\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.sms_clicks;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/short_link_requests?page=1\";\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" collection response\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n            } else {\n                System.out.println(\"Error: something went wrong, code(\" + httpResponse.statusCode() + \")\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar query = \"page=1\";\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/short_link_requests?' + query,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - list response');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$uri = 'https://api.lox24.eu/short_link_requests';\n\n$filters = [\n    'page' => 1,\n];\n\n$uri .= $filters ? '?' . http_build_query($filters) : '';\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: $token\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = $code, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nurl = \"https://api.lox24.eu/short_link_requests?page=1\"\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - items collection response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/short_link_requests/{id}": {
            "get": {
                "operationId": "api_short_link_requests_get_item",
                "tags": [
                    "requests"
                ],
                "responses": {
                    "200": {
                        "description": "short_link_requests resource",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.short_link_requests.jsonld-short_link_request_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.short_link_requests-short_link_request_read"
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Request info",
                "description": "Retrieve the detail information about a short link click",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.short_link_requests.id"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl https://api.lox24.eu/short_link_requests/request_id_here  \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string id = \"request_id_here\";\n\n            string url = \"https://api.lox24.eu/short_link_requests/\" + id;\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; //or application/ld+json\n            httpWebRequest.Method = \"GET\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"item resource response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/short_link_requests/request_id_here\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.sms_clicks;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var userId = \"1234567\";\n        var id = \"request_id_here\";\n\n        var url = \"https://api.lox24.eu/short_link_requests\" + id;\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode());\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode());\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar id = 'request_id_here';\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/short_link_requests/' + id,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Resource not found\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\n\nreq.end();\n\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$id = 'request_id_here';\n$uri = 'https://api.lox24.eu/short_link_requests/' . $id;\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: $token\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} elseif(404 === $code) {\n    echo \"Item with id = $id not found!\";\n} else {\n    echo \"Error: code = $code, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\nid = \"request_id\"\n\nurl = f'https://api.lox24.eu/short_link_requests/{id}'\n\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - resource response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/short_links/{shortCode}/requests": {
            "get": {
                "operationId": "get_short_links_requests",
                "tags": [
                    "requests"
                ],
                "responses": {
                    "200": {
                        "description": "short_link_requests collection",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "hydra:member": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/schema.short_link_requests.jsonld-short_link_request_read"
                                            }
                                        },
                                        "hydra:totalItems": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "hydra:view": {
                                            "$ref": "#/components/schemas/hydra.view"
                                        },
                                        "hydra:search": {
                                            "$ref": "#/components/schemas/hydra.search"
                                        }
                                    },
                                    "required": [
                                        "hydra:member"
                                    ]
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/schema.short_link_requests-short_link_request_read"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "List by a short link",
                "description": "List of all requests by a short link campaign code",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.short_links.shortCode"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.page"
                    },
                    {
                        "$ref": "#/components/parameters/order.short_link_request.date"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.ip.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.url.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.user_agent.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.country.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.country.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.referer.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.type.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.type.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.browser.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.browser_version.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.os.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.os_version.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.software_type.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.hardware_type.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.between"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.gt"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.gte"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.lt"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.lte"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X GET https://api.lox24.eu/short_links/{short_link_id}/requests \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string link = \"short_link_id\";\n            string url = \"https://api.lox24.eu/short_links/\" + link + \"/requests?page=1\";\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; // or \"application/ld+json\"\n            httpWebRequest.Method = \"GET\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"collection response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/short_links/{short_link_id_here}/requests?page=1\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.sms_clicks;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/short_links/{short_link_id_here}/requests?page=1\";\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" collection response\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n            } else {\n                System.out.println(\"Error: something went wrong, code(\" + httpResponse.statusCode() + \")\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar query = \"page=1\";\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/short_links/{short_link_id_here}/requests?' + query,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - list response');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n$linkId = 'campaign_id';\n\n$uri = \"https://api.lox24.eu/short_links/$linkId/requests\";\n\n$filters = [\n    'page' => 1,\n];\n\n$uri .= $filters ? '?' . http_build_query($filters) : '';\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: $token\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = $code, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\nlinkId = \"short_link_id\"\n\nurl = \"https://api.lox24.eu/short_links/{linkId}/requests?page=1\"\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - items collection response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/sms/{uuid}/requests": {
            "get": {
                "operationId": "get_sms_requests",
                "tags": [
                    "requests"
                ],
                "responses": {
                    "200": {
                        "description": "short_link_requests collection",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "hydra:member": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/schema.short_link_requests.jsonld-short_link_request_read"
                                            }
                                        },
                                        "hydra:totalItems": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "hydra:view": {
                                            "$ref": "#/components/schemas/hydra.view"
                                        },
                                        "hydra:search": {
                                            "$ref": "#/components/schemas/hydra.search"
                                        }
                                    },
                                    "required": [
                                        "hydra:member"
                                    ]
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/schema.short_link_requests-short_link_request_read"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "List by a SMS",
                "description": "List of all requests by a single SMS ID",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.sms.uuid"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.page"
                    },
                    {
                        "$ref": "#/components/parameters/order.short_link_request.date"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.ip.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.url.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.user_agent.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.country.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.country.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.referer.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.type.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.type.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.browser.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.os.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.os_version.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.software_type.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.hardware_type.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.between"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.gt"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.gte"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.lt"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.date.lte"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X GET https://api.lox24.eu/sms/{sms_id}/requests \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\t\t\tstring sms = \"sms_id\";\n\t\t\tstring url = \"https://api.lox24.eu/sms/\" + sms + \"/requests?page=1\";\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; // or \"application/ld+json\"\n            httpWebRequest.Method = \"GET\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"collection response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/sms/{sms_id_here}/requests?page=1\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.sms_clicks;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/sms/{sms_id_here}/requests?page=1\";\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" collection response\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n            } else {\n                System.out.println(\"Error: something went wrong, code(\" + httpResponse.statusCode() + \")\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar query = \"page=1\";\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/sms/{sms_id_here}/requests?' + query,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - list response');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n$smsId = 'sms_id';\n\n$uri = \"https://api.lox24.eu/sms/$smsId/requests\";\n\n$filters = [\n    'page' => 1,\n];\n\n$uri .= $filters ? '?' . http_build_query($filters) : '';\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: $token\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = $code, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\nsmsId = \"sms_id\"\n\nurl = \"https://api.lox24.eu/sms/{smsId}/requests?page=1\"\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - items collection response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/short_links": {
            "get": {
                "operationId": "api_short_links_get_collection",
                "tags": [
                    "links"
                ],
                "responses": {
                    "200": {
                        "description": "short_links collection",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "hydra:member": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/schema.short_links.jsonld-short_link_read"
                                            }
                                        },
                                        "hydra:totalItems": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "hydra:view": {
                                            "$ref": "#/components/schemas/hydra.view"
                                        },
                                        "hydra:search": {
                                            "$ref": "#/components/schemas/hydra.search"
                                        }
                                    },
                                    "required": [
                                        "hydra:member"
                                    ]
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/schema.short_links-short_link_read"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "List of all individual short links",
                "description": "List of all short links which were used in all existing campaigns.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/filter.common.page"
                    },
                    {
                        "$ref": "#/components/parameters/order.common.updated_at"
                    },
                    {
                        "$ref": "#/components/parameters/filter.short_link_request.url.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.updated_at.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.updated_at.array"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X GET https://api.lox24.eu/short_links \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/short_links?page=1\";\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; // or \"application/ld+json\"\n            httpWebRequest.Method = \"GET\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"collection response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/short_links?page=1\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.sms_clicks;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/short_links?page=1\";\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" collection response\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n            } else {\n                System.out.println(\"Error: something went wrong, code(\" + httpResponse.statusCode() + \")\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar query = \"page=1\";\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/short_links?' + query,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - list response');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$uri = 'https://api.lox24.eu/short_links';\n\n$filters = [\n    'page' => 1,\n];\n\n$uri .= $filters ? '?' . http_build_query($filters) : '';\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: $token\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = $code, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nurl = \"https://api.lox24.eu/short_links?page=1\"\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - items collection response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/short_links/{shortCode}": {
            "get": {
                "operationId": "api_short_links_get_item",
                "deprecated": false,
                "responses": {
                    "200": {
                        "description": "short_links resource",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.short_links.jsonld-short_link_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.short_links-short_link_read"
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Individual short link data by ID",
                "description": "Retrieve all the information about a specific short link.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.short_links.shortCode"
                    }
                ],
                "tags": [
                    "links"
                ],
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl https://api.lox24.eu/short_links/short_link_id  \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string id = \"short_link_id\";\n\n            string url = \"https://api.lox24.eu/short_links/\" + id;\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; //or application/ld+json\n            httpWebRequest.Method = \"GET\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"item resource response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/short_links/short_link_id\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.sms_clicks;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var userId = \"1234567\";\n        var id = \"short_link_id\";\n\n        var url = \"https://api.lox24.eu/short_links/\" + id;\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode());\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode());\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar id = 'short_link_id';\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/short_links/' + id,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Resource not found\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\n\nreq.end();\n\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$id = 'short_link_id';\n$uri = 'https://api.lox24.eu/short_links/' . $id;\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: $token\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} elseif(404 === $code) {\n    echo \"Item with id = $id not found!\";\n} else {\n    echo \"Error: code = $code, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\nid = \"short_link_id\"\n\nurl = f'https://api.lox24.eu/short_links/{id}'\n\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - resource response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/sms": {
            "get": {
                "operationId": "api_sms_get_collection",
                "tags": [
                    "sms"
                ],
                "responses": {
                    "200": {
                        "description": "sms collection",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "hydra:member": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/schema.sms.jsonld-sms_read"
                                            }
                                        },
                                        "hydra:totalItems": {
                                            "$ref": "#/components/schemas/hydra.totalItems"
                                        },
                                        "hydra:view": {
                                            "$ref": "#/components/schemas/hydra.view"
                                        },
                                        "hydra:search": {
                                            "$ref": "#/components/schemas/hydra.search"
                                        }
                                    },
                                    "required": [
                                        "hydra:member"
                                    ]
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/schema.sms-sms_read"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Retrieves the collection of SMS",
                "description": "Getting the list of messages from the postbox, ordered by the field `created_at` in descending order. The postbox contains all sent, not sent and terminated SMS.  You can also optionally sort according to the price or the time of transmit to the network operator. You also have the option of transferring different search criteria to limit the output of postbox's messages.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/filter.common.page"
                    },
                    {
                        "$ref": "#/components/parameters/order.common.created_at"
                    },
                    {
                        "$ref": "#/components/parameters/order.messages.gateway_sent_at"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.is_sent.boolean"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.is_unicode.boolean"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.uuid.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.uuid.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.iso2.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.iso2.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.dlr_code.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.dlr_code.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.status_code.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.status_code.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.gateway_sent_at.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.gateway_sent_at.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.delivery_at.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.delivery_at.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.created_at.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.created_at.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.chars_count.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.chars_count.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.parts_count.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.parts_count.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.bulk.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.bulk.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.source.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.source.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.text.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.phone.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.sender_id.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.ip.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.key_id.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.key_id.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.callback_data.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.callback_data.array"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X GET https://api.lox24.eu/sms \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/sms\";\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; // or \"application/ld+json\"\n            httpWebRequest.Method = \"GET\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"bulks collection response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/sms?created_at[gte]=1590737094\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.sms;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetSmsCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/sms?created_at[gte]=1590737094\";\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\")\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder().build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"bulks collection response\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error:\" + httpResponse.statusCode());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar query = \"uuid[]=44657141-9830-11ea-aa81-96000028b339&uuid[]=5dd2ba0e-9830-11ea-aa81-96000028b339&_order[created_at]=desc\";\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/sms?' + query,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - sms resource response');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$uri = 'https://api.lox24.eu/sms';\n\n$filters = [\n    'text' => 'Test',\n    'uuid' => [\n        '8481900d-86ce-11ea-aa81-96000028b339',\n        'd5ceb189-86cd-11ea-aa81-96000028b339',\n    ],\n    'page' => 1,\n    '_order' => [\n        'created_at' => 'asc'\n    ],\n];\n\n$uri .= $filters ? '?' . http_build_query($filters) : '';\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nurl = 'https://api.lox24.eu/sms?created_at[gte]=1590737094'\n\n\nheaders = {\n    'Accept': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - sms collection response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n",
                        "label": "Python"
                    }
                ]
            },
            "post": {
                "operationId": "api_sms_post_collection",
                "tags": [
                    "sms"
                ],
                "responses": {
                    "201": {
                        "description": "sms resource created",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.sms.jsonld-sms_read"
                                },
                                "examples": {
                                    "example_sms_response_basic_sms": {
                                        "$ref": "#/components/examples/example_sms_response_basic_sms_jsonld"
                                    },
                                    "example_sms_response_jsonld_translit": {
                                        "$ref": "#/components/examples/example_sms_response_translit_jsonld"
                                    },
                                    "example_sms_response_jsonld_delete_text": {
                                        "$ref": "#/components/examples/example_sms_response_delete_text_jsonld"
                                    }
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.sms-sms_read"
                                },
                                "examples": {
                                    "example_sms_response_basic_sms": {
                                        "$ref": "#/components/examples/example_sms_response_basic_sms"
                                    },
                                    "example_sms_response_translit": {
                                        "$ref": "#/components/examples/example_sms_response_translit"
                                    },
                                    "example_sms_response_delete_text": {
                                        "$ref": "#/components/examples/example_sms_response_delete_text"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/components/responses/400-bad-request"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "402": {
                        "$ref": "#/components/responses/402-not-enough-funds"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "422": {
                        "$ref": "#/components/responses/422-unprocessable-entity"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Send the SMS",
                "description": "Send short message data, such as text, destination number and sender identification by sending a POST request and we transfer the message to the destination network.",
                "parameters": [],
                "requestBody": {
                    "description": "The new sms resource",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/schema.sms-write"
                            },
                            "examples": {
                                "example_sms_request_minimal": {
                                    "$ref": "#/components/examples/example_sms_request_minimal"
                                },
                                "example_sms_request_text2speech": {
                                    "$ref": "#/components/examples/example_sms_request_text2speech"
                                },
                                "example_sms_request_text2speech_ssml": {
                                    "$ref": "#/components/examples/example_sms_request_text2speech_ssml"
                                },
                                "example_sms_request_text2speech_single_call": {
                                    "$ref": "#/components/examples/example_sms_request_text2speech_single_call"
                                },
                                "example_sms_request_unicode": {
                                    "$ref": "#/components/examples/example_sms_request_unicode"
                                },
                                "example_sms_request_translit": {
                                    "$ref": "#/components/examples/example_sms_request_translit"
                                },
                                "example_sms_request_delete_text": {
                                    "$ref": "#/components/examples/example_sms_request_delete_text"
                                },
                                "example_sms_request_callback": {
                                    "$ref": "#/components/examples/example_sms_request_callback"
                                }
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X POST https://api.lox24.eu/sms \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n  -d '{\n    \"sender_id\": \"My Sender\",\n    \"phone\": \"+49751234567\",\n    \"source\": 111,\n    \"service_code\": \"direct\",\n    \"text\": \"Test message\",\n    \"delivery_at\": 1573724611,\n    \"is_unicode\": true,\n    \"callback_data\": \"123456\",\n    \"voice_lang\": \"DE\"\n}'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json;\nusing Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/sms\";\n\n            var data = new {\n                sender_id = \"My Sender\",\n                text = \"Test message\",\n                service_code = \"direct\",\n                phone = \"+49751234567\",\n                delivery_at = 1573724611,\n                is_unicode = true,\n                callback_data = \"123456\",\n                voice_lang = \"DE\"\n            };\n\n            string postdata = JsonConvert.SerializeObject(data);\n\n            Console.WriteLine(\"Post data: {0}\", postdata);\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.ContentType = \"application/json; charset=utf-8\";\n            httpWebRequest.Accept = \"application/json\"; // or application/ld+json\n            httpWebRequest.Method = \"POST\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))\n            {\n                streamWriter.Write(postdata);\n                streamWriter.Flush();\n                streamWriter.Close();\n            }\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n\n                    if(resp.StatusCode == HttpStatusCode.Created) {\n                        Console.WriteLine(\"Success:{0} {1}\", (int)resp.StatusCode, \"sms resource created\");\n                    } else {\n                        Console.WriteLine(\"Error: wrong response code {0} on create sms\", (int)resp.StatusCode);\n                    }\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.BadRequest: // 400\n                        Console.WriteLine(\"Error:400 Invalid input\");\n                        break;\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.PaymentRequired: // 402\n                        Console.WriteLine(\"Error:402 There are not enough funds on your account!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"bytes\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"POST\"\n\tconst URL = \"https://api.lox24.eu/sms\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tpayload := map[string]interface{}{\n\t\t\"sender_id\":    \"My Sender\",\n\t\t\"phone\":        \"+49751234567\",\n\t\t\"source\":       111,\n\t\t\"service_code\": \"direct\",\n\t\t\"text\":         \"Test message\",\n\t\t\"delivery_at\":  1593724611,\n\t\t\"is_unicode\":   true,\n\t\t\"callback_data\": \"123456\",\n\t\t\"voice_lang\": \"DE\",\n\t}\n\n\tjsonPayload, _ := json.Marshal(payload)\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, bytes.NewBuffer(jsonPayload))\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Content-Type\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 201:\n\t\tfmt.Println((string(body)))\n\tcase 400:\n\t\tfmt.Println(\"Error: code = 400 - Invalid input\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.sms;\n\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class PostSmsCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/sms\";\n\n        var json = new JSONObject();\n        json.put(\"sender_id\", \"My Sender\");\n        json.put(\"text\", \"Test message\");\n        json.put(\"service_code\", \"direct\");\n        json.put(\"phone\", \"+49751234567\");\n        json.put(\"delivery_at\", 1573724611);\n        json.put(\"is_unicode\", true);\n        json.put(\"callback_data\", \"123456\");\n        json.put(\"voice_lang\", \"DE\");\n\n        var postData = json.toString();\n\n        System.out.println(\"Post data: \" + postData);\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Content-Type\", \"application/json; charset=utf-8\")\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .POST(HttpRequest.BodyPublishers.ofString(postData))\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_CREATED) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"sms resource created\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode() + \" on create sms\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_BAD_REQUEST: // 400\n                        System.out.println(\"Error:400 Invalid input\");\n                        break;\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_PAYMENT_REQUIRED: // 402\n                        System.out.println(\"Error:402 There are not enough funds on your account!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "/*\n * Post sms\n */\nconst token = \"7b7c6063bab885ce79814b5ff1ee6885\";\n\nvar postObj = {\n    sender_id: 'My Sender',\n    text: 'Test message',\n    service_code: 'direct',\n    phone: '+49751234567',\n    delivery_at: 1573724611,\n    is_unicode: true,\n    callback_data: \"123456\",\n    voice_lang: \"DE\"\n};\n\nvar postdata = JSON.stringify(postObj);\n\nconst https = require('https');\nconst options = {\n    hostname: 'api.lox24.eu',\n    path: '/sms',\n    method: 'POST',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'Content-Length': postdata.length,\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 201) {\n        console.log(\"Success: code = 201 - sms resource created\");\n        res.on('data', d => { process.stdout.write(d) })\n    }\n    else if (res.statusCode == 400) console.log(\"Error: code = 400 - Invalid input\");\n    else if (res.statusCode == 401) console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    else if (res.statusCode == 402) console.log(\"Error: code = 402 - There are not enough funds on your account!\");\n    else if (res.statusCode == 403) console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\nreq.write(postdata);\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$uri = 'https://api.lox24.eu/sms';\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$body = [\n    'sender_id' => 'My Sender',\n    'text' => \"First line\\nSecond line\",\n    'service_code' => 'direct',\n    'phone' => '+49751234567',\n    'delivery_at' => 1573724611,\n    'is_unicode' => true,\n    'callback_data' => '123456',\n    'voice_lang' => 'DE',\n];\n\nif(!$body = json_encode($body)) {\n    die('JSON encoding error!');\n}\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_POST => true,\n    CURLOPT_URL => $uri,\n    CURLOPT_POSTFIELDS => $body,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n        'Content-Type: application/json',\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(201 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nurl = 'https://api.lox24.eu/sms'\n\n\ndata = {\n    'sender_id': \"My Sender\",\n    'text' : \"Test message\",\n    'service_code' : \"direct\",\n    'phone': \"+49751234567\",\n    'delivery_at': 1573724611,\n    'is_unicode': True,\n    'callback_data' => '123456',\n    'voice_lang' => 'DE'\n}\n\nheaders = {\n    'Accept': 'application/json',\n    'Content-Type': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\nprint(\"Post data : \", json.dumps(data, indent=4))\n\ntry:\n    # timeout is 100 seconds, the payload is automatically converted to json format\n    res = requests.post(url, headers=headers, json=data, timeout=100)\n    if res.status_code != 201: # Created\n        print(\"Error: Wrong response code on create sms\")\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - sms resource created')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 400:\n        print(\"Error:400 Invalid input\")\n    elif res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 402:\n        print(\"Error:402 There are not enough funds on your account!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/sms/dryrun": {
            "post": {
                "operationId": "api_sms_post_dryrun_collection",
                "tags": [
                    "sms"
                ],
                "responses": {
                    "201": {
                        "description": "sms resource created",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.sms.jsonld-sms_read"
                                },
                                "examples": {
                                    "example_sms_response_basic_sms": {
                                        "$ref": "#/components/examples/example_sms_response_basic_sms_jsonld"
                                    },
                                    "example_sms_response_jsonld_translit": {
                                        "$ref": "#/components/examples/example_sms_response_translit_jsonld"
                                    },
                                    "example_sms_response_jsonld_delete_text": {
                                        "$ref": "#/components/examples/example_sms_response_delete_text_jsonld"
                                    }
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.sms-sms_read"
                                },
                                "examples": {
                                    "example_sms_response_basic_sms": {
                                        "$ref": "#/components/examples/example_sms_response_basic_sms"
                                    },
                                    "example_sms_response_dryrun_translit": {
                                        "$ref": "#/components/examples/example_sms_response_translit"
                                    },
                                    "example_sms_response_dryrun_delete_text": {
                                        "$ref": "#/components/examples/example_sms_response_delete_text"
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/components/responses/400-bad-request"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "422": {
                        "$ref": "#/components/responses/422-unprocessable-entity"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Simulate sending an SMS (for testing)",
                "description": "This endpoint doesn't send any SMS but emulates the proccess and response. This can be used to get the SMS price or test the API during the integration process. The property `uuid` will be always equal to `11111111-2222-3333-4444-55555555555`. No data will be saved at LOX24, therefore you can't extract any SMS info by `GET /sms/{id}`. [DLR report](/info/sms-delivery-report-codes-dlr/) are send back in same way as per real SMS, if DLR url/email was set-up before, but with statuscode 0.",
                "parameters": [],
                "requestBody": {
                    "description": "The new sms resource",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/schema.sms-write"
                            },
                            "examples": {
                                "example_sms_dryrun_request_minimal": {
                                    "$ref": "#/components/examples/example_sms_request_minimal"
                                },
                                "example_sms_dryrun_request_text2speech": {
                                    "$ref": "#/components/examples/example_sms_request_text2speech"
                                },
                                "example_sms_dryrun_request_text2speech_ssml": {
                                    "$ref": "#/components/examples/example_sms_request_text2speech_ssml"
                                },
                                "example_sms_dryrun_request_unicode": {
                                    "$ref": "#/components/examples/example_sms_request_unicode"
                                },
                                "example_sms_dryrun_request_translit": {
                                    "$ref": "#/components/examples/example_sms_request_translit"
                                },
                                "example_sms_dryrun_request_delete_text": {
                                    "$ref": "#/components/examples/example_sms_request_delete_text"
                                },
                                "example_sms_dryrun_request_callback": {
                                    "$ref": "#/components/examples/example_sms_request_callback"
                                }
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X POST https://api.lox24.eu/sms/dryrun \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n  -d '{\n    \"sender_id\": \"My Sender\",\n    \"phone\": \"+49751234567\",\n    \"source\": 111,\n    \"service_code\": \"direct\",\n    \"text\": \"Test message\",\n    \"delivery_at\": 1573724611,\n    \"is_unicode\": true,\n    \"callback_data\": \"123456\",\n    \"voice_lang\": \"DE\"\n}'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json;\nusing Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/sms/dryrun\";\n\n            var data = new {\n                sender_id = \"My Sender\",\n                text = \"Test message\",\n                service_code = \"direct\",\n                phone = \"+49751234567\",\n                delivery_at = 1573724611,\n                is_unicode = true,\n                voice_lang = \"DE\"\n            };\n\n            string postdata = JsonConvert.SerializeObject(data);\n\n            Console.WriteLine(\"Post data: {0}\", postdata);\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.ContentType = \"application/json; charset=utf-8\";\n            httpWebRequest.Accept = \"application/json\"; // or application/ld+json\n            httpWebRequest.Method = \"POST\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))\n            {\n                streamWriter.Write(postdata);\n                streamWriter.Flush();\n                streamWriter.Close();\n            }\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    if(resp.StatusCode == HttpStatusCode.Created) {\n                        Console.WriteLine(\"Success:{0} {1}\", (int)resp.StatusCode, \"sms resource created in dryrun mode\");\n                    } else {\n                        Console.WriteLine(\"Error: wrong response code {0} on create sms\", (int)resp.StatusCode);\n                    }\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.BadRequest: // 400\n                        Console.WriteLine(\"Error:400 Invalid input\");\n                        break;\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"bytes\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"POST\"\n\tconst URL = \"https://api.lox24.eu/sms/dryrun\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tpayload := map[string]interface{}{\n\t\t\"sender_id\":    \"My Sender\",\n\t\t\"phone\":        \"+49751234567\",\n\t\t\"source\":       111,\n\t\t\"service_code\": \"direct\",\n\t\t\"text\":         \"Test message\",\n\t\t\"delivery_at\":  1593724611,\n\t\t\"is_unicode\":   true,\n\t\t\"voice_lang\": \"DE\",\n\t}\n\n\tjsonPayload, _ := json.Marshal(payload)\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, bytes.NewBuffer(jsonPayload))\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Content-Type\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 201:\n\t\tfmt.Println((string(body)))\n\tcase 400:\n\t\tfmt.Println(\"Error: code = 400 - Invalid input\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.sms;\n\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class PostSmsCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/sms/dryrun\";\n\n        var json = new JSONObject();\n        json.put(\"sender_id\", \"My Sender\");\n        json.put(\"text\", \"Test message\");\n        json.put(\"service_code\", \"direct\");\n        json.put(\"phone\", \"+49751234567\");\n        json.put(\"delivery_at\", 1573724611);\n        json.put(\"is_unicode\", true);\n        json.put(\"voice_lang\", \"DE\");\n\n        var postData = json.toString();\n\n        System.out.println(\"Post data: \" + postData);\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Content-Type\", \"application/json; charset=utf-8\")\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .POST(HttpRequest.BodyPublishers.ofString(postData))\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_CREATED) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"sms resource created\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode() + \" on create sms\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_BAD_REQUEST: // 400\n                        System.out.println(\"Error:400 Invalid input\");\n                        break;\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar postObj = {\n    sender_id: 'My Sender',\n    text: 'Test message',\n    service_code: 'direct',\n    phone: '+49751234567',\n    delivery_at: 1573724611,\n    is_unicode: true,\n    voice_lang: \"DE\"\n};\n\nvar postdata = JSON.stringify(postObj);\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/sms/dryrun',\n    method: 'POST',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'Content-Length': postdata.length,\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 201) {\n        console.log(\"Success: code = 201 - sms resource created\");\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 400) {\n        console.log(\"Error: code = 400 - Invalid input\");\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 402) {\n        console.log(\"Error: code = 402 - There are not enough funds on your account!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\nreq.write(postdata);\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$uri = 'https://api.lox24.eu/sms/dryrun';\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n\n$body = [\n    'sender_id' => 'My Sender',\n    'text' => \"First line\\nSecond line\",\n    'service_code' => 'direct',\n    'phone' => '+49751234567',\n    'delivery_at' => 1573724611,\n    'is_unicode' => true,\n    'voice_lang' => 'DE',\n];\n\n;\nif(!$body = json_encode($body)) {\n    die('JSON encoding error!');\n}\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_POST => true,\n    CURLOPT_URL => $uri,\n    CURLOPT_POSTFIELDS => $body,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n        'Content-Type: application/json',\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(201 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nurl = 'https://api.lox24.eu/sms/dryrun'\n\n\ndata = {\n    'sender_id': \"My Sender\",\n    'text' : \"Test message\",\n    'service_code' : \"direct\",\n    'phone': \"+49751234567\",\n    'delivery_at': 1573724611,\n    'is_unicode': True,\n    'callback_data' => '123456',\n    'voice_lang' => 'DE'\n}\n\nheaders = {\n    'Accept': 'application/json',\n    'Content-Type': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\nprint(\"Post data : \", json.dumps(data, indent=4))\n\ntry:\n    # timeout is 100 seconds, the payload is automatically converted to json format\n    res = requests.post(url, headers=headers, json=data, timeout=100)\n    if res.status_code != 201: # Created\n        print(\"Error: Wrong response code on create sms\")\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - sms resource created')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 400:\n        print(\"Error:400 Invalid input\")\n    elif res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 402:\n        print(\"Error:402 There are not enough funds on your account!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/sms/ops/batch_cancel": {
            "post": {
                "operationId": "sms_ops_cancel",
                "tags": [
                    "sms"
                ],
                "responses": {
                    "200": {
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.sms-batch-cancel-response"
                                }
                            }
                        },
                        "description": "Count of the canceled SMS"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "422": {
                        "$ref": "#/components/responses/422-unprocessable-entity"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Stopping postponed and not yet sent SMS messages",
                "description": "With this API you can delete SMS messages that have not yet been sent or interrupt the sending process. For scheduled SMS messages, the transmission time must be in the future. If the SMS is not scheduled, the transmission to the mobile phone provider may take a few seconds, which will possibly allow you to stop the transmission in exceptional cases.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/order.common.created_at"
                    },
                    {
                        "$ref": "#/components/parameters/order.messages.gateway_sent_at"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.is_sent.boolean"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.is_unicode.boolean"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.uuid.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.uuid.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.iso2.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.iso2.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.dlr_code.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.dlr_code.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.status_code.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.status_code.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.gateway_sent_at.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.gateway_sent_at.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.delivery_at.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.delivery_at.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.created_at.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.created_at.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.chars_count.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.chars_count.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.parts_count.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.parts_count.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.bulk.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.bulk.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.source.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.source.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.text.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.phone.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.sender_id.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.ip.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.key_id.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.key_id.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.callback_data.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.callback_data.array"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "curl -X POST https://api.lox24.eu/sms/ops/batch_cancel?uuid=20f39273-0566-11ea-a637-96000028b339  \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string text = \"Test\";\n\n            var query = \"text=\" + text + \"&uuid[]=ab6b6ceb-903a-11ea-aa81-96000028b339&uuid[]=7c7a6661-902e-11ea-aa81-96000028b339\";\n            string url = \"https://api.lox24.eu/sms/ops/batch_cancel?\" + query;\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\";\n            httpWebRequest.Method = \"POST\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    if(resp.StatusCode == HttpStatusCode.OK) {\n                        Console.WriteLine(\"Success: SMS was canceled!\");\n                    } else {\n                        Console.WriteLine(\"Error: SMS wasn't canceled canceled!\");\n                    }\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n\n            }\n            catch (WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"POST\"\n\tconst URL = \"https://api.lox24.eu/sms/ops/batch_cancel?uuid=20f39273-0566-11ea-a637-96000028b339\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.sms;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class SmsOpsCancelSmsCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\n        var text = \"\";\n        var query = \"text=\" + text + \"&uuid[]=ab6b6ceb-903a-11ea-aa81-96000028b339&uuid[]=7c7a6661-902e-11ea-aa81-96000028b339\";\n        var url = \"https://api.lox24.eu/sms/ops/batch_cancel?\" + query;\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .POST(HttpRequest.BodyPublishers.ofString(\"\"))\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"Success: SMS was canceled!\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n            } else {\n                System.out.println(\"Error: SMS wasn't canceled!\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n\n                System.out.println(\"Error: \" + httpResponse.statusCode());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar query = \"uuid[]=44657141-9830-11ea-aa81-96000028b339&uuid[]=5dd2ba0e-9830-11ea-aa81-96000028b339&_order[created_at]=desc\";\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/sms/ops/batch_cancel?' + query,\n    method: 'POST',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log(\"Success: code = 200 - Count of the canceled SMS\");\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\n\nreq.end();\n\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$uri = 'https://api.lox24.eu/sms/ops/batch_cancel';\n\n$filters = [\n    //'text' => 'Test',\n    'uuid' => [\n        '8481900d-86ce-11ea-aa81-96000028b339',\n        'd5ceb189-86cd-11ea-aa81-96000028b339',\n    ],\n];\n\n$uri .= $filters ? '?' . http_build_query($filters) : '';\n$curl = curl_init();\n\necho $uri;\n\ncurl_setopt_array($curl, [\n    CURLOPT_POST => true,\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(201 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\ntext = \"Test\"\n\nquery = f\"text={text}&uuid[]=ab6b6ceb-903a-11ea-aa81-96000028b339&uuid[]=7c7a6661-902e-11ea-aa81-96000028b339\"\n\nurl = f\"https://api.lox24.eu/sms/ops/batch_cancel?{query}\"\n\n\nheaders = {\n    'Accept': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds, the payload is automatically converted to json format\n    res = requests.post(url, headers=headers, timeout=100)\n    if res.status_code != 200: # Ok\n        print(\"Error: SMS wasn't canceled\")\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - SMS was canceled')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/sms/ops/batch_delete": {
            "post": {
                "operationId": "sms_ops_delete",
                "tags": [
                    "sms"
                ],
                "responses": {
                    "200": {
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.sms-batch-delete-response"
                                }
                            }
                        },
                        "description": "Count of the deleted SMS"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "422": {
                        "$ref": "#/components/responses/422-unprocessable-entity"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Bulk delete SMS messages",
                "description": "With this API you can delete SMS any messages ",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/order.common.created_at"
                    },
                    {
                        "$ref": "#/components/parameters/order.messages.gateway_sent_at"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.is_sent.boolean"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.is_unicode.boolean"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.uuid.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.uuid.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.iso2.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.iso2.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.dlr_code.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.dlr_code.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.status_code.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.status_code.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.gateway_sent_at.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.gateway_sent_at.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.delivery_at.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.delivery_at.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.created_at.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.created_at.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.chars_count.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.chars_count.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.parts_count.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.parts_count.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.bulk.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.bulk.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.source.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.source.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.text.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.phone.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.sender_id.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.ip.partial"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.key_id.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.common.key_id.array"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.callback_data.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.messages.callback_data.array"
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X POST https://api.lox24.eu/sms/ops/batch_delete?uuid=20f39273-0566-11ea-a637-96000028b339  \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string text = \"Test\";\n\n            var query = \"text=\" + text + \"&uuid[]=ab6b6ceb-903a-11ea-aa81-96000028b339&uuid[]=7c7a6661-902e-11ea-aa81-96000028b339\";\n            string url = \"https://api.lox24.eu/sms/ops/batch_delete?\" + query;\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\";\n            httpWebRequest.Method = \"POST\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    if(resp.StatusCode == HttpStatusCode.OK) {\n                        Console.WriteLine(\"Success: SMS was deleted!\");\n                    } else {\n                        Console.WriteLine(\"Error: SMS wasn't deleted!\");\n                    }\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n\n            }\n            catch (WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"POST\"\n\tconst URL = \"https://api.lox24.eu/sms/ops/batch_delete?uuid=20f39273-0566-11ea-a637-96000028b339\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.sms;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class SmsOpsCancelSmsCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\n        var text = \"\";\n        var query = \"text=\" + text + \"&uuid[]=ab6b6ceb-903a-11ea-aa81-96000028b339&uuid[]=7c7a6661-902e-11ea-aa81-96000028b339\";\n        var url = \"https://api.lox24.eu/sms/ops/batch_delete?\" + query;\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .POST(HttpRequest.BodyPublishers.ofString(\"\"))\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"Success: SMS was canceled!\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n            } else {\n                System.out.println(\"Error: SMS wasn't canceled!\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n\n                System.out.println(\"Error: \" + httpResponse.statusCode());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar query = \"uuid[]=44657141-9830-11ea-aa81-96000028b339&uuid[]=5dd2ba0e-9830-11ea-aa81-96000028b339&_order[created_at]=desc\";\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/sms/ops/batch_delete?' + query,\n    method: 'POST',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log(\"Success: code = 200 - Count of the deleted SMS\");\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\n\nreq.end();\n\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$uri = 'https://api.lox24.eu/sms/ops/batch_delete';\n\n$filters = [\n    //'text' => 'Test',\n    'uuid' => [\n        '8481900d-86ce-11ea-aa81-96000028b339',\n        'd5ceb189-86cd-11ea-aa81-96000028b339',\n    ],\n];\n\n$uri .= $filters ? '?' . http_build_query($filters) : '';\n$curl = curl_init();\n\necho $uri;\n\ncurl_setopt_array($curl, [\n    CURLOPT_POST => true,\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'SMS canceled, info = ' . var_export($data, true);\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\ntext = \"Test\"\n\nquery = f\"text={text}&uuid[]=ab6b6ceb-903a-11ea-aa81-96000028b339&uuid[]=7c7a6661-902e-11ea-aa81-96000028b339\"\n\nurl = f\"https://api.lox24.eu/sms/ops/batch_delete?{query}\"\n\n\nheaders = {\n    'Accept': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\n\n\ntry:\n    # timeout is 100 seconds, the payload is automatically converted to json format\n    res = requests.post(url, headers=headers, timeout=100)\n    if res.status_code != 200: # Ok\n        print(\"Error: SMS wasn't canceled\")\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - SMS was canceled')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/sms/{uuid}": {
            "get": {
                "operationId": "api_sms_get_item",
                "deprecated": false,
                "tags": [
                    "sms"
                ],
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X GET https://api.lox24.eu/sms/20f39273-0566-11ea-a637-96000028b339 \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            var id = \"343c785b-8567-11ea-aa81-96000028b339\";\n\n            string url = \"https://api.lox24.eu/sms/\" + id;\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; //or application/ld+json\n            httpWebRequest.Method = \"GET\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"sms resource response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/sms/981f6497-a03e-11ea-b2e9-b8ca3a65338c\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.sms;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetBulksItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var id = \"343c785b-8567-11ea-aa81-96000028b339\";\n\n        var url = \"https://api.lox24.eu/sms/\" + id;\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode());\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode());\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar id = '5dd2ba0e-9830-11ea-aa81-96000028b339';\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/sms/' + id,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Resource not found\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\n\nreq.end();\n\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$id = '11111111-2222-3333-4444-55555555555';\n$uri = 'https://api.lox24.eu/sms/' . $id;\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} elseif(404 === $code) {\n    echo \"SMS with id = {$id} not found!\";\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\nsms_id = \"343c785b-8567-11ea-aa81-96000028b339\"\n\nurl = f'https://api.lox24.eu/sms/{sms_id}'\n\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - sms resource response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "sms resource",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.sms.jsonld-sms_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.sms-sms_read"
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Retrieves the entry of SMS",
                "description": "Getting the single SMS entity by the ID (`uuid`). If SMS not found then HTTP code 404 will response.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.sms.uuid"
                    }
                ]
            },
            "delete": {
                "operationId": "api_sms_delete_item",
                "deprecated": false,
                "tags": [
                    "sms"
                ],
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X DELETE https://api.lox24.eu/sms/20f39273-0566-11ea-a637-96000028b339 \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\n            var id = \"851b600d-901e-11ea-aa81-96000028b339\";\n            string url = \"https://api.lox24.eu/sms/\" + id;\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\";\n            httpWebRequest.Method = \"DELETE\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    if(resp.StatusCode == HttpStatusCode.NoContent) { //204\n                        Console.WriteLine(\"Success: sms was deleted\");\n                    } else {\n                        Console.WriteLine(\"Error: something went wrong, code({0})\", respCode);\n                        Stream respStream = resp.GetResponseStream();\n                        using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                        {\n                            string responseText = sr.ReadToEnd();\n\n                            JObject parsed = JObject.Parse(responseText);\n\n                            foreach (var pair in parsed)\n                            {\n                                Console.WriteLine(\"{0}: {1}\", pair.Key, pair.Value);\n                            }\n                        }\n                    }\n\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"DELETE\"\n\tconst URL = \"https://api.lox24.eu/sms/981f6497-a03e-11ea-b2e9-b8ca3a65338c\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tswitch res.StatusCode {\n\tcase 204:\n\t\tfmt.Println(\"Sms was deleted!\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.sms;\n\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class DeleteSmsItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\n        var id = \"851b600d-901e-11ea-aa81-96000028b339\";\n        var url = \"https://api.lox24.eu/sms/\" + id;\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .DELETE()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_NO_CONTENT) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"sms was delete.\");\n            } else {\n                System.out.println(\"Error: something went wrong, code(\" + httpResponse.statusCode() + \")\");\n\n                JSONObject parsed = new JSONObject(httpResponse.body());\n\n                parsed.keys().forEachRemaining(jsonKey -> System.out.println(jsonKey + \":\" + parsed.get(jsonKey)));\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar id = '20f39273-0566-11ea-a637-96000028b339';\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/sms/' + id,\n    method: 'DELETE',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 204) {\n        console.log('Success: code = 204 - sms resource deleted');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Resource not found\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();\n\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$id = '11111111-2222-3333-4444-55555555555';\n$uri = 'https://api.lox24.eu/sms/' . $id;\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_CUSTOMREQUEST => 'DELETE',\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\nif(204 === $code) {\n    echo \"SMS with id = {$id} was deleted!\";\n} elseif(404 === $code) {\n    echo \"SMS with id = {$id} not found!\";\n} else {\n    $data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n    echo \"SMS: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\nsms_id = \"343c785b-8567-11ea-aa81-96000028b339\"\n\nurl = f'https://api.lox24.eu/sms/{sms_id}'\n\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.delete(url, headers=headers, timeout=100)\n    if res.status_code != 204: # No Content\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - sms was deleted')\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ],
                "responses": {
                    "204": {
                        "$ref": "#/components/responses/204-deleted"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Delete a SMS",
                "description": "Remove the SMS entity by the ID (`uuid`). Endpoint response doesn't contains the body and has HTTP code 204 if SMS was removed or 404 if it doesn't exists. Attention. The SMS is also deleted from the itemised bill. Later complaints are therefore excluded due to lack of traceability.",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "deprecated": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "SMS ID (`uuid`)"
                    }
                ]
            }
        },
        "/sms/clicks": {
            "get": {
                "operationId": "api_sms_clicks_get_collection",
                "tags": [
                    "click-rate"
                ],
                "responses": {
                    "200": {
                        "description": "sms_clicks collection",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "hydra:member": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/schema.sms_clicks.jsonld-short_link_msg_read"
                                            }
                                        },
                                        "hydra:totalItems": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "hydra:view": {
                                            "$ref": "#/components/schemas/hydra.view"
                                        },
                                        "hydra:search": {
                                            "$ref": "#/components/schemas/hydra.search"
                                        }
                                    },
                                    "required": [
                                        "hydra:member"
                                    ]
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/schema.sms_clicks-short_link_msg_read"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "List of all SMS with clicks",
                "description": "Retrieves the list of sms which contain a short link and the number of clicks on these links.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "description": "",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": true,
                        "schema": {
                            "type": "integer",
                            "default": 1
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    },
                    {
                        "name": "_order[created_at]",
                        "in": "query",
                        "description": "Sort a list by 'created_at' property",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string",
                            "default": "asc",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    },
                    {
                        "name": "requests_count",
                        "in": "query",
                        "description": "*Exact* filter by the requests count value",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "integer"
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    },
                    {
                        "name": "requests_count[]",
                        "in": "query",
                        "description": "*Exact* and *range* filter by the requests count value",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "integer"
                            }
                        },
                        "style": "form",
                        "explode": true,
                        "allowReserved": false
                    },
                    {
                        "name": "created_at",
                        "in": "query",
                        "description": "*Exact* filter by SMS creating date",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "integer"
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    },
                    {
                        "name": "created_at[]",
                        "in": "query",
                        "description": "*Exact* and *range* filter by SMS creating date",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "integer"
                            }
                        },
                        "style": "form",
                        "explode": true,
                        "allowReserved": false
                    }
                ],
                "deprecated": false,
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X GET https://api.lox24.eu/sms/clicks \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/sms/clicks?page=1\";\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; // or \"application/ld+json\"\n            httpWebRequest.Method = \"GET\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"collection response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/sms/clicks?page=1\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.sms_clicks;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/sms/clicks?page=1\";\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" collection response\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n            } else {\n                System.out.println(\"Error: something went wrong, code(\" + httpResponse.statusCode() + \")\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar query = \"page=1\";\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/sms/clicks?' + query,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - list response');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$uri = 'https://api.lox24.eu/sms/clicks';\n\n$filters = [\n    'page' => 1,\n];\n\n$uri .= $filters ? '?' . http_build_query($filters) : '';\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: $token\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = $code, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nurl = \"https://api.lox24.eu/sms/clicks?page=1\"\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - items collection response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/sms/{uuid}/clicks": {
            "get": {
                "operationId": "api_sms_clicks_per_message_get_collection",
                "deprecated": false,
                "responses": {
                    "200": {
                        "description": "sms_clicks resource",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.sms_clicks.jsonld-short_link_msg_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.sms_clicks-short_link_msg_read"
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Short-Link clicks of a SMS",
                "description": "Returns the number of clicks on a short link for a specific SMS. If SMS doesn't exists or doesn't contain then HTTP code 404 will response.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.sms.uuid"
                    }
                ],
                "tags": [
                    "click-rate"
                ],
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl https://api.lox24.eu/sms/clicks/sms_uuid_here  \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            var id = \"sms_uuid_here\";\n\n            string url = \"https://api.lox24.eu/sms/clicks/\" + id;\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; //or application/ld+json\n            httpWebRequest.Method = \"GET\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"item resource response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Resource not found\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/sms/clicks/sms_uuid_here\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Resource not found\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.sms_clicks;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var userId = \"1234567\";\n        var id = \"sms_uuid_here\";\n\n        var url = \"https://api.lox24.eu/sms/clicks/\" + id;\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode());\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode());\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Resource not found\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar id = 'sms_uuid_here';\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/sms/clicks/' + id,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Resource not found\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\n\nreq.end();\n\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$id = 'sms_uuid_here';\n$uri = 'https://api.lox24.eu/sms/clicks/' . $id;\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: $token\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} elseif(404 === $code) {\n    echo \"Item with id = $id not found!\";\n} else {\n    echo \"Error: code = $code, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\nid = \"msg_uuid\"\n\nurl = f'https://api.lox24.eu/sms/clicks/{id}'\n\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - resource response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(\"Error:404 Resource not found\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n\n\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/short_link_campaigns/{code}/short_links": {
            "get": {
                "operationId": "api_short_link_campaigns_short_links_get_item",
                "responses": {
                    "200": {
                        "description": "short_links collection",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "hydra:member": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/schema.short_links.jsonld-short_link_read"
                                            }
                                        },
                                        "hydra:totalItems": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "hydra:view": {
                                            "$ref": "#/components/schemas/hydra.view"
                                        },
                                        "hydra:search": {
                                            "$ref": "#/components/schemas/hydra.search"
                                        }
                                    },
                                    "required": [
                                        "hydra:member"
                                    ]
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/schema.short_links-short_link_read"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "List of all individual short links of a campaign",
                "description": "List of all short links which were used in a specific campaign.",
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.short_link_campaigns.code"
                    }
                ],
                "tags": [
                    "links"
                ],
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X GET https://api.lox24.eu/short_link_campaigns/{id}/short_links \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'\n",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string campaign = \"campaign_code\";\n            string url = \"https://api.lox24.eu/short_link_campaigns/\" + campaign + \"/short_links?page=1\";\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; // or \"application/ld+json\"\n            httpWebRequest.Method = \"GET\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"collection response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/short_link_campaigns/campaign_code/short_links?page=1\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}\n",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.sms_clicks;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var campaign = 'campaign_id'\n        var url = \"https://api.lox24.eu/short_link_campaigns/\" + campaign + \"/short_links?page=1\";\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" collection response\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n            } else {\n                System.out.println(\"Error: something went wrong, code(\" + httpResponse.statusCode() + \")\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}\n",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nconst query = \"page=1\";\nconst campaign_id = 'campaign_id';\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/short_link_campaigns/' + campaign_id + '/short_links?' + query,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - list response');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();\n",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n$campaignId = 'campaign_id';\n$uri = \"https://api.lox24.eu/short_link_campaigns/$campaignId/short_links\";\n\n$filters = [\n    'page' => 1,\n];\n\n$uri .= $filters ? '?' . http_build_query($filters) : '';\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: $token\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = $code, data = \" . var_export($data, true);\n}\n\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\ncampaign = \"short_link_id\"\nurl = \"https://api.lox24.eu/short_link_campaigns/\" + campaign + \"/short_links?page=1\"\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - items collection response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n",
                        "label": "Python"
                    }
                ]
            }
        },
        "/blocked_numbers": {
            "get": {
                "operationId": "api_blocked_numbers_get_collection",
                "tags": [
                    "blocked-numbers"
                ],
                "parameters": [
                    {
                        "$ref": "#/components/parameters/filter.blocked_numbers.number.exact"
                    },
                    {
                        "$ref": "#/components/parameters/filter.blocked_numbers.type.exact"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "blocked_numbers collection",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "hydra:member": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/schema.blocked_numbers.jsonld-blocked_number_read"
                                            }
                                        },
                                        "hydra:totalItems": {
                                            "$ref": "#/components/schemas/hydra.totalItems"
                                        },
                                        "hydra:view": {
                                            "$ref": "#/components/schemas/hydra.view"
                                        },
                                        "hydra:search": {
                                            "$ref": "#/components/schemas/hydra.search"
                                        }
                                    },
                                    "required": [
                                        "hydra:member"
                                    ]
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/schema.blocked_numbers-blocked_number_read"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Retrieves the collection of blocked phone numbers",
                "description": "Retrieves the collection of blocked phone numbers with optional filtering by number or type",
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X GET https://api.lox24.eu/blocked_numbers \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/blocked_numbers?page=1\";\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; // or \"application/ld+json\"\n            httpWebRequest.Method = \"GET\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"blocked numbers collection response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n}",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/blocked_numbers?page=1\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.blocked_number;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetBlockedNumbersCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/blocked_numbers?page=1\";\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"blocked numbers collection response\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n            } else {\n                System.out.println(\"Error: something went wrong, code(\" + httpResponse.statusCode() + \")\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar query = \"page=1\";\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/blocked_numbers?' + query,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - blocked numbers list response');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$uri = 'https://api.lox24.eu/blocked_numbers';\n\n$filters = [\n    'page' => 1,\n];\n\n$uri .= $filters ? '?' . http_build_query($filters) : '';\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nurl = \"https://api.lox24.eu/blocked_numbers?page=1\"\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - blocked numbers collection response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))\n",
                        "label": "Python"
                    }
                ]
            },
            "post": {
                "operationId": "api_blocked_numbers_post",
                "tags": [
                    "blocked numbers",
                    "n\u00famero de tel\u00e9fono bloqueado",
                    "gesperrte Telefonnummer",
                    "n\u00famero de telefone bloqueado"
                ],
                "responses": {
                    "201": {
                        "description": "blocked_number resource created",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.blocked_numbers.jsonld-blocked_number_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.blocked_numbers-blocked_number_read"
                                }
                            }
                        }
                    },
                    "400": {
                        "$ref": "#/components/responses/400-bad-request"
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "409": {
                        "$ref": "#/components/responses/409-conflict"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Creates a blocked phone number resource",
                "description": "Creates a new blocked phone number for the authenticated user",
                "requestBody": {
                    "description": "The new blocked phone number resource",
                    "content": {
                        "application/ld+json": {
                            "schema": {
                                "$ref": "#/components/schemas/schema.blocked_numbers-blocked_number_write"
                            }
                        },
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/schema.blocked_numbers-blocked_number_write"
                            }
                        }
                    },
                    "required": true
                },
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X POST https://api.lox24.eu/blocked_numbers \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx' \\\n  -d '{\n      \"number\": \"+1234567890\"\n}'",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json;\nusing Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string url = \"https://api.lox24.eu/blocked_numbers\";\n\n\n            var data = new {\n                number = \"+1234567890\"\n            };\n\n            string postdata = JsonConvert.SerializeObject(data);\n\n            Console.WriteLine(\"Post data: {0}\", postdata);\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.ContentType = \"application/json; charset=utf-8\";\n            httpWebRequest.Accept = \"application/json\"; // or application/ld+json\n            httpWebRequest.Method = \"POST\";\n            httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))\n            {\n                streamWriter.Write(postdata);\n                streamWriter.Flush();\n                streamWriter.Close();\n            }\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n\n                    if(resp.StatusCode == HttpStatusCode.Created) {\n                        Console.WriteLine(\"Success:{0} {1}\", (int)resp.StatusCode, \"blocked number resource created\");\n                    } else {\n                        Console.WriteLine(\"Error: wrong response code {0} on create blocked number\", (int)resp.StatusCode);\n                    }\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.BadRequest: // 400\n                        Console.WriteLine(\"Error:400 Invalid input\");\n                        break;\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.Conflict: // 409\n                        Console.WriteLine(\"Error:409 Conflict - resource already exists\");\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n}",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"bytes\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"POST\"\n\tconst URL = \"https://api.lox24.eu/blocked_numbers\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tpayload := map[string]interface{}{\n\t\t\"number\": \"+1234567890\",\n\t}\n\n\tjsonPayload, _ := json.Marshal(payload)\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, bytes.NewBuffer(jsonPayload))\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Content-Type\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 201:\n\t\tfmt.Println((string(body)))\n\tcase 400:\n\t\tfmt.Println(\"Error: code = 400 - Invalid input\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 409:\n\t\tfmt.Println(\"Error: code = 409 - Conflict - resource already exists\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.blocked_number;\n\nimport org.json.JSONObject;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class PostBlockedNumberCollection {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var url = \"https://api.lox24.eu/blocked_numbers\";\n\n        var json = new JSONObject();\n        json.put(\"number\", \"+1234567890\");\n\n        var postData = json.toString();\n\n        System.out.println(\"Post data: \" + postData);\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Content-Type\", \"application/json; charset=utf-8\")\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .POST(HttpRequest.BodyPublishers.ofString(postData))\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_CREATED) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"blocked number resource created\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n\n            } else {\n\n                System.out.println(\"Error: wrong response code \" + httpResponse.statusCode() + \" on create blocked number\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_BAD_REQUEST: // 400\n                        System.out.println(\"Error:400 Invalid input\");\n                        break;\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_CONFLICT: // 409\n                        System.out.println(\"Error:409 Conflict - resource already exists\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar postObj = {\n    number: '+1234567890'\n};\n\nvar postdata = JSON.stringify(postObj);\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/blocked_numbers',\n    method: 'POST',\n    headers: {\n        'Accept': 'application/json',\n        'Content-Type': 'application/json',\n        'Content-Length': postdata.length,\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 201) {\n        console.log(\"Success: code = 201 - blocked number resource created\");\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 400) {\n        console.log(\"Error: code = 400 - Invalid input\");\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 409) {\n        console.log(\"Error: code = 409 - Conflict - resource already exists\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\nreq.write(postdata);\nreq.end();",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$uri = 'https://api.lox24.eu/blocked_numbers';\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$body = [\n    \"number\" => \"+1234567890\",\n];\n\nif(!$body = json_encode($body)) {\n    die('JSON encoding error!');\n}\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_POST => true,\n    CURLOPT_URL => $uri,\n    CURLOPT_POSTFIELDS => $body,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n        'Content-Type: application/json',\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(201 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\nurl = 'https://api.lox24.eu/blocked_numbers'\n\n\ndata = {\n    'number': '+1234567890'\n}\n\nheaders = {\n    'Accept': 'application/json',\n    'Content-Type': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\nprint(\"Post data : \", json.dumps(data, indent=4))\n\ntry:\n    # timeout is 100 seconds, the payload is automatically converted to json format\n    res = requests.post(url, headers=headers, json=data, timeout=100)\n    if res.status_code != 201: # Created\n        print(\"Error: Wrong response code on create blocked number\")\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - blocked number resource created')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 400:\n        print(\"Error:400 Invalid input\")\n    elif res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 409:\n        print(\"Error:409 Conflict - resource already exists\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))",
                        "label": "Python"
                    }
                ]
            }
        },
        "/blocked_numbers/{id}": {
            "get": {
                "operationId": "api_blocked_numbers_get_item",
                "tags": [
                    "blocked-numbers"
                ],
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.blocked_numbers.id"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "blocked_number resource",
                        "content": {
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.blocked_numbers.jsonld-blocked_number_read"
                                }
                            },
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/schema.blocked_numbers-blocked_number_read"
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/401-unauthorized"
                    },
                    "403": {
                        "$ref": "#/components/responses/403-forbidden"
                    },
                    "404": {
                        "$ref": "#/components/responses/404-not-found"
                    },
                    "429": {
                        "$ref": "#/components/responses/429-too-many-requests"
                    }
                },
                "summary": "Retrieves a blocked phone number resource",
                "description": "Retrieves a blocked phone number resource by its identifier",
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X GET https://api.lox24.eu/blocked_numbers/12344 \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n            string id = \"12344\";\n            string url = \"https://api.lox24.eu/blocked_numbers/\" + id;\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\"; // or \"application/ld+json\"\n            httpWebRequest.Method = \"GET\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    Console.WriteLine(\"Success:{0} {1}\", respCode, \"blocked number resource response\");\n\n                    Stream respStream = resp.GetResponseStream();\n                    using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                    {\n                        string responseText = sr.ReadToEnd();\n                        Console.WriteLine(\"responseText : {0}\", responseText);\n                    }\n                }\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Blocked number with id = {0} not found!\", id);\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n}",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"GET\"\n\tconst URL = \"https://api.lox24.eu/blocked_numbers/12344\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 200:\n\t\tfmt.Println((string(body)))\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Blocked number not found!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d\\n\", res.StatusCode)\n\t}\n}",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.blocked_number;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class GetBlockedNumberItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var id = \"12344\";\n        var url = \"https://api.lox24.eu/blocked_numbers/\" + id;\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\") // or application/ld+json\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .GET()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_OK) {\n                System.out.println(\"Success:\" + httpResponse.statusCode() + \" \" + \"blocked number resource response\");\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n            } else {\n                System.out.println(\"Error: something went wrong, code(\" + httpResponse.statusCode() + \")\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Blocked number with id = \" + id + \" not found!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar id = '12344';\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/blocked_numbers/' + id,\n    method: 'GET',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 200) {\n        console.log('Success: code = 200 - blocked number resource response');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Blocked number not found\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n\n})\n\nreq.on('error', error => {\n    console.error(error)\n})\n\nreq.end();",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$id = '12344';\n$uri = 'https://api.lox24.eu/blocked_numbers/' . $id;\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\n$data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n\nif(200 === $code) {\n    echo 'Success: response data = ' . var_export($data, true);\n} elseif(404 === $code) {\n    echo \"Blocked number with id = {$id} not found!\";\n} else {\n    echo \"Error: code = {$code}, data = \" . var_export($data, true);\n}\n\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\nid = \"12344\"\n\nurl = f\"https://api.lox24.eu/blocked_numbers/{id}\"\n\nheaders = {\n    'Accept': 'application/json', # or application/ld+json\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.get(url, headers=headers, timeout=100)\n    if res.status_code != 200:\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - blocked number resource response')\n        print(\"Response: \", json.dumps(res.json(), indent=4))\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(f\"Error: code = 404 - Blocked number with id = {id} not found!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    print(json.dumps(res.json(), indent=4))",
                        "label": "Python"
                    }
                ]
            },
            "delete": {
                "operationId": "api_blocked_numbers_delete_item",
                "tags": [
                    "blocked numbers",
                    "n\u00famero de tel\u00e9fono bloqueado",
                    "gesperrte Telefonnummer",
                    "n\u00famero de telefone bloqueado"
                ],
                "parameters": [
                    {
                        "$ref": "#/components/parameters/path.blocked_numbers.id"
                    }
                ],
                "responses": {
                    "204": {
                        "description": "blocked_number resource deleted"
                    },
                    "404": {
                        "description": "Resource not found"
                    }
                },
                "summary": "Removes the blocked phone number resource",
                "description": "Removes the blocked phone number resource from the user's blocked list",
                "x-codeSamples": [
                    {
                        "lang": "bash",
                        "source": "#!/usr/bin/env bash\ncurl -X DELETE https://api.lox24.eu/blocked_numbers/12344  \\\n  -H 'Content-Type: application/json' \\\n  -H 'X-LOX24-AUTH-TOKEN: 1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx'",
                        "label": "Bash"
                    },
                    {
                        "lang": "csharp",
                        "source": "using Newtonsoft.Json.Linq;\nusing System;\nusing System.IO;\nusing System.Net;\nusing System.Text;\n\nnamespace Lox24.Api\n{\n    class client\n    {\n        static void Main()\n        {\n            string key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\n            var id = \"12344\";\n            string url = \"https://api.lox24.eu/blocked_numbers/\" + id;\n\n            var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);\n            httpWebRequest.ReadWriteTimeout = 100000;\n            httpWebRequest.Accept = \"application/json\";\n            httpWebRequest.Method = \"DELETE\";\n            //httpWebRequest.KeepAlive = true;\n            httpWebRequest.Headers.Add(\"X-LOX24-AUTH-TOKEN\", key);\n            httpWebRequest.Credentials = CredentialCache.DefaultNetworkCredentials;\n\n            try\n            {\n                using (HttpWebResponse resp = (HttpWebResponse)httpWebRequest.GetResponse())\n                {\n                    int respCode = (int)resp.StatusCode;\n                    if(resp.StatusCode == HttpStatusCode.NoContent) { //204\n                        Console.WriteLine(\"Success: blocked number was deleted\");\n                    } else {\n                        Console.WriteLine(\"Error: something went wrong, code({0})\", respCode);\n                        Stream respStream = resp.GetResponseStream();\n                        using (StreamReader sr = new StreamReader(respStream, Encoding.UTF8))\n                        {\n                            string responseText = sr.ReadToEnd();\n\n                            JObject parsed = JObject.Parse(responseText);\n\n                            foreach (var pair in parsed)\n                            {\n                                Console.WriteLine(\"{0}: {1}\", pair.Key, pair.Value);\n                            }\n                        }\n                    }\n\n                }\n\n            }\n            catch (System.Net.WebException ex)\n            {\n                var webResponse = ex.Response as System.Net.HttpWebResponse;\n                Console.WriteLine(\"Error:{0}\", webResponse.StatusCode);\n\n                switch (webResponse.StatusCode)\n                {\n                    case HttpStatusCode.Unauthorized: // 401\n                        Console.WriteLine(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpStatusCode.Forbidden: // 403\n                        Console.WriteLine(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpStatusCode.NotFound: // 404\n                        Console.WriteLine(\"Error:404 Blocked number with id = {0} not found!\", id);\n                        break;\n                    case HttpStatusCode.InternalServerError: // 500\n                    case HttpStatusCode.BadGateway: //502\n                    case HttpStatusCode.ServiceUnavailable: // 503\n                    case HttpStatusCode.GatewayTimeout: // 504\n                        Console.WriteLine(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n            }\n        }\n    }\n}",
                        "label": "C#"
                    },
                    {
                        "lang": "go",
                        "source": "package main\n\nimport (\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"log\"\n\t\"net/http\"\n)\n\nfunc main() {\n\n\tconst Method = \"DELETE\"\n\tconst URL = \"https://api.lox24.eu/blocked_numbers/12344\"\n\tconst Token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\n\n\tclient := &http.Client{}\n\n\treq, err := http.NewRequest(Method, URL, nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\treq.Header.Add(\"X-LOX24-AUTH-TOKEN\", Token)\n\treq.Header.Add(\"Accept\", \"application/json\")\n\n\tres, err := client.Do(req)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tdefer res.Body.Close()\n\n\tbody, err := ioutil.ReadAll(res.Body)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tswitch res.StatusCode {\n\tcase 204:\n\t\tfmt.Println(\"Blocked number was deleted successfully!\")\n\tcase 401:\n\t\tfmt.Println(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n\tcase 403:\n\t\tfmt.Println(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n\tcase 404:\n\t\tfmt.Println(\"Error: code = 404 - Blocked number not found!\")\n\tdefault:\n\t\tfmt.Printf(\"Error: code = %d, response = %s\\n\", res.StatusCode, string(body))\n\t}\n}",
                        "label": "Go"
                    },
                    {
                        "lang": "java",
                        "source": "package eu.lox24.doc.blocked_number;\n\nimport java.io.IOException;\nimport java.net.HttpURLConnection;\nimport java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.time.Duration;\n\npublic class DeleteBlockedNumberItem {\n\n    public static void main(String[] args) {\n\n        var key = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n        var id = \"12344\";\n        var url = \"https://api.lox24.eu/blocked_numbers/\" + id;\n\n        var httpRequest = HttpRequest.newBuilder(URI.create(url))\n                .timeout(Duration.ofMillis(100000))\n                .setHeader(\"Accept\", \"application/json\")\n                .setHeader(\"X-LOX24-AUTH-TOKEN\", key)\n                .DELETE()\n                .build();\n\n        var client = HttpClient.newBuilder()\n                .version(HttpClient.Version.HTTP_1_1) // Http 1.1 clients are kept alive be default\n                .build();\n\n        try {\n            var httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());\n\n            if (httpResponse.statusCode() == HttpURLConnection.HTTP_NO_CONTENT) { // 204\n                System.out.println(\"Success: blocked number was deleted\");\n            } else {\n                System.out.println(\"Error: something went wrong, code(\" + httpResponse.statusCode() + \")\");\n\n                switch (httpResponse.statusCode()) {\n\n                    case HttpURLConnection.HTTP_UNAUTHORIZED: // 401\n                        System.out.println(\"Error:401 Client ID or API key isn't active or invalid!\");\n                        break;\n                    case HttpURLConnection.HTTP_FORBIDDEN: // 403\n                        System.out.println(\"Error:403 Account isn't activated. Please wait or contact to support!\");\n                        break;\n                    case HttpURLConnection.HTTP_NOT_FOUND: // 404\n                        System.out.println(\"Error:404 Blocked number with id = \" + id + \" not found!\");\n                        break;\n                    case HttpURLConnection.HTTP_INTERNAL_ERROR: // 500\n                    case HttpURLConnection.HTTP_BAD_GATEWAY: //502\n                    case HttpURLConnection.HTTP_UNAVAILABLE: // 503\n                    case HttpURLConnection.HTTP_GATEWAY_TIMEOUT: // 504\n                        System.out.println(\"System error! Please contact to LOX24 support!\");\n                        break;\n                }\n\n                System.out.println(\"Response text : \\n\" + httpResponse.body());\n            }\n\n        } catch (IOException | InterruptedException e) {\n            e.printStackTrace();\n        }\n    }\n}",
                        "label": "Java"
                    },
                    {
                        "lang": "javascript",
                        "source": "const host = 'api.lox24.eu';\nconst token = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\";\n\nvar id = '12344';\n\nconst https = require('https');\nconst options = {\n    hostname: host,\n    path: '/blocked_numbers/' + id,\n    method: 'DELETE',\n    headers: {\n        'Accept': 'application/json',\n        'X-LOX24-AUTH-TOKEN': token\n    }\n}\n\nconst req = https.request(options, res => {\n    if (res.statusCode == 204) {\n        console.log('Success: code = 204 - blocked number resource deleted');\n        res.on('data', d => { process.stdout.write(d) })\n    } else if (res.statusCode == 401) {\n        console.log(\"Error: code = 401 - Client ID or API key isn't active or invalid!\");\n    } else if (res.statusCode == 403) {\n        console.log(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\");\n    } else if (res.statusCode == 404) {\n        console.log(\"Error: code = 404 - Blocked number not found\");\n    } else {\n        console.log(\"Error: code = \" + res.statusCode );\n    }\n});\n\nreq.on('error', error => {\n    console.error(error)\n});\n\nreq.end();",
                        "label": "JavaScript"
                    },
                    {
                        "lang": "php",
                        "source": "<?php\n\n$token = '1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx';\n\n$id = '12344';\n$uri = 'https://api.lox24.eu/blocked_numbers/' . $id;\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n    CURLOPT_URL => $uri,\n    CURLOPT_CUSTOMREQUEST => 'DELETE',\n    CURLOPT_HTTPHEADER => [\n        \"X-LOX24-AUTH-TOKEN: {$token}\",\n        'Accept: application/json', // or application/ld+json\n    ],\n    CURLOPT_RETURNTRANSFER => true,\n    CURLOPT_TIMEOUT => 20,\n    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n]);\n\n$response = curl_exec($curl);\n$code = curl_getinfo($curl, CURLINFO_HTTP_CODE);\ncurl_close($curl);\n\nif(204 === $code) {\n    echo \"Blocked number with id = {$id} was deleted!\";\n} elseif(404 === $code) {\n    echo \"Blocked number with id = {$id} not found!\";\n} else {\n    $data = json_decode($response, JSON_OBJECT_AS_ARRAY);\n    echo \"Blocked number: code = {$code}, data = \" . var_export($data, true);\n}\n",
                        "label": "PHP (cUrl)"
                    },
                    {
                        "lang": "python",
                        "source": "import json\nimport requests\n\n\ntoken = \"1234567:e3f3a759b6677959b6ebfcxxxxxxxxxx\"\nid = \"12344\"\n\nurl = f\"https://api.lox24.eu/blocked_numbers/{id}\"\n\nheaders = {\n    'Accept': 'application/json',\n    'X-LOX24-AUTH-TOKEN': token,\n}\n\ntry:\n    # timeout is 100 seconds\n    res = requests.delete(url, headers=headers, timeout=100)\n    if res.status_code != 204: # No Content\n        print(\"Error: Wrong response code on delete blocked number\")\n        res.raise_for_status()\n    else:\n        print(f'Success: code = {res.status_code} - blocked number was deleted')\n\nexcept requests.HTTPError:\n    if res.status_code == 401:\n        print(\"Error: code = 401 - Client ID or API key isn't active or invalid!\")\n    elif res.status_code == 403:\n        print(\"Error: code = 403 - Account isn't activated. Please wait or contact to support!\")\n    elif res.status_code == 404:\n        print(f\"Error: code = 404 - Blocked number with id = {id} not found!\")\n    elif res.status_code in (500, 502, 503, 504):\n        print(\"System error! Please contact to LOX24 support!\")\n    else:\n        print(f\"Error: code {res.status_code}\")\n    # Only try to print JSON if response has content\n    if res.content:\n        print(json.dumps(res.json(), indent=4))",
                        "label": "Python"
                    }
                ]
            }
        }
    },
    "webhooks": {
        "webhooks.sms-delivery": {
            "post": {
                "summary": "SMS Delivery Report (DLR)",
                "description": "The event 'sms.delivery' sends on [`dlr_code`](/#tag/sms-delivery-report-codes-dlr) changes. This allows you to find out whether an SMS has been successfully delivered, rejected, or is still being delivered.\n\nEach SMS has a delivery report code [Webhook notifications](/#tag/notifications)",
                "tags": [
                    "sms"
                ],
                "operationId": "webhooks.sms-delivery-webhook",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/webhook.event"
                                    },
                                    {
                                        "properties": {
                                            "name": {
                                                "enum": [
                                                    "sms.delivery"
                                                ]
                                            },
                                            "data": {
                                                "$ref": "#/components/schemas/schema.webhooks.sms-delivery-data"
                                            }
                                        }
                                    }
                                ]
                            },
                            "examples": {
                                "delivered": {
                                    "$ref": "#/components/examples/webhooks.examples.sms-delivery-event"
                                },
                                "expired": {
                                    "$ref": "#/components/examples/webhooks.examples.sms-delivery-event-expired"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "$ref": "#/components/responses/webhook-200"
                    },
                    "400": {
                        "$ref": "#/components/responses/webhook-400"
                    },
                    "401": {
                        "$ref": "#/components/responses/webhook-401"
                    },
                    "403": {
                        "$ref": "#/components/responses/webhook-403"
                    },
                    "404": {
                        "$ref": "#/components/responses/webhook-404"
                    },
                    "500": {
                        "$ref": "#/components/responses/webhook-500"
                    }
                }
            }
        },
        "webhooks.sms-delivery-dryrun": {
            "post": {
                "summary": "Dryrun SMS delivery report (DLR)",
                "description": "The event 'sms.delivery.dryrun' uses per an emulation SMS send.\nSee [Simulate sending an SMS (for testing)](/#tag/sms/operation/api_sms_post_dryrun_collection).\n\nEach SMS has delivery report code (DLR).\n\n[Webhook notifications](/#tag/notifications)",
                "tags": [
                    "sms"
                ],
                "operationId": "webhooks.sms-delivery-dryrun-webhook",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/webhook.event"
                                    },
                                    {
                                        "properties": {
                                            "name": {
                                                "enum": [
                                                    "sms.delivery.dryrun"
                                                ]
                                            },
                                            "data": {
                                                "$ref": "#/components/schemas/schema.webhooks.sms-delivery-data"
                                            }
                                        }
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "$ref": "#/components/responses/webhook-200"
                    },
                    "400": {
                        "$ref": "#/components/responses/webhook-400"
                    },
                    "401": {
                        "$ref": "#/components/responses/webhook-401"
                    },
                    "403": {
                        "$ref": "#/components/responses/webhook-403"
                    },
                    "404": {
                        "$ref": "#/components/responses/webhook-404"
                    },
                    "500": {
                        "$ref": "#/components/responses/webhook-500"
                    }
                }
            }
        },
        "webhooks.incoming-sms-received": {
            "post": {
                "summary": "Incoming SMS",
                "description": "The event 'sms.incoming' sends on an incoming/reply SMS (mobile originated - SMS-MO).\n\n[Webhook notifications](/#tag/notifications)",
                "operationId": "smsIncomingWebhook",
                "tags": [
                    "incomings"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/webhook.event"
                                    },
                                    {
                                        "properties": {
                                            "name": {
                                                "enum": [
                                                    "sms.incoming"
                                                ]
                                            },
                                            "data": {
                                                "$ref": "#/components/schemas/schema.webhooks.sms-incoming-data"
                                            }
                                        }
                                    }
                                ]
                            },
                            "examples": {
                                "reply": {
                                    "$ref": "#/components/examples/webhooks.examples.sms-incoming-event"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "$ref": "#/components/responses/webhook-200"
                    },
                    "400": {
                        "$ref": "#/components/responses/webhook-400"
                    },
                    "401": {
                        "$ref": "#/components/responses/webhook-401"
                    },
                    "403": {
                        "$ref": "#/components/responses/webhook-403"
                    },
                    "404": {
                        "$ref": "#/components/responses/webhook-404"
                    },
                    "500": {
                        "$ref": "#/components/responses/webhook-500"
                    }
                }
            }
        },
        "webhooks.bulk-email-parsing-fail": {
            "post": {
                "summary": "Bulk Email Parsing Error Webhook",
                "description": "The event `bulk.email.parsing.fail` sends on email parsing error.\n\n[Notificaciones de webhook](/#tag/notifications)",
                "operationId": "bulkEmailParsingFailWebhook",
                "tags": [
                    "bulks"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/webhook.event"
                                    },
                                    {
                                        "properties": {
                                            "name": {
                                                "enum": [
                                                    "bulk.email.parsing.fail"
                                                ]
                                            },
                                            "data": {
                                                "$ref": "#/components/schemas/schema.webhooks.bulk-email-parsing-fail-data"
                                            }
                                        }
                                    }
                                ]
                            },
                            "examples": {
                                "invalid_number": {
                                    "$ref": "#/components/examples/webhooks.examples.bulk-email-parsing-fail-event"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "$ref": "#/components/responses/webhook-200"
                    },
                    "400": {
                        "$ref": "#/components/responses/webhook-400"
                    },
                    "401": {
                        "$ref": "#/components/responses/webhook-401"
                    },
                    "403": {
                        "$ref": "#/components/responses/webhook-403"
                    },
                    "404": {
                        "$ref": "#/components/responses/webhook-404"
                    },
                    "500": {
                        "$ref": "#/components/responses/webhook-500"
                    }
                }
            }
        },
        "webhooks.bulk-email-parsing-success": {
            "post": {
                "summary": "Bulk Email Parsing Success",
                "description": "The event `bulk.email.parsing.success` sends on successful parsing [Email to SMS Bulk](/#tag/email-to-sms)\nemail.\n\n[Webhook notifications](/#tag/notifications)",
                "operationId": "bulkEmailParsingSuccessWebhook",
                "tags": [
                    "bulks"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/webhook.event"
                                    },
                                    {
                                        "properties": {
                                            "name": {
                                                "enum": [
                                                    "bulk.email.parsing.success"
                                                ]
                                            },
                                            "data": {
                                                "$ref": "#/components/schemas/schema.webhooks.bulk-email-parsing-success-data"
                                            }
                                        }
                                    }
                                ]
                            },
                            "examples": {
                                "success": {
                                    "$ref": "#/components/examples/webhooks.examples.bulk-email-parsing-success-event"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "$ref": "#/components/responses/webhook-200"
                    },
                    "400": {
                        "$ref": "#/components/responses/webhook-400"
                    },
                    "401": {
                        "$ref": "#/components/responses/webhook-401"
                    },
                    "403": {
                        "$ref": "#/components/responses/webhook-403"
                    },
                    "404": {
                        "$ref": "#/components/responses/webhook-404"
                    },
                    "500": {
                        "$ref": "#/components/responses/webhook-500"
                    }
                }
            }
        },
        "webhooks.fraud-check-done": {
            "post": {
                "summary": "Fraud Check Completed",
                "description": "Triggered when a Fraud Detection request is completed",
                "operationId": "fraudCheckDoneWebhook",
                "tags": [
                    "fraud-detection"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/webhook.event"
                                    },
                                    {
                                        "properties": {
                                            "name": {
                                                "enum": [
                                                    "fraud-check.done"
                                                ]
                                            },
                                            "data": {
                                                "$ref": "#/components/schemas/schema.webhooks.fraud-check-done-data"
                                            }
                                        }
                                    }
                                ]
                            },
                            "examples": {
                                "completed": {
                                    "$ref": "#/components/examples/webhooks.examples.fraud-check-done-event"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "$ref": "#/components/responses/webhook-200"
                    },
                    "400": {
                        "$ref": "#/components/responses/webhook-400"
                    },
                    "401": {
                        "$ref": "#/components/responses/webhook-401"
                    },
                    "403": {
                        "$ref": "#/components/responses/webhook-403"
                    },
                    "404": {
                        "$ref": "#/components/responses/webhook-404"
                    },
                    "500": {
                        "$ref": "#/components/responses/webhook-500"
                    }
                }
            },
            "description": "The event `fraud-check.done` is sent when a Fraud Detection request is completed. For details about the response structure, see [Fraud Detection API](/#tag/fraud-detection/operation/api_fraud-check_post_collection).\n\n\n[Webhook notifications](/?l=en/#tag/notifications)"
        },
        "webhooks.sms-email-parsing-success": {
            "post": {
                "summary": "SMS Email Parsing Success",
                "description": "Triggered when Email to SMS email is successfully parsed",
                "operationId": "webhooks.sms-email-parsing-success",
                "tags": [
                    "sms"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/webhook.event"
                                    },
                                    {
                                        "properties": {
                                            "name": {
                                                "enum": [
                                                    "sms.email.parsing.success"
                                                ]
                                            },
                                            "data": {
                                                "$ref": "#/components/schemas/schema.webhooks.sms-email-parsing-success-data"
                                            }
                                        }
                                    }
                                ]
                            },
                            "examples": {
                                "success": {
                                    "$ref": "#/components/examples/webhooks.examples.sms-email-parsing-success-event"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "$ref": "#/components/responses/webhook-200"
                    },
                    "400": {
                        "$ref": "#/components/responses/webhook-400"
                    },
                    "401": {
                        "$ref": "#/components/responses/webhook-401"
                    },
                    "403": {
                        "$ref": "#/components/responses/webhook-403"
                    },
                    "404": {
                        "$ref": "#/components/responses/webhook-404"
                    },
                    "500": {
                        "$ref": "#/components/responses/webhook-500"
                    }
                }
            }
        },
        "webhooks.sms-email-parsing-fail": {
            "post": {
                "summary": "SMS Email Parsing Fail",
                "description": "Triggered when Email to SMS email parsing fails",
                "operationId": "webhooks.sms-email-parsing-fail",
                "tags": [
                    "sms"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/webhook.event"
                                    },
                                    {
                                        "properties": {
                                            "name": {
                                                "enum": [
                                                    "sms.email.parsing.fail"
                                                ]
                                            },
                                            "data": {
                                                "$ref": "#/components/schemas/schema.webhooks.sms-email-parsing-fail-data"
                                            }
                                        }
                                    }
                                ]
                            },
                            "examples": {
                                "fail": {
                                    "$ref": "#/components/examples/webhooks.examples.sms-email-parsing-fail-event"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "$ref": "#/components/responses/webhook-200"
                    },
                    "400": {
                        "$ref": "#/components/responses/webhook-400"
                    },
                    "401": {
                        "$ref": "#/components/responses/webhook-401"
                    },
                    "403": {
                        "$ref": "#/components/responses/webhook-403"
                    },
                    "404": {
                        "$ref": "#/components/responses/webhook-404"
                    },
                    "500": {
                        "$ref": "#/components/responses/webhook-500"
                    }
                }
            }
        },
        "webhooks.phone.unsubscribe": {
            "post": {
                "summary": "Phone Unsubscribe Webhook",
                "description": "Triggered when a phone number unsubscribes by form submit",
                "tags": [
                    "phones"
                ],
                "operationId": "webhooks.phone-unsubscribe-webhook",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/webhook.event"
                                    },
                                    {
                                        "properties": {
                                            "name": {
                                                "enum": [
                                                    "phone.unsubscribe"
                                                ]
                                            },
                                            "data": {
                                                "$ref": "#/components/schemas/schema.webhooks.phone-unsubscribe-data"
                                            }
                                        }
                                    }
                                ]
                            },
                            "examples": {
                                "unsubscribe": {
                                    "summary": "Phone unsubscribe event",
                                    "value": {
                                        "id": "ef58b437-1319-4b0c-961b-17214cf1cf32",
                                        "data": {
                                            "phone": "+4911113333444",
                                            "user_id": 2,
                                            "created_at": 1757849748,
                                            "campaign_code": "3KCKb5nMD",
                                            "additional_data": {
                                                "reason": {
                                                    "id": 4,
                                                    "label": "Es ist unverst\u00e4ndlich"
                                                },
                                                "additional_text": "zus\u00e4tzlicher Benutzertext mit Erkl\u00e4rung"
                                            },
                                            "short_link_code": "baaIou",
                                            "unsubscribe_request_id": 59
                                        },
                                        "name": "phone.unsubscribe",
                                        "created_at": 1757849748,
                                        "api_version": "2022-05-25",
                                        "attempt_number": 1,
                                        "attempts_total": 4
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "$ref": "#/components/responses/webhook-200"
                    },
                    "400": {
                        "$ref": "#/components/responses/webhook-400"
                    },
                    "401": {
                        "$ref": "#/components/responses/webhook-401"
                    },
                    "403": {
                        "$ref": "#/components/responses/webhook-403"
                    },
                    "404": {
                        "$ref": "#/components/responses/webhook-404"
                    },
                    "500": {
                        "$ref": "#/components/responses/webhook-500"
                    }
                }
            }
        },
        "webhooks.phone.subscribe": {
            "post": {
                "summary": "Phone Subscribe Webhook",
                "description": "Triggered when a phone number subscribes by form submit",
                "tags": [
                    "phones"
                ],
                "operationId": "webhooks.phone-subscribe-webhook",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/webhook.event"
                                    },
                                    {
                                        "properties": {
                                            "name": {
                                                "enum": [
                                                    "phone.subscribe"
                                                ]
                                            },
                                            "data": {
                                                "$ref": "#/components/schemas/schema.webhooks.phone-subscribe-data"
                                            }
                                        }
                                    }
                                ]
                            },
                            "examples": {
                                "subscribe": {
                                    "summary": "Phone subscribe event",
                                    "value": {
                                        "id": "ed18a290-766d-46cf-ab4e-6fa421405fbd",
                                        "data": {
                                            "phone": "+99559122567",
                                            "user_id": 21911,
                                            "created_at": 1757926648,
                                            "campaign_code": "1dkGdCC2xnBc",
                                            "additional_data": [],
                                            "short_link_code": "baaIoP",
                                            "group_id": 123
                                        },
                                        "name": "phone.subscribe",
                                        "created_at": 1757926648,
                                        "api_version": "2022-05-25",
                                        "attempt_number": 1,
                                        "attempts_total": 4
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "$ref": "#/components/responses/webhook-200"
                    },
                    "400": {
                        "$ref": "#/components/responses/webhook-400"
                    },
                    "401": {
                        "$ref": "#/components/responses/webhook-401"
                    },
                    "403": {
                        "$ref": "#/components/responses/webhook-403"
                    },
                    "404": {
                        "$ref": "#/components/responses/webhook-404"
                    },
                    "500": {
                        "$ref": "#/components/responses/webhook-500"
                    }
                }
            }
        }
    },
    "components": {
        "securitySchemes": {
            "token": {
                "type": "apiKey",
                "in": "header",
                "name": "X-LOX24-AUTH-TOKEN",
                "description": "After logging in to your web account, you can create, deactivate or delete one or more API keys in the \"Settings\" under \"API Settings\" (please select a v2 Key)."
            }
        },
        "parameters": {
            "filter.common.page": {
                "name": "page",
                "in": "query",
                "description": "Current page",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": true,
                "schema": {
                    "type": "integer",
                    "default": 1,
                    "minimum": 1
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.messages.uuid.array": {
                "name": "uuid[]",
                "in": "query",
                "description": "*Exact* filter by SMS ID",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "filter.messages.uuid.exact": {
                "name": "uuid",
                "in": "query",
                "description": "*Exact* filter by SMS ID",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "order.common.created_at": {
                "name": "_order[created_at]",
                "in": "query",
                "description": "Sort by timestamp when the entity was created",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "$ref": "#/components/schemas/order.ordering"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "order.messages.delivery_at": {
                "name": "_order[delivery_at]",
                "in": "query",
                "description": "Sort by timestamp when the message was/should transmitted to the mobile network",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "$ref": "#/components/schemas/order.ordering"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "order.common.processed_at": {
                "name": "_order[processed_at]",
                "in": "query",
                "description": "Sort by timestamp when the entity was changed last time",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "$ref": "#/components/schemas/order.ordering"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "order.bulks.msg_total_count": {
                "name": "_order[msg_total_count]",
                "in": "query",
                "description": "Sort by the total counts of the related SMS",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "$ref": "#/components/schemas/order.ordering"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.messages.text.partial": {
                "name": "text",
                "in": "query",
                "description": "*Partial* case-insensitive text filter SMS by the message text",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.messages.sender_id.partial": {
                "name": "sender_id",
                "in": "query",
                "description": "*Partial* text case-insensitive filter SMS by the sender number or text",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.bulks.status_code.exact": {
                "name": "status_code",
                "in": "query",
                "description": "*Exact* filter Bulks by the status code",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "integer"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.bulks.status_code.array": {
                "name": "status_code[]",
                "in": "query",
                "description": "*Exact* filter Bulks by the statuses codes",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "filter.common.created_at.exact": {
                "name": "created_at",
                "in": "query",
                "description": "*Exact* filter entities by the creation timestamp",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "integer"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.common.created_at.array": {
                "name": "created_at[]",
                "in": "query",
                "description": "*Exact* and *range* filter entities by the creation timestamps",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "filter.messages.delivery_at.exact": {
                "name": "delivery_at",
                "in": "query",
                "description": "*Exact* filter SMS by the delivery timestamp",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "integer"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.messages.delivery_at.array": {
                "name": "delivery_at[]",
                "in": "query",
                "description": "*Exact* and *range* filter SMS by the delivery timestamps",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "filter.common.processed_at.exact": {
                "name": "processed_at",
                "in": "query",
                "description": "*Exact* filter entities by the last changes timestamp",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "integer"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.common.processed_at.array": {
                "name": "processed_at[]",
                "in": "query",
                "description": "*Exact* and *range* filter entities by the last changes timestamps",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "filter.bulks.msg_total_count.exact": {
                "name": "msg_total_count",
                "in": "query",
                "description": "*Exact* filter Bulks by the total count of the SMS in the bulk",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "integer"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.bulks.msg_total_count.array": {
                "name": "msg_total_count[]",
                "in": "query",
                "description": "*Exact* and *range* filter Bulks by the total counts of the related SMS",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "filter.messages.source.exact": {
                "name": "source",
                "in": "query",
                "description": "*Exact* filter SMS by the sources",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "integer"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.messages.source.array": {
                "name": "source[]",
                "in": "query",
                "description": "*Exact* and *range* filter SMS by the sources",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "filter.common.key_id.exact": {
                "name": "key_id",
                "in": "query",
                "description": "*Exact* filter entities by the used API key",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "integer"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.common.key_id.array": {
                "name": "key_id[]",
                "in": "query",
                "description": "*Exact* filter entities by the used API keys",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "filter.messages.is_unicode.boolean": {
                "name": "is_unicode",
                "in": "query",
                "description": "*Boolean* filter SMS by the `is_unicode` field to distinguish between GSM and Unicode messages",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "boolean"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.messages.is_dryrun.boolean": {
                "name": "is_dryrun",
                "in": "query",
                "description": "*Boolean* filter Bulks by the `is_dryrun` field to distinguish type of the Bulk",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "boolean"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.messages.is_unicode.exists": {
                "name": "exists[is_unicode]",
                "in": "query",
                "description": "*Boolean* and *exists* filter Bulks by the `is_unicode` field to distinguish between GSM and Unicode messages",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "boolean"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "path.bulks.id": {
                "name": "id",
                "in": "path",
                "description": "Bulk ID",
                "required": true,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "$ref": "#/components/schemas/property.common.uuid"
                },
                "style": "simple",
                "explode": false,
                "allowReserved": false
            },
            "filter.fraud-check.id.exact": {
                "name": "id",
                "in": "query",
                "description": "*Exact* filter by Fraud request ID",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "$ref": "#/components/schemas/property.common.uuid"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.fraud-check.id.array": {
                "name": "id[]",
                "in": "query",
                "description": "*Exact* filter by Fraud request ID",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "$ref": "#/components/schemas/property.common.uuid"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "filter.common.callback_data.partial": {
                "name": "callback_data",
                "in": "query",
                "description": "*Partitial* filter entities by the `callback_data`",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.fraud-check.request_phone.phone.partial": {
                "name": "request_phone.phone",
                "in": "query",
                "description": "*Partial* filter by the request's phone value",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.fraud-check.request_email.email.partial": {
                "name": "request_email.email",
                "in": "query",
                "description": "*Partial* filter by the request's email value",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.fraud-check.request_ip.ip.partial": {
                "name": "request_ip.ip",
                "in": "query",
                "description": "*Partial* filter by the request's IP value",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.fraud-check.status_code.exact": {
                "name": "status_code",
                "in": "query",
                "description": "*Exact* filter Fraud requests by the status code",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "integer"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.fraud-check.status_code.array": {
                "name": "status_code[]",
                "in": "query",
                "description": "*Exact* filter Fraud requests by the status codes",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "path.fraud-check.id": {
                "name": "id",
                "in": "path",
                "description": "Fraud Check request ID",
                "required": true,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "$ref": "#/components/schemas/property.common.uuid"
                },
                "style": "simple",
                "explode": false,
                "allowReserved": false
            },
            "path.groups.id": {
                "name": "id",
                "in": "path",
                "description": "Group ID",
                "required": true,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "integer",
                    "minimum": 0
                },
                "style": "simple",
                "explode": false,
                "allowReserved": false
            },
            "order.incomings.received_at": {
                "name": "_order[received_at]",
                "in": "query",
                "description": "Sort by timestamp when the Incoming sms was received",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "$ref": "#/components/schemas/order.ordering"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.incomings.from": {
                "name": "from",
                "in": "query",
                "description": "*Partial* case-insensitive text filter by sender's phone number",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.incomings.to": {
                "name": "to",
                "in": "query",
                "description": "*Partial* case-insensitive text filter by inbound's phone number",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.incomings.msg_uuid": {
                "name": "msg_uuid",
                "in": "query",
                "description": "*Exact* filter by initial SMS ID",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.incomings.msg_uuid.array": {
                "name": "msg_uuid[]",
                "in": "query",
                "description": "*Exact* filter by initial SMS ID",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "path.incomings.id": {
                "name": "uuid",
                "in": "path",
                "required": true,
                "deprecated": false,
                "schema": {
                    "$ref": "#/components/schemas/property.common.uuid"
                },
                "description": "Incoming message ID"
            },
            "path.phones.id": {
                "name": "id",
                "in": "path",
                "description": "Phone identifier",
                "required": true,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "integer",
                    "minimum": 0
                },
                "style": "simple",
                "explode": false,
                "allowReserved": false
            },
            "filter.short_link.name.partial": {
                "name": "name",
                "in": "query",
                "description": "Filter short links by name (partial match)",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.short_link_request.url.partial": {
                "name": "url",
                "in": "query",
                "description": "*Partial* case-insensitive text filter by a destination URL",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.short_link_request.type.exact": {
                "name": "type",
                "in": "query",
                "description": "*Exact* filter short links by type (exact match)",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "integer"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.short_link_request.type.array": {
                "name": "type[]",
                "in": "query",
                "description": "*Range* filter short links by type (array of values)",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "path.short_link_campaigns.code": {
                "name": "code",
                "in": "path",
                "description": "short_link_campaigns code",
                "required": true,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "simple",
                "explode": false,
                "allowReserved": false
            },
            "order.short_link_request.date": {
                "name": "_order[date]",
                "in": "query",
                "description": "Sort a list by 'date' property",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "$ref": "#/components/schemas/order.ordering"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.short_link_request.ip.partial": {
                "name": "ip",
                "in": "query",
                "description": "*Partial* case-insensitive text filter by a IP address",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.short_link_request.user_agent.partial": {
                "name": "user_agent",
                "in": "query",
                "description": "*Partial* filter short links by user agent (partial match)",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.common.country.exact": {
                "name": "country",
                "in": "query",
                "description": "*Exact* filter entities by the country code",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.common.country.array": {
                "name": "country[]",
                "in": "query",
                "description": "*Exact* filter entities by the country codes",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "filter.short_link_request.referer.partial": {
                "name": "referer",
                "in": "query",
                "description": "*Partial* case-insensitive text filter by a referer",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.short_link_request.date.exact": {
                "name": "date",
                "in": "query",
                "description": "*Exact* filter short link requests by exact date",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "integer"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.short_link_request.date.array": {
                "name": "date[]",
                "in": "query",
                "description": "*Exact* filter short link requests by date (array of values)",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "filter.short_link_request.browser.partial": {
                "name": "browser",
                "in": "query",
                "description": "*Partial* case-insensitive text filter by a browser name",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.short_link_request.os.partial": {
                "name": "os",
                "in": "query",
                "description": "*Partial* case-insensitive text filter by a operation system name",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.short_link_request.os_version.partial": {
                "name": "os_version",
                "in": "query",
                "description": "*Partial* case-insensitive text filter by a operation system version",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.short_link_request.software_type.partial": {
                "name": "software_type",
                "in": "query",
                "description": "*Partial* case-insensitive text filter by a software type",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.short_link_request.hardware_type.partial": {
                "name": "hardware_type",
                "in": "query",
                "description": "*Partial* case-insensitive text filter by a hardware type",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.short_link_request.date.between": {
                "name": "date[between]",
                "in": "query",
                "description": "*Range* filter short link requests by date range",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.short_link_request.date.gt": {
                "name": "date[gt]",
                "in": "query",
                "description": "Filter short link requests by date greater than",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.short_link_request.date.gte": {
                "name": "date[gte]",
                "in": "query",
                "description": "Filter short link requests by date greater than or equal",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.short_link_request.date.lt": {
                "name": "date[lt]",
                "in": "query",
                "description": "Filter short link requests by date less than",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.short_link_request.date.lte": {
                "name": "date[lte]",
                "in": "query",
                "description": "Filter short link requests by date less than or equal",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.short_link_request.browser_version.partial": {
                "name": "browser_version",
                "in": "query",
                "description": "*Partial* case-insensitive text filter by a browser version",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "path.short_link_requests.id": {
                "name": "id",
                "in": "path",
                "description": "Short link request ID",
                "required": true,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "simple",
                "explode": false,
                "allowReserved": false
            },
            "path.short_links.shortCode": {
                "name": "shortCode",
                "in": "path",
                "required": true,
                "deprecated": false,
                "allowEmptyValue": false,
                "explode": false,
                "allowReserved": false,
                "schema": {
                    "type": "string"
                },
                "description": "Short link code"
            },
            "path.sms.uuid": {
                "name": "uuid",
                "in": "path",
                "required": true,
                "deprecated": false,
                "schema": {
                    "type": "string"
                },
                "description": "SMS ID (`uuid`)"
            },
            "order.common.updated_at": {
                "name": "_order[updated_at]",
                "in": "query",
                "description": "Sort a list by 'updated_at' property",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "$ref": "#/components/schemas/order.ordering"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.common.updated_at.exact": {
                "name": "updated_at",
                "in": "query",
                "description": "*Exact* filter entities by the last update timestamp",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "integer"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.common.updated_at.array": {
                "name": "updated_at[]",
                "in": "query",
                "description": "*Exact* and *range* filter entities by the last update timestamps",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "order.messages.gateway_sent_at": {
                "name": "_order[gateway_sent_at]",
                "in": "query",
                "description": "Sort by timestamp when the message was transmitted to the mobile network",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "$ref": "#/components/schemas/order.ordering"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.messages.is_sent.boolean": {
                "name": "is_sent",
                "in": "query",
                "description": "*Boolean* filter SMS by the `is_sent` field to distinguish between already sent and not yet sent sms",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "boolean"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.messages.iso2.exact": {
                "name": "iso2",
                "in": "query",
                "description": "*Exact* filter SMS by the phone's country ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2))",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.messages.iso2.array": {
                "name": "iso2[]",
                "in": "query",
                "description": "*Exact* filter SMS by the phone's countries ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2))",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "filter.messages.dlr_code.exact": {
                "name": "dlr_code",
                "in": "query",
                "description": "*Exact* filter SMS by the delivery report status",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "integer"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.messages.dlr_code.array": {
                "name": "dlr_code[]",
                "in": "query",
                "description": "*Exact* filter SMS by the delivery report statuses",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "filter.messages.status_code.exact": {
                "name": "status_code",
                "in": "query",
                "description": "*Exact* filter SMS by the status code",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "integer"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.messages.status_code.array": {
                "name": "status_code[]",
                "in": "query",
                "description": "*Exact* filter SMS by the statuses codes",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "filter.messages.gateway_sent_at.exact": {
                "name": "gateway_sent_at",
                "in": "query",
                "description": "*Exact* filter SMS by the send to gateway timestamp",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "integer"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.messages.gateway_sent_at.array": {
                "name": "gateway_sent_at[]",
                "in": "query",
                "description": "*Exact* and *range* filter SMS by send to gateway timestamps",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "filter.messages.chars_count.exact": {
                "name": "chars_count",
                "in": "query",
                "description": "*Range* filter SMS by the message chars count",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "integer"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.messages.chars_count.array": {
                "name": "chars_count[]",
                "in": "query",
                "description": "*Exact* and *range* filter SMS by the message chars count",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "filter.messages.parts_count.exact": {
                "name": "parts_count",
                "in": "query",
                "description": "*Exact* filter SMS by the message parts count",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "integer"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.messages.parts_count.array": {
                "name": "parts_count[]",
                "in": "query",
                "description": "*Exact* and *range* filter SMS by the message parts count",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "integer"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "filter.messages.bulk.exact": {
                "name": "bulk",
                "in": "query",
                "description": "*Exact* filter SMS by the Bulk",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.messages.bulk.array": {
                "name": "bulk[]",
                "in": "query",
                "description": "*Exact* and *range* filter SMS by the Bulk",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "filter.messages.phone.partial": {
                "name": "phone",
                "in": "query",
                "description": "*Partial* text filter SMS by the phone number",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.messages.ip.partial": {
                "name": "ip",
                "in": "query",
                "description": "*Partial* text filter SMS by the IP which created the message",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.messages.callback_data.exact": {
                "name": "callback_data",
                "in": "query",
                "description": "*Exact* filter SMS by `callback_data` property",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.messages.callback_data.array": {
                "name": "callback_data[]",
                "in": "query",
                "description": "*Exact* filter SMS by `callback_data` property",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                },
                "style": "form",
                "explode": true,
                "allowReserved": false
            },
            "filter.blocked_numbers.number.exact": {
                "name": "number",
                "in": "query",
                "description": "Filter by exact phone number",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": true,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "filter.blocked_numbers.type.exact": {
                "name": "type",
                "in": "query",
                "description": "Filter by exact blocked number's type",
                "required": false,
                "deprecated": false,
                "allowEmptyValue": true,
                "schema": {
                    "type": "string"
                },
                "style": "form",
                "explode": false,
                "allowReserved": false
            },
            "path.blocked_numbers.id": {
                "name": "id",
                "in": "path",
                "description": "Blocked number ID",
                "required": true,
                "deprecated": false,
                "allowEmptyValue": false,
                "schema": {
                    "type": "integer",
                    "minimum": 0
                },
                "style": "simple",
                "explode": false,
                "allowReserved": false
            }
        },
        "schemas": {
            "order.ordering": {
                "type": "string",
                "default": "asc",
                "enum": [
                    "asc",
                    "desc"
                ]
            },
            "property._jsonld_id": {
                "readOnly": true,
                "type": "string",
                "description": "JSON-LD ID"
            },
            "property._jsonld_type": {
                "readOnly": true,
                "type": "string",
                "description": "JSON-LD type"
            },
            "property._jsonld_context": {
                "readOnly": true,
                "oneOf": [
                    {
                        "type": "string"
                    },
                    {
                        "type": "object",
                        "properties": {
                            "@vocab": {
                                "type": "string"
                            },
                            "hydra": {
                                "type": "string",
                                "enum": [
                                    "http://www.w3.org/ns/hydra/core#"
                                ]
                            }
                        },
                        "required": [
                            "@vocab",
                            "hydra"
                        ],
                        "additionalProperties": true
                    }
                ],
                "description": "JSON-LD context"
            },
            "property.common.uuid": {
                "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
                "type": "string",
                "description": "Unique entity UUID"
            },
            "property.messages.delivery_at": {
                "type": "integer",
                "minimum": 0,
                "description": "Scheduled delivery timestamp"
            },
            "property.bulks.status_code": {
                "type": "integer",
                "enum": [
                    0,
                    5,
                    10,
                    15,
                    20,
                    201
                ],
                "description": "Bulk's status:\n- `0` - new and not processed\n- `5` - bulks in progress\n- `10` - bulks was successfully processed\n- `15` - bulk's processing was canceled by the user\n- `20` - system error\n- `201` - error: no recipients found"
            },
            "property.bulks.msg_total_count": {
                "type": "integer",
                "minimum": 0,
                "description": "Count of the messages created by the bulk"
            },
            "property.messages.processed_at": {
                "type": [
                    "integer",
                    "null"
                ],
                "minimum": 0,
                "description": "Timestamp of last changes"
            },
            "property.common.ip_read": {
                "type": "string",
                "format": "ipv4",
                "description": "IP address of the host which sent request",
                "example": "192.168.1.1"
            },
            "property.messages.is_unicode": {
                "type": [
                    "boolean",
                    "null"
                ],
                "description": "True if message contains Unicode characters, False otherwise"
            },
            "property.messages.is_dryrun": {
                "type": "boolean",
                "description": "Type of the bulk 'dryrun' or not"
            },
            "property.messages.service_code": {
                "enum": [
                    "direct",
                    "text2speech",
                    "text2speech_ssml"
                ],
                "description": "Service or gateway code"
            },
            "property.common.key_id": {
                "type": "integer",
                "minimum": 1,
                "description": "API key identifier"
            },
            "property.messages.source": {
                "type": [
                    "integer",
                    "null"
                ],
                "description": "Message source or origin"
            },
            "property.messages.voice_lang": {
                "enum": [
                    "EN",
                    "DE",
                    "FR",
                    "IT",
                    "ES",
                    "PL",
                    "NL",
                    "RO",
                    "PT",
                    "CS",
                    "HU",
                    "SV",
                    "DA",
                    "FI",
                    "SK",
                    "HR",
                    "TR",
                    "RU",
                    "BG",
                    "UK",
                    null
                ],
                "type": [
                    "string",
                    "null"
                ],
                "description": "Voice message language. Possible values: `null` ([auto-detection](/info/ssml-language-detection/)) or one of: EN (English), DE (German), FR (French), IT (Italian), ES (Spanish), PL (Polish), NL (Dutch), RO (Romanian), PT (Portuguese), CS (Czech), HU (Hungarian), SV (Swedish), DA (Danish), FI (Finnish), SK (Slovak), HR (Croatian), TR (Turkish), RU (Russian), BG (Bulgarian), UK (Ukrainian)."
            },
            "property.messages.is_text_deleted": {
                "type": "boolean",
                "description": "True if message text was deleted, False otherwise"
            },
            "property.bulks.msg_total_cost": {
                "type": "integer",
                "minimum": 0,
                "description": "Cost of the messages created by the bulk"
            },
            "schema.bulks.jsonld-bulk_read_status": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "@id": {
                        "$ref": "#/components/schemas/property._jsonld_id"
                    },
                    "@type": {
                        "$ref": "#/components/schemas/property._jsonld_type"
                    },
                    "@context": {
                        "$ref": "#/components/schemas/property._jsonld_context"
                    },
                    "uuid": {
                        "$ref": "#/components/schemas/property.common.uuid"
                    },
                    "delivery_at": {
                        "$ref": "#/components/schemas/property.messages.delivery_at"
                    },
                    "status_code": {
                        "$ref": "#/components/schemas/property.bulks.status_code"
                    },
                    "msg_total_count": {
                        "$ref": "#/components/schemas/property.bulks.msg_total_count"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.uuid"
                    },
                    "processed_at": {
                        "$ref": "#/components/schemas/property.messages.processed_at"
                    },
                    "ip": {
                        "$ref": "#/components/schemas/property.common.ip_read"
                    },
                    "is_unicode": {
                        "$ref": "#/components/schemas/property.messages.is_unicode"
                    },
                    "is_dryrun": {
                        "$ref": "#/components/schemas/property.messages.is_dryrun"
                    },
                    "service_code": {
                        "$ref": "#/components/schemas/property.messages.service_code"
                    },
                    "key_id": {
                        "$ref": "#/components/schemas/property.common.key_id"
                    },
                    "source": {
                        "$ref": "#/components/schemas/property.messages.source"
                    },
                    "voice_lang": {
                        "$ref": "#/components/schemas/property.messages.voice_lang"
                    },
                    "is_text_deleted": {
                        "$ref": "#/components/schemas/property.messages.is_text_deleted"
                    },
                    "msg_total_cost": {
                        "$ref": "#/components/schemas/property.bulks.msg_total_cost"
                    }
                }
            },
            "hydra.totalItems": {
                "type": "integer",
                "minimum": 0
            },
            "hydra.view": {
                "type": "object",
                "properties": {
                    "@id": {
                        "type": "string",
                        "format": "iri-reference"
                    },
                    "@type": {
                        "type": "string"
                    },
                    "hydra:first": {
                        "type": "string",
                        "format": "iri-reference"
                    },
                    "hydra:last": {
                        "type": "string",
                        "format": "iri-reference"
                    },
                    "hydra:previous": {
                        "type": "string",
                        "format": "iri-reference"
                    },
                    "hydra:next": {
                        "type": "string",
                        "format": "iri-reference"
                    }
                },
                "example": {
                    "@id": "string",
                    "@type": "string",
                    "hydra:first": "string",
                    "hydra:last": "string",
                    "hydra:previous": "string",
                    "hydra:next": "string"
                }
            },
            "hydra.search": {
                "type": "object",
                "properties": {
                    "@type": {
                        "type": "string"
                    },
                    "hydra:template": {
                        "type": "string"
                    },
                    "hydra:variableRepresentation": {
                        "type": "string"
                    },
                    "hydra:mapping": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "@type": {
                                    "type": "string"
                                },
                                "variable": {
                                    "type": "string"
                                },
                                "property": {
                                    "type": [
                                        "string",
                                        "null"
                                    ]
                                },
                                "required": {
                                    "type": "boolean"
                                }
                            }
                        }
                    }
                }
            },
            "schema.bulks-bulk_read_status": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "uuid": {
                        "$ref": "#/components/schemas/property.common.uuid"
                    },
                    "delivery_at": {
                        "$ref": "#/components/schemas/property.messages.delivery_at"
                    },
                    "status_code": {
                        "$ref": "#/components/schemas/property.bulks.status_code"
                    },
                    "msg_total_count": {
                        "$ref": "#/components/schemas/property.bulks.msg_total_count"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.uuid"
                    },
                    "processed_at": {
                        "$ref": "#/components/schemas/property.messages.processed_at"
                    },
                    "ip": {
                        "$ref": "#/components/schemas/property.common.ip_read"
                    },
                    "is_unicode": {
                        "$ref": "#/components/schemas/property.messages.is_unicode"
                    },
                    "is_dryrun": {
                        "$ref": "#/components/schemas/property.messages.is_dryrun"
                    },
                    "service_code": {
                        "$ref": "#/components/schemas/property.messages.service_code"
                    },
                    "key_id": {
                        "$ref": "#/components/schemas/property.common.key_id"
                    },
                    "source": {
                        "$ref": "#/components/schemas/property.messages.source"
                    },
                    "voice_lang": {
                        "$ref": "#/components/schemas/property.messages.voice_lang"
                    },
                    "is_text_deleted": {
                        "$ref": "#/components/schemas/property.messages.is_text_deleted"
                    },
                    "msg_total_cost": {
                        "$ref": "#/components/schemas/property.bulks.msg_total_cost"
                    }
                }
            },
            "property.common.phone_number": {
                "type": "string",
                "pattern": "^\\+[1-9]\\d{1,14}$",
                "minLength": 4,
                "maxLength": 16,
                "description": "Recipient (international) number:\n- +491701234567 (E.164)\n- 00491701234567\n- 491701234567\n- 01701234567 (if the account is registered in Germany) will be convert to +491701234567\n\nIf the number is not in an E.164 format then the service will convert it based on user's address.\nTo avoid problems with the converting please use E.164 preferentially.",
                "example": "+14155552671"
            },
            "property.bulks.phones": {
                "type": [
                    "array",
                    "null"
                ],
                "items": {
                    "$ref": "#/components/schemas/property.common.phone_number"
                },
                "description": "List of the recipients (international) numbers:\n- +491701234567 (E.164)\n- 00491701234567\n- 491701234567\n- 01701234567 (if the account is registered in Germany) will be convert to +491701234567\n\nIf the number is not in an E.164 format then the service will convert it based on user's address.\nTo avoid problems with the converting please use E.164 preferentially."
            },
            "property.bulks.msg_groups": {
                "type": [
                    "array",
                    "null"
                ],
                "items": {
                    "type": "integer"
                },
                "description": "List of the recipients groups"
            },
            "property.messages.sender_id": {
                "type": "string",
                "pattern": "^(\\+?[1-9]\\d{0,14}|[a-zA-Z0-9 ]{1,11})$",
                "description": "Sender ID or phone number",
                "examples": [
                    "+491701234567",
                    "491701234567",
                    "MyCompany",
                    "SMS Service"
                ]
            },
            "property.bulks.text": {
                "maxLength": 1785,
                "type": "string",
                "description": "Max text length is 1785 character. But don't forget that the final message text can have a length of up to 1530 characters. With a Unicode SMS, the maximum character length is reduced to 670 characters. Internal encoding is UTF-8."
            },
            "schema.bulks-bulk_write": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "delivery_at": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/property.messages.delivery_at"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "sender_id": {
                        "$ref": "#/components/schemas/property.messages.sender_id"
                    },
                    "text": {
                        "$ref": "#/components/schemas/property.bulks.text"
                    },
                    "phones": {
                        "$ref": "#/components/schemas/property.bulks.phones"
                    },
                    "msg_groups": {
                        "$ref": "#/components/schemas/property.bulks.msg_groups"
                    },
                    "is_unicode": {
                        "$ref": "#/components/schemas/property.messages.is_unicode"
                    },
                    "service_code": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/property.messages.service_code"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "source": {
                        "$ref": "#/components/schemas/property.messages.source"
                    },
                    "voice_lang": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/property.messages.voice_lang"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "is_text_deleted": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/property.messages.is_text_deleted"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    }
                },
                "required": [
                    "sender_id",
                    "text"
                ],
                "oneOf": [
                    {
                        "required": [
                            "phones"
                        ],
                        "properties": {
                            "phones": {
                                "$ref": "#/components/schemas/property.bulks.phones"
                            }
                        }
                    },
                    {
                        "required": [
                            "msg_groups"
                        ],
                        "properties": {
                            "msg_groups": {
                                "$ref": "#/components/schemas/property.bulks.msg_groups"
                            }
                        }
                    }
                ]
            },
            "property.common.created_at": {
                "type": "integer",
                "minimum": 0,
                "description": "Timestamp when the entity was added to the system by the user"
            },
            "schema.bulks.jsonld-bulk_read": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "@id": {
                        "$ref": "#/components/schemas/property._jsonld_id"
                    },
                    "@type": {
                        "$ref": "#/components/schemas/property._jsonld_type"
                    },
                    "@context": {
                        "$ref": "#/components/schemas/property._jsonld_context"
                    },
                    "uuid": {
                        "$ref": "#/components/schemas/property.common.uuid"
                    },
                    "delivery_at": {
                        "$ref": "#/components/schemas/property.messages.delivery_at"
                    },
                    "sender_id": {
                        "$ref": "#/components/schemas/property.messages.sender_id"
                    },
                    "text": {
                        "$ref": "#/components/schemas/property.bulks.text"
                    },
                    "phones": {
                        "$ref": "#/components/schemas/property.bulks.phones"
                    },
                    "msg_groups": {
                        "$ref": "#/components/schemas/property.bulks.msg_groups"
                    },
                    "status_code": {
                        "$ref": "#/components/schemas/property.bulks.status_code"
                    },
                    "msg_total_count": {
                        "$ref": "#/components/schemas/property.bulks.msg_total_count"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    },
                    "processed_at": {
                        "$ref": "#/components/schemas/property.messages.processed_at"
                    },
                    "ip": {
                        "$ref": "#/components/schemas/property.common.ip_read"
                    },
                    "is_unicode": {
                        "$ref": "#/components/schemas/property.messages.is_unicode"
                    },
                    "is_dryrun": {
                        "$ref": "#/components/schemas/property.messages.is_dryrun"
                    },
                    "service_code": {
                        "$ref": "#/components/schemas/property.messages.service_code"
                    },
                    "key_id": {
                        "$ref": "#/components/schemas/property.common.key_id"
                    },
                    "source": {
                        "$ref": "#/components/schemas/property.messages.source"
                    },
                    "voice_lang": {
                        "$ref": "#/components/schemas/property.messages.voice_lang"
                    },
                    "is_text_deleted": {
                        "$ref": "#/components/schemas/property.messages.is_text_deleted"
                    },
                    "msg_total_cost": {
                        "$ref": "#/components/schemas/property.bulks.msg_total_cost"
                    }
                }
            },
            "schema.bulks-bulk_read": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "uuid": {
                        "$ref": "#/components/schemas/property.common.uuid"
                    },
                    "delivery_at": {
                        "$ref": "#/components/schemas/property.messages.delivery_at"
                    },
                    "sender_id": {
                        "$ref": "#/components/schemas/property.messages.sender_id"
                    },
                    "text": {
                        "$ref": "#/components/schemas/property.bulks.text"
                    },
                    "phones": {
                        "$ref": "#/components/schemas/property.bulks.phones"
                    },
                    "msg_groups": {
                        "$ref": "#/components/schemas/property.bulks.msg_groups"
                    },
                    "status_code": {
                        "$ref": "#/components/schemas/property.bulks.status_code"
                    },
                    "msg_total_count": {
                        "$ref": "#/components/schemas/property.bulks.msg_total_count"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    },
                    "processed_at": {
                        "$ref": "#/components/schemas/property.messages.processed_at"
                    },
                    "ip": {
                        "$ref": "#/components/schemas/property.common.ip_read"
                    },
                    "is_unicode": {
                        "$ref": "#/components/schemas/property.messages.is_unicode"
                    },
                    "is_dryrun": {
                        "$ref": "#/components/schemas/property.messages.is_dryrun"
                    },
                    "service_code": {
                        "$ref": "#/components/schemas/property.messages.service_code"
                    },
                    "key_id": {
                        "$ref": "#/components/schemas/property.common.key_id"
                    },
                    "source": {
                        "$ref": "#/components/schemas/property.messages.source"
                    },
                    "voice_lang": {
                        "$ref": "#/components/schemas/property.messages.voice_lang"
                    },
                    "is_text_deleted": {
                        "$ref": "#/components/schemas/property.messages.is_text_deleted"
                    },
                    "msg_total_cost": {
                        "$ref": "#/components/schemas/property.bulks.msg_total_cost"
                    }
                }
            },
            "property.user_info.id": {
                "type": "integer",
                "minimum": 1,
                "description": "Current User ID"
            },
            "property.common.currency": {
                "type": "string",
                "enum": [
                    "EUR",
                    "CHF"
                ],
                "default": "EUR",
                "description": "Currency"
            },
            "property.user_info.balance_changed_at": {
                "type": "integer",
                "minimum": 0,
                "description": "Timestamp when balance was changed"
            },
            "property.user_info.is_text_deleted": {
                "type": "boolean",
                "description": "Global parameter for deleting message texts after sending"
            },
            "property.user_info.balance_amount": {
                "type": "number",
                "description": "Balance amount"
            },
            "property.user_info.services": {
                "type": "array",
                "items": {
                    "type": "string",
                    "enum": [
                        "economy",
                        "pro",
                        "text2speech",
                        "text2speech_ssml",
                        "direct"
                    ]
                },
                "description": "List of the available service's codes"
            },
            "property.user_info.groups": {
                "type": "object",
                "additionalProperties": {
                    "type": "string",
                    "pattern": "^/groups/[0-9]+$",
                    "example": "/groups/24512"
                },
                "example": {
                    "24512": "/groups/24512",
                    "24513": "/groups/24513",
                    "24519": "/groups/24519"
                },
                "description": "Object with group IDs as keys and their corresponding endpoint URIs as values"
            },
            "schema.client.jsonld-get": {
                "type": "object",
                "description": "Info about your user's account",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "@id": {
                        "$ref": "#/components/schemas/property._jsonld_id"
                    },
                    "@type": {
                        "$ref": "#/components/schemas/property._jsonld_type"
                    },
                    "@context": {
                        "$ref": "#/components/schemas/property._jsonld_context"
                    },
                    "id": {
                        "$ref": "#/components/schemas/property.user_info.id"
                    },
                    "currency": {
                        "$ref": "#/components/schemas/property.common.currency"
                    },
                    "balance_changed_at": {
                        "$ref": "#/components/schemas/property.user_info.balance_changed_at"
                    },
                    "is_text_deleted": {
                        "$ref": "#/components/schemas/property.user_info.is_text_deleted"
                    },
                    "balance_amount": {
                        "$ref": "#/components/schemas/property.user_info.balance_amount"
                    },
                    "services": {
                        "$ref": "#/components/schemas/property.user_info.services"
                    },
                    "groups": {
                        "$ref": "#/components/schemas/property.user_info.groups"
                    }
                }
            },
            "schema.client-get": {
                "type": "object",
                "description": "Info about your user's account",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "id": {
                        "$ref": "#/components/schemas/property.user_info.id"
                    },
                    "currency": {
                        "$ref": "#/components/schemas/property.common.currency"
                    },
                    "balance_changed_at": {
                        "$ref": "#/components/schemas/property.user_info.balance_changed_at"
                    },
                    "is_text_deleted": {
                        "$ref": "#/components/schemas/property.user_info.is_text_deleted"
                    },
                    "balance_amount": {
                        "$ref": "#/components/schemas/property.user_info.balance_amount"
                    },
                    "services": {
                        "$ref": "#/components/schemas/property.user_info.services"
                    },
                    "groups": {
                        "$ref": "#/components/schemas/property.user_info.groups"
                    }
                }
            },
            "property.fraud-check.status_code": {
                "type": "integer",
                "enum": [
                    0,
                    5,
                    10,
                    20,
                    21,
                    1000
                ],
                "description": "Request processing status codes:\n- 0 \u2013 new request and not processed yet\n- 5 \u2013 request's processing in progress\n- 10 \u2013 request's processing completed successfully\n- 20 - request's processing completed with error: not enough credits\n- 21 - request's processing completed with error: invalid data\n- 1000 - request's processing completed with error: unexpected error"
            },
            "property.fraud-check.risk_score": {
                "type": "number",
                "minimum": 0,
                "maximum": 100,
                "description": "Fraud risk score from 0 (good) to 100 (bad)"
            },
            "property.fraud-check.service_code": {
                "type": "string",
                "enum": [
                    "economy",
                    "pro",
                    "direct"
                ],
                "description": "Service code defines the type of fraud query you make. Economy contains only a risk value, while Pro and Direct contain more details about the results, so you can make your own decision. Direct queries are also processed with priority. (see [/me](/info/user/))"
            },
            "property.common.updated_at": {
                "readOnly": true,
                "type": "integer",
                "minimum": 0,
                "description": "Timestamp when the entity was changed"
            },
            "property.common.callback_data": {
                "maxLength": 36,
                "type": [
                    "string",
                    "null"
                ],
                "description": "String which will be send back to your endpoint. E.g. it can be usable to pass your system message id."
            },
            "property.fraud-check-phone.is_possible": {
                "type": "boolean",
                "description": "Is phone number possible"
            },
            "property.fraud-check-phone.is_valid": {
                "type": "boolean",
                "description": "Is phone number valid"
            },
            "property.common.country_code": {
                "type": "string",
                "pattern": "^[A-Z]{2}$",
                "minLength": 2,
                "maxLength": 2,
                "description": "Country code",
                "examples": [
                    "US",
                    "CA",
                    "GB",
                    "DE",
                    "FR"
                ]
            },
            "property.fraud-check-phone.number_type": {
                "type": "string",
                "description": "Phone number type"
            },
            "schema.fraud-check-phone.jsonld-fraud_request_read": {
                "type": "object",
                "description": "Fraud check request phone number",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "@id": {
                        "$ref": "#/components/schemas/property._jsonld_id"
                    },
                    "@type": {
                        "$ref": "#/components/schemas/property._jsonld_type"
                    },
                    "@context": {
                        "$ref": "#/components/schemas/property._jsonld_context"
                    },
                    "status_code": {
                        "$ref": "#/components/schemas/property.fraud-check.status_code"
                    },
                    "phone": {
                        "$ref": "#/components/schemas/property.common.phone_number"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    },
                    "updated_at": {
                        "$ref": "#/components/schemas/property.common.updated_at"
                    },
                    "is_possible": {
                        "$ref": "#/components/schemas/property.fraud-check-phone.is_possible"
                    },
                    "is_valid": {
                        "$ref": "#/components/schemas/property.fraud-check-phone.is_valid"
                    },
                    "region": {
                        "$ref": "#/components/schemas/property.common.country_code"
                    },
                    "number_type": {
                        "$ref": "#/components/schemas/property.fraud-check-phone.number_type"
                    }
                },
                "required": [
                    "phone"
                ]
            },
            "property.fraud-check-email.email": {
                "format": "email",
                "minLength": 6,
                "maxLength": 500,
                "externalDocs": {
                    "url": "https://schema.org/email"
                },
                "type": "string",
                "description": "An email address sent to check"
            },
            "property.fraud-check-email.is_possible": {
                "type": "boolean",
                "description": "Is this email possible or not"
            },
            "property.fraud-check-email.is_anonymous": {
                "type": "boolean",
                "description": "Is the service used to anonymize the sender of the email"
            },
            "schema.fraud-check-email.jsonld-fraud_request_read": {
                "type": "object",
                "description": "Fraud check request email",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "@id": {
                        "$ref": "#/components/schemas/property._jsonld_id"
                    },
                    "@type": {
                        "$ref": "#/components/schemas/property._jsonld_type"
                    },
                    "@context": {
                        "$ref": "#/components/schemas/property._jsonld_context"
                    },
                    "status_code": {
                        "$ref": "#/components/schemas/property.fraud-check.status_code"
                    },
                    "email": {
                        "$ref": "#/components/schemas/property.fraud-check-email.email"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    },
                    "updated_at": {
                        "$ref": "#/components/schemas/property.common.updated_at"
                    },
                    "is_possible": {
                        "$ref": "#/components/schemas/property.fraud-check-email.is_possible"
                    },
                    "is_anonymous": {
                        "$ref": "#/components/schemas/property.fraud-check-email.is_anonymous"
                    }
                },
                "required": [
                    "email"
                ]
            },
            "property.fraud-check.ip": {
                "type": "string",
                "minLength": 7,
                "maxLength": 39,
                "description": "IP address (IP v4/v6)"
            },
            "property.fraud-check-ip.city": {
                "type": "string",
                "description": "The city name of the IP address"
            },
            "property.fraud-check-ip.postcode": {
                "type": "string",
                "description": "The zip or post code of the IP address"
            },
            "property.fraud-check-ip.geolocation": {
                "type": "array",
                "items": {
                    "type": "number"
                },
                "description": "The latitude,longitude of the IP address (array)"
            },
            "property.fraud-check-ip.isp_name": {
                "type": "string",
                "description": "The name of the ISP"
            },
            "property.fraud-check-ip.isp_risk_score": {
                "type": "number",
                "minimum": 0,
                "maximum": 100,
                "description": "Risk score for the ISP"
            },
            "property.fraud-check-ip.proxy_type": {
                "type": "string",
                "enum": [
                    "VPN",
                    "TOR",
                    "DCH",
                    "PUB",
                    "WEB",
                    "SES"
                ],
                "description": "If host is proxy:\n- VPN \u2013 Anonymizing VPN services. These services offer users a publicly accessible VPN for the purpose of hiding their IP address.\n- TOR \u2013 Tor Exit Nodes. The Tor Project is an open network used by those who wish to maintain anonymity.\n- DCH \u2013 Hosting Provider, Data Centre or Content Delivery Network. Since hosting providers and data centres can serve to provide anonymity, the Anonymous IP database flags IP addresses associated with them.\n- PUB \u2013 Public Proxies. These are services which make connection requests on a user's behalf. Proxy server software can be configured by the administrator to listen on some specified port. These differ from VPNs in that the proxies usually have limited functions compare to VPNs.\n- WEB \u2013 Web Proxies. These are web services which make web requests on a user's behalf. These differ from VPNs or Public Proxies in that they are simple web-based proxies rather than operating at the IP address and other ports level.\n- SES \u2013 Search Engine Robots. These are services which perform crawling or scraping to a website, such as, the search engine spider or bots engine."
            },
            "property.fraud-check-ip.connection_type": {
                "type": [
                    "string",
                    "null"
                ],
                "enum": [
                    "dialup",
                    "isdn",
                    "cable",
                    "dsl",
                    "fttx",
                    "wireless",
                    null
                ],
                "description": "The values can be one of either: \"dialup\", \"isdn\", \"cable\", \"dsl\", \"fttx\", \"wireless\" or null"
            },
            "property.fraud-check-ip.is_ok": {
                "type": "boolean",
                "description": "Was the request handled correctly?"
            },
            "schema.fraud-check-ip.jsonld-fraud_request_read": {
                "type": "object",
                "description": "Fraud check request IP address",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "@id": {
                        "$ref": "#/components/schemas/property._jsonld_id"
                    },
                    "@type": {
                        "$ref": "#/components/schemas/property._jsonld_type"
                    },
                    "@context": {
                        "$ref": "#/components/schemas/property._jsonld_context"
                    },
                    "status_code": {
                        "$ref": "#/components/schemas/property.fraud-check.status_code"
                    },
                    "ip": {
                        "$ref": "#/components/schemas/property.fraud-check.ip"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    },
                    "updated_at": {
                        "$ref": "#/components/schemas/property.common.updated_at"
                    },
                    "iso2": {
                        "$ref": "#/components/schemas/property.common.country_code"
                    },
                    "state": {
                        "$ref": "#/components/schemas/property.common.country_code"
                    },
                    "city": {
                        "$ref": "#/components/schemas/property.fraud-check-ip.city"
                    },
                    "postcode": {
                        "$ref": "#/components/schemas/property.fraud-check-ip.postcode"
                    },
                    "geolocation": {
                        "$ref": "#/components/schemas/property.fraud-check-ip.geolocation"
                    },
                    "isp_name": {
                        "$ref": "#/components/schemas/property.fraud-check-ip.isp_name"
                    },
                    "isp_risk_score": {
                        "$ref": "#/components/schemas/property.fraud-check-ip.isp_risk_score"
                    },
                    "proxy_type": {
                        "$ref": "#/components/schemas/property.fraud-check-ip.proxy_type"
                    },
                    "connection_type": {
                        "$ref": "#/components/schemas/property.fraud-check-ip.connection_type"
                    },
                    "is_ok": {
                        "$ref": "#/components/schemas/property.fraud-check-ip.is_ok"
                    }
                },
                "required": [
                    "ip"
                ]
            },
            "property.fraud-check-address.status_code": {
                "type": [
                    "integer",
                    "null"
                ],
                "description": "The request status"
            },
            "property.fraud-check-address.city": {
                "minLength": 2,
                "maxLength": 100,
                "type": [
                    "string",
                    "null"
                ],
                "description": "The city name of the address"
            },
            "property.fraud-check-address.postcode": {
                "minLength": 3,
                "maxLength": 20,
                "type": [
                    "string",
                    "null"
                ],
                "description": "The zip or post code of the address"
            },
            "property.fraud-check-address.street_number": {
                "minLength": 1,
                "maxLength": 30,
                "type": [
                    "string",
                    "null"
                ],
                "description": "The number of house"
            },
            "property.fraud-check-address.street_name": {
                "minLength": 2,
                "maxLength": 255,
                "type": [
                    "string",
                    "null"
                ],
                "description": "The street name"
            },
            "schema.fraud-check-address.jsonld-fraud_request_read": {
                "type": "object",
                "description": "Fraud check request address",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "@id": {
                        "$ref": "#/components/schemas/property._jsonld_id"
                    },
                    "@type": {
                        "$ref": "#/components/schemas/property._jsonld_type"
                    },
                    "@context": {
                        "$ref": "#/components/schemas/property._jsonld_context"
                    },
                    "status_code": {
                        "$ref": "#/components/schemas/property.fraud-check-address.status_code"
                    },
                    "iso2": {
                        "$ref": "#/components/schemas/property.common.country_code"
                    },
                    "city": {
                        "$ref": "#/components/schemas/property.fraud-check-address.city"
                    },
                    "postcode": {
                        "$ref": "#/components/schemas/property.fraud-check-address.postcode"
                    },
                    "street_number": {
                        "$ref": "#/components/schemas/property.fraud-check-address.street_number"
                    },
                    "street_name": {
                        "$ref": "#/components/schemas/property.fraud-check-address.street_name"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    },
                    "updated_at": {
                        "$ref": "#/components/schemas/property.common.updated_at"
                    }
                },
                "required": [
                    "iso2",
                    "city",
                    "street_name"
                ]
            },
            "property.common.price": {
                "type": "number",
                "minimum": 0,
                "description": "Price"
            },
            "schema.fraud-check.jsonld-fraud_request_read": {
                "type": "object",
                "description": "Fraud check request",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "@id": {
                        "$ref": "#/components/schemas/property._jsonld_id"
                    },
                    "@type": {
                        "$ref": "#/components/schemas/property._jsonld_type"
                    },
                    "@context": {
                        "$ref": "#/components/schemas/property._jsonld_context"
                    },
                    "id": {
                        "$ref": "#/components/schemas/property.common.uuid"
                    },
                    "status_code": {
                        "$ref": "#/components/schemas/property.fraud-check.status_code"
                    },
                    "risk_score": {
                        "$ref": "#/components/schemas/property.fraud-check.risk_score"
                    },
                    "service_code": {
                        "$ref": "#/components/schemas/property.fraud-check.service_code"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    },
                    "updated_at": {
                        "$ref": "#/components/schemas/property.common.updated_at"
                    },
                    "callback_data": {
                        "anyOf": [
                            {
                                "$ref": "#/components/schemas/property.common.callback_data"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "request_phone": {
                        "anyOf": [
                            {
                                "$ref": "#/components/schemas/schema.fraud-check-phone.jsonld-fraud_request_read"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "request_email": {
                        "anyOf": [
                            {
                                "$ref": "#/components/schemas/schema.fraud-check-email.jsonld-fraud_request_read"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "request_ip": {
                        "anyOf": [
                            {
                                "$ref": "#/components/schemas/schema.fraud-check-ip.jsonld-fraud_request_read"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "request_address": {
                        "anyOf": [
                            {
                                "$ref": "#/components/schemas/schema.fraud-check-address.jsonld-fraud_request_read"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "price": {
                        "$ref": "#/components/schemas/property.common.price"
                    }
                },
                "required": [
                    "service_code"
                ]
            },
            "schema.fraud-check-phone-fraud_request_read": {
                "type": "object",
                "description": "Fraud check request phone number",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "status_code": {
                        "$ref": "#/components/schemas/property.fraud-check.status_code"
                    },
                    "phone": {
                        "$ref": "#/components/schemas/property.common.phone_number"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    },
                    "updated_at": {
                        "$ref": "#/components/schemas/property.common.updated_at"
                    },
                    "is_possible": {
                        "$ref": "#/components/schemas/property.fraud-check-phone.is_possible"
                    },
                    "is_valid": {
                        "$ref": "#/components/schemas/property.fraud-check-phone.is_valid"
                    },
                    "region": {
                        "$ref": "#/components/schemas/property.common.country_code"
                    },
                    "number_type": {
                        "$ref": "#/components/schemas/property.fraud-check-phone.number_type"
                    }
                },
                "required": [
                    "phone"
                ]
            },
            "schema.fraud-check-email-fraud_request_read": {
                "type": "object",
                "description": "Fraud check request email",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "status_code": {
                        "$ref": "#/components/schemas/property.fraud-check.status_code"
                    },
                    "email": {
                        "$ref": "#/components/schemas/property.fraud-check-email.email"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    },
                    "updated_at": {
                        "$ref": "#/components/schemas/property.common.updated_at"
                    },
                    "is_possible": {
                        "$ref": "#/components/schemas/property.fraud-check-email.is_possible"
                    },
                    "is_anonymous": {
                        "$ref": "#/components/schemas/property.fraud-check-email.is_anonymous"
                    }
                },
                "required": [
                    "email"
                ]
            },
            "schema.fraud-check-ip-fraud_request_read": {
                "type": "object",
                "description": "Fraud check request IP address",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "status_code": {
                        "$ref": "#/components/schemas/property.fraud-check.status_code"
                    },
                    "ip": {
                        "$ref": "#/components/schemas/property.fraud-check.ip"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    },
                    "updated_at": {
                        "$ref": "#/components/schemas/property.common.updated_at"
                    },
                    "iso2": {
                        "$ref": "#/components/schemas/property.common.country_code"
                    },
                    "state": {
                        "$ref": "#/components/schemas/property.common.country_code"
                    },
                    "city": {
                        "$ref": "#/components/schemas/property.fraud-check-ip.city"
                    },
                    "postcode": {
                        "$ref": "#/components/schemas/property.fraud-check-ip.postcode"
                    },
                    "geolocation": {
                        "$ref": "#/components/schemas/property.fraud-check-ip.geolocation"
                    },
                    "isp_name": {
                        "$ref": "#/components/schemas/property.fraud-check-ip.isp_name"
                    },
                    "isp_risk_score": {
                        "$ref": "#/components/schemas/property.fraud-check-ip.isp_risk_score"
                    },
                    "proxy_type": {
                        "$ref": "#/components/schemas/property.fraud-check-ip.proxy_type"
                    },
                    "connection_type": {
                        "$ref": "#/components/schemas/property.fraud-check-ip.connection_type"
                    },
                    "is_ok": {
                        "$ref": "#/components/schemas/property.fraud-check-ip.is_ok"
                    }
                },
                "required": [
                    "ip"
                ]
            },
            "schema.fraud-check-address-fraud_request_read": {
                "type": "object",
                "description": "Fraud check request address",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "status_code": {
                        "$ref": "#/components/schemas/property.fraud-check-address.status_code"
                    },
                    "iso2": {
                        "$ref": "#/components/schemas/property.common.country_code"
                    },
                    "city": {
                        "$ref": "#/components/schemas/property.fraud-check-address.city"
                    },
                    "postcode": {
                        "$ref": "#/components/schemas/property.fraud-check-address.postcode"
                    },
                    "street_number": {
                        "$ref": "#/components/schemas/property.fraud-check-address.street_number"
                    },
                    "street_name": {
                        "$ref": "#/components/schemas/property.fraud-check-address.street_name"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    },
                    "updated_at": {
                        "$ref": "#/components/schemas/property.common.updated_at"
                    }
                },
                "required": [
                    "iso2",
                    "city",
                    "street_name"
                ]
            },
            "schema.fraud-check-fraud_request_read": {
                "type": "object",
                "description": "Fraud check request",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "id": {
                        "$ref": "#/components/schemas/property.common.uuid"
                    },
                    "status_code": {
                        "$ref": "#/components/schemas/property.fraud-check.status_code"
                    },
                    "risk_score": {
                        "$ref": "#/components/schemas/property.fraud-check.risk_score"
                    },
                    "service_code": {
                        "$ref": "#/components/schemas/property.fraud-check.service_code"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    },
                    "updated_at": {
                        "$ref": "#/components/schemas/property.common.updated_at"
                    },
                    "callback_data": {
                        "anyOf": [
                            {
                                "$ref": "#/components/schemas/property.common.callback_data"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "request_phone": {
                        "description": "ORM\\Column(name=\"email\", type=\"text\", length=50, nullable=false)",
                        "anyOf": [
                            {
                                "$ref": "#/components/schemas/schema.fraud-check-phone-fraud_request_read"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "request_email": {
                        "anyOf": [
                            {
                                "$ref": "#/components/schemas/schema.fraud-check-email-fraud_request_read"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "request_ip": {
                        "anyOf": [
                            {
                                "$ref": "#/components/schemas/schema.fraud-check-ip-fraud_request_read"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "request_address": {
                        "anyOf": [
                            {
                                "$ref": "#/components/schemas/schema.fraud-check-address-fraud_request_read"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "price": {
                        "$ref": "#/components/schemas/property.common.price"
                    }
                },
                "required": [
                    "service_code"
                ]
            },
            "property.fraud-check.email": {
                "type": "string",
                "minLength": 6,
                "maxLength": 500,
                "description": "Email address"
            },
            "schema.fraud-check-address-fraud_request_write": {
                "type": "object",
                "description": "Fraud check request address",
                "deprecated": false,
                "required": [
                    "iso2",
                    "city",
                    "street_name"
                ],
                "properties": {
                    "iso2": {
                        "$ref": "#/components/schemas/property.common.country_code"
                    },
                    "city": {
                        "$ref": "#/components/schemas/property.fraud-check-address.city"
                    },
                    "postcode": {
                        "$ref": "#/components/schemas/property.fraud-check-address.postcode"
                    },
                    "street_number": {
                        "$ref": "#/components/schemas/property.fraud-check-address.street_number"
                    },
                    "street_name": {
                        "$ref": "#/components/schemas/property.fraud-check-address.street_name"
                    }
                }
            },
            "schema.fraud-check-fraud_request_write": {
                "type": "object",
                "description": "Fraud check request",
                "deprecated": false,
                "required": [
                    "service_code"
                ],
                "properties": {
                    "service_code": {
                        "$ref": "#/components/schemas/property.fraud-check.service_code"
                    },
                    "callback_data": {
                        "anyOf": [
                            {
                                "$ref": "#/components/schemas/property.common.callback_data"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "phone": {
                        "anyOf": [
                            {
                                "$ref": "#/components/schemas/property.common.phone_number"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "email": {
                        "anyOf": [
                            {
                                "$ref": "#/components/schemas/property.fraud-check.email"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "ip": {
                        "anyOf": [
                            {
                                "$ref": "#/components/schemas/property.fraud-check.ip"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "address": {
                        "anyOf": [
                            {
                                "$ref": "#/components/schemas/schema.fraud-check-address-fraud_request_write"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    }
                }
            },
            "property.group.id": {
                "type": "integer",
                "minimum": 1,
                "description": "Group ID"
            },
            "property.group.name": {
                "minLength": 1,
                "maxLength": 50,
                "type": "string",
                "description": "Group name"
            },
            "property.group.description": {
                "maxLength": 255,
                "type": [
                    "string",
                    "null"
                ],
                "description": "Group description"
            },
            "property.group.column_name": {
                "maxLength": 50,
                "type": [
                    "string",
                    "null"
                ],
                "description": "Name of the column"
            },
            "property.group.count_items": {
                "type": "integer",
                "minimum": 0,
                "description": "Count of the item in the group"
            },
            "property.group.deleted_at": {
                "type": [
                    "string",
                    "null"
                ],
                "format": "date-time",
                "description": "Date and time when group will be deleted"
            },
            "schema.groups.jsonld-group_read": {
                "type": "object",
                "description": "Phone's group",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "@context": {
                        "$ref": "#/components/schemas/property._jsonld_context"
                    },
                    "@id": {
                        "$ref": "#/components/schemas/property._jsonld_id"
                    },
                    "@type": {
                        "$ref": "#/components/schemas/property._jsonld_type"
                    },
                    "id": {
                        "$ref": "#/components/schemas/property.group.id"
                    },
                    "name": {
                        "$ref": "#/components/schemas/property.group.name"
                    },
                    "description": {
                        "$ref": "#/components/schemas/property.group.description"
                    },
                    "name_a": {
                        "$ref": "#/components/schemas/property.group.column_name"
                    },
                    "name_b": {
                        "$ref": "#/components/schemas/property.group.column_name"
                    },
                    "name_c": {
                        "$ref": "#/components/schemas/property.group.column_name"
                    },
                    "name_d": {
                        "$ref": "#/components/schemas/property.group.column_name"
                    },
                    "name_e": {
                        "$ref": "#/components/schemas/property.group.column_name"
                    },
                    "count_items": {
                        "$ref": "#/components/schemas/property.group.count_items"
                    },
                    "deleted_at": {
                        "$ref": "#/components/schemas/property.group.deleted_at"
                    }
                },
                "required": [
                    "name"
                ]
            },
            "schema.groups-group_read": {
                "type": "object",
                "description": "Phone's group",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "id": {
                        "$ref": "#/components/schemas/property.group.id"
                    },
                    "name": {
                        "$ref": "#/components/schemas/property.group.name"
                    },
                    "description": {
                        "$ref": "#/components/schemas/property.group.description"
                    },
                    "name_a": {
                        "$ref": "#/components/schemas/property.group.column_name"
                    },
                    "name_b": {
                        "$ref": "#/components/schemas/property.group.column_name"
                    },
                    "name_c": {
                        "$ref": "#/components/schemas/property.group.column_name"
                    },
                    "name_d": {
                        "$ref": "#/components/schemas/property.group.column_name"
                    },
                    "name_e": {
                        "$ref": "#/components/schemas/property.group.column_name"
                    },
                    "count_items": {
                        "$ref": "#/components/schemas/property.group.count_items"
                    },
                    "deleted_at": {
                        "$ref": "#/components/schemas/property.group.deleted_at"
                    }
                },
                "required": [
                    "name"
                ]
            },
            "property.phone.phone": {
                "maxLength": 30,
                "type": "string",
                "description": "Phone number"
            },
            "property.phone.column": {
                "maxLength": 1530,
                "type": [
                    "string",
                    "null"
                ],
                "description": "Phone column data"
            },
            "schema.phones-write": {
                "type": "object",
                "description": "Phones list by group",
                "deprecated": false,
                "required": [
                    "phone"
                ],
                "properties": {
                    "phone": {
                        "$ref": "#/components/schemas/property.phone.phone"
                    },
                    "a": {
                        "$ref": "#/components/schemas/property.phone.column"
                    },
                    "b": {
                        "$ref": "#/components/schemas/property.phone.column"
                    },
                    "c": {
                        "$ref": "#/components/schemas/property.phone.column"
                    },
                    "d": {
                        "$ref": "#/components/schemas/property.phone.column"
                    },
                    "e": {
                        "$ref": "#/components/schemas/property.phone.column"
                    },
                    "callback_data": {
                        "$ref": "#/components/schemas/property.common.callback_data"
                    }
                }
            },
            "schema.groups-write": {
                "type": "object",
                "description": "Phone's group",
                "deprecated": false,
                "required": [
                    "name"
                ],
                "properties": {
                    "name": {
                        "$ref": "#/components/schemas/property.group.name"
                    },
                    "description": {
                        "$ref": "#/components/schemas/property.group.description"
                    },
                    "name_a": {
                        "$ref": "#/components/schemas/property.group.column_name"
                    },
                    "name_b": {
                        "$ref": "#/components/schemas/property.group.column_name"
                    },
                    "name_c": {
                        "$ref": "#/components/schemas/property.group.column_name"
                    },
                    "name_d": {
                        "$ref": "#/components/schemas/property.group.column_name"
                    },
                    "name_e": {
                        "$ref": "#/components/schemas/property.group.column_name"
                    },
                    "phones": {
                        "oneOf": [
                            {
                                "type": "object",
                                "additionalProperties": {
                                    "$ref": "#/components/schemas/schema.phones-write"
                                }
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "deleted_at": {
                        "$ref": "#/components/schemas/property.group.deleted_at"
                    },
                    "id": {
                        "$ref": "#/components/schemas/property.group.id"
                    },
                    "count_items": {
                        "$ref": "#/components/schemas/property.group.count_items"
                    }
                }
            },
            "property.phone.id": {
                "type": "string",
                "description": "Phone ID"
            },
            "property.phone.subscribed_at": {
                "type": [
                    "integer",
                    "null"
                ],
                "description": "Timestamp when user was subscribed by a [link](/api/operations/post_subscribe/)"
            },
            "property.phone.unsubscribed_at": {
                "type": [
                    "integer",
                    "null"
                ],
                "description": "Timestamp when user was unsubscribed by a [link](/api/operations/post_unsubscribe/)"
            },
            "property.phone.unsubscribe_reason": {
                "type": [
                    "integer",
                    "null"
                ],
                "description": "Unsubscribe reasons:\n- 1 - I never subscribed\n- 2 - Too many messages\n- 3 - I am not interested\n- 4 - Content is incomprehensible\n- 5 - I don't like your company\n- 6 - Other"
            },
            "schema.phones.jsonld-phone_read": {
                "type": "object",
                "description": "Phones list by group",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "@context": {
                        "$ref": "#/components/schemas/property._jsonld_context"
                    },
                    "@id": {
                        "$ref": "#/components/schemas/property._jsonld_id"
                    },
                    "@type": {
                        "$ref": "#/components/schemas/property._jsonld_type"
                    },
                    "id": {
                        "$ref": "#/components/schemas/property.phone.id"
                    },
                    "phone": {
                        "$ref": "#/components/schemas/property.phone.phone"
                    },
                    "a": {
                        "$ref": "#/components/schemas/property.phone.column"
                    },
                    "b": {
                        "$ref": "#/components/schemas/property.phone.column"
                    },
                    "c": {
                        "$ref": "#/components/schemas/property.phone.column"
                    },
                    "d": {
                        "$ref": "#/components/schemas/property.phone.column"
                    },
                    "e": {
                        "$ref": "#/components/schemas/property.phone.column"
                    },
                    "callback_data": {
                        "$ref": "#/components/schemas/property.common.callback_data"
                    },
                    "subscribed_at": {
                        "$ref": "#/components/schemas/property.phone.subscribed_at"
                    },
                    "unsubscribed_at": {
                        "$ref": "#/components/schemas/property.phone.unsubscribed_at"
                    },
                    "unsubscribe_reason": {
                        "$ref": "#/components/schemas/property.phone.unsubscribe_reason"
                    }
                },
                "required": [
                    "phone"
                ]
            },
            "schema.phones-phone_read": {
                "type": "object",
                "description": "Phones list by group",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "id": {
                        "$ref": "#/components/schemas/property.phone.id"
                    },
                    "phone": {
                        "$ref": "#/components/schemas/property.phone.phone"
                    },
                    "a": {
                        "$ref": "#/components/schemas/property.phone.column"
                    },
                    "b": {
                        "$ref": "#/components/schemas/property.phone.column"
                    },
                    "c": {
                        "$ref": "#/components/schemas/property.phone.column"
                    },
                    "d": {
                        "$ref": "#/components/schemas/property.phone.column"
                    },
                    "e": {
                        "$ref": "#/components/schemas/property.phone.column"
                    },
                    "callback_data": {
                        "$ref": "#/components/schemas/property.common.callback_data"
                    },
                    "subscribed_at": {
                        "$ref": "#/components/schemas/property.phone.subscribed_at"
                    },
                    "unsubscribed_at": {
                        "$ref": "#/components/schemas/property.phone.unsubscribed_at"
                    },
                    "unsubscribe_reason": {
                        "$ref": "#/components/schemas/property.phone.unsubscribe_reason"
                    }
                },
                "required": [
                    "phone"
                ]
            },
            "schema.phones-phone_write": {
                "type": "object",
                "description": "Phones list by group",
                "deprecated": false,
                "required": [
                    "phone"
                ],
                "properties": {
                    "phone": {
                        "$ref": "#/components/schemas/property.phone.phone"
                    },
                    "a": {
                        "$ref": "#/components/schemas/property.phone.column"
                    },
                    "b": {
                        "$ref": "#/components/schemas/property.phone.column"
                    },
                    "c": {
                        "$ref": "#/components/schemas/property.phone.column"
                    },
                    "d": {
                        "$ref": "#/components/schemas/property.phone.column"
                    },
                    "e": {
                        "$ref": "#/components/schemas/property.phone.column"
                    },
                    "callback_data": {
                        "$ref": "#/components/schemas/property.common.callback_data"
                    }
                }
            },
            "schema.phones-batch-write": {
                "type": "array",
                "items": {
                    "$ref": "#/components/schemas/schema.phones-phone_write"
                }
            },
            "property.batch.status": {
                "readOnly": true,
                "type": "integer",
                "description": "Response HTTP status code"
            },
            "schema.response.jsonld-bad-request": {
                "type": "object",
                "readOnly": true,
                "properties": {
                    "@context": {
                        "type": "string",
                        "readOnly": true
                    },
                    "@type": {
                        "type": "string",
                        "readOnly": true
                    },
                    "hydra:title": {
                        "type": "string",
                        "readOnly": true
                    },
                    "hydra:description": {
                        "type": "string",
                        "readOnly": true
                    }
                }
            },
            "schema.phones.jsonld-batch-item": {
                "type": "object",
                "properties": {
                    "status": {
                        "$ref": "#/components/schemas/property.batch.status"
                    },
                    "body": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/schema.phones.jsonld-phone_read"
                            },
                            {
                                "$ref": "#/components/schemas/schema.response.jsonld-bad-request"
                            }
                        ]
                    }
                }
            },
            "schema.phones.jsonld-batch-read": {
                "type": "object",
                "readOnly": true,
                "properties": {
                    "@context": {
                        "$ref": "#/components/schemas/property._jsonld_context"
                    },
                    "@id": {
                        "$ref": "#/components/schemas/property._jsonld_id"
                    },
                    "@type": {
                        "$ref": "#/components/schemas/property._jsonld_type"
                    },
                    "hydra:totalItems": {
                        "type": "integer",
                        "minimum": 0
                    },
                    "hydra:member": {
                        "$ref": "#/components/schemas/schema.phones.jsonld-batch-item"
                    }
                }
            },
            "schema.response-bad-request": {
                "type": "object",
                "readOnly": true,
                "properties": {
                    "type": {
                        "type": "string",
                        "readOnly": true
                    },
                    "title": {
                        "type": "string",
                        "readOnly": true
                    },
                    "detail": {
                        "type": "string",
                        "readOnly": true
                    }
                }
            },
            "schema.phones-batch-item": {
                "type": "object",
                "properties": {
                    "status": {
                        "$ref": "#/components/schemas/property.batch.status"
                    },
                    "body": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/schema.phones-phone_read"
                            },
                            {
                                "$ref": "#/components/schemas/schema.response-bad-request"
                            }
                        ]
                    }
                }
            },
            "schema.phones-batch-read": {
                "type": "array",
                "readOnly": true,
                "items": {
                    "$ref": "#/components/schemas/schema.phones-batch-item"
                }
            },
            "property.incomings.received_at": {
                "type": "integer",
                "description": "Timestamp when SMS was received by the service"
            },
            "property.incomings.text": {
                "type": [
                    "string",
                    "null"
                ],
                "description": "SMS text"
            },
            "property.incomings.msg_uuid": {
                "type": [
                    "string",
                    "null"
                ],
                "description": "ID of SMS that get reply"
            },
            "schema.incomings.jsonld-incoming_read": {
                "type": "object",
                "description": "Incoming SMS",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "@id": {
                        "$ref": "#/components/schemas/property._jsonld_id"
                    },
                    "@type": {
                        "$ref": "#/components/schemas/property._jsonld_type"
                    },
                    "@context": {
                        "$ref": "#/components/schemas/property._jsonld_context"
                    },
                    "uuid": {
                        "$ref": "#/components/schemas/property.common.uuid"
                    },
                    "to": {
                        "$ref": "#/components/schemas/property.common.phone_number"
                    },
                    "from": {
                        "$ref": "#/components/schemas/property.common.phone_number"
                    },
                    "received_at": {
                        "$ref": "#/components/schemas/property.incomings.received_at"
                    },
                    "text": {
                        "$ref": "#/components/schemas/property.incomings.text"
                    },
                    "msg_uuid": {
                        "$ref": "#/components/schemas/property.incomings.msg_uuid"
                    }
                }
            },
            "schema.incomings-incoming_read": {
                "type": "object",
                "description": "Incoming SMS",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "uuid": {
                        "$ref": "#/components/schemas/property.common.uuid"
                    },
                    "to": {
                        "$ref": "#/components/schemas/property.common.phone_number"
                    },
                    "from": {
                        "$ref": "#/components/schemas/property.common.phone_number"
                    },
                    "received_at": {
                        "$ref": "#/components/schemas/property.incomings.received_at"
                    },
                    "text": {
                        "$ref": "#/components/schemas/property.incomings.text"
                    },
                    "msg_uuid": {
                        "$ref": "#/components/schemas/property.incomings.msg_uuid"
                    }
                }
            },
            "property.short_link_campaigns.type": {
                "enum": [
                    1,
                    2
                ],
                "type": "integer",
                "description": "Type of the short link campaign"
            },
            "property.short_link_campaigns.id": {
                "type": [
                    "string",
                    "null"
                ],
                "description": "Unique identifier of the short link campaign"
            },
            "property.short_link_campaigns.name": {
                "maxLength": 100,
                "type": "string",
                "description": "Name of the short link campaign"
            },
            "property.short_link_campaigns.url": {
                "type": "string",
                "description": "URL of the short link campaign"
            },
            "property.short_link_campaigns.group_id": {
                "type": [
                    "integer",
                    "null"
                ],
                "description": "Group ID of the short link campaign"
            },
            "schema.short_link_campaigns.jsonld-short_link_campaign_read": {
                "type": "object",
                "description": "Short link campaigns",
                "readOnly": true,
                "deprecated": false,
                "properties": {
                    "@id": {
                        "$ref": "#/components/schemas/property._jsonld_id"
                    },
                    "@type": {
                        "$ref": "#/components/schemas/property._jsonld_type"
                    },
                    "@context": {
                        "$ref": "#/components/schemas/property._jsonld_context"
                    },
                    "type": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.type"
                    },
                    "id": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.id"
                    },
                    "name": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.name"
                    },
                    "url": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.url"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    },
                    "group_id": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.group_id"
                    }
                }
            },
            "schema.short_link_campaigns-short_link_campaign_read": {
                "type": "object",
                "description": "Short link campaigns",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "type": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.type"
                    },
                    "id": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.id"
                    },
                    "name": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.name"
                    },
                    "url": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.url"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    },
                    "group_id": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.group_id"
                    }
                }
            },
            "schema.short_link_campaigns-short_link_campaign_write": {
                "type": "object",
                "description": "Short link campaigns",
                "deprecated": false,
                "required": [
                    "type",
                    "name",
                    "url"
                ],
                "properties": {
                    "type": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.type"
                    },
                    "name": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.name"
                    },
                    "url": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.url"
                    },
                    "group_id": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.group_id"
                    }
                }
            },
            "schema.short_link_campaigns-short_link_campaign_subscribe_write": {
                "type": "object",
                "description": "Short link campaigns",
                "deprecated": false,
                "required": [
                    "name",
                    "group_id"
                ],
                "properties": {
                    "name": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.name"
                    },
                    "group_id": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.group_id"
                    }
                }
            },
            "schema.short_link_campaigns.jsonld-short_link_campaign_subscribe_read": {
                "type": "object",
                "description": "Short link campaigns",
                "readOnly": true,
                "deprecated": false,
                "properties": {
                    "@id": {
                        "$ref": "#/components/schemas/property._jsonld_id"
                    },
                    "@type": {
                        "$ref": "#/components/schemas/property._jsonld_type"
                    },
                    "@context": {
                        "$ref": "#/components/schemas/property._jsonld_context"
                    },
                    "type": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.type"
                    },
                    "id": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.id"
                    },
                    "name": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.name"
                    },
                    "url": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.url"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    },
                    "group_id": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.group_id"
                    }
                }
            },
            "schema.short_link_campaigns-short_link_campaign_subscribe_read": {
                "type": "object",
                "description": "Short link campaigns",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "type": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.type"
                    },
                    "id": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.id"
                    },
                    "name": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.name"
                    },
                    "url": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.url"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    },
                    "group_id": {
                        "$ref": "#/components/schemas/property.short_link_campaigns.group_id"
                    }
                }
            },
            "property.short_link_requests.id": {
                "type": "integer",
                "minimum": 0,
                "description": "Unique identifier of the short link request"
            },
            "property.short_link_requests.ip": {
                "type": [
                    "string",
                    "null"
                ],
                "format": "ipv4",
                "example": "192.168.1.1",
                "maxLength": 15,
                "description": "IP address of the short link request"
            },
            "property.short_link_requests.user_agent": {
                "type": [
                    "string",
                    "null"
                ],
                "description": "User agent of the short link request"
            },
            "property.short_link_requests.url": {
                "type": "string",
                "description": "URL of the short link request"
            },
            "property.short_link_requests.date": {
                "type": "integer",
                "minimum": 0,
                "description": "Date of the short link request"
            },
            "property.short_link_requests.referer": {
                "type": [
                    "string",
                    "null"
                ],
                "description": "Referer of the short link request"
            },
            "property.short_link_requests.short_link": {
                "type": [
                    "string",
                    "null"
                ],
                "format": "iri-reference",
                "example": "https://example.com/",
                "description": "Short link associated with the request"
            },
            "property.short_link_requests.type": {
                "type": "integer",
                "description": "Type of the short link request"
            },
            "property.short_link_requests.browser": {
                "type": [
                    "string",
                    "null"
                ],
                "description": "Browser used for the short link request"
            },
            "property.short_link_requests.browser_version": {
                "type": [
                    "string",
                    "null"
                ],
                "maxLength": 255,
                "description": "Browser version used for the short link request"
            },
            "property.short_link_requests.os": {
                "type": [
                    "string",
                    "null"
                ],
                "maxLength": 255,
                "description": "Operating system used for the short link request"
            },
            "property.short_link_requests.os_version": {
                "type": [
                    "string",
                    "null"
                ],
                "maxLength": 255,
                "description": "Operating system version used for the short link request"
            },
            "property.short_link_requests.software_type": {
                "type": [
                    "string",
                    "null"
                ],
                "maxLength": 255,
                "description": "Software type used for the short link request"
            },
            "property.short_link_requests.hardware_type": {
                "type": [
                    "string",
                    "null"
                ],
                "maxLength": 255,
                "description": "Hardware type used for the short link request"
            },
            "schema.short_link_requests.jsonld-short_link_request_read": {
                "type": "object",
                "description": "Short link campaigns",
                "readOnly": true,
                "deprecated": false,
                "properties": {
                    "@id": {
                        "$ref": "#/components/schemas/property._jsonld_id"
                    },
                    "@type": {
                        "$ref": "#/components/schemas/property._jsonld_type"
                    },
                    "@context": {
                        "$ref": "#/components/schemas/property._jsonld_context"
                    },
                    "id": {
                        "$ref": "#/components/schemas/property.short_link_requests.id"
                    },
                    "ip": {
                        "$ref": "#/components/schemas/property.short_link_requests.ip"
                    },
                    "user_agent": {
                        "$ref": "#/components/schemas/property.short_link_requests.user_agent"
                    },
                    "url": {
                        "$ref": "#/components/schemas/property.short_link_requests.url"
                    },
                    "date": {
                        "$ref": "#/components/schemas/property.short_link_requests.date"
                    },
                    "country": {
                        "$ref": "#/components/schemas/property.common.country_code"
                    },
                    "referer": {
                        "$ref": "#/components/schemas/property.short_link_requests.referer"
                    },
                    "short_link": {
                        "$ref": "#/components/schemas/property.short_link_requests.short_link"
                    },
                    "type": {
                        "$ref": "#/components/schemas/property.short_link_requests.type"
                    },
                    "browser": {
                        "$ref": "#/components/schemas/property.short_link_requests.browser"
                    },
                    "browser_version": {
                        "$ref": "#/components/schemas/property.short_link_requests.browser_version"
                    },
                    "os": {
                        "$ref": "#/components/schemas/property.short_link_requests.os"
                    },
                    "os_version": {
                        "$ref": "#/components/schemas/property.short_link_requests.os_version"
                    },
                    "software_type": {
                        "$ref": "#/components/schemas/property.short_link_requests.software_type"
                    },
                    "hardware_type": {
                        "$ref": "#/components/schemas/property.short_link_requests.hardware_type"
                    }
                }
            },
            "schema.short_link_requests-short_link_request_read": {
                "type": "object",
                "description": "Short link campaigns",
                "readOnly": true,
                "deprecated": false,
                "properties": {
                    "id": {
                        "$ref": "#/components/schemas/property.short_link_requests.id"
                    },
                    "ip": {
                        "$ref": "#/components/schemas/property.short_link_requests.ip"
                    },
                    "user_agent": {
                        "$ref": "#/components/schemas/property.short_link_requests.user_agent"
                    },
                    "url": {
                        "$ref": "#/components/schemas/property.short_link_requests.url"
                    },
                    "date": {
                        "$ref": "#/components/schemas/property.short_link_requests.date"
                    },
                    "country": {
                        "$ref": "#/components/schemas/property.common.country_code"
                    },
                    "referer": {
                        "$ref": "#/components/schemas/property.short_link_requests.referer"
                    },
                    "short_link": {
                        "$ref": "#/components/schemas/property.short_link_requests.short_link"
                    },
                    "type": {
                        "$ref": "#/components/schemas/property.short_link_requests.type"
                    },
                    "browser": {
                        "$ref": "#/components/schemas/property.short_link_requests.browser"
                    },
                    "browser_version": {
                        "$ref": "#/components/schemas/property.short_link_requests.browser_version"
                    },
                    "os": {
                        "$ref": "#/components/schemas/property.short_link_requests.os"
                    },
                    "os_version": {
                        "$ref": "#/components/schemas/property.short_link_requests.os_version"
                    },
                    "software_type": {
                        "$ref": "#/components/schemas/property.short_link_requests.software_type"
                    },
                    "hardware_type": {
                        "$ref": "#/components/schemas/property.short_link_requests.hardware_type"
                    }
                }
            },
            "property.short_links.short_code": {
                "type": [
                    "string",
                    "null"
                ],
                "description": "Short code of the link"
            },
            "property.short_links.url": {
                "type": [
                    "string",
                    "null"
                ],
                "description": "URL of the short link"
            },
            "property.short_links.campaign": {
                "type": [
                    "string",
                    "null"
                ],
                "format": "iri-reference",
                "example": "https://example.com/",
                "description": "Campaign associated with the short link"
            },
            "property.short_links.requests": {
                "type": "string",
                "description": "Requests associated with the short link"
            },
            "schema.short_links.jsonld-short_link_read": {
                "type": "object",
                "description": "Short links",
                "readOnly": true,
                "deprecated": false,
                "properties": {
                    "@id": {
                        "$ref": "#/components/schemas/property._jsonld_id"
                    },
                    "@type": {
                        "$ref": "#/components/schemas/property._jsonld_type"
                    },
                    "@context": {
                        "$ref": "#/components/schemas/property._jsonld_context"
                    },
                    "short_code": {
                        "$ref": "#/components/schemas/property.short_links.short_code"
                    },
                    "url": {
                        "$ref": "#/components/schemas/property.short_links.url"
                    },
                    "updated_at": {
                        "$ref": "#/components/schemas/property.common.updated_at"
                    },
                    "campaign": {
                        "$ref": "#/components/schemas/property.short_links.campaign"
                    },
                    "requests": {
                        "$ref": "#/components/schemas/property.short_links.requests"
                    }
                }
            },
            "schema.short_links-short_link_read": {
                "type": "object",
                "description": "Short links",
                "readOnly": true,
                "deprecated": false,
                "properties": {
                    "short_code": {
                        "$ref": "#/components/schemas/property.short_links.short_code"
                    },
                    "url": {
                        "$ref": "#/components/schemas/property.short_links.url"
                    },
                    "updated_at": {
                        "$ref": "#/components/schemas/property.common.updated_at"
                    },
                    "campaign": {
                        "$ref": "#/components/schemas/property.short_links.campaign"
                    },
                    "requests": {
                        "$ref": "#/components/schemas/property.short_links.requests"
                    }
                }
            },
            "property.sms.text": {
                "type": "string",
                "description": "The message text can have a length of up to 1530 characters. With a Unicode SMS, the maximum character length is reduced to 670 characters. Internal encoding is UTF-8."
            },
            "property.sms.status_code": {
                "type": "integer",
                "minimum": 0,
                "enum": [
                    0,
                    100,
                    208,
                    400,
                    410,
                    2000,
                    3000,
                    5000,
                    6000
                ],
                "description": "Status of the sms. For more info see [SMS status codes](/info/sms-status-codes/)"
            },
            "property.sms.gateway_sent_at": {
                "type": "integer",
                "description": "Timestamp when message was sent to the mobile network provider"
            },
            "property.sms.dlr_code": {
                "type": "integer",
                "description": "[Status of the SMS delivery](/info/sms-delivery-report-codes-dlr/) from gateway",
                "enum": [
                    0,
                    1,
                    2,
                    4,
                    8,
                    16
                ],
                "example": 1,
                "x-enum-descriptions": {
                    "0": "NONE: No delivery report available",
                    "1": "DELIVERY_OK: Message successfully delivered",
                    "2": "DELIVERY_QUEUE: Message scheduled for later delivery",
                    "4": "DELIVERY_SUBMIT_ACK: Message is enroute",
                    "8": "DELIVERY_EXPIRED: Message expired (e.g., phone turned off)",
                    "16": "DELIVERY_REJECTED: Message rejected (blocked number or invalid)"
                }
            },
            "property.sms.parts_count": {
                "type": "integer",
                "minimum": 1,
                "description": "Count of the SMS parts (concatenated messages)"
            },
            "property.sms.chars_count": {
                "type": [
                    "integer",
                    "null"
                ],
                "description": "Count of chars in the message text"
            },
            "property.sms.bulk_id": {
                "type": [
                    "null",
                    "string"
                ],
                "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
                "description": "Bulk ID"
            },
            "property.sms.is_sent": {
                "type": "boolean",
                "description": "True - SMS was sent, False - SMS wasn't sent yet"
            },
            "property.sms.requests": {
                "type": [
                    "string",
                    "null"
                ],
                "description": "[Link](/api/operations/get_sms_requests/) to all requests by a SMS list"
            },
            "property.sms.clicks": {
                "type": [
                    "string",
                    "null"
                ],
                "description": "[Link](/api/operations/api_sms_clicks_per_message_get_collection/) to count of request by a short link"
            },
            "property.sms.attempts_count_max": {
                "type": [
                    "integer",
                    "null"
                ],
                "description": "Maximum number of delivery attempts for voice services (`text2speech`, `text2speech_ssml`). Allowed values: `null`, `1`, `2`, or `3` for `text2speech`/`text2speech_ssml` services; must be null for other services.",
                "example": null,
                "enum": [
                    null,
                    1,
                    2,
                    3
                ]
            },
            "schema.sms.jsonld-sms_read": {
                "type": "object",
                "description": "SMS",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "@id": {
                        "$ref": "#/components/schemas/property._jsonld_id"
                    },
                    "@type": {
                        "$ref": "#/components/schemas/property._jsonld_type"
                    },
                    "@context": {
                        "$ref": "#/components/schemas/property._jsonld_context"
                    },
                    "text": {
                        "$ref": "#/components/schemas/property.sms.text"
                    },
                    "sender_id": {
                        "$ref": "#/components/schemas/property.messages.sender_id"
                    },
                    "phone": {
                        "$ref": "#/components/schemas/property.common.phone_number"
                    },
                    "delivery_at": {
                        "$ref": "#/components/schemas/property.messages.delivery_at"
                    },
                    "status_code": {
                        "$ref": "#/components/schemas/property.sms.status_code"
                    },
                    "gateway_sent_at": {
                        "$ref": "#/components/schemas/property.sms.gateway_sent_at"
                    },
                    "source": {
                        "$ref": "#/components/schemas/property.messages.source"
                    },
                    "dlr_code": {
                        "$ref": "#/components/schemas/property.sms.dlr_code"
                    },
                    "ip": {
                        "$ref": "#/components/schemas/property.common.ip_read"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    },
                    "is_unicode": {
                        "$ref": "#/components/schemas/property.messages.is_unicode"
                    },
                    "uuid": {
                        "$ref": "#/components/schemas/property.common.uuid"
                    },
                    "iso2": {
                        "$ref": "#/components/schemas/property.common.country_code"
                    },
                    "voice_lang": {
                        "$ref": "#/components/schemas/property.messages.voice_lang"
                    },
                    "parts_count": {
                        "$ref": "#/components/schemas/property.sms.parts_count"
                    },
                    "chars_count": {
                        "$ref": "#/components/schemas/property.sms.chars_count"
                    },
                    "callback_data": {
                        "$ref": "#/components/schemas/property.common.callback_data"
                    },
                    "bulk_id": {
                        "$ref": "#/components/schemas/property.sms.bulk_id"
                    },
                    "key_id": {
                        "$ref": "#/components/schemas/property.common.key_id"
                    },
                    "service_code": {
                        "$ref": "#/components/schemas/property.messages.service_code"
                    },
                    "is_text_deleted": {
                        "$ref": "#/components/schemas/property.messages.is_text_deleted"
                    },
                    "price": {
                        "$ref": "#/components/schemas/property.common.price"
                    },
                    "is_sent": {
                        "$ref": "#/components/schemas/property.sms.is_sent"
                    },
                    "requests": {
                        "$ref": "#/components/schemas/property.sms.requests"
                    },
                    "clicks": {
                        "$ref": "#/components/schemas/property.sms.clicks"
                    },
                    "attempts_count_max": {
                        "$ref": "#/components/schemas/property.sms.attempts_count_max"
                    }
                }
            },
            "schema.sms-sms_read": {
                "type": "object",
                "description": "SMS",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "text": {
                        "$ref": "#/components/schemas/property.sms.text"
                    },
                    "sender_id": {
                        "$ref": "#/components/schemas/property.messages.sender_id"
                    },
                    "phone": {
                        "$ref": "#/components/schemas/property.common.phone_number"
                    },
                    "delivery_at": {
                        "$ref": "#/components/schemas/property.messages.delivery_at"
                    },
                    "status_code": {
                        "$ref": "#/components/schemas/property.sms.status_code"
                    },
                    "gateway_sent_at": {
                        "$ref": "#/components/schemas/property.sms.gateway_sent_at"
                    },
                    "source": {
                        "$ref": "#/components/schemas/property.messages.source"
                    },
                    "dlr_code": {
                        "$ref": "#/components/schemas/property.sms.dlr_code"
                    },
                    "ip": {
                        "$ref": "#/components/schemas/property.common.ip_read"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    },
                    "is_unicode": {
                        "$ref": "#/components/schemas/property.messages.is_unicode"
                    },
                    "uuid": {
                        "$ref": "#/components/schemas/property.common.uuid"
                    },
                    "iso2": {
                        "$ref": "#/components/schemas/property.common.country_code"
                    },
                    "voice_lang": {
                        "$ref": "#/components/schemas/property.messages.voice_lang"
                    },
                    "parts_count": {
                        "$ref": "#/components/schemas/property.sms.parts_count"
                    },
                    "chars_count": {
                        "$ref": "#/components/schemas/property.sms.chars_count"
                    },
                    "callback_data": {
                        "$ref": "#/components/schemas/property.common.callback_data"
                    },
                    "bulk_id": {
                        "$ref": "#/components/schemas/property.sms.bulk_id"
                    },
                    "key_id": {
                        "$ref": "#/components/schemas/property.common.key_id"
                    },
                    "service_code": {
                        "$ref": "#/components/schemas/property.messages.service_code"
                    },
                    "is_text_deleted": {
                        "$ref": "#/components/schemas/property.messages.is_text_deleted"
                    },
                    "price": {
                        "$ref": "#/components/schemas/property.common.price"
                    },
                    "is_sent": {
                        "$ref": "#/components/schemas/property.sms.is_sent"
                    },
                    "requests": {
                        "$ref": "#/components/schemas/property.sms.requests"
                    },
                    "clicks": {
                        "$ref": "#/components/schemas/property.sms.clicks"
                    },
                    "attempts_count_max": {
                        "$ref": "#/components/schemas/property.sms.attempts_count_max"
                    }
                }
            },
            "schema.sms-write": {
                "type": "object",
                "description": "SMS",
                "deprecated": false,
                "required": [
                    "sender_id",
                    "text",
                    "phone"
                ],
                "properties": {
                    "text": {
                        "$ref": "#/components/schemas/property.sms.text"
                    },
                    "sender_id": {
                        "$ref": "#/components/schemas/property.messages.sender_id"
                    },
                    "phone": {
                        "$ref": "#/components/schemas/property.common.phone_number"
                    },
                    "delivery_at": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/property.messages.delivery_at"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "source": {
                        "$ref": "#/components/schemas/property.messages.source"
                    },
                    "is_unicode": {
                        "$ref": "#/components/schemas/property.messages.is_unicode"
                    },
                    "voice_lang": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/property.messages.voice_lang"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "callback_data": {
                        "$ref": "#/components/schemas/property.common.callback_data"
                    },
                    "service_code": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/property.messages.service_code"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "is_text_deleted": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/property.messages.is_text_deleted"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    },
                    "attempts_count_max": {
                        "oneOf": [
                            {
                                "$ref": "#/components/schemas/property.sms.attempts_count_max"
                            },
                            {
                                "type": "null"
                            }
                        ]
                    }
                }
            },
            "property.sms.deleted_sms_count_cancel": {
                "description": "Count of the SMS which was canceled",
                "type": "integer",
                "minimum": 0
            },
            "schema.sms-batch-cancel-response": {
                "type": "object",
                "readOnly": true,
                "properties": {
                    "deleted_sms_count": {
                        "$ref": "#/components/schemas/property.sms.deleted_sms_count_cancel"
                    }
                }
            },
            "property.sms.deleted_sms_count_delete": {
                "description": "Count of the SMS which was deleted",
                "type": "integer",
                "minimum": 0
            },
            "schema.sms-batch-delete-response": {
                "type": "object",
                "readOnly": true,
                "properties": {
                    "deleted_sms_count": {
                        "$ref": "#/components/schemas/property.sms.deleted_sms_count_delete"
                    }
                }
            },
            "property.sms_clicks.requests_count": {
                "type": "integer",
                "description": "Number of requests for SMS clicks"
            },
            "schema.sms_clicks.jsonld-short_link_msg_read": {
                "type": "object",
                "description": "Clicks by sms",
                "readOnly": true,
                "deprecated": false,
                "properties": {
                    "@id": {
                        "$ref": "#/components/schemas/property._jsonld_id"
                    },
                    "@type": {
                        "$ref": "#/components/schemas/property._jsonld_type"
                    },
                    "@context": {
                        "$ref": "#/components/schemas/property._jsonld_context"
                    },
                    "uuid": {
                        "$ref": "#/components/schemas/property.common.uuid"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    },
                    "requests_count": {
                        "$ref": "#/components/schemas/property.sms_clicks.requests_count"
                    }
                }
            },
            "schema.sms_clicks-short_link_msg_read": {
                "type": "object",
                "description": "Clicks by sms",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "uuid": {
                        "$ref": "#/components/schemas/property.common.uuid"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    },
                    "requests_count": {
                        "$ref": "#/components/schemas/property.sms_clicks.requests_count"
                    }
                }
            },
            "property.blocked_numbers.id": {
                "type": "integer",
                "minimum": 1,
                "description": "Unique identifier"
            },
            "property.blocked_numbers.number": {
                "type": "string",
                "description": "Phone number in international format",
                "pattern": "^\\+[0-9]{4,20}$",
                "example": "+1234567890"
            },
            "property.blocked_numbers.type": {
                "type": "integer",
                "enum": [
                    1,
                    2
                ],
                "description": "Blocked number's type:\n- `1` - blocked by customer\n- `2` - unsubscribed by user"
            },
            "schema.blocked_numbers.jsonld-blocked_number_read": {
                "type": "object",
                "description": "Blocked phone number - JSON-LD read representation",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "@id": {
                        "$ref": "#/components/schemas/property._jsonld_id"
                    },
                    "@type": {
                        "$ref": "#/components/schemas/property._jsonld_type"
                    },
                    "@context": {
                        "$ref": "#/components/schemas/property._jsonld_context"
                    },
                    "id": {
                        "$ref": "#/components/schemas/property.blocked_numbers.id"
                    },
                    "number": {
                        "$ref": "#/components/schemas/property.blocked_numbers.number"
                    },
                    "type": {
                        "$ref": "#/components/schemas/property.blocked_numbers.type"
                    },
                    "added_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    }
                },
                "required": [
                    "id",
                    "number",
                    "type",
                    "added_at"
                ]
            },
            "schema.blocked_numbers-blocked_number_read": {
                "type": "object",
                "description": "Blocked phone number - read representation",
                "deprecated": false,
                "readOnly": true,
                "properties": {
                    "id": {
                        "$ref": "#/components/schemas/property.blocked_numbers.id"
                    },
                    "number": {
                        "$ref": "#/components/schemas/property.blocked_numbers.number"
                    },
                    "type": {
                        "$ref": "#/components/schemas/property.blocked_numbers.type"
                    },
                    "added_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    }
                },
                "required": [
                    "id",
                    "number",
                    "type",
                    "added_at"
                ]
            },
            "schema.blocked_numbers-blocked_number_write": {
                "type": "object",
                "description": "Blocked phone number - write representation",
                "deprecated": false,
                "writeOnly": true,
                "properties": {
                    "number": {
                        "$ref": "#/components/schemas/property.blocked_numbers.number"
                    }
                },
                "required": [
                    "number"
                ]
            },
            "property.common.api_version": {
                "type": "string",
                "description": "Version of the notification webhook data structure",
                "example": "2022-05-25"
            },
            "property.common.event_name": {
                "type": "string",
                "description": "Webhook's event name"
            },
            "property.common.attempt_total": {
                "type": "integer",
                "description": "Total number of notification webhook delivery attempts",
                "minimum": 1,
                "maximum": 4,
                "example": 4
            },
            "property.common.attempt_number": {
                "type": "integer",
                "description": "Current webhook notification attempt number",
                "minimum": 1,
                "example": 1
            },
            "webhook.event": {
                "type": "object",
                "properties": {
                    "id": {
                        "$ref": "#/components/schemas/property.common.uuid"
                    },
                    "api_version": {
                        "$ref": "#/components/schemas/property.common.api_version"
                    },
                    "name": {
                        "$ref": "#/components/schemas/property.common.event_name"
                    },
                    "created_at": {
                        "$ref": "#/components/schemas/property.common.created_at"
                    },
                    "attempt_total": {
                        "$ref": "#/components/schemas/property.common.attempt_total"
                    },
                    "attempt_number": {
                        "$ref": "#/components/schemas/property.common.attempt_number"
                    },
                    "data": {
                        "type": "object",
                        "description": "Event-specific data payload"
                    },
                    "notification_task_id": {
                        "type": "string",
                        "format": "uuid",
                        "description": "Notification task identifier (request identifier)",
                        "example": "3378de83-de66-4de8-9d29-2b10d41bb641"
                    }
                }
            },
            "schema.webhooks.sms-delivery-data": {
                "type": "object",
                "description": "Data for sms.delivery and sms.delivery.dryrun events",
                "properties": {
                    "id": {
                        "$ref": "#/components/schemas/property.common.uuid"
                    },
                    "key_id": {
                        "$ref": "#/components/schemas/property.common.key_id"
                    },
                    "dlr_code": {
                        "$ref": "#/components/schemas/property.sms.dlr_code"
                    },
                    "status_code": {
                        "$ref": "#/components/schemas/property.sms.status_code"
                    },
                    "callback_data": {
                        "$ref": "#/components/schemas/property.common.callback_data"
                    }
                }
            },
            "schema.webhooks.sms-incoming-data": {
                "type": "object",
                "description": "Data for sms.incoming events",
                "properties": {
                    "id": {
                        "$ref": "#/components/schemas/property.common.uuid"
                    },
                    "to": {
                        "$ref": "#/components/schemas/property.common.phone_number"
                    },
                    "from": {
                        "$ref": "#/components/schemas/property.common.phone_number"
                    },
                    "received_at": {
                        "$ref": "#/components/schemas/property.incomings.received_at"
                    },
                    "text": {
                        "$ref": "#/components/schemas/property.incomings.text"
                    },
                    "msg_uuid": {
                        "$ref": "#/components/schemas/property.incomings.msg_uuid"
                    }
                }
            },
            "schema.email2bulk": {
                "type": "object",
                "description": "Email object for bulk email events",
                "properties": {
                    "id": {
                        "type": "string",
                        "description": "Email identifier"
                    },
                    "from": {
                        "type": "string",
                        "format": "email",
                        "description": "Sender email address"
                    },
                    "to": {
                        "type": "string",
                        "format": "email",
                        "description": "Destination email address"
                    },
                    "subject": {
                        "type": "string",
                        "description": "Email subject line"
                    },
                    "body": {
                        "type": "string",
                        "description": "Email body content"
                    }
                }
            },
            "schema.webhooks.bulk-email-parsing-fail-data": {
                "type": "object",
                "description": "Data for bulk.email.parsing.fail events",
                "properties": {
                    "field": {
                        "type": "string",
                        "description": "Field related to the error",
                        "example": "recipient"
                    },
                    "description": {
                        "type": "string",
                        "description": "Error description",
                        "example": "Invalid phone number format"
                    },
                    "email": {
                        "$ref": "#/components/schemas/schema.email2bulk"
                    }
                }
            },
            "schema.webhooks.bulk-email-parsing-success-data": {
                "type": "object",
                "description": "Data for bulk.email.parsing.success events",
                "properties": {
                    "bulk": {
                        "type": "object",
                        "description": "SMS Bulk response object",
                        "properties": {
                            "id": {
                                "$ref": "#/components/schemas/property.common.uuid"
                            },
                            "status": {
                                "$ref": "#/components/schemas/property.bulks.status_code"
                            },
                            "created_at": {
                                "$ref": "#/components/schemas/property.common.created_at"
                            }
                        }
                    },
                    "email": {
                        "$ref": "#/components/schemas/schema.email2bulk"
                    }
                }
            },
            "schema.webhooks.fraud-check-done-data": {
                "type": "object",
                "description": "Data for fraud-check.done events",
                "additionalProperties": true
            },
            "schema.webhooks.sms-email-parsing-success-data": {
                "type": "object",
                "description": "Data for sms.email.parsing.success events",
                "properties": {
                    "sms": {
                        "type": "array",
                        "description": "Array of SMS data from parsed email",
                        "items": {
                            "type": "object",
                            "properties": {
                                "uuid": {
                                    "$ref": "#/components/schemas/property.common.uuid"
                                },
                                "to": {
                                    "$ref": "#/components/schemas/property.common.phone_number"
                                },
                                "text": {
                                    "$ref": "#/components/schemas/property.sms.text"
                                }
                            }
                        }
                    },
                    "email": {
                        "$ref": "#/components/schemas/schema.email2bulk"
                    }
                }
            },
            "schema.webhooks.sms-email-parsing-fail-data": {
                "type": "object",
                "description": "Data for sms.email.parsing.fail events",
                "properties": {
                    "field": {
                        "type": "string",
                        "description": "Field related to the error",
                        "example": "recipient"
                    },
                    "description": {
                        "type": "string",
                        "description": "Error description",
                        "example": "Invalid phone number format"
                    },
                    "email": {
                        "$ref": "#/components/schemas/schema.email2bulk"
                    }
                }
            },
            "schema.webhooks.phone-unsubscribe-data": {
                "type": "object",
                "properties": {
                    "phone": {
                        "type": "string",
                        "description": "Phone number that unsubscribed",
                        "example": "+436766304011"
                    },
                    "user_id": {
                        "type": "integer",
                        "description": "ID of the user associated with the phone number",
                        "example": 2
                    },
                    "created_at": {
                        "type": "integer",
                        "description": "Unix timestamp when the unsubscribe occurred",
                        "example": 1757849748
                    },
                    "campaign_code": {
                        "type": "string",
                        "description": "Campaign code associated with the unsubscribe",
                        "example": "3KCKb5nMD"
                    },
                    "additional_data": {
                        "type": "object",
                        "properties": {
                            "reason": {
                                "type": "object",
                                "properties": {
                                    "id": {
                                        "type": "integer",
                                        "enum": [
                                            1,
                                            2,
                                            3,
                                            4,
                                            5,
                                            6
                                        ],
                                        "description": "Reason ID for unsubscribe. Possible values:\n- 1: I never subscribed\n- 2: Too many messages\n- 3: I am not interested\n- 4: Content is incomprehensible\n- 5: I don't like your company\n- 6: Other",
                                        "example": 4
                                    },
                                    "label": {
                                        "type": "string",
                                        "description": "Human-readable reason for unsubscribe",
                                        "example": "Content is incomprehensible"
                                    }
                                },
                                "required": [
                                    "id",
                                    "label"
                                ]
                            },
                            "additional_text": {
                                "type": "string",
                                "description": "Additional text provided by the user",
                                "example": "Additional text from user input"
                            }
                        },
                        "required": [
                            "reason",
                            "additional_text"
                        ]
                    },
                    "short_link_code": {
                        "type": "string",
                        "description": "Short link code associated with the unsubscribe",
                        "example": "baaIou"
                    },
                    "unsubscribe_request_id": {
                        "type": "integer",
                        "description": "ID of the unsubscribe request",
                        "example": 59
                    },
                    "group_id": {
                        "type": "integer",
                        "description": "ID of the group associated with the phone unsubscribe",
                        "example": 123
                    }
                },
                "required": [
                    "phone",
                    "user_id",
                    "created_at",
                    "campaign_code",
                    "additional_data",
                    "short_link_code",
                    "unsubscribe_request_id"
                ]
            },
            "schema.webhooks.phone-subscribe-data": {
                "type": "object",
                "properties": {
                    "phone": {
                        "type": "string",
                        "description": "Phone number that subscribed",
                        "example": "+99559122567"
                    },
                    "user_id": {
                        "type": "integer",
                        "description": "ID of the user associated with the phone number",
                        "example": 21911
                    },
                    "created_at": {
                        "type": "integer",
                        "description": "Unix timestamp when the subscribe occurred",
                        "example": 1757926648
                    },
                    "campaign_code": {
                        "type": "string",
                        "description": "Campaign code associated with the subscribe",
                        "example": "1dkGdCC2xnBc"
                    },
                    "additional_data": {
                        "type": "array",
                        "description": "Additional data related to the subscribe event",
                        "items": [],
                        "example": []
                    },
                    "short_link_code": {
                        "type": "string",
                        "description": "Short link code associated with the subscribe",
                        "example": "baaIoP"
                    },
                    "group_id": {
                        "type": "integer",
                        "description": "ID of the group associated with the phone subscribe",
                        "example": 123
                    }
                },
                "required": [
                    "phone",
                    "user_id",
                    "created_at",
                    "campaign_code",
                    "additional_data",
                    "short_link_code",
                    "group_id"
                ]
            },
            "webhooks.phone-unsubscribe-data": {
                "properties": {
                    "phone": {
                        "description": "Phone number that unsubscribed"
                    },
                    "user_id": {
                        "description": "ID of the user associated with the phone number"
                    },
                    "timestamp": {
                        "description": "Unix timestamp when the unsubscribe occurred"
                    },
                    "campaign_code": {
                        "description": "Campaign code associated with the unsubscribe"
                    },
                    "additional_data": {
                        "properties": {
                            "reason": {
                                "properties": {
                                    "id": {
                                        "description": "Reason ID for unsubscribe. Possible values:\n- 1: I never subscribed\n- 2: Too many messages\n- 3: I am not interested\n- 4: Content is incomprehensible\n- 5: I don't like your company\n- 6: Other"
                                    },
                                    "label": {
                                        "description": "Human-readable reason for unsubscribe"
                                    }
                                }
                            },
                            "additional_text": {
                                "description": "Additional text provided by the user"
                            }
                        }
                    },
                    "short_link_code": {
                        "description": "Short link code associated with the unsubscribe"
                    },
                    "unsubscribe_request_id": {
                        "description": "ID of the unsubscribe request"
                    },
                    "group_id": {
                        "description": "ID of the group associated with the phone unsubscribe"
                    }
                }
            },
            "webhooks.phone-subscribe-data": {
                "properties": {
                    "phone": {
                        "description": "Phone number that subscribed"
                    },
                    "user_id": {
                        "description": "ID of the user associated with the phone number"
                    },
                    "timestamp": {
                        "description": "Unix timestamp when the subscribe occurred"
                    },
                    "campaign_code": {
                        "description": "Campaign code associated with the subscribe"
                    },
                    "additional_data": {
                        "description": "Additional data related to the subscribe event"
                    },
                    "short_link_code": {
                        "description": "Short link code associated with the subscribe"
                    },
                    "group_id": {
                        "description": "ID of the group associated with the phone subscribe"
                    }
                }
            }
        },
        "responses": {
            "401-unauthorized": {
                "description": "Client ID or API key isn't active or invalid!"
            },
            "403-forbidden": {
                "description": "Account isn't activated. Please wait or contact to support!"
            },
            "429-too-many-requests": {
                "description": "IP address was temporary blocked, because during short time from it was sent many request with invalid credentials. Please wait and try later."
            },
            "400-bad-request": {
                "description": "Invalid input"
            },
            "422-unprocessable-entity": {
                "description": "The request was well-formed but was unable to be followed due to semantic errors"
            },
            "404-not-found": {
                "description": "Resource not found"
            },
            "204-deleted": {
                "description": "The entity has been deleted"
            },
            "402-not-enough-funds": {
                "description": "There are not enough funds on your account!"
            },
            "409-conflict": {
                "description": "Conflict - Entity already exists"
            },
            "webhook-200": {
                "description": "Webhook received"
            },
            "webhook-400": {
                "description": "Invalid webhook request's body structure"
            },
            "webhook-401": {
                "description": "Webhook request unauthorized"
            },
            "webhook-403": {
                "description": "Webhook access forbidden"
            },
            "webhook-404": {
                "description": "Webhook access forbidden"
            },
            "webhook-500": {
                "description": "Server error"
            }
        },
        "examples": {
            "example_sms_request_minimal": {
                "summary": "Basic SMS message",
                "description": "Example of a simple SMS message with required fields only",
                "value": {
                    "text": "Hello! This is a test SMS message.",
                    "sender_id": "+491701234567",
                    "phone": "+14155552671"
                }
            },
            "example_sms_request_text2speech": {
                "summary": "Voice message with plain text",
                "description": "Example of text-to-speech voice message with plain text content",
                "value": {
                    "text": "Hello, this message will be converted to speech and delivered as a voice call.",
                    "sender_id": "+491701234567",
                    "phone": "+14155552671",
                    "service_code": "text2speech",
                    "voice_lang": "EN"
                }
            },
            "example_sms_request_text2speech_ssml": {
                "summary": "Voice message with SSML",
                "description": "Example of text-to-speech with SSML markup for enhanced voice synthesis",
                "value": {
                    "text": "<speak>Your verification code is <say-as interpret-as=\"characters\">A1B2C3</say-as>.<break time=\"1s\"/>Please enter it now.</speak>",
                    "sender_id": "+491701234567",
                    "phone": "+14155552671",
                    "service_code": "text2speech",
                    "voice_lang": "EN"
                }
            },
            "example_sms_request_text2speech_single_call": {
                "summary": "Voice message with single call (no retries)",
                "description": "Example of text-to-speech voice message with plain text content and single delivery attempt without retries",
                "value": {
                    "text": "Hello, this message will be converted to speech and delivered as a voice call.",
                    "sender_id": "+491701234567",
                    "phone": "+14155552671",
                    "service_code": "text2speech",
                    "voice_lang": "EN",
                    "attempts_count_max": 1
                }
            },
            "example_sms_request_unicode": {
                "summary": "Unicode SMS message",
                "description": "Example of SMS with Unicode characters (emoji, special characters, non-Latin scripts)",
                "value": {
                    "text": "\\ud83c\\udf89 Welcome! \u00a1Bienvenidos! \\u6b22\\u8fce\\u5149\\u4e34! \\u0645\\u0631\\u062d\\u0628\\u0627 \\u0628\\u0643\\u0645!",
                    "sender_id": "+491701234567",
                    "phone": "+14155552671",
                    "is_unicode": true
                }
            },
            "example_sms_request_translit": {
                "summary": "Transliterated message",
                "description": "Example of a message with transliteration of non-GSM characters to a pure GSM SMS (see response example)",
                "value": {
                    "text": "Not all special characters are included in the GSM character set, e.g. only the correct apostrophe: Anna's car works, but not Max\u00b4s house. Some accents work: Andr\u00e9, but not all: H\u00e1ns. Normal hyphens - work, but not longer ones: \u2013",
                    "sender_id": "Test",
                    "phone": "+14155552671",
                    "is_unicode": false
                }
            },
            "example_sms_request_delete_text": {
                "summary": "Message with text deletion",
                "description": "Example of SMS where the message text will be deleted after delivery for security/privacy",
                "value": {
                    "text": "Your verification code is: 123456. This message will be deleted after delivery.",
                    "sender_id": "+491701234567",
                    "phone": "+14155552671",
                    "is_text_deleted": true
                }
            },
            "example_sms_request_callback": {
                "summary": "SMS with callback data",
                "description": "Example of SMS with callback data for delivery status notifications and custom tracking",
                "value": {
                    "text": "Your order #12345 has been shipped and is on the way!",
                    "sender_id": "+491701234567",
                    "phone": "+14155552671",
                    "callback_data": "order_12345_shipping_notification"
                }
            },
            "example_sms_response_basic_sms_jsonld": {
                "summary": "Basic sms Message response",
                "description": "API response for a successfully request with minimum parameters",
                "value": {
                    "@context": "/contexts/sms",
                    "@id": "/sms/11111111-2222-3333-4444-555555555555",
                    "@type": "sms",
                    "text": "Hello! This is a test SMS message.",
                    "sender_id": "+19388888025",
                    "phone": "+14155552671",
                    "delivery_at": 0,
                    "status_code": 0,
                    "gateway_sent_at": 0,
                    "source": 0,
                    "dlr_code": 0,
                    "ip": "139.59.136.251",
                    "created_at": 1755868416,
                    "is_unicode": false,
                    "uuid": "11111111-2222-3333-4444-555555555555",
                    "iso2": "US",
                    "voice_lang": null,
                    "parts_count": 1,
                    "chars_count": 34,
                    "callback_data": null,
                    "bulk_id": null,
                    "key_id": 8291,
                    "service_code": "direct",
                    "is_text_deleted": false,
                    "price": 0.056,
                    "is_sent": false,
                    "requests": "/sms/11111111-2222-3333-4444-555555555555/requests",
                    "clicks": "/sms/11111111-2222-3333-4444-555555555555/clicks"
                }
            },
            "example_sms_response_translit_jsonld": {
                "summary": "Transliterated message response",
                "description": "API response for a successfully sent transliterated SMS message",
                "value": {
                    "@context": "/contexts/sms",
                    "@id": "/sms/11111111-2222-3333-4444-555555555555",
                    "@type": "sms",
                    "text": "Nicht alle Sonderzeichen sind im GSM Zeichensatz enthalten, z.B. nur das richtige Apostroph: Anna's Auto geht, aber nicht Max's Haus. Akzente gehen teilweise: Andr\u00e9, jedoch nicht alle: Hans. Normale Bindestriche - gehen, nicht allerdings l\u00e4ngere: -",
                    "sender_id": "Test",
                    "phone": "+491701234567",
                    "delivery_at": 0,
                    "status_code": 100,
                    "gateway_sent_at": 1755780931,
                    "source": 0,
                    "dlr_code": 16,
                    "ip": "1.1.1.1",
                    "created_at": 1755780931,
                    "is_unicode": false,
                    "uuid": "11111111-2222-3333-4444-555555555555",
                    "iso2": "DE",
                    "voice_lang": "DE",
                    "parts_count": 2,
                    "chars_count": 248,
                    "callback_data": null,
                    "bulk_id": null,
                    "key_id": 200100,
                    "service_code": "direct",
                    "is_text_deleted": false,
                    "price": 0.13,
                    "is_sent": true,
                    "requests": "/sms/11111111-2222-3333-4444-555555555555/requests",
                    "clicks": "/sms/11111111-2222-3333-4444-555555555555/clicks"
                }
            },
            "example_sms_response_delete_text_jsonld": {
                "summary": "Message with text deletion response",
                "description": "API response for a successfully sent SMS with text deletion enabled",
                "value": {
                    "@context": "/contexts/sms",
                    "@id": "/sms/11111111-2222-3333-4444-555555555555",
                    "@type": "sms",
                    "text": "",
                    "sender_id": "USSender",
                    "phone": "+14155552671",
                    "delivery_at": 0,
                    "status_code": 100,
                    "gateway_sent_at": 1755783151,
                    "source": 0,
                    "dlr_code": 0,
                    "ip": "139.59.136.251",
                    "created_at": 1755783151,
                    "is_unicode": false,
                    "uuid": "11111111-2222-3333-4444-555555555555",
                    "iso2": "US",
                    "voice_lang": null,
                    "parts_count": 1,
                    "chars_count": 79,
                    "callback_data": null,
                    "bulk_id": null,
                    "key_id": 8207,
                    "service_code": "direct",
                    "is_text_deleted": true,
                    "price": 0.07,
                    "is_sent": true,
                    "requests": "/sms/11111111-2222-3333-4444-555555555555/requests",
                    "clicks": "/sms/11111111-2222-3333-4444-555555555555/clicks"
                }
            },
            "example_sms_response_basic_sms": {
                "summary": "Basic sms Message response",
                "description": "API response for a successfully request with minimum parameters",
                "value": {
                    "text": "Hello! This is a test SMS message.",
                    "sender_id": "+19388888025",
                    "phone": "+14155552671",
                    "delivery_at": 0,
                    "status_code": 0,
                    "gateway_sent_at": 0,
                    "source": 0,
                    "dlr_code": 0,
                    "ip": "139.59.136.251",
                    "created_at": 1755868416,
                    "is_unicode": false,
                    "uuid": "11111111-2222-3333-4444-555555555555",
                    "iso2": "US",
                    "voice_lang": null,
                    "parts_count": 1,
                    "chars_count": 34,
                    "callback_data": null,
                    "bulk_id": null,
                    "key_id": 8291,
                    "service_code": "direct",
                    "is_text_deleted": false,
                    "price": 0.056,
                    "is_sent": false,
                    "requests": "/sms/11111111-2222-3333-4444-555555555555/requests",
                    "clicks": "/sms/11111111-2222-3333-4444-555555555555/clicks"
                }
            },
            "example_sms_response_translit": {
                "summary": "Transliterated message response",
                "description": "API response for a successfully sent transliterated SMS message",
                "value": {
                    "text": "Nicht alle Sonderzeichen sind im GSM Zeichensatz enthalten, z.B. nur das richtige Apostroph: Anna's Auto geht, aber nicht Max's Haus. Akzente gehen teilweise: Andr\u00e9, jedoch nicht alle: Hans. Normale Bindestriche - gehen, nicht allerdings l\u00e4ngere: -",
                    "sender_id": "Test",
                    "phone": "+491701234567",
                    "delivery_at": 0,
                    "status_code": 100,
                    "gateway_sent_at": 1755780931,
                    "source": 0,
                    "dlr_code": 16,
                    "ip": "1.1.1.1",
                    "created_at": 1755780931,
                    "is_unicode": false,
                    "uuid": "11111111-2222-3333-4444-555555555555",
                    "iso2": "DE",
                    "voice_lang": "DE",
                    "parts_count": 2,
                    "chars_count": 248,
                    "callback_data": null,
                    "bulk_id": null,
                    "key_id": 200100,
                    "service_code": "direct",
                    "is_text_deleted": false,
                    "price": 0.13,
                    "is_sent": true,
                    "requests": "/sms/11111111-2222-3333-4444-555555555555/requests",
                    "clicks": "/sms/11111111-2222-3333-4444-555555555555/clicks"
                },
                "values": {
                    "text": "Not all special characters are included in the GSM character set, e.g. only the correct apostrophe: Anna's car works, but not Max's house. Some accents work: Andr\u00e9, but not all: Hans. Normal hyphens - work, but not longer ones: -"
                }
            },
            "example_sms_response_delete_text": {
                "summary": "Message with text deletion response",
                "description": "API response for a successfully sent SMS with text deletion enabled",
                "value": {
                    "text": "",
                    "sender_id": "USSender",
                    "phone": "+14155552671",
                    "delivery_at": 0,
                    "status_code": 100,
                    "gateway_sent_at": 1755783151,
                    "source": 0,
                    "dlr_code": 0,
                    "ip": "139.59.136.251",
                    "created_at": 1755783151,
                    "is_unicode": false,
                    "uuid": "11111111-2222-3333-4444-555555555555",
                    "iso2": "US",
                    "voice_lang": null,
                    "parts_count": 1,
                    "chars_count": 79,
                    "callback_data": null,
                    "bulk_id": null,
                    "key_id": 8207,
                    "service_code": "direct",
                    "is_text_deleted": true,
                    "price": 0.07,
                    "is_sent": true,
                    "requests": "/sms/11111111-2222-3333-4444-555555555555/requests",
                    "clicks": "/sms/11111111-2222-3333-4444-555555555555/clicks"
                }
            },
            "webhooks.examples.sms-delivery-event": {
                "summary": "SMS Delivery Event",
                "description": "Event sent when SMS delivery status changes",
                "value": {
                    "id": "a3cd6e19-8af2-498d-ad07-c7840f1b4ac8",
                    "api_version": "2022-05-25",
                    "name": "sms.delivery",
                    "created_at": 1653378603,
                    "attempt_total": 4,
                    "attempt_number": 1,
                    "data": {
                        "id": "d6c12ac4-cc7d-11ec-b6da-525400bbb7dc",
                        "key_id": 8207,
                        "dlr_code": 1,
                        "status_code": 100,
                        "callback_data": "some data from user's request here"
                    },
                    "notification_task_id": "3378de83-de66-4de8-9d29-2b10d41bb641"
                }
            },
            "webhooks.examples.sms-delivery-event-expired": {
                "summary": "SMS Delivery Expired Event",
                "description": "Event sent when SMS delivery expires",
                "value": {
                    "id": "a3cd6e19-8af2-498d-ad07-c7840f1b4ac8",
                    "api_version": "2022-05-25",
                    "name": "sms.delivery",
                    "created_at": 1653378603,
                    "attempt_total": 4,
                    "attempt_number": 1,
                    "data": {
                        "id": "d6c12ac4-cc7d-11ec-b6da-525400bbb7dc",
                        "key_id": 8207,
                        "dlr_code": 8,
                        "status_code": 100,
                        "callback_data": "order-12345"
                    },
                    "notification_task_id": "3378de83-de66-4de8-9d29-2b10d41bb641"
                }
            },
            "webhooks.examples.sms-incoming-event": {
                "summary": "SMS Incoming Event",
                "description": "Event sent when an incoming SMS is received",
                "value": {
                    "id": "d6ff9b42-1da5-711f-df20-f0173a4e7df1",
                    "api_version": "2022-05-25",
                    "name": "sms.incoming",
                    "created_at": 1653378703,
                    "attempt_total": 1,
                    "attempt_number": 1,
                    "data": {
                        "id": "e7d23bd5-dd8e-22fd-c7eb-636511ccc8ed",
                        "to": "+1234567890",
                        "from": "+490987654321",
                        "text": "Hello, this is a reply message",
                        "received_at": 1653378703,
                        "msg_uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
                    },
                    "notification_task_id": "4489ef94-ef77-5ef9-ae2a-3c21e52cc752"
                }
            },
            "webhooks.examples.bulk-email-parsing-fail-event": {
                "summary": "Bulk Email Parsing Fail Event",
                "description": "Event sent when bulk email parsing fails",
                "value": {
                    "id": "d6ff9b42-1da5-711f-df20-f0173a4e7df1",
                    "api_version": "2022-05-25",
                    "name": "bulk.email.parsing.fail",
                    "created_at": 1653378903,
                    "attempt_total": 1,
                    "attempt_number": 1,
                    "data": {
                        "field": "to",
                        "description": "Invalid phone number format",
                        "email": {
                            "id": "email-124",
                            "from": "sender@example.com",
                            "to": "bulk@your-domain.com",
                            "subject": "SMS Bulk Request",
                            "body": "Invalid message content"
                        }
                    },
                    "notification_task_id": "6601ab16-ca99-7fe1-cf4c-5e43f74ee974"
                }
            },
            "webhooks.examples.bulk-email-parsing-success-event": {
                "summary": "Bulk Email Parsing Success Event",
                "description": "Event sent when bulk email is successfully parsed",
                "value": {
                    "id": "d6ff9b42-1da5-711f-df20-f0173a4e7df1",
                    "api_version": "2022-05-25",
                    "name": "bulk.email.parsing.success",
                    "created_at": 1653378803,
                    "attempt_total": 1,
                    "attempt_number": 1,
                    "data": {
                        "bulk": {
                            "id": "f8a34ce6-ee9f-33ae-d8fc-747622ddd9fe",
                            "status": 10,
                            "created_at": 1653378803
                        },
                        "email": {
                            "id": "email-123",
                            "from": "sender@example.com",
                            "to": "bulk@your-domain.com",
                            "subject": "SMS Bulk Request",
                            "body": "Message content here"
                        }
                    },
                    "notification_task_id": "5590fa05-fb88-6fc0-bf3b-4d32f63dd863"
                }
            },
            "webhooks.examples.fraud-check-done-event": {
                "summary": "Fraud Check Done Event",
                "description": "Event sent when fraud detection check is completed",
                "value": {
                    "id": "a7bc0d53-2ab6-822c-df31-a1284b5f8ea2",
                    "api_version": "2022-05-25",
                    "name": "fraud-check.done",
                    "created_at": 1653379003,
                    "attempt_total": 1,
                    "attempt_number": 1,
                    "data": {
                        "check_id": "fraud-check-123",
                        "result": "clean",
                        "confidence_score": 0.95
                    },
                    "notification_task_id": "7712ab27-cd00-8ef2-da5d-6f54f85ff085"
                }
            },
            "webhooks.examples.sms-email-parsing-success-event": {
                "summary": "SMS Email Parsing Success Event",
                "description": "Event sent when email to SMS parsing is successful",
                "value": {
                    "id": "d6ff9b42-1da5-711f-df20-f0173a4e7df1",
                    "api_version": "2022-05-25",
                    "name": "sms.email.parsing.success",
                    "created_at": 1653378803,
                    "attempt_total": 1,
                    "attempt_number": 1,
                    "data": {
                        "sms": [
                            {
                                "uuid": "f8a34ce6-ee9f-33ae-d8fc-747622ddd9fe",
                                "to": "+4915123456789",
                                "text": "Hello, this is your SMS message content parsed from email."
                            }
                        ],
                        "email": {
                            "id": "email-456",
                            "from": "sender@example.com",
                            "to": "sms@your-domain.com",
                            "subject": "SMS Request",
                            "body": "Send SMS to +4915123456789: Hello, this is your SMS message content parsed from email."
                        }
                    },
                    "notification_task_id": "5590fa05-fb88-6fc0-bf3b-4d32f63dd863"
                }
            },
            "webhooks.examples.sms-email-parsing-fail-event": {
                "summary": "SMS Email Parsing Fail Event",
                "description": "Event sent when email to SMS parsing fails",
                "value": {
                    "id": "a3cd6e19-8af2-498d-ad07-c7840f1b4ac8",
                    "api_version": "2022-05-25",
                    "name": "sms.email.parsing.fail",
                    "created_at": 1653378603,
                    "attempt_total": 1,
                    "attempt_number": 1,
                    "data": {
                        "field": "recipient",
                        "description": "Invalid phone number format",
                        "email": {
                            "id": "email-789",
                            "from": "sender@example.com",
                            "to": "sms@your-domain.com",
                            "subject": "SMS Request",
                            "body": "Send SMS to invalid-phone: Test message"
                        }
                    },
                    "notification_task_id": "3378de83-de66-4de8-9d29-2b10d41bb641"
                }
            },
            "example_sms_request_basic_sms": {
                "summary": "Basic sms Message response",
                "description": "API response for a successfully request with minimum parameters",
                "value": {
                    "text": "Hello! This is a test SMS message."
                }
            }
        }
    },
    "x-doc-version": "2.24 (20251210)",
    "x-tagGroups": [
        {
            "name": "user-info",
            "x-displayName": "User info",
            "tags": [
                "user"
            ]
        },
        {
            "name": "messages",
            "x-displayName": "Messages",
            "tags": [
                "sms",
                "bulks",
                "incomings",
                "blocked-numbers"
            ]
        },
        {
            "name": "phone-groups",
            "x-displayName": "Phones numbers and groups",
            "tags": [
                "groups",
                "phones"
            ]
        },
        {
            "name": "shortlinks",
            "x-displayName": "Short links",
            "tags": [
                "send-link",
                "campaigns",
                "links",
                "requests",
                "click-rate"
            ]
        },
        {
            "name": "fraud-checks",
            "x-displayName": "Fraud checks",
            "tags": [
                "fraud-detection"
            ]
        },
        {
            "name": "misc",
            "x-displayName": "Misc",
            "tags": [
                "collection-filters",
                "sms-status-codes",
                "sms-delivery-report-codes-dlr",
                "encoding-and-number-of-characters",
                "inbound-and-reply-sms",
                "kannel",
                "ssml-language-detection",
                "email-to-sms",
                "notifications",
                "release-notes"
            ]
        }
    ]
}