> ## Documentation Index
> Fetch the complete documentation index at: https://docs.redfancy.org/llms.txt
> Use this file to discover all available pages before exploring further.

# List projects owned by wallet



## OpenAPI

````yaml /OPENAPI.yaml get /api/projects/wallet/{address}
openapi: 3.0.3
info:
  title: Redf Backend API
  version: 1.0.0
  description: >
    OpenAPI specification for the current HTTP backend exposed by the Phoenix
    router. The spec reflects the routes and controller behaviour currently
    implemented in `blockchain_app/lib/blockchain_app_web/router.ex`.
servers:
  - url: http://localhost:4000
    description: Local development
security: []
tags:
  - name: Health
  - name: Networks
  - name: Projects
  - name: Transactions
  - name: Widgets
paths:
  /api/projects/wallet/{address}:
    get:
      tags:
        - Projects
      summary: List projects owned by wallet
      operationId: listProjectsByWallet
      parameters:
        - $ref: '#/components/parameters/WalletAddressPath'
        - $ref: '#/components/parameters/WalletPeriod'
      responses:
        '200':
          description: Projects bound to the specified wallet address
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProjectsByWalletResponse'
        '400':
          description: Invalid wallet address
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  parameters:
    WalletAddressPath:
      in: path
      name: address
      required: true
      schema:
        type: string
      description: Wallet address exactly as stored
    WalletPeriod:
      in: query
      name: period
      schema:
        type: string
        enum:
          - 1h
          - 1hour
          - 24h
          - 24hours
          - 7d
          - 7days
          - 1m
          - 1month
          - 1y
          - 1year
          - all
          - all_time
        default: 1m
      description: Time period used to aggregate confirmed amount per project
  schemas:
    ProjectsByWalletResponse:
      type: object
      required:
        - status
        - period
        - projects
      properties:
        status:
          type: string
          enum:
            - ok
        period:
          type: string
        projects:
          type: array
          items:
            $ref: '#/components/schemas/ProjectWalletSummary'
    ErrorResponse:
      type: object
      description: >
        Generic error payload used by the API. Some handlers return `error`,
        while validation and internal checker failures may return only `errors`
        or `reason`.
      required:
        - status
      properties:
        status:
          type: string
          enum:
            - error
        error:
          type: string
          example: invalid_request
        reason:
          type: string
          nullable: true
        detail:
          type: string
          nullable: true
        field:
          oneOf:
            - type: string
            - type: integer
          nullable: true
        currency:
          type: string
          nullable: true
        missing:
          type: array
          items:
            type: string
        errors:
          $ref: '#/components/schemas/ValidationErrors'
        message:
          type: string
          nullable: true
        constraint:
          type: string
          nullable: true
        tx_status:
          type: string
          nullable: true
        project_uid:
          type: string
          nullable: true
        widget_id:
          oneOf:
            - type: string
            - type: integer
          nullable: true
        expected:
          type: object
          additionalProperties: true
      additionalProperties: true
    ProjectWalletSummary:
      type: object
      required:
        - id
        - project_uid
        - project_name
        - wallet_address
        - currency_symbol
        - min_amount
        - max_amount
        - finalization_time
        - is_active
        - network
        - amount
      properties:
        id:
          type: integer
        project_uid:
          type: string
          format: uuid
        project_name:
          type: string
        description:
          type: string
          nullable: true
        wallet_address:
          type: string
        currency_symbol:
          type: string
        merchant_url:
          type: string
          format: uri
          nullable: true
        min_amount:
          $ref: '#/components/schemas/DecimalString'
        max_amount:
          $ref: '#/components/schemas/DecimalString'
        finalization_time:
          type: integer
        is_active:
          type: boolean
        created_at:
          type: string
          format: date-time
          nullable: true
        updated_at:
          type: string
          format: date-time
          nullable: true
        network:
          type: string
          nullable: true
        amount:
          $ref: '#/components/schemas/DecimalString'
    ValidationErrors:
      type: object
      description: Map of field names to validation error messages
      additionalProperties:
        type: array
        items:
          type: string
    DecimalString:
      type: string
      example: '10.50'
      description: Decimal amount as returned by JSON encoding

````