Skip to main content

Wrapper functions for creating APIs in Morphisdom

Project description

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

Project details


Release history Release notifications | RSS feed

This version

1.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

morphapiwrapper-1.0.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

morphapiwrapper-1.0-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

Details for the file morphapiwrapper-1.0.tar.gz.

File metadata

  • Download URL: morphapiwrapper-1.0.tar.gz
  • Upload date:
  • Size: 5.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.7.9

File hashes

Hashes for morphapiwrapper-1.0.tar.gz
Algorithm Hash digest
SHA256 852cce78858331d523899d1b94811e0bd39f235245f48fca08d62d398404d9cf
MD5 4b346afffdbb78b655e1d789062e75c2
BLAKE2b-256 0ffe599e2e71b040a823f452a741dfee0cb589f3355e3ba1dcd8174a193e2800

See more details on using hashes here.

File details

Details for the file morphapiwrapper-1.0-py3-none-any.whl.

File metadata

  • Download URL: morphapiwrapper-1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.7.9

File hashes

Hashes for morphapiwrapper-1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a49e394f42342be8930e0b0b16f44cdfd42dbbb56b42e5b9f2f2000b2540463d
MD5 17356f1f8dbd394ade5292b7b66eab4f
BLAKE2b-256 ad80c5826525f8e15a3bb0292bf3f7382a53cfc58ca9218edc9919c5b65f7b9b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page