0

REST API Authentication in lokaler Installation

Wo generiert man einen API-Key für eine lokale ninox Installation und wie lautet die URL für den Zugriff auf die REST API?

(Folgendes haben wir versucht:
Wir haben apiAuthorization im server-config.json file gesetzt. Anschliessend kam beim Zugriff die Meldung “Account not found”.
Mit einem ungültigen/falschen Token kommt die Meldung „Not authenticated. Invalid authorization header.“).

5 Antworten

null
    • UweG
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Was heißt lokale Ninox Installation?
    Die NinoxDB liegt nicht in einem Team?

    API-Key auf NioixDB funktioniert nur, wenn die DB in einem Cloud-Team liegt.
    Den API-Key findet/erzeugt man auf Team->Zahnrad->Zapier Integration.

    • Leonid_Semik
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hallo Michael,

    meinst du on premise? Bei uns ist die API Key so eingetragen_

    ---

    "apiAuthorization": "Bearer 123456",

    ----

    • Compar AG
    • Michael.5
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Danke für eure Antworten.

    @UweG Mit lokaler Installation meine ich, dass Ninox auf unserem Server läuft und nicht in der Cloud.

    @Leonid Semik Ich vermute du sprichst vom server-config.json file.
    Diese Option habe ich auch gefunden, allerdings macht das für mich absolut keinen Sinn:
    Es scheint als könnte man nur einen API Key definieren. Welche Rechte bekommt man mit diesem Key?
    In einem guten Design sollte jede andere Software, die mit Ninox kommuniziert, einen eigenen Key mit eigenen Rechten bekommen.

    Wenn ich in der server-config.json Konfiguration einen Key setzte, dann kommt beim Zugriff auf die API die Meldung “Account not found”.
    Was mache ich falsch? Ich habe es mit folgender URL getestet: http://localhost/v1/teams/

    • Leonid_Semik
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hallo Michael,

    Ja, momentan gibt es nur einen Api-Key für die gesamte Anwendung. Die Rechte werden nicht beschränkt. Bei der release-Ankündigung wurde aber bereits gesagt, dass die Keys in der Zukunft mehrmals vergeben werden können.

    Mit lokalhost wirst du keinen Erfolg haben. Die Requests sollten an die API Adresse gehen. etwa so:

    ...

    let response := do as server
    http("GET", "https://DEINENINOXFIRMENSEITE/"+teamId()+"/api/v1/databases/", {
    Authorization: "Bearer 123456789",

    'Content-Type': "application/json"
    }, "")
    end;
    alert(text(response.result)
    ...

    So werden alle Datenbanken im Team aufgelistet. Die nächste Version von Ninox bringt auch die API änderung. Dabei werden die URLs an die Puplic angeglichen. 

     

    Leo

    • Compar AG
    • Michael.5
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hallo Leo

    Danke für deine Antwort. Hat funktioniert.

    Gruss
    Michael