Public
Documentation Settings

CROAT

CROAT.Community

CROAT.Community

Si tens dubtes, demana ajuda al canal de Telegram
CROAT.community

croatd

Es pot descarregar el codi font i la versió compilada des del repositori de Github.

Ubicació del servei

Per defecte, el servei que dona un node CROAT (procés croatd) només està obert a l'interfície 127.0.0.1 (localhost), de manera que només es pot accedir des del mateix ordinador en què s'executa. Això es fa per reduir el nombre d'atacs externs. El procés croatd en si només té accés a informació pública, però de vegades s'executa amb el procés walletd, que té accés a les claus del moneder.

Per fer accessible el servei RPC des de totes les interficies cal utilitzar l'argument adicional --rpc-bind-ip 0.0.0.0 a l'obrir el croatd.

Per fer una sol·licitud JSON PRC al croatd, heu de fer una sol·licitud HTTP POST a un punt d'entrada tipus:

Plain Text
http://<ip>:<port>/json_rpc

On:

  • <ip> És la direcció IPv4 del procés croatd. Si el servei es local, cal utilitzar 127.0.0.1 en lloc de localhost.
  • <port> es el port RPC del croatd. Per defecte el servei queda publicat al port 46348.



Plantilla Curl

Plain Text
curl -s -X POST http://<ip>:<port>/json_rpc -H 'Content-Type: application/json-rpc' -d '{"jsonrpc": "2.0", "id": "<id>", "method": "<method>", "params": {<params>}}'

Punts d'entrada CROAT.Community

Des de CROAT.community s'han preparat diferents punts d'entrada publics, així no cal crear un node CROAT per poder executar les consultes. A part, els punts d'entrada publicats ho fan utilitzant https, cosa que ens ajudarà en cas de necessitar executar les instruccions des d'una web que també treballa amb https.

Plain Text
https://api.croat.community/v1/croatd/getinfo
Plain Text
https://api.croat.community/v1/croatd/json_rpc

Adicionalment, tenim 2 paràmetres GET a indicar a la url.

  • node=<ip>:<port>, utilitzat per especificar un node personalitzat.
  • debug=1, utilitzat per mostrar informació adicional en el procés de la consulta.

Així doncs, el següent punt

Plain Text
http://api.croat.community/v1/croatd/json_rpc?node=node-01.croatpirineus.cat:46348&debug=1

Ens retornaria una consulta feta contra un node node-01.croatpirineus.cat:46348 i amb informació adicional debug=1 del procés de la consulta.

Mètodes

MètodeDescripció
getinfoInformació del node i de la cadena de blocs.
paymentidGenerar un ID de pagament aleatori.
getblockcountAltura actual de la cadena de blocs.
getblockhashHash d'un bloc a partir de la seva altura.
getlasblockheaderInformació de la capçalera de l'últim bloc trobat.
getblockbyhashInformació d’un bloc a partir del seu hash.
getblockheaderbyhashCapçalera d’un bloc a partir del seu hash.
getblockbyheightInformació d’un bloc a partir de la seva altura
getblockheaderbyheightCapçalera d’un bloc a partir de la seva altura.
getblocktemplateInformació necessària per poder minar un nou bloc.
getblocklistResum dels últims 30 blocs a partir d’una altura.
gettransactionspoolTransaccions pendents d'entrar a un bloc.
gettransactionInformació d’una transacció a partir del seu hash.
gettransactionsbypaymentidLlistat de transaccions a partir d'un ID de pagament.
checktransactionbyviewkeyContingut real d'una transacció
validateaddressVerifica si un moneder es correcte i ens retorna informació de les seves claus publiques.
getcurrencyidvalor únic referent a l’id de la moneda.

GETgetinfo

https://api.croat.community/v1/croatd/getinfo

Descripció

Aquest mètode ens retorna informació del node i de la cadena de blocs.

Entrada (paràmetres)

Sense paràmetres

Sortida

CampTipusDescripció
already_generated_coinsstringTotal de CROATS generats en aquest moment.
alt_blocks_countuint64Nombre de blocs alternatius a la cadena principal.
block_major_versionuint8Versió de la cadena de blocs.
contactstring
cumulative_difficultyuint64Dificultat de la xarxa acumulada.
difficultyuint64Dificultat de la xarxa (anàloga a la força de la xarxa).
fee_addressstring
grey_peerlist_sizeuint64Mida de peerlist grisos.
heightuint32Longitud actual de la cadena més llarga coneguda pel croatd.
incoming_connections_countuint64Nombre de clients connectats al node.
last_known_block_indexuint32Altura bloc anterior
min_tx_feeuint64Fee mínim per transacció.
next_rewarduint64Següent recompensa.
outgoing_connections_countuint64Nombre de nodes als que estem connectats i revem informació.
readable_tx_feestringFee mínim en format decimal.
rpc_connections_countuint64Total de connexions RPC
start_timeuint64Timestamp d'inici del croatd.
statusstringCodi d'error RPC general. "OK" significa correcte.
top_block_hashstringHash del bloc més alt de la cadena.
tx_countuint64Nombre total de transaccions.
tx_pool_sizeuint64Nombre de transaccions que s'han emès però que no s'han inclòs en un bloc.
versionstringVersió del croatd.
version_buildstringInformació adicional versió `croatd'.
version_numstringInformació adicional versió `croatd'.
version_remarkstringInformació adicional versió `croatd'.
white_peerlist_sizeuint64Mida de peerlist blancs.

GETpaymentid

https://api.croat.community/v1/croatd/paymentid

Descripció

Aquest mètode ens retorna un id de pagament aleatori per poder ser utilitzat en una transacció.

Entrada (paràmetres)

Sense paràmetres

Sortida

CampTipusDescripció
payment_idstringID de pagament
Loading