TikFinity-Dritt-API

TikFinity bietet die Möglichkeit, Drittanbieter-Tools zu integrieren. Benutzer können die Option "Drittanbieter-Aktion" über Aktionen & Events auswählen. Der Benutzer kann dann aus zwei Drop-Down-Menüs eine Aktion des Drittanbieter-Tools auswählen. Wenn du ein solches Tool schreiben möchtest, muss dein Tool eine API auf Port 8832 bereitstellen. TikFinity wird auf diese API zugreifen, um Daten abzurufen oder Aktionen auszulösen.

API

Dein Tool muss die folgenden Endpunkte bereitstellen:

App-Info

Gibt Informationen über deine App zurück, die in TikFinity angezeigt werden.

GET http://127.0.0.1:8832/api/app/info

JSON-Antwort:


{
  "data":{
    "author":"@zerodytrash",
    "name":"AwesomeApp",
    "version":"1.0"
   }
}

Kategorien abrufen

Gibt eine Liste (Array) von Kategorien zurück, die deine App unterstützt.

GET http://127.0.0.1:8832/api/features/categories

JSON-Antwort:


{
    "data": [
        {
            "categoryId": "smart_device_control",
            "categoryName": "Control Smart Devices"
        },
        {
            "categoryId": "serial_port_control",
            "categoryName": "Control Serial Port"
        },
        ...
     ]
}

Aktionen abrufen

Gibt eine Liste der Aktionen der ausgewählten Kategorie zurück.

GET http://127.0.0.1:8832/api/features/actions?categoryId=smart_device_control

JSON-Antwort:


{
    "data": [
        {
            "actionId": "turn_lights_off",
            "actionName": "Turn Lights Off"
        },
        {
            "actionId": "turn_lights_on",
            "actionName": "Turn Lights On"
        },
        ...
    ]
}

Aktion ausführen

Führt die vom Benutzer ausgewählte Aktion aus.

POST http://127.0.0.1:8832/api/features/actions/exec

JSON-Text:


{
  "categoryId":"smart_device_control",
  "actionId":"turn_lights_on",
  "context":{
    "triggerTypeId": 3,
    "userId": "123456789",
    "username": "Tesuser",
    "coins": 12
  }
}

JSON-Antwort:


{
  "data":[]
}

Cross-Origin-Ressourcentransfer

Da TikFinity eine Web-App ist, muss deine API den Zugriff explizit erlauben, indem du Header setzt und auf Preflight-OPTIONS-Anfragen antwortest. Andernfalls schlägt der Zugriff fehl. Bitte gib die folgenden Header für alle Antworten zurück:


Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: *
Access-Control-Allow-Methods: *

Trigger-Informationen

Die POST- /api/features/actions/exec -Anfrage enthält das Attribut triggerTypeId im Kontext, das verwendet werden kann, um zu bestimmen, was das Event ausgelöst hat. Hier ist eine Liste möglicher Trigger-Gründe:


1 = Share
2 = Command
3 = Gift (min coins value)
4 = Gift (specific gift)
6 = Join
7 = Likes (taps)
9 = Follow
10 = Subscribe
11 = Chat (any message)
12 = Emote
13 = First User Activity

Fehlerbehandlung

Wenn deine Anwendung bei der Verarbeitung der Anfragen auf einen Fehler stößt oder wenn du den Benutzer vor etwas warnen möchtest, füge einfach das Attribut "message" zur Antwort hinzu. Die TikFinity-UI zeigt dann eine Nachricht an.

Beispiel-Antwort:


{
  "message": "An error occurred while processing your request."
}

Support

Wenn du Fragen oder Probleme hast, kontaktiere uns bitte auf dem TikFinity Discord.