Skip to content

Latest commit

 

History

History
312 lines (267 loc) · 24.6 KB

README.md

File metadata and controls

312 lines (267 loc) · 24.6 KB

madana-apiclient

MadanaApiclient - JavaScript client for madana-apiclient

Using the madana-api

This documentation contains a Quickstart Guide, relating client functionality and information about the available endpoints and used datamodels.

The madana-api and its implementations are still in heavy development. This means that there may be problems in our protocols, or there may be mistakes in our implementations. We take security vulnerabilities very seriously. If you discover a security issue, please bring it to our attention right away! If you find a vulnerability that may affect live deployments -- for example, by exposing a remote execution exploit -- please send your report privately to info@madana.io. Please DO NOT file a public issue. If the issue is a protocol weakness that cannot be immediately exploited or something not yet deployed, just discuss it openly


Note: Not all functionality might be acessible without having accquired and api-license token. For more information visit www.madana.io


This SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
  • API version: 0.5.0-master.56
  • Package version: 0.5.0-master.56
  • Build package: org.openapitools.codegen.languages.JavascriptClientCodegen

Installation

npm

To publish the library as a npm, please follow the procedure in "Publishing npm packages".

Then install it via:

npm install madana-apiclient --save

Finally, you need to build the module:

npm run build
Local development

To use the library locally without publishing to a remote npm registry, first install the dependencies by changing into the directory containing package.json (and this README). Let's call this JAVASCRIPT_CLIENT_DIR. Then run:

npm install

Next, link it globally in npm with the following, also from JAVASCRIPT_CLIENT_DIR:

npm link

To use the link you just defined in your project, switch to the directory you want to use your madana-apiclient from, and run:

npm link /path/to/<JAVASCRIPT_CLIENT_DIR>

Finally, you need to build the module:

npm run build

git

If the library is hosted at a git repository, e.g.https://github.com/YOUR_USERNAME/madana-apiclient then install it via:

    npm install YOUR_USERNAME/madana-apiclient --save

For browser

The library also works in the browser environment via npm and browserify. After following the above steps with Node.js and installing browserify with npm install -g browserify, perform the following (assuming main.js is your entry file):

browserify main.js > bundle.js

Then include bundle.js in the HTML pages.

Webpack Configuration

Using Webpack you may encounter the following error: "Module not found: Error: Cannot resolve module", most certainly you should disable AMD loader. Add/merge the following section to your webpack config:

module: {
  rules: [
    {
      parser: {
        amd: false
      }
    }
  ]
}

Getting Started

Please follow the installation instruction and execute the following JS code:

var MadanaApiclient = require('madana-apiclient');


var api = new MadanaApiclient.AccountServiceApi()
var token = "token_example"; // {String} 
var callback = function(error, data, response) {
  if (error) {
    console.error(error);
  } else {
    console.log('API called successfully. Returned data: ' + data);
  }
};
api.activateUser(token, callback);

Documentation for API Endpoints

All URIs are relative to http://api.madana.io/rest

Class Method HTTP request Description
MadanaApiclient.AccountServiceApi activateUser GET /account/activation/{token}
MadanaApiclient.AccountServiceApi createPasswordReset POST /account/password Sends an Password reset mail to the given MailAddress.
MadanaApiclient.AccountServiceApi requestVerificationMail GET /account/verifymail Used to request a new activation-mail for the user.
MadanaApiclient.AccountServiceApi updatePassword PUT /account/password Receives the Password reset and tries to set the provided password for the user.
MadanaApiclient.AuthenticationServiceApi authenticateApplication POST /authentication/application Authenticates a new application and returns the token.
MadanaApiclient.AuthenticationServiceApi authenticateEthereumWallet POST /authentication/ethereum/{wallet}
MadanaApiclient.AuthenticationServiceApi authenticateUser POST /authentication Authenticates a new user and returns the token ( forbidden if the credentials cannot be validated ).
MadanaApiclient.AuthenticationServiceApi authenticateWithEthereumChallenge POST /authentication/ethereum/{wallet}/challenge
MadanaApiclient.AuthenticationServiceApi getFractalAuthenticationURL GET /authentication/fractal Returns the AUthorization URL to verify a Twitter Accounts.
MadanaApiclient.AuthenticationServiceApi getNonceForEthereumWallet GET /authentication/ethereum/{wallet} Returns a nonce for the client which is used as content for the to be created signature.
MadanaApiclient.AuthenticationServiceApi getObject GET /authentication Used to validate the active connection with the API.
MadanaApiclient.AuthenticationServiceApi getTwitterAuthenticationURL GET /authentication/twitter Returns the AUthorization URL to verify a Twitter Accounts.
MadanaApiclient.AuthenticationServiceApi setFacebookUID POST /authentication/facebook Used as Callback URL when users have successfully authorized their facbeook account.
MadanaApiclient.AuthenticationServiceApi setFractalUID POST /authentication/fractal
MadanaApiclient.AuthenticationServiceApi setTwitterUID POST /authentication/twitter
MadanaApiclient.CertificateServiceApi authenticateCertificate POST /certificates Issues certificates for logged-in users.
MadanaApiclient.CertificateServiceApi getCertificateByFingerprint GET /certificates/{fingerprint}
MadanaApiclient.CertificateServiceApi getRootCertificate GET /certificates/root
MadanaApiclient.DataCollectionServiceApi getMethodsForType GET /datacollection/types/{name}/methods
MadanaApiclient.DataCollectionServiceApi getNodes GET /datacollection/methods
MadanaApiclient.DataCollectionServiceApi getTypes GET /datacollection/types
MadanaApiclient.EnclaveServiceApi addHistory POST /enclaves/{uuid}/history
MadanaApiclient.EnclaveServiceApi approveEnclave POST /enclaves/{uuid}/approval
MadanaApiclient.EnclaveServiceApi assignEnclaveAgent POST /enclaves/{uuid}/assign
MadanaApiclient.EnclaveServiceApi attestateEnclave POST /enclaves/{uuid}/attestation
MadanaApiclient.EnclaveServiceApi createEnclaveRunRequest POST /enclaves
MadanaApiclient.EnclaveServiceApi getEnclave GET /enclaves/{uuid}
MadanaApiclient.EnclaveServiceApi getEnclaveTypes GET /enclaves/types
MadanaApiclient.EnclaveServiceApi getEnclaves GET /enclaves Returns UUIDs of existing analyses.
MadanaApiclient.EnclaveServiceApi getStats GET /enclaves/stats
MadanaApiclient.EnclaveServiceApi killEnclave POST /enclaves/{uuid}/kill
MadanaApiclient.EnvironmentServiceApi deleteEnvironment DELETE /environments/{uuid}
MadanaApiclient.EnvironmentServiceApi deleteEnvironmentSubscription DELETE /environments/{uuid}/subscribe
MadanaApiclient.EnvironmentServiceApi getEnvironment GET /environments/{uuid}
MadanaApiclient.EnvironmentServiceApi getEnvironments GET /environments Returns UUIDs of existing analyses.
MadanaApiclient.EnvironmentServiceApi getPublishedEnvironments GET /environments/published
MadanaApiclient.EnvironmentServiceApi getSubscribedEnvironments GET /environments/subscriptions
MadanaApiclient.EnvironmentServiceApi publishEnvironment POST /environments
MadanaApiclient.EnvironmentServiceApi subscribeEnvironment POST /environments/{uuid}/subscribe
MadanaApiclient.EnvironmentServiceApi updateEnvironment PUT /environments/{uuid}
MadanaApiclient.InvoiceServiceApi getBillingPortalURL GET /invoices/portal
MadanaApiclient.InvoiceServiceApi getInvoices GET /invoices
MadanaApiclient.NodeServiceApi createNode POST /nodes/v2
MadanaApiclient.NodeServiceApi getBootstrap GET /nodes/bootstrap
MadanaApiclient.NodeServiceApi getNodeLicenses GET /nodes/licenses
MadanaApiclient.NodeServiceApi getNodeV2 GET /nodes/v2/{ident}
MadanaApiclient.NodeServiceApi getNodes2 GET /nodes
MadanaApiclient.NodeServiceApi getNodesV2 GET /nodes/v2 Returns UUIDs of existing analyses.
MadanaApiclient.NodeServiceApi killNode POST /nodes/v2/{ident}/kill
MadanaApiclient.NodeServiceApi postNodeInfo POST /nodes
MadanaApiclient.NodeServiceApi postNodeInfo_0 POST /nodes/create
MadanaApiclient.OrganizationServiceApi getNodes3 GET /organizations
MadanaApiclient.RequestServiceApi addData POST /requests/{uuid}/data Is used to upload and park the data till the AnalysisRequest gets processed.
MadanaApiclient.RequestServiceApi cancelProcessing POST /requests/{uuid}/cancel Endpoint is called from the Analysis Processing entity to submit the result.
MadanaApiclient.RequestServiceApi createNewRequest POST /requests Endpoint used to create a new Analysis Request.
MadanaApiclient.RequestServiceApi getActions GET /requests/actions
MadanaApiclient.RequestServiceApi getAgent GET /requests/{uuid}/agent Is called from the APE to request all parked datasets.
MadanaApiclient.RequestServiceApi getAllRequests GET /requests Returns UUIDs of existing analyses.
MadanaApiclient.RequestServiceApi getData GET /requests/{uuid}/data Is called from the APE to request all parked datasets.
MadanaApiclient.RequestServiceApi getRequest GET /requests/{uuid} Returns the details for certain Request.
MadanaApiclient.RequestServiceApi getResult GET /requests/{uuid}/result Can be called from creator to request the AnalysisResult.
MadanaApiclient.RequestServiceApi getStatus GET /requests/stats
MadanaApiclient.RequestServiceApi giveConsent POST /requests/{uuid}/consent Used to give consent for request.
MadanaApiclient.RequestServiceApi initRequestParameters POST /requests/{uuid} Endpoint used initialized addition datacollection parameters for requester.
MadanaApiclient.RequestServiceApi setAgent POST /requests/{uuid}/agent Is called from the APE to request all parked datasets.
MadanaApiclient.RequestServiceApi setResult POST /requests/{uuid}/result Endpoint is called from the Analysis Processing entity to submit the result.
MadanaApiclient.SocialPlatformServiceApi getPlatforms GET /platforms Used to Handle Incoming Webhooks from Facebook.
MadanaApiclient.SocialPlatformServiceApi listenTwitterWebhook POST /platforms/twitter Used to Handle Incoming Webhooks from Facebook.
MadanaApiclient.SocialPlatformServiceApi registerTwitterWebhook GET /platforms/twitter Used to Handle Incoming Webhooks from Twitter.
MadanaApiclient.SocialServiceApi getMyProfile GET /social/profiles/me
MadanaApiclient.SocialServiceApi getPlatforms2 GET /social Returns all Platforms / Systems that can be Connected to the MADANA Service.
MadanaApiclient.SocialServiceApi getRanking GET /social/ranking Returns the Ranking by PTS within the System.
MadanaApiclient.SocialServiceApi getSocialPlatformFeed GET /social/feed/{platform}
MadanaApiclient.SocialServiceApi getUserProfile GET /social/profiles/{username}
MadanaApiclient.SocialServiceApi getUserProfile_0 GET /social/profiles/{username}/simple
MadanaApiclient.SubscriptionServiceApi addFreeSubscription POST /subscriptions/saas/free
MadanaApiclient.SubscriptionServiceApi addPassTrialSubscription POST /subscriptions/paas/trial
MadanaApiclient.SubscriptionServiceApi getApplication GET /subscriptions/active
MadanaApiclient.SubscriptionServiceApi getCheckoutSession GET /subscriptions/{productname}/checkout
MadanaApiclient.SubscriptionServiceApi getCheckoutSession2 POST /subscriptions/{productname}/{newplan}
MadanaApiclient.SystemServiceApi getAllObjects GET /system/health
MadanaApiclient.SystemServiceApi getApplication2 GET /system/usage Return the current application usage.
MadanaApiclient.UserServiceApi cancelSubscription POST /users/{username}/subscriptions/{planname}/cancel
MadanaApiclient.UserServiceApi createObject POST /users Creates a new user object.
MadanaApiclient.UserServiceApi deleteObject DELETE /users/{username} Deletes an User based on the provided id and securitycontext.
MadanaApiclient.UserServiceApi deleteObject_0 DELETE /users/{username}/social/{platform}/{ident} Deletes linked account from the user and securitycontext.
MadanaApiclient.UserServiceApi getAvatars GET /users/{username}/avatars
MadanaApiclient.UserServiceApi getCertificates GET /users/{username}/certificates
MadanaApiclient.UserServiceApi getEnclaveHistory GET /users/{username}/enclavehistory
MadanaApiclient.UserServiceApi getObject2 GET /users/{username}
MadanaApiclient.UserServiceApi setAvatar POST /users/{username}/avatars
MadanaApiclient.UserServiceApi setSettings POST /users/{username}/settings
MadanaApiclient.UserServiceApi updateObject PUT /users/{username} Updates Userproperties based on the provided user object.

Documentation for Models

Documentation for Authorization

All endpoints do not require authorization.