0

I want to use the Zammad API: https://github.com/zammad/zammad-api-client-php

The target is to read the Tickets.

The following PHP Version is used: 8.0.1 (MAMP Windows)

But as a Result I just get an certification-error in the file "php_error.log".

 #18 {main}
      thrown in C:\MAMP\htdocs\zammad-php\vendor\guzzlehttp\guzzle\src\Handler\CurlFactory.php on line 211
    [19-Sep-2022 11:48:45 UTC] PHP Fatal error:  Uncaught GuzzleHttp\Exception\RequestException: cURL error 60: SSL certificate problem: unable to get local issuer certificate (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) for https://zammad.spektrumserver.de/api/v1/tickets/34?expand=1 in C:\MAMP\htdocs\zammad-php\vendor\guzzlehttp\guzzle\src\Handler\CurlFactory.php:211
    Stack trace:
    #0 C:\MAMP\htdocs\zammad-php\vendor\guzzlehttp\guzzle\src\Handler\CurlFactory.php(158): GuzzleHttp\Handler\CurlFactory::createRejection(Object(GuzzleHttp\Handler\EasyHandle), Array)
    #1 C:\MAMP\htdocs\zammad-php\vendor\guzzlehttp\guzzle\src\Handler\CurlFactory.php(110): GuzzleHttp\Handler\CurlFactory::finishError(Object(GuzzleHttp\Handler\CurlHandler), Object(GuzzleHttp\Handler\EasyHandle), Object(GuzzleHttp\Handler\CurlFactory))
    #2 C:\MAMP\htdocs\zammad-php\vendor\guzzlehttp\guzzle\src\Handler\CurlHandler.php(47): GuzzleHttp\Handler\CurlFactory::finish(Object(GuzzleHttp\Handler\CurlHandler), Object(GuzzleHttp\Handler\EasyHandle), Object(GuzzleHttp\Handler\CurlFactory))
    #3 C:\MAMP\htdocs\zammad-php\vendor\guzzlehttp\guzzle\src\Handler\Proxy.php(28): GuzzleHttp\Handler\CurlHandler->__invoke(Object(GuzzleHttp\Psr7\Request), Array)
    #4 C:\MAMP\htdocs\zammad-php\vendor\guzzlehttp\guzzle\src\Handler\Proxy.php(48): GuzzleHttp\Handler\Proxy::GuzzleHttp\Handler\{closure}(Object(GuzzleHttp\Psr7\Request), Array)
    #5 C:\MAMP\htdocs\zammad-php\vendor\guzzlehttp\guzzle\src\PrepareBodyMiddleware.php(35): GuzzleHttp\Handler\Proxy::GuzzleHttp\Handler\{closure}(Object(GuzzleHttp\Psr7\Request), Array)
    #6 C:\MAMP\htdocs\zammad-php\vendor\guzzlehttp\guzzle\src\Middleware.php(31): GuzzleHttp\PrepareBodyMiddleware->__invoke(Object(GuzzleHttp\Psr7\Request), Array)
    #7 C:\MAMP\htdocs\zammad-php\vendor\guzzlehttp\guzzle\src\RedirectMiddleware.php(71): GuzzleHttp\Middleware::GuzzleHttp\{closure}(Object(GuzzleHttp\Psr7\Request), Array)
    #8 C:\MAMP\htdocs\zammad-php\vendor\guzzlehttp\guzzle\src\Middleware.php(63): GuzzleHttp\RedirectMiddleware->__invoke(Object(GuzzleHttp\Psr7\Request), Array)
    #9 C:\MAMP\htdocs\zammad-php\vendor\guzzlehttp\guzzle\src\HandlerStack.php(75): GuzzleHttp\Middleware::GuzzleHttp\{closure}(Object(GuzzleHttp\Psr7\Request), Array)
    #10 C:\MAMP\htdocs\zammad-php\vendor\guzzlehttp\guzzle\src\Client.php(331): GuzzleHttp\HandlerStack->__invoke(Object(GuzzleHttp\Psr7\Request), Array)
    #11 C:\MAMP\htdocs\zammad-php\vendor\guzzlehttp\guzzle\src\Client.php(168): GuzzleHttp\Client->transfer(Object(GuzzleHttp\Psr7\Request), Array)
    #12 C:\MAMP\htdocs\zammad-php\vendor\guzzlehttp\guzzle\src\Client.php(187): GuzzleHttp\Client->requestAsync('GET', Object(GuzzleHttp\Psr7\Uri), Array)
    #13 C:\MAMP\htdocs\zammad-php\vendor\zammad\zammad-api-client-php\src\HTTPClient.php(181): GuzzleHttp\Client->request('GET', 'tickets/34', Array)
    #14 C:\MAMP\htdocs\zammad-php\vendor\zammad\zammad-api-client-php\src\Client.php(79): ZammadAPIClient\HTTPClient->request('GET', 'tickets/34', Array)
    #15 C:\MAMP\htdocs\zammad-php\vendor\zammad\zammad-api-client-php\src\Client.php(110): ZammadAPIClient\Client->request('GET', 'tickets/34', Array)
    #16 C:\MAMP\htdocs\zammad-php\vendor\zammad\zammad-api-client-php\src\Resource\AbstractResource.php(264): ZammadAPIClient\Client->get('tickets/34', Array)
    #17 C:\MAMP\htdocs\zammad-php\index.php(27): ZammadAPIClient\Resource\AbstractResource->get(34)
    #18 {main}
      thrown in C:\MAMP\htdocs\zammad-php\vendor\guzzlehttp\guzzle\src\Handler\CurlFactory.php on line 211

index.php

<?php  
use ZammadAPIClient\Client;
use ZammadAPIClient\ResourceType;

require __DIR__ . '\vendor\autoload.php';

$zammad_api_client_config = [
    'url' => 'https://zammad.myzammad.de',

    // with username and password
    'username' => 'test@test.de',
    'password' => "password",
];
$client = new Client($zammad_api_client_config);
//print_r($client);
$ticket = $client->resource( ZammadAPIClient\ResourceType::TICKET )->get(34);


?>

What is going wrong here?

CodeDude
  • 3
  • 3

0 Answers0