quizerra/php-sdk

Official PHP SDK for the Quizerra Partner API.

Maintainers

Package info

github.com/quizerra/php-sdk

pkg:composer/quizerra/php-sdk

Statistics

Installs: 0

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v0.1.0 2026-06-19 11:37 UTC

This package is not auto-updated.

Last update: 2026-06-20 10:16:29 UTC


README

Official PHP SDK for the Quizerra Partner API.

Quizerra PHP SDK provides typed, server-side access to the Quizerra Partner API. It includes request and response DTOs, endpoint clients, and flow helpers for International IQ testing and partner payments.

The package is built on PHP-FIG HTTP standards, so engineering teams can use it with their existing Symfony, Laravel, or custom PHP infrastructure without exposing Quizerra API credentials to the browser.

API Access

Partner API credentials are issued by Quizerra. To request access, submit an application at quizerra.com/partners.

Installation

composer require quizerra/php-sdk

For local development before the package is published:

{
  "repositories": [
    {
      "type": "path",
      "url": "../quizerra-php-sdk"
    }
  ],
  "require": {
    "quizerra/php-sdk": "0.1.x-dev"
  }
}

Quick Start

<?php

use Quizerra\PhpSdk\Client\Configuration;
use Quizerra\PhpSdk\Client\QuizerraClient;
use Quizerra\PhpSdk\Dto\Request\GenerateInternationalIqAttemptRequest;
use Quizerra\PhpSdk\Dto\Request\SubmitAnswerRequest;
use Quizerra\PhpSdk\Dto\Request\SubmitInternationalIqAnswersRequest;

$client = new QuizerraClient(new Configuration(
    baseUri: 'https://quizerra.com',
    apiToken: 'partner-api-token',
));

$attempt = $client->internationalIq()->generateAttempt(
    new GenerateInternationalIqAttemptRequest(countryCode: 'US', partnerReference: 'user-123'),
    idempotencyKey: 'generate-user-123-1',
);

$answers = SubmitInternationalIqAnswersRequest::fromAnswers([
    new SubmitAnswerRequest(questionId: $attempt->questions[0]->id, answerId: $attempt->questions[0]->answers[0]->id, time: 18),
], email: 'customer@example.com');

$submission = $client->internationalIq()->submitAnswers($attempt->resultId, $answers, 'answers-user-123-1');

if ($submission->isComplete) {
    $result = $client->internationalIq()->calculate($attempt->resultId);
}

Documentation

Quality Gates

composer install
composer test
composer analyse