• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    NYXnyx :: API
    Nove API:
    Postup ziskani tokenu

    Postupně vznikající popis API ve Swaggeru (už by tam měl být nějaký základ):
    https://app.swaggerhub.com/apis/nyx.cz/nyx.cz/0.0.1 
    rozbalit záhlaví
    NYX
    NYX --- ---
    GIOMIKY: tohle je free verze a pokud to budu dokumentovat sam, asi i zustane...pokud neco neprehlizim :)
    GIOMIKY
    GIOMIKY --- ---
    NYX: To vypada dobre... doufam, ze za to moc neplatis. ...
    GIOMIKY
    GIOMIKY --- ---
    NYX: Nejakou tu certovinu lze tusit z toho loopu zavislosti bunky na bunce. Jakoze uz jsem trosku zkousel neco psat pro alpha api. Reknu ti, je to docela zbesily. Asi se vetsina klientu bude muset napsat znovu. Nevim, jestli je to tim, ze jsem to psal blbe (asi dost jo). Ale v podstate parsovaci funkce, vykreslovaci funkce, funkce na ziskavani dat.... vsechno je to lepsi predelat.
    NYX
    NYX --- ---
    GIOMIKY: Ja to postupne zacnu strkat do toho swaggeru...ten context treba vypada takhle https://app.swaggerhub.com/apis/nyx.cz/nyx.cz/0.0.1

    Predpokladam, ze nejdriv pokryju volani, ktera pouziva ted Fyx (je jich jen par co jsem koukal)...a pak casem nejak ten zbytek.
    GIOMIKY
    GIOMIKY --- ---
    NYX: Jakoze jo, mas pravdu. Vytvari to dot soubory a z tech to potom renderuje. Ale obavam se, ze je vlastnost graphvizu, jak sklada grafy. Pocita s unikatnosti nazvu nodu grafu. Asi to casem mozna poresim, ale ted by to mohlo na prekodovani conyxu stacit.
    NYX
    NYX --- ---
    NYX: asi to matou ty bookmarks uvnitr bookmarks :)

    NYX
    NYX --- ---
    GIOMIKY: imho to stale nedalo tu strukturu spravne
    GIOMIKY
    GIOMIKY --- ---
    GIOMIKY: Sorry za double-post, ale prave jsem opravil jeden parsovaci bug, ktery zapricinil vynechani nekterych klicu.

    GIOMIKY
    GIOMIKY --- ---
    Ahoj všichni,
    tak jsem se podíval na alphu, co to dává za jsony. U některých stránek, které mi odpověděly na první pokus jsem je v graphvizu vyrendroval.
    Nevím, jestli je to správně, ale něco mi to zobrazilo.
    https://bh.xf.cz/pub/nyx2/
    Jestli bude čas, tak na to ještě můžu kouknout.
    Přikládám, jak vypadá například https://alpha.nyx.cz/api/bookmarks/all
    Tak ať se Nyx II v roce MMXXI daří.

    NYX
    NYX --- ---
    VIRTUALVOID: Snad jo, az zacne fungovat ten automaticky generator :)
    VIRTUALVOID
    VIRTUALVOID --- ---
    NYX: bude k tomu swagger / openapi ? alebo aspon wiki ?
    NYX
    NYX --- ---
    GIOMIKY: Prepisovani imho zas tak moc ne, ted se pouziva jen par veci, ktere maji nejaky svuj ekvivalent...zbytek je novy a pouzit se nemusi.
    GIOMIKY
    GIOMIKY --- ---
    NYX: hmm... ok... to bude docela dost prepisovani v klientech... ;D
    NYX
    NYX --- ---
    GIOMIKY: Zacnu dokumentovat co nejdriv, zatim ciste dump z toho co tam je:

    GET /api/gate
    GET /api/activity/<username>
    GET /api/people/active
    GET /api/people/active_friends
    GET /api/people/settings?<filter..>
    POST /api/profile/reference_reply/<reply_username>
    GET /api/icon/<username>
    GET /api/icon/<username>/discussion/<discussion_id>
    DELETE /api/profile/delete_token/<token>
    GET /api/mail
    GET /api/mail?<filter..>
    GET /api/mail/unread/<username>
    GET /api/mail/reminders
    POST /api/mail/send
    GET /api/mail/summary
    DELETE /api/mail/delete/<id>
    DELETE /api/mail/delete_unread/<id>
    POST /api/mail/reminder/<id>/<new_state>
    GET /api/notifications
    GET /api/bookmarks
    GET /api/bookmarks?<q..>
    GET /api/bookmarks/all
    GET /api/bookmarks/history
    GET /api/bookmarks/history/more
    GET /api/bookmarks/reminders
    POST /api/event/<discussion_id>/attendance/<new_state>
    POST /api/event/<did>/key_photo/<fid>
    GET /api/events?<q..>
    POST /api/events/location/<area_id>/<state>
    GET /api/market?<q..>
    GET /api/market/mine
    POST /api/market/<did>/state/<new_state>
    GET /api/market/<discussion_id>/parameters/<category_id>
    GET /api/discussion/<discussion_id> [2]
    GET /api/discussion/<discussion_id>?<filter..>
    GET /api/discussion/<discussion_id>/single/<id>
    GET /api/discussion/<discussion_id>/id/<id>/replies
    POST /api/discussion/rights?<q..>
    POST /api/discussion/rights/days_left?<q..>
    DELETE /api/discussion/rights?<q..>
    DELETE /api/discussion/<discussion_id>/delete/<id>
    POST /api/discussion/<discussion_id>/reminder/<id>/<new_state>
    POST /api/discussion/<discussion_id>/rating/<id>/<action>
    GET /api/discussion/<discussion_id>/rating/<id>
    POST /api/discussion/<discussion_id>/send/text
    GET /api/discussion/<discussion_id>/poll/<post_id>/results
    GET /api/discussion/<discussion_id>/content/poll/<content_id>/results
    POST /api/discussion/<discussion_id>/poll/<post_id>/vote/<answer_ids>
    POST /api/discussion/<discussion_id>/content/poll/<content_id>/vote/<answer_ids>
    POST /api/discussion/<discussion_id>/poll/<post_id>/finish
    POST /api/discussion/<discussion_id>/content/poll/<content_id>/finish
    POST /api/discussion/<discussion_id>/dice/<post_id>/roll
    POST /api/discussion/<discussion_id>/content/dice/<content_id>/roll
    POST /api/discussion/<discussion_id>/registration/<post_id>/confirm
    POST /api/discussion/<discussion_id>/discussion_create_request/<post_id>/vote_for
    POST /api/discussion/<discussion_id>/discussion_create_request/<post_id>/vote_against
    POST /api/discussion/<_discussion_id>/discussion_create_request/<post_id>/confirm
    POST /api/discussion/<_discussion_id>/discussion_create_request/<post_id>/cancel
    GET /api/last/discussions
    GET /api/last?<q..>
    GET /api/last
    GET /api/last/min_rating/<min_rating>
    GET /api/last/rated_by_friends
    PUT /api/file/upload
    DELETE /api/file/delete/<id>
    POST /api/file/embed/<id>/<state>
    GET /api/search/username/<username>
    GET /api/search/unified?<search>&<limit>
    GET /api/topics/category_for_dropdown/<domain_id>
    POST /api/create_token/<username>
    POST /api/register_for_notifications/<token>/<client>/<client_token>
    NYX
    NYX --- ---
    GIOMIKY: jj, viz nize

    Slušná část endpointů je dostupná čistě přidáním /api na začátek cesty, tj. z /mail se udělá /api/json a hurá, JSON. Jen někde dávalo smysl udělat nějaký custom, který akceptuje parametry v nějaké smysluplnější podobě.
    GIOMIKY
    GIOMIKY --- ---
    NYX: Super, uz jsem stahnul postu... prikladam zakladni pouziti v php ... akorat by se casem hodilo, jake funkce to ma... ale vsiml jsem si, ze ty url na alpha jsou asi strukturovany podobne jako API?



    NYX
    NYX --- ---
    GIOMIKY: Moje blbost :)
    GIOMIKY
    GIOMIKY --- ---
    NYX: :-) Aha... moje chyba, generoval jsem tokeny tobe
    (https://alpha.nyx.cz/api/create_token/NYX)
    a ne https://alpha.nyx.cz/api/create_token/UZIVATEL
    Myslel jsem, ze to Nyx je jako jmeno aplikace, pro kterou generuju ... sorry

    NYX
    NYX --- ---
    NYX: Samozrejme se svym nickem :) Takze

    curl --location --request POST 'https://alpha.nyx.cz/api/create_token/GIOMIKY'
    GIOMIKY
    GIOMIKY --- ---
    NYX: O.K. zatim mam pocit na alpha jeste neuplne funguje autorizace api... nejak jsem nenasel, kam zadat autorizacni kod. Muzu si vytvorit rucne, pojmenovat. Ale chce to heslo do Nyxu a ne autorizacni kod. Nevim, jestli to neni featura...
    Kliknutím sem můžete změnit nastavení reklam