Alpha Bazaar Performance API

Signal P&L tracking, closing, monitoring

Operations 10

GET /api/performance/signal/{signal_id} Get Signal Performance #
POST /api/performance/close-signal/{signal_id} Close Signal Manually #
GET /api/performance/pending-orders Get Pending Orders #
POST /api/performance/cancel-pending-order/{signal_id} Cancel Pending Order #
GET /api/performance/monitoring/status Get Monitoring Status #
GET /api/performance/auto-close-status Get Auto Close Status #
GET /api/performance/current-price/{ticker} Get Current Price #
GET /api/performance/allocation Get Allocation #
GET /api/performance/pnl-summary Get Pnl Summary #
POST /api/performance/close-signals Bulk Close Signals #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/alphabazaar-ai:alphabazaar-ai-performance-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

alphabazaar-ai-performance-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Alphabazaar Ai Performance API
  version: 2.2.0-socketio
  contact:
    name: Alpha Bazaar
    url: https://alphabazaar.ai/
    email: support@alphabazaar.ai
  license:
    name: Proprietary
  termsOfService: https://www.alphabazaar.ai/legal/terms
  description: 'Operations tagged Performance across 2 of this provider''s published API definitions: alphabazaar-ai-openapi.yml, openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://alpha-bazaar-signal-server.onrender.com
  description: Production
- url: https://dev-alpha-bazaar-signal-server.onrender.com
  description: Staging
security:
- HTTPBearer: []
tags:
- name: Performance
  description: Signal P&L tracking, closing, monitoring
paths:
  /api/performance/signal/{signal_id}:
    get:
      tags:
      - Performance
      summary: Get Signal Performance
      description: Get performance data for a specific signal
      operationId: get_signal_performance_api_performance_signal__signal_id__get
      security:
      - HTTPBearer: []
      parameters:
      - name: signal_id
        in: path
        required: true
        schema:
          type: string
          title: Signal Id
        description: Signal UUID
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    servers:
    - url: https://alpha-bazaar-signal-server.onrender.com
      description: Production
    - url: https://dev-alpha-bazaar-signal-server.onrender.com
      description: Staging
  /api/performance/close-signal/{signal_id}:
    post:
      tags:
      - Performance
      summary: Close Signal Manually
      description: 'Enhanced manual close with market hours logic - immediate close if market open, sell-at-open if closed.

        Only the signal owner or an admin may perform this action.'
      operationId: close_signal_manually_api_performance_close_signal__signal_id__post
      security:
      - HTTPBearer: []
      parameters:
      - name: signal_id
        in: path
        required: true
        schema:
          type: string
          title: Signal Id
        description: Signal UUID
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CloseSignalResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    servers:
    - url: https://alpha-bazaar-signal-server.onrender.com
      description: Production
    - url: https://dev-alpha-bazaar-signal-server.onrender.com
      description: Staging
  /api/performance/pending-orders:
    get:
      tags:
      - Performance
      summary: Get Pending Orders
      description: Get this user's signals with pending close orders (sell_at_open, buy_at_open).
      operationId: get_pending_orders_api_performance_pending_orders_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      security:
      - HTTPBearer: []
    servers:
    - url: https://alpha-bazaar-signal-server.onrender.com
      description: Production
    - url: https://dev-alpha-bazaar-signal-server.onrender.com
      description: Staging
  /api/performance/cancel-pending-order/{signal_id}:
    post:
      tags:
      - Performance
      summary: Cancel Pending Order
      description: Cancel a pending close order (sell-at-open, buy-at-open) with 1-hour market protection
      operationId: cancel_pending_order_api_performance_cancel_pending_order__signal_id__post
      security:
      - HTTPBearer: []
      parameters:
      - name: signal_id
        in: path
        required: true
        schema:
          type: string
          title: Signal Id
        description: Signal UUID
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    servers:
    - url: https://alpha-bazaar-signal-server.onrender.com
      description: Production
    - url: https://dev-alpha-bazaar-signal-server.onrender.com
      description: Staging
  /api/performance/monitoring/status:
    get:
      tags:
      - Performance
      summary: Get Monitoring Status
      description: Get current monitoring status
      operationId: get_monitoring_status_api_performance_monitoring_status_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      security: []
    servers:
    - url: https://alpha-bazaar-signal-server.onrender.com
      description: Production
    - url: https://dev-alpha-bazaar-signal-server.onrender.com
      description: Staging
  /api/performance/auto-close-status:
    get:
      tags:
      - Performance
      summary: Get Auto Close Status
      description: 'Get status of all signals eligible for auto-close.

        By default only checks time-based eligibility. Set include_prices=true to also check stop-loss/profit-target (slower).'
      operationId: get_auto_close_status_api_performance_auto_close_status_get
      parameters:
      - name: include_prices
        in: query
        required: false
        schema:
          type: boolean
          description: Fetch live prices (slow, use sparingly)
          default: false
          title: Include Prices
        description: Fetch live prices (slow, use sparingly)
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security: []
    servers:
    - url: https://alpha-bazaar-signal-server.onrender.com
      description: Production
    - url: https://dev-alpha-bazaar-signal-server.onrender.com
      description: Staging
  /api/performance/current-price/{ticker}:
    get:
      tags:
      - Performance
      summary: Get Current Price
      description: Get current price for a ticker (simplified endpoint for frontend)
      operationId: get_current_price_api_performance_current_price__ticker__get
      security:
      - HTTPBearer: []
      parameters:
      - name: ticker
        in: path
        required: true
        schema:
          type: string
          title: Ticker
        description: Stock ticker symbol (e.g. AAPL)
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    servers:
    - url: https://alpha-bazaar-signal-server.onrender.com
      description: Production
    - url: https://dev-alpha-bazaar-signal-server.onrender.com
      description: Staging
  /api/performance/allocation:
    get:
      tags:
      - Performance
      summary: Get Allocation
      description: 'Get current portfolio allocation status — what''s allocated and what''s remaining.


        Shows each open position''s allocation percentage and the total.

        Default position size is 5% if not specified on the signal.'
      operationId: get_allocation_api_performance_allocation_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AllocationResponse'
      security:
      - HTTPBearer: []
    servers:
    - url: https://alpha-bazaar-signal-server.onrender.com
      description: Production
    - url: https://dev-alpha-bazaar-signal-server.onrender.com
      description: Staging
  /api/performance/pnl-summary:
    get:
      tags:
      - Performance
      summary: Get Pnl Summary
      description: 'Get aggregated P&L summary for the authenticated publisher.


        Returns realized P&L on closed signals, unrealized P&L on open positions,

        win/loss stats, and the individual signal breakdowns.'
      operationId: get_pnl_summary_api_performance_pnl_summary_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PnlSummaryResponse'
      security:
      - HTTPBearer: []
    servers:
    - url: https://alpha-bazaar-signal-server.onrender.com
      description: Production
    - url: https://dev-alpha-bazaar-signal-server.onrender.com
      description: Staging
  /api/performance/close-signals:
    post:
      tags:
      - Performance
      summary: Bulk Close Signals
      description: 'Close multiple signals in a single request.


        Closes all specified signals owned by the authenticated user.

        During market hours signals are closed immediately at current price;

        after hours they are queued as sell-at-open orders for the next trading day.

        Maximum 20 signals per request.'
      operationId: bulk_close_signals_api_performance_close_signals_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkCloseRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BulkCloseResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - HTTPBearer: []
    servers:
    - url: https://alpha-bazaar-signal-server.onrender.com
      description: Production
    - url: https://dev-alpha-bazaar-signal-server.onrender.com
      description: Staging
components:
  schemas:
    PnlSummaryResponse:
      properties:
        status:
          type: string
          title: Status
        total_signals:
          type: integer
          title: Total Signals
        open_signals:
          type: integer
          title: Open Signals
        closed_signals:
          type: integer
          title: Closed Signals
        total_realized_pnl_percent:
          anyOf:
          - type: number
          - type: 'null'
          title: Total Realized Pnl Percent
        total_unrealized_pnl_percent:
          anyOf:
          - type: number
          - type: 'null'
          title: Total Unrealized Pnl Percent
        avg_return_percent:
          anyOf:
          - type: number
          - type: 'null'
          title: Avg Return Percent
        win_rate:
          anyOf:
          - type: number
          - type: 'null'
          title: Win Rate
        wins:
          type: integer
          title: Wins
          default: 0
        losses:
          type: integer
          title: Losses
          default: 0
        best_trade:
          anyOf:
          - $ref: '#/components/schemas/PnlSignalSummary'
          - type: 'null'
        worst_trade:
          anyOf:
          - $ref: '#/components/schemas/PnlSignalSummary'
          - type: 'null'
        open_positions:
          items:
            $ref: '#/components/schemas/PnlSignalSummary'
          type: array
          title: Open Positions
          default: []
        closed_positions:
          items:
            $ref: '#/components/schemas/PnlSignalSummary'
          type: array
          title: Closed Positions
          default: []
      type: object
      required:
      - status
      - total_signals
      - open_signals
      - closed_signals
      title: PnlSummaryResponse
      description: GET /api/performance/pnl-summary
    CloseSignalResponse:
      properties:
        status:
          type: string
          title: Status
        action:
          anyOf:
          - type: string
          - type: 'null'
          title: Action
        message:
          type: string
          title: Message
        exit_price:
          anyOf:
          - type: number
          - type: 'null'
          title: Exit Price
        reference_price:
          anyOf:
          - type: number
          - type: 'null'
          title: Reference Price
        market_status:
          anyOf:
          - type: string
          - type: 'null'
          title: Market Status
        close_reason:
          anyOf:
          - type: string
          - type: 'null'
          title: Close Reason
        price_source:
          anyOf:
          - type: string
          - type: 'null'
          title: Price Source
        note:
          anyOf:
          - type: string
          - type: 'null'
          title: Note
        timestamp:
          anyOf:
          - type: string
          - type: 'null'
          title: Timestamp
      type: object
      required:
      - status
      - message
      title: CloseSignalResponse
      description: POST /api/performance/close-signal/{signal_id}
      example:
        action: immediate_close
        close_reason: manual_intraday
        exit_price: 192.3
        market_status: open
        message: Signal closed immediately at fresh market price
        price_source: fresh_pull
        status: success
        timestamp: '2026-02-27T15:30:00Z'
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    BulkCloseResult:
      properties:
        signal_id:
          type: string
          title: Signal Id
        ticker:
          type: string
          title: Ticker
        status:
          type: string
          title: Status
        exit_price:
          anyOf:
          - type: number
          - type: 'null'
          title: Exit Price
        pnl_percent:
          anyOf:
          - type: number
          - type: 'null'
          title: Pnl Percent
        close_reason:
          anyOf:
          - type: string
          - type: 'null'
          title: Close Reason
        message:
          anyOf:
          - type: string
          - type: 'null'
          title: Message
      type: object
      required:
      - signal_id
      - ticker
      - status
      title: BulkCloseResult
    BulkCloseResponse:
      properties:
        status:
          type: string
          title: Status
        total_requested:
          type: integer
          title: Total Requested
        closed:
          type: integer
          title: Closed
        queued:
          type: integer
          title: Queued
        failed:
          type: integer
          title: Failed
        results:
          items:
            $ref: '#/components/schemas/BulkCloseResult'
          type: array
          title: Results
        market_status:
          type: string
          title: Market Status
      type: object
      required:
      - status
      - total_requested
      - closed
      - queued
      - failed
      - results
      - market_status
      title: BulkCloseResponse
      description: POST /api/performance/close-signals
    AllocationResponse:
      properties:
        status:
          type: string
          title: Status
        total_allocated_percent:
          type: number
          title: Total Allocated Percent
        remaining_percent:
          type: number
          title: Remaining Percent
        open_position_count:
          type: integer
          title: Open Position Count
        positions:
          items:
            $ref: '#/components/schemas/OpenPositionAllocation'
          type: array
          title: Positions
      type: object
      required:
      - status
      - total_allocated_percent
      - remaining_percent
      - open_position_count
      - positions
      title: AllocationResponse
      description: GET /api/performance/allocation
    PnlSignalSummary:
      properties:
        signal_id:
          type: string
          title: Signal Id
        ticker:
          type: string
          title: Ticker
        action:
          type: string
          title: Action
        entry_price:
          anyOf:
          - type: number
          - type: 'null'
          title: Entry Price
        exit_price:
          anyOf:
          - type: number
          - type: 'null'
          title: Exit Price
        current_price:
          anyOf:
          - type: number
          - type: 'null'
          title: Current Price
        pnl_percent:
          anyOf:
          - type: number
          - type: 'null'
          title: Pnl Percent
        pnl_dollars:
          anyOf:
          - type: number
          - type: 'null'
          title: Pnl Dollars
        position_size_percent:
          anyOf:
          - type: number
          - type: 'null'
          title: Position Size Percent
        status:
          type: string
          title: Status
        close_reason:
          anyOf:
          - type: string
          - type: 'null'
          title: Close Reason
        opened_at:
          anyOf:
          - type: string
          - type: 'null'
          title: Opened At
        closed_at:
          anyOf:
          - type: string
          - type: 'null'
          title: Closed At
      type: object
      required:
      - signal_id
      - ticker
      - action
      - status
      title: PnlSignalSummary
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    BulkCloseRequest:
      properties:
        signal_ids:
          items:
            type: string
          type: array
          title: Signal Ids
      type: object
      required:
      - signal_ids
      title: BulkCloseRequest
    OpenPositionAllocation:
      properties:
        signal_id:
          type: string
          title: Signal Id
        ticker:
          type: string
          title: Ticker
        action:
          type: string
          title: Action
        position_size_percent:
          type: number
          title: Position Size Percent
        entry_price:
          anyOf:
          - type: number
          - type: 'null'
          title: Entry Price
        current_price:
          anyOf:
          - type: number
          - type: 'null'
          title: Current Price
        pnl_percent:
          anyOf:
          - type: number
          - type: 'null'
          title: Pnl Percent
        created_at:
          anyOf:
          - type: string
          - type: 'null'
          title: Created At
      type: object
      required:
      - signal_id
      - ticker
      - action
      - position_size_percent
      title: OpenPositionAllocation
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer
externalDocs:
  description: Agent integration guide and full API docs
  url: https://www.alphabazaar.ai/llms-full.txt
x-refined-from:
- alphabazaar-ai-openapi.yml
- openapi.json