Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

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

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.2k

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.5k

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

Scheduled Pinned Locked Moved Skripten / Logik
7 Posts 3 Posters 945 Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    Moebi
    wrote on last edited by 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 Reply Last reply
    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
      wrote on last edited by 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 Replies Last reply
      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
        wrote on last edited by
        #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 Reply Last reply
        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
          wrote on last edited by
          #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 Reply Last reply
          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
            wrote on last edited by
            #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 Reply Last reply
            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
              wrote on last edited by 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 Reply Last reply
              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
                wrote on last edited by
                #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 Reply Last reply
                0
                Reply
                • Reply as topic
                Log in to reply
                • Oldest to Newest
                • Newest to Oldest
                • Most Votes


                Support us

                ioBroker
                Community Adapters
                Donate

                779

                Online

                32.5k

                Users

                81.7k

                Topics

                1.3m

                Posts
                Community
                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                ioBroker Community 2014-2025
                logo
                • Login

                • Don't have an account? Register

                • Login or register to search.
                • First post
                  Last post
                0
                • Home
                • Recent
                • Tags
                • Unread 0
                • Categories
                • Unreplied
                • Popular
                • GitHub
                • Docu
                • Hilfe