9 Hasura Enterprise API Architecture

Resources

Apigee + Hasura:
Data APIs at Enterprise Scale

  1. External APIs (Apigee)
  1. Data APIs (Hasura)

REST

GraphQL

QoS

Data federation tasks

  1. Developer Portal
  1. Security

API misconfigurations

Bot attacks (Sense)

Security

BOLA (Broken Object Level Authorization)

model-based AuthZ

  1. API monetization, metering, and time to revenue

KPI - 1, Productivity (development cost)
(frontend developer experience and productivity

  1. results in faster Time to revenue
  1. Development Velocity
  1. (Design time) Governance
  1. (NFRs) Scalability, Security

Schema generation and real-time subscriptions

API generation capabilities

  1. API Gateway => manage Traffic (/routing), apply Security policies, and implement additional features specific to your API strategy

Hasura behind the API gateway

Hasura integrates with various 1. data sources, such as databases, 2. microservices, or 3. external APIs, to aggregate and compose the necessary data.

  1. Load balancing / reverse proxy(nginx-like use cases)

TLS termination

Sandbox

API design (Open API specification)

Partner on-boarding

  1. API Analytics

OAuth2, OIDC, JWT

API Product

REST

Different HTTP endpoints for different resources.
Different API calls to different URLs to fetch data

GraphQL

"single URL endpoint" that returns data based on the query.
Query is the "shape" of the final JSON data required.

schema => graph data model

Less dependency on API Developers

Subscription

Additional as compare to the REST

websocket

A GraphQL subscription is a subscription query string sent to a websocket endpoint. And whenever data changes on the backend, new data is pushed over websockets from the server to the client.

Questions

  1. For Developers' consumption perspective, how to provide standardized format for R and CUD APIs (REST based)?
  1. Aggregation of data across different systems? via APIs
  1. Aggregation across targets 1. data sources, such as databases, 2. microservices, or 3. external APIs, to aggregate and compose the necessary data.
  1. Supergraph?
  1. Security ?

Value proposition

  1. TTM (Faster Development)
  2. Productivity gain
  3. Performance for data retrieval