rl-docs-hub

Home · Apps · rl-bank-mvp


API specs — card servicing + activity slice

Status: Draft, intended to match the current implementation slice.

GraphQL additions

Card mutations

publicSetMyCardFrozen(input)

Sets the frozen state for a customer-owned card.

Input:

Output:

Behavior:

publicUpdateMyCardSpendingLimit(input)

Updates the customer-visible spending limit for a card.

Input:

Output:

Validation:

Activity query

publicListMyActivity

Returns a reverse-chronological activity feed for the authenticated customer.

Output item fields:

Sources:

Notification queries / mutations

publicListMyNotifications

Returns customer-scoped in-app notifications ordered newest-first.

Output item fields:

publicMarkMyNotificationRead(input)

Marks a customer-owned notification as read.

Input:

Output:

Existing objects extended

CardObject

Add fields:

AccountObject

Add fields for account-detail realism:

These are derived summary fields, not separate stored source-of-truth balances.

Account history usage

publicListMyAccounts

Existing query remains in use, but account items should now include the derived fields above so the apps can render a believable portfolio view.

publicGetMyAccount(input)

Existing query remains the single-account detail fetch.

publicListMyTransactions

Existing query remains the source for recent account history. Apps may filter transactions client-side by accountId for the selected account in this slice.

Result envelope note

Where the implementation returns debug metadata for servicing operations, prefer a non-breaking optional field:

Staff support servicing additions

adminListAccountsForSupport(input)

Returns a support-oriented list of accounts for staff users with account.read.

Input:

Output item fields:

adminGetAccountSupportDetail(input)

Returns a support detail payload for a specific account.

Input:

Output fields:

Behavior:

adminUpdateAccountStatus(input)

Updates an account status from the support workspace.

Input:

Output:

Validation:

Permissions note

Error semantics

Common failure cases:

Error messaging goal: