Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Werte von Bitpanda abrufen

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    UNSOLVED Werte von Bitpanda abrufen

    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      DasBo1975 last edited by

      Hallo zusammen,

      ich möchte gerne Werte von Bitpanda abrufen. Ich habe dort eine ApiToken erstellt.
      Lt. der Bitpanda Hilfeseite kann man über die folgende Adresse/Befehl darauf zugreifen.

      curl -X GET "https://api.bitpanda.com/v1/trades"
      -H "X-Api-Key: string"

      aber ich weiß nicht wie. Sowas hab ich noch nie gemacht. Ich weiß nicht mal wo ich hier meinen token einfügen muss.

      Hat das von euch schon mal wer realisiert?

      Lg. Dirk

      OliverIO 1 Reply Last reply Reply Quote 0
      • OliverIO
        OliverIO @DasBo1975 last edited by

        @dasbo1975

        Das ist ein Befehl für die Kommandozentrale mit dem Befehl curl
        Curl kann http requests ausführen.

        Wenn du den IoBroker verwendest, dann ist es besser das mittels JavaScript auszuführen
        Das wäre die Übersetzung des Befehls unter Zuhilfenahme von axions

        
        const axios = require('axios');
        
        axios.get('https://api.bitpanda.com/v1/trades', {
          headers: {
            'X-Api-Key': 'string'
          }
        })
        .then(response => {
          console.log(response.data);
        })
        .catch(error => {
          console.error(error);
        });
        
        

        Das kannst du im Adapter JavaScript in ein neues JavaScript Skript kopieren und ausführen.
        Allerdings gibt es dir einfach nur die Ergebnisse aus.
        Du wirst die Werte aber noch weiterverarbeiten müssen, so das der ein oder andere Wert in einem datenpunkt landet.

        Ich habe den Befehl mit ChatGPT übersetzen lassen, für mich sieht er valide aus, es kann , wie bei ki möglich, das sich da Fehler einschleichen. Aber dazu muss man die api Dokumentation von bitpanda genau studieren. Irgendwie fehlt da noch ein Header, der sagt in welcher Form wir das Ergebnis haben wollen (json), aber muss auch nicht unbedingt sein. Hängt halt von de api ab.

        D 1 Reply Last reply Reply Quote 1
        • D
          DasBo1975 @OliverIO last edited by

          @oliverio
          danke erstmal.
          so nun geht das los bei mir.
          geht sowas auch über eine javascript funktion und danach blockly?

          LG

          OliverIO 1 Reply Last reply Reply Quote 0
          • OliverIO
            OliverIO @DasBo1975 last edited by

            @dasbo1975

            Bei Blocky bin ich raus

            1 Reply Last reply Reply Quote 0
            • mickym
              mickym Most Active last edited by

              Wenn Du lieber grafisch arbeiten willst - dann solltest Du lieber mal NodeRed versuchen - als zu puzzeln.

              1 Reply Last reply Reply Quote 0
              • D
                DasBo1975 last edited by

                @mickym
                nodered bin ich total raus. das wüsste ich schon garnicht mehr weiter

                mickym 1 Reply Last reply Reply Quote 0
                • mickym
                  mickym Most Active @DasBo1975 last edited by mickym

                  @dasbo1975 Na vielleicht solltest du dich damit mal beschäftigen - jedenfalls gibts da eine http request Node und viele weitere Nodes, die Dir schon fertig Aufgaben lösen.
                  07e12a37-405e-4358-8b1d-a01e05bff02a-image.png

                  Aber gut - dann musst halt die JS function in blockly einbinden. Soweit ich weiß kann man dem http request teil beim Puzzeln keine Header mitgeben.
                  Ich will Dich nicht vom Puzzeln abhalten. In dem Fall bindest Du halt die JS Funktion halt mit dem Puzzelteil ein

                  c9ae75d4-089f-422f-b908-b200ec24a668-image.png

                  Aber gibt sicher JS Profis, Dir das Skript entweder komplett erstellen oder Dir die Funktion so umbauen, dass Du dann leicht weiter puzzeln kannst.

                  Ich bin dann aber raus, weil mir die Puzzleteile zu wenig flexibel und mächtig sind.

                  D 1 Reply Last reply Reply Quote 0
                  • D
                    DasBo1975 @mickym last edited by

                    @mickym
                    vielen dank erstmal.
                    So bekomme ich doch neue Lösungsansätze

                    1 Reply Last reply Reply Quote 0
                    • D
                      DasBo1975 last edited by

                      @mickym
                      ich hab jetzt nodered installiert. kannst du mir sagen wie es nach dem http request weiter geht

                      mickym 1 Reply Last reply Reply Quote 0
                      • mickym
                        mickym Most Active @DasBo1975 last edited by mickym

                        @dasbo1975 Du nimmst eine Inject-Node zum Triggern und hängst hinten eine Debug Node dran. Da ein JSON zurückkommt, solltest Du das noch umstellen. Im Debug Fenster solltest Du dann so einen Response bekommen, wie in der Doku.

                        {
                          "data": [
                            {
                                "type": "trade",
                                "attributes": {
                                    "status": "finished",
                                    "type": "buy",
                                    "cryptocoin_id": "1",
                                    "fiat_id": "1",
                                    "amount_fiat": "100.00",
                                    "amount_cryptocoin": "0.03325352",
                                    "fiat_to_eur_rate": "1.00000000",
                                    "wallet_id": "b8448e50-21e4-11e8-923c-83856b384ff7",
                                    "fiat_wallet_id": "4019cdb0-1d62-11e8-b4b2-313f9b0a3bca",
                                    "payment_option_id": "12",
                                    "time": {
                                        "date_iso8601": "2019-02-05T11:41:04+01:00",
                                        "unix": "1549363264"
                                    },
                                    "price": "3007.20",
                                    "is_swap": false
                                },
                                "id": "88ea98a0-2932-11e9-91da-8bbc17ef282b"
                            },
                            {
                                "type": "trade",
                                "attributes": {
                                    "status": "finished",
                                    "type": "buy",
                                    "cryptocoin_id": "1",
                                    "fiat_id": "1",
                                    "amount_fiat": "50.00",
                                    "amount_cryptocoin": "0.01662676",
                                    "fiat_to_eur_rate": "1.00000000",
                                    "wallet_id": "b8448e50-21e4-11e8-923c-83856b384ff7",
                                    "fiat_wallet_id": "4019cdb0-1d62-11e8-b4b2-313f9b0a3bca",
                                    "payment_option_id": "12",
                                    "time": {
                                        "date_iso8601": "2019-02-05T11:40:21+01:00",
                                        "unix": "1549363221"
                                    },
                                    "price": "3007.20",
                                    "is_swap": false
                                },
                                "id": "6f6ba3a0-2932-11e9-bdcb-efc7d8bd663c"
                            }
                          ],
                          "meta": {
                              "total_count": 114,
                              "next_cursor": "6f6ba3a0-2932-11e9-bdcb-efc7d8bd663c",
                              "page_size": 2
                          },
                          "links": {
                              "next": "?cursor=6f6ba3a0-2932-11e9-bdcb-efc7d8bd663c&page_size=2",
                              "self": "?cursor=&page_size=2"
                          }
                        }
                        

                        da ich keinen key habe - kommt natürlich Access Error:

                        ef22d5e7-1d3c-42e6-8361-ae64d5ce995b-image.png

                        Hier mal der kleine Flow zum Importieren:

                        [
                           {
                               "id": "19fcdb8fc086136e",
                               "type": "inject",
                               "z": "7e6af0015415146d",
                               "name": "",
                               "props": [
                                   {
                                       "p": "payload"
                                   },
                                   {
                                       "p": "topic",
                                       "vt": "str"
                                   }
                               ],
                               "repeat": "",
                               "crontab": "",
                               "once": false,
                               "onceDelay": 0.1,
                               "topic": "",
                               "payload": "",
                               "payloadType": "date",
                               "x": 160,
                               "y": 5560,
                               "wires": [
                                   [
                                       "0e4d300bab01ba7f"
                                   ]
                               ]
                           },
                           {
                               "id": "b57b30fc92399c17",
                               "type": "debug",
                               "z": "7e6af0015415146d",
                               "name": "Trades",
                               "active": true,
                               "tosidebar": true,
                               "console": false,
                               "tostatus": false,
                               "complete": "payload",
                               "targetType": "msg",
                               "statusVal": "",
                               "statusType": "auto",
                               "x": 530,
                               "y": 5560,
                               "wires": []
                           },
                           {
                               "id": "0e4d300bab01ba7f",
                               "type": "http request",
                               "z": "7e6af0015415146d",
                               "name": "",
                               "method": "GET",
                               "ret": "obj",
                               "paytoqs": "ignore",
                               "url": "https://api.bitpanda.com/v1/trades",
                               "tls": "",
                               "persist": false,
                               "proxy": "",
                               "insecureHTTPParser": false,
                               "authType": "",
                               "senderr": false,
                               "headers": [
                                   {
                                       "keyType": "other",
                                       "keyValue": "X-Api-Key",
                                       "valueType": "other",
                                       "valueValue": "MeinKey"
                                   }
                               ],
                               "x": 350,
                               "y": 5560,
                               "wires": [
                                   [
                                       "b57b30fc92399c17"
                                   ]
                               ]
                           }
                        ]
                        

                        Einfach in die Zwischenablage kopieren und dann importieren.

                        Nach jeder Änderung musst Du mit dem Übernahme Button - den Flow mit allen Änderungen aktivieren.

                        mickym 1 Reply Last reply Reply Quote 0
                        • mickym
                          mickym Most Active @mickym last edited by

                          @mickym Wenn Du Daten zurückbekommst, kannst Du ja sagen welche Daten Dich interessieren, ansonsten habe ich noch einen Flow, der Dir dann aus allen Daten alles Datenpunkte im iobroker erstellt.

                          1 Reply Last reply Reply Quote 0
                          • D
                            DasBo1975 last edited by

                            @mickym
                            mega.
                            Ich danke dir. Das war ja einfacher als ich dachte.
                            Und wie hole ich mir jetzt die Einzelwerte daraus und schick die in die IoBroker Datenpunkte

                            mickym 1 Reply Last reply Reply Quote 0
                            • mickym
                              mickym Most Active @DasBo1975 last edited by

                              @dasbo1975 Ich sagte ja - NodeRed ist einfach genial. 😉 - Glaubt nur keiner. Also was willst Du haben?

                              Alles oder nur Teile von data?

                              D 1 Reply Last reply Reply Quote 0
                              • D
                                DasBo1975 @mickym last edited by

                                @mickym
                                Ich brauche immer nur Teile.

                                mickym 1 Reply Last reply Reply Quote 0
                                • mickym
                                  mickym Most Active @DasBo1975 last edited by

                                  @dasbo1975 Ja was. Ich habe Dir ja das JSON was zurückkommt geschickt. Also Du brauchst wahrscheinlich nur aus "data", die Datensätze mit type "trade" und welche attribute?

                                  D 1 Reply Last reply Reply Quote 0
                                  • D
                                    DasBo1975 @mickym last edited by DasBo1975

                                    @mickym
                                    trades sind noch nicht gefüllt, aber https://api.bitpanda.com/v1/fiatwallets
                                    der liefert mir gerade daten.. diese bräuchte ich davon
                                    "fiat_id": "1",
                                    "fiat_symbol": "EUR",
                                    "balance": "9909.00000000",
                                    "name": "EUR Wallet",
                                    "pending_transactions_count": 0

                                    wenn ich das dann verstanden habe, sollte ich die trades morgen auch hinbekommen.

                                    mickym 1 Reply Last reply Reply Quote 0
                                    • mickym
                                      mickym Most Active @DasBo1975 last edited by

                                      @dasbo1975 sagte in Werte von Bitpanda abrufen:

                                      "fiat_symbol": "EUR",

                                      Ja Du musst mir nur sagen, was Du aufrufst.

                                      Du rufst also die fiat-flat wallets auf: https://developers.bitpanda.com/#list-fiat-wallets

                                      D 1 Reply Last reply Reply Quote 0
                                      • D
                                        DasBo1975 @mickym last edited by DasBo1975

                                        @mickym
                                        ich bräuchte von dort den ersten baum (die Daten aus Object 0)
                                        {
                                        "data": [
                                        {
                                        "type": "fiat_wallet",
                                        "attributes": {
                                        "fiat_id": "1",
                                        "fiat_symbol": "EUR",
                                        "balance": "9909.00000000",
                                        "name": "EUR Wallet",
                                        "pending_transactions_count": 0
                                        },
                                        "id": "4019cdb0-1d62-11e8-b4b2-313f9b0a3bca"

                                        von diesen attributen soll alles abgerufen werden.

                                        später kommt auch noch das asses-wallet mit hinzu. da wäre glaube ich dein flow mit alles was da kommt rüber schicken gut. aber erstmal wäre ich froh wenn ich dieses ding hier zum laufen bekomme

                                        mickym 2 Replies Last reply Reply Quote 0
                                        • mickym
                                          mickym Most Active @DasBo1975 last edited by

                                          @dasbo1975

                                          a47174e0-bdeb-45a6-8d76-3de341f1b157-image.png

                                          So OK?

                                          https://try.jsonata.org/cj35W4Jl5

                                          1 Reply Last reply Reply Quote 0
                                          • mickym
                                            mickym Most Active @DasBo1975 last edited by

                                            @dasbo1975 sagte in Werte von Bitpanda abrufen:

                                            ich bräuchte von dort den ersten baum (die Daten aus Object 0)

                                            Du brauchst also nicht das ganze Array, sondern nur das 1. Element - also 0?

                                            D 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            796
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            bitpanda
                                            3
                                            65
                                            2096
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo