In this guide
Before you start
Define the expected HTTP input, response and caller authentication. Check runtime constraints and keep a representative test request ready.
Step-by-step workflow
- Define the HTTP contract
Write down the request method, input, response and authentication expected by your handler. Decide how it handles repeated calls.
- Select the execution configuration
Review the published offer and supply the function source and required configuration. Confirm execution limits and billing units.
- Test the endpoint
Use the configured invocation address. Exercise a valid request, invalid input and an unavailable downstream service.
- Review failure behavior
Inspect available execution logs. Bound downstream calls and keep durable state outside the request execution environment.
Review the execution model
Choose a published function offer and inspect the supported configuration. Confirm resource limits, timeout behavior, invocation access and billing units for the workload.
Deploy and invoke
Use the Resource Composer to provide the required function configuration. Once ready, use the configured endpoint and test representative successful and failed requests.
Operational limits
Inspect function state and available logs in the console. Do not assume scale-to-zero, automatic scaling or a specific billing granularity without confirming the offer. Keep persistent application data in an appropriate storage service you operate.
Check your result
The endpoint handles valid input, rejects invalid input deliberately and produces an observable result. Test dependency failures and duplicate requests too.
If something does not work
Check invocation access, request format and available logs. Compare slow requests with execution limits and upstream timeouts before changing the configuration.
- A caller retries the same request
- Make externally visible effects safe for repeated delivery, using an application-level identifier where appropriate.
- An invocation times out
- Compare the handler duration with the configured limits and inspect downstream calls. Do not assume the function can run indefinitely.