Alpaca API

12 endpoints in this group.

GET /api/alpaca/activities

Alpaca Get Activities

Parameters

NameInTypeRequiredDescription
activity_typequery—optional
afterquery—optional
untilquery—optional
page_sizequeryintegeroptional

Responses

CodeDescription
200Successful Response
422Validation Error

GET /api/alpaca/auth-url

Alpaca Auth Url

Return the Alpaca OAuth authorization URL plus a CSRF state nonce.

Pentest C4: state is now a server-signed token pinned to this user + broker + tenant. /connect rejects unsigned, stale, or cross-user state values to prevent CSRF broker-bind attacks.

Responses

CodeDescription
200Successful Response

GET /api/alpaca/connect

Alpaca Callback

OAuth callback: exchange code, persist encrypted tokens plus broker_account row.

Parameters

NameInTypeRequiredDescription
codequerystringrequiredOne-time OAuth authorization code
statequery—optionalCSRF state nonce returned by Alpaca

Responses

CodeDescription
200Successful Response
422Validation Error

POST /api/alpaca/connect

Alpaca Connect

JSON-bodied connect for SPA flows: {auth_code: '...', state: '...'}.

Responses

CodeDescription
200Successful Response

POST /api/alpaca/disconnect

Alpaca Disconnect

Revoke (best-effort) plus soft-archive the Alpaca broker_account row.

Responses

CodeDescription
200Successful Response

GET /api/alpaca/health

Alpaca Health

Probe the Alpaca API connectivity. Never raises - returns {ok, ...}.

Responses

CodeDescription
200Successful Response

GET /api/alpaca/orders

Alpaca List Orders

Parameters

NameInTypeRequiredDescription
statusquerystringoptional
limitqueryintegeroptional
afterquery—optional
untilquery—optional
directionquerystringoptional

Responses

CodeDescription
200Successful Response
422Validation Error

POST /api/alpaca/orders

Alpaca Place Order

Place an Alpaca order. Decimal-strict — strings only on the wire.

Request body: application/json

Responses

CodeDescription
200Successful Response
422Validation Error

DELETE /api/alpaca/orders/{order_id}

Alpaca Cancel Order

Parameters

NameInTypeRequiredDescription
order_idpathstringrequired

Responses

CodeDescription
200Successful Response
422Validation Error

GET /api/alpaca/positions

Alpaca Positions

Read-only positions sync via the AlpacaAdapter.

Wraps the fetch in sync_orchestrator.sync_attempt (Phase C ) so each user-initiated read writes a row to broker_sync_log. The sync_kind is "manual" — this is a foreground request, not a scheduled background sync.

Responses

CodeDescription
200Successful Response

POST /api/alpaca/refresh

Alpaca Refresh

Force-refresh the Alpaca access token using the stored refresh token.

Responses

CodeDescription
200Successful Response

GET /api/alpaca/status

Alpaca Status

Return whether Alpaca is connected for the current tenant.

Responses

CodeDescription
200Successful Response

Occasional BlitzPulse product updates and offers, sent only if you tick the box and confirm your address.

How we handle your email

Footer Disclaimer BlitzPulse is educational decision support only. Not investment, tax, or legal advice. Not a broker. Trade at your own risk.