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

# Get fund by ID

> 
    Retrieves detailed information about a specific fund by its ID.
    
    Access Control:
    - Public funds are visible to all users
    - Private funds are only visible to the fund manager and collaborators
    



## OpenAPI

````yaml https://api.endaoment.org/oas-json get /v1/funds/{id}
openapi: 3.0.0
info:
  title: Endaoment API
  description: The official Endaoment API endpoints
  version: 0.0.1
  contact: {}
servers:
  - url: https://api.endaoment.org
    description: Production
security: []
tags: []
paths:
  /v1/funds/{id}:
    get:
      tags:
        - Funds
      summary: Get fund by ID
      description: |2-

            Retrieves detailed information about a specific fund by its ID.
            
            Access Control:
            - Public funds are visible to all users
            - Private funds are only visible to the fund manager and collaborators
            
      operationId: FundsController_getFund
      parameters:
        - name: id
          required: true
          in: path
          description: The unique identifier of the fund
          example: 123e4567-e89b-12d3-a456-426614174000
          schema:
            type: string
      responses:
        '200':
          description: Fund details successfully retrieved
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FundDetailsDto'
        '401':
          description: User does not have permission to view this fund
        '404':
          description: Fund not found or user does not have access to view it
      security:
        - bearer: []
components:
  schemas:
    FundDetailsDto:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the fund
          example: 123e4567-e89b-12d3-a456-426614174000
        name:
          type: string
          description: Name of the fund
          example: Doe Family Foundation
        type:
          type: string
          description: Access type of the fund
          enum:
            - Private
            - Community
            - Transparent
            - ImpactPool
          example: Private
        manager:
          description: >-
            Basic information about the fund manager. The manager has technical
            capability to interact with the blockchain and perform programmatic
            functions.
          allOf:
            - $ref: '#/components/schemas/FundManager'
        chainId:
          type: object
          description: Chain ID where the fund is deployed
          example: 1
        deploymentTransactionHash:
          type: object
          description: Transaction hash of the deployment transaction
          example: '0xf89f7da1e5d79dcb1b8863d0926fe41204785b443ce2d1dca4bf50070c492567'
          nullable: true
        contractAddress:
          type: object
          description: Contract address of the fund
          example: '0x1234567890123456789012345678901234567890'
          nullable: true
        advisor:
          description: >-
            Fund advisor information. The advisor is tied to a real-world
            person/entity and acts as the public contact for the fund. This can
            be the same person as the manager or someone the manager acts on
            behalf of.
          allOf:
            - $ref: '#/components/schemas/FundAdvisor'
        featuredIndex:
          type: number
          description: >-
            Index determining the fund's position in featured listings. Lower
            numbers appear first
          example: 1
        usdcBalance:
          type: string
          description: >-
            Current synced USDC balance in the smallest currency unit (1000000 =
            1 USD). This does not account for asynchronous grants, asynchronous
            entity transfers, or asynchronous investments that may still be
            processing.
          example: '20500000'
        availableBalance:
          type: string
          description: >-
            Amount available to grant or transfer in the smallest currency unit
            (1000000 = 1 USD), adjusted for invested value, in-transit portfolio
            operations, and pending asynchronous transfers.
          example: '21000000'
        lastBalanceSyncUtc:
          type: object
          description: UTC timestamp of the last balance sync
          example: '2024-03-14T12:00:00Z'
          nullable: true
        description:
          type: string
          description: Detailed description of the fund
          example: A family foundation dedicated to supporting educational initiatives
        shortDescription:
          type: object
          description: Brief description of the fund
          example: Supporting education
          nullable: true
        vanityUrl:
          type: object
          description: Custom URL identifier for the fund
          example: doe-family-foundation
          nullable: true
        paypalId:
          type: object
          description: PayPal merchant ID associated with the fund
          nullable: true
          example: 123e4567-e89b-12d3-a456-426614174000
        logo:
          type: object
          description: URL of the fund's logo image
          example: https://example.com/logo.png
          nullable: true
        createdAtUtc:
          type: string
          description: UTC timestamp of fund creation
          example: '2024-01-01T00:00:00Z'
        updatedAtUtc:
          type: string
          description: UTC timestamp of last fund update
          example: '2024-03-14T12:00:00Z'
        lifetimeDonationsUsdc:
          type: string
          description: >-
            Total lifetime donations received in USDC, in the smallest currency
            unit (1000000 = 1 USD)
          example: '1000000000'
        staffNotes:
          type: string
          description: Internal notes about the fund (staff only)
          nullable: true
        category:
          type: object
          description: Category of the fund (e.g., Education, Health)
          example: Education
          nullable: true
        inboundFeeBps:
          type: number
          description: >-
            The fee charged for inbound operations in basis points (1 basis
            point = 0.01%)
          example: 25
        outboundFeeBps:
          type: number
          description: >-
            The fee charged for outbound operations in basis points (1 basis
            point = 0.01%)
          example: 50
        customFeeDetail:
          type: object
          description: >-
            Details about why this fund has custom fees. Only set if either
            inbound or outbound fee is custom
          example: Special Community Fund Agreement
          nullable: true
        grantsGiven:
          type: number
          description: Total number of grants given by this fund
          example: 10
        inTransitBuyUsdcAmount:
          type: string
          description: >-
            Amount of USDC pending purchase in the smallest currency unit
            (1000000 = 1 USD)
          example: '5000000'
        inTransitSellUsdcAmount:
          type: string
          description: >-
            Amount of USDC pending sale in the smallest currency unit (1000000 =
            1 USD)
          example: '3000000'
        investedUsdc:
          type: string
          description: >-
            Total amount invested in USDC, in the smallest currency unit
            (1000000 = 1 USD)
          example: '50000000'
        totalGrantedUsdc:
          type: string
          description: >-
            Total amount granted in USDC, in the smallest currency unit (1000000
            = 1 USD)
          example: '25000000'
        processingTransfersTotalUsdc:
          type: string
          description: >-
            Total amount in processing transfers in USDC, in the smallest
            currency unit (1000000 = 1 USD)
          example: '1000000'
        illiquidBalance:
          type: string
          description: >-
            Total balance in illiquid portfolios in USDC, in the smallest
            currency unit (1000000 = 1 USD)
          example: '10000000'
        poolDetails:
          description: >-
            Impact Pool specific details. Only available for Impact Pool type
            funds
          nullable: true
          allOf:
            - $ref: '#/components/schemas/ImpactPoolDetailsDto'
        expectedDeploymentInfo:
          description: >-
            Information needed for on-chain deployment. Only available for funds
            not yet deployed
          nullable: true
          allOf:
            - $ref: '#/components/schemas/ExpectedDeploymentInfoDto'
      required:
        - id
        - name
        - type
        - manager
        - chainId
        - advisor
        - featuredIndex
        - usdcBalance
        - availableBalance
        - description
        - createdAtUtc
        - updatedAtUtc
        - lifetimeDonationsUsdc
        - inboundFeeBps
        - outboundFeeBps
        - grantsGiven
        - inTransitBuyUsdcAmount
        - inTransitSellUsdcAmount
        - investedUsdc
        - totalGrantedUsdc
        - processingTransfersTotalUsdc
        - illiquidBalance
        - poolDetails
        - expectedDeploymentInfo
    FundManager:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the fund manager
          example: 123e4567-e89b-12d3-a456-426614174000
        walletAddress:
          type: string
          description: Ethereum wallet address of the fund manager
          example: '0x742d35Cc6634C0532925a3b844Bc454e4438f44e'
      required:
        - id
        - walletAddress
    FundAdvisor:
      type: object
      properties:
        firstName:
          type: string
          description: First name of the fund advisor
          example: John
        lastName:
          type: string
          description: Last name of the fund advisor
          example: Doe
      required:
        - firstName
        - lastName
    ImpactPoolDetailsDto:
      type: object
      properties:
        eligibleEntities:
          type: string
          description: Entities that are eligible for Impact Pool distributions
          enum:
            - Organizations
          example: Organizations
        algorithmType:
          type: string
          description: Algorithm used to calculate distributions
          enum:
            - QuadraticFunding
          example: QuadraticFunding
        distributionSchedule:
          type: string
          description: Human-readable distribution schedule
          example: Quarterly
        distributionPercentage:
          type: number
          description: Percentage of fund NAV to be distributed (0.25 = 25%, 0.125 = 12.5%)
          example: 0.25
          minimum: 0
          maximum: 1
        eligibleVotes:
          type: string
          description: Types of actions that count as votes for distribution
          enum:
            - GrantsAndDonations
          example: GrantsAndDonations
        voteWeight:
          type: string
          description: Method for calculating vote weights
          enum:
            - UsdcValue
          example: UsdcValue
      required:
        - eligibleEntities
        - algorithmType
        - distributionSchedule
        - distributionPercentage
        - eligibleVotes
        - voteWeight
    ExpectedDeploymentInfoDto:
      type: object
      properties:
        expectedManagerAddress:
          type: string
          description: >-
            Ethereum address of the fund manager used to compute the on-chain
            address
          example: '0x742d35Cc6634C0532925a3b844Bc454e4438f44e'
        expectedSalt:
          type: string
          description: Encoded bytes32 salt used to compute the on-chain address
          example: '0x0000000000000000000000000000000000000000000000000000000000000123'
        expectedComputedAddress:
          type: string
          description: >-
            Expected on-chain address computed using the manager address and
            salt. Must be verified before deployment
          example: '0x1234567890123456789012345678901234567890'
        expectedChainId:
          type: object
          description: Chain ID where the fund should be deployed
          example: 1
      required:
        - expectedManagerAddress
        - expectedSalt
        - expectedComputedAddress
        - expectedChainId
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http

````