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

# getProgramAccounts

> Gibt alle Konten zurück, die dem bereitgestellten Programm-Pubkey gehören.

<Info>
  **Neue Funktion**: `getProgramAccounts` unterstützt jetzt den Parameter `changedSinceSlot` für inkrementelle Updates. Wenn angegeben, gibt die Methode nur Konten zurück, die ab oder nach der angegebenen Slot-Nummer geändert wurden. Dies ist perfekt für Echtzeit-Indizierung und Daten-Synchronisations-Workflows.
</Info>

## Anfrageparameter

<ParamField body="address" type="string" required>
  Der Solana-Programm-Public-Key (Adresse), um Konten abzufragen, als Base-58-codierter String.
</ParamField>

<ParamField body="commitment" type="string">
  Das Verpflichtungsniveau für die Anfrage.

  * `confirmed`
  * `finalized`
  * `processed`
</ParamField>

<ParamField body="minContextSlot" type="number">
  Der minimale Slot, bei dem die Anfrage ausgewertet werden kann.
</ParamField>

<ParamField body="withContext" type="boolean">
  Verpackt das Ergebnis in einem RpcResponse JSON-Objekt.
</ParamField>

<ParamField body="encoding" type="string">
  Das Codierungsformat für die zurückgegebenen Kontodaten.

  * `jsonParsed`
  * `base58`
  * `base64`
  * `base64+zstd`
</ParamField>

<ParamField body="dataSlice" type="object">
  Fordern Sie einen Ausschnitt der Kontodaten an.
</ParamField>

<ParamField body="dataSlice.length" type="number">
  Anzahl der zurückzugebenden Bytes.
</ParamField>

<ParamField body="dataSlice.offset" type="number">
  Byte-Offset, ab dem das Lesen beginnt.
</ParamField>

<ParamField body="changedSinceSlot" type="number">
  Gibt nur Konten zurück, die ab oder nach dieser Slot-Nummer geändert wurden. Nützlich für inkrementelle Updates.
</ParamField>

<ParamField body="filters" type="array">
  Leistungsstarkes Filtersystem zum effizienten Abfragen spezifischer Solana-Kontodatenmuster.
</ParamField>


## OpenAPI

````yaml de/openapi/rpc-http/getProgramAccounts.yaml POST /
openapi: 3.1.0
info:
  title: Solana RPC API
  version: 1.0.0
  description: >-
    Erweiterte Solana-Programmkonto-Indexierungs-API zum Abfragen und Filtern
    von Konten, die spezifischen Programmen gehören, mit leistungsstarken
    Datenfilterfähigkeiten.
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
servers:
  - url: https://mainnet.helius-rpc.com
    description: Mainnet RPC-Endpunkt
  - url: https://devnet.helius-rpc.com
    description: Devnet RPC-Endpunkt
security: []
paths:
  /:
    post:
      tags:
        - RPC
      summary: getProgramAccounts
      description: >
        Rufen Sie alle Konten ab, die einem bestimmten Solana-Programm gehören,
        mit leistungsstarken Filterfunktionen.

        Diese wesentliche API ermöglicht es Entwicklern,
        On-Chain-Datenstrukturen effizient abzufragen, die von

        jedem Programm verwendet werden, mit erweiterten Filtern nach
        Kontogröße, Speicherinhalten und anderen Kriterien.

        Perfekt zum Indizieren von NFT-Sammlungen, DEX-Liquiditätspools,
        Kreditpositionen, Governance-Vorschlägen

        und anderen protkollspezifischen Daten, die auf der Solana-Blockchain
        gespeichert sind. Unterstützt mehrere Datenkodierungsformate

        für optimale Parsing-Effizienz.
      operationId: getProgramAccounts
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - jsonrpc
                - id
                - method
                - params
              properties:
                jsonrpc:
                  type: string
                  description: Die JSON-RPC-Protokollversion.
                  enum:
                    - '2.0'
                  example: '2.0'
                  default: '2.0'
                id:
                  type: string
                  description: Eine eindeutige Identifikation für die Anfrage.
                  example: '1'
                  default: '1'
                method:
                  type: string
                  description: Der Name der aufzurufenden RPC-Methode.
                  enum:
                    - getProgramAccounts
                  example: getProgramAccounts
                  default: getProgramAccounts
                params:
                  type: array
                  description: Parameter für die Methode.
                  default:
                    - 4Nd1mBQtrMJVYVfKf2PJy9NZUZdTAsp7D4xWLs4gDB4T
                  items:
                    oneOf:
                      - type: string
                        description: >-
                          Der öffentliche Schlüssel (Adresse) des
                          Solana-Programms, für das Konten abgefragt werden
                          sollen, als base-58-kodierter String.
                        example: 4Nd1mBQtrMJVYVfKf2PJy9NZUZdTAsp7D4xWLs4gDB4T
                      - type: object
                        description: >-
                          Erweiterte Konfigurationsoptionen zur Optimierung von
                          Programmkontoabfragen.
                        properties:
                          commitment:
                            type: string
                            description: Das Commit-Level für die Anfrage.
                            enum:
                              - confirmed
                              - finalized
                              - processed
                            example: finalized
                          minContextSlot:
                            type: integer
                            description: >-
                              Der minimale Slot, bei dem die Anfrage ausgewertet
                              werden kann.
                            example: 1000
                          withContext:
                            type: boolean
                            description: >-
                              Das Ergebnis in einem RpcResponse-JSON-Objekt
                              einwickeln.
                            example: true
                          encoding:
                            type: string
                            description: >-
                              Kodierungsformat für die zurückgegebenen
                              Kontendaten.
                            enum:
                              - jsonParsed
                              - base58
                              - base64
                              - base64+zstd
                            example: jsonParsed
                          dataSlice:
                            type: object
                            description: Anfordern eines Ausschnitts der Kontodaten.
                            properties:
                              length:
                                type: integer
                                description: Anzahl der zurückzugebenden Bytes.
                                example: 50
                              offset:
                                type: integer
                                description: Byte-Versatz, ab dem gelesen werden soll.
                                example: 0
                          changedSinceSlot:
                            type: integer
                            description: >-
                              Nur Konten zurückgeben, die bei diesem Slot oder
                              danach geändert wurden. Nützlich für inkrementelle
                              Updates.
                            example: 464175999
                          filters:
                            type: array
                            description: >-
                              Leistungsstarkes Filtersystem zur effizienten
                              Abfrage spezifischer Solana-Kontodatenmuster.
                            items:
                              oneOf:
                                - type: object
                                  description: >-
                                    Solana-Konten nach ihrer genauen Datengröße
                                    in Bytes filtern.
                                  properties:
                                    dataSize:
                                      type: integer
                                      description: >-
                                        Die genaue Datengröße des Kontos in
                                        Bytes zum Filtern.
                                      example: 17
                                - type: object
                                  description: >-
                                    Solana-Konten filtern, indem Daten an
                                    spezifischen Speicher-Offests verglichen
                                    werden (stärkster Filter).
                                  properties:
                                    memcmp:
                                      type: object
                                      description: >-
                                        Speichervergleichsfilter zum Finden von
                                        Konten mit spezifischen Datenmustern.
                                      properties:
                                        offset:
                                          type: integer
                                          description: >-
                                            Byte-Versatz innerhalb der Kontodaten,
                                            bei dem der Vergleich durchgeführt wird.
                                          example: 4
                                        bytes:
                                          type: string
                                          description: >-
                                            Base-58-kodierte Daten, die an der
                                            angegebenen Offset-Position verglichen
                                            werden sollen.
                                          example: 3Mc6vR
      responses:
        '200':
          description: Programm-Konten erfolgreich abgerufen.
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                    description: Die JSON-RPC-Protokollversion.
                    enum:
                      - '2.0'
                    example: '2.0'
                  id:
                    type: string
                    description: Identifizierer, der der Anfrage entspricht.
                    example: '1'
                  result:
                    oneOf:
                      - type: array
                        description: Liste der Programmkonten.
                        items:
                          type: object
                          properties:
                            pubkey:
                              type: string
                              description: Der Konten-Pubkey als base-58-kodierter String.
                              example: CxELquR1gPP8wHe33gZ4QxqGB3sZ9RSwsJ2KshVewkFY
                            account:
                              type: object
                              description: Details über das Konto.
                              properties:
                                lamports:
                                  type: integer
                                  description: >-
                                    Anzahl der diesem Konto zugewiesenen
                                    Lamports.
                                  example: 15298080
                                owner:
                                  type: string
                                  description: >-
                                    Base-58-kodierter Pubkey des Programms, dem
                                    dieses Konto zugewiesen ist.
                                  example: 4Nd1mBQtrMJVYVfKf2PJy9NZUZdTAsp7D4xWLs4gDB4T
                                data:
                                  type: array
                                  description: >-
                                    Kontodaten als kodiertes Binär- oder
                                    JSON-Format.
                                  items:
                                    type: string
                                  example:
                                    - 2R9jLfiAQ9bgdcw6h8s44439
                                    - base58
                                executable:
                                  type: boolean
                                  description: Gibt an, ob das Konto ein Programm enthält.
                                  example: false
                                rentEpoch:
                                  type: integer
                                  description: >-
                                    Das Epochon, zu dem dieses Konto das nächste
                                    Mal Miete schuldet.
                                  example: 28
                                space:
                                  type: integer
                                  description: Die Datengröße des Kontos.
                                  example: 42
        '400':
          description: >-
            Fehlerhafte Anfrage - Ungültige Anforderungsparameter oder
            fehlerhafte Anfrage.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                jsonrpc: '2.0'
                error:
                  code: -32602
                  message: Ungültige Parameter
                  data: {}
                id: '1'
        '401':
          description: Nicht autorisiert - Ungültiger oder fehlender API-Schlüssel.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                jsonrpc: '2.0'
                error:
                  code: -32001
                  message: Nicht autorisiert
                  data: {}
                id: '1'
        '429':
          description: Zu viele Anfragen - Anfrage-Limit überschritten.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                jsonrpc: '2.0'
                error:
                  code: -32005
                  message: Zu viele Anfragen
                  data: {}
                id: '1'
        '500':
          description: Interner Serverfehler - Ein Fehler ist auf dem Server aufgetreten.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                jsonrpc: '2.0'
                error:
                  code: -32603
                  message: Interner Fehler
                  data: {}
                id: '1'
        '503':
          description: >-
            Dienst nicht verfügbar - Der Dienst ist vorübergehend nicht
            verfügbar.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                jsonrpc: '2.0'
                error:
                  code: -32002
                  message: Dienst nicht verfügbar
                  data: {}
                id: '1'
        '504':
          description: Gateway Timeout - Die Anfrage hat Zeit überschritten.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                jsonrpc: '2.0'
                error:
                  code: -32003
                  message: Gateway-Timeout
                  data: {}
                id: '1'
      security:
        - ApiKeyQuery: []
components:
  schemas:
    ErrorResponse:
      type: object
      properties:
        jsonrpc:
          type: string
          description: Die JSON-RPC-Protokollversion.
          enum:
            - '2.0'
          example: '2.0'
        error:
          type: object
          properties:
            code:
              type: integer
              description: Der Fehlercode.
              example: -32602
            message:
              type: string
              description: Die Fehlermeldung.
            data:
              type: object
              description: Zusätzliche Daten über den Fehler.
        id:
          type: string
          description: Identifizierer, der der Anfrage entspricht.
          example: '1'
  securitySchemes:
    ApiKeyQuery:
      type: apiKey
      in: query
      name: api-key
      description: >-
        Ihr Helius-API-Schlüssel. Sie können einen kostenlos im
        [Dashboard](https://dashboard.helius.dev/api-keys) erhalten.

````