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

# List positions

> The positions the user entered on a manual investment account, with the security each is in. The priced
holdings derived from them are on the holdings endpoint, as for a brokerage account.



## OpenAPI

````yaml /openapi/v1.json get /finance/accounts/{accountId}/positions
openapi: 3.2.0
info:
  title: Synci
  version: '1.0'
  description: >-
    Synci is a platform for integrating financial accounts with your favorite
    apps.
servers:
  - url: https://api.synci.io/api/v1
security:
  - oauth2: []
  - http: []
tags:
  - name: Finance
    kind: nav
  - name: Connections
    parent: Finance
  - name: Accounts
    parent: Finance
  - name: Transactions
    parent: Finance
  - name: Institutions
    parent: Finance
  - name: Destinations
    kind: nav
  - name: YNAB
    parent: Destinations
  - name: Lunch Money
    parent: Destinations
  - name: Google Sheets
    parent: Destinations
  - name: SimpleFIN
    parent: Destinations
  - name: Notion
    parent: Destinations
  - name: Account
    kind: nav
  - name: Webhooks
    parent: Account
  - name: User
    parent: Account
  - name: rule-engine
    summary: Rules
    kind: nav
  - name: Rules
    parent: rule-engine
  - name: Rule Logs
    parent: rule-engine
  - name: Transfers
    kind: nav
  - name: Transfer Links
    parent: Transfers
  - name: Transfer Logs
    parent: Transfers
paths:
  /finance/accounts/{accountId}/positions:
    get:
      tags:
        - Investments
      summary: List positions
      description: >-
        The positions the user entered on a manual investment account, with the
        security each is in. The priced

        holdings derived from them are on the holdings endpoint, as for a
        brokerage account.
      operationId: financial.accounts.positions.index
      parameters:
        - name: accountId
          in: path
          required: true
          description: The financial account ID
          schema:
            type: integer
      responses:
        '200':
          description: Array of `ManualPositionResource`
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/ManualPositionResource'
                required:
                  - data
        '401':
          $ref: '#/components/responses/AuthenticationException'
        '403':
          $ref: '#/components/responses/AuthorizationException'
        '404':
          $ref: '#/components/responses/ModelNotFoundException'
components:
  schemas:
    ManualPositionResource:
      type: object
      properties:
        id:
          type: string
        financial_account_id:
          type: string
        security:
          type:
            - object
            - 'null'
          description: The catalogue security this position is in.
          properties:
            id:
              type: string
            provider:
              type: string
              const: MARKETSTACK
            provider_symbol:
              type: string
            name:
              type: string
            type:
              type: string
              enum:
                - EQUITY
                - ETF
                - FUND
                - OTHER
            currency:
              type:
                - string
                - 'null'
            exchange_mic:
              type:
                - string
                - 'null'
              description: >-
                A fund's exchange is a registration-market artefact, not a
                venue: no venue, no listing country.
            exchange_name:
              type:
                - string
                - 'null'
            country_code:
              type:
                - string
                - 'null'
            priced:
              type: boolean
              description: >-
                A close is held and recent enough to value with (ACTIVE or
                STALE); UNVERIFIED rows are checked on add.
            price_status:
              type: string
              enum:
                - UNVERIFIED
                - ACTIVE
                - STALE
                - UNAVAILABLE
            last_price_at:
              type:
                - string
                - 'null'
          required:
            - id
            - provider
            - provider_symbol
            - name
            - type
            - currency
            - exchange_mic
            - exchange_name
            - country_code
            - priced
            - price_status
            - last_price_at
        quantity:
          type: string
          description: 'Units held now: the opening quantity plus every trade since.'
        opening_quantity:
          type: string
          description: Units held on `opened_at`.
        cost_basis_total:
          type:
            - number
            - 'null'
          description: >-
            Running cost of the units held now, in the account currency, fees
            included: the opening cost plus every buy, less the average cost of
            every sell. Read-only; null when the opening cost was never entered.
        opening_cost_basis:
          type:
            - number
            - 'null'
          description: >-
            What the opening units cost, in the account currency. The value the
            position endpoints write; the running total is replayed from it.
        opened_at:
          type: string
        created_at:
          type:
            - string
            - 'null'
          format: date-time
        updated_at:
          type:
            - string
            - 'null'
          format: date-time
      required:
        - id
        - financial_account_id
        - security
        - quantity
        - opening_quantity
        - cost_basis_total
        - opening_cost_basis
        - opened_at
        - created_at
        - updated_at
      title: ManualPositionResource
  responses:
    AuthenticationException:
      description: Unauthenticated
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                type: string
                description: Error overview.
            required:
              - message
    AuthorizationException:
      description: Authorization error
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                type: string
                description: Error overview.
            required:
              - message
    ModelNotFoundException:
      description: Not found
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                type: string
                description: Error overview.
            required:
              - message
  securitySchemes:
    oauth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://api.synci.io/oauth/authorize
          tokenUrl: https://api.synci.io/oauth/token
          scopes:
            profile:read: View your name, email, and profile details
            accounts:read: View your connected financial accounts and balances
            accounts:write: >-
              Update, sync, and remove your financial accounts, and change their
              settings
            transactions:read: View your transactions
            transactions:write: Create, update, and delete your transactions
            sensitive:read: >-
              See sensitive identifiers like account numbers and account holder
              names
            transfer-links:read: View your transfer links and their transfer history
            transfer-links:write: Create, update, and delete transfer links, and undo transfers
            rules:read: View your rules and rule activity
            rules:write: Create, update, and delete rules, and undo rule actions
            webhooks:read: View your webhook endpoints
            webhooks:write: >-
              Create, update, and delete webhook endpoints, and rotate their
              secrets
            destinations:read: View your connected destinations
            destinations:write: Connect, update, and remove destinations
            financial-connections:read: View your connected institutions
            financial-connections:write: Manage your connected institutions
    http:
      type: http
      description: Bearer token (personal access token or OAuth access token)
      scheme: bearer

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.