original_string: public function requestCurl($url, $method = 'GET', $data = [])
      {
          $data_string = json_encode($data);
  
          $ch = curl_init($url);
          curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method);
          curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
          curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
          curl_setopt($ch, CURLOPT_HTTPHEADER, array(
                  'Content-Type: application/json',
                  'Authorization: Bearer ' . $this->token)
          );
  
          $result = curl_exec($ch);
          $httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
          $result = json_decode($result);
  
          $result = array_merge((array)$result, ["status_code" => $httpcode]);
  
          if ($httpcode == 401 || $httpcode == 403) {
              throw new UnauthorizedException("Unauthorized");
          } elseif ($httpcode > 403) {
              throw new \Exception("Status_code: " . $httpcode);
          }
  
          return $result;
      }
code: public function requestCurl($url, $method = 'GET', $data = [])
      {
          $data_string = json_encode($data);
  
          $ch = curl_init($url);
          curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method);
          curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
          curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
          curl_setopt($ch, CURLOPT_HTTPHEADER, array(
                  'Content-Type: application/json',
                  'Authorization: Bearer ' . $this->token)
          );
  
          $result = curl_exec($ch);
          $httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
          $result = json_decode($result);
  
          $result = array_merge((array)$result, ["status_code" => $httpcode]);
  
          if ($httpcode == 401 || $httpcode == 403) {
              throw new UnauthorizedException("Unauthorized");
          } elseif ($httpcode > 403) {
              throw new \Exception("Status_code: " . $httpcode);
          }
  
          return $result;
      }
code_tokens: public function requestCurl ( $ url , $ method = 'GET' , $ data = [ ] ) { $ data_string = json_encode ( $ data ) ; $ ch = curl_init ( $ url ) ; curl_setopt ( $ ch , CURLOPT_CUSTOMREQUEST , $ method ) ; curl_setopt ( $ ch , CURLOPT_POSTFIELDS , $ data_string ) ; curl_setopt ( $ ch , CURLOPT_RETURNTRANSFER , true ) ; curl_setopt ( $ ch , CURLOPT_HTTPHEADER , array ( 'Content-Type: application/json' , 'Authorization: Bearer ' . $ this -> token ) ) ; $ result = curl_exec ( $ ch ) ; $ httpcode = curl_getinfo ( $ ch , CURLINFO_HTTP_CODE ) ; $ result = json_decode ( $ result ) ; $ result = array_merge ( ( array ) $ result , [ "status_code" => $ httpcode ] ) ; if ( $ httpcode == 401 || $ httpcode == 403 ) { throw new UnauthorizedException ( "Unauthorized" ) ; } elseif ( $ httpcode > 403 ) { throw new \ Exception ( "Status_code: " . $ httpcode ) ; } return $ result ; }
docstring: Curl request - instead of Guzzle
  @param $url
  @param string $method
  @param array $data
  @return array|mixed
  @throws UnauthorizedException
  @throws \Exception
docstring_tokens: Curl request - instead of Guzzle