• Json RCP API cmdb_status setzen

    2
    0 Votes
    2 Posts
    42 Views
    Michael HuhnM

    :pepehi: @Niklas-K

    Unter der Verwaltung -> Vordefinierte Inhalte -> CMDB Status existieren allerdings diese Einträge "in Betrieb" bzw. "außer Betrieb" nicht, jedoch kann ich sie für alle Objekte auswählen. Das ist schonmal ziemlich komisch?

    Diese CMDB Status auszublenden ist vielleicht nicht toll aber das wurde so gemacht, damit die von uns benötigten CMDB Status nicht editiert werden können.

    Ohne den Request zu kennen ist es ziemlich schwer zu sagen was da falsch ist.

    Ansonsten schau mal hier:
    https://kb.i-doit.com/de/i-doit-add-ons/api/methoden/v1/cmdb.category.html#cmdbcategoryupdate

    Und prüf mal diesen Request:

    { "method": "cmdb.category.save", "params": { "object": 1122600468, "category": "C__CATG__GLOBAL", "data": { "cmdb_status": 10 }, "apikey": "bierbank" }, "id": 1, "version": "2.0" }

    Über cmdb.status.read kannst du dir die IDs anzeigen lassen:

    { "version": "2.0", "method": "cmdb.status.read", "params": { "apikey": "bierbank", "language": "en" }, "id": 1 }
  • Flows + API Attribut vererbung

    1
    0 Votes
    1 Posts
    26 Views
    No one has replied
  • 0 Votes
    6 Posts
    162 Views
    L

    @Michael-Huhn Danke für die Info 👍

  • Datei via API hochladen und Workplace anhängen.

    2
    0 Votes
    2 Posts
    92 Views
    Michael HuhnM

    :pepehi: @leno2206

    das Problem bei Dateien ist, die müssen als Base64 kodiert sein :sadge:.

    Datei Objekt erstellen und eine Datei hochladen:

    { "id": 1, "version": "2.0", "method": "cmdb.object.create", "params": { "type": "C__OBJTYPE__FILE", "title": "UserImage", "categories": { "C__CATS__FILE_VERSIONS": [ { "file_physical": "UserImage.png", "file_content": "BASE64=", "file_title": "UserImage.png" } ] }, "apikey": "key", "language": "en" } }

    Dann hab ich hier noch ein Beispiel für das Zuweisen einer Datei zu einem Objekt:

    { "id": 1, "version": "2.0", "method": "cmdb.category.save", "params": { "object": 1123375323, "category": "C__CATG__FILE", "data": { "file": 1123375614, "link": null, "description": null }, "apikey": "key", "language": "en" } }

    Ps. wenn ich versuche die Datei hochzuladen und direkt zuzuweisen, bekomme ich einen 500er.

    AH01071: Got error 'PHP message: PHP Fatal error: Uncaught TypeError: isys_application::getUploadFilePath(): Argument #1 ($fileName) must be of type string, null given,

    Dazu erstelle ich einen Bug Report :sadge:

    { "id": 1, "version": "2.0", "method": "cmdb.object.create", "params": { "type": "C__OBJTYPE__FILE", "title": "UserImage", "categories": { "C__CATS__FILE_VERSIONS": [ { "file_physical": "UserImage.png", "file_content": "BASE64=", "file_title": "UserImage.png" } ], "C__CATS__FILE_OBJECTS": [ { "assigned_objects": 9 } ] }, "apikey": "key", "language": "en" } }
  • Client und Contact über eine API Abfrage erstellen

    3
    0 Votes
    3 Posts
    144 Views
    K

    @Michael-Huhn

    Danke erstmal für die zwei Beispiele.
    Beide setzen aber voraus, dass der "contact" schon existiert - das ist bei mir nicht der Fall.
    Da wäre halt die Idee beides in einer Abfrage zu vereinen, ich kann mir aber gut vorstellen, dass das so nicht vorgesehen ist.

  • Lizenztyp Sockel-basiert

    2
    0 Votes
    2 Posts
    51 Views
    Michael HuhnM

    :pepehi: @plox

    also in der Demo seh ich dazu nichts, daher wohl nein.
    a68625b5-6574-4b21-be32-aafa3337f42b-image.png

  • Ja-Nein-Feld über API auf "Nichts" setzten

    3
    0 Votes
    3 Posts
    97 Views
    L

    Alles klar. Danke für die Erklärung und den Workaround 🙂

  • PHP API : api-client-php

    8
    0 Votes
    8 Posts
    2k Views
    LFischerL

    Hallo @uhaase

    der API Client unterstützt noch keine der v2 Endpunkte - wobei das bisher auch gar nicht nötig ist. Die v2 Endpunkte wurden in erster Linie ins leben gerufen um die Parameter zu vereinheitlichen (z.B. werden objID, catgID oder catsID mit object und category usw. getauscht) - der API Client übernimmt dies aber schon im Vergleich zur "rohen" Kommunikation mit der API.

    Ich muss auch gestehen das die v2 Endpunkte nur sehr langsam Fortschritte machen und viele der object und category Endpunkte im v2 Kontext noch nicht existieren, da wir damit auf eine i-doit interne API aufbauen wollen, die noch nicht fertig ist.

    Ich denke lediglich die cmdb.external.pull.v2 und cmdb.external.push.v2 müssten wir hier nachziehen, da es sich dabei um neue Endpunkte handelt die vorher nicht existiert haben.

    Oder wolltest du auf etwas anderes hinaus 🤔 ?

    Viele Grüße
    Leo

  • API Abfrage - Primary contact - no title

    2
    0 Votes
    2 Posts
    65 Views
    P.BluhmP

    Moin

    Erstelle dir doch einfach einen Bericht in i-doit über den Report Manager und lese den aus.

    { "version": "2.0", "method": "cmdb.reports.read", "params": { "language": "en", "apikey": "meinkey", "id": "112" <---- report id }, "id": 1 }

    Report konfigurieren
    fc6b4012-577c-4251-ad23-9f5abb7fb138-grafik.png

    Ergebnis:

    { "id": 1, "jsonrpc": "2.0", "result": [ { "Title": "srv-erp", "Contact": "Pattrick Bluhm", "Primary": "Yes" }, { "Title": "srv-dc1", "Contact": "Heike Müller", "Primary": "Yes" } ] }
  • Probleme mit der JSON RPC API - Immer code -32600

    11
    1 Votes
    11 Posts
    618 Views
    P

    @LFischer

    Super Sache, genauere Fehlermeldungen sind natürlich immer gerne gesehen!

    Danke nochmals fürs Helfen.

    Grüsse,
    Pippo

  • (simple) REST API für Objekte und Kategorien

    2
    0 Votes
    2 Posts
    186 Views
    S

    @tschreinercomp Das ist relativ einfach lösbar über eine Erweiterung der JSON-RPC API in i-doit.
    Das haben wir so auch gelöst.

    Hier hast du zwei Optionen:

    JSON-RPC Api erweitern https://kb.i-doit.com/de/software-entwicklung/add-ons-entwickeln/api-erweitern.html Eigener Controller über Symfony Routing component

    Beachte, dass letztere Option etwas sperriger ist, weil für den Aufruf eine gültige Session existieren muss.
    Erste Option, also via JSON-RPC, ist angenehmer weil du dort username+password+api-key oder halt session dem Request mitgeben kannst.

    Referenz:

    https://kb.i-doit.com/de/software-entwicklung/add-ons-entwickeln/api-erweitern.html

  • Felder eines Objekts (Client) ändern

    3
    0 Votes
    3 Posts
    120 Views
    Michael HuhnM

    :pepehi: @Franky779

    ich denke dir sollten die Infos aus der Knowledge Base helfen.
    -> https://kb.i-doit.com/en/i-doit-pro-add-ons/api/methods/index.html

  • Contact Deatails per API Abfragen

    3
    0 Votes
    3 Posts
    190 Views
    F

    OK, mit SEHR viel rumprobieren komme ich dorthin wo ich will. Wer das noch braucht. Hier meine Abfrage.

    params = { "id": 12345, "categories": ["C__CATS__PERSON"], "filter": { "type": 53, "ids":[12345] }, } contactDetails = objIdoit.getJsonData(method='cmdb.objects.read', params=params)

    id = Contact ID in idoit
    categories C__CATS__PERSON = die erweiterten Infos zum Kontakt inkl. Custom Fields
    type 53 = Personen

  • Benutzer zu Client auslesen - API

    5
    0 Votes
    5 Posts
    181 Views
    F

    @LFischer

    Danke. Der Benutzer hat auf jeden Fall "Administrator und primary"

    Die Abfrage mit C__RELATION_TYPE__ADMIN liefert kein Ergebnis. C__RELATION_TYPE__USER mir brav den Contact.

    59f6a2cc-1cf3-499f-91cd-1903c1be5560-image.png

  • Erstellen sowie zuweisung von Cluster Member

    3
    0 Votes
    3 Posts
    292 Views
    J

    @MartinV danke für die Antwort. Jetzt funktionierts ich hab übersehen das ich einen Array mitgeben muss.

  • Neuer Controller über Symfony Routing component -> Benutzerrechte

    3
    0 Votes
    3 Posts
    192 Views
    S

    @LFischer Hallo Leo, vielen Dank für deine Unterstützung 🙂

    Wir haben die API auf Basis der Anleitung erweitert.

    Viele Grüße

    Steven

  • Custom Category mittels API erstellen

    2
    0 Votes
    2 Posts
    166 Views
    LFischerL

    Hallo @hu

    über die API lassen sich keine benutzerdefinierten Kategorien erstellen. Der Vorgang ist leider relativ komplex und bedarf einer umfangreichen Konfiguration... Das wäre über die API nur äußerst schwierig abzubilden 😕

    VG Leo

  • Kabelverbindung via API erstellen

    4
    0 Votes
    4 Posts
    329 Views
    huH

    @jakob : sehr gerne 🙂

  • JSON-RPC: zwei Patchpanels mit einem Kabel verbinden

    2
    0 Votes
    2 Posts
    330 Views
    huH

    ... ich beantworte es mir an dieser Stelle einfach mal selber, damit anderen evtl. geholfen sein möge:

    → zwei Patchpanels mit einem Trunk verbinden

  • Beziehung löschen

    1
    0 Votes
    1 Posts
    173 Views
    No one has replied