# Credential Verification

> Validate Verifiable Credentials using Verification Service.

## Install Dependency

Package: affinidi-tdk/affinidi-tdk-php

```bash
composer require affinidi-tdk/affinidi-tdk-php
```

Check the latest version on the [Packagist repository](https://packagist.org/packages/affinidi-tdk/affinidi-tdk-php) or view the source on [GitHub](https://github.com/affinidi/affinidi-tdk-php/tree/main/src/Clients/CredentialVerificationClient).

## Classes and Methods

### Default API

Verify Verifiable Credentials and Verifiable Presentations.

#### verifyCredentials

Validates Verifiable Credentials.

Parameters

    verifyCredentialInput
    VerifyCredentialInput
    Required
  List of Verifiable Credentials to validate.

Example

```php
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\CredentialVerificationClient;

$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
$config = CredentialVerificationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new CredentialVerificationClient\Api\DefaultApi(new GuzzleHttp\Client(), $config);

try {
    $request = [
        'verifiableCredentials' => [
            [ /* W3C credential object */ ]
        ]
    ];
    $result = $apiInstance->verifyCredentials($request);
    print_r($result);
} catch (Exception $e) {
    echo 'Exception: ', $e->getMessage(), PHP_EOL;
}
```

#### verifyPresentation

Validates a Verifiable Presentation.

Parameters

    verifyPresentationInput
    VerifyPresentationInput
    Required
  Verifiable Presentation to validate.

Example

```php
require_once 'vendor/autoload.php';
use AffinidiTdk\Clients\CredentialVerificationClient;

$tokenCallback = [$authProvider, 'fetchProjectScopedToken'];
$config = CredentialVerificationClient\Configuration::getDefaultConfiguration()->setApiKey('authorization', '', $tokenCallback);
$apiInstance = new CredentialVerificationClient\Api\DefaultApi(new GuzzleHttp\Client(), $config);

try {
    $request = [
        'verifiablePresentation' => [ /* W3C presentation object */ ]
    ];
    $result = $apiInstance->verifyPresentation($request);
    print_r($result);
} catch (Exception $e) {
    echo 'Exception: ', $e->getMessage(), PHP_EOL;
}
```
