generated: '2026-09-26' method: derived generator: derive-data-model.py source: - openapi/autonomous-solutions-openapi.json notation: has_one = property $ref; has_many = array of $ref; belongs_to = _id field summary: entities: 77 entities_in_spec: 77 relationships: 20 entities: - name: ActiveDealDisplaySchema fields: 6 description: Schema for displaying active deals in the banner - name: ApplePayRequestSchema fields: 3 - name: ApplyRewardRequestSchema fields: 5 description: Schema for applying a reward to the cart - name: ApplyRewardResponseSchema fields: 7 description: Response schema for applying rewards - name: BgTaskResponse fields: 1 - name: BinStatus fields: 5 description: Status information for an individual bin. - name: Body_calculate_potential_earnings_users_loyalty_calculate_earnings_post fields: 1 - name: Body_create_deal_from_owner_deals_create_from_owner_post fields: 2 - name: Body_create_hub_banner_hubs_owner_banners_post fields: 3 - name: Body_update_user_profile_image_users_user_profile_image_patch fields: 1 - name: CardPaymentRequestSchema fields: 5 - name: CartItemSchema fields: 5 description: Schema for cart items when checking eligibility - name: CeleryWorkerResponse fields: 4 - name: CheckEligibilityRequestSchema fields: 6 description: Schema for checking if cart meets deal trigger conditions - name: CheckEligibilityResponseSchema fields: 1 description: Response schema for eligibility check - name: ClientSecretSchema fields: 1 - name: ConfirmPaymentSchema fields: 5 - name: DealConstraintBaseSchema fields: 7 - name: DealConstraintRetrieveSchema fields: 8 - name: DealCreateSchema fields: 13 - name: DealRedemptionStatusSchema fields: 6 description: Schema for deal redemption status (owners app) - name: DealRetrieveSchema fields: 16 - name: DealRewardBaseSchema fields: 6 - name: DealRewardRetrieveSchema fields: 7 - name: DealTriggerBaseSchema fields: 10 - name: DealTriggerRetrieveSchema fields: 11 - name: DealUpdateSchema fields: 10 - name: DroppedItem fields: 2 - name: EligibleDealSchema fields: 9 description: Schema for deals that the cart is eligible for - name: GeoJsonLocation fields: 2 - name: GooglePayRequestSchema fields: 3 - name: GuestCardPaymentSchema fields: 4 - name: GuestClaimOrderResponseSchema fields: 1 - name: GuestClaimOrderSchema fields: 2 - name: GuestContactSchema fields: 3 - name: GuestSessionCreateSchema fields: 4 - name: GuestSessionResponseSchema fields: 3 - name: HTTPValidationError fields: 1 - name: HubDefaultRequest fields: 1 - name: HubEvent fields: 2 - name: HubNameLookupRequest fields: 3 - name: HubStatusUpdateRequest fields: 1 - name: HubUserCurrentResponse fields: 15 - name: JobStatusFindRequest fields: 6 - name: JobStatusResponse fields: 8 - name: LoyaltyPointsBalanceSchema fields: 2 description: Schema for user's loyalty points balance - name: LoyaltyPointsCalculationSchema fields: 3 description: Schema for calculating potential points for an order - name: MessageContent fields: 10 - name: ModifiedCartItemSchema fields: 8 description: Schema for cart items with applied discounts - name: PaymentMethodAttachRequestSchema fields: 1 - name: ProductRetrieveSchema fields: 22 - name: SimilarProductSchema fields: 14 - name: SysInfoResponse fields: 4 - name: TransferAnonOrderRequest fields: 2 - name: TransferAnonOrderResponse fields: 2 - name: UpdateNotificationReadStatusSchema fields: 1 - name: UpdateOrderItemSchema fields: 2 - name: UserBootstrap fields: 2 description: Body for POST /users/bootstrap — Firebase verified the contact channel already. - name: UserBootstrapResponse fields: 2 - name: UserCreate fields: 17 - name: UserCreateRetrieve fields: 3 - name: UserDataRetrieve fields: 23 - name: UserExists fields: 2 - name: UserFCMConfigCreateSchema fields: 3 - name: UserFirebaseIdUpdate fields: 3 - name: UserProfileImage fields: 1 - name: UserProfileMeResponse fields: 7 description: Response for PATCH /user/me/profile — null-safe during progressive signup. - name: UserProfilePatch fields: 4 description: Body for PATCH /users/me/profile — supplies fields currently null on the user row. - name: UserProfileRetrieve fields: 21 - name: UserProfileUpdate fields: 12 - name: ValidationError fields: 5 - name: WalletBalanceResponse fields: 3 description: Schema for wallet balance response - name: WalletDebitRequest fields: 6 description: Schema for wallet payment request - debits wallet and sends order to VenSmart - name: WalletDepositRequest fields: 2 description: Schema for deposit request - name: WalletDepositResponse fields: 2 description: Schema for deposit response - name: WalletTransactionResponse fields: 12 description: Schema for wallet transaction response. Amounts are in dollars. - name: ZendeskWebhookRequest fields: 8 relationships: - from: ApplyRewardRequestSchema to: CartItemSchema type: has_many via: cart_items - from: ApplyRewardResponseSchema to: ModifiedCartItemSchema type: has_many via: modified_cart_items - from: CeleryWorkerResponse to: SysInfoResponse type: has_many via: metrics - from: CheckEligibilityRequestSchema to: CartItemSchema type: has_many via: cart_items - from: CheckEligibilityResponseSchema to: EligibleDealSchema type: has_many via: eligible_deals - from: DealCreateSchema to: DealRewardBaseSchema type: has_many via: rewards - from: DealCreateSchema to: DealTriggerBaseSchema type: has_many via: triggers - from: DealCreateSchema to: DealConstraintBaseSchema type: has_many via: constraints - from: DealRetrieveSchema to: DealRewardRetrieveSchema type: has_many via: rewards - from: DealRetrieveSchema to: DealTriggerRetrieveSchema type: has_many via: triggers - from: DealRetrieveSchema to: DealConstraintRetrieveSchema type: has_many via: constraints - from: HTTPValidationError to: ValidationError type: has_many via: detail - from: HubDefaultRequest to: GeoJsonLocation type: has_one via: geojson_location - from: HubEvent to: MessageContent type: has_one via: message_content - from: HubNameLookupRequest to: GeoJsonLocation type: has_one via: geojson_location - from: HubUserCurrentResponse to: GeoJsonLocation type: has_one via: geojson_location - from: UserCreate to: GeoJsonLocation type: has_one via: geojson_location - from: UserDataRetrieve to: GeoJsonLocation type: has_one via: geojson_location - from: UserDataRetrieve to: HubUserCurrentResponse type: has_one via: selected_hub - from: UserProfileRetrieve to: GeoJsonLocation type: has_one via: geojson_location