Introduction

Contents

Introduction#

Product#

MOIA’s Ridepooling API enables the key functionality and intelligence to execute and offer a state-of-the-art Ridepooling Service in cities. This product works with Trips which are ordered by Customers.

MOIAs Ridepooling API supports the following use cases:

  1. Register Customers for the Ridepooling Service

  2. Request Trip Offers for a Customer

  3. Order a Trip

  4. Get updates of a Trip

  5. Cancel a Trip as a Customer or Integrator

  6. Send Feedback for a Trip

For a glossary of the relevant terms used in the Ridepooling API, see Glossary.

Technology#

The Ridepooling API is designed with gRPC, leverages HTTP/2 for efficient, high-performance communication and Protobuf for compact, type-safe serialization of data. This API is defined through .proto files, establishing a clear, strict contract for each Service and operation offered. With gRPC, the Ridepooling API supports both unary and streaming requests, enabling real-time, bidirectional communication for enhanced interactivity and responsiveness.

Distinctively, the Ridepooling API maintains separate environments for production and integration operations, dictated by the URL, and API keys included in the gRPC metadata for authentication. The Ridepooling API is available under the following base URLs for the different environments:

  • Integration: ridepooling-api.int.eu-central-1.moia-group.io

  • Production: coming soon 🚧

Operations in the Ridepooling API are designed to be single-object focused, in line with gRPC’s standard practice of handling one request-response pair per RPC call, thereby not supporting bulk updates natively.

To accommodate varying needs, the Ridepooling API is versioned, allowing for the release of new features and the customization of functionalities. This versioning is managed through different Service definitions or updated Protobuf message types. Users can access documentation and API explorers that are automatically generated from the .proto files, providing a tailored experience that aligns with their specific version of the API, test key, and data. This ensures that users always have access to the most relevant and up-to-date information for their integration needs.