Deployments: loading...

Frequently Asked Questions

Microservices

What are microservices?

Microservice are small, independent processes that communicate with each other to form complex applications which utilize language-agnostic APIs.

These services are small building blocks, highly decoupled and focused on doing a small task, facilitating a modular approach to system-building

On hook.io, microservices are represented by a single function matched to a single unique URL

Why use microservice?

Building with microservices is advantageous for several reasons

  • Decoupled Modular Application Design
  • Stateless and Highly Fault Tolerant
  • Easy to reason about and maintain smaller functions

Do you support Webhooks?

Yes! Every service on hook.io is a fully qualified HTTP Webhook endpoint

Click Webhooks for more details.

Do you support Websockets?

Yes! Every service on hook.io is a capable of accepting Websocket ws:// connections.

Click Websockets for more details.

Why can't I start a server?

On hook.io, we don't allow the deployment of long running services aimed to start listening TCP or HTTP servers. This is by design.

The reasoning for this is simple, hook.io is a hosting platform for Microservices and Webhooks. Instead of deploying a server to our platform, you simply deploy a single function. This function can then be accessed through a unique URL which we provide.

In other words, we've already built a server for you! All you need to do is give us the code which will be mapped to a single route, which is the Microservice.


How can I create a Service?

Creating microservices on hook.io is very easy!

First, you'll need to register for a Free Developer Account. Once you have an account visit the /new page to create a new service.

When asked to build the service you'll need to provide a few key pieces of information such as:

Service Name / Service Code / explain defaults

Running your service

To run a service, simply visit the URL which was created with that service in your browser.

Any HTTP request from any source ( including streaming HTTP and Websockets ) will trigger the service to run. It's also possible to schedule services to run on a timer.

Here are some examples of using the command line tool cURL to run services on hook.io

Sending data to your service

All services are automatically capable of parsing most types of incoming HTTP request data including:

  • Query String Parameters
  • Form / Multipart Parameters
  • Streaming HTTP / Streaming Binary Data
  • JSON
Read More About Sending Data

Editing a Service

Login to your account and visit /services. From here you can click on the service name to load an editing page.

Private Services

Private services are an optional feature for paid account. A private service will be restricted for general access.

If a service is set to "Private", it will only be accessible through an API Access Key with an associated role of hook::run.

Read More About Access Keys and Roles


Logging and Events

Service Logs

hook.io provides a simple integrated interface for logging from any Hook service. This integrated logging service is can be helpful for Service debugging or monitoring.

Read more about Service Logs

System Events

All actions on hook.io are tracked internally as System Events. These events are useful for monitoring the actions your services are performing.

Read more about System Events


Multi-cloud Databases

supports multi-cloud databases across multiple providers

Supported Databases

  • Built-in Datastore
  • CouchDB
  • Redis
  • MongoDB
  • DynamoDB
  • more...
Read More About Databases

Multi-cloud Files

supports multi-cloud files across multiple providers

Cloud Providers

Read More About Files


Additional Resources

Documentation
Open-source Code
Feature Wishlist
Contact Us