Skip to content

Analyze any external asset and return details based on the type of analysis requested.

License

Notifications You must be signed in to change notification settings

cloudinary/analysis-php

Repository files navigation

Analyze API (Beta) PHP SDK

Use the Analyze API to analyze any external asset and return details based on the type of analysis requested.

Currently supports the following analysis options:

Notes:

  • The Analyze API is currently in development and is available as a Public Beta, which means we value your feedback, so please feel free to share any thoughts with us.
  • The analysis options require an active subscription to the relevant add-on. Learn more about registering for add-ons.

The API supports both Basic Authentication using your Cloudinary API Key and API Secret (which can be found on the Dashboard page of your Cloudinary Console) or OAuth2 (Contact support for more information regarding OAuth).

For more information, please visit https://cloudinary.com/documentation/analyze_api_reference.

Installation & Usage

Requirements

PHP 8.1 and later.

Composer

To install the bindings via Composer, add the following to composer.json:

{
  "require": {
    "cloudinary/analysis": "*"
  }
}

Then run composer install

Manual Installation

Download the files and include autoload.php:

<?php
require_once('/path/to/analysis/vendor/autoload.php');

Configuration

The API uses Basic Authentication over HTTPS.

You can find your product environment configuration credentials in the API Keys page of the Cloudinary Console Dashboard.

You can either pass configuration with each $apiInstance initialization:

<?php
require_once(__DIR__ . '/vendor/autoload.php');

// Configure OAuth2 access token for authorization: OAuth2
// $config = Cloudinary\Analysis\Configuration::getDefaultConfiguration()->setAccessToken('YOUR_ACCESS_TOKEN');

// Configure Cloudinary URL: basicAuth
$config = Cloudinary\Analysis\Configuration::getDefaultConfiguration()
              ->setCloudinaryUrl('cloudinary://key:secret@cloud_name');

$apiInstance = new Cloudinary\Analysis\Api\AnalysisApi(null, $config);

Or set the environment variable globally.

For example, to set a temporary environment variable:

  • On Mac or Linux:

    export CLOUDINARY_URL=cloudinary://key:secret@cloud_name
    
  • On Windows:

    set CLOUDINARY_URL=cloudinary://key:secret@cloud_name
    

And then you can simply initialize $apiInstance as follows:

<?php
require_once(__DIR__ . '/vendor/autoload.php');

$apiInstance = new Cloudinary\Analysis\Api\AnalysisApi();

Getting Started

Please follow the installation procedure and then run the following:

<?php
require_once(__DIR__ . '/vendor/autoload.php');

$apiInstance = new Cloudinary\Analysis\Api\AnalysisApi();

$analyzeAIVisionGeneralRequest = new \Cloudinary\Analysis\Model\AnalyzeAIVisionGeneralRequest(); // \Cloudinary\Analysis\Model\AnalyzeAIVisionGeneralRequest | A JSON object containing request parameters

try {
    $result = $apiInstance->analyzeAiVisionGeneral($analyzeAIVisionGeneralRequest);
    print_r($result);
} catch (Exception $e) {
    echo 'Exception when calling AnalysisApi->analyzeAiVisionGeneral: ', $e->getMessage(), PHP_EOL;
}

API Endpoints

All URIs are relative to https://api.cloudinary.com/v2/analysis/CLOUD_NAME/analyze, except if the operation defines another base path.

Class Method HTTP request Description
AnalysisApi analyzeAiVisionGeneral POST /ai_vision_general Analyze - AI Vision General
AnalysisApi analyzeAiVisionModeration POST /ai_vision_moderation Analyze - AI Vision Moderation
AnalysisApi analyzeAiVisionTagging POST /ai_vision_tagging Analyze - AI Vision Tagging
AnalysisApi analyzeCaptioning POST /captioning Analyze - Captioning
AnalysisApi analyzeCldFashion POST /cld_fashion Analyze - Cld-Fashion
AnalysisApi analyzeCldText POST /cld_text Analyze - Cld-Text
AnalysisApi analyzeCoco POST /coco Analyze - Coco
AnalysisApi analyzeCustom POST /custom Analyze - custom model
AnalysisApi analyzeGoogleTagging POST /google_tagging Analyze - Google Tagging
AnalysisApi analyzeHumanAnatomy POST /human_anatomy Analyze - Human Anatomy
AnalysisApi analyzeLvis POST /lvis Analyze - Lvis
AnalysisApi analyzeShopClassifier POST /shop_classifier Analyze - Shop Classifier
AnalysisApi analyzeUnidet POST /unidet Analyze - Unidet

Models

Authorization

basicAuth

  • Type: HTTP basic authentication

OAuth2

  • Type: OAuth
  • Flow: accessCode
  • Authorization URL: https://oauth.cloudinary.com/oauth2/auth
  • Scopes:
    • media_analysis: Analyze media

Tests

To run the tests, use:

composer install
vendor/bin/phpunit

Author

About this package

This Analyze API (Beta) PHP package is automatically generated.

  • Package version: 0.1.0
  • API version: 0.1.0
  • Build package: org.openapitools.codegen.languages.PhpNextgenClientCodegen

About

Analyze any external asset and return details based on the type of analysis requested.

Resources

License

Stars

Watchers

Forks

Packages

No packages published