Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. (GELÖST) Syntax API REST Swagger via Curl etc.

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.3k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.3k

(GELÖST) Syntax API REST Swagger via Curl etc.

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
7 Beiträge 3 Kommentatoren 924 Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • M Offline
    M Offline
    Moebi
    schrieb am zuletzt editiert von Moebi
    #1

    Ich stehe mit Swagger & der REST API ganz am Anfang.

    Aktuell hab ich ein Problem die Syntax zu verstehen und für mich nutzbar umzustellen.

    In der vom Anbieter bereitgestellten SWAGGER UI konnte ich mich zurechtfinden, aber in der praktischen Anwendung im IOBROKER checke ich nicht wie ich den Code nutzbar mache.

    Ich hatte gehofft ein einfaches (blockly)script mit dem API Aufruf laufen zu lassen, aber die Swagger UI gibt mir zwei Blöcke aus.

    curl -X 'GET' \
      'https://connect.paj-gps.de/api/trackerdata/012345/last_minutes?lastMinutes=30&gps=1&wifi=0' \
      -H 'accept: application/json' \
      -H 'Authorization: Bearer ICHbinEINTOKEN' \
      -H 'X-CSRF-TOKEN: '```
    

    und

    https://connect.paj-gps.de/api/trackerdata/012345/last_minutes?lastMinutes=30&gps=1&wifi=0
    

    Om oberen CodeBlock sind mehrere Zeilen, die bekomme ich nicht in einen Blockly hinein (oder doch?)

    Im unteren fehlen das TOKEN etc. somit ist die zeile auch nicht allein nutzbar.

    Als Body wird dann die Information geliefert, aber das kann ich zzt. nur auf der Anbieterseite im SWAGGER UI sehen.

    {
      "success": [
        {
          "id": "blablabla1234567890",
          "lat": 53.87654321,
          "lng": 10.123456,
          "direction": 36,
          "dateunix": 1674631777,
          "battery": 3,
          "speed": 0,
          "iddevice": 012345,
          "steps": 0,
          "heartbeat": 0,
          "accuracy": 0,
          "wifi": null,
          "note": null
        },
    

    Falls es interresiert:
    Ich habe einen GPS Sender in meinem PKW, den Standort möchte ich über VIS darstellen bzw die Koordinaten weiter verarbeiten

    Wie kann ich das CURL Commando in Blockly nutzen um den Body zurückzubekommen?

    haus-automatisierungH 1 Antwort Letzte Antwort
    0
    • M Moebi

      Ich stehe mit Swagger & der REST API ganz am Anfang.

      Aktuell hab ich ein Problem die Syntax zu verstehen und für mich nutzbar umzustellen.

      In der vom Anbieter bereitgestellten SWAGGER UI konnte ich mich zurechtfinden, aber in der praktischen Anwendung im IOBROKER checke ich nicht wie ich den Code nutzbar mache.

      Ich hatte gehofft ein einfaches (blockly)script mit dem API Aufruf laufen zu lassen, aber die Swagger UI gibt mir zwei Blöcke aus.

      curl -X 'GET' \
        'https://connect.paj-gps.de/api/trackerdata/012345/last_minutes?lastMinutes=30&gps=1&wifi=0' \
        -H 'accept: application/json' \
        -H 'Authorization: Bearer ICHbinEINTOKEN' \
        -H 'X-CSRF-TOKEN: '```
      

      und

      https://connect.paj-gps.de/api/trackerdata/012345/last_minutes?lastMinutes=30&gps=1&wifi=0
      

      Om oberen CodeBlock sind mehrere Zeilen, die bekomme ich nicht in einen Blockly hinein (oder doch?)

      Im unteren fehlen das TOKEN etc. somit ist die zeile auch nicht allein nutzbar.

      Als Body wird dann die Information geliefert, aber das kann ich zzt. nur auf der Anbieterseite im SWAGGER UI sehen.

      {
        "success": [
          {
            "id": "blablabla1234567890",
            "lat": 53.87654321,
            "lng": 10.123456,
            "direction": 36,
            "dateunix": 1674631777,
            "battery": 3,
            "speed": 0,
            "iddevice": 012345,
            "steps": 0,
            "heartbeat": 0,
            "accuracy": 0,
            "wifi": null,
            "note": null
          },
      

      Falls es interresiert:
      Ich habe einen GPS Sender in meinem PKW, den Standort möchte ich über VIS darstellen bzw die Koordinaten weiter verarbeiten

      Wie kann ich das CURL Commando in Blockly nutzen um den Body zurückzubekommen?

      haus-automatisierungH Online
      haus-automatisierungH Online
      haus-automatisierung
      Developer Most Active
      schrieb am zuletzt editiert von haus-automatisierung
      #2

      @moebi sagte in Syntax API REST Swagger via Curl etc.:

      Wie kann ich das CURL Commando in Blockly nutzen um den Body zurückzubekommen?

      Theoretisch könntest Du mit exec auch curl aufrufen. Aber das wäre ziemlich unnötig, weil JavaScript ja auch wunderbar HTTP-Requests senden kann. Wozu also curl nutzen.

      @moebi sagte in Syntax API REST Swagger via Curl etc.:

      Om oberen CodeBlock sind mehrere Zeilen

      Das ist nicht das Thema. Du könntest die Backslash in jeder Zeile entfernen und alles in eine Zeile schreiben (Bash Grundlagen anschauen). Aber: Blockly wird generell schwierig, weil der request Baustein keine eigenen HTTP-Header annehmen kann. Daher am besten JavaScript:

      Per Axios (das Paket wird mit dem JavaScript-Adapter mitinstalliert und kann daher direkt verwendet werden):

      const axios = require('axios').default;
      
      axios.get('https://connect.paj-gps.de/api/trackerdata/012345/last_minutes?lastMinutes=30&gps=1&wifi=0', {
          headers: {
             'Content-Type': 'application/json',
             'Authorization': 'Bearer ICHbinEINTOKEN'
         }
      }).then(response => {
          if (response.status === 200) {
              console.log(response.data);
          }
      }).catch(err => {
          console.error(err);
      });
      

      🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
      🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
      📚 Meine inoffizielle ioBroker Dokumentation

      M P 2 Antworten Letzte Antwort
      0
      • haus-automatisierungH haus-automatisierung

        @moebi sagte in Syntax API REST Swagger via Curl etc.:

        Wie kann ich das CURL Commando in Blockly nutzen um den Body zurückzubekommen?

        Theoretisch könntest Du mit exec auch curl aufrufen. Aber das wäre ziemlich unnötig, weil JavaScript ja auch wunderbar HTTP-Requests senden kann. Wozu also curl nutzen.

        @moebi sagte in Syntax API REST Swagger via Curl etc.:

        Om oberen CodeBlock sind mehrere Zeilen

        Das ist nicht das Thema. Du könntest die Backslash in jeder Zeile entfernen und alles in eine Zeile schreiben (Bash Grundlagen anschauen). Aber: Blockly wird generell schwierig, weil der request Baustein keine eigenen HTTP-Header annehmen kann. Daher am besten JavaScript:

        Per Axios (das Paket wird mit dem JavaScript-Adapter mitinstalliert und kann daher direkt verwendet werden):

        const axios = require('axios').default;
        
        axios.get('https://connect.paj-gps.de/api/trackerdata/012345/last_minutes?lastMinutes=30&gps=1&wifi=0', {
            headers: {
               'Content-Type': 'application/json',
               'Authorization': 'Bearer ICHbinEINTOKEN'
           }
        }).then(response => {
            if (response.status === 200) {
                console.log(response.data);
            }
        }).catch(err => {
            console.error(err);
        });
        
        M Offline
        M Offline
        Moebi
        schrieb am zuletzt editiert von
        #3

        @haus-automatisierung
        Juhuu, DANKE.

        Da hab ich die tatsächlich eine Lücke!
        Die Bash Grundlagen sind echt noch nicht verinnerlicht.
        (Ich gelobe Besserung :relaxed: )

        Mit

        }).then(response => {
            if (response.status === 200) {
                console.log(response.data);
                setState("0_userdata.0.gpsresponse",response.data)
            }
        

        habe ich nun meine Antwort im Datenpunkt.
        Von dort aus kann ich weiter puzzlen. TOP

        (Wie kann ich den Fall als GELÖST markieren? Urspüngliche Überschrift editieren?)

        M 1 Antwort Letzte Antwort
        0
        • M Moebi

          @haus-automatisierung
          Juhuu, DANKE.

          Da hab ich die tatsächlich eine Lücke!
          Die Bash Grundlagen sind echt noch nicht verinnerlicht.
          (Ich gelobe Besserung :relaxed: )

          Mit

          }).then(response => {
              if (response.status === 200) {
                  console.log(response.data);
                  setState("0_userdata.0.gpsresponse",response.data)
              }
          

          habe ich nun meine Antwort im Datenpunkt.
          Von dort aus kann ich weiter puzzlen. TOP

          (Wie kann ich den Fall als GELÖST markieren? Urspüngliche Überschrift editieren?)

          M Offline
          M Offline
          Moebi
          schrieb am zuletzt editiert von
          #4

          @haus-automatisierung

          nur zum üben habe ich mir nun auch n curl script angelegt.

          paj script curl.JPG

          Danke für die Hilfe

          haus-automatisierungH 1 Antwort Letzte Antwort
          0
          • M Moebi

            @haus-automatisierung

            nur zum üben habe ich mir nun auch n curl script angelegt.

            paj script curl.JPG

            Danke für die Hilfe

            haus-automatisierungH Online
            haus-automatisierungH Online
            haus-automatisierung
            Developer Most Active
            schrieb am zuletzt editiert von
            #5

            @moebi sagte in (GELÖST) Syntax API REST Swagger via Curl etc.:

            nur zum üben habe ich mir nun auch n curl script angelegt.

            Top! Allerdings immer im Hinterkopf behalten, dass das sehr viel umständlicher ist und man mehr Abhängigkeiten hat (curl muss installiert sein) und exec erst in den Einstellungen der JavaScript-Instanz freigeschaltet werden muss.

            🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
            🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
            📚 Meine inoffizielle ioBroker Dokumentation

            1 Antwort Letzte Antwort
            0
            • haus-automatisierungH haus-automatisierung

              @moebi sagte in Syntax API REST Swagger via Curl etc.:

              Wie kann ich das CURL Commando in Blockly nutzen um den Body zurückzubekommen?

              Theoretisch könntest Du mit exec auch curl aufrufen. Aber das wäre ziemlich unnötig, weil JavaScript ja auch wunderbar HTTP-Requests senden kann. Wozu also curl nutzen.

              @moebi sagte in Syntax API REST Swagger via Curl etc.:

              Om oberen CodeBlock sind mehrere Zeilen

              Das ist nicht das Thema. Du könntest die Backslash in jeder Zeile entfernen und alles in eine Zeile schreiben (Bash Grundlagen anschauen). Aber: Blockly wird generell schwierig, weil der request Baustein keine eigenen HTTP-Header annehmen kann. Daher am besten JavaScript:

              Per Axios (das Paket wird mit dem JavaScript-Adapter mitinstalliert und kann daher direkt verwendet werden):

              const axios = require('axios').default;
              
              axios.get('https://connect.paj-gps.de/api/trackerdata/012345/last_minutes?lastMinutes=30&gps=1&wifi=0', {
                  headers: {
                     'Content-Type': 'application/json',
                     'Authorization': 'Bearer ICHbinEINTOKEN'
                 }
              }).then(response => {
                  if (response.status === 200) {
                      console.log(response.data);
                  }
              }).catch(err => {
                  console.error(err);
              });
              
              P Offline
              P Offline
              Pischleuder
              schrieb am zuletzt editiert von Pischleuder
              #6

              @Moebi

              @moebi sagte in Syntax API REST Swagger via Curl etc.:

              Wie kann ich das CURL Commando in Blockly nutzen um den Body zurückzubekommen?

              Theoretisch könntest Du mit exec auch curl aufrufen. Aber das wäre ziemlich unnötig, weil JavaScript ja auch wunderbar HTTP-Requests senden kann. Wozu also curl nutzen.

              @moebi sagte in Syntax API REST Swagger via Curl etc.:

              Om oberen CodeBlock sind mehrere Zeilen

              Das ist nicht das Thema. Du könntest die Backslash in jeder Zeile entfernen und alles in eine Zeile schreiben (Bash Grundlagen anschauen). Aber: Blockly wird generell schwierig, weil der request Baustein keine eigenen HTTP-Header annehmen kann. Daher am besten JavaScript:

              Per Axios (das Paket wird mit dem JavaScript-Adapter mitinstalliert und kann daher direkt verwendet werden):

              const axios = require('axios').default;
              
              axios.get('https://connect.paj-gps.de/api/trackerdata/012345/last_minutes?lastMinutes=30&gps=1&wifi=0', {
                  headers: {
                     'Content-Type': 'application/json',
                     'Authorization': 'Bearer ICHbinEINTOKEN'
              

              Hallo Moebi,

              zum Verständnis:

              • oben hinter Trackerdata kommt die Nummer des GPS-Trackers hinein, korrekt ?
              • hinter Authorization: was genau wird hier eingegeben ? Meine Zugangsdaten zum Finderportal funktionieren nicht

              Gruss

              M 1 Antwort Letzte Antwort
              0
              • P Pischleuder

                @Moebi

                @moebi sagte in Syntax API REST Swagger via Curl etc.:

                Wie kann ich das CURL Commando in Blockly nutzen um den Body zurückzubekommen?

                Theoretisch könntest Du mit exec auch curl aufrufen. Aber das wäre ziemlich unnötig, weil JavaScript ja auch wunderbar HTTP-Requests senden kann. Wozu also curl nutzen.

                @moebi sagte in Syntax API REST Swagger via Curl etc.:

                Om oberen CodeBlock sind mehrere Zeilen

                Das ist nicht das Thema. Du könntest die Backslash in jeder Zeile entfernen und alles in eine Zeile schreiben (Bash Grundlagen anschauen). Aber: Blockly wird generell schwierig, weil der request Baustein keine eigenen HTTP-Header annehmen kann. Daher am besten JavaScript:

                Per Axios (das Paket wird mit dem JavaScript-Adapter mitinstalliert und kann daher direkt verwendet werden):

                const axios = require('axios').default;
                
                axios.get('https://connect.paj-gps.de/api/trackerdata/012345/last_minutes?lastMinutes=30&gps=1&wifi=0', {
                    headers: {
                       'Content-Type': 'application/json',
                       'Authorization': 'Bearer ICHbinEINTOKEN'
                

                Hallo Moebi,

                zum Verständnis:

                • oben hinter Trackerdata kommt die Nummer des GPS-Trackers hinein, korrekt ?
                • hinter Authorization: was genau wird hier eingegeben ? Meine Zugangsdaten zum Finderportal funktionieren nicht

                Gruss

                M Offline
                M Offline
                Moebi
                schrieb am zuletzt editiert von
                #7

                @pischleuder die Zugangsdaten sind das Token welches du beginnst wenn du dich via API mit den Login Daten authentifiziert.

                Also API token erstellen
                Mit token über die API die gewünschten Daten abfragen.

                Token ist nur begrenzt gültig

                1 Antwort Letzte Antwort
                0
                Antworten
                • In einem neuen Thema antworten
                Anmelden zum Antworten
                • Älteste zuerst
                • Neuste zuerst
                • Meiste Stimmen


                Support us

                ioBroker
                Community Adapters
                Donate

                748

                Online

                32.4k

                Benutzer

                81.4k

                Themen

                1.3m

                Beiträge
                Community
                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                ioBroker Community 2014-2025
                logo
                • Anmelden

                • Du hast noch kein Konto? Registrieren

                • Anmelden oder registrieren, um zu suchen
                • Erster Beitrag
                  Letzter Beitrag
                0
                • Home
                • Aktuell
                • Tags
                • Ungelesen 0
                • Kategorien
                • Unreplied
                • Beliebt
                • GitHub
                • Docu
                • Hilfe