Skip to content

cloudinary/account-provisioning-php

Repository files navigation

Cloudinary Account Provisioning API PHP SDK

Accounts with provisioning API access can create and manage their product environments, users and user groups using the RESTful Provisioning API.

Provisioning API access is available upon request for accounts on an Enterprise plan.

The API uses Basic Authentication over HTTPS. Your Provisioning Key and Provisioning Secret are used for the authentication. These credentials (as well as your ACCOUNT_ID) are located in the Cloudinary Console under Settings > Account > Provisioning API Access, or they can be obtained from the provisioning environment variable available on your Cloudinary Console Dashboard.

The Provisioning API has dedicated SDKs for the following languages:

Useful links:

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

Installation & Usage

Requirements

PHP 8.1 and later.

Composer

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

{
  "require": {
    "cloudinary/account-provisioning": "*"
  }
}

Then run composer install

Manual Installation

Download the files and include autoload.php:

<?php
require_once('/path/to/account-provisioning/vendor/autoload.php');

Configuration

The API uses Basic Authentication over HTTPS.

Your Cloudinary Account ID, Provisioning Key and Provisioning Secret are used for the authentication.

These ID's are located in the Cloudinary Console under Settings > Account > Provisioning API Access, or they can be obtained from the provisioning environment variable available on your Cloudinary Console Dashboard

(in the form: CLOUDINARY_ACCOUNT_URL=account://<PROVISIONING_KEY>:<PROVISIONING_SECRET>@<ACCOUNT_ID>).

You can either pass configuration with each $apiInstance initialization:

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

// Configure Cloudinary Account URL
$config = Cloudinary\Provisioning\Configuration::getDefaultConfiguration()
              ->setCloudinaryAccountUrl('account://provisioning_key:provisioning_secret@account_id');

$apiInstance = new Cloudinary\Provisioning\Api\ProductEnvironmentsApi(null, $config);

Or set the environment variable globally.

For example, to set a temporary environment variable:

  • On Mac or Linux:

    export CLOUDINARY_ACCOUNT_URL=account://provisioning_key:provisioning_secret@account_id
    
  • On Windows:

    set CLOUDINARY_ACCOUNT_URL=account://provisioning_key:provisioning_secret@account_id
    

And then you can simply initialize $apiInstance as follows:

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

$apiInstance = new Cloudinary\Provisioning\Api\ProductEnvironmentsApi();

Getting Started

Please follow the installation procedure and then run the following:

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

$apiInstance = new Cloudinary\Provisioning\Api\ProductEnvironmentsApi();

$enabled = true; // bool | Whether to only return enabled product environments (true) or disabled product environments (false).  **Default**: all product environments are returned (both enabled and disabled).
$ids = array('ids_example'); // string[] | A list of up to 100 product environment IDs. When provided, other parameters are ignored.
$cloudNames = array('cloudNames_example'); // string[] | A list of up to 100 product environment cloud names.
$prefix = "product"; // string | Returns product environments where the name begins with the specified case-insensitive string.

try {
    $result = $apiInstance->getProductEnvironments($enabled, $ids, $cloudNames, $prefix);
    print_r($result);
} catch (Exception $e) {
    echo 'Exception when calling ProductEnvironmentsApi->getProductEnvironments: ', $e->getMessage(), PHP_EOL;
}

API Endpoints

All URIs are relative to https://api.cloudinary.com/v1_1/provisioning/accounts/ACCOUNT_ID, except if the operation defines another base path.

Class Method HTTP request Description
AccessKeysApi deleteAccessKey DELETE /sub_accounts/{sub_account_id}/access_keys/{key} Delete access key
AccessKeysApi deleteAccessKeyByName DELETE /sub_accounts/{sub_account_id}/access_keys Delete access key by name
AccessKeysApi generateAccessKey POST /sub_accounts/{sub_account_id}/access_keys Generate an access key
AccessKeysApi getAccessKeys GET /sub_accounts/{sub_account_id}/access_keys Get access keys
AccessKeysApi updateAccessKey PUT /sub_accounts/{sub_account_id}/access_keys/{key} Update an access key
ProductEnvironmentsApi createProductEnvironment POST /sub_accounts Create product environment
ProductEnvironmentsApi deleteProductEnvironment DELETE /sub_accounts/{sub_account_id} Delete product environment
ProductEnvironmentsApi getProductEnvironment GET /sub_accounts/{sub_account_id} Get product environment
ProductEnvironmentsApi getProductEnvironments GET /sub_accounts Get product environments
ProductEnvironmentsApi updateProductEnvironment PUT /sub_accounts/{sub_account_id} Update product environment
UserGroupsApi addUserToUserGroup POST /user_groups/{group_id}/users/{user_id} Add User to User Group
UserGroupsApi createUserGroup POST /user_groups Create User Group
UserGroupsApi deleteUserGroup DELETE /user_groups/{group_id} Delete User Group
UserGroupsApi getUserGroup GET /user_groups/{group_id} Get User Group
UserGroupsApi getUserGroups GET /user_groups Get User Groups
UserGroupsApi getUsersInUserGroup GET /user_groups/{group_id}/users Get Users in User Group
UserGroupsApi removeUserFromUserGroup DELETE /user_groups/{group_id}/users/{user_id} Remove User from User Group
UserGroupsApi updateUserGroup PUT /user_groups/{group_id} Update User Group
UsersApi createUser POST /users Create user
UsersApi deleteUser DELETE /users/{user_id} Delete user
UsersApi getUser GET /users/{user_id} Get user
UsersApi getUsers GET /users Get users
UsersApi updateUser PUT /users/{user_id} Update user

Models

Authorization

basicAuth

  • Type: HTTP basic authentication

Tests

To run the tests, use:

composer install
vendor/bin/phpunit

Author

[email protected]

About this package

This Cloudinary Account Provisioning API PHP package is automatically generated.

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