Skip to content

morphisdom/morphapiwrapper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

morphapiwrapper

Wrapper functions for creating APIs in Morphisdom

Build Status

The morphapiwrapper package contains the wrapper functions to build a API for morphisdom

Get started

You can install the package by running the following command

pip install morphapiwrapper

Then load the package in Python by running the following command

from morphapiwrapper import app, addapproute

Write your custom function

You can write your custom function with this package and serve it as an API in morphisdom Your custom function should always take two arguments. Namely requestdata and filereaderwriter.
requestdata is the variable which would get the data passed during the API call for the client. For multiargument API in morphisdom requestdata holds a list whose elements corresponds to individual arguments of the API function in sequence. However requestdata can also hold string, number, boolean (for single argument API) and dictionary. filereaderwriter is an handle for downloading GCS or remote HTTP content into localdirectory. if requestdata contains and GCS file URI or HTTP url then the funtion filereaderwriter.download_input_data(requestdata) downloads all those files and returns the name of the local files in the same order. The number of elements in requestdata and downloadeddata remains same.

The following function demonstrates a simple function to be served as a Morphisdom API. The requestdata is downloaded and returned as output.

In order to log billing API calls the billunit needs to be set greater than 0.

def testfunction(requestdata,filereaderwriter):
	downloadeddata = filereaderwriter.download_input_data(requestdata)
	print(downloadeddata)
	billunit = 2
	return downloadeddata,billunit

Wrap your function

Once your function is created wrap your function in an flask app with the following code snippet

app = addapproute(app, testfunction)

The returned app is a flask app which has a route /testfunction added in it. On calling this route testfunction is executed

About

Wrapper functions for creating APIs in Morphisdom

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages