scrobble.life
#steem

Notice of upcoming changes to anyx.io API

TL;DR: The anyx.io API will become hivemind only post-hardfork 21. Developers using Tags or Follow API plugins will need to update their code; if you don't use these, no changes are needed.


web-3967926_1920.jpg

I offer a steemd API full node via anyx.io.[1][2] It is a high-performance public API infrastructure, rivaling performance of Steemit Inc's own public API via api.steemit.com. This infrastructure was originally built in such a way as to help legacy applications transition with new changes, such as supporting Vessel (which requires websockets), as well as supporting the deprecated plugins called "Follow" and "Tags". These plugins were deprecated as the developed replacement by Steemit (hivemind) aimed to offer less RAM usage and enable future feature upgrades. Unfortunately, the swap came as a shock to many developers, so having legacy support was useful at the time.

However, with hardfork 21, these plugins are now beyond deprecated -- they are now unstable and can be considered broken. In the course of my testing over the past few weeks, I have had them fail (causing corrupted databases) on two occasions, without being able to track the issue properly.

Due to this, anyx.io is sadly forced to become hivemind-only post HF21. My previous separate domain name for hivemind infrastructure -- hive.anyx.io -- will be deprecated.

If you use follow or tags plugins directly (refer to them here: https://developers.steem.io/apidefinitions/), you need to change your calls to only use the below calls.

  get_followers
  get_following
  get_follow_count
  get_content
  get_content_replies
  get_state
  get_trending_tags
  get_discussions_by_trending
  get_discussions_by_hot
  get_discussions_by_promoted
  get_discussions_by_created
  get_discussions_by_blog
  get_discussions_by_feed
  get_discussions_by_comments
  get_replies_by_last_update
  get_blog
  get_blog_entries
  get_discussions_by_author_before_date

In addition, if you were already using any of the above calls, make sure you check and update your application to handle any differences in the result format. Notably, not all API calls have drastically changed, and most users should be unaffected.

Finally, if you currently use anyx.io and api.steemit.com interchangeably, you already do not need to change anything -- Steemit's API has been hivemind-only for months now. This is also an easy way to test your application.

Support for Vessel will continue post Hardfork 21.

Comments · 7

  • @aekraj(63)· 2541d

    steemcleaners

    Posted using Partiko Android

  • @steeminfobot(70)· 2553d

    Thanks for the downvote. Great witness.

  • @arcange(79)· 2553d

    Did you notice that condenser.get_content API call on your node returns less info (fields) than other nodes since you updated it?

    On other nodes: image.png

    On your node: image.png

    Any reason?

  • @pennsif(77)· 2554d

    This post has been included in the latest edition of The Steem News - a compilation of the key news stories on the Steem blockchain.

  • @lemouth(75)· 2555d

    Thanks for providing this API. It is one of the three APIs used by the steemstem.io app and various steemstem scripts allowing us to internally function well.

  • @holger80(75)· 2555d

    Can you check uft-8 support on your API server?

    from beem import Steem
    stm  = Steem("https://anyx.io")
    from beem.block import Block
    b = Block(35097419, steem_instance=stm)
    print(b.operations[-22]["value"]["title"])
    

    returns: <스파��맨 : 파 프롬 홈> 블루엔젤 니어 프롬 (퓨처) 홈 💙 whereas

    from beem import Steem
    stm  = Steem("https://api.steemit.com")
    from beem.block import Block
    b = Block(35097419, steem_instance=stm)
    print(b.operations[-22]["value"]["title"])
    

    returns <스파이더맨 : 파 프롬 홈> 블루엔젤 니어 프롬 (퓨처) 홈 💙

  • @blockchainstudio(72)· 2555d

    Hi @anyx, thank you for providing great api servers. I'm helping Busy from time to time, and Busy's default server is yours :)

    btw, could you check this?

    https://steemit.com/steemfinex/@steemfinex/steemfinex-2019-08-26#@blockchainstudio/re-cheetah-cheetah-re-steemfinexsteemfinex-2019-08-26-20190826t001908767z

    not sure if you remember this, but I've contributed many to steem/busy/keychain etc, and providing some free services (@scotauto, @scotview, etc) some of which makes a daily post. some are informative (@steemfinex), and some may be not so much I admit :) (@scotauto), but in that case, it's like steemauto.

    So please take @cheetah bot from my service accounts: @scotauto (by definition of daily report, it may be similar, as steemauto), @steemfinex (cheetah keeps saying that s/he found a similar content on https://steemfinex.com of course, cause both are mine :) Thanks!

    ps. use @steemfinex when you need to exchange STEEM/STEEMP :)