Difference between revisions of "API Libraries"

From Steem Center
Jump to: navigation, search
(Updated Java wrapper.)
(adding beem to python APIs)
 
(6 intermediate revisions by 4 users not shown)
Line 1: Line 1:
API Libraries allow you to work with either the WebSocket [[Steemd]] API, or the cli_wallet API. They are available for many languages.
+
API Libraries allow you to work with either the WebSocket [[Steemd]] API, or the [[CLI_Wallet|cli_wallet]] API. They are available for many languages.
  
Be aware you don't need to run your own Steem daemon for most cases, you can just connect to a public one, such as [https://steem.ws Steem.WS] ran by @Xeroc and @Jesta
+
Be aware you don't need to run your own Steem daemon for most cases, you can just connect to a public one, such as [https://steem.ws Steem.WS] ran by @Xeroc and @Jesta.
  
 
Items tagged with {'''TX SIGNING'''} support the ability to build STEEM transactions. Those without the tag may not be able to build transactions, e.g. upvotes, price feeds etc.
 
Items tagged with {'''TX SIGNING'''} support the ability to build STEEM transactions. Those without the tag may not be able to build transactions, e.g. upvotes, price feeds etc.
Line 12: Line 12:
  
 
== Python ==
 
== Python ==
* [https://github.com/xeroc/piston Piston (@xeroc)] {'''TX SIGNING'''} - A powerful python API capable of making bots in just a few lines of code, and any other interaction with the Blockchain that you would require  
+
* [https://github.com/steemit/steem-python steem-python (Steemit Inc.)] {'''TX SIGNING'''} - "steem-python is the official STEEM library for Python. It comes with a BIP38 encrypted wallet and a practical CLI utility called steempy."
 +
* [https://github.com/xeroc/piston Piston (@xeroc)] {'''TX SIGNING'''} - A powerful python API capable of making bots in just a few lines of code, and any other interaction with the Blockchain that you would require.
 +
* [https://github.com/holgern/beem beem (@holgern)] {'''TX SIGNING'''} - Unofficial Python Library for Steem. A powerful python API similar to steem-python, but with additional features and Windows support.
  
 
== Javascript ==
 
== Javascript ==
Line 27: Line 29:
 
* [https://github.com/inertia186/radiator Radiator (@inertia)] {'''TX SIGNING'''} - Ruby API Client for Steem.
 
* [https://github.com/inertia186/radiator Radiator (@inertia)] {'''TX SIGNING'''} - Ruby API Client for Steem.
 
* [https://github.com/steem-third-party/steemdata-rb steemdata-rb (@inertia)] - ActiveRecord (ruby) wrapper for SteemData (see '''MongoDB''' below).
 
* [https://github.com/steem-third-party/steemdata-rb steemdata-rb (@inertia)] - ActiveRecord (ruby) wrapper for SteemData (see '''MongoDB''' below).
 +
* [https://github.com/netuoso/steem_api steem_api (@netuoso)] - Rails compatible gem that provides full DB connection and models to SteemSQL.com.
  
 
== Golang ==
 
== Golang ==
Line 34: Line 37:
 
== Java ==
 
== Java ==
  
* [https://github.com/marvin-we/steem-java-api-wrapper Steem API-Wrapper for Java (@dez1337)] {'''TX SIGNING'''} - An API Wrapper for Steem written in Java
+
* [https://github.com/marvin-we/steem-java-api-wrapper Steem API-Wrapper for Java (@dez1337)] {'''TX SIGNING'''} - An API Wrapper for Steem written in Java.
  
 
== SQL ==
 
== SQL ==
Line 42: Line 45:
 
== MongoDB ==
 
== MongoDB ==
  
* [http://steemdata.com/ SteemData (@furion)] - A publicly exposed MongoDB service containing all the blockchain data for STEEM.
+
* [https://steemdata.com/ SteemData (@furion)] - A publicly exposed MongoDB service containing all the blockchain data for STEEM. See also [[SteemData]].
  
 
== Rust ==
 
== Rust ==
Line 50: Line 53:
 
== Rethinkdb ==
 
== Rethinkdb ==
  
* [https://github.com/faddat/ingestron Ingestron Steem (@faddat)] - Rethinkdb Ingestor in Golang
+
* [https://github.com/faddat/ingestron Ingestron Steem (@faddat)] - Rethinkdb Ingestor in Golang.
 +
 
 +
== In other languages ==
 +
 
 +
* [[Galego]]: [[API_Bibliotecas_(Gal) | API Bibliotecas]]
 +
* [[繁體中文]] (Chinese, Traditional) : [[Steem.center(繁)]]
 +
* [[简体中文]] (Chinese, Simplified) : [[Steem.center(简)]]
 +
* [[日本語]] (Japanese): [[Steem.center (jp)]]
 +
* Include other [[Languages|languages]] versions if available
 +
 
 +
<br>
 +
 
  
  
 
[[Category:Lists]] [[Category:Technology]]
 
[[Category:Lists]] [[Category:Technology]]

Latest revision as of 02:49, 6 May 2018

API Libraries allow you to work with either the WebSocket Steemd API, or the cli_wallet API. They are available for many languages.

Be aware you don't need to run your own Steem daemon for most cases, you can just connect to a public one, such as Steem.WS ran by @Xeroc and @Jesta.

Items tagged with {TX SIGNING} support the ability to build STEEM transactions. Those without the tag may not be able to build transactions, e.g. upvotes, price feeds etc.

Building your own library

Both Steemd and the cli_wallet use a standard JSON RPC over Websockets or HTTP system for most calls. @klye has written an article explaining the basics of the JSON RPC system: https://steemit.com/steem/@klye/an-introduction-to-steemd-api-calls-functions-and-usage

To support transactions, such as upvoting, memos, and posts, you can check out this in-depth article by @xeroc, creator of the Python Steem library, Piston: https://steemit.com/steem/@xeroc/steem-transaction-signing-in-a-nutshell

Python

  • steem-python (Steemit Inc.) {TX SIGNING} - "steem-python is the official STEEM library for Python. It comes with a BIP38 encrypted wallet and a practical CLI utility called steempy."
  • Piston (@xeroc) {TX SIGNING} - A powerful python API capable of making bots in just a few lines of code, and any other interaction with the Blockchain that you would require.
  • beem (@holgern) {TX SIGNING} - Unofficial Python Library for Steem. A powerful python API similar to steem-python, but with additional features and Windows support.

Javascript

  • SteemJS (@svk) {TX SIGNING} - A javascript library capable of building, signing, and broadcasting Steem transactions, and other useful functions.
  • SteemJS (@pharesim) - Unrelated to SVK's SteemJS. This offers nothing more than a very light JS API for connecting to the Steem WebSocket API.

PHP

Ruby

Golang

Java

SQL

  • Steem SQL (@arcange) - A publicly exposed Microsoft SQL database containing all the blockchain data for STEEM.

MongoDB

Rust

Rethinkdb

In other languages