Zum Inhalt springen
SAP, DATEV and Dynamics experts
REST and GraphQLOAuth 2.0OpenAPI documentation

APIs that connect systems and accelerate processes

We design and implement REST and GraphQL APIs that connect your online shop with ERP, PIM, CRM and accounting. Every API is dimensioned for your specific data volumes, secured with robust authentication mechanisms and made accessible through comprehensive documentation for all development teams involved.

Not every system provides the interfaces your integration project requires. Existing APIs are often too granular, too slow or functionally incomplete for the specific requirements of a shop integration. Our API development closes these gaps: we design, implement and document tailored APIs that serve as mediation layers between your shop and connected systems. Whether SAP connectivity, DATEV integration or connecting with a PIM system, every API is precisely tailored to the data flows and performance requirements of your project.

REST vs. GraphQL: The right architecture for your use case

The choice between REST and GraphQL is not an ideological decision but a technical one. Both architectures have specific strengths that predestine them for different scenarios. In many of our projects, we deploy both technologies in parallel, each where they provide the greatest advantage.

FeatureREST APIGraphQL API
Data queryingFixed endpoints with predefined data structureFlexible queries, client determines data structure
Network loadFrequently over-fetching or under-fetchingExactly the needed data, minimal network load
CachingHTTP caching natively supported (ETags, Cache-Control)Requires custom caching strategy
DocumentationOpenAPI/Swagger as de facto standardSchema-based self-documentation
Best suited forCRUD operations, standard data flows, broad compatibilityComplex queries, variable data needs, mobile scenarios

Six quality characteristics of our APIs

Authentication and Authorization

OAuth 2.0 with Client Credentials for server-to-server communication and Authorization Code Flow for user-based access. API keys as fallback for simpler scenarios. Role-based access control at endpoint level.

Rate Limiting and Throttling

Configurable rate limits per API key, endpoint and time window. Token bucket algorithm for even load distribution. Transparent communication of limits via HTTP headers (X-RateLimit-*).

Versioning

URL-based or header-based versioning for parallel operation of old and new API versions. Deprecation policy with defined sunset periods and automatic consumer notification.

OpenAPI Documentation

Every REST API ships with a complete OpenAPI 3.0 specification. Interactive documentation via Swagger UI, Postman collections and code generators for common programming languages.

Monitoring and Logging

Every API call is logged: request, response, latencies and errors. Dashboards visualize usage patterns, performance metrics and error rates. Automatic alerts on threshold exceedances.

Error Handling and Retry

Structured error responses with machine-readable error codes and human-readable descriptions. Idempotent endpoints enable safe retry of failed requests. Webhooks for asynchronous notifications.

API design principles for long-lived interfaces

A well-designed API outlives multiple generations of frontend applications. That is why we follow principles that prioritize longevity, maintainability and extensibility. The domain model determines the resource structure, not the database structure. Endpoints represent business objects, not tables. Pagination and cursor-based navigation are built in from the start, not retrofitted.

Backward compatibility is particularly important. Every API change is tested against existing consumers: new fields are added as optional, never introduced as required. Existing fields are never removed, only marked as deprecated at most. And when a breaking change is unavoidable, a new API version is introduced while the old version continues operating for a defined period.

Webhooks and Event-Driven Architecture

Beyond classic request-response APIs, we implement webhook-based event systems that send push notifications to registered endpoints when relevant events occur. An example: when a product is updated in the ERP, the API sends a webhook to the shop, which then updates the product data. This pattern eliminates the need for regular polling queries, reduces latency and lowers network load.

Our webhook implementations are robust against typical failure cases: automatic retry mechanisms with exponentially growing wait times, signature verification for spoofing protection, dead-letter handling for undeliverable events and a webhook management interface for registering, deactivating and testing endpoints. Combined with message queues, this creates a fully event-driven architecture that reliably orchestrates even complex system landscapes.

API testing and quality assurance

Every API undergoes a multi-stage testing process. Unit tests secure the business logic of individual endpoints. Integration tests verify correct communication with connected systems. Load tests validate performance under realistic conditions. And contract tests ensure that API changes do not break existing consumers.

Additionally, we employ automated API monitoring tools that continuously monitor availability, response times and error rates of all endpoints. When an endpoint becomes slower, exhibits an unexpected error rate or changes its response structure, alerts are automatically triggered. This proactive monitoring ensures problems are detected before they impact business operations.

API development in the context of the overall architecture

APIs are never isolated. They are part of an integration architecture connecting ERP, shop, middleware and third-party systems. During design, we therefore always consider the overall context: which systems consume the API? What data volumes are expected? What are the availability and latency requirements? And how is the API embedded in the existing middleware architecture?

This holistic approach prevents APIs from being optimal in isolation but causing problems in interplay with other components. An example: an API that performs well in isolation can become a bottleneck when combined with synchronous ERP connectivity if ERP response times fluctuate. In such cases, we recommend asynchronous patterns with message queues that decouple endpoint latency from ERP performance. Contact us for advice on your API architecture.

API security: Protecting sensitive business data

APIs frequently transmit sensitive business data: customer-specific prices, order information, stock levels and personal data. Protecting this data requires a multi-layered security concept. At the transport level, we encrypt all data transfers via TLS 1.3. At the application level, we implement OAuth 2.0 with short-lived access tokens and refresh token rotation. Rate limiting protects endpoints against denial-of-service scenarios. And IP whitelisting restricts access to known servers.

Particularly important is authorization at the data level: an API consumer may only access data relevant to their purpose. The shop connector sees product data and prices but not accounting documents. The DATEV connector sees invoices and payments but not customer master data. We implement this granular access control through role-based scopes in the OAuth 2.0 token, validated server-side with every API call.

GraphQL for flexible data queries

In many integration scenarios, the consumer needs different slices of the same data: the product overview in the shop needs name, price and image. The detail page needs description, technical data and availability additionally. Order processing needs item number, quantity and weight. With REST, either separate endpoints would need to be created for each use case or all data bundled in one endpoint, leading to over-fetching.

GraphQL solves this problem elegantly: the consumer defines exactly which fields are needed in the query and receives precisely that data, no more and no less. This reduces network load, improves load times and eliminates the need to develop a new endpoint for each new use case. We deploy GraphQL particularly where different frontends (shop, mobile app, B2B portal) need different data views on the same sources.

API documentation as project success enabler

An undocumented API is technical debt that multiplies with each integration. That is why we deliver complete documentation with every API: OpenAPI 3.0 specification as a machine-readable contract between producer and consumer. Interactive Swagger UI documentation for developers who can test endpoints directly in the browser. Postman collections with preconfigured example calls for quick onboarding. And an architecture document describing design decisions, data models and error handling strategies.

This documentation is important not just for initial development but especially for long-term maintenance. When a new developer needs to extend an integration in two years, the documentation contains everything needed: endpoints, data formats, authentication, error handling and the business logic behind technical decisions. This investment in documentation pays for itself many times over the API's entire lifetime.

API Security and Authentication

Security in API development is not a retroactive feature but an architectural foundation. Every API we develop implements multi-layered security measures: OAuth 2.0 with PKCE flow for authentication, JWT-based authorization with short token lifetimes and refresh mechanism, rate limiting for protection against overload and abuse, and input validation and output encoding to prevent injection attacks. For particularly sensitive integrations, such as payment processing or health data, we additionally deploy mutual TLS and HMAC signatures. All security measures are documented and covered by automated security tests.

API Versioning and Backward Compatibility

APIs are long-lived interfaces that must evolve without breaking existing consumers. We implement versioning strategies that ensure backward compatibility: URL-based versioning for public APIs, header-based versioning for internal systems and feature flags for gradual rollouts. Deprecation policies define clear timelines and communication channels so all stakeholders have sufficient time for migration. Automated contract tests ensure that new API versions comply with defined interface contracts and do not introduce unintended breaking changes.

Monitoring and Observability for APIs

An API without monitoring is a black box. We instrument every API with structured logging, distributed tracing and metrics collection. Dashboards display request volume, response times, error rates and utilization in real time. Alerting rules notify on anomalies: sudden increase in error rate, exceeding defined latency thresholds or unexpected traffic patterns. This observability enables fast error diagnosis and proactive capacity planning, ensuring your API remains reliable even under load spikes.

Documentation and Knowledge Transfer

Every API we develop is fully documented: OpenAPI specification (Swagger), authentication guide, example requests and error code reference. This documentation enables your internal team or third-party providers to integrate the API independently. For complex integrations, we additionally offer onboarding sessions where we explain architecture decisions and demonstrate typical integration patterns. Our goal is that after project completion you can work with the API fully autonomously without depending on us.

Documentation is maintained as part of the project and updated with every API change. Versioned changelogs inform about new endpoints, changed parameters and deprecations. Automated tests verify documentation against the actual implementation and ensure specification and code always remain synchronized. This investment in documentation quality saves support effort long-term and significantly accelerates integration of new consumers.

Long-Term API Support

APIs are long-lived infrastructure that must grow with connected systems. Our maintenance packages include proactive monitoring of all API endpoints, timely adaptation to changes in consuming systems and quarterly reviews of API performance, error rates and usage patterns. Through continuous monitoring, we detect trends early: rising latency indicates scaling needs, increasing error rates point to integration issues. This proactive support ensures your API remains permanently reliable and performant and keeps pace with your growing requirements.

API Design Following Proven Principles

Good API design follows established principles: consistent naming, predictable URL structures, standards-compliant HTTP status codes, meaningful error messages and pagination for large datasets. We implement RESTful APIs according to the OpenAPI standard, which not only accelerates development but also significantly simplifies integration by third parties. For real-time requirements, we use WebSocket connections or Server-Sent Events; for batch processing, asynchronous job queues with status polling. The choice of right API architecture depends on the use case, and our experience helps make the optimal decision for your specific requirements.

Our API development experience spans projects of various scales: from focused single interfaces connecting a specific third-party provider to comprehensive API platforms functioning as central data hubs between shop, ERP, PIM and additional systems. In every case: clean design, comprehensive testing and complete documentation are not options but fundamental prerequisites for professional interface development.

In a free initial consultation, we analyze your existing system landscape and provide a well-founded assessment of which API architecture is best suited for your specific requirements. Whether REST, GraphQL or event-based: we advise technology-neutrally and recommend the solution that best fits your project long-term.

Frequently asked questions about API development