SDKs
Readme

Optare UI Readiness & SDK Documentation

Date: November 15, 2025
Status: ✅ UI Ready for Production
Base URL: https://id.optare.one


📋 Table of Contents

  1. UI Readiness Status
  2. Admin Portal
  3. Client Portal
  4. SDK Status
  5. Integration Points
  6. Feature Checklist

✅ UI Readiness Status

Overall Status: PRODUCTION READY

All UI components are implemented, tested, and ready for production use.

Components Status

ComponentStatusLocationReady
Admin Dashboard✅ Ready/admin/dashboardYes
Product Management UI✅ Ready/admin/productsYes
Subscription Management UI✅ Ready/admin/subscriptionsYes
OAuth Client Management✅ Ready/admin/oauth-clientsYes
Audit Logs UI✅ Ready/admin/audit-logsYes
Client Dashboard✅ Ready/portal/dashboardYes
Connected Apps UI✅ Ready/portal/oauth-clientsYes
Subscriptions UI✅ Ready/portal/subscriptionsYes
OAuth Authorization Screen✅ Ready/oauth/authorizeYes
OAuth Consent Screen✅ Ready/oauth/authorize (POST)Yes

👨‍💼 Admin Portal

Location

https://id.optare.one/admin

Access Requirements

  • Admin or Owner role in organization
  • Active session
  • Verified email

Features

1. Dashboard

URL: https://id.optare.one/admin/dashboard

Features:

  • Overview of products and subscriptions
  • Recent activity
  • Quick stats
  • Navigation to all admin features

UI Components:

  • Cards for key metrics
  • Charts for usage trends
  • Quick action buttons
  • Recent activity feed

2. Product Management

URL: https://id.optare.one/admin/products

Features:

  • List all products
  • Create new product
  • Edit product details
  • Delete products
  • View product usage

UI Components:

  • Product table with search/filter
  • Create product form
  • Edit product modal
  • Delete confirmation dialog
  • Product details panel

Form Fields:

- Product Name (required, text)
- Product Slug (required, text, unique)
- Description (optional, textarea)
- Features (array of strings)
- Status (active/inactive)
- Pricing (optional)

3. Subscription Management

URL: https://id.optare.one/admin/subscriptions

Features:

  • List all subscriptions
  • Create new subscription
  • Edit subscription details
  • Cancel subscriptions
  • View subscription history

UI Components:

  • Subscription table with filters
  • Create subscription form
  • Edit subscription modal
  • Cancel confirmation dialog
  • Subscription details panel

Form Fields:

- Organization (required, dropdown)
- Product (required, dropdown)
- Total Seats (required, number)
- Price Per Seat (required, decimal)
- Billing Cycle (required, monthly/yearly)
- Status (required, active/trial/cancelled/expired)
- End Date (optional, date picker)

4. OAuth Client Management

URL: https://id.optare.one/admin/oauth-clients

Features:

  • List all OAuth clients
  • Create new OAuth client
  • Edit client configuration
  • View client credentials
  • Enable/disable clients
  • Manage redirect URIs
  • Manage allowed origins
  • Manage allowed scopes

UI Components:

  • Client table with status indicators
  • Create client form (multi-step)
  • Edit client modal
  • Credentials display (with copy button)
  • URI management interface
  • Scope selection checkboxes

Form Fields:

Step 1: Basic Info
- Client Name (required, text)
- Client Description (optional, textarea)

Step 2: Redirect URIs
- Redirect URI (required, array of URLs)
- Add/Remove URI buttons

Step 3: CORS Origins
- Allowed Origin (optional, array of URLs)
- Add/Remove origin buttons

Step 4: Scopes
- Allowed Scopes (checkboxes)
- Standard OIDC scopes (openid, email, profile)
- Product scopes (product-specific)

Credentials Display:

Client ID: client_abc123def456
Client Secret: secret_xyz789uvw012
⚠️ Warning: Store securely, never share
[Copy] [Regenerate]

5. Audit Logs

URL: https://id.optare.one/admin/audit-logs

Features:

  • View all admin actions
  • Filter by action type
  • Filter by date range
  • Filter by user
  • Search by resource ID
  • Export logs

UI Components:

  • Audit log table
  • Filter panel
  • Date range picker
  • Export button
  • Log detail modal

Log Fields:

- Timestamp
- User
- Action (product.created, subscription.updated, etc.)
- Resource ID
- Changes (before/after)
- IP Address
- Status (success/failure)

👥 Client Portal

Location

https://id.optare.one/portal/dashboard

Access Requirements

  • User account
  • Active session
  • Organization membership

Features

1. Dashboard

URL: https://id.optare.one/portal/dashboard

Features:

  • User profile overview
  • Active subscriptions summary
  • Connected apps count
  • Quick links to features
  • Recent activity

UI Components:

  • User profile card
  • Subscription summary cards
  • Connected apps count
  • Quick action buttons
  • Activity feed

2. Connected Apps

URL: https://id.optare.one/portal/oauth-clients

Features:

  • List all connected applications
  • View app permissions
  • View last access time
  • Revoke app access
  • Remove app from account

UI Components:

  • App card grid
  • App details modal
  • Permissions list
  • Revoke button
  • Last access timestamp
  • App icon/logo

App Card Shows:

- App Name
- App Icon
- Permissions Granted
- Last Accessed: [date/time]
- [Revoke Access] button

3. Subscriptions

URL: https://id.optare.one/portal/subscriptions

Features:

  • List all active subscriptions
  • View subscription details
  • View seat usage
  • View billing information
  • Download invoices

UI Components:

  • Subscription cards
  • Subscription details modal
  • Seat usage progress bar
  • Billing information
  • Invoice list
  • Download button

Subscription Card Shows:

- Product Name
- Status (Active/Trial/Expired)
- Seats: X/Y used
- Billing: Monthly/Yearly
- Price: $X.XX per seat
- Expires: [date]
- [View Details] button

4. Products

URL: https://id.optare.one/portal/products

Features:

  • List all available products
  • View product details
  • View product features
  • View usage statistics
  • Access product documentation

UI Components:

  • Product card grid
  • Product details modal
  • Features list
  • Usage statistics
  • Documentation links

🔐 OAuth Authorization UI

Authorization Screen

URL: https://id.optare.one/oauth/authorize

Features:

  • Display application requesting access
  • Show user information
  • List permissions requested
  • Show product access
  • Accept/Deny buttons

UI Components:

  • Application info card
  • User info display
  • Permissions list
  • Product access badges
  • Security notice
  • Accept/Deny buttons

Screen Shows:

┌─────────────────────────────────────┐
│ Authorize Application               │
├─────────────────────────────────────┤
│                                     │
│ Application: My App                 │
│ Requesting access to your account   │
│                                     │
│ User: John Doe (john@example.com)   │
│                                     │
│ Permissions Requested:              │
│ ✓ Email                             │
│ ✓ Profile                           │
│ ✓ Otomate Social Pro                │
│                                     │
│ [Cancel]  [Authorize]               │
│                                     │
└─────────────────────────────────────┘

🔧 SDK Status

Current SDK Status

Status:SDK Present and Ready

The Optare API Client SDK is fully implemented in the codebase:

Location: npm install @optare/optareid-js

Features:

  • Full TypeScript support
  • Type-safe API calls
  • Automatic error handling
  • Request/response interceptors
  • Timeout management
  • Comprehensive JSDoc documentation

SDK Functions

// Product Management
export const createProduct = (input: ProductInput) => Promise<OptareProduct>
export const getProduct = (slug: string) => Promise<OptareProduct>
export const listProducts = () => Promise<OptareProduct[]>
 
// Subscription Management
export const createSubscription = (input: SubscriptionInput) => Promise<OptareSubscription>
export const getSubscription = (id: string) => Promise<OptareSubscription>
export const listSubscriptions = () => Promise<OptareSubscription[]>
export const updateSubscription = (id: string, updates: Partial<SubscriptionInput>) => Promise<OptareSubscription>
export const cancelSubscription = (id: string) => Promise<OptareSubscription>

SDK Types

interface ProductInput {
  name: string;
  slug: string;
  description?: string;
  features?: string[];
}
 
interface SubscriptionInput {
  organizationId: string;
  productId: string;
  totalSeats: number;
  pricePerSeat: number;
  billingCycle: 'monthly' | 'yearly';
  status: 'active' | 'trial' | 'cancelled' | 'expired';
  endDate?: string;
}
 
interface OptareProduct {
  id: string;
  name: string;
  slug: string;
  description?: string;
  features: string[];
  createdAt: Date;
}
 
interface OptareSubscription {
  id: string;
  organizationId: string;
  productId: string;
  totalSeats: number;
  pricePerSeat: number;
  billingCycle: 'monthly' | 'yearly';
  status: 'active' | 'trial' | 'cancelled' | 'expired';
  endDate?: Date;
  createdAt: Date;
}

SDK Usage

import {
  createProduct,
  listProducts,
  createSubscription,
  listSubscriptions,
} from '@optare/optareid-js';
 
// Create product
const product = await createProduct({
  name: 'My Product',
  slug: 'my-product',
  features: ['Feature 1', 'Feature 2'],
});
 
// List products
const products = await listProducts();
 
// Create subscription
const subscription = await createSubscription({
  organizationId: 'org_123',
  productId: product.id,
  totalSeats: 100,
  pricePerSeat: 29.99,
  billingCycle: 'monthly',
  status: 'active',
});
 
// List subscriptions
const subscriptions = await listSubscriptions();

🔗 Integration Points

Client App to Optare ID Connection

Flow 1: OAuth Authorization

Client App                          Optare ID
    │                                  │
    ├─ User clicks "Login" ────────────>│
    │                                  │
    │<─ Redirect to /oauth/authorize ──┤
    │                                  │
    ├─ User logs in ────────────────────>│
    │                                  │
    │<─ Show consent screen ────────────┤
    │                                  │
    ├─ User grants consent ────────────>│
    │                                  │
    │<─ Redirect with code ─────────────┤
    │                                  │
    ├─ Exchange code for token ────────>│
    │                                  │
    │<─ Return access token ────────────┤
    │                                  │
    ├─ Use token for API calls ────────>│
    │                                  │
    │<─ Return user data ───────────────┤
    │                                  │

Flow 2: API Integration

Client App                          Optare ID
    │                                  │
    ├─ API Request ─────────────────────>│
    │  (with access token)             │
    │                                  │
    │<─ API Response ────────────────────┤
    │                                  │

Admin to Optare ID Connection

Admin Portal                        Optare ID
    │                                  │
    ├─ Admin logs in ───────────────────>│
    │                                  │
    │<─ Session created ─────────────────┤
    │                                  │
    ├─ Create product ──────────────────>│
    │  (via UI or API)                 │
    │                                  │
    │<─ Product created ─────────────────┤
    │                                  │
    ├─ Create subscription ────────────>│
    │  (via UI or API)                 │
    │                                  │
    │<─ Subscription created ───────────┤
    │                                  │

✅ Feature Checklist

Admin Features

  • ✅ Dashboard
  • ✅ Product Management (CRUD)
  • ✅ Subscription Management (CRUD)
  • ✅ OAuth Client Management
  • ✅ Audit Logs
  • ✅ API Key Management
  • ✅ User Management
  • ✅ Organization Management
  • ✅ Settings

Client Features

  • ✅ Dashboard
  • ✅ Connected Apps Management
  • ✅ Subscription Viewing
  • ✅ Product Access
  • ✅ Profile Management
  • ✅ Account Settings
  • ✅ Security Settings

OAuth Features

  • ✅ Authorization Endpoint
  • ✅ Token Endpoint
  • ✅ UserInfo Endpoint
  • ✅ OIDC Discovery
  • ✅ JWKS Endpoint
  • ✅ PKCE Support
  • ✅ Refresh Token Rotation
  • ✅ Session Management

API Features

  • ✅ Product CRUD
  • ✅ Subscription CRUD
  • ✅ Organization Management
  • ✅ User Management
  • ✅ OAuth Client Management
  • ✅ Audit Logging
  • ✅ Error Handling
  • ✅ Rate Limiting

🚀 Deployment Status

Pre-Deployment Checklist

  • ✅ UI components implemented
  • ✅ OAuth endpoints working
  • ✅ API endpoints working
  • ✅ Database schema ready
  • ✅ Authentication working
  • ✅ Authorization working
  • ✅ Error handling implemented
  • ✅ Logging implemented
  • ✅ Security measures in place
  • ✅ Documentation complete

Production Ready

Status:YES

All UI components, OAuth flows, and API endpoints are production-ready and can be deployed immediately.


📞 Support

Admin Support

Client Support


Status: ✅ Production Ready
Last Updated: November 15, 2025
Base URL: https://id.optare.one (opens in a new tab) (Single Domain)