{"message":"Storemate Backend API - Complete Inventory Management System","version":"1.0.0","status":"running","description":"Complete inventory management system with OTP authentication, email tracking, subscription management, support system, and comprehensive reporting","documentation":{"swagger_ui":"/api/docs/","markdown_docs":"/api/docs/markdown/","browsable_api":"/api/","admin_interface":"/admin/"},"quick_start":{"1_register":"POST /api/auth/register/ with email, password, first_name, last_name","2_verify_email":"POST /api/auth/verify-email/ with OTP code from email","3_login":"POST /api/auth/login/ with email and password","4_use_api":"Include Authorization: Bearer <access_token> header for authenticated endpoints","5_docs_login":"Open /api/docs-login/ to sign in and jump into Swagger with your token pre-applied","6_refresh_token":"POST /api/token/refresh/ when access token expires"},"endpoints":{"authentication":{"register":{"url":"/api/auth/register/","method":"POST","description":"Register new user with OTP verification","body":{"email":"string","password":"string","first_name":"string","last_name":"string"}},"login":{"url":"/api/auth/login/","method":"POST","description":"Login user and get JWT tokens","body":{"email":"string","password":"string"}},"check_email":{"url":"/api/auth/check-email/","method":"GET or POST","description":"Check if email is available for registration","body":{"email":"string (query or body)"}},"verify_email":{"url":"/api/auth/verify-email/","method":"POST","description":"Verify email with OTP code","body":{"email":"string","otp_code":"string"}},"resend_verification":{"url":"/api/auth/resend-verification/","method":"POST","description":"Resend email verification OTP","body":{"email":"string"}},"forgot_password":{"url":"/api/auth/forgot-password/","method":"POST","description":"Request password reset OTP","body":{"email":"string"}},"reset_password":{"url":"/api/auth/reset-password/ or /api/auth/reset-password","method":"POST","description":"Reset password with OTP","body":{"email":"string","otp_code":"string","new_password":"string"}},"resend_password_reset":{"url":"/api/auth/resend-password-reset/","method":"POST","description":"Resend password reset OTP","body":{"email":"string"}},"change_password":{"url":"/api/auth/change-password/","method":"POST","description":"Change password (requires authentication)","body":{"current_password":"string","new_password":"string"},"headers":{"Authorization":"Bearer <access_token>"}},"token_refresh":{"url":"/api/token/refresh/","method":"POST","description":"Refresh JWT access token","body":{"refresh":"string"}}},"user_management":{"users":{"url":"/api/users/","description":"User management (CRUD operations)","authentication":"Required"},"profiles":{"url":"/api/profiles/","description":"User profile management","authentication":"Required"},"profile_setup":{"url":"/api/profiles/me/","description":"Get or update my profile (profile setup)","authentication":"Required"},"payment_methods":{"url":"/api/payment-methods/","description":"Payment method management","authentication":"Required"}},"teams":{"list":{"url":"/api/teams/","method":"GET","description":"List the authenticated user's visible team."},"create":{"url":"/api/teams/","method":"POST","description":"Create the authenticated user's only team. Owner is auto-added as owner member."},"add_member":{"url":"/api/teams/{id}/add-member/","method":"POST","description":"Owner-only. Add a user to the team. A user can belong to only one team overall."},"recent_activity":{"url":"/api/teams/recent-activity/","method":"GET","description":"Recent activity visible to the user's collaboration scope."}},"inventory_management":{"inventory_icons":{"url":"/api/inventory-icons/","description":"Inventory icons (name, value/emoji, icon_image). List for dropdown; POST/PUT/PATCH support icon_image PNG upload.","authentication":"Required"},"inventory_types":{"url":"/api/inventory-types/","description":"Inventory types (name, icon FK from /api/inventory-icons/). POST/PUT/PATCH send icon (ID).","authentication":"Required"},"inventories":{"url":"/api/inventories/","description":"Inventory management (CRUD operations)","authentication":"Required"},"storage_boxes":{"url":"/api/storage-boxes/","description":"Storage box management","authentication":"Required"},"inventory_items":{"url":"/api/inventory-items/","description":"Inventory item management","authentication":"Required"},"inventory_transactions":{"url":"/api/inventory-transactions/","description":"Inventory transaction history","authentication":"Required"},"inventory_alerts":{"url":"/api/inventory-alerts/","description":"Inventory alert management","authentication":"Required"}},"product_management":{"products":{"url":"/api/products/","description":"Product catalog management","authentication":"Required"},"product_families":{"url":"/api/product-families/","description":"Product family management","authentication":"Required"},"product_images":{"url":"/api/product-images/","description":"Product image management","authentication":"Required"},"barcode_scans":{"url":"/api/barcode-scans/","description":"Barcode scan history","authentication":"Required"},"product_searches":{"url":"/api/product-searches/","description":"Product search history","authentication":"Required"}},"curated_lists":{"curated_lists":{"url":"/api/curated-lists/","description":"Curated product lists","authentication":"Required"},"curated_subscriptions":{"url":"/api/curated-subscriptions/","description":"Curated list subscriptions","authentication":"Required"},"curator_earnings":{"url":"/api/curator-earnings/","description":"Curator earnings tracking","authentication":"Required"}},"subscriptions":{"subscription_plans":{"url":"/api/subscription-plans/","description":"Subscription plan management","authentication":"Required"},"user_subscriptions":{"url":"/api/user-subscriptions/","description":"User subscription management","authentication":"Required"},"billing_history":{"url":"/api/billing-history/","description":"Billing history tracking","authentication":"Required"},"partner_subscriptions":{"url":"/api/partner-subscriptions/","description":"Partner user subscriptions","authentication":"Required"}},"reports_analytics":{"reports":{"url":"/api/reports/","description":"Report generation and management","authentication":"Required"},"order_lists":{"url":"/api/order-lists/","description":"Order list management","authentication":"Required"},"order_list_items":{"url":"/api/order-list-items/","description":"Order list item management","authentication":"Required"},"report_schedules":{"url":"/api/report-schedules/","description":"Scheduled report management","authentication":"Required"},"analytics":{"url":"/api/analytics/","description":"Analytics data and insights","authentication":"Required"}},"transactions_audit":{"transaction_logs":{"url":"/api/transaction-logs/","description":"Transaction log management","authentication":"Required"},"gdpr_exports":{"url":"/api/gdpr-exports/","description":"GDPR data export requests","authentication":"Required"},"gdpr_deletions":{"url":"/api/gdpr-deletions/","description":"GDPR data deletion requests","authentication":"Required"},"system_audit_logs":{"url":"/api/system-audit-logs/","description":"System audit log management","authentication":"Required"}},"utility_endpoints":{"scan_barcode":{"url":"/api/scan-barcode/","method":"POST","description":"Scan barcode and process product information","authentication":"Required"},"process_image":{"url":"/api/process-image/","method":"POST","description":"Process image with OCR","authentication":"Required"},"generate_report":{"url":"/api/generate-report/","method":"POST","description":"Generate custom reports","authentication":"Required"},"create_order_list":{"url":"/api/create-order-list/","method":"POST","description":"Create order lists","authentication":"Required"},"gdpr_export_request":{"url":"/api/gdpr-export-request/","method":"POST","description":"Request GDPR data export","authentication":"Required"},"gdpr_deletion_request":{"url":"/api/gdpr-deletion-request/","method":"POST","description":"Request GDPR data deletion","authentication":"Required"},"stripe_webhook":{"url":"/api/stripe/webhook/","method":"POST","description":"Stripe webhook handler","authentication":"None (webhook)"},"health_check":{"url":"/api/health/","method":"GET","description":"API health check","authentication":"None"}},"otp_management":{"otp_history":{"url":"/api/auth/otp/history/","method":"GET","description":"View OTP history (admin)","authentication":"Required"},"otp_cleanup":{"url":"/api/auth/otp/cleanup/","method":"POST","description":"Cleanup expired OTPs (admin)","authentication":"Required"}}},"authentication_info":{"jwt_tokens":{"access_token":"Valid for 15-60 minutes","refresh_token":"Valid for 7-30 days","refresh_endpoint":"/api/token/refresh/"},"otp_system":{"email_verification":"6-digit OTP sent to email","password_reset":"6-digit OTP for password reset","expiry":"10-15 minutes"}},"admin_interface":{"url":"/admin/","description":"Django admin interface for managing:","features":["User management","OTP management and tracking","Email communication tracking","SMTP log monitoring","Email template management","All model CRUD operations"]}}