Skip to content

Latest commit

 

History

History
63 lines (40 loc) · 2.71 KB

build-an-api.md

File metadata and controls

63 lines (40 loc) · 2.71 KB

Build Python microservices

WayScript allows you to configure your Lair to build an serverless API endpoint in minutes.

Create api.py

Use the boilerplate code below to create an api.py file in your Lair’s root directory. See File system for more details on how to manipulate files in your workspace file system.

Create a file called api.py

Boilerplate api.py

from wayscript import context
from wayscript.triggers import http_trigger

# Get payload for request event
request_payload = context.get_event()

# Parse header and request body from request payload
request_header = request_payload['data'].get('headers')
request_body = request_payload['data'].get('data')

# Specify response payload
response_payload = {"hello": "world"}
response_headers = {"content-type": "application/json"}
status_code = 200

# Send response
http_trigger.send_response(data=response_payload, headers=response_headers, status_code=status_code)

{% hint style="info" %} See our SDK for more information on custom WayScript packages {% endhint %}

Configure http trigger

Open your Lair’s Triggers Panel and add a new http trigger. Create a name for your trigger and input the following run command. See Triggers for more details.

python api.py

Example HTTP Trigger Setup

Trigger Name - You can create any name you want for organization.

Command To Run - The Unix command to run your code.

Path - If you want multiple HTTP Triggers in the same lair, you can create custom URL paths. For example you can have <Endpoint_URL>/call-api and then another HTTP Trigger with the URL <Endpoint_URL>/do-something-else

Test your API in development environment

Navigate to the *.wayscript.cloud endpoint generated by your http trigger to see your simple API in action!

Deploy to production environment

Once you have finished testing, press “Deploy” to create a production environment for your API. Select <Lair_name>.prod in the Lair selector menu and view the http trigger to access your API’s production endpoint. See Hosted environments for more details.

{% hint style="warning" %} By default, your Lair's endpoints are protected against unauthenticated requests. See endpoints.md on how to public expose your endpoints or authenticate using your application key. {% endhint %}