**pre-Alpha** PHP client SDK for the Agave Platform
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
codegen
docs
src/Agave/Client
test
.gitignore
.swagger-codegen-ignore
LICENSE
README.md
codegen-config.json
composer.json
composer.lock
dist.sh
phpunit.xml

README.md

Agave PHP Client SDK

Power your digital lab and reduce the time from theory to discovery using the Agave Science-as-a-Service API Platform. Agave provides hosted services that allow researchers to manage data, conduct experiments, and publish and share results from anywhere at any time.

This PHP package is automatically generated by the Swagger Codegen project:

  • API version: 2.2.15
  • Package version: 0.2.0

Requirements

PHP 5.5 and later

Installation & Usage

Composer

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

{
  "repositories": [
    {
      "type": "git",
      "url": "https://github.com/agaveplatform/agave-php-sdk.git"
    }
  ],
  "require": {
    "agaveplatform/agave-php-sdk": "*@dev"
  }
}

Then run composer install

Manual Installation

Download the files and include autoload.php:

    require_once('/path/to/agave-php-sdk/vendor/autoload.php');

Tests

To run the unit tests:

composer install
./vendor/bin/phpunit

Getting Started

Please follow the installation procedure and then run the following:

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

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

$apiInstance = new Agave\Client\Api\AppsApi(
    // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
    // This is optional, `GuzzleHttp\Client` will be used as default.
    new GuzzleHttp\Client(),
    $config
);
$naked = true; // bool |
$body = new \Agave\Client\Model\Application(); // \Agave\Client\Model\Application | The description of the app to add or update.

try {
    $result = $apiInstance->addApp($naked, $body);
    print_r($result);
} catch (Exception $e) {
    echo 'Exception when calling AppsApi->addApp: ', $e->getMessage(), PHP_EOL;
}

?>

Documentation for API Endpoints

All URIs are relative to https://public.agaveapi.co

Class Method HTTP request Description
AppsApi addApp POST /apps/v2/
AppsApi addAppPermission POST /apps/v2/{appId}/pems
AppsApi clearAppPermissions DELETE /apps/v2/{appId}/pems
AppsApi deleteApp DELETE /apps/v2/{appId}
AppsApi deleteAppPermission DELETE /apps/v2/{appId}/pems/{username}
AppsApi getAppDetails GET /apps/v2/{appId}
AppsApi getAppPermission GET /apps/v2/{appId}/pems/{username}
AppsApi getAppSubmissionForm GET /apps/v2/{appId}/form
AppsApi invokeAppAction PUT /apps/v2/{appId}
AppsApi listAppHistory GET /apps/v2/{appId}/history
AppsApi listAppPermissions GET /apps/v2/{appId}/pems
AppsApi listApps GET /apps/v2/ List apps
AppsApi updateApp POST /apps/v2/{appId}
AppsApi updateAppPermission POST /apps/v2/{appId}/pems/{username}
ClientsApi addClient POST /clients/v2/
ClientsApi addClientAPISubscription POST /clients/v2/{clientName}/subscriptions
ClientsApi clearClientAPISubscriptions DELETE /clients/v2/{clientName}/subscriptions
ClientsApi deleteClient DELETE /clients/v2/{clientName}
ClientsApi getClient GET /clients/v2/{clientName}
ClientsApi listClientApiSubscriptions GET /clients/v2/{clientName}/subscriptions
ClientsApi listClients GET /clients/v2/
FilesApi clearFileItemPermissions DELETE /files/v2/pems/system/{systemId}/{filePath}
FilesApi deleteFileItem DELETE /files/v2/media/system/{systemId}/{filePath}
FilesApi deleteFileItemOnDefaultSystem DELETE /files/v2/media/{filePath}
FilesApi downloadFileItem GET /files/v2/media/system/{systemId}/{filePath}
FilesApi downloadFileItemOnDefaultSystem GET /files/v2/media/{filePath}
FilesApi importFileItem POST /files/v2/media/system/{systemId}/{filePath}
FilesApi importFileItemToDefaultSystem POST /files/v2/media/{filePath}
FilesApi invokeFileActionOnDefaultSystem PUT /files/v2/media/{filePath}
FilesApi invokeFileItemAction PUT /files/v2/media/system/{systemId}/{filePath}
FilesApi listFileItemHistory GET /files/v2/history/system/{systemId}/{filePath}
FilesApi listFileItemHistoryOnDefaultSystem GET /files/v2/history/{filePath}
FilesApi listFileItemPermissions GET /files/v2/pems/system/{systemId}/{filePath}
FilesApi listFileItemPermissionsOnDefaultSystem GET /files/v2/pems/{filePath}
FilesApi listFileItems GET /files/v2/listings/system/{systemId}/{filePath}
FilesApi listFileItemsOnDefaultSystem GET /files/v2/listings/{filepath}
FilesApi updateFileItemPermission POST /files/v2/pems/system/{systemId}/{filePath}
FilesApi updateFileItemPermissionsOnDefaultSystem POST /files/v2/pems/{filePath}
JobsApi addJobPermission POST /jobs/v2/{jobId}/pems
JobsApi clearJobPermissions DELETE /jobs/v2/{jobId}/pems
JobsApi deleteJob DELETE /jobs/v2/{jobId}
JobsApi deleteJobPermission DELETE /jobs/v2/{jobId}/pems/{username}
JobsApi downloadJobOutput GET /jobs/v2/{jobId}/outputs/media/{filePath}
JobsApi getJobDetails GET /jobs/v2/{jobId}
JobsApi getJobHistory GET /jobs/v2/{jobId}/history
JobsApi getJobPermission GET /jobs/v2/{jobId}/pems/{username}
JobsApi getJobStatus GET /jobs/v2/{jobId}/status
JobsApi listJobOutputs GET /jobs/v2/{jobId}/outputs/listings/{filePath}
JobsApi listJobPermissions GET /jobs/v2/{jobId}/pems
JobsApi listJobs GET /jobs/v2/
JobsApi resubmitJob POST /jobs/v2/{jobId}
JobsApi submitJob POST /jobs/v2/
JobsApi updateJobPermission POST /jobs/v2/{jobId}/pems/{username}
MetaApi addMetadata POST /meta/v2/data
MetaApi addMetadataPermission POST /meta/v2/data/{uuid}/pems
MetaApi addMetadataSchema POST /meta/v2/schemas
MetaApi addMetadataSchemaPermission POST /meta/v2/schemas/{uuid}/pems
MetaApi clearMetadataPermissions DELETE /meta/v2/data/{uuid}/pems
MetaApi clearMetadataSchemaPermissions DELETE /meta/v2/schemas/{uuid}/pems
MetaApi deleteMetadata DELETE /meta/v2/data/{uuid}
MetaApi deleteMetadataPermission DELETE /meta/v2/data/{uuid}/pems/{username}
MetaApi deleteMetadataSchema DELETE /meta/v2/schemas/{uuid}
MetaApi deleteSchemaPermission DELETE /meta/v2/schemas/{uuid}/pems/{username}
MetaApi getMetadata GET /meta/v2/data/{uuid}
MetaApi getMetadataPermission GET /meta/v2/data/{uuid}/pems/{username}
MetaApi getMetadataSchema GET /meta/v2/schemas/{uuid}
MetaApi getMetadataSchemaPermission GET /meta/v2/schemas/{uuid}/pems/{username}
MetaApi listMetadata GET /meta/v2/data
MetaApi listMetadataPermissions GET /meta/v2/data/{uuid}/pems
MetaApi listMetadataSchema GET /meta/v2/schemas
MetaApi listMetadataSchemaPermissions GET /meta/v2/schemas/{uuid}/pems
MetaApi updateMetadata POST /meta/v2/data/{uuid}
MetaApi updateMetadataPermission POST /meta/v2/data/{uuid}/pems/{username}
MetaApi updateMetadataSchema POST /meta/v2/schemas/{uuid}
MetaApi updateMetadataSchemaPermission POST /meta/v2/schemas/{uuid}/pems/{username}
MonitorsApi addMonitoringTasks POST /monitors/v2/
MonitorsApi deleteMonitoringTask DELETE /monitors/v2/{monitorId}
MonitorsApi forceMonitoringTaskCheck POST /monitors/v2/{monitorId}/checks
MonitorsApi getMonitoringTask GET /monitors/v2/{monitorId}
MonitorsApi getMonitoringTaskCheck GET /monitors/v2/{monitorId}/checks/{checkId}
MonitorsApi listMonitoringTaskChecks GET /monitors/v2/{monitorId}/checks
MonitorsApi listMonitoringTasks GET /monitors/v2/
MonitorsApi updateMonitoringTask POST /monitors/v2/{monitorId}
NotificationsApi addNotification POST /notifications/v2/
NotificationsApi deleteNotification DELETE /notifications/v2/{uuid}
NotificationsApi getNotification GET /notifications/v2/{uuid}
NotificationsApi listNotifications GET /notifications/v2/
NotificationsApi updateNotification POST /notifications/v2/{uuid}
PostitsApi addPostit POST /postits/v2/
PostitsApi deletePostit DELETE /postits/v2/{nonce}
PostitsApi listPostits GET /postits/v2/
ProfilesApi addInternalUser POST /profiles/v2/{apiUsername}/users
ProfilesApi addProfile POST /profiles/v2
ProfilesApi clearInternalUsers DELETE /profiles/v2/{apiUsername}/users
ProfilesApi deleteInternalUser DELETE /profiles/v2/{apiUsername}/users/{internalUsername}
ProfilesApi deleteProfile DELETE /profiles/v2/{apiUsername}
ProfilesApi getInternalUser GET /profiles/v2/{apiUsername}/users/{internalUsername}
ProfilesApi getProfile GET /profiles/v2/{apiUsername}
ProfilesApi listInternalUsers GET /profiles/v2/{apiUsername}/users
ProfilesApi listProfiles GET /profiles/v2
ProfilesApi updateInternalUser POST /profiles/v2/{apiUsername}/users/{internalUsername}
ProfilesApi updateProfile POST /profiles/v2/{apiUsername}
SystemsApi addExecutionSystem POST /systems/v2/
SystemsApi addStorageSystem POST /systems/v2
SystemsApi addSystemCredential POST /systems/v2/{systemId}/credentials
SystemsApi addSystemRole POST /systems/{systemId}/roles
SystemsApi clearSystemAuthCredentials DELETE /systems/v2/{systemId}/credentials
SystemsApi clearSystemAuthCredentialsForInternalUser DELETE /systems/v2/{systemId}/credentials/{internalUsername}
SystemsApi clearSystemRoles DELETE /systems/v2/{systemId}/roles
SystemsApi deleteSystem DELETE /systems/v2/{systemId}
SystemsApi deleteSystemAuthCredentialForInternalUser DELETE /systems/v2/{systemId}/credentials/{internalUsername}/{credentialType}
SystemsApi deleteSystemRole DELETE /systems/v2/{systemId}/roles/{username}
SystemsApi getSystemCredential GET /systems/v2/{systemId}/credentials/{internalUsername}/{credentialType}
SystemsApi getSystemDetails GET /systems/v2/{systemId}
SystemsApi getSystemRole GET /systems/v2/{systemId}/roles/{username}
SystemsApi invokeSystemAction PUT /systems/v2/{systemId}
SystemsApi listCredentialsForInternalUser GET /systems/v2/{systemId}/credentials/{internalUsername}
SystemsApi listSystemCredentials GET /systems/v2/{systemId}/credentials
SystemsApi listSystemRoles GET /systems/v2/{systemId}/roles
SystemsApi listSystems GET /systems/v2/
SystemsApi updateSystem POST /systems/v2/{systemId}
SystemsApi updateSystemCredential POST /systems/v2/{systemId}/credentials/{internalUsername}
SystemsApi updateSystemCredentialOfType POST /systems/v2/{systemId}/credentials/{internalUsername}/{credentialType}
SystemsApi updateSystemRole POST /systems/v2/{systemId}/roles/{username}
TagApi addTag POST /tags/v2 Creat a new tag
TagApi addTagResource POST /tags/v2/{tagId}/resources Add resources to tag
TagApi clearTagPermissions DELETE /tags/v2/{tagId}/pems Clear tag permissions
TagApi clearTagResources DELETE /tags/v2/{tagId}/resources Clear all tagged resources
TagApi deleteTag DELETE /tags/v2/{tagId} Delete tag
TagApi deleteTagPermissionForUser DELETE /tags/v2/{tagId}/pems/{username} Remove user tag permission
TagApi getTagDetails GET /tags/v2/{tagId} Tag Details
TagApi getTagPermissionForUser GET /tags/v2/{tagId}/pems/{username} List tag permissions for a user
TagApi getTaggedResource GET /tags/v2/{tagId}/resources/{uuid} Get tagged item details
TagApi listTagHistory GET /tags/v2/{tagId}/history Tag history
TagApi listTagPermissions GET /tags/v2/{tagId}/pems List permissionss set for a given tag id
TagApi listTagResources GET /tags/v2/{tagId}/resources Tagged items
TagApi listTags GET /tags/v2 Available tags
TagApi removeTagResource DELETE /tags/v2/{tagId}/resources/{uuid} Remove resource from tag
TagApi updateTag PUT /tags/v2/{tagId} Update tag
TagApi updateTagPermission POST /tags/v2/{tagId}/pems Grant permission
TagApi updateTagPermissionForUser POST /tags/v2/{tagId}/pems/{username} Update user permission on tag
TagApi updateTagResource PUT /tags/v2/{tagId}/resources/{uuid} Add resource to tag
TenantsApi getTenantDetails GET /tenants/v2/{codeOrUuid} Resolve Tenant details
TenantsApi listTenants GET /tenants/v2 List all active tenants
TransformsApi asyncTransform POST /transforms/v2/{transformId}/async/{owner}/{filePath}
TransformsApi getTransform GET /transforms/v2/{transformId}
TransformsApi listTransforms GET /transforms/v2/
TransformsApi syncTransform POST /transforms/v2/{transformId}/sync/{owner}/{filePath}
UuidsApi createUuid POST /uuids/v2/
UuidsApi resolveUuid GET /uuids/v2/{uuid}
UuidsApi resolveUuids GET /uuids/v2/

Documentation For Models

Documentation For Authorization

agaveApplication

  • Type: OAuth
  • Flow: application
  • Authorization URL:
  • Scopes:
  • PRODUCTION: catchall scope for all core apis

agaveBasic

  • Type: HTTP basic authentication

agaveImplicit

agavePassword

  • Type: OAuth
  • Flow: password
  • Authorization URL:
  • Scopes:
  • PRODUCTION: catchall scope for all core apis

Author