APIEngine - Data Models

APIEngine gives you two powerful data model products — ready-to-use system models and fully customizable schemas — both accessible through the same deterministic APIs.

Data Models that Power Every API

Store, validate, and expose data through stable, deterministic APIs — without designing databases or rewriting backend code.

  • ⚙️ Prebuilt / Standard Objects for platform needs
  • 🧩 Custom Objects for your business data
  • 🔒 Strict validation & predictable responses
  • 🚀 Instant CRUD & bulk APIs
Drawstring top with elastic loop closure and textured interior padding.

🧩 Two Products — One Platform

APIEngine gives you two powerful data model products — Standard and Custom — both unique in their offerings, use cases, and schemas.

Capability Standard Models Custom Models
Schema Control
CRUD APIs
Bulk Operations
Validation Rules Built-in Configurable
Schema Evolution Managed Versioned
Indexed Fields Optimized Selectable
UI Auto-Generation
Primary Use Case Platform Data Business Data

Standard Objects

Standard Objects are predefined, platform-managed schemas provided by APIEngine to cover the most common application use cases out of the box.

These Standard Objects are:

  • Production-ready
  • Strictly validated
  • Optimized for querying and scale
  • Guaranteed to remain backward compatible

You don’t design these schemas — you use them immediately via stable APIs.

Think of Standard Objects as the core building blocks every modern application needs.

What Makes Standard Objects Different?

  • 🔒 Schema is controlled by APIEngine
  • 📐 Fields are strictly typed and validated
  • 🔄 Soft-deletion & lifecycle management built-in
  • ⚡ Indexed for fast querying
  • 🧠 Uniform behavior across all APIs

Every Standard Object:

  • Uses a UUID-based primary identifier
  • Supports soft delete
  • Tracks creation metadata
  • Exposes deterministic CRUD APIs

The 5 Standard Objects in APIEngine

These objects are intentionally chosen to cover users, commerce, operations, and support — without overfitting.

👤 Standard User

Represents end users or application-level users

What is it designed for?

  • User directories
  • Application accounts
  • Ownership & attribution across records

Key Capabilities

  • Enforced email uniqueness (active users only)
  • Soft delete with recovery support
  • Platform-owned vs user-created distinction

Model/Object Schema

Field Data Type Required Accepted Values / Examples
uuid UUID Auto-generated UUID v4 (read-only)
first_name String Max 50 characters
Example: John
last_name String Max 50 characters
Example: Doe
email Email Valid email format
Example: user@example.com
Must be unique among active users
is_active Boolean true or false
Default: true
created_at Datetime ISO-8601 timestamp
Auto-generated (read-only)
created_by_username String Username of creator
Returns platform if system-owned

🏢 Company

Represents organizations, businesses, or accounts

What is it designed for?

  • B2B customer accounts
  • Partner and vendor management
  • Account-level data grouping

Key Capabilities

  • Industry and geography-based filtering
  • Soft deletion for compliance-safe retention
  • Optimized for account-level analytics

Model/Object Schema

Field Data Type Required Accepted Values / Examples
uuid UUID Auto-generated UUID v4 (read-only)
name String Max 100 characters
Example: Acme Corporation
industry String Industry classification
Example: Technology
country String Country name or ISO country name
Example: India
employee_count Integer Positive integer
Example: 250
created_at Datetime ISO-8601 timestamp
Auto-generated (read-only)
created_by_username String Username of creator
Returns platform if system-owned

📦 Product

Represents catalog items or sellable products

What is it designed for?

  • Product catalogs
  • Inventory-driven applications
  • Pricing and availability APIs

Key Capabilities

  • Currency-safe pricing
  • Stock and availability tracking
  • Filterable by category and rating

Model/Object Schema

Field Data Type Required Accepted Values / Examples
uuid UUID Auto-generated UUID v4 (read-only)
name String Max 100 characters
Example: Wireless Mouse
category String Product category
Example: Electronics
price Decimal Monetary value with 2 decimal places
Example: 1999.99
currency Picklist Allowed values:
INR, USD, EUR
in_stock Boolean true or false
Default: true
stock_count Integer Positive integer
Example: 150
product_rating Float Rating scale (0.0 – 5.0)
Example: 4.5
created_at Datetime ISO-8601 timestamp
Auto-generated (read-only)
created_by_username String Username of creator
Returns platform if system-owned

🧾 Order

Represents transactional and payment-related records

What is it designed for?

  • E-commerce transactions
  • Payment and billing workflows
  • Financial audit trails

Key Capabilities

  • Multiple payment method support
  • Clear lifecycle status tracking
  • Audit-safe soft deletion

Model/Object Schema

Field Data Type Required Accepted Values / Examples
uuid UUID Auto-generated UUID v4 (read-only)
order_number String Unique order identifier
Example: ORD-2025-0001
customer_email Email Valid email format
Example: buyer@example.com
order_amount Decimal Total order value (2 decimal places)
Example: 2499.00
payment_method Picklist Allowed values:
CARD, UPI, NET_BANKING
payment_status Picklist Allowed values:
SUCCESS, FAILED, PENDING
transaction_reference String Payment gateway reference ID
Example: TXN98347291
is_refundable Boolean true or false
Default: false
order_date Date Order date (YYYY-MM-DD)
Example: 2025-01-07
discount_applied Float Percentage value (0–100)
Example: 10.5
status Picklist Allowed values:
PENDING, PAID, CANCELLED
created_at Datetime ISO-8601 timestamp
Auto-generated (read-only)
created_by_username String Username of creator
Returns platform if system-owned

🎫 Support Ticket

Represents customer or internal support requests

What is it designed for?

  • Customer support workflows
  • Internal issue tracking
  • Priority-based escalation

Key Capabilities

  • Clear ticket lifecycle states
  • Priority-based querying
  • Audit-safe soft deletion

Model/Object Schema

Field Data Type Required Accepted Values / Examples
uuid UUID Auto-generated UUID v4 (read-only)
ticket_number String Unique support ticket identifier
Example: TICKET-10245
subject String Brief issue summary (max 200 characters)
Example: Unable to reset password
status Picklist Allowed values:
OPEN, IN_PROGRESS, CLOSED
priority Picklist Allowed values:
LOW, MEDIUM, HIGH
created_at Datetime ISO-8601 timestamp
Auto-generated (read-only)
created_by_username String Username of ticket creator
Returns platform if system-owned