Compare commits

..

32 Commits

Author SHA1 Message Date
Will Binns
584e891622 rubocop: Remove useless assignments 2020-04-21 11:17:31 -06:00
Will Binns
de0bcb6ce1 rubocop: Denote unused method arguments 2020-04-21 11:17:31 -06:00
Will Binns
282bfd16d7 rubocop: Denote unused block arguments 2020-04-21 11:17:31 -06:00
Will Binns
bbbc8bacf1 rubocop: Avoid shadowing variables 2020-04-21 11:17:31 -06:00
Will Binns
37d489f067 rubocop: Ensure write permissions are set 2020-04-21 11:17:31 -06:00
Will Binns
0612d9ee37 rubocop: Drop 'in-line template' conditional 2020-04-21 11:17:31 -06:00
Will Binns
0d453a8e81 rubocop: Update deprecated class methods 2020-04-21 11:17:31 -06:00
Will Binns
7d604c17aa rubocop: Parenthesize method argument 2020-04-21 11:17:30 -06:00
Will Binns
87d07e80d1 rubocop: Remove trailing whitespace 2020-04-21 11:17:30 -06:00
Will Binns
4c1cdc8ab8 rubocop: Resolve indentation inconsistencies 2020-04-21 11:17:30 -06:00
Will Binns
921e1e8745 rubocop: Remove extra space from parenthesis 2020-04-21 11:17:30 -06:00
Will Binns
3c4ad630cb rubocop: Add missing space within hash literal 2020-04-21 11:17:30 -06:00
Will Binns
a3d721fc37 rubocop: Ensure proper spacing within block brackets 2020-04-21 11:17:30 -06:00
Will Binns
5a0393e9b9 rubocop: Remove extra space within array brackets 2020-04-21 11:17:30 -06:00
Will Binns
bb4384e21c rubocop: Add space at the beginning of a block 2020-04-21 11:17:30 -06:00
Will Binns
27fd55c69e rubocop: Ensure there are spaces surrounding operators 2020-04-21 11:17:30 -06:00
Will Binns
83e952492e rubocop: Ensure there is a space following 'if' when used 2020-04-21 11:17:30 -06:00
Will Binns
be1d9eafe5 rubocop: Ensure there are no spaces in block parameters 2020-04-21 11:17:29 -06:00
Will Binns
a695caded4 rubocop: Ensure there is no space between '!' and argument 2020-04-21 11:17:29 -06:00
Will Binns
813568b74f rubocop: Ensure presence of spaces after commas 2020-04-21 11:17:29 -06:00
Will Binns
61c2a62f84 rubocop: Align operands 2020-04-21 11:17:29 -06:00
Will Binns
191231f557 rubocop: Indent relative to receiver 2020-04-21 11:17:29 -06:00
Will Binns
1726f03489 rubocop: Move block parameters to same line as beginning of block 2020-04-21 11:17:29 -06:00
Will Binns
9b86998e35 rubocop: Revise comment syntax 2020-04-21 11:17:29 -06:00
Will Binns
bde3080333 rubocop: Add missing spaces 2020-04-21 11:17:29 -06:00
Will Binns
b647a60d26
rubocop: Remove extra spaces 2020-04-21 11:17:13 -06:00
Will Binns
ce38dbe3e7 rubocop: Remove unnecessary line breaks 2020-04-21 06:43:00 -06:00
Will Binns
38ce5741c9 rubocop: Add line breaks 2020-04-21 06:43:00 -06:00
Will Binns
91042a0c0d rubocop: Fix alignment 2020-04-21 06:43:00 -06:00
Will Binns
6abfe1a476
Gemfile: Sort gems alphabetically 2020-04-21 06:42:48 -06:00
Will Binns
b180541f16 rubocop: Generate code cleanup todo list 2020-04-21 06:42:12 -06:00
Will Binns
a01a15ef47
Gemfile: Add 'rubocop' 2020-04-21 06:41:33 -06:00
639 changed files with 34876 additions and 7455 deletions

1
.rubocop.yml Normal file
View File

@ -0,0 +1 @@
inherit_from: .rubocop_todo.yml

487
.rubocop_todo.yml Normal file
View File

@ -0,0 +1,487 @@
# This configuration was generated by
# `rubocop --auto-gen-config`
# on 2019-01-02 16:42:51 -0600 using RuboCop version 0.62.0.
# The point is for the user to remove these configuration records
# one by one as the offenses are removed from the code base.
# Note that changes in the inspected code, or installation of new
# versions of RuboCop, may require this file to be generated again.
# Offense count: 20
Metrics/AbcSize:
Max: 136
# Offense count: 4
# Configuration parameters: CountComments, ExcludedMethods.
# ExcludedMethods: refine
Metrics/BlockLength:
Max: 45
# Offense count: 1
# Configuration parameters: CountComments.
Metrics/ClassLength:
Max: 105
# Offense count: 14
Metrics/CyclomaticComplexity:
Max: 25
# Offense count: 21
# Configuration parameters: CountComments, ExcludedMethods.
Metrics/MethodLength:
Max: 66
# Offense count: 6
# Configuration parameters: CountKeywordArgs.
Metrics/ParameterLists:
Max: 8
# Offense count: 13
Metrics/PerceivedComplexity:
Max: 25
# Offense count: 3
# Configuration parameters: ExpectMatchingDefinition, Regex, IgnoreExecutableScripts, AllowedAcronyms.
# AllowedAcronyms: CLI, DSL, ACL, API, ASCII, CPU, CSS, DNS, EOF, GUID, HTML, HTTP, HTTPS, ID, IP, JSON, LHS, QPS, RAM, RHS, RPC, SLA, SMTP, SQL, SSH, TCP, TLS, TTL, UDP, UI, UID, UUID, URI, URL, UTF8, VM, XML, XMPP, XSRF, XSS
Naming/FileName:
Exclude:
- '_plugins/inline-template.rb'
- '_plugins/liquid-die.rb'
- '_plugins/liquid-warn.rb'
# Offense count: 3
# Configuration parameters: MinNameLength, AllowNamesEndingInNumbers, AllowedNames, ForbiddenNames.
# AllowedNames: io, id, to, by, on, in, at, ip, db
Naming/UncommunicativeMethodParamName:
Exclude:
- '_plugins/releases.rb'
- '_plugins/wallets.rb'
# Offense count: 13
# Configuration parameters: EnforcedStyle.
# SupportedStyles: snake_case, camelCase
Naming/VariableName:
Exclude:
- '_plugins/wallets.rb'
# Offense count: 1
# Cop supports --auto-correct.
Performance/RegexpMatch:
Exclude:
- '_plugins/include_absolute.rb'
# Offense count: 2
# Cop supports --auto-correct.
Performance/StringReplacement:
Exclude:
- '_contrib/comparelinks.rb'
- '_plugins/inline-template.rb'
# Offense count: 3
Security/MarshalLoad:
Exclude:
- '_plugins/contributors.rb'
- '_plugins/events.rb'
# Offense count: 2
Security/Open:
Exclude:
- '_plugins/contributors.rb'
- '_plugins/events.rb'
# Offense count: 1
# Cop supports --auto-correct.
Security/YAMLLoad:
Exclude:
- '_plugins/inline-template.rb'
# Offense count: 2
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle.
# SupportedStyles: prefer_alias, prefer_alias_method
Style/Alias:
Exclude:
- '_plugins/contributors.rb'
- '_plugins/events.rb'
# Offense count: 54
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle.
# SupportedStyles: always, conditionals
Style/AndOr:
Exclude:
- '_contrib/updatetx.rb'
- '_plugins/alerts.rb'
- '_plugins/alphab_for.rb'
- '_plugins/autocrossref.rb'
- '_plugins/contributors.rb'
- '_plugins/events.rb'
- '_plugins/githubify.rb'
- '_plugins/glossary.rb'
- '_plugins/redirects.rb'
- '_plugins/releases.rb'
- '_plugins/sitemap.rb'
- '_plugins/templates.rb'
- '_plugins/translate.rb'
- '_plugins/wallets.rb'
# Offense count: 19
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, ProceduralMethods, FunctionalMethods, IgnoredMethods.
# SupportedStyles: line_count_based, semantic, braces_for_chaining
# ProceduralMethods: benchmark, bm, bmbm, create, each_with_object, measure, new, realtime, tap, with_object
# FunctionalMethods: let, let!, subject, watch
# IgnoredMethods: lambda, proc, it
Style/BlockDelimiters:
Exclude:
- '_contrib/comparelinks.rb'
- '_plugins/autocrossref.rb'
- '_plugins/githubify.rb'
- '_plugins/glossary.rb'
# Offense count: 7
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle.
# SupportedStyles: braces, no_braces, context_dependent
Style/BracesAroundHashParameters:
Exclude:
- '_contrib/bco-htmlproof'
- '_plugins/env.rb'
- '_plugins/glossary.rb'
- '_plugins/htmlescape.rb'
# Offense count: 5
# Cop supports --auto-correct.
Style/ColonMethodCall:
Exclude:
- '_plugins/events.rb'
- '_plugins/sitemap.rb'
- '_plugins/translate.rb'
# Offense count: 2
# Cop supports --auto-correct.
# Configuration parameters: Keywords.
# Keywords: TODO, FIXME, OPTIMIZE, HACK, REVIEW
Style/CommentAnnotation:
Exclude:
- '_plugins/alerts.rb'
- '_plugins/releases.rb'
# Offense count: 9
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, SingleLineConditionsOnly, IncludeTernaryExpressions.
# SupportedStyles: assign_to_condition, assign_inside_condition
Style/ConditionalAssignment:
Exclude:
- '_contrib/bco-htmlproof'
- '_contrib/jshint'
- '_contrib/updatetx.rb'
- '_plugins/events.rb'
- '_plugins/glossary.rb'
- '_plugins/wallets.rb'
# Offense count: 1
# Cop supports --auto-correct.
Style/DefWithParentheses:
Exclude:
- '_contrib/comparelinks.rb'
# Offense count: 38
Style/Documentation:
Enabled: false
# Offense count: 2
# Cop supports --auto-correct.
Style/EmptyLiteral:
Exclude:
- '_plugins/autocrossref.rb'
- '_plugins/glossary.rb'
# Offense count: 7
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle.
# SupportedStyles: each, for
Style/For:
Exclude:
- '_plugins/alphab_for.rb'
- '_plugins/contributors.rb'
- '_plugins/glossary.rb'
- '_plugins/translate.rb'
# Offense count: 27
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle.
# SupportedStyles: when_needed, always, never
Style/FrozenStringLiteralComment:
Enabled: false
# Offense count: 5
# Configuration parameters: MinBodyLength.
Style/GuardClause:
Exclude:
- '_build/txpreview/addlang.rb'
- '_plugins/include_absolute.rb'
- '_plugins/releases.rb'
# Offense count: 6
# Cop supports --auto-correct.
# Configuration parameters: UseHashRocketsWithSymbolValues, PreferHashRocketsForNonAlnumEndingSymbols.
# SupportedStyles: ruby19, hash_rockets, no_mixed_keys, ruby19_no_mixed_keys
Style/HashSyntax:
EnforcedStyle: hash_rockets
# Offense count: 23
# Cop supports --auto-correct.
Style/IfUnlessModifier:
Exclude:
- '_contrib/comparelinks.rb'
- '_plugins/alerts.rb'
- '_plugins/alphab_for.rb'
- '_plugins/autocrossref.rb'
- '_plugins/contributors.rb'
- '_plugins/events.rb'
- '_plugins/glossary.rb'
- '_plugins/include_absolute.rb'
- '_plugins/redirects.rb'
- '_plugins/sitemap.rb'
- '_plugins/templates.rb'
- '_plugins/translate.rb'
# Offense count: 11
# Cop supports --auto-correct.
# Configuration parameters: IgnoredMethods.
Style/MethodCallWithoutArgsParentheses:
Exclude:
- '_contrib/comparelinks.rb'
- '_contrib/schema-validator.rb'
- '_plugins/events.rb'
- '_plugins/githubify.rb'
- '_plugins/glossary.rb'
- '_plugins/inline-template.rb'
- '_plugins/sitemap.rb'
# Offense count: 14
Style/MultipleComparison:
Exclude:
- '_contrib/updatetx.rb'
- '_plugins/alerts.rb'
- '_plugins/alphab_for.rb'
- '_plugins/glossary.rb'
- '_plugins/releases.rb'
- '_plugins/sitemap.rb'
- '_plugins/templates.rb'
- '_plugins/translate.rb'
- '_plugins/wallets.rb'
# Offense count: 1
# Cop supports --auto-correct.
Style/MutableConstant:
Exclude:
- '_plugins/include_absolute.rb'
# Offense count: 26
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle.
# SupportedStyles: both, prefix, postfix
Style/NegatedIf:
Exclude:
- '_contrib/comparelinks.rb'
- '_contrib/jshint'
- '_contrib/updatetx.rb'
- '_plugins/alerts.rb'
- '_plugins/alphab_for.rb'
- '_plugins/autocrossref.rb'
- '_plugins/contributors.rb'
- '_plugins/events.rb'
- '_plugins/include_absolute.rb'
- '_plugins/redirects.rb'
- '_plugins/sitemap.rb'
- '_plugins/templates.rb'
- '_plugins/translate.rb'
- '_plugins/wallets.rb'
# Offense count: 1
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, MinBodyLength.
# SupportedStyles: skip_modifier_ifs, always
Style/Next:
Exclude:
- '_plugins/wallets.rb'
# Offense count: 4
# Cop supports --auto-correct.
# Configuration parameters: Strict.
Style/NumericLiterals:
MinDigits: 8
# Offense count: 5
# Cop supports --auto-correct.
# Configuration parameters: AutoCorrect, EnforcedStyle, IgnoredMethods.
# SupportedStyles: predicate, comparison
Style/NumericPredicate:
Exclude:
- 'spec/**/*'
- '_contrib/comparelinks.rb'
- '_plugins/alerts.rb'
- '_plugins/contributors.rb'
# Offense count: 2
# Cop supports --auto-correct.
# Configuration parameters: AllowSafeAssignment, AllowInMultilineConditions.
Style/ParenthesesAroundCondition:
Exclude:
- '_contrib/comparelinks.rb'
- '_plugins/contributors.rb'
# Offense count: 2
# Cop supports --auto-correct.
Style/PerlBackrefs:
Exclude:
- '_plugins/githubify.rb'
# Offense count: 24
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle.
# SupportedStyles: short, verbose
Style/PreferredHashMethods:
Exclude:
- '_contrib/comparelinks.rb'
- '_plugins/alerts.rb'
- '_plugins/alphab_for.rb'
- '_plugins/autocrossref.rb'
- '_plugins/contributors.rb'
- '_plugins/events.rb'
- '_plugins/releases.rb'
- '_plugins/translate.rb'
# Offense count: 1
# Cop supports --auto-correct.
Style/RedundantParentheses:
Exclude:
- '_contrib/comparelinks.rb'
# Offense count: 4
# Cop supports --auto-correct.
# Configuration parameters: AllowMultipleReturnValues.
Style/RedundantReturn:
Exclude:
- '_contrib/comparelinks.rb'
- '_plugins/alphab_for.rb'
- '_plugins/events.rb'
- '_plugins/releases.rb'
# Offense count: 82
# Cop supports --auto-correct.
Style/RedundantSelf:
Exclude:
- '_plugins/alerts.rb'
- '_plugins/contributors.rb'
- '_plugins/events.rb'
- '_plugins/glossary.rb'
- '_plugins/redirects.rb'
- '_plugins/releases.rb'
- '_plugins/templates.rb'
- '_plugins/wallets.rb'
# Offense count: 11
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, AllowInnerSlashes.
# SupportedStyles: slashes, percent_r, mixed
Style/RegexpLiteral:
Exclude:
- '_contrib/bco-htmlproof'
- '_contrib/comparelinks.rb'
- '_plugins/autocrossref.rb'
- '_plugins/include_absolute.rb'
- '_plugins/templates.rb'
# Offense count: 4
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle.
# SupportedStyles: implicit, explicit
Style/RescueStandardError:
Exclude:
- '_plugins/contributors.rb'
- '_plugins/events.rb'
- '_plugins/include_absolute.rb'
# Offense count: 1
# Cop supports --auto-correct.
Style/SelfAssignment:
Exclude:
- '_plugins/templates.rb'
# Offense count: 5
# Cop supports --auto-correct.
# Configuration parameters: AllowAsExpressionSeparator.
Style/Semicolon:
Exclude:
- '_plugins/sitemap.rb'
- '_plugins/templates.rb'
- '_plugins/wallets.rb'
# Offense count: 110
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, ConsistentQuotesInMultiline.
# SupportedStyles: single_quotes, double_quotes
Style/StringLiterals:
Enabled: false
# Offense count: 1
# Cop supports --auto-correct.
# Configuration parameters: IgnoredMethods.
# IgnoredMethods: respond_to, define_method
Style/SymbolProc:
Exclude:
- '_plugins/releases.rb'
# Offense count: 1
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyleForMultiline.
# SupportedStylesForMultiline: comma, consistent_comma, no_comma
Style/TrailingCommaInHashLiteral:
Exclude:
- '_contrib/bco-htmlproof'
# Offense count: 7
# Cop supports --auto-correct.
Style/UnneededCondition:
Exclude:
- '_plugins/env.rb'
- '_plugins/glossary.rb'
- '_plugins/releases.rb'
# Offense count: 1
# Cop supports --auto-correct.
Style/UnneededInterpolation:
Exclude:
- '_plugins/markdown.rb'
# Offense count: 1
# Cop supports --auto-correct.
Style/WhileUntilDo:
Exclude:
- '_plugins/contributors.rb'
# Offense count: 1
# Cop supports --auto-correct.
# Configuration parameters: MinSize, WordRegex.
# SupportedStyles: percent, brackets
Style/WordArray:
EnforcedStyle: brackets
# Offense count: 6
# Cop supports --auto-correct.
Style/ZeroLengthPredicate:
Exclude:
- '_contrib/comparelinks.rb'
- '_contrib/jshint'
- '_plugins/alerts.rb'
- '_plugins/contributors.rb'
# Offense count: 108
# Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
# URISchemes: http, https
Metrics/LineLength:
Max: 237
# Add Rubocop to Travis

View File

@ -1 +1 @@
2.5.8
2.4.1

View File

@ -1,6 +1,6 @@
language: ruby
rvm:
- "2.5.8"
- "2.4.1"
cache: bundler
env:
# http://docs.travis-ci.com/user/environment-variables/#Global-Variables
@ -8,7 +8,7 @@ env:
- BITCOINORG_BUILD_TYPE=deployment
before_install:
- "gem update --system 3.0.6"
- "gem update --system"
- "gem install bundler -v 1.17.3"
script: make travis

Binary file not shown.

View File

@ -4,7 +4,7 @@ The following quick guides will help you get started:
+ [Becoming a Contributor](https://github.com/bitcoin-dot-org/bitcoin.org/blob/master/docs/become-a-contributor.md)
+ [Working with GitHub](https://github.com/bitcoin-dot-org/bitcoin.org/blob/master/docs/working-with-github.md)
+ [Setting Up Your Environment](https://github.com/bitcoin-dot-org/bitcoin.org/blob/master/docs/setting-up-your-environment.md)
+ [Improving Developer Documentation](https://github.com/bitcoin-dot-org/developer.bitcoin.org/)
+ [Improving Developer Documentation](https://github.com/bitcoin-dot-org/bitcoin.org/blob/master/docs/contributing-to-developer-documentation.md)
+ [Assisting with Translations](https://github.com/bitcoin-dot-org/bitcoin.org/blob/master/docs/assisting-with-translations.md)
+ [Managing Wallets](https://github.com/bitcoin-dot-org/bitcoin.org/blob/master/docs/managing-wallets.md)
+ [Adding Events, Release Notes and Alerts](https://github.com/bitcoin-dot-org/bitcoin.org/blob/master/docs/adding-events-release-notes-and-alerts.md)

17
Gemfile
View File

@ -5,7 +5,7 @@ source 'https://rubygems.org'
## make sure Travis supports that version. Then remind one of the
## site maintainers that they need to run `rvm install <VERSION>` on
## the build server(s) before they commit to master
ruby '2.5.8'
ruby '2.4.1'
## Used on the build server. If you add a package here (like nokogiri)
## that has non-Gem dependencies (like zlib), please remind the site
@ -14,15 +14,16 @@ ruby '2.5.8'
## your dependencies, then nothing extra needs to be done
group :development do
gem 'ffi-icu'
gem 'jekyll', '~>4.0'
gem 'json', '>= 1.9'
gem 'less', '2.4.0'
gem 'kramdown', '~>2.3'
gem 'RedCloth', ">= 4.3.0"
gem 'therubyracer' # required by less
gem 'jekyll', '~>3.0'
gem 'jshintrb', '~>0.3.0'
gem 'safe_yaml'
gem 'json', '>= 1.9'
gem 'json-schema'
gem 'kramdown'
gem 'RedCloth', ">= 4.3.0"
gem 'less', '2.4.0'
gem 'rubocop'
gem 'safe_yaml'
gem 'therubyracer' # required by less
end
## Not used on build server. Only used by developers and Travis CI, so

View File

@ -2,23 +2,17 @@ GEM
remote: https://rubygems.org/
specs:
RedCloth (4.3.2)
addressable (2.7.0)
public_suffix (>= 2.0.2, < 5.0)
colorator (1.1.0)
addressable (2.4.0)
ast (2.4.0)
colorator (0.1)
colored (1.2)
commonjs (0.2.7)
concurrent-ruby (1.1.6)
em-websocket (0.5.1)
eventmachine (>= 0.12.9)
http_parser.rb (~> 0.6.0)
ethon (0.12.0)
ethon (0.11.0)
ffi (>= 1.3.0)
eventmachine (1.2.7)
execjs (2.7.0)
ffi (1.12.2)
ffi-icu (0.2.0)
execjs (2.6.0)
ffi (1.11.1)
ffi-icu (0.1.10)
ffi (~> 1.0, >= 1.0.9)
forwardable-extended (2.6.0)
html-proofer (2.1.0)
addressable (~> 2.3)
colored (~> 1.2)
@ -27,74 +21,69 @@ GEM
parallel (~> 1.3)
typhoeus (~> 0.7)
yell (~> 2.0)
http_parser.rb (0.6.0)
i18n (1.8.2)
concurrent-ruby (~> 1.0)
jekyll (4.0.1)
addressable (~> 2.4)
colorator (~> 1.0)
em-websocket (~> 0.5)
i18n (>= 0.9.5, < 2)
jekyll-sass-converter (~> 2.0)
jekyll-watch (~> 2.0)
kramdown (~> 2.1)
kramdown-parser-gfm (~> 1.0)
liquid (~> 4.0)
jaro_winkler (1.5.1)
jekyll (3.0.1)
colorator (~> 0.1)
jekyll-sass-converter (~> 1.0)
jekyll-watch (~> 1.1)
kramdown (~> 1.3)
liquid (~> 3.0)
mercenary (~> 0.3.3)
pathutil (~> 0.9)
rouge (~> 3.0)
rouge (~> 1.7)
safe_yaml (~> 1.0)
terminal-table (~> 1.8)
jekyll-sass-converter (2.1.0)
sassc (> 2.0.1, < 3.0)
jekyll-watch (2.2.1)
jekyll-sass-converter (1.4.0)
sass (~> 3.4)
jekyll-watch (1.3.0)
listen (~> 3.0)
jshintrb (0.3.0)
execjs
multi_json (>= 1.3)
rake
json (2.3.0)
json-schema (2.8.1)
json (2.1.0)
json-schema (2.8.0)
addressable (>= 2.4)
kramdown (2.3.0)
rexml
kramdown-parser-gfm (1.1.0)
kramdown (~> 2.0)
kramdown (1.9.0)
less (2.4.0)
commonjs (~> 0.2.7)
libv8 (3.16.14.19)
liquid (4.0.3)
listen (3.2.1)
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
mercenary (0.3.6)
liquid (3.0.6)
listen (3.0.5)
rb-fsevent (>= 0.9.3)
rb-inotify (>= 0.9)
mercenary (0.3.5)
mini_portile2 (2.4.0)
multi_json (1.14.1)
nokogiri (1.10.9)
multi_json (1.11.2)
nokogiri (1.10.8)
mini_portile2 (~> 2.4.0)
parallel (1.19.1)
pathutil (0.16.2)
forwardable-extended (~> 2.6)
public_suffix (4.0.5)
parallel (1.12.0)
rake (13.0.1)
rb-fsevent (0.10.4)
rb-inotify (0.10.1)
ffi (~> 1.0)
parser (2.5.3.0)
ast (~> 2.4.0)
powerpack (0.1.2)
rainbow (3.0.0)
rb-fsevent (0.9.7)
rb-inotify (0.9.5)
ffi (>= 0.5.0)
ref (2.0.0)
rexml (3.2.4)
rouge (3.19.0)
safe_yaml (1.0.5)
sassc (2.3.0)
ffi (~> 1.9)
terminal-table (1.8.0)
unicode-display_width (~> 1.1, >= 1.1.1)
rouge (1.10.1)
rubocop (0.62.0)
jaro_winkler (~> 1.5.1)
parallel (~> 1.10)
parser (>= 2.5, != 2.5.1.1)
powerpack (~> 0.1)
rainbow (>= 2.2.2, < 4.0)
ruby-progressbar (~> 1.7)
unicode-display_width (~> 1.4.0)
ruby-progressbar (1.10.0)
safe_yaml (1.0.4)
sass (3.4.20)
therubyracer (0.12.3)
libv8 (~> 3.16.14.15)
ref
typhoeus (0.8.0)
ethon (>= 0.8.0)
unicode-display_width (1.7.0)
yell (2.2.2)
unicode-display_width (1.4.1)
yell (2.0.7)
PLATFORMS
ruby
@ -103,17 +92,18 @@ DEPENDENCIES
RedCloth (>= 4.3.0)
ffi-icu
html-proofer (= 2.1.0)
jekyll (~> 4.0)
jekyll (~> 3.0)
jshintrb (~> 0.3.0)
json (>= 1.9)
json-schema
kramdown (~> 2.3)
kramdown
less (= 2.4.0)
rubocop
safe_yaml
therubyracer
RUBY VERSION
ruby 2.5.8p224
ruby 2.4.1p111
BUNDLED WITH
1.17.3

View File

@ -1,4 +1,4 @@
Copyright (c) 2009-2021 Bitcoin.org
Copyright (c) 2009-2020 Bitcoin.org
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal

View File

@ -36,6 +36,10 @@ travis: clean travis-background-keepalive \
install-deps-development \
all
## Install dependencies (development version)
install-deps-development:
bundle install
@ -50,6 +54,7 @@ endif
## Pre-build tests which, aggregated together, take less than 10 seconds to run on a typical PC
pre-build-tests-fast: check-for-non-ascii-urls check-for-wrong-filename-assignments \
check-for-missing-rpc-summaries \
check-for-missing-copyright-licenses \
check-bundle \
check-for-english-in-en-dir \
@ -63,7 +68,7 @@ post-build-tests-fast: check-for-build-errors ensure-each-svg-has-a-png check-fo
check-for-missing-anchors check-for-broken-markdown-reference-links \
check-for-broken-kramdown-tables check-for-duplicate-header-ids \
check-for-headers-containing-auto-link check-for-missing-subhead-links \
check-for-empty-title-tag \
check-for-empty-title-tag \
check-for-subheading-anchors \
check-jshint \
check-for-javascript-in-svgs
@ -111,7 +116,7 @@ build:
## Jekyll annoyingly returns success even when it emits errors and
## exceptions, so we'll grep its output for error strings
check-for-build-errors:
$S egrep -i '(error|warn|exception)' $(JEKYLL_LOG) \
$S egrep -i '(error|exception)' $(JEKYLL_LOG) \
| grep -vi 'rouge/lexers/shell.rb' \
| eval $(ERROR_ON_OUTPUT)
@ -215,6 +220,14 @@ check-for-missing-copyright-licenses:
fi ; \
done | eval $(ERROR_ON_OUTPUT)
check-for-missing-rpc-summaries:
## Make sure the Quick Reference section has a summary for each RPC we
## have documented
$S for f in _data/devdocs/en/bitcoin-core/rpcs/rpcs/*.md ;\
do grep -q "\[$$( grep '^##### ' $$f | sed 's/^##### *\([a-zA-Z]*\).*/\1/')\]\[" _data/devdocs/en/bitcoin-core/rpcs/quick-reference.md \
|| echo 'missing summary for '$$f', you need to add the summary to _data/devdocs/en/bitcoin-core/rpcs/quick-ref.md and run make manual-updates' \
; done | eval $(ERROR_ON_OUTPUT)
manual-update-summaries-file:
## A manually-run command to update the summaries file (currently only
## used for RPC summaries, but maybe used for other summaries in the

View File

@ -19,7 +19,7 @@ The following quick guides will help you get started:
+ [Becoming a Contributor](https://github.com/bitcoin-dot-org/bitcoin.org/blob/master/docs/become-a-contributor.md)
+ [Working with GitHub](https://github.com/bitcoin-dot-org/bitcoin.org/blob/master/docs/working-with-github.md)
+ [Setting Up Your Environment](https://github.com/bitcoin-dot-org/bitcoin.org/blob/master/docs/setting-up-your-environment.md)
+ [Improving Developer Documentation](https://github.com/bitcoin-dot-org/developer.bitcoin.org/)
+ [Improving Developer Documentation](https://github.com/bitcoin-dot-org/bitcoin.org/blob/master/docs/contributing-to-developer-documentation.md)
+ [Assisting with Translations](https://github.com/bitcoin-dot-org/bitcoin.org/blob/master/docs/assisting-with-translations.md)
+ [Adding Exchanges](https://github.com/bitcoin-dot-org/bitcoin.org/blob/master/docs/adding-exchanges.md)
+ [Managing Wallets](https://github.com/bitcoin-dot-org/bitcoin.org/blob/master/docs/managing-wallets.md)
@ -30,3 +30,10 @@ The following quick guides will help you get started:
### Code of Conduct
Participation in this project is subject to a [Code of Conduct](https://github.com/bitcoin-dot-org/bitcoin.org/blob/master/CODE_OF_CONDUCT.md).
### Donations
Bitcoin.org is community supported: [3FkenCiXpSLqD8L79intRNXUgjRoH9sjXa](bitcoin:3FkenCiXpSLqD8L79intRNXUgjRoH9sjXa)
### Questions?
Please contact Will Binns ([will@bitcoin.org](mailto:will@bitcoin.org)) if you need help.

498
_autocrossref.yaml Normal file
View File

@ -0,0 +1,498 @@
---
# This file is licensed under the MIT License (MIT) available on
# http://opensource.org/licenses/MIT.
## List of words to match with references in _includes/references.md
## in developer documentation, used by autocrossref.rb plugin.
## "pattern to match in file" => "reference to give it"
#
## To prevent a ref for term, use: "term: DO NOT AUTOCROSSREF"
'`addr` message': addr message
'`addr` messages': addr message
'`alert` message': alert message
'`alert` messages': alert message
'`amount`': pp amount
bitcoin QR code: URI QR code
bitcoin QR codes: URI QR code
'`bitcoin:` URI': bitcoin uri
'`bitcoin:` URIs': bitcoin uri
bitcoinj:
'`block` message': block message
'`block` messages': block message
certificate chain:
DER:
DER format: der
DER-formatted: der
ECDSA:
epoch time: unix epoch time
'`expires`': pp expires
'`feefilter` message': feefilter message
'`feefilter` messages': feefilter message
fiat:
'`filteradd` message': filteradd message
'`filteradd` messages': filteradd message
'`filterclear` message': filterclear message
'`filterclear` messages': filterclear message
'`filterload` message': filterload message
'`filterload` messages': filterload message
'`getblocks` message': getblocks message
'`getblocks` messages': getblocks message
'`getdata` message': getdata message
'`getdata` messages': getdata message
'`getheaders` message': getheaders message
'`getheaders` messages': getheaders message
'`getaddr` message': getaddr message
'`getaddr` messages': getaddr message
'`headers` message': headers message
'`headers` messages': headers message
intermediate certificate:
intermediate certificates: intermediate certificate
'`inv` message': inv message
'`inv` messages': inv message
IP address: DO NOT AUTOCROSSREF
IP addresses: DO NOT AUTOCROSSREF
IPv4 address: DO NOT AUTOCROSSREF
IPv4 addresses: DO NOT AUTOCROSSREF
IPv6 address: DO NOT AUTOCROSSREF
IPv6 addresses: DO NOT AUTOCROSSREF
key index:
key pair:
'`label`': label
leaf certificate:
long-term fork:
man in the middle: man-in-the-middle
man-in-the-middle:
'`memo`': pp memo
'`mempool` message': mempool message
'`mempool` messages': mempool message
'`message`': message
message payload:
'`merchant_data`': pp merchant data
'`merkleblock` message': merkleblock message
'`merkleblock` messages': merkleblock message
'`cmpctblock` message': cmpctblock message
'`cmpctblock` messages': cmpctblock message
'`sendcmpct` message': sendcmpct message
'`sendcmpct` messages': sendcmpct message
'`getblocktxn` message': getblocktxn message
'`getblocktxn` messages': getblocktxn message
'`blocktxn` message': blocktxn message
'`blocktxn` messages': blocktxn message
'`prefilledtransaction`': prefilledtransaction
'`headerandshortids`': headerandshortids
'`blocktransactionsrequest`': blocktransactionsrequest
'`blocktransactions`': blocktransactions
merge:
Merge avoidance:
micropayment channel:
micropayment channels: micropayment channel
'`MSG_BLOCK`': msg_block
'`MSG_FILTERED_BLOCK`': msg_filtered_block
'`MSG_TX`': msg_tx
'`MSG_CMPCT_BLOCK`': msg_cmpct_block
'`MSG_WITNESS_BLOCK`': msg_witness_block
'`MSG_WITNESS_TX`': msg_witness_tx
'`MSG_WITNESS_FILTERED_BLOCK`': msg_witness_filtered_block
multisig p2sh: p2sh multisig
network:
'`notfound` message': notfound message
'`notfound` messages': notfound message
'number (bitcoins)': proper money handling
'`op_checkmultisig`': op_checkmultisig
'`op_checksig`': op_checksig
'`op_dup`': op_dup
'`op_equal`': op_equal
'`op_equalverify`': op_equalverify
'`op_hash160`': op_hash160
'`op_return`': op_return
'`op_verify`': op_verify
output index:
PaymentDetails:
PaymentRequest:
PaymentRequests: paymentrequest
peer-to-peer: network
peer-to-peer network: network
'`ping` message': ping message
'`ping` messages': ping message
pki:
'`pki_type`': pp pki type
'`point()`': point function
'`pong` message': pong message
'`pong` messages': pong message
previous block header hash:
protocol buffer: protobuf
protocol buffers: protobuf
protocol version 106: section protocol versions
protocol version 209: section protocol versions
protocol version 311: section protocol versions
protocol version 31402: section protocol versions
protocol version 31800: section protocol versions
protocol version 60000: section protocol versions
protocol version 60001: section protocol versions
protocol version 60002: section protocol versions
protocol version 70001: section protocol versions
protocol version 70002: section protocol versions
protocol version 70012: section protocol versions
protocol version 70013: section protocol versions
protocol version 70014: section protocol versions
protocol version 70015: section protocol versions
public key infrastructure: pki
'`r`': r
receipt:
recurrent rebilling:
refund:
refunds: refund
'`reject` message': reject message
'`reject` messages': reject message
root certificate:
RPC:
RPCs: rpc
'`script`': pp script
secp256k1:
standard block relay:
transaction object format:
transaction version number:
'`tx` message': tx message
'`tx` messages': tx message
unencrypted wallet:
unix epoch time:
unix time: unix epoch time
unique address: unique addresses
unique addresses:
unlocked wallet:
unsolicited block push:
'`verack` message': verack message
'`verack` messages': verack message
verified payments:
version 2 blocks: v2 block
'`version` message': version message
'`version` messages': version message
waching-only: watch-only
wallet support:
wallet support disabled: wallet support
wallet support enabled: wallet support
x.509: x509
X509Certificates:
## BIPs in numerical order; don't use padding zeros (e.g. BIP70 not BIP0070)
BIP9:
BIP14:
BIP16:
BIP21:
BIP30:
BIP31:
BIP32:
BIP34:
BIP37:
BIP39:
BIP50:
BIP60:
BIP61:
BIP62:
BIP66:
BIP70:
BIP71:
BIP72:
BIP111:
BIP112:
BIP113:
BIP125:
BIP130:
BIP133:
BIP141:
BIP144:
BIP151:
BIP152:
## CVEs
CVE-2012-2459:
## RPCs
'`abandontransaction`': rpc abandontransaction
'`abandontransaction` RPC': rpc abandontransaction
'`abortrescan`': rpc abortrescan
'`abortrescan` RPC': rpc abortrescan
'`addmultisigaddress`': rpc addmultisigaddress
'`addmultisigaddress` RPC': rpc addmultisigaddress
'`addnode`': rpc addnode
'`addnode` RPC': rpc addnode
'`analyzepsbt`': rpc analyzepsbt
'`analyzepsbt` RPC': rpc analyzepsbt
'`backupwallet`': rpc backupwallet
'`backupwallet` RPC': rpc backupwallet
'`bumpfee`': rpc bumpfee
'`bumpfee` RPC': rpc bumpfee
'`clearbanned`': rpc clearbanned
'`clearbanned` RPC': rpc clearbanned
'`combinepsbt`': rpc combinepsbt
'`combinepsbt` RPC': rpc combinepsbt
'`combinerawtransaction`': rpc combinerawtransaction
'`combinerawtransaction` RPC': rpc combinerawtransaction
'`converttopsbt`': rpc converttopsbt
'`converttopsbt` RPC': rpc converttopsbt
'`createmultisig`': rpc createmultisig
'`createmultisig` RPC': rpc createmultisig
'`createpsbt`': rpc createpsbt
'`createpsbt` RPC': rpc createpsbt
'`createrawtransaction`': rpc createrawtransaction
'`createrawtransaction` RPC': rpc createrawtransaction
'`createwallet`': rpc createwallet
'`createwallet` RPC': rpc createwallet
'`decodepsbt`': rpc decodepsbt
'`decodepsbt` RPC': rpc decodepsbt
'`decoderawtransaction`': rpc decoderawtransaction
'`decoderawtransaction` RPC': rpc decoderawtransaction
'`decodescript`': rpc decodescript
'`decodescript` RPC': rpc decodescript
'`deriveaddresses`': rpc deriveaddresses
'`deriveaddresses` RPC': rpc deriveaddresses
'`disconnectnode`': rpc disconnectnode
'`disconnectnode` RPC': rpc disconnectnode
'`dumpprivkey`': rpc dumpprivkey
'`dumpprivkey` RPC': rpc dumpprivkey
'`dumpwallet`': rpc dumpwallet
'`dumpwallet` RPC': rpc dumpwallet
'`encryptwallet`': rpc encryptwallet
'`encryptwallet` RPC': rpc encryptwallet
'`estimatesmartfee`': rpc estimatesmartfee
'`estimatesmartfee` RPC': rpc estimatesmartfee
'`finalizepsbt`': rpc finalizepsbt
'`finalizepsbt` RPC': rpc finalizepsbt
'`fundrawtransaction`': rpc fundrawtransaction
'`fundrawtransaction` RPC': rpc fundrawtransaction
'`generate`': rpc generate
'`generate` RPC': rpc generate
'`generatetoaddress`': rpc generatetoaddress
'`generatetoaddress` RPC': rpc generatetoaddress
'`getaddednodeinfo`': rpc getaddednodeinfo
'`getaddednodeinfo` RPC': rpc getaddednodeinfo
'`getaddressesbylabel`': rpc getaddressesbylabel
'`getaddressesbylabel` RPC': rpc getaddressesbylabel
'`getaddressinfo`': rpc getaddressinfo
'`getaddressinfo` RPC': rpc getaddressinfo
'`getbalance`': rpc getbalance
'`getbalance` RPC': rpc getbalance
'`getbestblockhash`': rpc getbestblockhash
'`getbestblockhash` RPC': rpc getbestblockhash
'`getblock`': rpc getblock
'`getblock` RPC': rpc getblock
'`getblockchaininfo`': rpc getblockchaininfo
'`getblockchaininfo` RPC': rpc getblockchaininfo
'`getblockcount`': rpc getblockcount
'`getblockcount` RPC': rpc getblockcount
'`getblockhash`': rpc getblockhash
'`getblockhash` RPC': rpc getblockhash
'`getblockheader`': rpc getblockheader
'`getblockheader` RPC': rpc getblockheader
'`getblockstats`': rpc getblockstats
'`getblockstats` RPC': rpc getblockstats
'`getblocktemplate`': rpc getblocktemplate
'`getblocktemplate` RPC': rpc getblocktemplate
'`getchaintips`': rpc getchaintips
'`getchaintips` RPC': rpc getchaintips
'`getchaintxstats`': rpc getchaintxstats
'`getchaintxstats` RPC': rpc getchaintxstats
'`getconnectioncount`': rpc getconnectioncount
'`getconnectioncount` RPC': rpc getconnectioncount
'`getdescriptorinfo`': rpc getdescriptorinfo
'`getdescriptorinfo` RPC': rpc getdescriptorinfo
'`getdifficulty`': rpc getdifficulty
'`getdifficulty` RPC': rpc getdifficulty
'`getmemoryinfo`': rpc getmemoryinfo
'`getmemoryinfo` RPC': rpc getmemoryinfo
'`getmempoolancestors`': rpc getmempoolancestors
'`getmempoolancestors` RPC': rpc getmempoolancestors
'`getmempooldescendants`': rpc getmempooldescendants
'`getmempooldescendants` RPC': rpc getmempooldescendants
'`getmempoolentry`': rpc getmempoolentry
'`getmempoolentry` RPC': rpc getmempoolentry
'`getmempoolinfo`': rpc getmempoolinfo
'`getmempoolinfo` RPC': rpc getmempoolinfo
'`getmininginfo`': rpc getmininginfo
'`getmininginfo` RPC': rpc getmininginfo
'`getnettotals`': rpc getnettotals
'`getnettotals` RPC': rpc getnettotals
'`getnetworkhashps`': rpc getnetworkhashps
'`getnetworkhashps` RPC': rpc getnetworkhashps
'`getnetworkinfo`': rpc getnetworkinfo
'`getnetworkinfo` RPC': rpc getnetworkinfo
'`getnewaddress`': rpc getnewaddress
'`getnewaddress` RPC': rpc getnewaddress
'`getnodeaddresses`': rpc getnodeaddresses
'`getnodeaddresses` RPC': rpc getnodeaddresses
'`getpeerinfo`': rpc getpeerinfo
'`getpeerinfo` RPC': rpc getpeerinfo
'`getrawchangeaddress`': rpc getrawchangeaddress
'`getrawchangeaddress` RPC': rpc getrawchangeaddress
'`getrawmempool`': rpc getrawmempool
'`getrawmempool` RPC': rpc getrawmempool
'`getrawtransaction`': rpc getrawtransaction
'`getrawtransaction` RPC': rpc getrawtransaction
'`getreceivedbyaddress`': rpc getreceivedbyaddress
'`getreceivedbyaddress` RPC': rpc getreceivedbyaddress
'`getreceivedbylabel`': rpc getreceivedbylabel
'`getreceivedbylabel` RPC': rpc getreceivedbylabel
'`getrpcinfo`': rpc getrpcinfo
'`getrpcinfo` RPC': rpc getrpcinfo
'`gettransaction`': rpc gettransaction
'`gettransaction` RPC': rpc gettransaction
'`gettxout`': rpc gettxout
'`gettxout` RPC': rpc gettxout
'`gettxoutproof`': rpc gettxoutproof
'`gettxoutproof` RPC': rpc gettxoutproof
'`gettxoutsetinfo`': rpc gettxoutsetinfo
'`gettxoutsetinfo` RPC': rpc gettxoutsetinfo
'`getunconfirmedbalance`': rpc getunconfirmedbalance
'`getunconfirmedbalance` RPC': rpc getunconfirmedbalance
'`getwalletinfo`': rpc getwalletinfo
'`getwalletinfo` RPC': rpc getwalletinfo
'`help`': rpc help
'`help` RPC': rpc help
'`importaddress`': rpc importaddress
'`importaddress` RPC': rpc importaddress
'`importmulti`': rpc importmulti
'`importmulti` RPC': rpc importmulti
'`importprivkey`': rpc importprivkey
'`importprivkey` RPC': rpc importprivkey
'`importprunedfunds`': rpc importprunedfunds
'`importprunedfunds` RPC': rpc importprunedfunds
'`importpubkey`': rpc importpubkey
'`importpubkey` RPC': rpc importpubkey
'`importwallet`': rpc importwallet
'`importwallet` RPC': rpc importwallet
'`joinpsbts`': rpc joinpsbts
'`joinpsbts` RPC': rpc joinpsbts
'`keypoolrefill`': rpc keypoolrefill
'`keypoolrefill` RPC': rpc keypoolrefill
'`listaddressgroupings`': rpc listaddressgroupings
'`listaddressgroupings` RPC': rpc listaddressgroupings
'`listbanned`': rpc listbanned
'`listbanned` RPC': rpc listbanned
'`listlabels`': rpc listlabels
'`listlabels` RPC': rpc listlabels
'`listlockunspent`': rpc listlockunspent
'`listlockunspent` RPC': rpc listlockunspent
'`listreceivedbyaddress`': rpc listreceivedbyaddress
'`listreceivedbyaddress` RPC': rpc listreceivedbyaddress
'`listreceivedbylabel`': rpc listreceivedbylabel
'`listreceivedbylabel` RPC': rpc listreceivedbylabel
'`listsinceblock`': rpc listsinceblock
'`listsinceblock` RPC': rpc listsinceblock
'`listtransactions`': rpc listtransactions
'`listtransactions` RPC': rpc listtransactions
'`listunspent`': rpc listunspent
'`listunspent` RPC': rpc listunspent
'`listwalletdir`': rpc listwalletdir
'`listwalletdir` RPC': rpc listwalletdir
'`listwallets`': rpc listwallets
'`listwallets` RPC': rpc listwallets
'`loadwallet`': rpc loadwallet
'`loadwallet` RPC': rpc loadwallet
'`lockunspent`': rpc lockunspent
'`lockunspent` RPC': rpc lockunspent
'`logging`': rpc logging
'`logging` RPC': rpc logging
'`ping`': rpc ping
'`ping` RPC': rpc ping
'`preciousblock`': rpc preciousblock
'`preciousblock` RPC': rpc preciousblock
'`prioritisetransaction`': rpc prioritisetransaction
'`prioritisetransaction` RPC': rpc prioritisetransaction
'`pruneblockchain`': rpc pruneblockchain
'`pruneblockchain` RPC': rpc pruneblockchain
'`removeprunedfunds`': rpc removeprunedfunds
'`removeprunedfunds` RPC': rpc removeprunedfunds
'`rescanblockchain`': rpc rescanblockchain
'`rescanblockchain` RPC': rpc rescanblockchain
'`savemempool`': rpc savemempool
'`savemempool` RPC': rpc savemempool
'`scantxoutset`': rpc scantxoutset
'`scantxoutset` RPC': rpc scantxoutset
'`sendmany`': rpc sendmany
'`sendmany` RPC': rpc sendmany
'`sendrawtransaction`': rpc sendrawtransaction
'`sendrawtransaction` RPC': rpc sendrawtransaction
'`sendtoaddress`': rpc sendtoaddress
'`sendtoaddress` RPC': rpc sendtoaddress
'`setban`': rpc setban
'`setban` RPC': rpc setban
'`sethdseed`': rpc sethdseed
'`sethdseed` RPC': rpc sethdseed
'`setlabel`': rpc setlabel
'`setlabel` RPC': rpc setlabel
'`setnetworkactive`': rpc setnetworkactive
'`setnetworkactive` RPC': rpc setnetworkactive
'`settxfee`': rpc settxfee
'`settxfee` RPC': rpc settxfee
'`signmessage`': rpc signmessage
'`signmessage` RPC': rpc signmessage
'`signmessagewithprivkey`': rpc signmessagewithprivkey
'`signmessagewithprivkey` RPC': rpc signmessagewithprivkey
'`signrawtransactionwithkey`': rpc signrawtransactionwithkey
'`signrawtransactionwithkey` RPC': rpc signrawtransactionwithkey
'`signrawtransactionwithwallet`': rpc signrawtransactionwithwallet
'`signrawtransactionwithwallet` RPC': rpc signrawtransactionwithwallet
'`stop`': rpc stop
'`stop` RPC': rpc stop
'`submitblock`': rpc submitblock
'`submitblock` RPC': rpc submitblock
'`submitheader`': rpc submitheader
'`submitheader` RPC': rpc submitheader
'`testmempoolaccept`': rpc testmempoolaccept
'`testmempoolaccept` RPC': rpc testmempoolaccept
'`unloadwallet`': rpc unloadwallet
'`unloadwallet` RPC': rpc unloadwallet
'`uptime`': rpc uptime
'`uptime` RPC': rpc uptime
'`utxoupdatepsbt`': rpc utxoupdatepsbt
'`utxoupdatepsbt` RPC': rpc utxoupdatepsbt
'`validateaddress`': rpc validateaddress
'`validateaddress` RPC': rpc validateaddress
'`verifychain`': rpc verifychain
'`verifychain` RPC': rpc verifychain
'`verifymessage`': rpc verifymessage
'`verifymessage` RPC': rpc verifymessage
'`verifytxoutproof`': rpc verifytxoutproof
'`verifytxoutproof` RPC': rpc verifytxoutproof
'`walletcreatefundedpsbt`': rpc walletcreatefundedpsbt
'`walletcreatefundedpsbt` RPC': rpc walletcreatefundedpsbt
'`walletlock`': rpc walletlock
'`walletlock` RPC': rpc walletlock
'`walletpassphrase`': rpc walletpassphrase
'`walletpassphrase` RPC': rpc walletpassphrase
'`walletpassphrasechange`': rpc walletpassphrasechange
'`walletpassphrasechange` RPC': rpc walletpassphrasechange
'`walletprocesspsbt`': rpc walletprocesspsbt
'`walletprocesspsbt` RPC': rpc walletprocesspsbt
## Versions of Bitcoin Core (linked to Bitcoin.org release notes)
Bitcoin Core 0.1.6:
Bitcoin Core 0.2.9:
Bitcoin Core 0.3.11:
Bitcoin Core 0.3.15:
Bitcoin Core 0.3.18:
Bitcoin Core 0.6.0:
Bitcoin Core 0.6.1:
Bitcoin Core 0.7.0:
Bitcoin Core 0.8.0:
Bitcoin Core 0.9.0:
Bitcoin Core 0.9.1:
Bitcoin Core 0.9.3:
Bitcoin Core 0.10.0:
Bitcoin Core 0.10.1:
Bitcoin Core 0.10.2:
Bitcoin Core 0.10.3:
Bitcoin Core 0.11.0:
Bitcoin Core 0.11.1:
Bitcoin Core 0.11.2:
Bitcoin Core 0.12.0:
Bitcoin Core 0.12.1:
Bitcoin Core 0.13.0:
Bitcoin Core 0.13.1:
Bitcoin Core 0.13.2:
Bitcoin Core 0.14.0:
Bitcoin Core 0.14.1:
Bitcoin Core 0.14.2:
Bitcoin Core 0.18.0:
Bitcoin Core master:

6
_build/txpreview/addlang.rb Normal file → Executable file
View File

@ -14,10 +14,10 @@ end
contents = File.read(PATH + '/_config.yml')
if Regexp.new('langsorder:.*?' + "\n" + '- \'' + la + '\'' + "\n", Regexp::MULTILINE).match(contents).nil?
contents.gsub!(Regexp.new("(langsorder:.*?)\n\n", Regexp::MULTILINE),'\1' + "\n" + '- \'' + la + '\'' + "\n\n")
contents.gsub!(Regexp.new("(langs:.*?)\n\n", Regexp::MULTILINE),'\1' + "\n" + ' \'' + la + '\': \'' + la + '\'' + "\n\n")
contents.gsub!(Regexp.new("(langsorder:.*?)\n\n", Regexp::MULTILINE), '\1' + "\n" + '- \'' + la + '\'' + "\n\n")
contents.gsub!(Regexp.new("(langs:.*?)\n\n", Regexp::MULTILINE), '\1' + "\n" + ' \'' + la + '\': \'' + la + '\'' + "\n\n")
end
File.open(PATH + '/_config.yml', 'w') do |file|
file.write(contents)
file.write(contents)
end

View File

@ -21,7 +21,6 @@ langsorder:
- 'uk'
- 'ar'
- 'fa'
- 'he'
- 'hi'
- 'ko'
- 'ja'
@ -38,7 +37,6 @@ langs:
'es': 'Español'
'fa': 'فارسی'
'fr': 'Français'
'he': 'עברית'
'hi': 'हिन्दी'
'hu': 'Magyar'
'id': 'Bahasa Indonesia'
@ -59,368 +57,12 @@ langs:
'zh_TW': '繁體中文'
redirects:
/en/bitcoin-for-developers: https://developer.bitcoin.org/
/en/developer-guide: https://developer.bitcoin.org/devguide/
/en/developer-guide#blockchain: https://developer.bitcoin.org/devguide/block_chain#block-chain
/en/developer-guide#transactions: https://developer.bitcoin.org/devguide/transactions#transactions
/en/developer-guide#wallets: https://developer.bitcoin.org/devguide/wallets#wallets
/en/developer-guide#payment-processing: https://developer.bitcoin.org/devguide/payment_processing#payment-processing
/en/developer-guide#p2p-network: https://developer.bitcoin.org/devguide/p2p_network#p2p-network
/en/developer-guide#mining: https://developer.bitcoin.org/devguide/mining#mining
/en/blockchain-guide: https://developer.bitcoin.org/devguide/block_chain
/en/blockchain-guide#introduction: https://developer.bitcoin.org/devguide/block_chain#introduction
/en/blockchain-guide#proof-of-work: https://developer.bitcoin.org/devguide/block_chain#proof-of-work
/en/blockchain-guide#block-height-and-forking: https://developer.bitcoin.org/devguide/block_chain#block-height-and-forking
/en/blockchain-guide#transaction-data: https://developer.bitcoin.org/devguide/block_chain#transaction-data
/en/blockchain-guide#consensus-rule-changes: https://developer.bitcoin.org/devguide/block_chain#consensus-rule-changes
/en/blockchain-guide#detecting-forks: https://developer.bitcoin.org/devguide/block_chain#detecting-forks
/en/transactions-guide: https://developer.bitcoin.org/devguide/transactions
/en/transactions-guide#introduction: https://developer.bitcoin.org/devguide/transactions#introduction
/en/transactions-guide#p2pkh-script-validation: https://developer.bitcoin.org/devguide/transactions#p2pkh-script-validation
/en/transactions-guide#p2sh-scripts: https://developer.bitcoin.org/devguide/transactions#p2sh-scripts
/en/transactions-guide#standard-transactions: https://developer.bitcoin.org/devguide/transactions#standard-transactions
/en/transactions-guide#pay-to-public-key-hash-p2pkh: https://developer.bitcoin.org/devguide/transactions#pay-to-public-key-hash-p2pkh
/en/transactions-guide#multisig: https://developer.bitcoin.org/devguide/transactions#multisig
/en/transactions-guide#null-data: https://developer.bitcoin.org/devguide/transactions#null-data
/en/transactions-guide#non-standard-transactions: https://developer.bitcoin.org/devguide/transactions#non-standard-transactions
/en/transactions-guide#signature-hash-types: https://developer.bitcoin.org/devguide/transactions#signature-hash-types
/en/transactions-guide#locktime-and-sequence-number: https://developer.bitcoin.org/devguide/transactions#locktime-and-sequence-number
/en/transactions-guide#transaction-fees-and-change: https://developer.bitcoin.org/devguide/transactions#transaction-fees-and-change
/en/transactions-guide#avoiding-key-reuse: https://developer.bitcoin.org/devguide/transactions#avoiding-key-reuse
/en/transactions-guide#transaction-malleability: https://developer.bitcoin.org/devguide/transactions#transaction-malleability
/en/contracts-guide: https://developer.bitcoin.org/devguide/contracts
/en/contracts-guide#introduction: https://developer.bitcoin.org/devguide/contracts#introduction
/en/contracts-guide#escrow-and-arbitration: https://developer.bitcoin.org/devguide/contracts#escrow-and-arbitration
/en/contracts-guide#micropayment-channel: https://developer.bitcoin.org/devguide/contracts#micropayment-channel
/en/contracts-guide#coinjoin: https://developer.bitcoin.org/devguide/contracts#coinjoin
/en/wallets-guide: https://developer.bitcoin.org/devguide/wallets
/en/wallets-guide#introductions: https://developer.bitcoin.org/devguide/wallets#introductions
/en/wallets-guide#wallet-programs: https://developer.bitcoin.org/devguide/wallets#wallet-programs
/en/wallets-guide#full-service-wallets: https://developer.bitcoin.org/devguide/wallets#full-service-wallets
/en/wallets-guide#signing-only-wallets: https://developer.bitcoin.org/devguide/wallets#signing-only-wallets
/en/wallets-guide#offline-wallets: https://developer.bitcoin.org/devguide/wallets#offline-wallets
/en/wallets-guide#hardware-wallets: https://developer.bitcoin.org/devguide/wallets#hardware-wallets
/en/wallets-guide#distributing-only-wallets: https://developer.bitcoin.org/devguide/wallets#distributing-only-wallets
/en/wallets-guide#wallet-files: https://developer.bitcoin.org/devguide/wallets#wallet-files
/en/wallets-guide#private-key-formats: https://developer.bitcoin.org/devguide/wallets#private-key-formats
/en/wallets-guide#wallet-import-format-wif: https://developer.bitcoin.org/devguide/wallets#wallet-import-format-wif
/en/wallets-guide#mini-private-key-format: https://developer.bitcoin.org/devguide/wallets#mini-private-key-format
/en/wallets-guide#public-key-formats: https://developer.bitcoin.org/devguide/wallets#public-key-formats
/en/wallets-guide#hierarchical-deterministic-key-creation: https://developer.bitcoin.org/devguide/wallets#hierarchical-deterministic-key-creation
/en/wallets-guide#hardened-keys: https://developer.bitcoin.org/devguide/wallets#hardened-keys
/en/wallets-guide#storing-root-seeds: https://developer.bitcoin.org/devguide/wallets#storing-root-seeds
/en/wallets-guide#loose-key-wallets: https://developer.bitcoin.org/devguide/wallets#loose-key-wallets
/en/payment-processing-guide: https://developer.bitcoin.org/devguide/payment_processing
/en/payment-processing-guide#introduction: https://developer.bitcoin.org/devguide/payment_processing#introduction
/en/payment-processing-guide#pricing-orders: https://developer.bitcoin.org/devguide/payment_processing#pricing-orders
/en/payment-processing-guide#requesting-payments: https://developer.bitcoin.org/devguide/payment_processing#requesting-payments
/en/payment-processing-guide#plain-text: https://developer.bitcoin.org/devguide/payment_processing#plain-text
/en/payment-processing-guide#bitcoin-uri: https://developer.bitcoin.org/devguide/payment_processing#bitcoin-uri
/en/payment-processing-guide#qr-codes: https://developer.bitcoin.org/devguide/payment_processing#qr-codes
/en/payment-processing-guide#payment-protocol: https://developer.bitcoin.org/devguide/payment_processing#payment-protocol
/en/payment-processing-guide#verifying-payment: https://developer.bitcoin.org/devguide/payment_processing#verifying-payment
/en/payment-processing-guide#issuing-refunds: https://developer.bitcoin.org/devguide/payment_processing#issuing-refunds
/en/payment-processing-guide#disbursing-income-limiting-forex-risk: https://developer.bitcoin.org/devguide/payment_processing#disbursing-income-limiting-forex-risk
/en/payment-processing-guide#merge-avoidance: https://developer.bitcoin.org/devguide/payment_processing#merge-avoidance
/en/payment-processing-guide#last-in-first-out-lifo: https://developer.bitcoin.org/devguide/payment_processing#last-in-first-out-lifo
/en/payment-processing-guide#first-in-first-out-fifo: https://developer.bitcoin.org/devguide/payment_processing#first-in-first-out-fifo
/en/payment-processing-guide#rebilling-recurring-payments: https://developer.bitcoin.org/devguide/payment_processing#rebilling-recurring-payments
/en/operating-modes-guide: https://developer.bitcoin.org/devguide/operating_modes
/en/operating-modes-guide#introduction: https://developer.bitcoin.org/devguide/operating_modes#introduction
/en/operating-modes-guide#full-node: https://developer.bitcoin.org/devguide/operating_modes#full-node
/en/operating-modes-guide#simplified-payment-verification-spv: https://developer.bitcoin.org/devguide/operating_modes#simplified-payment-verification-spv
/en/operating-modes-guide#potential-spv-weaknesses: https://developer.bitcoin.org/devguide/operating_modes#potential-spv-weaknesses
/en/operating-modes-guide#bloom-filters: https://developer.bitcoin.org/devguide/operating_modes#bloom-filters
/en/operating-modes-guide#application-of-bloom-filters: https://developer.bitcoin.org/devguide/operating_modes#application-of-bloom-filters
/en/operating-modes-guide#future-proposals: https://developer.bitcoin.org/devguide/operating_modes#future-proposals
/en/p2p-network-guide: https://developer.bitcoin.org/devguide/p2p_network
/en/p2p-network-guide#introduction: https://developer.bitcoin.org/devguide/p2p_network#introduction
/en/p2p-network-guide#peer-discovery: https://developer.bitcoin.org/devguide/p2p_network#peer-discovery
/en/p2p-network-guide#connecting-to-peers: https://developer.bitcoin.org/devguide/p2p_network#connecting-to-peers
/en/p2p-network-guide#initial-block-download: https://developer.bitcoin.org/devguide/p2p_network#initial-block-download
/en/p2p-network-guide#blocks-first: https://developer.bitcoin.org/devguide/p2p_network#blocks-first
/en/p2p-network-guide#headers-first: https://developer.bitcoin.org/devguide/p2p_network#headers-first
/en/p2p-network-guide#block-broadcasting: https://developer.bitcoin.org/devguide/p2p_network#block-broadcasting
/en/p2p-network-guide#orphan-blocks: https://developer.bitcoin.org/devguide/p2p_network#orphan-blocks
/en/p2p-network-guide#transaction-broadcasting: https://developer.bitcoin.org/devguide/p2p_network#transaction-broadcasting
/en/p2p-network-guide#misbehaving-nodes: https://developer.bitcoin.org/devguide/p2p_network#misbehaving-nodes
/en/p2p-network-guide#alerts: https://developer.bitcoin.org/devguide/p2p_network#alerts
/en/mining-guide: https://developer.bitcoin.org/devguide/mining
/en/mining-guide#introduction: https://developer.bitcoin.org/devguide/mining#introduction
/en/mining-guide#solo-mining: https://developer.bitcoin.org/devguide/mining#solo-mining
/en/mining-guide#pool-mining: https://developer.bitcoin.org/devguide/mining#pool-mining
/en/mining-guide#block-prototypes: https://developer.bitcoin.org/devguide/mining#block-prototypes
/en/mining-guide#getwork-rpc: https://developer.bitcoin.org/devguide/mining#getwork-rpc
/en/mining-guide#getblocktemplate-rpc: https://developer.bitcoin.org/devguide/mining#getblocktemplate-rpc
/en/mining-guide#stratum: https://developer.bitcoin.org/devguide/mining#stratum
/en/developer-reference: https://developer.bitcoin.org/reference/
/en/developer-reference#block-chain: https://developer.bitcoin.org/reference/block_chain#block-chain
/en/developer-reference#block-headers: https://developer.bitcoin.org/reference/block_chain#block-headers
/en/developer-reference#block-versions: https://developer.bitcoin.org/reference/block_chain#block-versions
/en/developer-reference#merkle-trees: https://developer.bitcoin.org/reference/block_chain#merkle-trees
/en/developer-reference#target-nbits: https://developer.bitcoin.org/reference/block_chain#target-nbits
/en/developer-reference#serialized-blocks: https://developer.bitcoin.org/reference/block_chain#serialized-blocks
/en/developer-reference#transactions: https://developer.bitcoin.org/reference/transactions
/en/developer-reference#opcodes: https://developer.bitcoin.org/reference/transactions#opcodes
/en/developer-reference#address-conversion: https://developer.bitcoin.org/reference/transactions#address-conversion
/en/developer-reference#raw-transaction-format: https://developer.bitcoin.org/reference/transactions#raw-transaction-format
/en/developer-reference#compactsize-unsigned-integers: https://developer.bitcoin.org/reference/transactions#compactsize-unsigned-integers
/en/developer-reference#wallets: https://developer.bitcoin.org/reference/wallets
/en/developer-reference#deterministic-wallet-formats: https://developer.bitcoin.org/reference/wallets#deterministic-wallet-formats
/en/developer-reference#type-1-single-chain-wallets: https://developer.bitcoin.org/reference/wallets#type-1-single-chain-wallets
/en/developer-reference#type-2-hierarchical-deterministic-hd-wallets: https://developer.bitcoin.org/reference/wallets#type-2-hierarchical-deterministic-hd-wallets
/en/developer-reference#p2p-network: https://developer.bitcoin.org/reference/p2p_networking#p2p-network
/en/developer-reference#constants-and-defaults: https://developer.bitcoin.org/reference/p2p_networking#constants-and-defaults
/en/developer-reference#protocol-versions: https://developer.bitcoin.org/reference/p2p_networking#protocol-versions
/en/developer-reference#message-headers: https://developer.bitcoin.org/reference/p2p_networking#message-headers
/en/developer-reference#data-messages: https://developer.bitcoin.org/reference/p2p_networking#data-messages
/en/developer-reference#block: https://developer.bitcoin.org/reference/p2p_networking#block
/en/developer-reference#getblocks: https://developer.bitcoin.org/reference/p2p_networking#getblocks
/en/developer-reference#getdata: https://developer.bitcoin.org/reference/p2p_networking#getdata
/en/developer-reference#getheaders: https://developer.bitcoin.org/reference/p2p_networking#getheaders
/en/developer-reference#headers: https://developer.bitcoin.org/reference/p2p_networking#headers
/en/developer-reference#inv: https://developer.bitcoin.org/reference/p2p_networking#inv
/en/developer-reference#mempool: https://developer.bitcoin.org/reference/p2p_networking#mempool
/en/developer-reference#merkleblock: https://developer.bitcoin.org/reference/p2p_networking#merkleblock
/en/developer-reference#cmpctblock: https://developer.bitcoin.org/reference/p2p_networking#cmpctblock
/en/developer-reference#sendcmpct: https://developer.bitcoin.org/reference/p2p_networking#sendcmpct
/en/developer-reference#getblocktxn: https://developer.bitcoin.org/reference/p2p_networking#getblocktxn
/en/developer-reference#blocktxn: https://developer.bitcoin.org/reference/p2p_networking#blocktxn
/en/developer-reference#notfound: https://developer.bitcoin.org/reference/p2p_networking#notfound
/en/developer-reference#tx: https://developer.bitcoin.org/reference/p2p_networking#tx
/en/developer-reference#control-messages: https://developer.bitcoin.org/reference/p2p_networking#control-messages
/en/developer-reference#addr: https://developer.bitcoin.org/reference#addr
/en/developer-reference#alert: https://developer.bitcoin.org/reference/p2p_networking#alert
/en/developer-reference#feefilter: https://developer.bitcoin.org/reference/p2p_networking#feefilter
/en/developer-reference#filteradd: https://developer.bitcoin.org/reference/p2p_networking#filteradd
/en/developer-reference#filterclear: https://developer.bitcoin.org/reference/p2p_networking#filterclear
/en/developer-reference#filterload: https://developer.bitcoin.org/reference/p2p_networking#filterload
/en/developer-reference#getaddr: https://developer.bitcoin.org/reference/p2p_networking#getaddr
/en/developer-reference#ping: https://developer.bitcoin.org/reference/p2p_networking#ping
/en/developer-reference#pong: https://developer.bitcoin.org/reference/p2p_networking#pong
/en/developer-reference#reject: https://developer.bitcoin.org/reference/p2p_networking#reject
/en/developer-reference#sendheaders: https://developer.bitcoin.org/reference/p2p_networking#sendheaders
/en/developer-reference#verack: https://developer.bitcoin.org/reference/p2p_networking#verack
/en/developer-reference#version: https://developer.bitcoin.org/reference/p2p_networking#version
/en/developer-reference#abandontransaction: https://developer.bitcoin.org/reference/rpc/abandontransaction#abandontransaction
/en/developer-reference#abortrescan: https://developer.bitcoin.org/reference/rpc/abortrescan#abortrescan
/en/developer-reference#addmultisigaddress: https://developer.bitcoin.org/reference/rpc/addmultisigaddress#addmultisigaddress
/en/developer-reference#addnode: https://developer.bitcoin.org/reference/rpc/addnode#addnode
/en/developer-reference#analyzepsbt: https://developer.bitcoin.org/reference/rpc/analyzepsbt#analyzepsbt
/en/developer-reference#backupwallet: https://developer.bitcoin.org/reference/rpc/backupwallet#backupwallet
/en/developer-reference#bumpfee: https://developer.bitcoin.org/reference/rpc/bumpfee#bumpfee
/en/developer-reference#clearbanned: https://developer.bitcoin.org/reference/rpc/clearbanned#clearbanned
/en/developer-reference#combinepsbt: https://developer.bitcoin.org/reference/rpc/combinepsbt#combinepsbt
/en/developer-reference#combinerawtransaction: https://developer.bitcoin.org/reference/rpc/combinerawtransaction#combinerawtransaction
/en/developer-reference#converttopsbt: https://developer.bitcoin.org/reference/rpc/converttopsbt#converttopsbt
/en/developer-reference#createmultisig: https://developer.bitcoin.org/reference/rpc/createmultisig#createmultisig
/en/developer-reference#createpsbt: https://developer.bitcoin.org/reference/rpc/createpsbt
/en/developer-reference#createrawtransaction: https://developer.bitcoin.org/reference/rpc/createrawtransaction
/en/developer-reference#createwallet: https://developer.bitcoin.org/reference/rpc/createwallet
/en/developer-reference#decodepsbt: https://developer.bitcoin.org/reference/rpc/decodepsbt
/en/developer-reference#decoderawtransaction: https://developer.bitcoin.org/reference/rpc/decoderawtransaction
/en/developer-reference#decodescript: https://developer.bitcoin.org/reference/rpc/decodescript
/en/developer-reference#deriveaddresses: https://developer.bitcoin.org/reference/rpc/deriveaddresses
/en/developer-reference#disconnectnode: https://developer.bitcoin.org/reference/rpc/disconnectnode
/en/developer-reference#dumpprivkey: https://developer.bitcoin.org/reference/rpc/dumpprivkey
/en/developer-reference#dumpwallet: https://developer.bitcoin.org/reference/rpc/dumpwallet
/en/developer-reference#encryptwallet: https://developer.bitcoin.org/reference/rpc/encryptwallet
/en/developer-reference#estimatesmartfee: https://developer.bitcoin.org/reference/rpc/estimatesmartfee
/en/developer-reference#finalizepsbt: https://developer.bitcoin.org/reference/rpc/finalizepsbt
/en/developer-reference#fundrawtransaction: https://developer.bitcoin.org/reference/rpc/fundrawtransaction
/en/developer-reference#generate: https://developer.bitcoin.org/reference/rpc/generate
/en/developer-reference#generatetoaddress: https://developer.bitcoin.org/reference/rpc/generatetoaddress
/en/developer-reference#getaddednodeinfo: https://developer.bitcoin.org/reference/rpc/getaddednodeinfo
/en/developer-reference#getaddressesbylabel: https://developer.bitcoin.org/reference/rpc/getaddressesbylabel
/en/developer-reference#getaddressinfo: https://developer.bitcoin.org/reference/rpc/getaddressinfo
/en/developer-reference#getbalance: https://developer.bitcoin.org/reference/rpc/getbalance
/en/developer-reference#getbestblockhash: https://developer.bitcoin.org/reference/rpc/getbestblockhash
/en/developer-reference#getblock: https://developer.bitcoin.org/reference/rpc/getblock
/en/developer-reference#getblockchaininfo: https://developer.bitcoin.org/reference/rpc/getblockchaininfo
/en/developer-reference#getblockcount: https://developer.bitcoin.org/reference/rpc/getblockcount
/en/developer-reference#getblockhash: https://developer.bitcoin.org/reference/rpc/getblockhash
/en/developer-reference#getblockheader: https://developer.bitcoin.org/reference/rpc/getblockheader
/en/developer-reference#getblockstats: https://developer.bitcoin.org/reference/rpc/getblockstats
/en/developer-reference#getblocktemplate: https://developer.bitcoin.org/reference/rpc/getblocktemplate
/en/developer-reference#getchaintips: https://developer.bitcoin.org/reference/rpc/getchaintips
/en/developer-reference#getchaintxstats: https://developer.bitcoin.org/reference/rpc/getchaintxstats
/en/developer-reference#getconnectioncount: https://developer.bitcoin.org/reference/rpc/getconnectioncount
/en/developer-reference#getdescriptorinfo: https://developer.bitcoin.org/reference/rpc/getdescriptorinfo
/en/developer-reference#getdifficulty: https://developer.bitcoin.org/reference/rpc/getdifficulty
/en/developer-reference#getmemoryinfo: https://developer.bitcoin.org/reference/rpc/getmemoryinfo
/en/developer-reference#getmempoolancestors: https://developer.bitcoin.org/reference/rpc/getmempoolancestors
/en/developer-reference#getmempooldescendants: https://developer.bitcoin.org/reference/rpc/getmempooldescendants
/en/developer-reference#getmempoolentry: https://developer.bitcoin.org/reference/rpc/getmempoolentry
/en/developer-reference#getmempoolinfo: https://developer.bitcoin.org/reference/rpc/getmempoolinfo
/en/developer-reference#getmininginfo: https://developer.bitcoin.org/reference/rpc/getmininginfo
/en/developer-reference#getnettotals: https://developer.bitcoin.org/reference/rpc/getnettotals
/en/developer-reference#getnetworkhashps: https://developer.bitcoin.org/reference/rpc/getnetworkhashps
/en/developer-reference#getnetworkinfo: https://developer.bitcoin.org/reference/rpc/getnetworkinfo
/en/developer-reference#getnewaddress: https://developer.bitcoin.org/reference/rpc/getnewaddress
/en/developer-reference#getnodeaddresses: https://developer.bitcoin.org/reference/rpc/getnodeaddresses
/en/developer-reference#getpeerinfo: https://developer.bitcoin.org/reference/rpc/getpeerinfo
/en/developer-reference#getrawchangeaddress: https://developer.bitcoin.org/reference/rpc/getrawchangeaddress
/en/developer-reference#getrawmempool: https://developer.bitcoin.org/reference/rpc/getrawmempool
/en/developer-reference#getrawtransaction: https://developer.bitcoin.org/reference/rpc/getrawtransaction
/en/developer-reference#getrawtransaction: https://developer.bitcoin.org/reference/rpc/getrawtransaction
/en/developer-reference#getreceivedbyaddress: https://developer.bitcoin.org/reference/rpc/getreceivedbyaddress
/en/developer-reference#getreceivedbylabel: https://developer.bitcoin.org/reference/rpc/getreceivedbylabel
/en/developer-reference#getrpcinfo: https://developer.bitcoin.org/reference/rpc/getrpcinfo
/en/developer-reference#gettransaction: https://developer.bitcoin.org/reference/rpc/gettransaction
/en/developer-reference#gettxout: https://developer.bitcoin.org/reference/rpc/gettxout
/en/developer-reference#gettxoutproof: https://developer.bitcoin.org/reference/rpc/gettxoutproof
/en/developer-reference#gettxoutsetinfo: https://developer.bitcoin.org/reference/rpc/gettxoutsetinfo
/en/developer-reference#getunconfirmedbalance: https://developer.bitcoin.org/reference/rpc/getunconfirmedbalance
/en/developer-reference#getwalletinfo: https://developer.bitcoin.org/reference/rpc/getwalletinfo
/en/developer-reference#help: https://developer.bitcoin.org/reference/rpc/help
/en/developer-reference#importaddress: https://developer.bitcoin.org/reference/rpc/importaddress
/en/developer-reference#importmulti: https://developer.bitcoin.org/reference/rpc/importmulti
/en/developer-reference#importprivkey: https://developer.bitcoin.org/reference/rpc/importprivkey
/en/developer-reference#importprunedfunds: https://developer.bitcoin.org/reference/rpc/importprunedfunds
/en/developer-reference#importpubkey: https://developer.bitcoin.org/reference/rpc/importpubkey
/en/developer-reference#importwallet: https://developer.bitcoin.org/reference/rpc/importwallet
/en/developer-reference#joinpsbts: https://developer.bitcoin.org/reference/rpc/joinpsbts
/en/developer-reference#keypoolrefill: https://developer.bitcoin.org/reference/rpc/keypoolrefill
/en/developer-reference#listaddressgroupings: https://developer.bitcoin.org/reference/rpc/listaddressgroupings
/en/developer-reference#listbanned: https://developer.bitcoin.org/reference/rpc/listbanned
/en/developer-reference#listlabels: https://developer.bitcoin.org/reference/rpc/listlabels
/en/developer-reference#listlockunspent: https://developer.bitcoin.org/reference/rpc/listlockunspent
/en/developer-reference#listreceivedbyaddress: https://developer.bitcoin.org/reference/rpc/listreceivedbyaddress
/en/developer-reference#listreceivedbylabel: https://developer.bitcoin.org/reference/rpc/listreceivedbylabel
/en/developer-reference#listsinceblock: https://developer.bitcoin.org/reference/rpc/listsinceblock
/en/developer-reference#listtransactions: https://developer.bitcoin.org/reference/rpc/listtransactions
/en/developer-reference#listunspent: https://developer.bitcoin.org/reference/rpc/listunspent
/en/developer-reference#listwalletdir: https://developer.bitcoin.org/reference/rpc/listwalletdir
/en/developer-reference#listwallets: https://developer.bitcoin.org/reference/rpc/listwallets
/en/developer-reference#loadwallet: https://developer.bitcoin.org/reference/rpc/loadwallet
/en/developer-reference#lockunspent: https://developer.bitcoin.org/reference/rpc/lockunspent
/en/developer-reference#logging: https://developer.bitcoin.org/reference/rpc/logging
/en/developer-reference#ping-rpc: https://developer.bitcoin.org/reference/rpc/ping-rpc
/en/developer-examples: https://developer.bitcoin.org/examples/
/en/developer-examples#testing-applications: https://developer.bitcoin.org/examples/testing#testing-applications
/en/developer-examples#testnet: https://developer.bitcoin.org/examples/testing#testnet
/en/developer-examples#regtest-mode: https://developer.bitcoin.org/examples/testing#regtest-mode
/en/developer-examples#transactions: https://developer.bitcoin.org/examples/transactions#transactions
/en/developer-examples#transaction-tutorial: https://developer.bitcoin.org/examples/transactions#transaction-tutorial
/en/developer-examples#simple-spending: https://developer.bitcoin.org/examples/transactions#simple-spending
/en/developer-examples#simple-raw-transaction: https://developer.bitcoin.org/examples/transactions#simple-raw-transaction
/en/developer-examples#complex-raw-transaction: https://developer.bitcoin.org/examples/transactions#complex-raw-transaction
/en/developer-examples#offline-signing: https://developer.bitcoin.org/examples/transactions#offline-signing
/en/developer-examples#p2sh-multisig: https://developer.bitcoin.org/examples/transactions#p2sh-multisig
/en/developer-examples#payment-processing: https://developer.bitcoin.org/examples/payment_processing
/en/developer-examples#payment-protocol: https://developer.bitcoin.org/examples/payment_processing#payment-protocol
/en/developer-examples#paymentrequest--paymentdetails: https://developer.bitcoin.org/examples/payment_processing#paymentrequest-paymentdetails
/en/developer-examples#initialization-code: https://developer.bitcoin.org/examples/payment_processing#initialization-code
/en/developer-examples#configuration-code: https://developer.bitcoin.org/examples/payment_processing#configuration-code
/en/developer-examples#code-variables: https://developer.bitcoin.org/examples/payment_processing#code-variables
/en/developer-examples#derivable-data: https://developer.bitcoin.org/examples/payment_processing#derivable-data
/en/developer-examples#output-code: https://developer.bitcoin.org/examples/payment_processing#output-code
/en/developer-examples#p2p-network: https://developer.bitcoin.org/examples/p2p_networking
/en/developer-examples#creating-a-bloom-filter: https://developer.bitcoin.org/examples/p2p_networking#creating-a-bloom-filter
/en/developer-examples#evaluating-a-bloom-filter: https://developer.bitcoin.org/examples/p2p_networking#evaluating-a-bloom-filter
/en/developer-examples#retrieving-a-merkleblock: https://developer.bitcoin.org/examples/p2p_networking#retrieving-a-merkleblock
/en/developer-examples#parsing-a-merkleblock: https://developer.bitcoin.org/examples/p2p_networking#parsing-a-merkleblock
/en/developer-glossary: https://developer.bitcoin.org/glossary
/en/glossary/51-percent-attack: https://developer.bitcoin.org/glossary
/en/glossary/address: https://developer.bitcoin.org/glossary
/en/glossary/node: https://developer.bitcoin.org/glossary
/en/glossary/cpfp: https://developer.bitcoin.org/glossary
/en/glossary/multisig: https://developer.bitcoin.org/glossary
/en/glossary/header-chain: https://developer.bitcoin.org/glossary
/en/glossary/block-chain: https://developer.bitcoin.org/glossary
/en/glossary/denominations: https://developer.bitcoin.org/glossary
/en/glossary/block: https://developer.bitcoin.org/glossary
/en/glossary/genesis-block: https://developer.bitcoin.org/glossary
/en/glossary/block-header: https://developer.bitcoin.org/glossary
/en/glossary/block-height: https://developer.bitcoin.org/glossary
/en/glossary/blocks-first-sync: https://developer.bitcoin.org/glossary
/en/glossary/bloom-filter: https://developer.bitcoin.org/glossary
/en/glossary/chain-code: https://developer.bitcoin.org/glossary
/en/glossary/change-address: https://developer.bitcoin.org/glossary
/en/glossary/child-key: https://developer.bitcoin.org/glossary
/en/glossary/coinbase: https://developer.bitcoin.org/glossary
/en/glossary/coinbase-transaction: https://developer.bitcoin.org/glossary
/en/glossary/compactsize: https://developer.bitcoin.org/glossary
/en/glossary/compressed-public-key: https://developer.bitcoin.org/glossary
/en/glossary/confirmation-score: https://developer.bitcoin.org/glossary
/en/glossary/consensus: https://developer.bitcoin.org/glossary
/en/glossary/consensus-rules: https://developer.bitcoin.org/glossary
/en/glossary/null-data-transaction: https://developer.bitcoin.org/glossary
/en/glossary/op-code: https://developer.bitcoin.org/glossary
/en/glossary/difficulty: https://developer.bitcoin.org/glossary
/en/glossary/dns-seed: https://developer.bitcoin.org/glossary
/en/glossary/double-spend: https://developer.bitcoin.org/glossary
/en/glossary/escrow-contract: https://developer.bitcoin.org/glossary
/en/glossary/extended-key: https://developer.bitcoin.org/glossary
/en/glossary/fork: https://developer.bitcoin.org/glossary
/en/glossary/high-priority-transaction: https://developer.bitcoin.org/glossary
/en/glossary/hard-fork: https://developer.bitcoin.org/glossary
/en/glossary/hardened-extended-key: https://developer.bitcoin.org/glossary
/en/glossary/hd-protocol: https://developer.bitcoin.org/glossary
/en/glossary/hd-wallet-seed: https://developer.bitcoin.org/glossary
/en/glossary/headers-first-sync: https://developer.bitcoin.org/glossary
/en/glossary/initial-block-download: https://developer.bitcoin.org/glossary
/en/glossary/input: https://developer.bitcoin.org/glossary
/en/glossary/internal-byte-order: https://developer.bitcoin.org/glossary
/en/glossary/inventory: https://developer.bitcoin.org/glossary
/en/glossary/simplified-payment-verification: https://developer.bitcoin.org/glossary
/en/glossary/locktime: https://developer.bitcoin.org/glossary
/en/glossary/mainnet: https://developer.bitcoin.org/glossary
/en/glossary/masf: https://developer.bitcoin.org/glossary
/en/glossary/master-chain-code-and-private-key: https://developer.bitcoin.org/glossary
/en/glossary/block-size-limit: https://developer.bitcoin.org/glossary
/en/glossary/merkle-block: https://developer.bitcoin.org/glossary
/en/glossary/merkle-root: https://developer.bitcoin.org/glossary
/en/glossary/merkle-tree: https://developer.bitcoin.org/glossary
/en/glossary/message-header: https://developer.bitcoin.org/glossary
/en/glossary/mining: https://developer.bitcoin.org/glossary
/en/glossary/transaction-fee: https://developer.bitcoin.org/glossary
/en/glossary/minimum-relay-fee: https://developer.bitcoin.org/glossary
/en/glossary/nbits: https://developer.bitcoin.org/glossary
/en/glossary/start-string: https://developer.bitcoin.org/glossary
/en/glossary/rbf: https://developer.bitcoin.org/glossary
/en/glossary/orphan-block: https://developer.bitcoin.org/glossary
/en/glossary/outpoint: https://developer.bitcoin.org/glossary
/en/glossary/output: https://developer.bitcoin.org/glossary
/en/glossary/p2pkh-address: https://developer.bitcoin.org/glossary
/en/glossary/p2sh-multisig: https://developer.bitcoin.org/glossary
/en/glossary/p2sh-address: https://developer.bitcoin.org/glossary
/en/glossary/parent-key: https://developer.bitcoin.org/glossary
/en/glossary/payment-protocol: https://developer.bitcoin.org/glossary
/en/glossary/proof-of-work: https://developer.bitcoin.org/glossary
/en/glossary/private-key: https://developer.bitcoin.org/glossary
/en/glossary/pubkey-script: https://developer.bitcoin.org/glossary
/en/glossary/public-key: https://developer.bitcoin.org/glossary
/en/glossary/serialized-transaction: https://developer.bitcoin.org/glossary
/en/glossary/redeem-script: https://developer.bitcoin.org/glossary
/en/glossary/regression-test-mode: https://developer.bitcoin.org/glossary
/en/glossary/rpc-byte-order: https://developer.bitcoin.org/glossary
/en/glossary/signature-script: https://developer.bitcoin.org/glossary
/en/glossary/sequence-number: https://developer.bitcoin.org/glossary
/en/glossary/serialized-block: https://developer.bitcoin.org/glossary
/en/glossary/signature-hash: https://developer.bitcoin.org/glossary
/en/glossary/sighash-all: https://developer.bitcoin.org/glossary
/en/glossary/sighash-anyonecanpay: https://developer.bitcoin.org/glossary
/en/glossary/sighash-none: https://developer.bitcoin.org/glossary
/en/glossary/sighash-single: https://developer.bitcoin.org/glossary
/en/glossary/signature: https://developer.bitcoin.org/glossary
/en/glossary/soft-fork: https://developer.bitcoin.org/glossary
/en/glossary/standard-transaction: https://developer.bitcoin.org/glossary
/en/glossary/testnet: https://developer.bitcoin.org/glossary
/en/glossary/token: https://developer.bitcoin.org/glossary
/en/glossary/malleability: https://developer.bitcoin.org/glossary
/en/glossary/txid: https://developer.bitcoin.org/glossary
/en/glossary/uasf: https://developer.bitcoin.org/glossary
/en/glossary/unspent-transaction-output: https://developer.bitcoin.org/glossary
/en/glossary/wallet: https://developer.bitcoin.org/glossary
/en/glossary/wallet-import-format: https://developer.bitcoin.org/glossary
/en/glossary/watch-only-address: https://developer.bitcoin.org/glossary
/news: /en/version-history
/clients: /en/choose-your-wallet
/about: /en/faq
/ar/بت-كوين-للهواة: /ar/innovation
/ar/عن: /ar/faq
/ar/بت-كوين-للمطورين: https://developer.bitcoin.org/
/ar/بت-كوين-للمطورين: /ar/bitcoin-for-developers
/ar/بت-كوين-للأفراد: /ar/bitcoin-for-individuals
/ar/إختر-محفظتك: /ar/choose-your-wallet
/ar/بت-كوين-للأعمال: /ar/bitcoin-for-businesses
@ -435,7 +77,7 @@ redirects:
/ar/تحتاج-أن-تعلم: /ar/you-need-to-know
/fa/بیت-کوین-برای-علاقه-مندان: /fa/innovation
/fa/درباره: /fa/faq
/fa/بیت-کوین-برای-توسعه-دهندگان: https://developer.bitcoin.org/
/fa/بیت-کوین-برای-توسعه-دهندگان: /fa/bitcoin-for-developers
/fa/بیت-کوین-برای-افراد: /fa/bitcoin-for-individuals
/fa/بیت-کوین-برای-کسب-و-کار: /fa/bitcoin-for-businesses
/fa/انتخاب-کیف-پول: /fa/choose-your-wallet
@ -448,7 +90,7 @@ redirects:
/fa/حمایت-از-بیت-کوین: /fa/support-bitcoin
/fa/واژگان: /fa/vocabulary
/fa/آن-چه-باید-بدانید: /fa/you-need-to-know
/ru/биткоин-разработчикам: https://developer.bitcoin.org/
/ru/биткоин-разработчикам: /ru/bitcoin-for-developers
/ru/биткоин-частным-лицам: /ru/bitcoin-for-individuals
/ru/биткоин-бизнесу: /ru/bitcoin-for-businesses
/ru/выберите-свой-кошелек: /ru/choose-your-wallet
@ -466,46 +108,46 @@ redirects:
/tr/yeni-baslamak: /tr/baslarken
/en/bitcoin-for-press: /en/press
/de/ueber: /de/faq
/de/developer-examples: https://developer.bitcoin.org/examples/
/de/developer-glossary: https://developer.bitcoin.org/glossary
/de/developer-guide: https://developer.bitcoin.org/devguide/
/de/developer-reference: https://developer.bitcoin.org/reference/
/de/developer-documentation: https://developer.bitcoin.org/
/de/developer-examples: /de/entwickler-beispiele
/de/developer-glossary: /de/entwickler-glossar
/de/developer-guide: /de/entwickler-guide
/de/developer-reference: /de/entwickler-referenzen
/de/developer-documentation: /de/entwickler-dokumentation
/en/about: /en/faq
/es/acerca-de: /es/faq
/fr/a-propos: /fr/faq
/hu/bitcoin-paper: /hu/papir-bitcoin
/hu/developer-documentation: https://developer.bitcoin.org/
/hu/developer-examples: https://developer.bitcoin.org/examples/
/hu/developer-glossary: https://developer.bitcoin.org/glossary
/hu/developer-guide: https://developer.bitcoin.org/devguide/
/hu/developer-reference: https://developer.bitcoin.org/reference/
/id/developer-documentation: https://developer.bitcoin.org/
/hu/developer-documentation: /hu/fejlesztoi-dokumentacio
/hu/developer-examples: /hu/fejlesztoi-peldak
/hu/developer-glossary: /hu/fejlesztoi-kisokos
/hu/developer-guide: /hu/fejlesztoi-utmutato
/hu/developer-reference: /hu/fejlesztoi-referencia
/id/developer-documentation: /id/dokumentasi-pengembang
/id/bitcoin-paper: /id/makalah-bitcoin
/id/developer-examples: https://developer.bitcoin.org/examples/
/id/developer-glossary: https://developer.bitcoin.org/glossary
/id/developer-guide: https://developer.bitcoin.org/devguide/
/id/developer-reference: https://developer.bitcoin.org/reference/
/id/developer-examples: /id/contoh-pengembang
/id/developer-glossary: /id/glosarium-pengembang
/id/developer-guide: /id/panduan-pengembang
/id/developer-reference: /id/referensi-pengembang
/it/bitcoin-paper: /it/documento-bitcoin
/it/developer-documentation: https://developer.bitcoin.org/
/it/developer-examples: https://developer.bitcoin.org/examples/
/it/developer-glossary: https://developer.bitcoin.org/glossary
/it/developer-guide: https://developer.bitcoin.org/devguide/
/it/developer-reference: https://developer.bitcoin.org/reference/
/it/developer-documentation: /it/documentazione-sviluppatori
/it/developer-examples: /it/esempi-sviluppatori
/it/developer-glossary: /it/glossario-sviluppatori
/it/developer-guide: /it/guida-sviluppatori
/it/developer-reference: /it/riferimento-per-sviluppatori
/it/a-proposito: /it/faq
/nl/developer-documentation: https://developer.bitcoin.org/
/nl/developer-reference: https://developer.bitcoin.org/reference/
/nl/developer-guide: https://developer.bitcoin.org/devguide/
/nl/developer-glossary: https://developer.bitcoin.org/glossary
/nl/developer-examples: https://developer.bitcoin.org/examples/
/nl/developer-documentation: /nl/documentatie-voor-ontwikkelaars
/nl/developer-reference: /nl/ontwikkelaars-referentie
/nl/developer-guide: /nl/ontwikkelaars-handleiding
/nl/developer-glossary: /nl/woordenlijst-ontwikkelaar
/nl/developer-examples: /nl/ontwikkelvoorbeelden
/nl/bitcoin-paper: /nl/bitcoin-document
/nl/over-bitcoin: /nl/faq
/pl/o: /pl/faq
/pt_BR/developer-documentation: https://developer.bitcoin.org/
/pt_BR/developer-reference: https://developer.bitcoin.org/reference/
/pt_BR/developer-guide: https://developer.bitcoin.org/devguide/
/pt_BR/developer-glossary: https://developer.bitcoin.org/glossary
/pt_BR/developer-examples: https://developer.bitcoin.org/examples/
/pt_BR/developer-documentation: /pt_BR/documentacao-do-desenvolvedor
/pt_BR/developer-reference: /pt_BR/referencias-para-desenvolvedores
/pt_BR/developer-guide: /pt_BR/guia-do-desenvolvedor
/pt_BR/developer-glossary: /pt_BR/glossario-do-desenvolvedor
/pt_BR/developer-examples: /pt_BR/exemplos-para-desenvolvedores
/tr/hakkinda: /tr/sss
/zh_CN/about: /zh_CN/faq
/zh_TW/about: /zh_TW/faq
@ -517,11 +159,65 @@ redirects:
/nl/bitcoin-voor-liefhebbers: /nl/innovatie
/pl/bitcoin-dla-entuzjastow: /pl/innowacje
/sr/bitcoin-paper: /sr/bitkoin-papir
/sr/developer-documentation: https://developer.bitcoin.org/
/sr/developer-examples: https://developer.bitcoin.org/examples/
/sr/developer-glossary: https://developer.bitcoin.org/glossary
/sr/developer-guide: https://developer.bitcoin.org/devguide/
/sr/developer-reference: https://developer.bitcoin.org/reference/
/sr/developer-documentation: /sr/programeri-dokumentacija
/sr/developer-examples: /sr/programeri-primeri
/sr/developer-glossary: /sr/programeri-recnik
/sr/developer-guide: /sr/programeri-vodic
/sr/developer-reference: /sr/programeri-reference
## Buy bitcoin page; remove as each language is updated to include the translated page
/ar/buy: /en/buy
/bg/buy: /en/buy
/da/buy: /en/buy
/el/buy: /en/buy
/es/buy: /en/buy
/fa/buy: /en/buy
/fr/buy: /en/buy
/hi/buy: /en/buy
/hu/buy: /en/buy
/ko/buy: /en/buy
/nl/buy: /en/buy
/pl/buy: /en/buy
/ro/buy: /en/buy
/ru/buy: /en/buy
/sl/buy: /en/buy
/sv/buy: /en/buy
/tr/buy: /en/buy
/uk/buy: /en/buy
/zh_TW/buy: /en/buy
## Exchanges page; remove as each language is updated to include the translated page
/ar/exchanges: /en/exchanges
/bg/exchanges: /en/exchanges
/da/exchanges: /en/exchanges
/el/exchanges: /en/exchanges
/es/exchanges: /en/exchanges
/fa/exchanges: /en/exchanges
/fr/exchanges: /en/exchanges
/hi/exchanges: /en/exchanges
/hu/exchanges: /en/exchanges
/ko/exchanges: /en/exchanges
/pl/exchanges: /en/exchanges
/ro/exchanges: /en/exchanges
/sl/exchanges: /en/exchanges
/sv/exchanges: /en/exchanges
/tr/exchanges: /en/exchanges
/zh_TW/exchanges: /en/exchanges
## Spend bitcoin page; remove as each language is updated to include the translated page
/ar/spend-bitcoin: /en/spend-bitcoin
/bg/spend-bitcoin: /en/spend-bitcoin
/da/spend-bitcoin: /en/spend-bitcoin
/el/spend-bitcoin: /en/spend-bitcoin
/es/spend-bitcoin: /en/spend-bitcoin
/fa/spend-bitcoin: /en/spend-bitcoin
/fr/spend-bitcoin: /en/spend-bitcoin
/hi/spend-bitcoin: /en/spend-bitcoin
/hu/spend-bitcoin: /en/spend-bitcoin
/ko/spend-bitcoin: /en/spend-bitcoin
/pl/spend-bitcoin: /en/spend-bitcoin
/ro/spend-bitcoin: /en/spend-bitcoin
/sl/spend-bitcoin: /en/spend-bitcoin
/sv/spend-bitcoin: /en/spend-bitcoin
/tr/spend-bitcoin: /en/spend-bitcoin
/zh_TW/spend-bitcoin: /en/spend-bitcoin
## Old releases pages; stop adding to this list after 0.8.2
/releases/2011/04/27/v0.3.21: /en/release/v0.3.21
/releases/2011/06/05/v0.3.22: /en/release/v0.3.22
@ -602,6 +298,14 @@ kramdown:
## Might be useful in the future, but turn off for upgrade to Jekyll 3.0
css_class:
coderay:
coderay_wrap: div
coderay_line_numbers: inline
coderay_line_numbers_start: 1
coderay_tab_width: 4
coderay_bold_every: 10
coderay_css: style
text:
## Values last updated 2018-10-16
## All variable names must indicate unit type for easy translation of adjacent text,
@ -609,11 +313,11 @@ text:
## bitcoin_org_docs_maintainer_email_link
## For increasing variables, like chain size, choose a somewhat higher
## value so we don't need to update too often
subsidy_in_decimal_bitcoins: 6.25
subsidy_in_decimal_bitcoins: 12.5
## cd ~ ; du -sh .bitcoin/ --exclude=testnet3 --exclude=regtest
bitcoin_datadir_gb: 350
bitcoin_datadir_gb: 200
## Slightly smaller than the total datadir size
chain_gb: 340
chain_gb: 195
## The main difference between the datadir size and the chain size, if
## you don't have any extra indices
bitcoin_datadir_gb_pruned: 5
@ -626,6 +330,357 @@ text:
## Use ISO-8601 format, but feel free to round to the nearest month
assertion_month: 2017-06-01
## Items in devsearches will appear in the search box in the order they
## are listed below. For the top-level ("Glossary", "RPCs", etc...) this
## is arbitrary based on whatever we think is most important. For the
## second-level, this should be alphabetical order or another order that
## will make intuitive sense to the user.
devsearches:
## Initialize the glossary array here so it appears first in the
## search box. _plugins/glossary.rb will provide alphabetical ordering
"Glossary":
## RPCs currently documented on Bitcoin.org. CamelCase names (with
## leading capital) for easier quick scanning
"RPCs":
- 'AbandonTransaction': "/en/developer-reference#abandontransaction"
- 'AbortRescan': "/en/developer-reference#abortrescan"
- 'AddMultiSigAddress': "/en/developer-reference#addmultisigaddress"
- 'AddNode': "/en/developer-reference#addnode"
- 'AnalyzePsbt': "/en/developer-reference#analyzepsbt"
- 'BackupWallet': "/en/developer-reference#backupwallet"
- 'BumpFee': "/en/developer-reference#bumpfee"
- 'ClearBanned': "/en/developer-reference#clearbanned"
- 'CombinePsbt': "/en/developer-reference#combinepsbt"
- 'CombineRawTransaction': "/en/developer-reference#combinerawtransaction"
- 'ConvertToPsbt': "/en/developer-reference#converttopsbt"
- 'CreateMultiSig': "/en/developer-reference#createmultisig"
- 'CreatePsbt': "/en/developer-reference#createpsbt"
- 'CreateRawTransaction': "/en/developer-reference#createrawtransaction"
- 'CreateWallet': "/en/developer-reference#createwallet"
- 'DecodePsbt': "/en/developer-reference#decodepsbt"
- 'DecodeRawTransaction': "/en/developer-reference#decoderawtransaction"
- 'DecodeScript': "/en/developer-reference#decodescript"
- 'DeriveAddresses': "/en/developer-reference#deriveaddresses"
- 'DisconnectNode': "/en/developer-reference#disconnectnode"
- 'DumpPrivKey': "/en/developer-reference#dumpprivkey"
- 'DumpWallet': "/en/developer-reference#dumpwallet"
- 'EncryptWallet': "/en/developer-reference#encryptwallet"
- 'EstimateSmartFee': "/en/developer-reference#estimatesmartfee"
- 'FinalizePsbt': "/en/developer-reference#finalizepsbt"
- 'FundRawTransaction': "/en/developer-reference#fundrawtransaction"
- 'Generate': "/en/developer-reference#generate"
- 'GenerateToAddress': "/en/developer-reference#generatetoaddress"
- 'GetAddedNodeInfo': "/en/developer-reference#getaddednodeinfo"
- 'GetAddressesByLabel': "/en/developer-reference#getaddressesbylabel"
- 'GetAddressInfo': "/en/developer-reference#getaddressinfo"
- 'GetBalance': "/en/developer-reference#getbalance"
- 'GetBestBlockHash': "/en/developer-reference#getbestblockhash"
- 'GetBlock': "/en/developer-reference#getblock"
- 'GetBlockChainInfo': "/en/developer-reference#getblockchaininfo"
- 'GetBlockCount': "/en/developer-reference#getblockcount"
- 'GetBlockHash': "/en/developer-reference#getblockhash"
- 'GetBlockHeader': "/en/developer-reference#getblockheader"
- 'GetBlockStats': "/en/developer-reference#getblockstats"
- 'GetBlockTemplate': "/en/developer-reference#getblocktemplate"
- 'GetChainTips': "/en/developer-reference#getchaintips"
- 'GetChainTxStats': "/en/developer-reference#getchaintxstats"
- 'GetConnectionCount': "/en/developer-reference#getconnectioncount"
- 'GetDescriptorInfo': "/en/developer-reference#getdescriptorinfo"
- 'GetDifficulty': "/en/developer-reference#getdifficulty"
- 'GetMemoryInfo': "/en/developer-reference#getmemoryinfo"
- 'GetMemPoolAncestors': "/en/developer-reference#getmempoolancestors"
- 'GetMemPoolDescendants': "/en/developer-reference#getmempooldescendants"
- 'GetMemPoolEntry': "/en/developer-reference#getmempoolentry"
- 'GetMemPoolInfo': "/en/developer-reference#getmempoolinfo"
- 'GetMiningInfo': "/en/developer-reference#getmininginfo"
- 'GetNetTotals': "/en/developer-reference#getnettotals"
- 'GetNetworkHashPs': "/en/developer-reference#getnetworkhashps"
- 'GetNetworkInfo': "/en/developer-reference#getnetworkinfo"
- 'GetNewAddress': "/en/developer-reference#getnewaddress"
- 'GetNodeAddresses': "/en/developer-reference#getnodeaddresses"
- 'GetPeerInfo': "/en/developer-reference#getpeerinfo"
- 'GetRawChangeAddress': "/en/developer-reference#getrawchangeaddress"
- 'GetRawMemPool': "/en/developer-reference#getrawmempool"
- 'GetRawTransaction': "/en/developer-reference#getrawtransaction"
- 'GetReceivedByAddress': "/en/developer-reference#getreceivedbyaddress"
- 'GetReceivedByLabel': "/en/developer-reference#getreceivedbylabel"
- 'GetRpcInfo': "/en/developer-reference#getrpcinfo"
- 'GetTransaction': "/en/developer-reference#gettransaction"
- 'GetTxOut': "/en/developer-reference#gettxout"
- 'GetTxOutProof': "/en/developer-reference#gettxoutproof"
- 'GetTxOutSetInfo': "/en/developer-reference#gettxoutsetinfo"
- 'GetUnconfirmedBalance': "/en/developer-reference#getunconfirmedbalance"
- 'GetWalletInfo': "/en/developer-reference#getwalletinfo"
- 'Help': "/en/developer-reference#help"
- 'ImportAddress': "/en/developer-reference#importaddress"
- 'ImportMulti': "/en/developer-reference#importmulti"
- 'ImportPrivKey': "/en/developer-reference#importprivkey"
- 'ImportPrunedFunds': "/en/developer-reference#importprunedfunds"
- 'ImportPubKey': "/en/developer-reference#importpubkey"
- 'ImportWallet': "/en/developer-reference#importwallet"
- 'JoinPsbts': "/en/developer-reference#joinpsbts"
- 'KeyPoolRefill': "/en/developer-reference#keypoolrefill"
- 'ListAddressGroupings': "/en/developer-reference#listaddressgroupings"
- 'ListBanned': "/en/developer-reference#listbanned"
- 'ListLabels': "/en/developer-reference#listlabels"
- 'ListLockUnspent': "/en/developer-reference#listlockunspent"
- 'ListReceivedByAddress': "/en/developer-reference#listreceivedbyaddress"
- 'ListReceivedByLabel': "/en/developer-reference#listreceivedbylabel"
- 'ListSinceBlock': "/en/developer-reference#listsinceblock"
- 'ListTransactions': "/en/developer-reference#listtransactions"
- 'ListUnspent': "/en/developer-reference#listunspent"
- 'ListWalletDir': "/en/developer-reference#listwalletdir"
- 'ListWallets': "/en/developer-reference#listwallets"
- 'LoadWallet': "/en/developer-reference#loadwallet"
- 'LockUnspent': "/en/developer-reference#lockunspent"
- 'Logging': "/en/developer-reference#logging"
- 'Ping': "/en/developer-reference#ping-rpc"
- 'PreciousBlock': "/en/developer-reference#preciousblock"
- 'PrioritiseTransaction': "/en/developer-reference#prioritisetransaction"
- 'PruneBlockChain': "/en/developer-reference#pruneblockchain"
- 'RemovePrunedFunds': "/en/developer-reference#removeprunedfunds"
- 'RescanBlockChain': "/en/developer-reference#rescanblockchain"
- 'SaveMemPool': "/en/developer-reference#savemempool"
- 'ScanTxOutSet': "/en/developer-reference#scantxoutset"
- 'SendMany': "/en/developer-reference#sendmany"
- 'SendRawTransaction': "/en/developer-reference#sendrawtransaction"
- 'SendToAddress': "/en/developer-reference#sendtoaddress"
- 'SetBan': "/en/developer-reference#setban"
- 'SetHdSeed': "/en/developer-reference#sethdseed"
- 'SetLabel': "/en/developer-reference#setlabel"
- 'SetNetworkActive': "/en/developer-reference#setnetworkactive"
- 'SetTxFee': "/en/developer-reference#settxfee"
- 'SignMessage': "/en/developer-reference#signmessage"
- 'SignMessageWithPrivKey': "/en/developer-reference#signmessagewithprivkey"
- 'SignRawTransactionWithKey': "/en/developer-reference#signrawtransactionwithkey"
- 'SignRawTransactionWithWallet': "/en/developer-reference#signrawtransactionwithwallet"
- 'Stop': "/en/developer-reference#stop"
- 'SubmitBlock': "/en/developer-reference#submitblock"
- 'SubmitHeader': "/en/developer-reference#submitheader"
- 'TestmemPoolAccept': "/en/developer-reference#testmempoolaccept"
- 'UnloadWallet': "/en/developer-reference#unloadwallet"
- 'Uptime': "/en/developer-reference#uptime"
- 'UtxoUpdatePsbt': "/en/developer-reference#utxoupdatepsbt"
- 'ValidateAddress': "/en/developer-reference#validateaddress"
- 'VerifyChain': "/en/developer-reference#verifychain"
- 'VerifyMessage': "/en/developer-reference#verifymessage"
- 'VerifyTxOutProof': "/en/developer-reference#verifytxoutproof"
- 'WalletCreatefundedPsbt': "/en/developer-reference#walletcreatefundedpsbt"
- 'WalletLock': "/en/developer-reference#walletlock"
- 'WalletPassphrase': "/en/developer-reference#walletpassphrase"
- 'WalletPassphraseChange': "/en/developer-reference#walletpassphrasechange"
- 'WalletProcessPsbt': "/en/developer-reference#walletprocesspsbt"
## REST calls currently documented on Bitcoin.org. CamelCase names (with
## leading capital) for easier quick scanning
"REST":
- 'GetBlock': "/en/developer-reference#get-block"
- 'GetBlock-noTxDetails': "/en/developer-reference#get-blocknotxdetails"
- 'GetChainInfo': "/en/developer-reference#get-chaininfo"
- 'GetUtxos': "/en/developer-reference#get-getutxos"
- 'GetHeaders': "/en/developer-reference#get-headers"
- 'GetMemPool-contents': "/en/developer-reference#get-mempoolcontents"
- 'GetMemPool-info': "/en/developer-reference#get-mempoolinfo"
## Opcodes currently implemented in Bitcoin Core master branch. After
## we document them on Bitcoin.org, these links will be updated
"Opcodes":
- "OP_0 (OP_FALSE)": "https://en.bitcoin.it/wiki/Script#Constants"
- "OP_PUSHDATA1": "https://en.bitcoin.it/wiki/Script#Constants"
- "OP_PUSHDATA2": "https://en.bitcoin.it/wiki/Script#Constants"
- "OP_PUSHDATA4": "https://en.bitcoin.it/wiki/Script#Constants"
- "OP_1NEGATE": "https://en.bitcoin.it/wiki/Script#Constants"
- "OP_1 (OP_TRUE)": "https://en.bitcoin.it/wiki/Script#Constants"
- "OP_2": "https://en.bitcoin.it/wiki/Script#Constants"
- "OP_3": "https://en.bitcoin.it/wiki/Script#Constants"
- "OP_4": "https://en.bitcoin.it/wiki/Script#Constants"
- "OP_5": "https://en.bitcoin.it/wiki/Script#Constants"
- "OP_6": "https://en.bitcoin.it/wiki/Script#Constants"
- "OP_7": "https://en.bitcoin.it/wiki/Script#Constants"
- "OP_8": "https://en.bitcoin.it/wiki/Script#Constants"
- "OP_9": "https://en.bitcoin.it/wiki/Script#Constants"
- "OP_10": "https://en.bitcoin.it/wiki/Script#Constants"
- "OP_11": "https://en.bitcoin.it/wiki/Script#Constants"
- "OP_12": "https://en.bitcoin.it/wiki/Script#Constants"
- "OP_13": "https://en.bitcoin.it/wiki/Script#Constants"
- "OP_14": "https://en.bitcoin.it/wiki/Script#Constants"
- "OP_15": "https://en.bitcoin.it/wiki/Script#Constants"
- "OP_16": "https://en.bitcoin.it/wiki/Script#Constants"
- "OP_NOP": "https://en.bitcoin.it/wiki/Script#Flow_control"
- "OP_IF": "https://en.bitcoin.it/wiki/Script#Flow_control"
- "OP_NOTIF": "https://en.bitcoin.it/wiki/Script#Flow_control"
- "OP_ELSE": "https://en.bitcoin.it/wiki/Script#Flow_control"
- "OP_ENDIF": "https://en.bitcoin.it/wiki/Script#Flow_control"
- "OP_VERIFY": "https://en.bitcoin.it/wiki/Script#Flow_control"
- "OP_RETURN": "https://en.bitcoin.it/wiki/Script#Flow_control"
- "OP_TOALTSTACK": "https://en.bitcoin.it/wiki/Script#Stack"
- "OP_FROMALTSTACK": "https://en.bitcoin.it/wiki/Script#Stack"
- "OP_IFDUP": "https://en.bitcoin.it/wiki/Script#Stack"
- "OP_DEPTH": "https://en.bitcoin.it/wiki/Script#Stack"
- "OP_DROP": "https://en.bitcoin.it/wiki/Script#Stack"
- "OP_DUP": "https://en.bitcoin.it/wiki/Script#Stack"
- "OP_NIP": "https://en.bitcoin.it/wiki/Script#Stack"
- "OP_OVER": "https://en.bitcoin.it/wiki/Script#Stack"
- "OP_PICK": "https://en.bitcoin.it/wiki/Script#Stack"
- "OP_ROLL": "https://en.bitcoin.it/wiki/Script#Stack"
- "OP_ROT": "https://en.bitcoin.it/wiki/Script#Stack"
- "OP_SWAP": "https://en.bitcoin.it/wiki/Script#Stack"
- "OP_TUCK": "https://en.bitcoin.it/wiki/Script#Stack"
- "OP_2DROP": "https://en.bitcoin.it/wiki/Script#Stack"
- "OP_2DUP": "https://en.bitcoin.it/wiki/Script#Stack"
- "OP_3DUP": "https://en.bitcoin.it/wiki/Script#Stack"
- "OP_2OVER": "https://en.bitcoin.it/wiki/Script#Stack"
- "OP_2ROT": "https://en.bitcoin.it/wiki/Script#Stack"
- "OP_2SWAP": "https://en.bitcoin.it/wiki/Script#Stack"
- "OP_CAT (disabled)": "https://en.bitcoin.it/wiki/Script#Splice"
- "OP_SUBSTR (disabled)": "https://en.bitcoin.it/wiki/Script#Splice"
- "OP_LEFT (disabled)": "https://en.bitcoin.it/wiki/Script#Splice"
- "OP_RIGHT (disabled)": "https://en.bitcoin.it/wiki/Script#Splice"
- "OP_SIZE": "https://en.bitcoin.it/wiki/Script#Splice"
- "OP_INVERT (disabled)": "https://en.bitcoin.it/wiki/Script#Bitwise_logic"
- "OP_AND (disabled)": "https://en.bitcoin.it/wiki/Script#Bitwise_logic"
- "OP_OR (disabled)": "https://en.bitcoin.it/wiki/Script#Bitwise_logic"
- "OP_XOR (disabled)": "https://en.bitcoin.it/wiki/Script#Bitwise_logic"
- "OP_EQUAL": "https://en.bitcoin.it/wiki/Script#Bitwise_logic"
- "OP_EQUALVERIFY": "https://en.bitcoin.it/wiki/Script#Bitwise_logic"
- "OP_1ADD": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_1SUB": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_2MUL (disabled)": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_2DIV (disabled)": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_NEGATE": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_ABS": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_NOT": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_0NOTEQUAL": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_ADD": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_SUB": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_MUL (disabled)": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_DIV (disabled)": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_MOD (disabled)": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_LSHIFT (disabled)": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_RSHIFT (disabled)": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_BOOLAND": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_BOOLOR": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_NUMEQUAL": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_NUMEQUALVERIFY": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_NUMNOTEQUAL": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_LESSTHAN": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_GREATERTHAN": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_LESSTHANOREQUAL": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_GREATERTHANOREQUAL": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_MIN": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_MAX": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_WITHIN": "https://en.bitcoin.it/wiki/Script#Arithmetic"
- "OP_RIPEMD160": "https://en.bitcoin.it/wiki/Script#Crypto"
- "OP_SHA1": "https://en.bitcoin.it/wiki/Script#Crypto"
- "OP_SHA256": "https://en.bitcoin.it/wiki/Script#Crypto"
- "OP_HASH160": "https://en.bitcoin.it/wiki/Script#Crypto"
- "OP_HASH256": "https://en.bitcoin.it/wiki/Script#Crypto"
- "OP_CODESEPARATOR": "https://en.bitcoin.it/wiki/Script#Crypto"
- "OP_CHECKSIG": "https://en.bitcoin.it/wiki/Script#Crypto"
- "OP_CHECKSIGVERIFY": "https://en.bitcoin.it/wiki/Script#Crypto"
- "OP_CHECKMULTISIG": "https://en.bitcoin.it/wiki/Script#Crypto"
- "OP_CHECKMULTISIGVERIFY": "https://en.bitcoin.it/wiki/Script#Crypto"
- "OP_CHECKLOCKTIMEVERIFY": "https://en.bitcoin.it/wiki/Script#Locktime"
- "OP_CHECKSEQUENCEVERIFY ": "https://en.bitcoin.it/wiki/Script#Locktime"
- "OP_PUBKEYHASH (invalid)": "https://en.bitcoin.it/wiki/Script#Pseudo-words"
- "OP_PUBKEY (invalid)": "https://en.bitcoin.it/wiki/Script#Pseudo-words"
- "OP_INVALIDOPCODE (invalid)": "https://en.bitcoin.it/wiki/Script#Pseudo-words"
- "OP_RESERVED (reserved)": "https://en.bitcoin.it/wiki/Script#Reserved_words"
- "OP_VER (reserved)": "https://en.bitcoin.it/wiki/Script#Reserved_words"
- "OP_VERIF (reserved)": "https://en.bitcoin.it/wiki/Script#Reserved_words"
- "OP_VERNOTIF (reserved)": "https://en.bitcoin.it/wiki/Script#Reserved_words"
- "OP_RESERVED1 (reserved)": "https://en.bitcoin.it/wiki/Script#Reserved_words"
- "OP_RESERVED2 (reserved)": "https://en.bitcoin.it/wiki/Script#Reserved_words"
- "OP_NOP1 (reserved)": "https://en.bitcoin.it/wiki/Script#Reserved_words"
- "OP_NOP4 (reserved)": "https://en.bitcoin.it/wiki/Script#Reserved_words"
- "OP_NOP5 (reserved)": "https://en.bitcoin.it/wiki/Script#Reserved_words"
- "OP_NOP6 (reserved)": "https://en.bitcoin.it/wiki/Script#Reserved_words"
- "OP_NOP7 (reserved)": "https://en.bitcoin.it/wiki/Script#Reserved_words"
- "OP_NOP8 (reserved)": "https://en.bitcoin.it/wiki/Script#Reserved_words"
- "OP_NOP9 (reserved)": "https://en.bitcoin.it/wiki/Script#Reserved_words"
- "OP_NOP10 (reserved)": "https://en.bitcoin.it/wiki/Script#Reserved_words"
## Only notable and non-withdrawn BIPs. Try to keep descriptions short
## and focused on likely keywords
"BIPs":
- "BIP1: BIP purpose and guidelines": "https://github.com/bitcoin/bips/blob/master/bip-0001.mediawiki"
- "BIP9: soft fork mechanism": "https://github.com/bitcoin/bips/blob/master/bip-0009.mediawiki"
- "BIP11: m-of-n multisig transactions": "https://github.com/bitcoin/bips/blob/master/bip-0011.mediawiki"
- "BIP13: P2SH address format": "https://github.com/bitcoin/bips/blob/master/bip-0013.mediawiki"
- "BIP14: protocol version and user agent": "https://github.com/bitcoin/bips/blob/master/bip-0014.mediawiki"
- "BIP16: pay to script hash (P2SH)": "https://github.com/bitcoin/bips/blob/master/bip-0016.mediawiki"
- "BIP21: URI scheme": "https://github.com/bitcoin/bips/blob/master/bip-0021.mediawiki"
- "BIP22: GetBlockTemplate fundamentals": "https://github.com/bitcoin/bips/blob/master/bip-0022.mediawiki"
- "BIP23: GetBlockTemplate pooled mining": "https://github.com/bitcoin/bips/blob/master/bip-0023.mediawiki"
- "BIP30: dealing with duplicate transactions": "https://github.com/bitcoin/bips/blob/master/bip-0030.mediawiki"
- "BIP31: P2P pong message": "https://github.com/bitcoin/bips/blob/master/bip-0031.mediawiki"
- "BIP32: HD wallets": "https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki"
- "BIP34: block height in coinbase": "https://github.com/bitcoin/bips/blob/master/bip-0034.mediawiki"
- "BIP35: P2P mempool message": "https://github.com/bitcoin/bips/blob/master/bip-0035.mediawiki"
- "BIP37: bloom filtering": "https://github.com/bitcoin/bips/blob/master/bip-0037.mediawiki"
- "BIP38: passphrase-protected private key": "https://github.com/bitcoin/bips/blob/master/bip-0038.mediawiki"
- "BIP39: mnemonic code for HD wallets": "https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki"
- "BIP42: finite monetary supply": "https://github.com/bitcoin/bips/blob/master/bip-0042.mediawiki"
- "BIP44: HD wallet account hierarchy": "https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki"
- "BIP50: March 2013 fork post-mortem": "https://github.com/bitcoin/bips/blob/master/bip-0050.mediawiki"
- "BIP60: fixed-length version message": "https://github.com/bitcoin/bips/blob/master/bip-0060.mediawiki"
- "BIP61: P2P reject message": "https://github.com/bitcoin/bips/blob/master/bip-0061.mediawiki"
- "BIP62: dealing with malleability": "https://github.com/bitcoin/bips/blob/master/bip-0062.mediawiki"
- "BIP64: P2P geutxos message": "https://github.com/bitcoin/bips/blob/master/bip-0064.mediawiki"
- "BIP65: OP_CHECKLOCKTIMEVERIFY": "https://github.com/bitcoin/bips/blob/master/bip-0065.mediawiki"
- "BIP66: strict DER signatures": "https://github.com/bitcoin/bips/blob/master/bip-0066.mediawiki"
- "BIP70: payment protocol": "https://github.com/bitcoin/bips/blob/master/bip-0070.mediawiki"
- "BIP71: payment protocol MIME types": "https://github.com/bitcoin/bips/blob/master/bip-0071.mediawiki"
- "BIP72: payment protocol URIs": "https://github.com/bitcoin/bips/blob/master/bip-0072.mediawiki"
- "BIP73: accept header with payment protocol": "https://github.com/bitcoin/bips/blob/master/bip-0073.mediawiki"
- "BIP111: NODE_BLOOM service bit": "https://github.com/bitcoin/bips/blob/master/bip-0111.mediawiki"
- "BIP112: OP_CHECKSEQUENCEVERIFY": "https://github.com/bitcoin/bips/blob/master/bip-0112.mediawiki"
- "BIP113: median time for lock-time": "https://github.com/bitcoin/bips/blob/master/bip-0113.mediawiki"
- "BIP125: replace-by-fee signaling": "https://github.com/bitcoin/bips/blob/master/bip-0125.mediawiki"
- "BIP130: sendheaders message": "https://github.com/bitcoin/bips/blob/master/bip-0130.mediawiki"
- "BIP133: feefilter message": "https://github.com/bitcoin/bips/blob/master/bip-0133.mediawiki"
- "BIP141: segregated witness": "https://github.com/bitcoin/bips/blob/master/bip-0141.mediawiki"
- "BIP144: segregated witness peer services": "https://github.com/bitcoin/bips/blob/master/bip-0144.mediawiki"
- "BIP151: P2P communication encryption": "https://github.com/bitcoin/bips/blob/master/bip-0151.mediawiki"
- "BIP152: compact block relay": "https://github.com/bitcoin/bips/blob/master/bip-0152.mediawiki"
## Bitcoin P2P Protocol messages documented on Bitcoin.org
"P2P Messages":
- "addr": "/en/developer-reference#addr"
- "alert": "/en/developer-reference#alert"
- "block": "/en/developer-reference#block"
- "feefilter": "/en/developer-reference#feefilter"
- "filteradd": "/en/developer-reference#filteradd"
- "filterclear": "/en/developer-reference#filterclear"
- "filterload": "/en/developer-reference#filterload"
- "getaddr": "/en/developer-reference#getaddr"
- "getblocks": "/en/developer-reference#getblocks"
- "getdata": "/en/developer-reference#getdata"
- "getheaders": "/en/developer-reference#getheaders"
- "headers": "/en/developer-reference#headers"
- "inv": "/en/developer-reference#inv"
- "mempool": "/en/developer-reference#mempool"
- "merkleblock": "/en/developer-reference#merkleblock"
- "notfound": "/en/developer-reference#notfound"
- "ping": "/en/developer-reference#ping"
- "pong": "/en/developer-reference#pong"
- "reject": "/en/developer-reference#reject"
- "tx": "/en/developer-reference#tx"
- "verack": "/en/developer-reference#verack"
- "version": "/en/developer-reference#version"
collections:
## _alerts
alerts:
@ -646,8 +701,8 @@ collections:
output: false
donation_banner:
address: 3E8ociqZa9mZUSwGdSmAEMAoAxBK3FNDcd
display: true
address: 3FkenCiXpSLqD8L79intRNXUgjRoH9sjXa
display: false
amounts_in_usd:
- 5
- 25

View File

@ -3,63 +3,72 @@
require 'html/proofer'
if ARGV[0].nil?
path_to_check="./_site"
path_to_check = "./_site"
else
path_to_check=ARGV[0]
path_to_check = ARGV[0]
end
## Will throw an exception (exiting false) if any internal links don't
## work. The Makefile will terminate on the failure
HTML::Proofer.new(
## To test, uncomment the array below and comment out ./_site and :disable_external
#[ "/foo/bar#baz", "/foo/bar", "#", "#wallet", "/foo.css", "/bar.png", "/zh_TW/bitcoin-for-businesses" ],
path_to_check,
## To test, uncomment the array below and comment out ./_site and :disable_external
# [ "/foo/bar#baz", "/foo/bar", "#", "#wallet", "/foo.css", "/bar.png", "/zh_TW/bitcoin-for-businesses" ],
path_to_check,
{
## Disable external link checking by default to avoid spurious
## Travis CI failures. TODO: take an argument to optionally
## enable external link checking as part of the Makefile
## manual checks
:disable_external => true,
{
## Disable external link checking by default to avoid spurious
## Travis CI failures. TODO: take an argument to optionally
## enable external link checking as part of the Makefile
## manual checks
:disable_external => true,
## Check whether HTML is well-formed
:check_html => true,
## Check whether HTML is well-formed
:check_html => true,
## Links to ignore
:href_ignore => [
'#', ## hrefs pointing to the current page (htmlproofer fails them)
/^$/, ## anchors with no href attribute set (for clickable javascript elements)
/^\/bin/, ## /bin dir is not part of repository; holds Bitcoin Core binaries
'bitcoin:3E8ociqZa9mZUSwGdSmAEMAoAxBK3FNDcd', ## bitcoin address handlers
/^\/stats/ ## /stats dir is not part of repository; generated by separate stats script
],
## Links to ignore
:href_ignore => [
'#', ## hrefs pointing to the current page (htmlproofer fails them)
/^$/, ## anchors with no href attribute set (for clickable javascript elements)
/^\/bin/, ## /bin dir is not part of repository; holds Bitcoin Core binaries
'bitcoin:3FkenCiXpSLqD8L79intRNXUgjRoH9sjXa', ## bitcoin address handlers
/^\/stats/ ## /stats dir is not part of repository; generated by separate stats script
],
## Mangle links. If we enable external link checking, this will
## require updating
:href_swap => {
## (Hack) Append '$' to the ends of filenames we don't want to append .html to
/(css|png|rss|pdf|jpg|asc|xml)$/ => '\1$',
## Mangle links. If we enable external link checking, this will
## require updating
:href_swap => {
## (Hack) Append '$' to the ends of filenames we don't want to append .html to
/(css|png|rss|pdf|jpg|asc|xml)$/ => '\1$',
## Append .html to end of most URLs so proofer can find the local files
/^(
[^#]+ ## Don't match URL containing a hash, we'll deal with them separately
[^\/$] ## Don't match URLs ending in a slash or $
)$/x => '\1.html',
## Append .html to end of most URLs so proofer can find the local files
/^(
[^#]+ ## Don't match URL containing a hash, we'll deal with them separately
[^\/$] ## Don't match URLs ending in a slash or $
)$/x => '\1.html',
## Insert .html between page and anchor, but only if there's a
## page name
/^(.+)(#.+)/ => '\1.html\2',
## Insert .html between page and anchor, but only if there's a
## page name
/^(.+)(#.+)/ => '\1.html\2',
/\/(.html#.+)/ => '\1',
/\/(.html#.+)/ => '\1',
## (Un-hack) Remove previously-appended '$' from URLs
/\$$/ => '',
},
## (Un-hack) Remove previously-appended '$' from URLs
/\$$/ => '',
},
<<<<<<< HEAD
## It'd be nice if we had a _local_config.yaml file or something
## for settings specific to particular systems, but for now I
## think 2 is a good setting for Travis CI ("1.5 processors")
## and me (usually 2 processors)
:parallel => { :in_processes => 2 },
}
).run
=======
## It'd be nice if we had a _local_config.yaml file or something
## for settings specific to particular systems, but for now I
## think 2 is a good setting for Travis CI ("1.5 processors")
## and me (usually 2 processors)
:parallel => { :in_processes => 2 }
}
).run
>>>>>>> 3f9dc02e... rubocop: Remove extra spaces

View File

@ -9,8 +9,8 @@
require 'tmpdir'
def prompt(*args)
print(*args)
gets
print(*args)
gets
end
if !ARGV.empty? && !ARGV[0].empty? && !ARGV[1].empty?
@ -27,72 +27,69 @@ if !File.exist?('_config.yml')
end
def fetchlinks()
# Fetch new list of links
links = {}
Dir.glob(WORKDIR + "/_site/**/*.html").each { |file|
content = File.read(file)
content.scan(/ href *= *"(.*?)"/).each { |link|
link = link[0].to_s.gsub(/^(https?:\/\/(www\.)?bitcoin\.org)?\//, '/')
next if (link.match(/^#|^http:\/\/www.meetup.com\//))
# Fetch new list of links
links = {}
dirs = Dir.glob(WORKDIR + "/_site/**/*.html").each { |file|
content = File.read(file)
content.scan(/ href *= *"(.*?)"/).each { |link|
link = link[0].to_s.gsub(/^(https?:\/\/(www\.)?bitcoin\.org)?\//,'/')
next if (link.match(/^#|^http:\/\/www.meetup.com\//))
if(!link.match(/^https?:\/\/|^\/[^\/]|^mailto:/))
link = File.dirname(file.sub(WORKDIR + '/_site','')) + '/' + File.basename(link)
end
links[link] = "0"
}
content.scan(/ src *= *"(.*?)"/).each { |link|
link = link[0].to_s.gsub(/^(https?:\/\/(www\.)?bitcoin\.org)?\//,'/')
links[link] = "0"
}
}
return links
if (!link.match(/^https?:\/\/|^\/[^\/]|^mailto:/))
link = File.dirname(file.sub(WORKDIR + '/_site', '')) + '/' + File.basename(link)
end
links[link] = "0"
}
content.scan(/ src *= *"(.*?)"/).each { |link|
link = link[0].to_s.gsub(/^(https?:\/\/(www\.)?bitcoin\.org)?\//, '/')
links[link] = "0"
}
}
return links
end
Dir.mktmpdir{|workdir|
Dir.mktmpdir { |workdir|
WORKDIR = workdir.gsub("\n", '')
WORKDIR=workdir.gsub("\n",'')
# Copy current repository to a temporary directory
`rsync -a ./ "#{WORKDIR}/"`
# Copy current repository to a temporary directory
`rsync -a ./ "#{WORKDIR}/"`
# Build both version of the website and fetch all links
oldlinks = {}
newlinks = {}
# Build both version of the website and fetch all links
oldlinks = {}
newlinks = {}
Dir.chdir(WORKDIR) do
`git checkout #{srcbr}`
`jekyll`
oldlinks = fetchlinks()
Dir.chdir(WORKDIR) do
`git checkout #{dstbr}`
`jekyll`
newlinks = fetchlinks()
end
`git checkout #{srcbr}`
`jekyll`
oldlinks = fetchlinks()
# Find added links, removed links
diffaddlinks = []
diffrmlinks = []
newlinks.each { |link, _etag|
next if oldlinks.has_key?(link)
`git checkout #{dstbr}`
`jekyll`
newlinks = fetchlinks()
diffaddlinks.push(link)
}
oldlinks.each { |link, _etag|
next if newlinks.has_key?(link)
end
# Find added links, removed links
diffaddlinks = []
diffrmlinks = []
newlinks.each { |link, etag|
next if oldlinks.has_key?(link)
diffaddlinks.push(link)
}
oldlinks.each { |link, etag|
next if newlinks.has_key?(link)
diffrmlinks.push(link)
}
# Display resulting diff
diff = ''
if diffaddlinks.length > 0
diff = diff + "## links added\n\n" + diffaddlinks.join("\n") + "\n\n"
end
if diffrmlinks.length > 0
diff = diff + "## links removed\n\n" + diffrmlinks.join("\n") + "\n\n"
end
print diff
diffrmlinks.push(link)
}
# Display resulting diff
diff = ''
if diffaddlinks.length > 0
diff = diff + "## links added\n\n" + diffaddlinks.join("\n") + "\n\n"
end
if diffrmlinks.length > 0
diff = diff + "## links removed\n\n" + diffrmlinks.join("\n") + "\n\n"
end
print diff
}

5
_contrib/jshint Normal file → Executable file
View File

@ -8,13 +8,14 @@
require 'jshintrb'
if ARGV[0].nil?
path_to_check="./_site/js"
path_to_check = "./_site/js"
else
path_to_check=ARGV[0]
path_to_check = ARGV[0]
end
Dir.foreach(path_to_check) do |file|
next if !/\.js$/.match(file)
res = Jshintrb.report(File.read(path_to_check + '/' + file), :jshintrc)
print path_to_check + '/' + file + "\n" + res if res.length != 0
end

View File

@ -3,12 +3,12 @@
# This file is licensed under the MIT License (MIT) available on
# http://opensource.org/licenses/MIT.
#Drop outdated fallback HTML code in all layouts for specified language.
#Example: ./_contrib/updatetx.rb
# Drop outdated fallback HTML code in all layouts for specified language.
# Example: ./_contrib/updatetx.rb
def prompt(*args)
print(*args)
gets
print(*args)
gets
end
if ARGV.empty?
@ -17,31 +17,32 @@ else
lang = ARGV[0]
end
lang = lang.gsub(/[^a-zA-Z_]/,'')
lang = lang.gsub(/[^a-zA-Z_]/, '')
if !File.exist?('_translations/' + lang + '.yml')
print "Wrong language code. \n"
exit
end
dirs = [ '_templates', '_layouts' ]
dirs = ['_templates', '_layouts']
dirs.each do |dir|
Dir.foreach(dir) do |file|
next if file == '.' or file == '..'
contents = File.read(dir + '/' + file)
# Drop HTML code applied to current language only ( until next {% when / else / endcase %} statement )
contents.gsub!(Regexp.new("{% when '" + lang + "' %}((?!{% endcase %})(?!{% else %}).)*?{% when", Regexp::MULTILINE),'{% when')
contents.gsub!(Regexp.new("{% when '" + lang + "' %}((?!{% endcase %}).)*?{% else %}", Regexp::MULTILINE),'{% else %}')
contents.gsub!(Regexp.new("{% when '" + lang + "' %}.*?{% endcase %}", Regexp::MULTILINE),'{% endcase %}')
contents.gsub!(Regexp.new("{% when '" + lang + "' %}((?!{% endcase %})(?!{% else %}).)*?{% when", Regexp::MULTILINE), '{% when')
contents.gsub!(Regexp.new("{% when '" + lang + "' %}((?!{% endcase %}).)*?{% else %}", Regexp::MULTILINE), '{% else %}')
contents.gsub!(Regexp.new("{% when '" + lang + "' %}.*?{% endcase %}", Regexp::MULTILINE), '{% endcase %}')
# Drop complete {% case / endcase %} statements when not used by any language anymore
contents.gsub!(Regexp.new("{% case page.lang %}(((?!{% endcase %})(?!{% when ).)*?){% else %}(.*?){% endcase %}", Regexp::MULTILINE),'\1 \3')
contents.gsub!(Regexp.new("{% case page.lang %}(((?!{% when ).)*?){% endcase %}", Regexp::MULTILINE),'\1')
contents.gsub!(Regexp.new("{% case page.lang %}(((?!{% endcase %})(?!{% when ).)*?){% else %}(.*?){% endcase %}", Regexp::MULTILINE), '\1 \3')
contents.gsub!(Regexp.new("{% case page.lang %}(((?!{% when ).)*?){% endcase %}", Regexp::MULTILINE), '\1')
# Drop language in statements applied to many languages ( e.g. {% when 'ar' or 'fr' .. %} )
contents.gsub!(Regexp.new("{% when '" + lang + "' or (.*?) %}"),'{% when \1 %}')
contents.gsub!(Regexp.new("{% when (.*?) or '" + lang + "' (.*?)%}"),'{% when \1 \2%}')
File.open(dir + '/' + file, 'w') do |file|
file.write(contents)
contents.gsub!(Regexp.new("{% when '" + lang + "' or (.*?) %}"), '{% when \1 %}')
contents.gsub!(Regexp.new("{% when (.*?) or '" + lang + "' (.*?)%}"), '{% when \1 \2%}')
File.open(dir + '/' + file, 'w') do |f|
f.write(contents)
end
end
end

View File

@ -0,0 +1,393 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/api-intro.md" %}
## Bitcoin Core APIs
<!-- no subhead-links here -->
{% include helpers/subhead-links.md %}
### Hash Byte Order
{% include helpers/subhead-links.md %}
{% autocrossref %}
Bitcoin Core RPCs accept and return the byte-wise reverse of computed
SHA-256 hash values. For example, the Unix `sha256sum` command displays the
SHA256(SHA256()) hash of mainnet block 300,000's header as:
> /bin/echo -n '020000007ef055e1674d2e6551dba41cd214debbee34aeb544c7ec670000000000000000d3998963f80c5bab43fe8c26228e98d030edf4dcbe48a666f5c39e2d7a885c9102c86d536c890019593a470d' | xxd -r -p | sha256sum -b | xxd -r -p | sha256sum -b
5472ac8b1187bfcf91d6d218bbda1eb2405d7c55f1f8cc820000000000000000
The result above is also how the hash appears in the
previous-header-hash part of block 300,001's header:
<pre>02000000<b>5472ac8b1187bfcf91d6d218bbda1eb2405d7c55f1f8cc82000\
0000000000000</b>ab0aaa377ca3f49b1545e2ae6b0667a08f42e72d8c24ae\
237140e28f14f3bb7c6bcc6d536c890019edd83ccf</pre>
However, Bitcoin Core's RPCs use the byte-wise reverse for hashes, so if you
want to get information about block 300,000 using the `getblock` RPC,
you need to reverse the requested hash:
> bitcoin-cli getblock \
000000000000000082ccf8f1557c5d40b21edabb18d2d691cfbf87118bac7254
(Note: hex representation uses two characters to display each byte of
data, which is why the reversed string looks somewhat mangled.)
The rationale for the reversal is unknown, but it likely stems from
Bitcoin Core's use of hashes (which are byte arrays in C++) as integers
for the purpose of determining whether the hash is below the network
target. Whatever the reason for reversing header hashes, the reversal
also extends to other hashes used in RPCs, such as TXIDs and merkle
roots.
As header hashes and TXIDs are widely used as global identifiers in
other Bitcoin software, this reversal of hashes has become the standard
way to refer to certain objects. The table below should make clear where
each byte order is used.
| Data | Internal Byte Order | RPC Byte Order |
|---------------|---------------------|-----------------|
| Example: SHA256(SHA256(0x00)) | Hash: 1406...539a | Hash: 9a53...0614 |
| Header Hashes: SHA256(SHA256(block header)) | Used when constructing block headers | Used by RPCs such as `getblock`; widely used in block explorers |
| Merkle Roots: SHA256(SHA256(TXIDs and merkle rows)) | Used when constructing block headers | Returned by RPCs such as `getblock` |
| TXIDs: SHA256(SHA256(transaction)) | Used in transaction inputs | Used by RPCs such as `gettransaction` and transaction data parts of `getblock`; widely used in wallet programs |
| P2PKH Hashes: RIPEMD160(SHA256(pubkey)) | Used in both addresses and pubkey scripts | **N/A:** RPCs use addresses which use internal byte order |
| P2SH Hashes: RIPEMD160(SHA256(redeem script)) | Used in both addresses and pubkey scripts | **N/A:** RPCs use addresses which use internal byte order |
Note: RPCs which return raw results, such as `getrawtransaction` or the
raw mode of `getblock`, always display hashes as they appear in blocks
(internal byte order).
The code below may help you check byte order by generating hashes
from raw hex.
{% endautocrossref %}
{% highlight python %}
#!/usr/bin/env python
from sys import byteorder
from hashlib import sha256
## You can put in $data an 80-byte block header to get its header hash,
## or a raw transaction to get its txid
data = "00".decode("hex")
hash = sha256(sha256(data).digest()).digest()
print "Warning: this code only tested on a little-endian x86_64 arch"
print
print "System byte order:", byteorder
print "Internal-Byte-Order Hash: ", hash.encode('hex_codec')
print "RPC-Byte-Order Hash: ", hash[::-1].encode('hex_codec')
{% endhighlight %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/intro.md _data/devdocs/en/bitcoin-core/rpcs/intro.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/quick-reference.md _data/devdocs/en/bitcoin-core/rpcs/quick-reference.md %}
#### RPCs
<!-- no subhead-links here -->
{{WARNING}} the block chain and memory pool can include arbitrary data
which several of the commands below will return in hex format. If you
convert this data to another format in an executable context, it could
be used in an exploit. For example, displaying a pubkey script as
ASCII text in a webpage could add arbitrary Javascript to that page and
create a cross-site scripting (XSS) exploit. To avoid problems, please
treat block chain and memory pool data as an arbitrary input from an
untrusted source.
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/abandontransaction.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/abandontransaction.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/abortrescan.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/abortrescan.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/addmultisigaddress.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/addmultisigaddress.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/addnode.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/addnode.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/analyzepsbt.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/analyzepsbt.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/backupwallet.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/backupwallet.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/bumpfee.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/bumpfee.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/clearbanned.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/clearbanned.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/combinepsbt.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/combinepsbt.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/combinerawtransaction.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/combinerawtransaction.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/converttopsbt.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/converttopsbt.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/createmultisig.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/createmultisig.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/createpsbt.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/createpsbt.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/createrawtransaction.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/createrawtransaction.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/createwallet.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/createwallet.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/decodepsbt.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/decodepsbt.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/decoderawtransaction.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/decoderawtransaction.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/decodescript.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/decodescript.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/deriveaddresses.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/deriveaddresses.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/disconnectnode.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/disconnectnode.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/dumpprivkey.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/dumpprivkey.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/dumpwallet.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/dumpwallet.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/encryptwallet.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/encryptwallet.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/estimatesmartfee.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/estimatesmartfee.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/finalizepsbt.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/finalizepsbt.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/fundrawtransaction.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/fundrawtransaction.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/generate.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/generate.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/generatetoaddress.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/generatetoaddress.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getaddednodeinfo.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getaddednodeinfo.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getaddressesbylabel.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getaddressesbylabel.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getaddressinfo.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getaddressinfo.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getbalance.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getbalance.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getbestblockhash.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getbestblockhash.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getblock.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getblock.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getblockchaininfo.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getblockchaininfo.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getblockcount.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getblockcount.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getblockhash.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getblockhash.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getblockheader.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getblockheader.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getblockstats.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getblockstats.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getblocktemplate.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getblocktemplate.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getchaintips.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getchaintips.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getchaintxstats.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getchaintxstats.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getconnectioncount.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getconnectioncount.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getdescriptorinfo.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getdescriptorinfo.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getdifficulty.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getdifficulty.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getmemoryinfo.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getmemoryinfo.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getmempoolancestors.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getmempoolancestors.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getmempooldescendants.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getmempooldescendants.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getmempoolentry.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getmempoolentry.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getmempoolinfo.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getmempoolinfo.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getmininginfo.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getmininginfo.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getnettotals.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getnettotals.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getnetworkhashps.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getnetworkhashps.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getnetworkinfo.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getnetworkinfo.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getnewaddress.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getnewaddress.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getnodeaddresses.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getnodeaddresses.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getpeerinfo.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getpeerinfo.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getrawchangeaddress.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getrawchangeaddress.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getrawmempool.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getrawmempool.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getrawtransaction.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getrawtransaction.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getreceivedbyaddress.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getreceivedbyaddress.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getreceivedbylabel.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getreceivedbylabel.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getrpcinfo.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getrpcinfo.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/gettransaction.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/gettransaction.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/gettxout.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/gettxout.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/gettxoutproof.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/gettxoutproof.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/gettxoutsetinfo.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/gettxoutsetinfo.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getunconfirmedbalance.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getunconfirmedbalance.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/getwalletinfo.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/getwalletinfo.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/help.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/help.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/importaddress.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/importaddress.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/importmulti.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/importmulti.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/importprivkey.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/importprivkey.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/importprunedfunds.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/importprunedfunds.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/importpubkey.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/importpubkey.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/importwallet.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/importwallet.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/joinpsbts.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/joinpsbts.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/keypoolrefill.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/keypoolrefill.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/listaddressgroupings.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/listaddressgroupings.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/listbanned.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/listbanned.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/listlabels.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/listlabels.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/listlockunspent.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/listlockunspent.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/listreceivedbyaddress.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/listreceivedbyaddress.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/listreceivedbylabel.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/listreceivedbylabel.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/listsinceblock.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/listsinceblock.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/listtransactions.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/listtransactions.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/listunspent.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/listunspent.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/listwalletdir.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/listwalletdir.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/listwallets.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/listwallets.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/loadwallet.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/loadwallet.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/lockunspent.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/lockunspent.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/logging.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/logging.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/ping.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/ping.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/preciousblock.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/preciousblock.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/prioritisetransaction.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/prioritisetransaction.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/pruneblockchain.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/pruneblockchain.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/removeprunedfunds.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/removeprunedfunds.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/rescanblockchain.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/rescanblockchain.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/savemempool.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/savemempool.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/scantxoutset.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/scantxoutset.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/sendmany.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/sendmany.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/sendrawtransaction.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/sendrawtransaction.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/sendtoaddress.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/sendtoaddress.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/setban.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/setban.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/sethdseed.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/sethdseed.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/setlabel.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/setlabel.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/setnetworkactive.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/setnetworkactive.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/settxfee.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/settxfee.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/signmessage.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/signmessage.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/signmessagewithprivkey.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/signmessagewithprivkey.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/signrawtransactionwithkey.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/signrawtransactionwithkey.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/signrawtransactionwithwallet.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/signrawtransactionwithwallet.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/stop.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/stop.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/submitblock.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/submitblock.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/submitheader.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/submitheader.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/testmempoolaccept.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/testmempoolaccept.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/unloadwallet.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/unloadwallet.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/uptime.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/uptime.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/utxoupdatepsbt.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/utxoupdatepsbt.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/validateaddress.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/validateaddress.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/verifychain.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/verifychain.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/verifymessage.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/verifymessage.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/verifytxoutproof.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/verifytxoutproof.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/walletcreatefundedpsbt.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/walletcreatefundedpsbt.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/walletlock.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/walletlock.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/walletpassphrase.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/walletpassphrase.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/walletpassphrasechange.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/walletpassphrasechange.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rpcs/rpcs/walletprocesspsbt.md _data/devdocs/en/bitcoin-core/rpcs/rpcs/walletprocesspsbt.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rest/intro.md _data/devdocs/en/bitcoin-core/rest/intro.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rest/quick-reference.md _data/devdocs/en/bitcoin-core/rest/quick-reference.md %}
#### Requests
<!-- no subhead-links here -->
{{WARNING}} the block chain and memory pool can include arbitrary data
which several of the commands below will return in hex format. If you
convert this data to another format in an executable context, it could
be used in an exploit. For example, displaying a pubkey script as
ASCII text in a webpage could add arbitrary Javascript to that page and
create a cross-site scripting (XSS) exploit. To avoid problems, please
treat block chain and memory pool data as an arbitrary input from an
untrusted source.
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rest/requests/get_block.md _data/devdocs/en/bitcoin-core/rest/requests/get_block.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rest/requests/get_block-notxdetails.md _data/devdocs/en/bitcoin-core/rest/requests/get_block-notxdetails.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rest/requests/get_blockhashbyheight.md _data/devdocs/en/bitcoin-core/rest/requests/get_blockhashbyheight.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rest/requests/get_chaininfo.md _data/devdocs/en/bitcoin-core/rest/requests/get_chaininfo.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rest/requests/get_getutxos.md _data/devdocs/en/bitcoin-core/rest/requests/get_getutxos.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rest/requests/get_headers.md _data/devdocs/en/bitcoin-core/rest/requests/get_headers.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rest/requests/get_mempool-contents.md _data/devdocs/en/bitcoin-core/rest/requests/get_mempool-contents.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rest/requests/get_mempool-info.md _data/devdocs/en/bitcoin-core/rest/requests/get_mempool-info.md %}
{% include_absolute _data/devdocs/{{page.lang}}/bitcoin-core/rest/requests/get_tx.md _data/devdocs/en/bitcoin-core/rest/requests/get_tx.md %}

View File

@ -0,0 +1,35 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rest/intro.md" %}
### HTTP REST
{% include helpers/subhead-links.md %}
{% autocrossref %}
As of [version 0.10.0][bitcoin core 0.10.0], Bitcoin Core provides
an **unauthenticated** HTTP REST interface. The interface runs on the
same port as the JSON-RPC interface, by default port 8332 for mainnet and
port 18332 for testnet. It must be enabled by either starting Bitcoin
Core with the `-rest` option or by specifying `rest=1` in the
configuration file. Make sure that the RPC interface is also activated.
Set `server=1` in `bitcoin.conf` or supply the `-server` argument when
starting Bitcoin Core. Starting Bitcoin Core with `bitcoind` automatically
enables the RPC interface.
The interface is not intended for public access and is only accessible
from localhost by default.
{{WARNING}} A web browser can access a HTTP REST interface running on
localhost, possibly allowing third parties to use cross-site scripting
attacks to download your transaction and block data, reducing your
privacy. If you have privacy concerns, you should not run a browser on
the same computer as a REST-enabled Bicoin Core node.
The interface uses standard [HTTP status
codes](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes) and
returns a plain-text description of errors for debugging.
{% endautocrossref %}

View File

@ -0,0 +1,22 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rest/quick-reference.md" %}
#### Quick Reference {#rest-quick-reference}
{% include helpers/subhead-links.md %}
{% autocrossref %}
* [GET Block][rest get block] {{summary_restGetBlock}} {{UPDATED0_13_0}}
* [GET Block/NoTxDetails][rest get block-notxdetails] {{summary_restGetBlock-noTxDetails}} {{UPDATED0_13_0}}
* [GET BlockHashByHeight][rest get blockhashbyheight] {{summary_restGetBlockHashByHeight}} {{NEW0_18_0}}
* [GET ChainInfo][rest get chaininfo] {{summary_restGetChainInfo}} {{NEW0_11_0}}, {{UPDATED0_12_0}}
* [GET GetUtxos][rest get getutxos] {{summary_restGetGetUtxos}} {{NEW0_11_0}}
* [GET Headers][rest get headers] {{summary_restGetHeaders}} {{NEW0_11_0}}, {{UPDATED0_13_0}}
* [GET MemPool/Contents][rest get mempool-contents] {{summary_restGetMemPool-contents}} {{NEW0_12_0}}
* [GET MemPool/Info][rest get mempool-info] {{summary_restGetMemPool-info}} {{NEW0_12_0}}
* [GET Tx][rest get tx] {{summary_restGetTx}} {{UPDATED0_13_0}}
{% endautocrossref %}

View File

@ -0,0 +1,209 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rest/requests/get_block-notxdetails.md" %}
##### GET Block/NoTxDetails
{% include helpers/subhead-links.md %}
{% assign summary_restGetBlock-noTxDetails="gets a block with a particular header hash from the local block database either as a JSON object or as a serialized block. The JSON object includes TXIDs for transactions within the block rather than the complete transactions [GET block][rest get block] returns." %}
{% autocrossref %}
The `GET block<!--noref-->/notxdetails` operation {{summary_restGetBlock-noTxDetails}}
*Request*
{% highlight text %}
GET /block/notxdetails/<hash>.<format>
{% endhighlight %}
*Parameter #1---the header hash of the block to retrieve*
{% itemplate ntpd1 %}
- n: "Header Hash"
t: "path (hex)"
p: "Required<br>(exactly 1)"
d: "The hash of the header of the block to get, encoded as hex in RPC byte order"
{% enditemplate %}
*Parameter #2---the output format*
{% itemplate ntpd1 %}
- n: "Format"
t: "suffix"
p: "Required<br>(exactly 1)"
d: "Set to `.json` for decoded block contents in JSON, or `.bin` or `hex` for a serialized block in binary or hex"
{% enditemplate %}
*Response as JSON*
{% itemplate ntpd1 %}
- n: "Result"
t: "object"
p: "Required<br>(exactly 1)"
d: "An object containing the requested block"
- n: "→<br>`hash`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The hash of this block's block header encoded as hex in RPC byte order. This is the same as the hash provided in parameter #1"
- n: "→<br>`confirmations`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The number of confirmations the transactions in this block have, starting at 1 when this block is at the tip of the best block chain. This score will be -1 if the the block is not part of the best block chain"
- n: "→<br>`strippedsize`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.13.0*<br><br>The size of this block in serialized block format excluding witness data, counted in bytes"
- n: "→<br>`size`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The size of this block in serialized block format, counted in bytes"
- n: "→<br>`height`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The height of this block on its block chain"
- n: "→<br>`weight`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.13.0*<br><br>The block weight as defined in BIP 141"
- n: "→<br>`version`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "This block's version number. See [block version numbers][section block versions]"
- n: "→<br>`versionHex`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.13.0*<br><br>This block's version number formatted in hexadecimal. See [BIP9 assignments][]"
- n: "→<br>`merkleroot`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The merkle root for this block, encoded as hex in RPC byte order"
- n: "→<br>`tx`"
t: "array"
p: "Required<br>(exactly 1)"
d: "An array containing all transactions in this block. The transactions appear in the array in the same order they appear in the serialized block"
- n: "→ →<br>TXID"
t: "string (hex)"
p: "Required<br>(1 or more)"
d: "The TXID of a transaction in this block, encoded as hex in RPC byte order"
- n: "→<br>`time`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The value of the *time* field in the block header, indicating approximately when the block was created"
- n: "→<br>`mediantime`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.12.0*<br><br>The median time of the 11 blocks before the most recent block on the blockchain. Used for validating transaction locktime under BIP113"
- n: "→<br>`nonce`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The nonce which was successful at turning this particular block into one that could be added to the best block chain"
- n: "→<br>`bits`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The value of the *nBits* field in the block header, indicating the target threshold this block's header had to pass"
- n: "→<br>`difficulty`"
t: "number (real)"
p: "Required<br>(exactly 1)"
d: "The estimated amount of work done to find this block relative to the estimated amount of work done to find block 0"
- n: "→<br>`chainwork`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The estimated number of block header hashes miners had to check from the genesis block to this block, encoded as big-endian hex"
- n: "→<br>`previousblockhash`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The hash of the header of the previous block, encoded as hex in RPC byte order"
- n: "→<br>`nextblockhash`"
t: "string (hex)"
p: "Optional<br>(0 or 1)"
d: "The hash of the next block on the best block chain, if known, encoded as hex in RPC byte order"
{% enditemplate %}
*Examples from Bitcoin Core 0.10.0*
Request a block in hex-encoded serialized block format:
{% highlight bash %}
curl http://localhost:8332/rest/block/notxdetails/00000000839a8e6886ab5951d76f411475428afc90947ee320161bbf18eb6048.hex
{% endhighlight %}
Result (wrapped):
{% highlight bash %}
010000006fe28c0ab6f1b372c1a6a246ae63f74f931e8365e15a089c68d61900\
00000000982051fd1e4ba744bbbe680e1fee14677ba1a3c3540bf7b1cdb606e8\
57233e0e61bc6649ffff001d01e3629901010000000100000000000000000000\
00000000000000000000000000000000000000000000ffffffff0704ffff001d\
0104ffffffff0100f2052a0100000043410496b538e853519c726a2c91e61ec1\
1600ae1390813a627c66fb8be7947be63c52da7589379515d4e0a604f8141781\
e62294721166bf621e73a82cbf2342c858eeac00000000
{% endhighlight %}
Get the same block in JSON:
{% highlight bash %}
curl http://localhost:8332/rest/block/notxdetails/00000000839a8e6886ab5951d76f411475428afc90947ee320161bbf18eb6048.json
{% endhighlight %}
Result (whitespaced added):
{% highlight json %}
{
"hash": "00000000839a8e6886ab5951d76f411475428afc90947ee320161bbf18eb6048",
"confirmations": 443375,
"strippedsize": 215,
"size": 215,
"weight": 860,
"height": 1,
"version": 1,
"versionHex": "00000001",
"merkleroot": "0e3e2357e806b6cdb1f70b54c3a3a17b6714ee1f0e68bebb44a74b1efd512098",
"tx": [
"0e3e2357e806b6cdb1f70b54c3a3a17b6714ee1f0e68bebb44a74b1efd512098"
],
"time": 1231469665,
"mediantime": 1231469665,
"nonce": 2573394689,
"bits": "1d00ffff",
"difficulty": 1,
"chainwork": "0000000000000000000000000000000000000000000000000000000200020002",
"previousblockhash": "000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f",
"nextblockhash": "000000006a625f06636b8bb6ac7b960a8d03705d1ace08b1a19da3fdcc99ddbd"
}
{% endhighlight %}
*See also*
* [GET Block][rest get block]: {{summary_restGetBlock}}
* [GetBlock][rpc getblock] RPC: {{summary_getBlock}}
* [GetBlockHash][rpc getblockhash] RPC: {{summary_getBlockHash}}
* [GET BlockHashByHeight][rest get blockhashbyheight]: {{summary_restGetBlockHashByHeight}}
* [GetBestBlockHash][rpc getbestblockhash] RPC: {{summary_getBestBlockHash}}
{% endautocrossref %}

View File

@ -0,0 +1,241 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rest/requests/get_block.md" %}
##### GET Block
{% include helpers/subhead-links.md %}
{% assign summary_restGetBlock="gets a block with a particular header hash from the local block database either as a JSON object or as a serialized block." %}
{% autocrossref %}
The `GET block` operation {{summary_restGetBlock}}
*Request*
{% highlight text %}
GET /block/<hash>.<format>
{% endhighlight %}
*Parameter #1---the header hash of the block to retrieve*
{% itemplate ntpd1 %}
- n: "Header Hash"
t: "path (hex)"
p: "Required<br>(exactly 1)"
d: "The hash of the header of the block to get, encoded as hex in RPC byte order"
{% enditemplate %}
*Parameter #2---the output format*
{% itemplate ntpd1 %}
- n: "Format"
t: "suffix"
p: "Required<br>(exactly 1)"
d: "Set to `.json` for decoded block contents in JSON, or `.bin` or `hex` for a serialized block in binary or hex"
{% enditemplate %}
*Response as JSON*
{% assign DEPTH="→ →" %}
{% include helpers/vars.md %}
{% itemplate ntpd1 %}
- n: "Result"
t: "object"
p: "Required<br>(exactly 1)"
d: "An object containing the requested block"
- n: "→<br>`hash`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The hash of this block's block header encoded as hex in RPC byte order. This is the same as the hash provided in parameter #1"
- n: "→<br>`confirmations`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The number of confirmations the transactions in this block have, starting at 1 when this block is at the tip of the best block chain. This score will be -1 if the the block is not part of the best block chain"
- n: "→<br>`strippedsize`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.13.0*<br><br>The size of this block in serialized block format excluding witness data, counted in bytes"
- n: "→<br>`size`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The size of this block in serialized block format, counted in bytes"
- n: "→<br>`weight`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.13.0*<br><br>The block weight as defined in BIP 141"
- n: "→<br>`height`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The height of this block on its block chain"
- n: "→<br>`version`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "This block's version number. See [block version numbers][section block versions]"
- n: "→<br>`versionHex`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.13.0*<br><br>This block's version number formatted in hexadecimal. See [BIP9 assignments]"
- n: "→<br>`merkleroot`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The merkle root for this block, encoded as hex in RPC byte order"
- n: "→<br>`tx`"
t: "array"
p: "Required<br>(exactly 1)"
d: "An array containing all transactions in this block. The transactions appear in the array in the same order they appear in the serialized block"
- n: "→ →<br>Transaction"
t: "object"
p: "Required<br>(1 or more)"
d: "An object describing a particular transaction within this block"
{{INCLUDE_DECODE_RAW_TRANSACTION}}
- n: "→<br>`time`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The value of the *time* field in the block header, indicating approximately when the block was created"
- n: "→<br>`mediantime`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.12.0*<br><br>The median time of the 11 blocks before the most recent block on the blockchain. Used for validating transaction locktime under BIP113"
- n: "→<br>`nonce`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The nonce which was successful at turning this particular block into one that could be added to the best block chain"
- n: "→<br>`bits`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The value of the *nBits* field in the block header, indicating the target threshold this block's header had to pass"
- n: "→<br>`difficulty`"
t: "number (real)"
p: "Required<br>(exactly 1)"
d: "The estimated amount of work done to find this block relative to the estimated amount of work done to find block 0"
- n: "→<br>`chainwork`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The estimated number of block header hashes miners had to check from the genesis block to this block, encoded as big-endian hex"
- n: "→<br>`previousblockhash`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The hash of the header of the previous block, encoded as hex in RPC byte order"
- n: "→<br>`nextblockhash`"
t: "string (hex)"
p: "Optional<br>(0 or 1)"
d: "The hash of the next block on the best block chain, if known, encoded as hex in RPC byte order"
{% enditemplate %}
*Examples from Bitcoin Core 0.13.1*
Request a block in hex-encoded serialized block format:
{% highlight bash %}
curl http://localhost:8332/rest/block/00000000839a8e6886ab5951d76f411475428afc90947ee320161bbf18eb6048.hex
{% endhighlight %}
Result (wrapped):
{% highlight bash %}
010000006fe28c0ab6f1b372c1a6a246ae63f74f931e8365e15a089c68d61900\
00000000982051fd1e4ba744bbbe680e1fee14677ba1a3c3540bf7b1cdb606e8\
57233e0e61bc6649ffff001d01e3629901010000000100000000000000000000\
00000000000000000000000000000000000000000000ffffffff0704ffff001d\
0104ffffffff0100f2052a0100000043410496b538e853519c726a2c91e61ec1\
1600ae1390813a627c66fb8be7947be63c52da7589379515d4e0a604f8141781\
e62294721166bf621e73a82cbf2342c858eeac00000000
{% endhighlight %}
Get the same block in JSON:
{% highlight bash %}
curl http://localhost:8332/rest/block/00000000839a8e6886ab5951d76f411475428afc90947ee320161bbf18eb6048.json
{% endhighlight %}
Result (whitespaced added):
{% highlight json %}
{
"hash": "00000000839a8e6886ab5951d76f411475428afc90947ee320161bbf18eb6048",
"confirmations": 443372,
"strippedsize": 215,
"size": 215,
"weight": 860,
"height": 1,
"version": 1,
"versionHex": "00000001",
"merkleroot": "0e3e2357e806b6cdb1f70b54c3a3a17b6714ee1f0e68bebb44a74b1efd512098",
"tx": [
{
"txid": "0e3e2357e806b6cdb1f70b54c3a3a17b6714ee1f0e68bebb44a74b1efd512098",
"hash": "0e3e2357e806b6cdb1f70b54c3a3a17b6714ee1f0e68bebb44a74b1efd512098",
"size": 134,
"vsize": 134,
"version": 1,
"locktime": 0,
"vin": [
{
"coinbase": "04ffff001d0104",
"sequence": 4294967295
}
],
"vout": [
{
"value": 50,
"n": 0,
"scriptPubKey": {
"asm": "0496b538e853519c726a2c91e61ec11600ae1390813a627c66fb8be7947be63c52da7589379515d4e0a604f8141781e62294721166bf621e73a82cbf2342c858ee OP_CHECKSIG",
"hex": "410496b538e853519c726a2c91e61ec11600ae1390813a627c66fb8be7947be63c52da7589379515d4e0a604f8141781e62294721166bf621e73a82cbf2342c858eeac",
"reqSigs": 1,
"type": "pubkey",
"addresses": [
"12c6DSiU4Rq3P4ZxziKxzrL5LmMBrzjrJX"
]
}
}
]
}
],
"time": 1231469665,
"mediantime": 1231469665,
"nonce": 2573394689,
"bits": "1d00ffff",
"difficulty": 1,
"chainwork": "0000000000000000000000000000000000000000000000000000000200020002",
"previousblockhash": "000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f",
"nextblockhash": "000000006a625f06636b8bb6ac7b960a8d03705d1ace08b1a19da3fdcc99ddbd"
}
{% endhighlight %}
*See also*
* [GET Block/NoTxDetails][rest get block-notxdetails] {{summary_restGetBlock-noTxDetails}}
* [GetBestBlockHash][rpc getbestblockhash] RPC: {{summary_getBestBlockHash}}
* [GetBlock][rpc getblock] RPC: {{summary_getBlock}}
* [GetBlockHash][rpc getblockhash] RPC: {{summary_getBlockHash}}
* [GET BlockHashByHeight][rest get blockhashbyheight]: {{summary_restGetBlockHashByHeight}}
{% endautocrossref %}

View File

@ -0,0 +1,98 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rest/requests/get_blockhashbyheight.md" %}
##### GET BlockHashByHeight
{% include helpers/subhead-links.md %}
{% assign summary_restGetBlockHashByHeight="gets the hash of the block in the current best blockchain based on its height (how many blocks it is after the Genesis Block)." %}
{% autocrossref %}
The `GET blockhashbyheight` operation {{summary_restGetBlockHashByHeight}}
*Request*
{% highlight text %}
GET /blockhashbyheight/<height>.<format>
{% endhighlight %}
*Parameter #1---the height of the block hash to retrieve*
{% itemplate ntpd1 %}
- n: "Block Height"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The height of the block (how many blocks it is after the Genesis Block)"
{% enditemplate %}
*Parameter #2---the output format*
{% itemplate ntpd1 %}
- n: "Format"
t: "suffix"
p: "Required<br>(exactly 1)"
d: "Set to `.json`, `.bin` or `hex`."
{% enditemplate %}
*Response as JSON*
{% assign DEPTH="→ →" %}
{% include helpers/vars.md %}
{% itemplate ntpd1 %}
- n: "Result"
t: "object"
p: "Required<br>(exactly 1)"
d: "An object containing the requested block hash"
- n: "→<br>`blockhash`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The hash of the block at height set in parameter #1 in the current best blockchain."
{% enditemplate %}
*Examples from Bitcoin Core 0.18.0*
Request a blockhash in hex format:
{% highlight bash %}
curl http://localhost:8332/rest/blockhashbyheight/1.hex
{% endhighlight %}
Result (wrapped):
{% highlight bash %}
00000000839a8e6886ab5951d76f411475428afc90947ee320161bbf18eb6048
{% endhighlight %}
Get the same blockhash in JSON:
{% highlight bash %}
curl http://localhost:8332/rest/blockhashbyheight/1.json
{% endhighlight %}
Result (whitespaced added):
{% highlight json %}
{
"blockhash": "00000000839a8e6886ab5951d76f411475428afc90947ee320161bbf18eb6048",
}
{% endhighlight %}
*See also*
* [GET Block][rest get block]: {{summary_restGetBlock}}
* [GetBlock][rpc getblock] RPC: {{summary_getBlock}}
* [GET Block/NoTxDetails][rest get block-notxdetails] {{summary_restGetBlock-noTxDetails}}
* [GetBestBlockHash][rpc getbestblockhash] RPC: {{summary_getBestBlockHash}}
* [GetBlock][rpc getblock] RPC: {{summary_getBlock}}
* [GetBlockHash][rpc getblockhash] RPC: {{summary_getBlockHash}}
{% endautocrossref %}

View File

@ -0,0 +1,250 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rest/requests/get_chaininfo.md" %}
##### GET ChainInfo
{% include helpers/subhead-links.md %}
{% assign summary_restGetChainInfo="returns information about the current state of the block chain." %}
{% autocrossref %}
The `GET chaininfo` operation {{summary_restGetChainInfo}} Supports only `json` as output format.
*Request*
{% highlight text %}
GET /chaininfo.json
{% endhighlight %}
*Parameters: none*
*Response as JSON*
{% itemplate ntpd1 %}
- n: "`result`"
t: "object"
p: "Required<br>(exactly 1)"
d: "Information about the current state of the local block chain"
- n: "→<br>`chain`"
t: "string"
p: "Required<br>(exactly 1)"
d: "The name of the block chain. One of `main` for mainnet, `test` for testnet, or `regtest`<!--noref--> for regtest"
- n: "→<br>`blocks`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The number of validated blocks in the local best block chain. For a new node with just the hardcoded genesis block, this will be 0"
- n: "→<br>`headers`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The number of validated headers in the local best headers chain. For a new node with just the hardcoded genesis block, this will be zero. This number may be higher than the number of *blocks*"
- n: "→<br>`bestblockhash`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The hash of the header of the highest validated block in the best block chain, encoded as hex in RPC byte order. This is identical to the string returned by the `getbestblockhash` RPC"
- n: "→<br>`difficulty`"
t: "number (real)"
p: "Required<br>(exactly 1)"
d: "The difficulty of the highest-height block in the best block chain"
- n: "→<br>`mediantime`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.12.0*<br><br>The median time of the 11 blocks before the most recent block on the blockchain. Used for validating transaction locktime under BIP113"
- n: "→<br>`verificationprogress`"
t: "number (real)"
p: "Required (exactly 1)"
d: "Estimate of what percentage of the block chain transactions have been verified so far, starting at 0.0 and increasing to 1.0 for fully verified. May slightly exceed 1.0 when fully synced to account for transactions in the memory pool which have been verified before being included in a block"
- n: "→<br>`chainwork`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The estimated number of block header hashes checked from the genesis block to this block, encoded as big-endian hex"
- n: "→<br>`pruned`"
t: "bool"
p: "Required<br>(exactly 1)"
d: "Indicates if the blocks are subject to pruning"
- n: "→<br>`pruneheight`"
t: "number (int)"
p: "Optional<br>(0 or 1)"
d: "The lowest-height complete block stored if prunning is activated"
- n: "→<br>`softforks`"
t: "array"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.12.0*<br><br>An array of objects each describing a current or previous soft fork"
- n: "→ →<br>Softfork"
t: "object"
p: "Required<br>(3 or more)"
d: "A specific softfork"
- n: "→ → →<br>`id`"
t: "string"
p: "Required<br>(exactly 1)"
d: "The name of the softfork"
- n: "→ → →<br>`version`"
t: "numeric<br>(int)"
p: "Required<br>(exactly 1)"
d: "The block version used for the softfork"
- n: "→ → →<br>`enforce`"
t: "string : object"
p: "Optional<br>(0 or 1)"
d: "The progress toward enforcing the softfork rules for new-version blocks"
- n: "→ → → →<br>`status`"
t: "bool"
p: "Required<br>(exactly 1)"
d: "Indicates if the threshold was reached"
- n: "→ → → →<br>`found`"
t: "numeric<br>(int)"
p: "Optional<br>(0 or 1)"
d: "Number of blocks that support the softfork"
- n: "→ → → →<br>`required`"
t: "numeric<br>(int)"
p: "Optional<br>(0 or 1)"
d: "Number of blocks that are required to reach the threshold"
- n: "→ → → →<br>`window`"
t: "numeric<br>(int)"
p: "Optional<br>(0 or 1)"
d: "The maximum size of examined window of recent blocks"
- n: "→ → →<br>`reject`"
t: "object"
p: "Optional<br>(0 or 1)"
d: "The progress toward enforcing the softfork rules for new-version blocks"
- n: "→ → → →<br>`status`"
t: "bool"
p: "Optional<br>(0 or 1)"
d: "Indicates if the threshold was reached"
- n: "→ → → →<br>`found`"
t: "numeric<br>(int)"
p: "Optional<br>(0 or 1)"
d: "Number of blocks that support the softfork"
- n: "→ → → →<br>`required`"
t: "numeric<br>(int)"
p: "Optional<br>(0 or 1)"
d: "Number of blocks that are required to reach the threshold"
- n: "→ → → →<br>`window`"
t: "numeric<br>(int)"
p: "Optional<br>(0 or 1)"
d: "The maximum size of examined window of recent blocks"
- n: "→<br>`bip9_softforks`"
t: "object"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.12.1*<br><br>The status of BIP9 softforks in progress"
- n: "→ →<br>Name"
t: "string : object"
p: "Required<br>(2 or more)"
d: "A specific BIP9 softfork"
- n: "→ → →<br>`status`"
t: "string"
p: "Required<br>(exactly 1)"
d: "Set to one of the following reasons:<br>`defined` if voting hasn't started yet<br>`started` if the voting has started <br>`locked_in` if the voting was successful but the softfort hasn't been activated yet<br>`active` if the softfork was activated<br>`failed` if the softfork has not receieved enough votes"
- n: "→ → →<br>`bit`"
t: "numeric<br>(int)"
p: "Optional<br>(0 or 1)"
d: "The bit (0-28) in the block version field used to signal this softfork. Field is only shown when status is `started`"
- n: "→ → →<br>`startTime`"
t: "numeric<br>(int)"
p: "Required<br>(exactly 1)"
d: "The Unix epoch time when the softfork voting begins"
- n: "→ → →<br>`timeout`"
t: "numeric<br>(int)"
p: "Required<br>(exactly 1)"
d: "The Unix epoch time at which the deployment is considered failed if not yet locked in"
{% enditemplate %}
*Examples from Bitcoin Core 0.13.1*
Get blockchain info in JSON:
{% highlight bash %}
curl http://localhost:8332/rest/chaininfo.json
{% endhighlight %}
Result (whitespaced added):
{% highlight json %}
{
"chain": "main",
"blocks": 443372,
"headers": 443372,
"bestblockhash": "0000000000000000029a7ee8eb90c47cfcb3e3d877428ed85a3251719bf65ad7",
"difficulty": 286765766820.5504,
"mediantime": 1481671547,
"verificationprogress": 0.9999951668985226,
"chainwork": "000000000000000000000000000000000000000000330d0672c7d7f4f705b65c",
"pruned": false,
"softforks": [
{
"id": "bip34",
"version": 2,
"reject": {
"status": true
}
},
{
"id": "bip66",
"version": 3,
"reject": {
"status": true
}
},
{
"id": "bip65",
"version": 4,
"reject": {
"status": true
}
}
],
"bip9_softforks": {
"csv": {
"status": "active",
"startTime": 1462060800,
"timeout": 1493596800,
"since": 419328
},
"segwit": {
"status": "started",
"bit": 1,
"startTime": 1479168000,
"timeout": 1510704000,
"since": 439488
}
}
}
{% endhighlight %}
*See also*
* [GetBlockChainInfo][rpc getblockchaininfo] RPC: {{summary_getBlockChainInfo}}
{% endautocrossref %}

View File

@ -0,0 +1,189 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rest/requests/get_getutxos.md" %}
##### GET GetUtxos
{% include helpers/subhead-links.md %}
{% assign summary_restGetGetUtxos="returns an UTXO set given a set of outpoints." %}
{% autocrossref %}
The `GET getutxos` operation {{summary_restGetGetUtxos}}
*Request*
{% highlight text %}
GET /getutxos/<checkmempool>/<txid>-<n>/<txid>-<n>/.../<txid>-<n>.<bin|hex|json>
{% endhighlight %}
*Parameter #1---Include memory pool transactions*
{% itemplate ntpd1 %}
- n: "Check mempool "
t: "string"
p: "Optional<br>(0 or 1)"
d: "Set to `checkmempool` to include transactions that are currently in the memory pool to the calculation"
{% enditemplate %}
*Parameter #2---List of Outpoints*
{% itemplate ntpd1 %}
- n: "Outpoint"
t: "vector"
p: "Required<br>(1 or more)"
d: "The list of outpoints to be queried. Each outpoint is the TXID of the transaction, encoded as hex in RPC byte order with an additional `-n` parameter for the output index (vout) number, with the index starting from 0"
{% enditemplate %}
*Parameter #3---the output format*
{% itemplate ntpd1 %}
- n: "Format"
t: "suffix"
p: "Required<br>(exactly 1)"
d: "Set to `.json` for decoded UTXO entries in JSON, or `.bin` or `hex` for serialized UTXO entries in binary or hex"
{% enditemplate %}
*Response as JSON*
{% itemplate ntpd1 %}
- n: "`result`"
t: "object"
p: "Required<br>(exactly 1)"
d: "The requested UTXO set"
- n: "→→<br>`chainHeight`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The height of the chain at the moment the result was calculated"
- n: "→<br>`chaintipHash`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The block hash of the top of the chain at the moment the result was calculated"
- n: "→<br>`bitmap`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "Whether each requested output was found in the UTXO set or not. A `1` is returned for those that were found and a `0` is returned for those that were not found. Results are returned in the same order as outpoints were requested in the input parameters"
- n: "→<br>`utxos`"
t: "array"
p: "Required<br>(exactly 1)"
d: "An array of objects each describing an outpoint that is unspent"
- n: "→→`Unspent Outpoint`"
t: "object"
p: "Optional<br>(0 or more)"
d: "A UTXO match based on the query"
- n: "→→→<br>`txvers`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The version number of the transaction the UTXO was found in"
- n: "→<br>`height`"
t: "number (int)"
p: "Required (exactly 1)"
d: "The height of the block containing the defining transaction, or 0x7FFFFFFF if the tx is in the mempool"
- n: "→ → →<br>`value`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The value of the transaction"
- n: "→ → →<br>`scriptPubKey`"
t: "object"
p: "Required<br>(exactly 1)"
d: "An object describing the pubkey script"
- n: "→ → → →<br>`asm`"
t: "string"
p: "Required<br>(exactly 1)"
d: "The pubkey script in decoded form with non-data-pushing opcodes listed"
- n: "→ → → →<br>`hex`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The pubkey script encoded as hex"
- n: "→ → → →<br>`reqSigs`"
t: "number (int)"
p: "Optional<br>(0 or 1)"
d: "The number of signatures required; this is always `1` for P2PK, P2PKH, and P2SH (including P2SH multisig because the redeem script is not available in the pubkey script). It may be greater than 1 for bare multisig. This value will not be returned for `nulldata` or `nonstandard` script types (see the `type` key below)"
- n: "→ → → →<br>`type`"
t: "string"
p: "Optional<br>(0 or 1)"
d: "The type of script. This will be one of the following:<br>`pubkey` for a P2PK script<br>`pubkeyhash` for a P2PKH script<br>`scripthash` for a P2SH script<br>`multisig` for a bare multisig script<br>`nulldata` for nulldata scripts<br>`nonstandard` for unknown scripts"
- n: "→ → → →<br>`addresses`"
t: "string : array"
p: "Optional<br>(0 or 1)"
d: "Array of P2PKH or P2SH addresses used in this transaction, or the computed P2PKH address of any pubkeys in this transaction. This array will not be returned for `nulldata` or `nonstandard` script types"
- n: "→ → → → →<br>Address"
t: "string"
p: "Required<br>(1 or more)"
d: "A P2PKH or P2SH address"
{% enditemplate %}
*Examples from Bitcoin Core 0.13.1*
Request the UTXO set:
{% highlight bash %}
curl http://localhost:8332/rest/getutxos/checkmempool/42f9df54a39026ccb54362141c41713968f19e1f14949ab6609b03ffa4b7f120-0.hex
{% endhighlight %}
Result (wrapped):
{% highlight bash %}
d0c306004f438cea9c68557da34e8e7823a963eb9350daa107ffd80100000000\
0000000001010101000000ffffff7fc8883303000000001976a9145f4865d186\
5127807f714b0ad1ddfae9870866d888ac
{% endhighlight %}
Same request in JSON:
{% highlight bash %}
curl http://localhost:8332/rest/getutxos/checkmempool/42f9df54a39026ccb54362141c41713968f19e1f14949ab6609b03ffa4b7f120-0.json
{% endhighlight %}
Result (whitespaced added):
{% highlight json %}
{
"chainHeight": 443344,
"chaintipHash": "000000000000000001d8ff07a1da5093eb63a923788e4ea37d55689cea8c434f",
"bitmap": "1",
"utxos": [
{
"txvers": 1,
"height": 2147483647,
"value": 0.53709,
"scriptPubKey": {
"asm": "OP_DUP OP_HASH160 5f4865d1865127807f714b0ad1ddfae9870866d8 OP_EQUALVERIFY OP_CHECKSIG",
"hex": "76a9145f4865d1865127807f714b0ad1ddfae9870866d888ac",
"reqSigs": 1,
"type": "pubkeyhash",
"addresses": [
"19govWMzsRXqLUsUrHQKQ3DzekRxhsqwWH"
]
}
}
]
}
{% endhighlight %}
*See also*
* [GetTxOutSetInfo][rpc gettxoutsetinfo] RPC: {{summary_getTxOutSetInfo}}
{% endautocrossref %}

View File

@ -0,0 +1,208 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rest/requests/get_headers.md" %}
##### GET Headers
{% include helpers/subhead-links.md %}
{% assign summary_restGetHeaders="returns a specified amount of block headers in upward direction." %}
{% autocrossref %}
The `GET headers` operation {{summary_restGetHeaders}}
*Request*
{% highlight text %}
GET /headers/<count>/<hash>.<format>
{% endhighlight %}
*Parameter #1---the amount of block headers to retrieve*
{% itemplate ntpd1 %}
- n: "Amount"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The amount of block headers in upward direction to return (including the start header hash)"
{% enditemplate %}
*Parameter #2---the header hash of the block to retrieve*
{% itemplate ntpd1 %}
- n: "Header Hash"
t: "path (hex)"
p: "Required<br>(exactly 1)"
d: "The hash of the header of the block to get, encoded as hex in RPC byte order"
{% enditemplate %}
*Parameter #3---the output format*
{% itemplate ntpd1 %}
- n: "Format"
t: "suffix"
p: "Required<br>(exactly 1)"
d: "Set to `.json` for decoded block contents in JSON, or `.bin` or `hex` for a serialized block in binary or hex"
{% enditemplate %}
*Response as JSON*
{% itemplate ntpd1 %}
- n: "Result"
t: "array"
p: "Required<br>(exactly 1)"
d: "An array containing the requested block headers"
- n: "→<br>Block Header"
t: "object"
p: "Required<br>(1 or more)"
d: "An object containing a block header. The amount of the objects is the same as the amount provided in parameter #1 "
- n: "→→<br>`hash`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The hash of this block's block header encoded as hex in RPC byte order. This is the same as the hash provided in parameter #2"
- n: "→→<br>`confirmations`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The number of confirmations the transactions in this block have, starting at 1 when this block is at the tip of the best block chain. This score will be -1 if the the block is not part of the best block chain"
- n: "→→<br>`height`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The height of this block on its block chain"
- n: "→→<br>`version`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "This block's version number. See [block version numbers][section block versions]"
- n: "→→<br>`versionHex`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.13.0*<br><br>This block's version number formatted in hexadecimal. See [BIP9 assignments][]"
- n: "→→<br>`merkleroot`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The merkle root for this block, encoded as hex in RPC byte order"
- n: "→→<br>`time`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The value of the *time* field in the block header, indicating approximately when the block was created"
- n: "→→<br>`mediantime`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.12.0*<br><br>The median time of the 11 blocks before the most recent block on the blockchain. Used for validating transaction locktime under BIP113"
- n: "→→<br>`nonce`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The nonce which was successful at turning this particular block into one that could be added to the best block chain"
- n: "→→<br>`bits`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The value of the *nBits* field in the block header, indicating the target threshold this block's header had to pass"
- n: "→→<br>`difficulty`"
t: "number (real)"
p: "Required<br>(exactly 1)"
d: "The estimated amount of work done to find this block relative to the estimated amount of work done to find block 0"
- n: "→→<br>`chainwork`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The estimated number of block header hashes miners had to check from the genesis block to this block, encoded as big-endian hex"
- n: "→→<br>`previousblockhash`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The hash of the header of the previous block, encoded as hex in RPC byte order"
- n: "→→<br>`nextblockhash`"
t: "string (hex)"
p: "Optional<br>(0 or 1)"
d: "The hash of the next block on the best block chain, if known, encoded as hex in RPC byte order"
{% enditemplate %}
*Examples from Bitcoin Core 0.13.1*
Request 5 block headers in hex-encoded serialized block format:
{% highlight bash %}
curl http://localhost:8332/rest/headers/5/000000000000000002538dfef658564662025e0687b0c65c6d5c9d765984ec5a.hex
{% endhighlight %}
Result (wrapped):
{% highlight bash %}
040000004b9e8debb1bb9df8f85d0f64cf45d408f5f7fcf3293ec40400000000\
000000008c37685c878a66aa2709c3dc27a35020269ce1ce7ecb41dabe8f4e0c\
ca8fc508651b2b5776270618cb395012000000205aec8459769d5c6d5cc6b087\
065e0262465658f6fe8d53020000000000000000cb9a492474a4791b7f4dee49\
0b3d813b1eb192fb67109c0c99317101019f72a7cd1f2b57762706185c2921b4
{% endhighlight %}
Get the same block headers in JSON:
{% highlight bash %}
curl http://localhost:8332/rest/headers/5/000000000000000002538dfef658564662025e0687b0c65c6d5c9d765984ec5a.json
{% endhighlight %}
Result (whitespaced added):
{% highlight json %}
[
{
"hash": "000000000000000002538dfef658564662025e0687b0c65c6d5c9d765984ec5a",
"confirmations": 33009,
"height": 410334,
"version": 4,
"versionHex": "00000004",
"merkleroot": "08c58fca0c4e8fbeda41cb7ecee19c262050a327dcc30927aa668a875c68378c",
"time": 1462442853,
"mediantime": 1462441310,
"nonce": 307247563,
"bits": "18062776",
"difficulty": 178659257772.5273,
"chainwork": "00000000000000000000000000000000000000000018562bc90589834ae929d0",
"previousblockhash": "000000000000000004c43e29f3fcf7f508d445cf640f5df8f89dbbb1eb8d9e4b",
"nextblockhash": "000000000000000000f198b9f92bc29fa294be4bb777e61fdd56aac07f174553"
},
{
"hash": "000000000000000000f198b9f92bc29fa294be4bb777e61fdd56aac07f174553",
"confirmations": 33008,
"height": 410335,
"version": 536870912,
"versionHex": "20000000",
"merkleroot": "a7729f01017131990c9c1067fb92b11e3b813d0b49ee4d7f1b79a47424499acb",
"time": 1462443981,
"mediantime": 1462441496,
"nonce": 3022072156,
"bits": "18062776",
"difficulty": 178659257772.5273,
"chainwork": "000000000000000000000000000000000000000000185655621b104558a77160",
"previousblockhash": "000000000000000002538dfef658564662025e0687b0c65c6d5c9d765984ec5a",
"nextblockhash": "0000000000000000005b3caade164fcc5f3f00fd99ddbdb47ee66ea4bbe9387a"
}
]
{% endhighlight %}
*See also*
* [GET Block/NoTxDetails][rest get block-notxdetails] {{summary_restGetBlock-noTxDetails}}
* [GetBlock][rpc getblock] RPC: {{summary_getBlock}}
* [GetBlockHash][rpc getblockhash] RPC: {{summary_getBlockHash}}
* [GET BlockHashByHeight][rest get blockhashbyheight]: {{summary_restGetBlockHashByHeight}}
* [GetBlockHeader][rpc getblockheader] RPC: {{summary_getBlockHeader}}
{% endautocrossref %}

View File

@ -0,0 +1,169 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rest/requests/get_mempool-contents.md" %}
##### GET MemPool/Contents
{% include helpers/subhead-links.md %}
{% assign summary_restGetMemPool-contents="returns all transaction in the memory pool with detailed information." %}
{% autocrossref %}
The `GET mempool/contents` operation {{summary_restGetMemPool-contents}} Supports only `json` as output format.
*Request*
{% highlight text %}
GET /mempool/contents.json
{% endhighlight %}
*Parameters: none*
*Result as JSON*
{% itemplate ntpd1 %}
- n: "`result`"
t: "object"
p: "Required<br>(exactly 1)"
d: "A object containing transactions currently in the memory pool. May be empty"
- n: "→<br>TXID"
t: "string : object"
p: "Optional<br>(0 or more)"
d: "The TXID of a transaction in the memory pool, encoded as hex in RPC byte order"
- n: "→ →<br>`size`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The size of the serialized transaction in bytes"
- n: "→ →<br>`fee`"
t: "number (bitcoins)"
p: "Required<br>(exactly 1)"
d: "The transaction fee paid by the transaction in decimal bitcoins"
- n: "→ →<br>`modifiedfee`"
t: "number (bitcoins)"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.12.0*<br><br>The transaction fee with fee deltas used for mining priority in decimal bitcoins"
- n: "→ →<br>`time`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The time the transaction entered the memory pool, Unix epoch time format"
- n: "→ →<br>`height`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The block height when the transaction entered the memory pool"
- n: "→ →<br>`startingpriority`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The priority of the transaction when it first entered the memory pool"
- n: "→ →<br>`currentpriority`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The current priority of the transaction"
- n: "→ →<br>`descendantcount`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.12.0*<br><br>The number of in-mempool descendant transactions (including this one)"
- n: "→ →<br>`descendantsize`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.12.0*<br><br>The size of in-mempool descendants (including this one)"
- n: "→ →<br>`descendantfees`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.12.0*<br><br>The modified fees (see `modifiedfee` above) of in-mempool descendants (including this one)"
- n: "→ →<br>`ancestorcount`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.13.0*<br><br>The number of in-mempool ancestor transactions (including this one)"
- n: "→ →<br>`ancestorsize`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.13.0*<br><br>The size of in-mempool ancestors (including this one)"
- n: "→ →<br>`ancestorfees`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.13.0*<br><br>The modified fees (see `modifiedfee` above) of in-mempool ancestors (including this one)"
- n: "→ →<br>`depends`"
t: "array"
p: "Required<br>(exactly 1)"
d: "An array holding TXIDs of unconfirmed transactions this transaction depends upon (parent transactions). Those transactions must be part of a block before this transaction can be added to a block, although all transactions may be included in the same block. The array may be empty"
- n: "→ → →<br>Depends TXID"
t: "string"
p: "Optional (0 or more)"
d: "The TXIDs of any unconfirmed transactions this transaction depends upon, encoded as hex in RPC byte order"
{% enditemplate %}
*Examples from Bitcoin Core 0.13.1*
Get all transactions in the memory pool in JSON:
{% highlight bash %}
curl http://localhost:8332/rest/mempool/contents.json
{% endhighlight %}
Result (whitespaced added):
{% highlight json %}
{
"b104586f229e330caf42c475fd52684e9eb5e2d02f0fcd216d9554c5347b0873": {
"size": 485,
"fee": 0.00009700,
"modifiedfee": 0.00009700,
"time": 1479423635,
"height": 439431,
"startingpriority": 15327081.81818182,
"currentpriority": 21536936.36363636,
"descendantcount": 1,
"descendantsize": 485,
"descendantfees": 9700,
"ancestorcount": 1,
"ancestorsize": 485,
"ancestorfees": 9700,
"depends": [
]
},
"094f7dcbc7494510d4daeceb2941ed73b1bd011bf527f6c3b7c897fee85c11d4": {
"size": 554,
"fee": 0.00005540,
"modifiedfee": 0.00005540,
"time": 1479423327,
"height": 439430,
"startingpriority": 85074.91071428571,
"currentpriority": 3497174.4375,
"descendantcount": 1,
"descendantsize": 554,
"descendantfees": 5540,
"ancestorcount": 1,
"ancestorsize": 554,
"ancestorfees": 5540,
"depends": [
]
}
}
{% endhighlight %}
*See also*
* [GET MemPool/Info][rest get mempool-info]: {{summary_restGetMemPool-info}}
* [GetMemPoolInfo][rpc getmempoolinfo] RPC: {{summary_getMemPoolInfo}}
* [GetRawMemPool][rpc getrawmempool] RPC: {{summary_getRawMemPool}}
{% endautocrossref %}

View File

@ -0,0 +1,85 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rest/requests/get_mempool-info.md" %}
##### GET MemPool/Info
{% include helpers/subhead-links.md %}
{% assign summary_restGetMemPool-info="returns information about the node's current transaction memory pool." %}
{% autocrossref %}
The `GET mempool/info` operation {{summary_restGetMemPool-info}} Supports only `json` as output format.
*Request*
{% highlight text %}
GET /mempool/info.json
{% endhighlight %}
*Parameters: none*
*Result as JSON*
{% itemplate ntpd1 %}
- n: "`result`"
t: "object"
p: "Required<br>(exactly 1)"
d: "A object containing information about the memory pool"
- n: "→<br>`size`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The number of transactions currently in the memory pool"
- n: "→<br>`bytes`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The total number of bytes in the transactions in the memory pool"
- n: "→<br>`usage`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.11.0*<br><br>Total memory usage for the mempool in bytes"
- n: "→<br>`maxmempool`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.12.0*<br><br>Maximum memory usage for the mempool in bytes"
- n: "→<br>`mempoolminfee`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "*Added in Bitcoin Core 0.12.0*<br><br>The lowest fee per kilobyte paid by any transaction in the memory pool"
{% enditemplate %}
*Examples from Bitcoin Core 0.13.1*
Get memory pool info in JSON:
{% highlight bash %}
curl http://localhost:8332/rest/mempool/info.json
{% endhighlight %}
Result (whitespaced added):
{% highlight json %}
{
"size": 989,
"bytes": 736919,
"usage": 1970496,
"maxmempool": 300000000,
"mempoolminfee": 0
}
{% endhighlight %}
*See also*
* [GET MemPool/Contents][rest get mempool-contents]: {{summary_restGetMemPool-contents}}
* [GetMemPoolInfo][rpc getmempoolinfo] RPC: {{summary_getMemPoolInfo}}
{% endautocrossref %}

View File

@ -0,0 +1,166 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rest/requests/get_tx.md" %}
##### GET Tx
{% include helpers/subhead-links.md %}
{% assign summary_restGetTx="gets a hex-encoded serialized transaction or a JSON object describing the transaction. By default, Bitcoin Core only stores complete transaction data for UTXOs and your own transactions, so this method may fail on historic transactions unless you use the non-default `txindex=1` in your Bitcoin Core startup settings." %}
{% autocrossref %}
The `GET tx` operation {{summary_restGetTx}}
{{reindexNote}}
*Request*
{% highlight text %}
GET /tx/<txid>.<format>
{% endhighlight %}
*Parameter #1---the TXID of the transaction to retrieve*
{% itemplate ntpd1 %}
- n: "TXID"
t: "path (hex)"
p: "Required<br>(exactly 1)"
d: "The TXID of the transaction to get, encoded as hex in RPC byte order"
{% enditemplate %}
*Parameter #2---the output format*
{% itemplate ntpd1 %}
- n: "Format"
t: "suffix"
p: "Required<br>(exactly 1)"
d: "Set to `.json` for decoded transaction contents in JSON, or `.bin` or `hex` for a serialized transaction in binary or hex"
{% enditemplate %}
*Response as JSON*
{% assign DEPTH="" %}
{% include helpers/vars.md %}
{% itemplate ntpd1 %}
- n: "Result"
t: "object"
p: "Required<br>(exactly 1)"
d: "An object describing the request transaction"
{{INCLUDE_DECODE_RAW_TRANSACTION}}
- n: "→<br>`blockhash`"
t: "string (hex)"
p: "Optional<br>(0 or 1)"
d: "If the transaction has been included in a block on the local best block chain, this is the hash of that block encoded as hex in RPC byte order"
- n: "→<br>`confirmations`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "If the transaction has been included in a block on the local best block chain, this is how many confirmations it has. Otherwise, this is `0`"
- n: "→<br>`time`"
t: "number (int)"
p: "Optional<br>(0 or 1)"
d: "If the transaction has been included in a block on the local best block chain, this is the block header time of that block (may be in the future)"
- n: "→<br>`blocktime`"
t: "number (int)"
p: "Optional<br>(0 or 1)"
d: "This field is currently identical to the time field described above"
{% enditemplate %}
*Examples from Bitcoin Core 0.13.1*
Request a transaction in hex-encoded serialized transaction format:
{% highlight bash %}
curl http://localhost:8332/rest/tx/42f9df54a39026ccb54362141c41713968f19e1f14949ab6609b03ffa4b7f120.hex
{% endhighlight %}
Result (wrapped):
{% highlight text %}
0100000001bf33f5e034d1774f4019c03e119f4fa9e421339271f7476e5e34ff\
72839ebc16000000006b483045022100dab0ade70063cbc5ad44664b707391f8\
ffe6e406b1bab43abfb547d701694d98022067580db89b81c69ba83487ea0a1b\
cb6a325d2903b726980865210d2127de09710121023ee7a6437e9ad2957cd032\
38b9668c15cb1dc6ac9c9d142f829168e1a3e4a9c4feffffff02c88833030000\
00001976a9145f4865d1865127807f714b0ad1ddfae9870866d888ac102697eb\
000000001976a91479e19d5c1cbc1c18f59c57d37ca403f3bcdaa73f88acd0c3\
0600
{% endhighlight %}
Get the same transaction in JSON:
{% highlight bash %}
curl http://localhost:8332/rest/tx/42f9df54a39026ccb54362141c41713968f19e1f14949ab6609b03ffa4b7f120.json
{% endhighlight %}
Result (whitespaced added):
{% highlight json %}
{
"txid": "42f9df54a39026ccb54362141c41713968f19e1f14949ab6609b03ffa4b7f120",
"hash": "42f9df54a39026ccb54362141c41713968f19e1f14949ab6609b03ffa4b7f120",
"size": 226,
"vsize": 226,
"version": 1,
"locktime": 443344,
"vin": [
{
"txid": "16bc9e8372ff345e6e47f771923321e4a94f9f113ec019404f77d134e0f533bf",
"vout": 0,
"scriptSig": {
"asm": "3045022100dab0ade70063cbc5ad44664b707391f8ffe6e406b1bab43abfb547d701694d98022067580db89b81c69ba83487ea0a1bcb6a325d2903b726980865210d2127de0971[ALL] 023ee7a6437e9ad2957cd03238b9668c15cb1dc6ac9c9d142f829168e1a3e4a9c4",
"hex": "483045022100dab0ade70063cbc5ad44664b707391f8ffe6e406b1bab43abfb547d701694d98022067580db89b81c69ba83487ea0a1bcb6a325d2903b726980865210d2127de09710121023ee7a6437e9ad2957cd03238b9668c15cb1dc6ac9c9d142f829168e1a3e4a9c4"
},
"sequence": 4294967294
}
],
"vout": [
{
"value": 0.53709,
"n": 0,
"scriptPubKey": {
"asm": "OP_DUP OP_HASH160 5f4865d1865127807f714b0ad1ddfae9870866d8 OP_EQUALVERIFY OP_CHECKSIG",
"hex": "76a9145f4865d1865127807f714b0ad1ddfae9870866d888ac",
"reqSigs": 1,
"type": "pubkeyhash",
"addresses": [
"19govWMzsRXqLUsUrHQKQ3DzekRxhsqwWH"
]
}
},
{
"value": 39.5255144,
"n": 1,
"scriptPubKey": {
"asm": "OP_DUP OP_HASH160 79e19d5c1cbc1c18f59c57d37ca403f3bcdaa73f OP_EQUALVERIFY OP_CHECKSIG",
"hex": "76a91479e19d5c1cbc1c18f59c57d37ca403f3bcdaa73f88ac",
"reqSigs": 1,
"type": "pubkeyhash",
"addresses": [
"1C7T3CJ6MEYf1YCYYPfN6zuGirqZcD3wuE"
]
}
}
],
"blockhash": "0000000000000000023da07114323ad9676896f354951e6b563d143428b69c03",
"confirmations": 28,
"time": 1481662934,
"blocktime": 1481662934
}
{% endhighlight %}
*See also*
* [GetRawTransaction][rpc getrawtransaction] RPC: {{summary_getRawTransaction}}
* [GetTransaction][rpc gettransaction] RPC: {{summary_getTransaction}}
{% endautocrossref %}

View File

@ -0,0 +1,209 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/intro.md" %}
### Remote Procedure Calls (RPCs)
{% include helpers/subhead-links.md %}
{% autocrossref %}
Bitcoin Core provides a remote procedure call (RPC) interface for various
administrative tasks, wallet operations, and queries about network and block
chain data.
If you start Bitcoin Core using `bitcoin-qt`, the RPC interface is disabled by
default. To enable it, set `server=1` in `bitcoin.conf` or supply the `-server`
argument when invoking the program. If you start Bitcoin Core using `bitcoind`,
the RPC interface is enabled by default.
The interface requires the user to provide a password for authenticating RPC
requests. This password can be set either using the `rpcpassword` property in
`bitcoin.conf` or by supplying the `-rpcpassword` program argument. Optionally a
username can be set using the `rpcuser` configuration value. See the [Examples
Page][devexamples] for more information about setting Bitcoin Core configuration
values.
Open-source client libraries for the RPC interface are readily available in most
modern programming languages, so you probably don't need to write your own from
scratch. Bitcoin Core also ships with its own compiled C++ RPC client,
`bitcoin-cli`, located in the `bin` directory alongside `bitcoind` and
`bitcoin-qt`. The `bitcoin-cli` program can be used as a command-line interface
(CLI) to Bitcoin Core or for making RPC calls from applications written in
languages lacking a suitable native client. The remainder of this section
describes the Bitcoin Core RPC protocol in detail.
The Bitcoin Core RPC service listens for HTTP `POST` requests on port 8332 in
mainnet mode or 18332 in testnet or regtest mode. The port number can be changed
by setting `rpcport` in `bitcoin.conf`. By default the RPC service binds to your
server's [localhost][Localhost] loopback
network<!--noref--> interface so it's not accessible from other servers.
Authentication is implemented using [HTTP basic
authentication][HTTP basic authentication]. RPC
HTTP requests must include a `Content-Type` header set to `text/plain` and a
`Content-Length` header set to the size of the request body.
The format of the request body and response data is based on [version 1.0 of the
JSON-RPC specification][JSON-RPC version 1.0]. Specifically,
the HTTP `POST` data of a request must be a JSON object with the following
format:
| Name | Type | Presence | Description
|----------------------|-----------------|-----------------------------|----------------
| Request | object | Required<br>(exactly 1) | The JSON-RPC<!--noref--> request object
| → <br>`jsonrpc` | number (real) | Optional<br>(0 or 1) | Version indicator for the JSON-RPC<!--noref--> request. Currently ignored by Bitcoin Core.
| → <br>`id` | string | Optional<br>(0 or 1) | An arbitrary string that will be returned with the response. May be omitted or set to an empty string ("")
| → <br>`method` | string | Required<br>(exactly 1) | The RPC method name (e.g. `getblock`). See the RPC section for a list of available methods.
| → <br>`params` | array | Optional<br>(0 or 1) | An array containing positional parameter values for the RPC. May be an empty array or omitted for RPC calls that don't have any required parameters.
| → <br>`params` | object | Optional<br>(0 or 1) | Starting from Bitcoin Core 0.14.0 (replaces the `params` array above) An object containing named parameter values for the RPC. May be an empty object or omitted for RPC calls that don't have any required parameters.
| → → <br>Parameter | *any* | Optional<br>(0 or more) | A parameter. May be any JSON type allowed by the particular RPC method
{:.ntpd}
In the table above and in other tables describing RPC input<!--noref--> and
output<!--noref-->, we use the following conventions
* "→" indicates an argument that is the child of a JSON array or JSON object.
For example, "→ → Parameter" above means Parameter is the child of the
`params` array which itself is a child of the Request object.
* Plain-text names like "Request" are unnamed in the actual JSON object
* Code-style names like `params` are literal strings that appear in the JSON
object.
* "Type" is the JSON data type and the specific Bitcoin Core type.
* "Presence" indicates whether or not a field must be present within its
containing array or object. Note that an optional object may still have
required children.
The HTTP response data for a RPC request is a JSON object with the following
format:
| Name | Type | Presence | Description
|----------------------|-----------------|-----------------------------|----------------
| Response | object | Required<br>(exactly 1) | The JSON-RPC<!--noref--> response object.
| → <br>`result` | *any* | Required<br>(exactly 1) | The RPC output<!--noref--> whose type varies by call. Has value `null` if an error occurred.
| → <br>`error` | null/object | Required<br>(exactly 1) | An object describing the error if one occurred, otherwise `null`.
| → → <br>`code` | number (int) | Required<br>(exactly 1) | The error code returned by the RPC function call. See [rpcprotocol.h][] for a full list of error codes and their meanings.
| → → <br>`message` | string | Required<br>(exactly 1) | A text description of the error. May be an empty string ("").
| → <br>`id` | string | Required<br>(exactly 1) | The value of `id` provided with the request. Has value `null` if the `id` field was omitted in the request.
{:.ntpd}
As an example, here is the JSON-RPC<!--noref--> request object for the hash of
the genesis block:
{% highlight json %}
{
"method": "getblockhash",
"params": [0],
"id": "foo"
}
{% endhighlight %}
The command to send this request using `bitcoin-cli` is:
{% highlight bash %}
bitcoin-cli getblockhash 0
{% endhighlight %}
Alternatively, we could `POST` this request using the cURL command-line program
as follows:
{% highlight bash %}
curl --user ':my_secret_password' --data-binary '''
{
"method": "getblockhash",
"params": [0],
"id": "foo"
}''' \
--header 'Content-Type: text/plain;' localhost:8332
{% endhighlight %}
The HTTP response data for this request would be:
{% highlight json %}
{
"result": "000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f",
"error": null,
"id": "foo"
}
{% endhighlight %}
Note: In order to minimize its size, the raw JSON response from Bitcoin Core
doesn't include any extraneous whitespace characters. Here we've added
whitespace to make the object more readable. Speaking of which, `bitcoin-cli`
also transforms the raw response to make it more human-readable. It:
- Adds whitespace indentation to JSON objects
- Expands escaped newline characters (`\n`) into actual newlines
- Returns only the value of the `result` field if there's no error
- Strips the outer double-quotes around `result`s of type string
- Returns only the `error` field if there's an error
Continuing with the example above, the output<!--noref--> from the `bitcoin-cli`
command would be simply:
{% highlight text %}
000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f
{% endhighlight %}
If there's an error processing a request, Bitcoin Core sets the `result` field
to `null` and provides information about the error in the `error` field. For
example, a request for the block hash at block height -1 would be met with the
following response (again, whitespace added for clarity):
{% highlight json %}
{
"result": null,
"error": {
"code": -8,
"message": "Block height out of range"
},
"id": "foo"
}
{% endhighlight %}
If `bitcoin-cli` encounters an error, it exits with a non-zero status code and
outputs<!--noref--> the `error` field as text to the process's standard error
stream:
{% highlight text %}
error: {"code": -8, "message": "Block height out of range"}
{% endhighlight %}
Starting in Bitcoin Core version 0.7.0, the RPC interface supports request
batching as described in [version 2.0 of the JSON-RPC
specification][JSON-RPC request batching]. To initiate multiple
RPC requests within a single HTTP request, a client can `POST` a JSON array
filled with Request objects. The HTTP response data is then a JSON array filled
with the corresponding Response objects. Depending on your usage pattern,
request batching may provide significant performance gains. The `bitcoin-cli`
RPC client does not support batch requests.
To keep this documentation compact and readable, the examples for each of the
available RPC calls will be given as `bitcoin-cli` commands:
{% highlight text %}
bitcoin-cli [options] <method name> <param1> <param2> ...
{% endhighlight %}
This translates into an JSON-RPC<!--noref--> Request object of the form:
{% highlight json %}
{
"method": "<method name>",
"params": [ "<param1>", "<param2>", "..." ],
"id": "foo"
}
{% endhighlight %}
[{{WARNING}}][proper money handling]{:#term-proper-money-handling}{:.term} if you write
programs using the JSON-RPC interface, you must ensure they handle high-precision
real numbers correctly. See the [Proper Money Handling][wiki proper money handling]
Bitcoin Wiki article for details and example code.
{% endautocrossref %}

View File

@ -0,0 +1,220 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/quick-reference.md" %}
#### Quick Reference {#rpc-quick-reference}
{% include helpers/subhead-links.md %}
<!-- the summaries used below are defined in the files for the
particular RPC and aggregated into this helper file by the makefile
function manual-update-summaries-file. For example, to edit the
summary for GetBestBlockHash, edit
_includes/rpc/getbestblockhash.md and run `make manual-update-summaries`. -->
{% include helpers/summaries.md %}
#### Blockchain RPCs
{:.no_toc}
<!-- no subhead-links here -->
{% autocrossref %}
* [GetBestBlockHash][rpc getbestblockhash]: {{summary_getBestBlockHash}}
* [GetBlock][rpc getblock]: {{summary_getBlock}}
* [GetBlockChainInfo][rpc getblockchaininfo]: {{summary_getBlockChainInfo}}
* [GetBlockCount][rpc getblockcount]: {{summary_getBlockCount}}
* [GetBlockHash][rpc getblockhash]: {{summary_getBlockHash}}
* [GetBlockHeader][rpc getblockheader]: {{summary_getBlockHeader}}
* [GetBlockStats][rpc getblockstats]: {{summary_getBlockStats}}
* [GetChainTips][rpc getchaintips]: {{summary_getChainTips}}
* [GetChainTxStats][rpc getchaintxstats]: {{summary_getChainTxStats}}
* [GetDifficulty][rpc getdifficulty]: {{summary_getDifficulty}}
* [GetMemPoolAncestors][rpc getmempoolancestors]: {{summary_getMemPoolAncestors}}
* [GetMemPoolDescendants][rpc getmempooldescendants]: {{summary_getMemPoolDescendants}}
* [GetMemPoolEntry][rpc getmempoolentry]: {{summary_getMemPoolEntry}}
* [GetMemPoolInfo][rpc getmempoolinfo]: {{summary_getMemPoolInfo}}
* [GetRawMemPool][rpc getrawmempool]: {{summary_getRawMemPool}}
* [GetTxOut][rpc gettxout]: {{summary_getTxOut}}
* [GetTxOutProof][rpc gettxoutproof]: {{summary_getTxOutProof}}
* [GetTxOutSetInfo][rpc gettxoutsetinfo]: {{summary_getTxOutSetInfo}}
* [PreciousBlock][rpc preciousblock]: {{summary_preciousBlock}}
* [PruneBlockChain][rpc pruneblockchain]: {{summary_pruneBlockChain}}
* [SaveMemPool][rpc savemempool]: {{summary_saveMemPool}}
* [ScanTxOutSet][rpc scantxoutset]: {{summary_scanTxOutSet}}
* [VerifyChain][rpc verifychain]: {{summary_verifyChain}}
* [VerifyTxOutProof][rpc verifytxoutproof]: {{summary_verifyTxOutProof}}
{% endautocrossref %}
#### Control RPCs
{:.no_toc}
<!-- no subhead-links here -->
{% autocrossref %}
* [GetMemoryInfo][rpc getmemoryinfo]: {{summary_getMemoryInfo}}
* [GetRpcInfo][rpc getrpcinfo]: {{summary_getRpcInfo}}
* [Help][rpc help]: {{summary_help}}
* [Logging][rpc logging]: {{summary_logging}}
* [Stop][rpc stop]: {{summary_stop}}
* [Uptime][rpc uptime]: {{summary_uptime}}
{% endautocrossref %}
#### Generating RPCs
{:.no_toc}
<!-- no subhead-links here -->
{% autocrossref %}
* [Generate][rpc generate]: {{summary_generate}}
* [GenerateToAddress][rpc generatetoaddress]: {{summary_generateToAddress}}
{% endautocrossref %}
#### Mining RPCs
{:.no_toc}
<!-- no subhead-links here -->
{% autocrossref %}
* [GetBlockTemplate][rpc getblocktemplate]: {{summary_getBlockTemplate}}
* [GetMiningInfo][rpc getmininginfo]: {{summary_getMiningInfo}}
* [GetNetworkHashPs][rpc getnetworkhashps]: {{summary_getNetworkHashPs}}
* [PrioritiseTransaction][rpc prioritisetransaction]: {{summary_prioritiseTransaction}}
* [SubmitBlock][rpc submitblock]: {{summary_submitBlock}}
* [SubmitHeader][rpc submitheader]: {{summary_submitHeader}}
{% endautocrossref %}
#### Network RPCs
{:.no_toc}
<!-- no subhead-links here -->
{% autocrossref %}
* [AddNode][rpc addnode]: {{summary_addNode}}
* [ClearBanned][rpc clearbanned]: {{summary_clearBanned}}
* [DisconnectNode][rpc disconnectnode]: {{summary_disconnectNode}}
* [GetAddedNodeInfo][rpc getaddednodeinfo]: {{summary_getAddedNodeInfo}}
* [GetConnectionCount][rpc getconnectioncount]: {{summary_getConnectionCount}}
* [GetNetTotals][rpc getnettotals]: {{summary_getNetTotals}}
* [GetNetworkInfo][rpc getnetworkinfo]: {{summary_getNetworkInfo}}
* [GetNodeAddresses][rpc getnodeaddresses]: {{summary_getNodeAddresses}}
* [GetPeerInfo][rpc getpeerinfo]: {{summary_getPeerInfo}}
* [ListBanned][rpc listbanned]: {{summary_listBanned}}
* [Ping][rpc ping]: {{summary_ping-rpc}}
* [SetBan][rpc setban]: {{summary_setBan}}
* [SetNetworkActive][rpc setnetworkactive]: {{summary_setNetworkActive}}
{% endautocrossref %}
#### Rawtransactions RPCs
{:.no_toc}
<!-- no subhead-links here -->
{% autocrossref %}
* [AnalyzePsbt][rpc analyzepsbt]: {{summary_analyzePsbt}}
* [CombinePsbt][rpc combinepsbt]: {{summary_combinePsbt}}
* [CombineRawTransaction][rpc combinerawtransaction]: {{summary_combineRawTransaction}}
* [ConvertToPsbt][rpc converttopsbt]: {{summary_convertToPsbt}}
* [CreatePsbt][rpc createpsbt]: {{summary_createPsbt}}
* [CreateRawTransaction][rpc createrawtransaction]: {{summary_createRawTransaction}}
* [DecodePsbt][rpc decodepsbt]: {{summary_decodePsbt}}
* [DecodeRawTransaction][rpc decoderawtransaction]: {{summary_decodeRawTransaction}}
* [DecodeScript][rpc decodescript]: {{summary_decodeScript}}
* [FinalizePsbt][rpc finalizepsbt]: {{summary_finalizePsbt}}
* [FundRawTransaction][rpc fundrawtransaction]: {{summary_fundRawTransaction}}
* [GetRawTransaction][rpc getrawtransaction]: {{summary_getRawTransaction}}
* [JoinPsbts][rpc joinpsbts]: {{summary_joinPsbts}}
* [SendRawTransaction][rpc sendrawtransaction]: {{summary_sendRawTransaction}}
* [SignRawTransactionWithKey][rpc signrawtransactionwithkey]: {{summary_signRawTransactionWithKey}}
* [TestmemPoolAccept][rpc testmempoolaccept]: {{summary_testmemPoolAccept}}
* [UtxoUpdatePsbt][rpc utxoupdatepsbt]: {{summary_utxoUpdatePsbt}}
{% endautocrossref %}
#### Util RPCs
{:.no_toc}
<!-- no subhead-links here -->
{% autocrossref %}
* [CreateMultiSig][rpc createmultisig]: {{summary_createMultiSig}}
* [DeriveAddresses][rpc deriveaddresses]: {{summary_deriveAddresses}}
* [EstimateSmartFee][rpc estimatesmartfee]: {{summary_estimateSmartFee}}
* [GetDescriptorInfo][rpc getdescriptorinfo]: {{summary_getDescriptorInfo}}
* [SignMessageWithPrivKey][rpc signmessagewithprivkey]: {{summary_signMessageWithPrivKey}}
* [ValidateAddress][rpc validateaddress]: {{summary_validateAddress}}
* [VerifyMessage][rpc verifymessage]: {{summary_verifyMessage}}
{% endautocrossref %}
#### Wallet RPCs
{:.no_toc}
<!-- no subhead-links here -->
{% autocrossref %}
**Note:** the wallet RPCs are only available if Bitcoin Core was built
with [wallet support][]{:#term-wallet-support}{:.term}, which is the
default.
* [AbandonTransaction][rpc abandontransaction]: {{summary_abandonTransaction}}
* [AbortRescan][rpc abortrescan]: {{summary_abortRescan}}
* [AddMultiSigAddress][rpc addmultisigaddress]: {{summary_addMultiSigAddress}}
* [BackupWallet][rpc backupwallet]: {{summary_backupWallet}}
* [BumpFee][rpc bumpfee]: {{summary_bumpFee}}
* [CreateWallet][rpc createwallet]: {{summary_createWallet}}
* [DumpPrivKey][rpc dumpprivkey]: {{summary_dumpPrivKey}}
* [DumpWallet][rpc dumpwallet]: {{summary_dumpWallet}}
* [EncryptWallet][rpc encryptwallet]: {{summary_encryptWallet}}
* [GetAddressesByLabel][rpc getaddressesbylabel]: {{summary_getAddressesByLabel}}
* [GetAddressInfo][rpc getaddressinfo]: {{summary_getAddressInfo}}
* [GetBalance][rpc getbalance]: {{summary_getBalance}}
* [GetNewAddress][rpc getnewaddress]: {{summary_getNewAddress}}
* [GetRawChangeAddress][rpc getrawchangeaddress]: {{summary_getRawChangeAddress}}
* [GetReceivedByAddress][rpc getreceivedbyaddress]: {{summary_getReceivedByAddress}}
* [GetReceivedByLabel][rpc getreceivedbylabel]: {{summary_getReceivedByLabel}}
* [GetTransaction][rpc gettransaction]: {{summary_getTransaction}}
* [GetUnconfirmedBalance][rpc getunconfirmedbalance]: {{summary_getUnconfirmedBalance}}
* [GetWalletInfo][rpc getwalletinfo]: {{summary_getWalletInfo}}
* [ImportAddress][rpc importaddress]: {{summary_importAddress}}
* [ImportMulti][rpc importmulti]: {{summary_importMulti}}
* [ImportPrivKey][rpc importprivkey]: {{summary_importPrivKey}}
* [ImportPrunedFunds][rpc importprunedfunds]: {{summary_importPrunedFunds}}
* [ImportPubKey][rpc importpubkey]: {{summary_importPubKey}}
* [ImportWallet][rpc importwallet]: {{summary_importWallet}}
* [KeyPoolRefill][rpc keypoolrefill]: {{summary_keyPoolRefill}}
* [ListAddressGroupings][rpc listaddressgroupings]: {{summary_listAddressGroupings}}
* [ListLabels][rpc listlabels]: {{summary_listLabels}}
* [ListLockUnspent][rpc listlockunspent]: {{summary_listLockUnspent}}
* [ListReceivedByAddress][rpc listreceivedbyaddress]: {{summary_listReceivedByAddress}}
* [ListReceivedByLabel][rpc listreceivedbylabel]: {{summary_listReceivedByLabel}}
* [ListSinceBlock][rpc listsinceblock]: {{summary_listSinceBlock}}
* [ListTransactions][rpc listtransactions]: {{summary_listTransactions}}
* [ListUnspent][rpc listunspent]: {{summary_listUnspent}}
* [ListWalletDir][rpc listwalletdir]: {{summary_listWalletDir}}
* [ListWallets][rpc listwallets]: {{summary_listWallets}}
* [LoadWallet][rpc loadwallet]: {{summary_loadWallet}}
* [LockUnspent][rpc lockunspent]: {{summary_lockUnspent}}
* [RemovePrunedFunds][rpc removeprunedfunds]: {{summary_removePrunedFunds}}
* [RescanBlockChain][rpc rescanblockchain]: {{summary_rescanBlockChain}}
* [SendMany][rpc sendmany]: {{summary_sendMany}}
* [SendToAddress][rpc sendtoaddress]: {{summary_sendToAddress}}
* [SetHdSeed][rpc sethdseed]: {{summary_setHdSeed}}
* [SetLabel][rpc setlabel]: {{summary_setLabel}}
* [SetTxFee][rpc settxfee]: {{summary_setTxFee}}
* [SignMessage][rpc signmessage]: {{summary_signMessage}}
* [SignRawTransactionWithWallet][rpc signrawtransactionwithwallet]: {{summary_signRawTransactionWithWallet}}
* [UnloadWallet][rpc unloadwallet]: {{summary_unloadWallet}}
* [WalletCreatefundedPsbt][rpc walletcreatefundedpsbt]: {{summary_walletCreatefundedPsbt}}
* [WalletLock][rpc walletlock]: {{summary_walletLock}}
* [WalletPassphrase][rpc walletpassphrase]: {{summary_walletPassphrase}}
* [WalletPassphraseChange][rpc walletpassphrasechange]: {{summary_walletPassphraseChange}}
* [WalletProcessPsbt][rpc walletprocesspsbt]: {{summary_walletProcessPsbt}}
{% endautocrossref %}

View File

@ -0,0 +1,56 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/abandontransaction.md" %}
##### AbandonTransaction
{% include helpers/subhead-links.md %}
{% assign summary_abandonTransaction="marks an in-wallet transaction and all its in-wallet descendants as abandoned. This allows their inputs to be respent." %}
{% autocrossref %}
*Added in Bitcoin Core 0.12.0*
The `abandontransaction` RPC {{summary_abandonTransaction}}
Mark in-wallet transaction <txid> as abandoned
This will mark this transaction and all its in-wallet descendants as abandoned which will allow
for their inputs to be respent. It can be used to replace "stuck" or evicted transactions.
It only works on transactions which are not included in a block and are not currently in the mempool.
It has no effect on transactions which are already abandoned.
*Parameter #1---txid*
{% itemplate ntpd1 %}
- n: "txid"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The transaction id"
{% enditemplate %}
*Result---`null` on success*
{% itemplate ntpd1 %}
- n: "`result`"
t: "null"
p: "Required<br>(exactly 1)"
d: "JSON `null` when the command was successfull or a JSON with an error field on error."
{% enditemplate %}
*Example*
{% highlight bash %}
bitcoin-cli abandontransaction "1075db55d416d3ca199f55b6084e2115b9345e16c5cf302fc80e9d5fbf5d48d"
{% endhighlight %}
*See also*
* [SendRawTransaction][rpc sendrawtransaction]: {{summary_sendRawTransaction}}
{% endautocrossref %}

View File

@ -0,0 +1,43 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/abortrescan.md" %}
##### AbortRescan
{% include helpers/subhead-links.md %}
{% assign summary_abortRescan="Stops current wallet rescan" %}
{% autocrossref %}
The `abortrescan` RPC {{summary_abortRescan}}
Stops current wallet rescan triggered by an RPC call, e.g. by an importprivkey call.
*Parameters: none*
*Result---`null` on success*
{% itemplate ntpd1 %}
- n: "`result`"
t: "null"
p: "Required<br>(exactly 1)"
d: "JSON `null` when the command was successfull or a JSON with an error field on error."
{% enditemplate %}
*Example*
Import a private key
{% highlight bash %}
bitcoin-cli importprivkey "mykey"
{% endhighlight %}
Abort the running wallet rescan
{% highlight bash %}
bitcoin-cli abortrescan
{% endhighlight %}
{% endautocrossref %}

View File

@ -0,0 +1,102 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/addmultisigaddress.md" %}
##### AddMultiSigAddress
{% include helpers/subhead-links.md %}
{% assign summary_addMultiSigAddress="adds a P2SH multisig address to the wallet." %}
{% autocrossref %}
*Requires wallet support.*
The `addmultisigaddress` RPC {{summary_addMultiSigAddress}}
Add a nrequired-to-sign multisignature address to the wallet. Requires a new wallet backup.
Each key is a Bitcoin address or hex-encoded public key.
This functionality is only intended for use with non-watchonly addresses.
See `importaddress` for watchonly p2sh address support.
If 'label' is specified, assign address to that label.
*Parameter #1---nrequired*
{% itemplate ntpd1 %}
- n: "nrequired"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The number of required signatures out of the n keys or addresses."
{% enditemplate %}
*Parameter #2---keys*
{% itemplate ntpd1 %}
- n: "keys"
t: "json array"
p: "Required<br>(exactly 1)"
d: "A json array of bitcoin addresses or hex-encoded public keys"
{% enditemplate %}
{% endautocrossref %}
[
"key", (string) bitcoin address or hex-encoded public key
...
]
{% autocrossref %}
*Parameter #3---label*
{% itemplate ntpd1 %}
- n: "label"
t: "string"
p: "Optional"
d: "A label to assign the addresses to."
{% enditemplate %}
*Parameter #4---address_type*
{% itemplate ntpd1 %}
- n: "address_type"
t: "string"
p: "Optional<br>Default=set by -addresstype"
d: "The address type to use. Options are \"legacy\", \"p2sh-segwit\", and \"bech32\"."
{% enditemplate %}
*Result*
{% endautocrossref %}
{
"address":"multisigaddress", (string) The value of the new multisig address.
"redeemScript":"script" (string) The string value of the hex-encoded redemption script.
}
{% autocrossref %}
*Example*
Add a multisig address from 2 addresses
{% highlight bash %}
bitcoin-cli addmultisigaddress 2 "[\"16sSauSf5pF2UkUwvKGq4qjNRzBZYqgEL5\",\"171sgjn4YtPu27adkKGrdDwzRTxnRkBfKV\"]"
{% endhighlight %}
*See also*
* [CreateMultiSig][rpc createmultisig]: {{summary_createMultiSig}}
* [DecodeScript][rpc decodescript]: {{summary_decodeScript}}
* [Pay-To-Script-Hash (P2SH)][/en/glossary/p2sh-address]
{% endautocrossref %}

View File

@ -0,0 +1,61 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/addnode.md" %}
##### AddNode
{% include helpers/subhead-links.md %}
{% assign summary_addNode="attempts to add or remove a node from the addnode list." %}
{% autocrossref %}
The `addnode` RPC {{summary_addNode}}
Or try a connection to a node once.
Nodes added using addnode (or -connect) are protected from DoS disconnection and are not required to be
full nodes/support SegWit as other outbound peers are (though such peers will not be synced from).
*Parameter #1---node*
{% itemplate ntpd1 %}
- n: "node"
t: "string"
p: "Required<br>(exactly 1)"
d: "The node (see getpeerinfo for nodes). The node to add as a string in the form of `<IP address>:<port>`. The IP address may be a hostname resolvable through DNS, an IPv4 address, an IPv4-as-IPv6 address, or an IPv6 address"
{% enditemplate %}
*Parameter #2---command*
{% itemplate ntpd1 %}
- n: "command"
t: "string"
p: "Required<br>(exactly 1)"
d: "'add' to add a node to the list, 'remove' to remove a node from the list, 'onetry' to try a connection to the node once. What to do with the IP address above. Options are:<br>`add` to add a node to the addnode list. Up to 8 nodes can be added additional to the default 8 nodes. Not limited by `-maxconnections`<br>`remove` to remove a node from the list. If currently connected, this will disconnect immediately<br>`onetry` to immediately attempt connection to the node even if the outgoing connection slots are full; this will only attempt the connection once"
{% enditemplate %}
*Result---`null` on success*
{% itemplate ntpd1 %}
- n: "`result`"
t: "null"
p: "Required<br>(exactly 1)"
d: "JSON `null` when the command was successfull or a JSON with an error field on error."
{% enditemplate %}
*Example*
{% highlight bash %}
bitcoin-cli addnode "192.168.0.6:8333" "onetry"
{% endhighlight %}
*See also*
* [GetAddedNodeInfo][rpc getaddednodeinfo]: {{summary_getAddedNodeInfo}}
{% endautocrossref %}

View File

@ -0,0 +1,65 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/analyzepsbt.md" %}
##### AnalyzePsbt
{% include helpers/subhead-links.md %}
{% assign summary_analyzePsbt="analyzes and provides information about the current status of a PSBT and its inputs." %}
{% autocrossref %}
*Added in Bitcoin Core 0.18.0*
The `analyzepsbt` RPC {{summary_analyzePsbt}}
*Parameter #1---psbt*
{% itemplate ntpd1 %}
- n: "psbt"
t: "string"
p: "Required<br>(exactly 1)"
d: "A base64 string of a PSBT"
{% enditemplate %}
*Result*
{% endautocrossref %}
{
"inputs" : [ (array of json objects)
{
"has_utxo" : true|false (boolean) Whether a UTXO is provided
"is_final" : true|false (boolean) Whether the input is finalized
"missing" : { (json object, optional) Things that are missing that are required to complete this input
"pubkeys" : [ (array, optional)
"keyid" (string) Public key ID, hash160 of the public key, of a public key whose BIP 32 derivation path is missing
]
"signatures" : [ (array, optional)
"keyid" (string) Public key ID, hash160 of the public key, of a public key whose signature is missing
]
"redeemscript" : "hash" (string, optional) Hash160 of the redeemScript that is missing
"witnessscript" : "hash" (string, optional) SHA256 of the witnessScript that is missing
}
"next" : "role" (string, optional) Role of the next person that this input needs to go to
}
,...
]
"estimated_vsize" : vsize (numeric, optional) Estimated vsize of the final signed transaction
"estimated_feerate" : feerate (numeric, optional) Estimated feerate of the final signed transaction in BTC/kB. Shown only if all UTXO slots in the PSBT have been filled.
"fee" : fee (numeric, optional) The transaction fee paid. Shown only if all UTXO slots in the PSBT have been filled.
"next" : "role" (string) Role of the next person that this psbt needs to go to
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli analyzepsbt "psbt"
{% endhighlight %}
{% endautocrossref %}

View File

@ -0,0 +1,49 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/backupwallet.md" %}
##### BackupWallet
{% include helpers/subhead-links.md %}
{% assign summary_backupWallet="safely copies current wallet file to destination, which can be a directory or a path with filename." %}
{% autocrossref %}
*Requires wallet support.*
The `backupwallet` RPC {{summary_backupWallet}}
*Parameter #1---destination*
{% itemplate ntpd1 %}
- n: "destination"
t: "string"
p: "Required<br>(exactly 1)"
d: "The destination directory or file"
{% enditemplate %}
*Result---`null` on success*
{% itemplate ntpd1 %}
- n: "`result`"
t: "null"
p: "Required<br>(exactly 1)"
d: "JSON `null` when the command was successfull or a JSON with an error field on error."
{% enditemplate %}
*Example*
{% highlight bash %}
bitcoin-cli backupwallet "backup.dat"
{% endhighlight %}
*See also*
* [DumpWallet][rpc dumpwallet]: {{summary_dumpWallet}}
* [ImportWallet][rpc importwallet]: {{summary_importWallet}}
{% endautocrossref %}

View File

@ -0,0 +1,105 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/bumpfee.md" %}
##### BumpFee
{% include helpers/subhead-links.md %}
{% assign summary_bumpFee="bumps the fee of an opt-in-RBF transaction T, replacing it with a new transaction B." %}
{% autocrossref %}
*Added in Bitcoin Core 0.14.0*
The `bumpfee` RPC {{summary_bumpFee}}
An opt-in RBF transaction with the given txid must be in the wallet.
The command will pay the additional fee by decreasing (or perhaps removing) its change output.
If the change output is not big enough to cover the increased fee, the command will currently fail
instead of adding new inputs to compensate. (A future implementation could improve this.)
The command will fail if the wallet or mempool contains a transaction that spends one of T's outputs.
By default, the new fee will be calculated automatically using estimatesmartfee.
The user can specify a confirmation target for estimatesmartfee.
Alternatively, the user can specify totalFee, or use RPC settxfee to set a higher fee rate.
At a minimum, the new fee rate must be high enough to pay an additional new relay fee (incrementalfee
returned by getnetworkinfo) to enter the node's mempool.
*Parameter #1---txid*
{% itemplate ntpd1 %}
- n: "txid"
t: "string"
p: "Required<br>(exactly 1)"
d: "The txid to be bumped"
{% enditemplate %}
*Parameter #2---options*
{% itemplate ntpd1 %}
- n: "options"
t: "json object"
p: "Optional"
d: ""
{% enditemplate %}
{% endautocrossref %}
{
"confTarget": n, (numeric, optional, default=fallback to wallet's default) Confirmation target (in blocks)
"totalFee": n, (numeric, optional, default=fallback to 'confTarget') Total fee (NOT feerate) to pay, in satoshis.
In rare cases, the actual fee paid might be slightly higher than the specified
totalFee if the tx change output has to be removed because it is too close to
the dust threshold.
"replaceable": bool, (boolean, optional, default=true) Whether the new transaction should still be
marked bip-125 replaceable. If true, the sequence numbers in the transaction will
be left unchanged from the original. If false, any input sequence numbers in the
original transaction that were less than 0xfffffffe will be increased to 0xfffffffe
so the new transaction will not be explicitly bip-125 replaceable (though it may
still be replaceable in practice, for example if it has unconfirmed ancestors which
are replaceable).
"estimate_mode": "str", (string, optional, default=UNSET) The fee estimate mode, must be one of:
"UNSET"
"ECONOMICAL"
"CONSERVATIVE"
}
{% autocrossref %}
*Result*
{% endautocrossref %}
{
"txid": "value", (string) The id of the new transaction
"origfee": n, (numeric) Fee of the replaced transaction
"fee": n, (numeric) Fee of the new transaction
"errors": [ str... ] (json array of strings) Errors encountered during processing (may be empty)
}
{% autocrossref %}
*Example*
Bump the fee, get the new transaction's txid
{% highlight bash %}
bitcoin-cli bumpfee <txid>
{% endhighlight %}
*See also*
* [CreateRawTransaction][rpc createrawtransaction]: {{summary_createRawTransaction}}
* [FundRawTransaction][rpc fundrawtransaction]: {{summary_fundRawTransaction}}
* [SendRawTransaction][rpc sendrawtransaction]: {{summary_sendRawTransaction}}
{% endautocrossref %}

View File

@ -0,0 +1,41 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/clearbanned.md" %}
##### ClearBanned
{% include helpers/subhead-links.md %}
{% assign summary_clearBanned="clear all banned IPs." %}
{% autocrossref %}
*Added in Bitcoin Core 0.12.0*
The `clearbanned` RPC {{summary_clearBanned}}
*Parameters: none*
*Result---`null` on success*
{% itemplate ntpd1 %}
- n: "`result`"
t: "null"
p: "Required<br>(exactly 1)"
d: "JSON `null` when the command was successfull or a JSON with an error field on error."
{% enditemplate %}
*Example*
{% highlight bash %}
bitcoin-cli clearbanned
{% endhighlight %}
*See also*
* [ListBanned][rpc listbanned]: {{summary_listBanned}}
* [SetBan][rpc setban]: {{summary_setBan}}
{% endautocrossref %}

View File

@ -0,0 +1,53 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/combinepsbt.md" %}
##### CombinePsbt
{% include helpers/subhead-links.md %}
{% assign summary_combinePsbt="combine multiple partially signed Bitcoin transactions into one transaction." %}
{% autocrossref %}
The `combinepsbt` RPC {{summary_combinePsbt}}
Implements the Combiner role.
*Parameter #1---txs*
{% itemplate ntpd1 %}
- n: "txs"
t: "json array"
p: "Required<br>(exactly 1)"
d: "A json array of base64 strings of partially signed transactions"
{% enditemplate %}
{% endautocrossref %}
[
"psbt", (string) A base64 string of a PSBT
...
]
{% autocrossref %}
*Result---`null` on success*
{% itemplate ntpd1 %}
- n: "`result`"
t: "null"
p: "Required<br>(exactly 1)"
d: "JSON `null` when the command was successfull or a JSON with an error field on error."
{% enditemplate %}
*Example*
{% highlight bash %}
bitcoin-cli combinepsbt ["mybase64_1", "mybase64_2", "mybase64_3"]
{% endhighlight %}
{% endautocrossref %}

View File

@ -0,0 +1,54 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/combinerawtransaction.md" %}
##### CombineRawTransaction
{% include helpers/subhead-links.md %}
{% assign summary_combineRawTransaction="combine multiple partially signed transactions into one transaction." %}
{% autocrossref %}
The `combinerawtransaction` RPC {{summary_combineRawTransaction}}
The combined transaction may be another partially signed transaction or a
fully signed transaction.
*Parameter #1---txs*
{% itemplate ntpd1 %}
- n: "txs"
t: "json array"
p: "Required<br>(exactly 1)"
d: "A json array of hex strings of partially signed transactions"
{% enditemplate %}
{% endautocrossref %}
[
"hexstring", (string) A transaction hash
...
]
{% autocrossref %}
*Result*
{% itemplate ntpd1 %}
- n: "`result`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The hex-encoded raw transaction with signature(s)"
{% enditemplate %}
*Example*
{% highlight bash %}
bitcoin-cli combinerawtransaction ["myhex1", "myhex2", "myhex3"]
{% endhighlight %}
{% endautocrossref %}

View File

@ -0,0 +1,76 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/converttopsbt.md" %}
##### ConvertToPsbt
{% include helpers/subhead-links.md %}
{% assign summary_convertToPsbt="converts a network serialized transaction to a PSBT." %}
{% autocrossref %}
The `converttopsbt` RPC {{summary_convertToPsbt}}
This should be used only with createrawtransaction and fundrawtransaction
createpsbt and walletcreatefundedpsbt should be used for new applications.
*Parameter #1---hexstring*
{% itemplate ntpd1 %}
- n: "hexstring"
t: "string"
p: "Required<br>(exactly 1)"
d: "The hex string of a raw transaction"
{% enditemplate %}
*Parameter #2---permitsigdata*
{% itemplate ntpd1 %}
- n: "permitsigdata"
t: "boolean"
p: "Optional<br>Default=false"
d: "If true, any signatures in the input will be discarded and conversion.
will continue. If false, RPC will fail if any signatures are present."
{% enditemplate %}
*Parameter #3---iswitness*
{% itemplate ntpd1 %}
- n: "iswitness"
t: "boolean"
p: "Optional<br>Default=depends on heuristic tests"
d: "Whether the transaction hex is a serialized witness transaction.
If iswitness is not present, heuristic tests will be used in decoding. If true, only witness deserializaion
will be tried. If false, only non-witness deserialization will be tried. Only has an effect if
permitsigdata is true."
{% enditemplate %}
*Result---`null` on success*
{% itemplate ntpd1 %}
- n: "`result`"
t: "null"
p: "Required<br>(exactly 1)"
d: "JSON `null` when the command was successfull or a JSON with an error field on error."
{% enditemplate %}
*Example*
Create a transaction
{% highlight bash %}
bitcoin-cli createrawtransaction "[{\"txid\":\"myid\",\"vout\":0}]" "[{\"data\":\"00010203\"}]"
{% endhighlight %}
Convert the transaction to a PSBT
{% highlight bash %}
bitcoin-cli converttopsbt "rawtransaction"
{% endhighlight %}
{% endautocrossref %}

View File

@ -0,0 +1,81 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/createmultisig.md" %}
##### CreateMultiSig
{% include helpers/subhead-links.md %}
{% assign summary_createMultiSig="creates a multi-signature address with n signature of m keys required." %}
{% autocrossref %}
The `createmultisig` RPC {{summary_createMultiSig}}
It returns a json object with the address and redeemScript.
*Parameter #1---nrequired*
{% itemplate ntpd1 %}
- n: "nrequired"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The number of required signatures out of the n keys."
{% enditemplate %}
*Parameter #2---keys*
{% itemplate ntpd1 %}
- n: "keys"
t: "json array"
p: "Required<br>(exactly 1)"
d: "A json array of hex-encoded public keys."
{% enditemplate %}
{% endautocrossref %}
[
"key", (string) The hex-encoded public key
...
]
{% autocrossref %}
*Parameter #3---address_type*
{% itemplate ntpd1 %}
- n: "address_type"
t: "string"
p: "Optional<br>Default=legacy"
d: "The address type to use. Options are \"legacy\", \"p2sh-segwit\", and \"bech32\"."
{% enditemplate %}
*Result*
{% endautocrossref %}
{
"address":"multisigaddress", (string) The value of the new multisig address.
"redeemScript":"script" (string) The string value of the hex-encoded redemption script.
}
{% autocrossref %}
*Example*
Create a multisig address from 2 public keys
{% highlight bash %}
bitcoin-cli createmultisig 2 "[\"03789ed0bb717d88f7d321a368d905e7430207ebbd82bd342cf11ae157a7ace5fd\",\"03dbc6764b8884a92e871274b87583e6d5c2a58819473e17e107ef3f6aa5a61626\"]"
{% endhighlight %}
*See also*
* [AddMultiSigAddress][rpc addmultisigaddress]: {{summary_addMultiSigAddress}}
* [DecodeScript][rpc decodescript]: {{summary_decodeScript}}
{% endautocrossref %}

View File

@ -0,0 +1,105 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/createpsbt.md" %}
##### CreatePsbt
{% include helpers/subhead-links.md %}
{% assign summary_createPsbt="creates a transaction in the Partially Signed Transaction format." %}
{% autocrossref %}
The `createpsbt` RPC {{summary_createPsbt}}
Implements the Creator role.
*Parameter #1---inputs*
{% itemplate ntpd1 %}
- n: "inputs"
t: "json array"
p: "Required<br>(exactly 1)"
d: "A json array of json objects"
{% enditemplate %}
{% endautocrossref %}
[
{ (json object)
"txid": "hex", (string, required) The transaction id
"vout": n, (numeric, required) The output number
"sequence": n, (numeric, optional, default=depends on the value of the 'replaceable' and 'locktime' arguments) The sequence number
},
...
]
{% autocrossref %}
*Parameter #2---outputs*
{% itemplate ntpd1 %}
- n: "outputs"
t: "json array"
p: "Required<br>(exactly 1)"
d: "a json array with outputs (key-value pairs), where none of the keys are duplicated.
That is, each address can only appear once and there can only be one 'data' object.
For compatibility reasons, a dictionary, which holds the key-value pairs directly, is also
accepted as second parameter."
{% enditemplate %}
{% endautocrossref %}
[
{ (json object)
"address": amount, (numeric or string, required) A key-value pair. The key (string) is the bitcoin address, the value (float or string) is the amount in BTC
},
{ (json object)
"data": "hex", (string, required) A key-value pair. The key must be "data", the value is hex-encoded data
},
...
]
{% autocrossref %}
*Parameter #3---locktime*
{% itemplate ntpd1 %}
- n: "locktime"
t: "number (int)"
p: "Optional<br>Default=0"
d: "Raw locktime. Non-0 value also locktime-activates inputs"
{% enditemplate %}
*Parameter #4---replaceable*
{% itemplate ntpd1 %}
- n: "replaceable"
t: "boolean"
p: "Optional<br>Default=false"
d: "Marks this transaction as BIP125 replaceable.
Allows this transaction to be replaced by a transaction with higher fees. If provided, it is an error if explicit sequence numbers are incompatible."
{% enditemplate %}
*Result---`null` on success*
{% itemplate ntpd1 %}
- n: "`result`"
t: "null"
p: "Required<br>(exactly 1)"
d: "JSON `null` when the command was successfull or a JSON with an error field on error."
{% enditemplate %}
*Example*
{% highlight bash %}
bitcoin-cli createpsbt "[{\"txid\":\"myid\",\"vout\":0}]" "[{\"data\":\"00010203\"}]"
{% endhighlight %}
{% endautocrossref %}

View File

@ -0,0 +1,118 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/createrawtransaction.md" %}
##### CreateRawTransaction
{% include helpers/subhead-links.md %}
{% assign summary_createRawTransaction="create a transaction spending the given inputs and creating new outputs." %}
{% autocrossref %}
The `createrawtransaction` RPC {{summary_createRawTransaction}}
Outputs can be addresses or data.
Returns hex-encoded raw transaction.
Note that the transaction's inputs are not signed, and
it is not stored in the wallet or transmitted to the network.
*Parameter #1---inputs*
{% itemplate ntpd1 %}
- n: "inputs"
t: "json array"
p: "Required<br>(exactly 1)"
d: "A json array of json objects"
{% enditemplate %}
{% endautocrossref %}
[
{ (json object)
"txid": "hex", (string, required) The transaction id
"vout": n, (numeric, required) The output number
"sequence": n, (numeric, optional, default=depends on the value of the 'replaceable' and 'locktime' arguments) The sequence number
},
...
]
{% autocrossref %}
*Parameter #2---outputs*
{% itemplate ntpd1 %}
- n: "outputs"
t: "json array"
p: "Required<br>(exactly 1)"
d: "a json array with outputs (key-value pairs), where none of the keys are duplicated.
That is, each address can only appear once and there can only be one 'data' object.
For compatibility reasons, a dictionary, which holds the key-value pairs directly, is also
accepted as second parameter."
{% enditemplate %}
{% endautocrossref %}
[
{ (json object)
"address": amount, (numeric or string, required) A key-value pair. The key (string) is the bitcoin address, the value (float or string) is the amount in BTC
},
{ (json object)
"data": "hex", (string, required) A key-value pair. The key must be "data", the value is hex-encoded data
},
...
]
{% autocrossref %}
*Parameter #3---locktime*
{% itemplate ntpd1 %}
- n: "locktime"
t: "number (int)"
p: "Optional<br>Default=0"
d: "Raw locktime. Non-0 value also locktime-activates inputs"
{% enditemplate %}
*Parameter #4---replaceable*
{% itemplate ntpd1 %}
- n: "replaceable"
t: "boolean"
p: "Optional<br>Default=false"
d: "Marks this transaction as BIP125-replaceable.
Allows this transaction to be replaced by a transaction with higher fees. If provided, it is an error if explicit sequence numbers are incompatible."
{% enditemplate %}
*Result*
{% itemplate ntpd1 %}
- n: "`result`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "hex string of the transaction"
{% enditemplate %}
*Example*
{% highlight bash %}
bitcoin-cli createrawtransaction "[{\"txid\":\"myid\",\"vout\":0}]" "[{\"address\":0.01}]"
{% endhighlight %}
{% highlight bash %}
bitcoin-cli createrawtransaction "[{\"txid\":\"myid\",\"vout\":0}]" "[{\"data\":\"00010203\"}]"
{% endhighlight %}
*See also*
* [DecodeRawTransaction][rpc decoderawtransaction]: {{summary_decodeRawTransaction}}
* [SendRawTransaction][rpc sendrawtransaction]: {{summary_sendRawTransaction}}
{% endautocrossref %}

View File

@ -0,0 +1,63 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/createwallet.md" %}
##### CreateWallet
{% include helpers/subhead-links.md %}
{% assign summary_createWallet="creates and loads a new wallet." %}
{% autocrossref %}
The `createwallet` RPC {{summary_createWallet}}
*Parameter #1---wallet_name*
{% itemplate ntpd1 %}
- n: "wallet_name"
t: "string"
p: "Required<br>(exactly 1)"
d: "The name for the new wallet. If this is a path, the wallet will be created at the path location."
{% enditemplate %}
*Parameter #2---disable_private_keys*
{% itemplate ntpd1 %}
- n: "disable_private_keys"
t: "boolean"
p: "Optional<br>Default=false"
d: "Disable the possibility of private keys (only watchonlys are possible in this mode)."
{% enditemplate %}
*Parameter #3---blank*
{% itemplate ntpd1 %}
- n: "blank"
t: "boolean"
p: "Optional<br>Default=false"
d: "Create a blank wallet. A blank wallet has no keys or HD seed. One can be set using sethdseed."
{% enditemplate %}
*Result*
{% endautocrossref %}
{
"name" : <wallet_name>, (string) The wallet name if created successfully. If the wallet was created using a full path, the wallet_name will be the full path.
"warning" : <warning>, (string) Warning message if wallet was not loaded cleanly.
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli createwallet "testwallet"
{% endhighlight %}
{% endautocrossref %}

View File

@ -0,0 +1,125 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/decodepsbt.md" %}
##### DecodePsbt
{% include helpers/subhead-links.md %}
{% assign summary_decodePsbt="return a JSON object representing the serialized, base64-encoded partially signed Bitcoin transaction." %}
{% autocrossref %}
The `decodepsbt` RPC {{summary_decodePsbt}}
*Parameter #1---psbt*
{% itemplate ntpd1 %}
- n: "psbt"
t: "string"
p: "Required<br>(exactly 1)"
d: "The PSBT base64 string"
{% enditemplate %}
*Result*
{% endautocrossref %}
{
"tx" : { (json object) The decoded network-serialized unsigned transaction.
... The layout is the same as the output of decoderawtransaction.
},
"unknown" : { (json object) The unknown global fields
"key" : "value" (key-value pair) An unknown key-value pair
...
},
"inputs" : [ (array of json objects)
{
"non_witness_utxo" : { (json object, optional) Decoded network transaction for non-witness UTXOs
...
},
"witness_utxo" : { (json object, optional) Transaction output for witness UTXOs
"amount" : x.xxx, (numeric) The value in BTC
"scriptPubKey" : { (json object)
"asm" : "asm", (string) The asm
"hex" : "hex", (string) The hex
"type" : "pubkeyhash", (string) The type, eg 'pubkeyhash'
"address" : "address" (string) Bitcoin address if there is one
}
},
"partial_signatures" : { (json object, optional)
"pubkey" : "signature", (string) The public key and signature that corresponds to it.
,...
}
"sighash" : "type", (string, optional) The sighash type to be used
"redeem_script" : { (json object, optional)
"asm" : "asm", (string) The asm
"hex" : "hex", (string) The hex
"type" : "pubkeyhash", (string) The type, eg 'pubkeyhash'
}
"witness_script" : { (json object, optional)
"asm" : "asm", (string) The asm
"hex" : "hex", (string) The hex
"type" : "pubkeyhash", (string) The type, eg 'pubkeyhash'
}
"bip32_derivs" : { (json object, optional)
"pubkey" : { (json object, optional) The public key with the derivation path as the value.
"master_fingerprint" : "fingerprint" (string) The fingerprint of the master key
"path" : "path", (string) The path
}
,...
}
"final_scriptsig" : { (json object, optional)
"asm" : "asm", (string) The asm
"hex" : "hex", (string) The hex
}
"final_scriptwitness": ["hex", ...] (array of string) hex-encoded witness data (if any)
"unknown" : { (json object) The unknown global fields
"key" : "value" (key-value pair) An unknown key-value pair
...
},
}
,...
]
"outputs" : [ (array of json objects)
{
"redeem_script" : { (json object, optional)
"asm" : "asm", (string) The asm
"hex" : "hex", (string) The hex
"type" : "pubkeyhash", (string) The type, eg 'pubkeyhash'
}
"witness_script" : { (json object, optional)
"asm" : "asm", (string) The asm
"hex" : "hex", (string) The hex
"type" : "pubkeyhash", (string) The type, eg 'pubkeyhash'
}
"bip32_derivs" : [ (array of json objects, optional)
{
"pubkey" : "pubkey", (string) The public key this path corresponds to
"master_fingerprint" : "fingerprint" (string) The fingerprint of the master key
"path" : "path", (string) The path
}
}
,...
],
"unknown" : { (json object) The unknown global fields
"key" : "value" (key-value pair) An unknown key-value pair
...
},
}
,...
]
"fee" : fee (numeric, optional) The transaction fee paid if all UTXOs slots in the PSBT have been filled.
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli decodepsbt "psbt"
{% endhighlight %}
{% endautocrossref %}

View File

@ -0,0 +1,94 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/decoderawtransaction.md" %}
##### DecodeRawTransaction
{% include helpers/subhead-links.md %}
{% assign summary_decodeRawTransaction="return a JSON object representing the serialized, hex-encoded transaction." %}
{% autocrossref %}
The `decoderawtransaction` RPC {{summary_decodeRawTransaction}}
*Parameter #1---hexstring*
{% itemplate ntpd1 %}
- n: "hexstring"
t: "string"
p: "Required<br>(exactly 1)"
d: "The transaction hex string"
{% enditemplate %}
*Parameter #2---iswitness*
{% itemplate ntpd1 %}
- n: "iswitness"
t: "boolean"
p: "Optional<br>Default=depends on heuristic tests"
d: "Whether the transaction hex is a serialized witness transaction
If iswitness is not present, heuristic tests will be used in decoding"
{% enditemplate %}
*Result*
{% endautocrossref %}
{
"txid" : "id", (string) The transaction id
"hash" : "id", (string) The transaction hash (differs from txid for witness transactions)
"size" : n, (numeric) The transaction size
"vsize" : n, (numeric) The virtual transaction size (differs from size for witness transactions)
"weight" : n, (numeric) The transaction's weight (between vsize*4 - 3 and vsize*4)
"version" : n, (numeric) The version
"locktime" : ttt, (numeric) The lock time
"vin" : [ (array of json objects)
{
"txid": "id", (string) The transaction id
"vout": n, (numeric) The output number
"scriptSig": { (json object) The script
"asm": "asm", (string) asm
"hex": "hex" (string) hex
},
"txinwitness": ["hex", ...] (array of string) hex-encoded witness data (if any)
"sequence": n (numeric) The script sequence number
}
,...
],
"vout" : [ (array of json objects)
{
"value" : x.xxx, (numeric) The value in BTC
"n" : n, (numeric) index
"scriptPubKey" : { (json object)
"asm" : "asm", (string) the asm
"hex" : "hex", (string) the hex
"reqSigs" : n, (numeric) The required sigs
"type" : "pubkeyhash", (string) The type, eg 'pubkeyhash'
"addresses" : [ (json array of string)
"12tvKAXCxZjSmdNbao16dKXC8tRWfcF5oc" (string) bitcoin address
,...
]
}
}
,...
],
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli decoderawtransaction "hexstring"
{% endhighlight %}
*See also*
* [CreateRawTransaction][rpc createrawtransaction]: {{summary_createRawTransaction}}
* [SendRawTransaction][rpc sendrawtransaction]: {{summary_sendRawTransaction}}
{% endautocrossref %}

View File

@ -0,0 +1,54 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/decodescript.md" %}
##### DecodeScript
{% include helpers/subhead-links.md %}
{% assign summary_decodeScript="decode a hex-encoded script." %}
{% autocrossref %}
The `decodescript` RPC {{summary_decodeScript}}
*Parameter #1---hexstring*
{% itemplate ntpd1 %}
- n: "hexstring"
t: "string"
p: "Required<br>(exactly 1)"
d: "the hex-encoded script"
{% enditemplate %}
*Result*
{% endautocrossref %}
{
"asm":"asm", (string) Script public key
"hex":"hex", (string) hex-encoded public key
"type":"type", (string) The output type
"reqSigs": n, (numeric) The required signatures
"addresses": [ (json array of string)
"address" (string) bitcoin address
,...
],
"p2sh","address" (string) address of P2SH script wrapping this redeem script (not returned if the script is already a P2SH).
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli decodescript "hexstring"
{% endhighlight %}
*See also*
* [CreateMultiSig][rpc createmultisig]: {{summary_createMultiSig}}
{% endautocrossref %}

View File

@ -0,0 +1,70 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/deriveaddresses.md" %}
##### DeriveAddresses
{% include helpers/subhead-links.md %}
{% assign summary_deriveAddresses="derives one or more addresses corresponding to an output descriptor." %}
{% autocrossref %}
*Added in Bitcoin Core 0.18.0*
The `deriveaddresses` RPC {{summary_deriveAddresses}}
Examples of output descriptors are:
{% endautocrossref %}
pkh(<pubkey>) P2PKH outputs for the given pubkey
wpkh(<pubkey>) Native segwit P2PKH outputs for the given pubkey
sh(multi(<n>,<pubkey>,<pubkey>,...)) P2SH-multisig outputs for the given threshold and pubkeys
raw(<hex script>) Outputs whose scriptPubKey equals the specified hex scripts
{% autocrossref %}
In the above, <pubkey> either refers to a fixed public key in hexadecimal notation, or to an xpub/xprv optionally followed by one
or more path elements separated by "/", where "h" represents a hardened child key.
For more information on output descriptors, see the documentation in the doc/descriptors.md file.
*Parameter #1---descriptor*
{% itemplate ntpd1 %}
- n: "descriptor"
t: "string"
p: "Required<br>(exactly 1)"
d: "The descriptor."
{% enditemplate %}
*Parameter #2---range*
{% itemplate ntpd1 %}
- n: "range"
t: "numeric or array"
p: "Optional"
d: "If a ranged descriptor is used, this specifies the end or the range (in [begin,end] notation) to derive."
{% enditemplate %}
*Result*
{% endautocrossref %}
[ address ] (array) the derived addresses
{% autocrossref %}
*Example*
First three native segwit receive addresses
{% highlight bash %}
bitcoin-cli deriveaddresses "wpkh([d34db33f/84h/0h/0h]xpub6DJ2dNUysrn5Vt36jH2KLBT2i1auw1tTSSomg8PhqNiUtx8QX2SvC9nrHu81fT41fvDUnhMjEzQgXnQjKEu3oaqMSzhSrHMxyyoEAmUHQbY/0/*)#trd0mf0l" "[0,2]"
{% endhighlight %}
{% endautocrossref %}

View File

@ -0,0 +1,66 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/disconnectnode.md" %}
##### DisconnectNode
{% include helpers/subhead-links.md %}
{% assign summary_disconnectNode="immediately disconnects from the specified peer node." %}
{% autocrossref %}
*Added in Bitcoin Core 0.12.0*
The `disconnectnode` RPC {{summary_disconnectNode}}
Strictly one out of 'address' and 'nodeid' can be provided to identify the node.
To disconnect by nodeid, either set 'address' to the empty string, or call using the named 'nodeid' argument only.
*Parameter #1---address*
{% itemplate ntpd1 %}
- n: "address"
t: "string"
p: "Optional<br>Default=fallback to nodeid"
d: "The IP address/port of the node"
{% enditemplate %}
*Parameter #2---nodeid*
{% itemplate ntpd1 %}
- n: "nodeid"
t: "number (int)"
p: "Optional<br>Default=fallback to address"
d: "The node ID (see getpeerinfo for node IDs)"
{% enditemplate %}
*Result---`null` on success*
{% itemplate ntpd1 %}
- n: "`result`"
t: "null"
p: "Required<br>(exactly 1)"
d: "JSON `null` when the command was successfull or a JSON with an error field on error."
{% enditemplate %}
*Example*
{% highlight bash %}
bitcoin-cli disconnectnode "192.168.0.6:8333"
{% endhighlight %}
{% highlight bash %}
bitcoin-cli disconnectnode "" 1
{% endhighlight %}
*See also*
* [AddNode][rpc addnode]: {{summary_addNode}}
* [GetAddedNodeInfo][rpc getaddednodeinfo]: {{summary_getAddedNodeInfo}}
{% endautocrossref %}

View File

@ -0,0 +1,52 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/dumpprivkey.md" %}
##### DumpPrivKey
{% include helpers/subhead-links.md %}
{% assign summary_dumpPrivKey="reveals the private key corresponding to 'address'." %}
{% autocrossref %}
The `dumpprivkey` RPC {{summary_dumpPrivKey}}
Then the importprivkey can be used with this output
*Parameter #1---address*
{% itemplate ntpd1 %}
- n: "address"
t: "string"
p: "Required<br>(exactly 1)"
d: "The bitcoin address for the private key"
{% enditemplate %}
*Result*
{% itemplate ntpd1 %}
- n: "`result`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The private key"
{% enditemplate %}
*Example*
{% highlight bash %}
bitcoin-cli dumpprivkey "myaddress"
{% endhighlight %}
{% highlight bash %}
bitcoin-cli importprivkey "mykey"
{% endhighlight %}
*See also*
* [ImportPrivKey][rpc importprivkey]: {{summary_importPrivKey}}
* [DumpWallet][rpc dumpwallet]: {{summary_dumpWallet}}
{% endautocrossref %}

View File

@ -0,0 +1,54 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/dumpwallet.md" %}
##### DumpWallet
{% include helpers/subhead-links.md %}
{% assign summary_dumpWallet="dumps all wallet keys in a human-readable format to a server-side file." %}
{% autocrossref %}
The `dumpwallet` RPC {{summary_dumpWallet}}
This does not allow overwriting existing files.
Imported scripts are included in the dumpfile, but corresponding BIP173 addresses, etc. may not be added automatically by importwallet.
Note that if your wallet contains keys which are not derived from your HD seed (e.g. imported keys), these are not covered by
only backing up the seed itself, and must be backed up too (e.g. ensure you back up the whole dumpfile).
*Parameter #1---filename*
{% itemplate ntpd1 %}
- n: "filename"
t: "string"
p: "Required<br>(exactly 1)"
d: "The filename with path (either absolute or relative to bitcoind)"
{% enditemplate %}
*Result*
{% endautocrossref %}
{ (json object)
"filename" : { (string) The filename with full absolute path
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli dumpwallet "test"
{% endhighlight %}
*See also*
* [BackupWallet][rpc backupwallet]: {{summary_backupWallet}}
* [ImportWallet][rpc importwallet]: {{summary_importWallet}}
{% endautocrossref %}

View File

@ -0,0 +1,74 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/encryptwallet.md" %}
##### EncryptWallet
{% include helpers/subhead-links.md %}
{% assign summary_encryptWallet="encrypts the wallet with 'passphrase'." %}
{% autocrossref %}
The `encryptwallet` RPC {{summary_encryptWallet}}
This is for first time encryption.
After this, any calls that interact with private keys such as sending or signing
will require the passphrase to be set prior the making these calls.
Use the walletpassphrase call for this, and then walletlock call.
If the wallet is already encrypted, use the walletpassphrasechange call.
*Parameter #1---passphrase*
{% itemplate ntpd1 %}
- n: "passphrase"
t: "string"
p: "Required<br>(exactly 1)"
d: "The pass phrase to encrypt the wallet with. It must be at least 1 character, but should be long."
{% enditemplate %}
*Result---`null` on success*
{% itemplate ntpd1 %}
- n: "`result`"
t: "null"
p: "Required<br>(exactly 1)"
d: "JSON `null` when the command was successfull or a JSON with an error field on error."
{% enditemplate %}
*Example*
Encrypt your wallet
{% highlight bash %}
bitcoin-cli encryptwallet "my pass phrase"
{% endhighlight %}
Now set the passphrase to use the wallet, such as for signing or sending bitcoin
{% highlight bash %}
bitcoin-cli walletpassphrase "my pass phrase"
{% endhighlight %}
Now we can do something like sign
{% highlight bash %}
bitcoin-cli signmessage "address" "test message"
{% endhighlight %}
Now lock the wallet again by removing the passphrase
{% highlight bash %}
bitcoin-cli walletlock
{% endhighlight %}
*See also*
* [WalletPassphrase][rpc walletpassphrase]: {{summary_walletPassphrase}}
* [WalletLock][rpc walletlock]: {{summary_walletLock}}
* [WalletPassphraseChange][rpc walletpassphrasechange]: {{summary_walletPassphraseChange}}
{% endautocrossref %}

View File

@ -0,0 +1,65 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/estimatesmartfee.md" %}
##### EstimateSmartFee
{% include helpers/subhead-links.md %}
{% assign summary_estimateSmartFee="estimates the approximate fee per kilobyte needed for a transaction to begin confirmation within conf_target blocks if possible and return the number of blocks for which the estimate is valid." %}
{% autocrossref %}
The `estimatesmartfee` RPC {{summary_estimateSmartFee}}
Uses virtual transaction size as defined
in BIP 141 (witness data is discounted).
*Parameter #1---conf_target*
{% itemplate ntpd1 %}
- n: "conf_target"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "Confirmation target in blocks (1 - 1008)"
{% enditemplate %}
*Parameter #2---estimate_mode*
{% itemplate ntpd1 %}
- n: "estimate_mode"
t: "string"
p: "Optional<br>Default=CONSERVATIVE"
d: "The fee estimate mode.
Whether to return a more conservative estimate which also satisfies
a longer history. A conservative estimate potentially returns a
higher feerate and is more likely to be sufficient for the desired
target, but is not as responsive to short term drops in the
prevailing fee market. Must be one of:
\"UNSET\"
\"ECONOMICAL\"
\"CONSERVATIVE\""
{% enditemplate %}
*Result*
{% endautocrossref %}
{
"feerate" : x.x, (numeric, optional) estimate fee rate in BTC/kB
"errors": [ str... ] (json array of strings, optional) Errors encountered during processing
"blocks" : n (numeric) block number where estimate was found
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli estimatesmartfee 6
{% endhighlight %}
{% endautocrossref %}

View File

@ -0,0 +1,62 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/finalizepsbt.md" %}
##### FinalizePsbt
{% include helpers/subhead-links.md %}
{% assign summary_finalizePsbt="finalize the inputs of a PSBT." %}
{% autocrossref %}
The `finalizepsbt` RPC {{summary_finalizePsbt}}
If the transaction is fully signed, it will produce a
network serialized transaction which can be broadcast with sendrawtransaction. Otherwise a PSBT will be
created which has the final_scriptSig and final_scriptWitness fields filled for inputs that are complete.
Implements the Finalizer and Extractor roles.
*Parameter #1---psbt*
{% itemplate ntpd1 %}
- n: "psbt"
t: "string"
p: "Required<br>(exactly 1)"
d: "A base64 string of a PSBT"
{% enditemplate %}
*Parameter #2---extract*
{% itemplate ntpd1 %}
- n: "extract"
t: "boolean"
p: "Optional<br>Default=true"
d: "If true and the transaction is complete,
extract and return the complete transaction in normal network serialization instead of the PSBT."
{% enditemplate %}
*Result*
{% endautocrossref %}
{
"psbt" : "value", (string) The base64-encoded partially signed transaction if not extracted
"hex" : "value", (string) The hex-encoded network transaction if extracted
"complete" : true|false, (boolean) If the transaction has a complete set of signatures
]
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli finalizepsbt "psbt"
{% endhighlight %}
{% endautocrossref %}

View File

@ -0,0 +1,135 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/fundrawtransaction.md" %}
##### FundRawTransaction
{% include helpers/subhead-links.md %}
{% assign summary_fundRawTransaction="add inputs to a transaction until it has enough in value to meet its out value." %}
{% autocrossref %}
*Added in Bitcoin Core 0.12.0*
The `fundrawtransaction` RPC {{summary_fundRawTransaction}}
This will not modify existing inputs, and will add at most one change output to the outputs.
No existing outputs will be modified unless "subtractFeeFromOutputs" is specified.
Note that inputs which were signed may need to be resigned after completion since in/outputs have been added.
The inputs added will not be signed, use signrawtransactionwithkey
or signrawtransactionwithwallet for that.
Note that all existing inputs must have their previous output transaction be in the wallet.
Note that all inputs selected must be of standard form and P2SH scripts must be
in the wallet using importaddress or addmultisigaddress (to calculate fees).
You can see whether this is the case by checking the "solvable" field in the listunspent output.
Only pay-to-pubkey, multisig, and P2SH versions thereof are currently supported for watch-only
*Parameter #1---hexstring*
{% itemplate ntpd1 %}
- n: "hexstring"
t: "string"
p: "Required<br>(exactly 1)"
d: "The hex string of the raw transaction"
{% enditemplate %}
*Parameter #2---options*
{% itemplate ntpd1 %}
- n: "options"
t: "json object"
p: "Optional"
d: "for backward compatibility: passing in a true instead of an object will result in {\"includeWatching\":true}
\"replaceable\": bool, (boolean, optional, default=fallback to wallet's default) Marks this transaction as BIP125 replaceable.
Allows this transaction to be replaced by a transaction with higher fees
\"conf_target\": n, (numeric, optional, default=fallback to wallet's default) Confirmation target (in blocks)
\"estimate_mode\": \"str\", (string, optional, default=UNSET) The fee estimate mode, must be one of:
\"UNSET\"
\"ECONOMICAL\"
\"CONSERVATIVE\"
}"
{% enditemplate %}
{% endautocrossref %}
{
"changeAddress": "str", (string, optional, default=pool address) The bitcoin address to receive the change
"changePosition": n, (numeric, optional, default=random) The index of the change output
"change_type": "str", (string, optional, default=set by -changetype) The output type to use. Only valid if changeAddress is not specified. Options are "legacy", "p2sh-segwit", and "bech32".
"includeWatching": bool, (boolean, optional, default=false) Also select inputs which are watch only
"lockUnspents": bool, (boolean, optional, default=false) Lock selected unspent outputs
"feeRate": amount, (numeric or string, optional, default=not set: makes wallet determine the fee) Set a specific fee rate in BTC/kB
"subtractFeeFromOutputs": [ (json array, optional, default=empty array) A json array of integers.
The fee will be equally deducted from the amount of each specified output.
Those recipients will receive less bitcoins than you enter in their corresponding amount field.
If no outputs are specified here, the sender pays the fee.
vout_index, (numeric) The zero-based output index, before a change output is added.
...
],
{% autocrossref %}
*Parameter #3---iswitness*
{% itemplate ntpd1 %}
- n: "iswitness"
t: "boolean"
p: "Optional<br>Default=depends on heuristic tests"
d: "Whether the transaction hex is a serialized witness transaction
If iswitness is not present, heuristic tests will be used in decoding"
{% enditemplate %}
*Result*
{% endautocrossref %}
{
"hex": "value", (string) The resulting raw transaction (hex-encoded string)
"fee": n, (numeric) Fee in BTC the resulting transaction pays
"changepos": n (numeric) The position of the added change output, or -1
}
{% autocrossref %}
*Example*
Create a transaction with no inputs
{% highlight bash %}
bitcoin-cli createrawtransaction "[]" "{\"myaddress\":0.01}"
{% endhighlight %}
Add sufficient unsigned inputs to meet the output value
{% highlight bash %}
bitcoin-cli fundrawtransaction "rawtransactionhex"
{% endhighlight %}
Sign the transaction
{% highlight bash %}
bitcoin-cli signrawtransactionwithwallet "fundedtransactionhex"
{% endhighlight %}
Send the transaction
{% highlight bash %}
bitcoin-cli sendrawtransaction "signedtransactionhex"
{% endhighlight %}
*See also*
* [CreateRawTransaction][rpc createrawtransaction]: {{summary_createRawTransaction}}
* [DecodeRawTransaction][rpc decoderawtransaction]: {{summary_decodeRawTransaction}}
* [SendRawTransaction][rpc sendrawtransaction]: {{summary_sendRawTransaction}}
{% endautocrossref %}

View File

@ -0,0 +1,60 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/generate.md" %}
##### Generate
{% include helpers/subhead-links.md %}
{% assign summary_generate="mine up to nblocks blocks immediately (before the RPC call returns) to an address in the wallet." %}
{% autocrossref %}
*Added in Bitcoin Core 0.11.0*
The `generate` RPC {{summary_generate}}
*Parameter #1---nblocks*
{% itemplate ntpd1 %}
- n: "nblocks"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "How many blocks are generated immediately."
{% enditemplate %}
*Parameter #2---maxtries*
{% itemplate ntpd1 %}
- n: "maxtries"
t: "number (int)"
p: "Optional<br>Default=1000000"
d: "How many iterations to try."
{% enditemplate %}
*Result*
{% endautocrossref %}
[ blockhashes ] (array) hashes of blocks generated
{% autocrossref %}
*Example*
Generate 11 blocks
{% highlight bash %}
bitcoin-cli generate 11
{% endhighlight %}
*See also*
* [GenerateToAddress][rpc generatetoaddress]: {{summary_generateToAddress}}
* [GetMiningInfo][rpc getmininginfo]: {{summary_getMiningInfo}}
* [GetBlockTemplate][rpc getblocktemplate]: {{summary_getBlockTemplate}}
{% endautocrossref %}

View File

@ -0,0 +1,75 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/generatetoaddress.md" %}
##### GenerateToAddress
{% include helpers/subhead-links.md %}
{% assign summary_generateToAddress="mine blocks immediately to a specified address (before the RPC call returns)." %}
{% autocrossref %}
*Added in Bitcoin Core 0.13.0*
The `generatetoaddress` RPC {{summary_generateToAddress}}
*Parameter #1---nblocks*
{% itemplate ntpd1 %}
- n: "nblocks"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "How many blocks are generated immediately."
{% enditemplate %}
*Parameter #2---address*
{% itemplate ntpd1 %}
- n: "address"
t: "string"
p: "Required<br>(exactly 1)"
d: "The address to send the newly generated bitcoin to."
{% enditemplate %}
*Parameter #3---maxtries*
{% itemplate ntpd1 %}
- n: "maxtries"
t: "number (int)"
p: "Optional<br>Default=1000000"
d: "How many iterations to try."
{% enditemplate %}
*Result*
{% endautocrossref %}
[ blockhashes ] (array) hashes of blocks generated
{% autocrossref %}
*Example*
Generate 11 blocks to myaddress
{% highlight bash %}
bitcoin-cli generatetoaddress 11 "myaddress"
{% endhighlight %}
If you are running the bitcoin core wallet, you can get a new address to send the newly generated bitcoin to with:
{% highlight bash %}
bitcoin-cli getnewaddress
{% endhighlight %}
*See also*
* [Generate][rpc generate]: {{summary_generate}}
* [GetMiningInfo][rpc getmininginfo]: {{summary_getMiningInfo}}
* [GetBlockTemplate][rpc getblocktemplate]: {{summary_getBlockTemplate}}
{% endautocrossref %}

View File

@ -0,0 +1,57 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getaddednodeinfo.md" %}
##### GetAddedNodeInfo
{% include helpers/subhead-links.md %}
{% assign summary_getAddedNodeInfo="returns information about the given added node, or all added nodes (note that onetry addnodes are not listed here)." %}
{% autocrossref %}
The `getaddednodeinfo` RPC {{summary_getAddedNodeInfo}}
*Parameter #1---node*
{% itemplate ntpd1 %}
- n: "node"
t: "string"
p: "Optional<br>Default=all nodes"
d: "If provided, return information about this specific node, otherwise all nodes are returned."
{% enditemplate %}
*Result*
{% endautocrossref %}
[
{
"addednode" : "192.168.0.201", (string) The node IP address or name (as provided to addnode)
"connected" : true|false, (boolean) If connected
"addresses" : [ (list of objects) Only when connected = true
{
"address" : "192.168.0.201:8333", (string) The bitcoin server IP and port we're connected to
"connected" : "outbound" (string) connection, inbound or outbound
}
]
}
,...
]
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getaddednodeinfo "192.168.0.201"
{% endhighlight %}
*See also*
* [AddNode][rpc addnode]: {{summary_addNode}}
* [GetPeerInfo][rpc getpeerinfo]: {{summary_getPeerInfo}}
{% endautocrossref %}

View File

@ -0,0 +1,46 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getaddressesbylabel.md" %}
##### GetAddressesByLabel
{% include helpers/subhead-links.md %}
{% assign summary_getAddressesByLabel="returns the list of addresses assigned the specified label." %}
{% autocrossref %}
*Added in Bitcoin Core 0.17.0*
The `getaddressesbylabel` RPC {{summary_getAddressesByLabel}}
*Parameter #1---label*
{% itemplate ntpd1 %}
- n: "label"
t: "string"
p: "Required<br>(exactly 1)"
d: "The label."
{% enditemplate %}
*Result*
{% endautocrossref %}
{ (json object with addresses as keys)
"address": { (json object with information about address)
"purpose": "string" (string) Purpose of address ("send" for sending address, "receive" for receiving address)
},...
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getaddressesbylabel "tabby"
{% endhighlight %}
{% endautocrossref %}

View File

@ -0,0 +1,80 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getaddressinfo.md" %}
##### GetAddressInfo
{% include helpers/subhead-links.md %}
{% assign summary_getAddressInfo="return information about the given bitcoin address." %}
{% autocrossref %}
*Added in Bitcoin Core 0.17.0*
The `getaddressinfo` RPC {{summary_getAddressInfo}}
Some information requires the address
to be in the wallet.
*Parameter #1---address*
{% itemplate ntpd1 %}
- n: "address"
t: "string"
p: "Required<br>(exactly 1)"
d: "The bitcoin address to get the information of."
{% enditemplate %}
*Result*
{% endautocrossref %}
{
"address" : "address", (string) The bitcoin address validated
"scriptPubKey" : "hex", (string) The hex-encoded scriptPubKey generated by the address
"ismine" : true|false, (boolean) If the address is yours or not
"iswatchonly" : true|false, (boolean) If the address is watchonly
"solvable" : true|false, (boolean) Whether we know how to spend coins sent to this address, ignoring the possible lack of private keys
"desc" : "desc", (string, optional) A descriptor for spending coins sent to this address (only when solvable)
"isscript" : true|false, (boolean) If the key is a script
"ischange" : true|false, (boolean) If the address was used for change output
"iswitness" : true|false, (boolean) If the address is a witness address
"witness_version" : version (numeric, optional) The version number of the witness program
"witness_program" : "hex" (string, optional) The hex value of the witness program
"script" : "type" (string, optional) The output script type. Only if "isscript" is true and the redeemscript is known. Possible types: nonstandard, pubkey, pubkeyhash, scripthash, multisig, nulldata, witness_v0_keyhash, witness_v0_scripthash, witness_unknown
"hex" : "hex", (string, optional) The redeemscript for the p2sh address
"pubkeys" (string, optional) Array of pubkeys associated with the known redeemscript (only if "script" is "multisig")
[
"pubkey"
,...
]
"sigsrequired" : xxxxx (numeric, optional) Number of signatures required to spend multisig output (only if "script" is "multisig")
"pubkey" : "publickeyhex", (string, optional) The hex value of the raw public key, for single-key addresses (possibly embedded in P2SH or P2WSH)
"embedded" : {...}, (object, optional) Information about the address embedded in P2SH or P2WSH, if relevant and known. It includes all getaddressinfo output fields for the embedded address, excluding metadata ("timestamp", "hdkeypath", "hdseedid") and relation to the wallet ("ismine", "iswatchonly").
"iscompressed" : true|false, (boolean, optional) If the pubkey is compressed
"label" : "label" (string) The label associated with the address, "" is the default label
"timestamp" : timestamp, (number, optional) The creation time of the key if available in seconds since epoch (Jan 1 1970 GMT)
"hdkeypath" : "keypath" (string, optional) The HD keypath if the key is HD and available
"hdseedid" : "<hash160>" (string, optional) The Hash160 of the HD seed
"hdmasterfingerprint" : "<hash160>" (string, optional) The fingperint of the master key.
"labels" (object) Array of labels associated with the address.
[
{ (json object of label data)
"name": "labelname" (string) The label
"purpose": "string" (string) Purpose of address ("send" for sending address, "receive" for receiving address)
},...
]
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getaddressinfo "1PSSGeFHDnKNxiEyFrD1wcEaHr9hrQDDWc"
{% endhighlight %}
{% endautocrossref %}

View File

@ -0,0 +1,76 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getbalance.md" %}
##### GetBalance
{% include helpers/subhead-links.md %}
{% assign summary_getBalance="returns the total available balance." %}
{% autocrossref %}
The `getbalance` RPC {{summary_getBalance}}
The available balance is what the wallet considers currently spendable, and is
thus affected by options which limit spendability such as -spendzeroconfchange.
*Parameter #1---dummy*
{% itemplate ntpd1 %}
- n: "dummy"
t: "string"
p: "Optional"
d: "Remains for backward compatibility. Must be excluded or set to \"*\"."
{% enditemplate %}
*Parameter #2---minconf*
{% itemplate ntpd1 %}
- n: "minconf"
t: "number (int)"
p: "Optional<br>Default=0"
d: "Only include transactions confirmed at least this many times."
{% enditemplate %}
*Parameter #3---include_watchonly*
{% itemplate ntpd1 %}
- n: "include_watchonly"
t: "boolean"
p: "Optional<br>Default=false"
d: "Also include balance in watch-only addresses (see 'importaddress')"
{% enditemplate %}
*Result*
{% itemplate ntpd1 %}
- n: "`result`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The total amount in BTC received for this wallet."
{% enditemplate %}
*Example*
The total amount in the wallet with 1 or more confirmations
{% highlight bash %}
bitcoin-cli getbalance
{% endhighlight %}
The total amount in the wallet at least 6 blocks confirmed
{% highlight bash %}
bitcoin-cli getbalance "*" 6
{% endhighlight %}
*See also*
* [GetReceivedByAddress][rpc getreceivedbyaddress]: {{summary_getReceivedByAddress}}
{% endautocrossref %}

View File

@ -0,0 +1,39 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getbestblockhash.md" %}
##### GetBestBlockHash
{% include helpers/subhead-links.md %}
{% assign summary_getBestBlockHash="returns the hash of the best (tip) block in the longest blockchain." %}
{% autocrossref %}
The `getbestblockhash` RPC {{summary_getBestBlockHash}}
*Parameters: none*
*Result*
{% itemplate ntpd1 %}
- n: "`result`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "the block hash, hex-encoded"
{% enditemplate %}
*Example*
{% highlight bash %}
bitcoin-cli getbestblockhash
{% endhighlight %}
*See also*
* [GetBlock][rpc getblock]: {{summary_getBlock}}
* [GetBlockHash][rpc getblockhash]: {{summary_getBlockHash}}
{% endautocrossref %}

View File

@ -0,0 +1,108 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getblock.md" %}
##### GetBlock
{% include helpers/subhead-links.md %}
{% assign summary_getBlock="gets a block with a particular header hash from the local block database either as a JSON object or as a serialized block." %}
{% autocrossref %}
The `getblock` RPC {{summary_getBlock}}
If verbosity is 0, returns a string that is serialized, hex-encoded data for block 'hash'.
If verbosity is 1, returns an Object with information about block 'hash'.
If verbosity is 2, returns an Object with information about block 'hash' and information about each transaction.
*Parameter #1---blockhash*
{% itemplate ntpd1 %}
- n: "blockhash"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The block hash"
{% enditemplate %}
*Parameter #2---verbosity*
{% itemplate ntpd1 %}
- n: "verbosity"
t: "number (int)"
p: "Optional<br>Default=1"
d: "0 for hex-encoded data, 1 for a json object, and 2 for json object with transaction data"
{% enditemplate %}
*Result---(for verbosity = 0)*
{% itemplate ntpd1 %}
- n: "`result`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "A string that is serialized, hex-encoded data for block 'hash'."
{% enditemplate %}
*Result---(for verbosity = 1)*
{% endautocrossref %}
{
"hash" : "hash", (string) the block hash (same as provided)
"confirmations" : n, (numeric) The number of confirmations, or -1 if the block is not on the main chain
"size" : n, (numeric) The block size
"strippedsize" : n, (numeric) The block size excluding witness data
"weight" : n (numeric) The block weight as defined in BIP 141
"height" : n, (numeric) The block height or index
"version" : n, (numeric) The block version
"versionHex" : "00000000", (string) The block version formatted in hexadecimal
"merkleroot" : "xxxx", (string) The merkle root
"tx" : [ (array of string) The transaction ids
"transactionid" (string) The transaction id
,...
],
"time" : ttt, (numeric) The block time in seconds since epoch (Jan 1 1970 GMT)
"mediantime" : ttt, (numeric) The median block time in seconds since epoch (Jan 1 1970 GMT)
"nonce" : n, (numeric) The nonce
"bits" : "1d00ffff", (string) The bits
"difficulty" : x.xxx, (numeric) The difficulty
"chainwork" : "xxxx", (string) Expected number of hashes required to produce the chain up to this block (in hex)
"nTx" : n, (numeric) The number of transactions in the block.
"previousblockhash" : "hash", (string) The hash of the previous block
"nextblockhash" : "hash" (string) The hash of the next block
}
{% autocrossref %}
*Result---(for verbosity = 2)*
{% endautocrossref %}
{
..., Same output as verbosity = 1.
"tx" : [ (array of Objects) The transactions in the format of the getrawtransaction RPC. Different from verbosity = 1 "tx" result.
,...
],
,... Same output as verbosity = 1.
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getblock "00000000c937983704a73af28acdec37b049d214adbda81d7e2a3dd146f6ed09"
{% endhighlight %}
*See also*
* [GetBlockHash][rpc getblockhash]: {{summary_getBlockHash}}
* [GetBestBlockHash][rpc getbestblockhash]: {{summary_getBestBlockHash}}
{% endautocrossref %}

View File

@ -0,0 +1,79 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getblockchaininfo.md" %}
##### GetBlockChainInfo
{% include helpers/subhead-links.md %}
{% assign summary_getBlockChainInfo="returns an object containing various state info regarding blockchain processing." %}
{% autocrossref %}
The `getblockchaininfo` RPC {{summary_getBlockChainInfo}}
*Parameters: none*
*Result*
{% endautocrossref %}
{
"chain": "xxxx", (string) current network name as defined in BIP70 (main, test, regtest)
"blocks": xxxxxx, (numeric) the current number of blocks processed in the server
"headers": xxxxxx, (numeric) the current number of headers we have validated
"bestblockhash": "...", (string) the hash of the currently best block
"difficulty": xxxxxx, (numeric) the current difficulty
"mediantime": xxxxxx, (numeric) median time for the current best block
"verificationprogress": xxxx, (numeric) estimate of verification progress [0..1]
"initialblockdownload": xxxx, (bool) (debug information) estimate of whether this node is in Initial Block Download mode.
"chainwork": "xxxx" (string) total amount of work in active chain, in hexadecimal
"size_on_disk": xxxxxx, (numeric) the estimated size of the block and undo files on disk
"pruned": xx, (boolean) if the blocks are subject to pruning
"pruneheight": xxxxxx, (numeric) lowest-height complete block stored (only present if pruning is enabled)
"automatic_pruning": xx, (boolean) whether automatic pruning is enabled (only present if pruning is enabled)
"prune_target_size": xxxxxx, (numeric) the target size used by pruning (only present if automatic pruning is enabled)
"softforks": [ (array) status of softforks in progress
{
"id": "xxxx", (string) name of softfork
"version": xx, (numeric) block version
"reject": { (object) progress toward rejecting pre-softfork blocks
"status": xx, (boolean) true if threshold reached
},
}, ...
],
"bip9_softforks": { (object) status of BIP9 softforks in progress
"xxxx" : { (string) name of the softfork
"status": "xxxx", (string) one of "defined", "started", "locked_in", "active", "failed"
"bit": xx, (numeric) the bit (0-28) in the block version field used to signal this softfork (only for "started" status)
"startTime": xx, (numeric) the minimum median time past of a block at which the bit gains its meaning
"timeout": xx, (numeric) the median time past of a block at which the deployment is considered failed if not yet locked in
"since": xx, (numeric) height of the first block to which the status applies
"statistics": { (object) numeric statistics about BIP9 signalling for a softfork (only for "started" status)
"period": xx, (numeric) the length in blocks of the BIP9 signalling period
"threshold": xx, (numeric) the number of blocks with the version bit set required to activate the feature
"elapsed": xx, (numeric) the number of blocks elapsed since the beginning of the current period
"count": xx, (numeric) the number of blocks with the version bit set in the current period
"possible": xx (boolean) returns false if there are not enough blocks left in this period to pass activation threshold
}
}
}
"warnings" : "...", (string) any network and blockchain warnings.
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getblockchaininfo
{% endhighlight %}
*See also*
* [GetMiningInfo][rpc getmininginfo]: {{summary_getMiningInfo}}
* [GetNetworkInfo][rpc getnetworkinfo]: {{summary_getNetworkInfo}}
* [GetWalletInfo][rpc getwalletinfo]: {{summary_getWalletInfo}}
{% endautocrossref %}

View File

@ -0,0 +1,39 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getblockcount.md" %}
##### GetBlockCount
{% include helpers/subhead-links.md %}
{% assign summary_getBlockCount="returns the number of blocks in the longest blockchain." %}
{% autocrossref %}
The `getblockcount` RPC {{summary_getBlockCount}}
*Parameters: none*
*Result*
{% itemplate ntpd1 %}
- n: "`result`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The current block count"
{% enditemplate %}
*Example*
{% highlight bash %}
bitcoin-cli getblockcount
{% endhighlight %}
*See also*
* [GetBlockHash][rpc getblockhash]: {{summary_getBlockHash}}
* [GetBlock][rpc getblock]: {{summary_getBlock}}
{% endautocrossref %}

View File

@ -0,0 +1,47 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getblockhash.md" %}
##### GetBlockHash
{% include helpers/subhead-links.md %}
{% assign summary_getBlockHash="returns hash of block in best-block-chain at height provided." %}
{% autocrossref %}
The `getblockhash` RPC {{summary_getBlockHash}}
*Parameter #1---height*
{% itemplate ntpd1 %}
- n: "height"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The height index"
{% enditemplate %}
*Result*
{% itemplate ntpd1 %}
- n: "`result`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The block hash"
{% enditemplate %}
*Example*
{% highlight bash %}
bitcoin-cli getblockhash 1000
{% endhighlight %}
*See also*
* [GetBlock][rpc getblock]: {{summary_getBlock}}
* [GetBestBlockHash][rpc getbestblockhash]: {{summary_getBestBlockHash}}
{% endautocrossref %}

View File

@ -0,0 +1,86 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getblockheader.md" %}
##### GetBlockHeader
{% include helpers/subhead-links.md %}
{% assign summary_getBlockHeader="if verbose is false, returns a string that is serialized, hex-encoded data for blockheader 'hash'." %}
{% autocrossref %}
*Added in Bitcoin Core 0.12.0*
The `getblockheader` RPC {{summary_getBlockHeader}}
If verbose is true, returns an Object with information about blockheader 'hash'.
*Parameter #1---blockhash*
{% itemplate ntpd1 %}
- n: "blockhash"
t: "string"
p: "Required<br>(exactly 1)"
d: "The block hash"
{% enditemplate %}
*Parameter #2---verbose*
{% itemplate ntpd1 %}
- n: "verbose"
t: "boolean"
p: "Optional<br>Default=true"
d: "true for a json object, false for the hex-encoded data"
{% enditemplate %}
*Result---(for verbose = true)*
{% endautocrossref %}
{
"hash" : "hash", (string) the block hash (same as provided)
"confirmations" : n, (numeric) The number of confirmations, or -1 if the block is not on the main chain
"height" : n, (numeric) The block height or index
"version" : n, (numeric) The block version
"versionHex" : "00000000", (string) The block version formatted in hexadecimal
"merkleroot" : "xxxx", (string) The merkle root
"time" : ttt, (numeric) The block time in seconds since epoch (Jan 1 1970 GMT)
"mediantime" : ttt, (numeric) The median block time in seconds since epoch (Jan 1 1970 GMT)
"nonce" : n, (numeric) The nonce
"bits" : "1d00ffff", (string) The bits
"difficulty" : x.xxx, (numeric) The difficulty
"chainwork" : "0000...1f3" (string) Expected number of hashes required to produce the current chain (in hex)
"nTx" : n, (numeric) The number of transactions in the block.
"previousblockhash" : "hash", (string) The hash of the previous block
"nextblockhash" : "hash", (string) The hash of the next block
}
{% autocrossref %}
*Result---(for verbose=false)*
{% itemplate ntpd1 %}
- n: "`result`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "A string that is serialized, hex-encoded data for block 'hash'."
{% enditemplate %}
*Example*
{% highlight bash %}
bitcoin-cli getblockheader "00000000c937983704a73af28acdec37b049d214adbda81d7e2a3dd146f6ed09"
{% endhighlight %}
*See also*
* [GetBlock][rpc getblock]: {{summary_getBlock}}
* [GetBlockHash][rpc getblockhash]: {{summary_getBlockHash}}
* [GetBestBlockHash][rpc getbestblockhash]: {{summary_getBestBlockHash}}
{% endautocrossref %}

View File

@ -0,0 +1,102 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getblockstats.md" %}
##### GetBlockStats
{% include helpers/subhead-links.md %}
{% assign summary_getBlockStats="compute per block statistics for a given window." %}
{% autocrossref %}
The `getblockstats` RPC {{summary_getBlockStats}}
All amounts are in satoshis.
It won't work for some heights with pruning.
It won't work without -txindex for utxo_size_inc, *fee or *feerate stats.
*Parameter #1---hash_or_height*
{% itemplate ntpd1 %}
- n: "hash_or_height"
t: "string or numeric"
p: "Required<br>(exactly 1)"
d: "The block hash or height of the target block"
{% enditemplate %}
*Parameter #2---stats*
{% itemplate ntpd1 %}
- n: "stats"
t: "json array"
p: "Optional<br>Default=all values"
d: "Values to plot (see result below)"
{% enditemplate %}
{% endautocrossref %}
[
"height", (string) Selected statistic
"time", (string) Selected statistic
...
]
{% autocrossref %}
*Result*
{% endautocrossref %}
{ (json object)
"avgfee": xxxxx, (numeric) Average fee in the block
"avgfeerate": xxxxx, (numeric) Average feerate (in satoshis per virtual byte)
"avgtxsize": xxxxx, (numeric) Average transaction size
"blockhash": xxxxx, (string) The block hash (to check for potential reorgs)
"feerate_percentiles": [ (array of numeric) Feerates at the 10th, 25th, 50th, 75th, and 90th percentile weight unit (in satoshis per virtual byte)
"10th_percentile_feerate", (numeric) The 10th percentile feerate
"25th_percentile_feerate", (numeric) The 25th percentile feerate
"50th_percentile_feerate", (numeric) The 50th percentile feerate
"75th_percentile_feerate", (numeric) The 75th percentile feerate
"90th_percentile_feerate", (numeric) The 90th percentile feerate
],
"height": xxxxx, (numeric) The height of the block
"ins": xxxxx, (numeric) The number of inputs (excluding coinbase)
"maxfee": xxxxx, (numeric) Maximum fee in the block
"maxfeerate": xxxxx, (numeric) Maximum feerate (in satoshis per virtual byte)
"maxtxsize": xxxxx, (numeric) Maximum transaction size
"medianfee": xxxxx, (numeric) Truncated median fee in the block
"mediantime": xxxxx, (numeric) The block median time past
"mediantxsize": xxxxx, (numeric) Truncated median transaction size
"minfee": xxxxx, (numeric) Minimum fee in the block
"minfeerate": xxxxx, (numeric) Minimum feerate (in satoshis per virtual byte)
"mintxsize": xxxxx, (numeric) Minimum transaction size
"outs": xxxxx, (numeric) The number of outputs
"subsidy": xxxxx, (numeric) The block subsidy
"swtotal_size": xxxxx, (numeric) Total size of all segwit transactions
"swtotal_weight": xxxxx, (numeric) Total weight of all segwit transactions divided by segwit scale factor (4)
"swtxs": xxxxx, (numeric) The number of segwit transactions
"time": xxxxx, (numeric) The block time
"total_out": xxxxx, (numeric) Total amount in all outputs (excluding coinbase and thus reward [ie subsidy + totalfee])
"total_size": xxxxx, (numeric) Total size of all non-coinbase transactions
"total_weight": xxxxx, (numeric) Total weight of all non-coinbase transactions divided by segwit scale factor (4)
"totalfee": xxxxx, (numeric) The fee total
"txs": xxxxx, (numeric) The number of transactions (excluding coinbase)
"utxo_increase": xxxxx, (numeric) The increase/decrease in the number of unspent outputs
"utxo_size_inc": xxxxx, (numeric) The increase/decrease in size for the utxo index (not discounting op_return and similar)
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getblockstats 1000 '["minfeerate","avgfeerate"]'
{% endhighlight %}
{% endautocrossref %}

View File

@ -0,0 +1,117 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getblocktemplate.md" %}
##### GetBlockTemplate
{% include helpers/subhead-links.md %}
{% assign summary_getBlockTemplate="if the request parameters include a 'mode' key, that is used to explicitly select between the default 'template' request or a 'proposal'." %}
{% autocrossref %}
The `getblocktemplate` RPC {{summary_getBlockTemplate}}
It returns data needed to construct a block to work on.
For full specification, see BIPs 22, 23, 9, and 145:
{% endautocrossref %}
https://github.com/bitcoin/bips/blob/master/bip-0022.mediawiki
https://github.com/bitcoin/bips/blob/master/bip-0023.mediawiki
https://github.com/bitcoin/bips/blob/master/bip-0009.mediawiki#getblocktemplate_changes
https://github.com/bitcoin/bips/blob/master/bip-0145.mediawiki
{% autocrossref %}
*Parameter #1---template_request*
{% itemplate ntpd1 %}
- n: "template_request"
t: "json object"
p: "Required<br>(exactly 1)"
d: "A json object in the following spec
\"rules\": [ (json array, required) A list of strings
\"support\", (string) client side supported softfork deployment
...
],
}"
{% enditemplate %}
{% endautocrossref %}
{
"mode": "str", (string, optional) This must be set to "template", "proposal" (see BIP 23), or omitted
"capabilities": [ (json array, optional) A list of strings
"support", (string) client side supported feature, 'longpoll', 'coinbasetxn', 'coinbasevalue', 'proposal', 'serverlist', 'workid'
...
],
{% autocrossref %}
*Result*
{% endautocrossref %}
{
"version" : n, (numeric) The preferred block version
"rules" : [ "rulename", ... ], (array of strings) specific block rules that are to be enforced
"vbavailable" : { (json object) set of pending, supported versionbit (BIP 9) softfork deployments
"rulename" : bitnumber (numeric) identifies the bit number as indicating acceptance and readiness for the named softfork rule
,...
},
"vbrequired" : n, (numeric) bit mask of versionbits the server requires set in submissions
"previousblockhash" : "xxxx", (string) The hash of current highest block
"transactions" : [ (array) contents of non-coinbase transactions that should be included in the next block
{
"data" : "xxxx", (string) transaction data encoded in hexadecimal (byte-for-byte)
"txid" : "xxxx", (string) transaction id encoded in little-endian hexadecimal
"hash" : "xxxx", (string) hash encoded in little-endian hexadecimal (including witness data)
"depends" : [ (array) array of numbers
n (numeric) transactions before this one (by 1-based index in 'transactions' list) that must be present in the final block if this one is
,...
],
"fee": n, (numeric) difference in value between transaction inputs and outputs (in satoshis); for coinbase transactions, this is a negative Number of the total collected block fees (ie, not including the block subsidy); if key is not present, fee is unknown and clients MUST NOT assume there isn't one
"sigops" : n, (numeric) total SigOps cost, as counted for purposes of block limits; if key is not present, sigop cost is unknown and clients MUST NOT assume it is zero
"weight" : n, (numeric) total transaction weight, as counted for purposes of block limits
}
,...
],
"coinbaseaux" : { (json object) data that should be included in the coinbase's scriptSig content
"flags" : "xx" (string) key name is to be ignored, and value included in scriptSig
},
"coinbasevalue" : n, (numeric) maximum allowable input to coinbase transaction, including the generation award and transaction fees (in satoshis)
"coinbasetxn" : { ... }, (json object) information for coinbase transaction
"target" : "xxxx", (string) The hash target
"mintime" : xxx, (numeric) The minimum timestamp appropriate for next block time in seconds since epoch (Jan 1 1970 GMT)
"mutable" : [ (array of string) list of ways the block template may be changed
"value" (string) A way the block template may be changed, e.g. 'time', 'transactions', 'prevblock'
,...
],
"noncerange" : "00000000ffffffff",(string) A range of valid nonces
"sigoplimit" : n, (numeric) limit of sigops in blocks
"sizelimit" : n, (numeric) limit of block size
"weightlimit" : n, (numeric) limit of block weight
"curtime" : ttt, (numeric) current timestamp in seconds since epoch (Jan 1 1970 GMT)
"bits" : "xxxxxxxx", (string) compressed target of next block
"height" : n (numeric) The height of the next block
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getblocktemplate {"rules": ["segwit"]}
{% endhighlight %}
*See also*
* [GetMiningInfo][rpc getmininginfo]: {{summary_getMiningInfo}}
* [SubmitBlock][rpc submitblock]: {{summary_submitBlock}}
* [PrioritiseTransaction][rpc prioritisetransaction]: {{summary_prioritiseTransaction}}
{% endautocrossref %}

View File

@ -0,0 +1,51 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getchaintips.md" %}
##### GetChainTips
{% include helpers/subhead-links.md %}
{% assign summary_getChainTips="return information about all known tips in the block tree, including the main chain as well as orphaned branches." %}
{% autocrossref %}
The `getchaintips` RPC {{summary_getChainTips}}
*Parameters: none*
*Result*
{% endautocrossref %}
[
{
"height": xxxx, (numeric) height of the chain tip
"hash": "xxxx", (string) block hash of the tip
"branchlen": 0 (numeric) zero for main chain
"status": "active" (string) "active" for the main chain
},
{
"height": xxxx,
"hash": "xxxx",
"branchlen": 1 (numeric) length of branch connecting the tip to the main chain
"status": "xxxx" (string) status of the chain (active, valid-fork, valid-headers, headers-only, invalid)
}
]
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getchaintips
{% endhighlight %}
*See also*
* [GetBestBlockHash][rpc getbestblockhash]: {{summary_getBestBlockHash}}
* [GetBlock][rpc getblock]: {{summary_getBlock}}
* [GetBlockChainInfo][rpc getblockchaininfo]: {{summary_getBlockChainInfo}}
{% endautocrossref %}

View File

@ -0,0 +1,58 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getchaintxstats.md" %}
##### GetChainTxStats
{% include helpers/subhead-links.md %}
{% assign summary_getChainTxStats="compute statistics about the total number and rate of transactions in the chain." %}
{% autocrossref %}
The `getchaintxstats` RPC {{summary_getChainTxStats}}
*Parameter #1---nblocks*
{% itemplate ntpd1 %}
- n: "nblocks"
t: "number (int)"
p: "Optional<br>Default=one month"
d: "Size of the window in number of blocks"
{% enditemplate %}
*Parameter #2---blockhash*
{% itemplate ntpd1 %}
- n: "blockhash"
t: "string"
p: "Optional<br>Default=chain tip"
d: "The hash of the block that ends the window."
{% enditemplate %}
*Result*
{% endautocrossref %}
{
"time": xxxxx, (numeric) The timestamp for the final block in the window in UNIX format.
"txcount": xxxxx, (numeric) The total number of transactions in the chain up to that point.
"window_final_block_hash": "...", (string) The hash of the final block in the window.
"window_block_count": xxxxx, (numeric) Size of the window in number of blocks.
"window_tx_count": xxxxx, (numeric) The number of transactions in the window. Only returned if "window_block_count" is > 0.
"window_interval": xxxxx, (numeric) The elapsed time in the window in seconds. Only returned if "window_block_count" is > 0.
"txrate": x.xx, (numeric) The average rate of transactions per second in the window. Only returned if "window_interval" is > 0.
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getchaintxstats
{% endhighlight %}
{% endautocrossref %}

View File

@ -0,0 +1,40 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getconnectioncount.md" %}
##### GetConnectionCount
{% include helpers/subhead-links.md %}
{% assign summary_getConnectionCount="returns the number of connections to other nodes." %}
{% autocrossref %}
The `getconnectioncount` RPC {{summary_getConnectionCount}}
*Parameters: none*
*Result*
{% itemplate ntpd1 %}
- n: "`result`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The connection count"
{% enditemplate %}
*Example*
{% highlight bash %}
bitcoin-cli getconnectioncount
{% endhighlight %}
*See also*
* [GetNetTotals][rpc getnettotals]: {{summary_getNetTotals}}
* [GetPeerInfo][rpc getpeerinfo]: {{summary_getPeerInfo}}
* [GetNetworkInfo][rpc getnetworkinfo]: {{summary_getNetworkInfo}}
{% endautocrossref %}

View File

@ -0,0 +1,49 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getdescriptorinfo.md" %}
##### GetDescriptorInfo
{% include helpers/subhead-links.md %}
{% assign summary_getDescriptorInfo="analyses a descriptor." %}
{% autocrossref %}
*Added in Bitcoin Core 0.18.0*
The `getdescriptorinfo` RPC {{summary_getDescriptorInfo}}
*Parameter #1---descriptor*
{% itemplate ntpd1 %}
- n: "descriptor"
t: "string"
p: "Required<br>(exactly 1)"
d: "The descriptor."
{% enditemplate %}
*Result*
{% endautocrossref %}
{
"descriptor" : "desc", (string) The descriptor in canonical form, without private keys
"isrange" : true|false, (boolean) Whether the descriptor is ranged
"issolvable" : true|false, (boolean) Whether the descriptor is solvable
"hasprivatekeys" : true|false, (boolean) Whether the input descriptor contained at least one private key
}
{% autocrossref %}
*Example*
Analyse a descriptor
{% highlight bash %}
bitcoin-cli getdescriptorinfo "wpkh([d34db33f/84h/0h/0h]0279be667ef9dcbbac55a06295Ce870b07029Bfcdb2dce28d959f2815b16f81798)"
{% endhighlight %}
{% endautocrossref %}

View File

@ -0,0 +1,39 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getdifficulty.md" %}
##### GetDifficulty
{% include helpers/subhead-links.md %}
{% assign summary_getDifficulty="returns the proof-of-work difficulty as a multiple of the minimum difficulty." %}
{% autocrossref %}
The `getdifficulty` RPC {{summary_getDifficulty}}
*Parameters: none*
*Result*
{% itemplate ntpd1 %}
- n: "`result`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "the proof-of-work difficulty as a multiple of the minimum difficulty."
{% enditemplate %}
*Example*
{% highlight bash %}
bitcoin-cli getdifficulty
{% endhighlight %}
*See also*
* [GetNetworkHashPs][rpc getnetworkhashps]: {{summary_getNetworkHashPs}}
* [GetMiningInfo][rpc getmininginfo]: {{summary_getMiningInfo}}
{% endautocrossref %}

View File

@ -0,0 +1,65 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getmemoryinfo.md" %}
##### GetMemoryInfo
{% include helpers/subhead-links.md %}
{% assign summary_getMemoryInfo="returns an object containing information about memory usage." %}
{% autocrossref %}
*Added in Bitcoin Core 0.14.0*
The `getmemoryinfo` RPC {{summary_getMemoryInfo}}
*Parameter #1---mode*
{% itemplate ntpd1 %}
- n: "mode"
t: "string"
p: "Optional<br>Default=\"stats\""
d: "determines what kind of information is returned.
- \"stats\" returns general statistics about memory usage in the daemon.
- \"mallocinfo\" returns an XML string describing low-level heap state (only available if compiled with glibc 2.10+)."
{% enditemplate %}
*Result---(mode "stats")*
{% endautocrossref %}
{
"locked": { (json object) Information about locked memory manager
"used": xxxxx, (numeric) Number of bytes used
"free": xxxxx, (numeric) Number of bytes available in current arenas
"total": xxxxxxx, (numeric) Total number of bytes managed
"locked": xxxxxx, (numeric) Amount of bytes that succeeded locking. If this number is smaller than total, locking pages failed at some point and key data could be swapped to disk.
"chunks_used": xxxxx, (numeric) Number allocated chunks
"chunks_free": xxxxx, (numeric) Number unused chunks
}
}
{% autocrossref %}
*Result---(mode "mallocinfo")*
{% endautocrossref %}
"<malloc version="1">..."
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getmemoryinfo
{% endhighlight %}
*See also*
* [GetMemPoolInfo][rpc getmempoolinfo]: {{summary_getMemPoolInfo}}
{% endautocrossref %}

View File

@ -0,0 +1,96 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getmempoolancestors.md" %}
##### GetMemPoolAncestors
{% include helpers/subhead-links.md %}
{% assign summary_getMemPoolAncestors="if txid is in the mempool, returns all in-mempool ancestors." %}
{% autocrossref %}
*Added in Bitcoin Core 0.13.0*
The `getmempoolancestors` RPC {{summary_getMemPoolAncestors}}
*Parameter #1---txid*
{% itemplate ntpd1 %}
- n: "txid"
t: "string"
p: "Required<br>(exactly 1)"
d: "The transaction id (must be in mempool)"
{% enditemplate %}
*Parameter #2---verbose*
{% itemplate ntpd1 %}
- n: "verbose"
t: "boolean"
p: "Optional<br>Default=false"
d: "True for a json object, false for array of transaction ids"
{% enditemplate %}
*Result---(for verbose = false)*
{% endautocrossref %}
[ (json array of strings)
"transactionid" (string) The transaction id of an in-mempool ancestor transaction
,...
]
{% autocrossref %}
*Result---(for verbose = true)*
{% endautocrossref %}
{ (json object)
"transactionid" : { (json object)
"size" : n, (numeric) virtual transaction size as defined in BIP 141. This is different from actual serialized size for witness transactions as witness data is discounted.
"fee" : n, (numeric) transaction fee in BTC (DEPRECATED)
"modifiedfee" : n, (numeric) transaction fee with fee deltas used for mining priority (DEPRECATED)
"time" : n, (numeric) local time transaction entered pool in seconds since 1 Jan 1970 GMT
"height" : n, (numeric) block height when transaction entered pool
"descendantcount" : n, (numeric) number of in-mempool descendant transactions (including this one)
"descendantsize" : n, (numeric) virtual transaction size of in-mempool descendants (including this one)
"descendantfees" : n, (numeric) modified fees (see above) of in-mempool descendants (including this one) (DEPRECATED)
"ancestorcount" : n, (numeric) number of in-mempool ancestor transactions (including this one)
"ancestorsize" : n, (numeric) virtual transaction size of in-mempool ancestors (including this one)
"ancestorfees" : n, (numeric) modified fees (see above) of in-mempool ancestors (including this one) (DEPRECATED)
"wtxid" : hash, (string) hash of serialized transaction, including witness data
"fees" : {
"base" : n, (numeric) transaction fee in BTC
"modified" : n, (numeric) transaction fee with fee deltas used for mining priority in BTC
"ancestor" : n, (numeric) modified fees (see above) of in-mempool ancestors (including this one) in BTC
"descendant" : n, (numeric) modified fees (see above) of in-mempool descendants (including this one) in BTC
}
"depends" : [ (array) unconfirmed transactions used as inputs for this transaction
"transactionid", (string) parent transaction id
... ]
"spentby" : [ (array) unconfirmed transactions spending outputs from this transaction
"transactionid", (string) child transaction id
... ]
"bip125-replaceable" : true|false, (boolean) Whether this transaction could be replaced due to BIP125 (replace-by-fee)
}, ...
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getmempoolancestors "mytxid"
{% endhighlight %}
*See also*
* [GetMemPoolDescendants][rpc getmempooldescendants]: {{summary_getMemPoolDescendants}}
* [GetRawMemPool][rpc getrawmempool]: {{summary_getRawMemPool}}
{% endautocrossref %}

View File

@ -0,0 +1,96 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getmempooldescendants.md" %}
##### GetMemPoolDescendants
{% include helpers/subhead-links.md %}
{% assign summary_getMemPoolDescendants="if txid is in the mempool, returns all in-mempool descendants." %}
{% autocrossref %}
*Added in Bitcoin Core 0.13.0*
The `getmempooldescendants` RPC {{summary_getMemPoolDescendants}}
*Parameter #1---txid*
{% itemplate ntpd1 %}
- n: "txid"
t: "string"
p: "Required<br>(exactly 1)"
d: "The transaction id (must be in mempool)"
{% enditemplate %}
*Parameter #2---verbose*
{% itemplate ntpd1 %}
- n: "verbose"
t: "boolean"
p: "Optional<br>Default=false"
d: "True for a json object, false for array of transaction ids"
{% enditemplate %}
*Result---(for verbose = false)*
{% endautocrossref %}
[ (json array of strings)
"transactionid" (string) The transaction id of an in-mempool descendant transaction
,...
]
{% autocrossref %}
*Result---(for verbose = true)*
{% endautocrossref %}
{ (json object)
"transactionid" : { (json object)
"size" : n, (numeric) virtual transaction size as defined in BIP 141. This is different from actual serialized size for witness transactions as witness data is discounted.
"fee" : n, (numeric) transaction fee in BTC (DEPRECATED)
"modifiedfee" : n, (numeric) transaction fee with fee deltas used for mining priority (DEPRECATED)
"time" : n, (numeric) local time transaction entered pool in seconds since 1 Jan 1970 GMT
"height" : n, (numeric) block height when transaction entered pool
"descendantcount" : n, (numeric) number of in-mempool descendant transactions (including this one)
"descendantsize" : n, (numeric) virtual transaction size of in-mempool descendants (including this one)
"descendantfees" : n, (numeric) modified fees (see above) of in-mempool descendants (including this one) (DEPRECATED)
"ancestorcount" : n, (numeric) number of in-mempool ancestor transactions (including this one)
"ancestorsize" : n, (numeric) virtual transaction size of in-mempool ancestors (including this one)
"ancestorfees" : n, (numeric) modified fees (see above) of in-mempool ancestors (including this one) (DEPRECATED)
"wtxid" : hash, (string) hash of serialized transaction, including witness data
"fees" : {
"base" : n, (numeric) transaction fee in BTC
"modified" : n, (numeric) transaction fee with fee deltas used for mining priority in BTC
"ancestor" : n, (numeric) modified fees (see above) of in-mempool ancestors (including this one) in BTC
"descendant" : n, (numeric) modified fees (see above) of in-mempool descendants (including this one) in BTC
}
"depends" : [ (array) unconfirmed transactions used as inputs for this transaction
"transactionid", (string) parent transaction id
... ]
"spentby" : [ (array) unconfirmed transactions spending outputs from this transaction
"transactionid", (string) child transaction id
... ]
"bip125-replaceable" : true|false, (boolean) Whether this transaction could be replaced due to BIP125 (replace-by-fee)
}, ...
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getmempooldescendants "mytxid"
{% endhighlight %}
*See also*
* [GetMemPoolAncestors][rpc getmempoolancestors]: {{summary_getMemPoolAncestors}}
* [GetRawMemPool][rpc getrawmempool]: {{summary_getRawMemPool}}
{% endautocrossref %}

View File

@ -0,0 +1,74 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getmempoolentry.md" %}
##### GetMemPoolEntry
{% include helpers/subhead-links.md %}
{% assign summary_getMemPoolEntry="returns mempool data for given transaction." %}
{% autocrossref %}
*Added in Bitcoin Core 0.13.0*
The `getmempoolentry` RPC {{summary_getMemPoolEntry}}
*Parameter #1---txid*
{% itemplate ntpd1 %}
- n: "txid"
t: "string"
p: "Required<br>(exactly 1)"
d: "The transaction id (must be in mempool)"
{% enditemplate %}
*Result*
{% endautocrossref %}
{ (json object)
"size" : n, (numeric) virtual transaction size as defined in BIP 141. This is different from actual serialized size for witness transactions as witness data is discounted.
"fee" : n, (numeric) transaction fee in BTC (DEPRECATED)
"modifiedfee" : n, (numeric) transaction fee with fee deltas used for mining priority (DEPRECATED)
"time" : n, (numeric) local time transaction entered pool in seconds since 1 Jan 1970 GMT
"height" : n, (numeric) block height when transaction entered pool
"descendantcount" : n, (numeric) number of in-mempool descendant transactions (including this one)
"descendantsize" : n, (numeric) virtual transaction size of in-mempool descendants (including this one)
"descendantfees" : n, (numeric) modified fees (see above) of in-mempool descendants (including this one) (DEPRECATED)
"ancestorcount" : n, (numeric) number of in-mempool ancestor transactions (including this one)
"ancestorsize" : n, (numeric) virtual transaction size of in-mempool ancestors (including this one)
"ancestorfees" : n, (numeric) modified fees (see above) of in-mempool ancestors (including this one) (DEPRECATED)
"wtxid" : hash, (string) hash of serialized transaction, including witness data
"fees" : {
"base" : n, (numeric) transaction fee in BTC
"modified" : n, (numeric) transaction fee with fee deltas used for mining priority in BTC
"ancestor" : n, (numeric) modified fees (see above) of in-mempool ancestors (including this one) in BTC
"descendant" : n, (numeric) modified fees (see above) of in-mempool descendants (including this one) in BTC
}
"depends" : [ (array) unconfirmed transactions used as inputs for this transaction
"transactionid", (string) parent transaction id
... ]
"spentby" : [ (array) unconfirmed transactions spending outputs from this transaction
"transactionid", (string) child transaction id
... ]
"bip125-replaceable" : true|false, (boolean) Whether this transaction could be replaced due to BIP125 (replace-by-fee)
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getmempoolentry "mytxid"
{% endhighlight %}
*See also*
* [GetMemPoolAncestors][rpc getmempoolancestors]: {{summary_getMemPoolAncestors}}
* [GetMemPoolDescendants][rpc getmempooldescendants]: {{summary_getMemPoolDescendants}}
* [GetRawMemPool][rpc getrawmempool]: {{summary_getRawMemPool}}
{% endautocrossref %}

View File

@ -0,0 +1,45 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getmempoolinfo.md" %}
##### GetMemPoolInfo
{% include helpers/subhead-links.md %}
{% assign summary_getMemPoolInfo="returns details on the active state of the TX memory pool." %}
{% autocrossref %}
The `getmempoolinfo` RPC {{summary_getMemPoolInfo}}
*Parameters: none*
*Result*
{% endautocrossref %}
{
"size": xxxxx, (numeric) Current tx count
"bytes": xxxxx, (numeric) Sum of all virtual transaction sizes as defined in BIP 141. Differs from actual serialized size because witness data is discounted
"usage": xxxxx, (numeric) Total memory usage for the mempool
"maxmempool": xxxxx, (numeric) Maximum memory usage for the mempool
"mempoolminfee": xxxxx (numeric) Minimum fee rate in BTC/kB for tx to be accepted. Is the maximum of minrelaytxfee and minimum mempool fee
"minrelaytxfee": xxxxx (numeric) Current minimum relay fee for transactions
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getmempoolinfo
{% endhighlight %}
*See also*
* [GetBlockChainInfo][rpc getblockchaininfo]: {{summary_getBlockChainInfo}}
* [GetRawMemPool][rpc getrawmempool]: {{summary_getRawMemPool}}
* [GetTxOutSetInfo][rpc gettxoutsetinfo]: {{summary_getTxOutSetInfo}}
{% endautocrossref %}

View File

@ -0,0 +1,48 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getmininginfo.md" %}
##### GetMiningInfo
{% include helpers/subhead-links.md %}
{% assign summary_getMiningInfo="returns a json object containing mining-related information." %}
{% autocrossref %}
The `getmininginfo` RPC {{summary_getMiningInfo}}
*Parameters: none*
*Result*
{% endautocrossref %}
{
"blocks": nnn, (numeric) The current block
"currentblockweight": nnn, (numeric, optional) The block weight of the last assembled block (only present if a block was ever assembled)
"currentblocktx": nnn, (numeric, optional) The number of block transactions of the last assembled block (only present if a block was ever assembled)
"difficulty": xxx.xxxxx (numeric) The current difficulty
"networkhashps": nnn, (numeric) The network hashes per second
"pooledtx": n (numeric) The size of the mempool
"chain": "xxxx", (string) current network name as defined in BIP70 (main, test, regtest)
"warnings": "..." (string) any network and blockchain warnings
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getmininginfo
{% endhighlight %}
*See also*
* [GetMemPoolInfo][rpc getmempoolinfo]: {{summary_getMemPoolInfo}}
* [GetRawMemPool][rpc getrawmempool]: {{summary_getRawMemPool}}
* [GetBlockTemplate][rpc getblocktemplate]: {{summary_getBlockTemplate}}
* [Generate][rpc generate]: {{summary_generate}}
{% endautocrossref %}

View File

@ -0,0 +1,50 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getnettotals.md" %}
##### GetNetTotals
{% include helpers/subhead-links.md %}
{% assign summary_getNetTotals="returns information about network traffic, including bytes in, bytes out, and current time." %}
{% autocrossref %}
The `getnettotals` RPC {{summary_getNetTotals}}
*Parameters: none*
*Result*
{% endautocrossref %}
{
"totalbytesrecv": n, (numeric) Total bytes received
"totalbytessent": n, (numeric) Total bytes sent
"timemillis": t, (numeric) Current UNIX time in milliseconds
"uploadtarget":
{
"timeframe": n, (numeric) Length of the measuring timeframe in seconds
"target": n, (numeric) Target in bytes
"target_reached": true|false, (boolean) True if target is reached
"serve_historical_blocks": true|false, (boolean) True if serving historical blocks
"bytes_left_in_cycle": t, (numeric) Bytes left in current time cycle
"time_left_in_cycle": t (numeric) Seconds left in current time cycle
}
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getnettotals
{% endhighlight %}
*See also*
* [GetNetworkInfo][rpc getnetworkinfo]: {{summary_getNetworkInfo}}
* [GetPeerInfo][rpc getpeerinfo]: {{summary_getPeerInfo}}
{% endautocrossref %}

View File

@ -0,0 +1,61 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getnetworkhashps.md" %}
##### GetNetworkHashPs
{% include helpers/subhead-links.md %}
{% assign summary_getNetworkHashPs="returns the estimated network hashes per second based on the last n blocks." %}
{% autocrossref %}
The `getnetworkhashps` RPC {{summary_getNetworkHashPs}}
Pass in [blocks] to override # of blocks, -1 specifies since last difficulty change.
Pass in [height] to estimate the network speed at the time when a certain block was found.
*Parameter #1---nblocks*
{% itemplate ntpd1 %}
- n: "nblocks"
t: "number (int)"
p: "Optional<br>Default=120"
d: "The number of blocks, or -1 for blocks since last difficulty change."
{% enditemplate %}
*Parameter #2---height*
{% itemplate ntpd1 %}
- n: "height"
t: "number (int)"
p: "Optional<br>Default=-1"
d: "To estimate at the time of the given height."
{% enditemplate %}
*Result*
{% itemplate ntpd1 %}
- n: "`result`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "Hashes per second estimated"
{% enditemplate %}
*Example*
{% highlight bash %}
bitcoin-cli getnetworkhashps
{% endhighlight %}
*See also*
* [GetDifficulty][rpc getdifficulty]: {{summary_getDifficulty}}
* [GetBlock][rpc getblock]: {{summary_getBlock}}
{% endautocrossref %}

View File

@ -0,0 +1,67 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getnetworkinfo.md" %}
##### GetNetworkInfo
{% include helpers/subhead-links.md %}
{% assign summary_getNetworkInfo="returns an object containing various state info regarding P2P networking." %}
{% autocrossref %}
The `getnetworkinfo` RPC {{summary_getNetworkInfo}}
*Parameters: none*
*Result*
{% endautocrossref %}
{
"version": xxxxx, (numeric) the server version
"subversion": "/Satoshi:x.x.x/", (string) the server subversion string
"protocolversion": xxxxx, (numeric) the protocol version
"localservices": "xxxxxxxxxxxxxxxx", (string) the services we offer to the network
"localrelay": true|false, (bool) true if transaction relay is requested from peers
"timeoffset": xxxxx, (numeric) the time offset
"connections": xxxxx, (numeric) the number of connections
"networkactive": true|false, (bool) whether p2p networking is enabled
"networks": [ (array) information per network
{
"name": "xxx", (string) network (ipv4, ipv6 or onion)
"limited": true|false, (boolean) is the network limited using -onlynet?
"reachable": true|false, (boolean) is the network reachable?
"proxy": "host:port" (string) the proxy that is used for this network, or empty if none
"proxy_randomize_credentials": true|false, (string) Whether randomized credentials are used
}
,...
],
"relayfee": x.xxxxxxxx, (numeric) minimum relay fee for transactions in BTC/kB
"incrementalfee": x.xxxxxxxx, (numeric) minimum fee increment for mempool limiting or BIP 125 replacement in BTC/kB
"localaddresses": [ (array) list of local addresses
{
"address": "xxxx", (string) network address
"port": xxx, (numeric) network port
"score": xxx (numeric) relative score
}
,...
]
"warnings": "..." (string) any network and blockchain warnings
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getnetworkinfo
{% endhighlight %}
*See also*
* [GetPeerInfo][rpc getpeerinfo]: {{summary_getPeerInfo}}
* [GetNetTotals][rpc getnettotals]: {{summary_getNetTotals}}
{% endautocrossref %}

View File

@ -0,0 +1,60 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getnewaddress.md" %}
##### GetNewAddress
{% include helpers/subhead-links.md %}
{% assign summary_getNewAddress="returns a new Bitcoin address for receiving payments." %}
{% autocrossref %}
The `getnewaddress` RPC {{summary_getNewAddress}}
If 'label' is specified, it is added to the address book
so payments received with the address will be associated with 'label'.
*Parameter #1---label*
{% itemplate ntpd1 %}
- n: "label"
t: "string"
p: "Optional<br>Default=\"\""
d: "The label name for the address to be linked to. It can also be set to the empty string \"\" to represent the default label. The label does not need to exist, it will be created if there is no label by the given name."
{% enditemplate %}
*Parameter #2---address_type*
{% itemplate ntpd1 %}
- n: "address_type"
t: "string"
p: "Optional<br>Default=set by -addresstype"
d: "The address type to use. Options are \"legacy\", \"p2sh-segwit\", and \"bech32\"."
{% enditemplate %}
*Result*
{% itemplate ntpd1 %}
- n: "`result`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The new bitcoin address"
{% enditemplate %}
*Example*
{% highlight bash %}
bitcoin-cli getnewaddress
{% endhighlight %}
*See also*
* [GetRawChangeAddress][rpc getrawchangeaddress]: {{summary_getRawChangeAddress}}
* [GetBalance][rpc getbalance]: {{summary_getBalance}}
{% endautocrossref %}

View File

@ -0,0 +1,50 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getnodeaddresses.md" %}
##### GetNodeAddresses
{% include helpers/subhead-links.md %}
{% assign summary_getNodeAddresses="return known addresses which can potentially be used to find new nodes in the network." %}
{% autocrossref %}
*Added in Bitcoin Core 0.18.0*
The `getnodeaddresses` RPC {{summary_getNodeAddresses}}
*Parameter #1---count*
{% itemplate ntpd1 %}
- n: "count"
t: "number (int)"
p: "Optional<br>Default=1"
d: "How many addresses to return. Limited to the smaller of 2500 or 23% of all known addresses."
{% enditemplate %}
*Result*
{% endautocrossref %}
[
{
"time": ttt, (numeric) Timestamp in seconds since epoch (Jan 1 1970 GMT) keeping track of when the node was last seen
"services": n, (numeric) The services offered
"address": "host", (string) The address of the node
"port": n (numeric) The port of the node
}
,....
]
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getnodeaddresses 8
{% endhighlight %}
{% endautocrossref %}

View File

@ -0,0 +1,83 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getpeerinfo.md" %}
##### GetPeerInfo
{% include helpers/subhead-links.md %}
{% assign summary_getPeerInfo="returns data about each connected network node as a json array of objects." %}
{% autocrossref %}
The `getpeerinfo` RPC {{summary_getPeerInfo}}
*Parameters: none*
*Result*
{% endautocrossref %}
[
{
"id": n, (numeric) Peer index
"addr":"host:port", (string) The IP address and port of the peer
"addrbind":"ip:port", (string) Bind address of the connection to the peer
"addrlocal":"ip:port", (string) Local address as reported by the peer
"services":"xxxxxxxxxxxxxxxx", (string) The services offered
"relaytxes":true|false, (boolean) Whether peer has asked us to relay transactions to it
"lastsend": ttt, (numeric) The time in seconds since epoch (Jan 1 1970 GMT) of the last send
"lastrecv": ttt, (numeric) The time in seconds since epoch (Jan 1 1970 GMT) of the last receive
"bytessent": n, (numeric) The total bytes sent
"bytesrecv": n, (numeric) The total bytes received
"conntime": ttt, (numeric) The connection time in seconds since epoch (Jan 1 1970 GMT)
"timeoffset": ttt, (numeric) The time offset in seconds
"pingtime": n, (numeric) ping time (if available)
"minping": n, (numeric) minimum observed ping time (if any at all)
"pingwait": n, (numeric) ping wait (if non-zero)
"version": v, (numeric) The peer version, such as 70001
"subver": "/Satoshi:0.8.5/", (string) The string version
"inbound": true|false, (boolean) Inbound (true) or Outbound (false)
"addnode": true|false, (boolean) Whether connection was due to addnode/-connect or if it was an automatic/inbound connection
"startingheight": n, (numeric) The starting height (block) of the peer
"banscore": n, (numeric) The ban score
"synced_headers": n, (numeric) The last header we have in common with this peer
"synced_blocks": n, (numeric) The last block we have in common with this peer
"inflight": [
n, (numeric) The heights of blocks we're currently asking from this peer
...
],
"whitelisted": true|false, (boolean) Whether the peer is whitelisted
"minfeefilter": n, (numeric) The minimum fee rate for transactions this peer accepts
"bytessent_per_msg": {
"msg": n, (numeric) The total bytes sent aggregated by message type
When a message type is not listed in this json object, the bytes sent are 0.
Only known message types can appear as keys in the object.
...
},
"bytesrecv_per_msg": {
"msg": n, (numeric) The total bytes received aggregated by message type
When a message type is not listed in this json object, the bytes received are 0.
Only known message types can appear as keys in the object and all bytes received of unknown message types are listed under '*other*'.
...
}
}
,...
]
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getpeerinfo
{% endhighlight %}
*See also*
* [GetAddedNodeInfo][rpc getaddednodeinfo]: {{summary_getAddedNodeInfo}}
* [GetNetTotals][rpc getnettotals]: {{summary_getNetTotals}}
* [GetNetworkInfo][rpc getnetworkinfo]: {{summary_getNetworkInfo}}
{% endautocrossref %}

View File

@ -0,0 +1,48 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getrawchangeaddress.md" %}
##### GetRawChangeAddress
{% include helpers/subhead-links.md %}
{% assign summary_getRawChangeAddress="returns a new Bitcoin address, for receiving change." %}
{% autocrossref %}
The `getrawchangeaddress` RPC {{summary_getRawChangeAddress}}
This is for use with raw transactions, NOT normal use.
*Parameter #1---address_type*
{% itemplate ntpd1 %}
- n: "address_type"
t: "string"
p: "Optional<br>Default=set by -changetype"
d: "The address type to use. Options are \"legacy\", \"p2sh-segwit\", and \"bech32\"."
{% enditemplate %}
*Result*
{% itemplate ntpd1 %}
- n: "`result`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The address"
{% enditemplate %}
*Example*
{% highlight bash %}
bitcoin-cli getrawchangeaddress
{% endhighlight %}
*See also*
* [GetNewAddress][rpc getnewaddress]: {{summary_getNewAddress}}
{% endautocrossref %}

View File

@ -0,0 +1,87 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getrawmempool.md" %}
##### GetRawMemPool
{% include helpers/subhead-links.md %}
{% assign summary_getRawMemPool="returns all transaction ids in memory pool as a json array of string transaction ids." %}
{% autocrossref %}
The `getrawmempool` RPC {{summary_getRawMemPool}}
Hint: use getmempoolentry to fetch a specific transaction from the mempool.
*Parameter #1---verbose*
{% itemplate ntpd1 %}
- n: "verbose"
t: "boolean"
p: "Optional<br>Default=false"
d: "True for a json object, false for array of transaction ids"
{% enditemplate %}
*Result---(for verbose = false)*
{% endautocrossref %}
[ (json array of string)
"transactionid" (string) The transaction id
,...
]
{% autocrossref %}
*Result---(for verbose = true)*
{% endautocrossref %}
{ (json object)
"transactionid" : { (json object)
"size" : n, (numeric) virtual transaction size as defined in BIP 141. This is different from actual serialized size for witness transactions as witness data is discounted.
"fee" : n, (numeric) transaction fee in BTC (DEPRECATED)
"modifiedfee" : n, (numeric) transaction fee with fee deltas used for mining priority (DEPRECATED)
"time" : n, (numeric) local time transaction entered pool in seconds since 1 Jan 1970 GMT
"height" : n, (numeric) block height when transaction entered pool
"descendantcount" : n, (numeric) number of in-mempool descendant transactions (including this one)
"descendantsize" : n, (numeric) virtual transaction size of in-mempool descendants (including this one)
"descendantfees" : n, (numeric) modified fees (see above) of in-mempool descendants (including this one) (DEPRECATED)
"ancestorcount" : n, (numeric) number of in-mempool ancestor transactions (including this one)
"ancestorsize" : n, (numeric) virtual transaction size of in-mempool ancestors (including this one)
"ancestorfees" : n, (numeric) modified fees (see above) of in-mempool ancestors (including this one) (DEPRECATED)
"wtxid" : hash, (string) hash of serialized transaction, including witness data
"fees" : {
"base" : n, (numeric) transaction fee in BTC
"modified" : n, (numeric) transaction fee with fee deltas used for mining priority in BTC
"ancestor" : n, (numeric) modified fees (see above) of in-mempool ancestors (including this one) in BTC
"descendant" : n, (numeric) modified fees (see above) of in-mempool descendants (including this one) in BTC
}
"depends" : [ (array) unconfirmed transactions used as inputs for this transaction
"transactionid", (string) parent transaction id
... ]
"spentby" : [ (array) unconfirmed transactions spending outputs from this transaction
"transactionid", (string) child transaction id
... ]
"bip125-replaceable" : true|false, (boolean) Whether this transaction could be replaced due to BIP125 (replace-by-fee)
}, ...
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getrawmempool true
{% endhighlight %}
*See also*
* [GetMemPoolInfo][rpc getmempoolinfo]: {{summary_getMemPoolInfo}}
* [GetMemPoolEntry][rpc getmempoolentry]: {{summary_getMemPoolEntry}}
* [GetTxOutSetInfo][rpc gettxoutsetinfo]: {{summary_getTxOutSetInfo}}
{% endautocrossref %}

View File

@ -0,0 +1,139 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getrawtransaction.md" %}
##### GetRawTransaction
{% include helpers/subhead-links.md %}
{% assign summary_getRawTransaction="return the raw transaction data." %}
{% autocrossref %}
The `getrawtransaction` RPC {{summary_getRawTransaction}}
By default this function only works for mempool transactions. When called with a blockhash
argument, getrawtransaction will return the transaction if the specified block is available and
the transaction is found in that block. When called without a blockhash argument, getrawtransaction
will return the transaction if it is in the mempool, or if -txindex is enabled and the transaction
is in a block in the blockchain.
Hint: Use gettransaction for wallet transactions.
If verbose is 'true', returns an Object with information about 'txid'.
If verbose is 'false' or omitted, returns a string that is serialized, hex-encoded data for 'txid'.
*Parameter #1---txid*
{% itemplate ntpd1 %}
- n: "txid"
t: "string"
p: "Required<br>(exactly 1)"
d: "The transaction id"
{% enditemplate %}
*Parameter #2---verbose*
{% itemplate ntpd1 %}
- n: "verbose"
t: "boolean"
p: "Optional<br>Default=false"
d: "If false, return a string, otherwise return a json object"
{% enditemplate %}
*Parameter #3---blockhash*
{% itemplate ntpd1 %}
- n: "blockhash"
t: "string"
p: "Optional"
d: "The block in which to look for the transaction"
{% enditemplate %}
*Result---(if verbose is not set or set to false)*
{% itemplate ntpd1 %}
- n: "`result`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "The serialized, hex-encoded data for 'txid'"
{% enditemplate %}
*Result---(if verbose is set to true)*
{% endautocrossref %}
{
"in_active_chain": b, (bool) Whether specified block is in the active chain or not (only present with explicit "blockhash" argument)
"hex" : "data", (string) The serialized, hex-encoded data for 'txid'
"txid" : "id", (string) The transaction id (same as provided)
"hash" : "id", (string) The transaction hash (differs from txid for witness transactions)
"size" : n, (numeric) The serialized transaction size
"vsize" : n, (numeric) The virtual transaction size (differs from size for witness transactions)
"weight" : n, (numeric) The transaction's weight (between vsize*4-3 and vsize*4)
"version" : n, (numeric) The version
"locktime" : ttt, (numeric) The lock time
"vin" : [ (array of json objects)
{
"txid": "id", (string) The transaction id
"vout": n, (numeric)
"scriptSig": { (json object) The script
"asm": "asm", (string) asm
"hex": "hex" (string) hex
},
"sequence": n (numeric) The script sequence number
"txinwitness": ["hex", ...] (array of string) hex-encoded witness data (if any)
}
,...
],
"vout" : [ (array of json objects)
{
"value" : x.xxx, (numeric) The value in BTC
"n" : n, (numeric) index
"scriptPubKey" : { (json object)
"asm" : "asm", (string) the asm
"hex" : "hex", (string) the hex
"reqSigs" : n, (numeric) The required sigs
"type" : "pubkeyhash", (string) The type, eg 'pubkeyhash'
"addresses" : [ (json array of string)
"address" (string) bitcoin address
,...
]
}
}
,...
],
"blockhash" : "hash", (string) the block hash
"confirmations" : n, (numeric) The confirmations
"blocktime" : ttt (numeric) The block time in seconds since epoch (Jan 1 1970 GMT)
"time" : ttt, (numeric) Same as "blocktime"
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getrawtransaction "mytxid"
{% endhighlight %}
{% highlight bash %}
bitcoin-cli getrawtransaction "mytxid" true
{% endhighlight %}
{% highlight bash %}
bitcoin-cli getrawtransaction "mytxid" false "myblockhash"
{% endhighlight %}
{% highlight bash %}
bitcoin-cli getrawtransaction "mytxid" true "myblockhash"
{% endhighlight %}
*See also*
* [GetTransaction][rpc gettransaction]: {{summary_getTransaction}}
{% endautocrossref %}

View File

@ -0,0 +1,64 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getreceivedbyaddress.md" %}
##### GetReceivedByAddress
{% include helpers/subhead-links.md %}
{% assign summary_getReceivedByAddress="returns the total amount received by the given address in transactions with at least minconf confirmations." %}
{% autocrossref %}
The `getreceivedbyaddress` RPC {{summary_getReceivedByAddress}}
*Parameter #1---address*
{% itemplate ntpd1 %}
- n: "address"
t: "string"
p: "Required<br>(exactly 1)"
d: "The bitcoin address for transactions."
{% enditemplate %}
*Parameter #2---minconf*
{% itemplate ntpd1 %}
- n: "minconf"
t: "number (int)"
p: "Optional<br>Default=1"
d: "Only include transactions confirmed at least this many times."
{% enditemplate %}
*Result*
{% itemplate ntpd1 %}
- n: "`result`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The total amount in BTC received at this address."
{% enditemplate %}
*Example*
The amount from transactions with at least 1 confirmation
{% highlight bash %}
bitcoin-cli getreceivedbyaddress "1D1ZrZNe3JUo7ZycKEYQQiQAWd9y54F4XX"
{% endhighlight %}
The amount including unconfirmed transactions, zero confirmations
{% highlight bash %}
bitcoin-cli getreceivedbyaddress "1D1ZrZNe3JUo7ZycKEYQQiQAWd9y54F4XX" 0
{% endhighlight %}
The amount with at least 6 confirmations
{% highlight bash %}
bitcoin-cli getreceivedbyaddress "1D1ZrZNe3JUo7ZycKEYQQiQAWd9y54F4XX" 6
{% endhighlight %}
{% endautocrossref %}

View File

@ -0,0 +1,66 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getreceivedbylabel.md" %}
##### GetReceivedByLabel
{% include helpers/subhead-links.md %}
{% assign summary_getReceivedByLabel="returns the total amount received by addresses with <label> in transactions with at least [minconf] confirmations." %}
{% autocrossref %}
*Added in Bitcoin Core 0.17.0*
The `getreceivedbylabel` RPC {{summary_getReceivedByLabel}}
*Parameter #1---label*
{% itemplate ntpd1 %}
- n: "label"
t: "string"
p: "Required<br>(exactly 1)"
d: "The selected label, may be the default label using \"\"."
{% enditemplate %}
*Parameter #2---minconf*
{% itemplate ntpd1 %}
- n: "minconf"
t: "number (int)"
p: "Optional<br>Default=1"
d: "Only include transactions confirmed at least this many times."
{% enditemplate %}
*Result*
{% itemplate ntpd1 %}
- n: "`result`"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "The total amount in BTC received for this label."
{% enditemplate %}
*Example*
Amount received by the default label with at least 1 confirmation
{% highlight bash %}
bitcoin-cli getreceivedbylabel ""
{% endhighlight %}
Amount received at the tabby label including unconfirmed amounts with zero confirmations
{% highlight bash %}
bitcoin-cli getreceivedbylabel "tabby" 0
{% endhighlight %}
The amount with at least 6 confirmations
{% highlight bash %}
bitcoin-cli getreceivedbylabel "tabby" 6
{% endhighlight %}
{% endautocrossref %}

View File

@ -0,0 +1,42 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getrpcinfo.md" %}
##### GetRpcInfo
{% include helpers/subhead-links.md %}
{% assign summary_getRpcInfo="returns details of the RPC server." %}
{% autocrossref %}
*Added in Bitcoin Core 0.18.0*
The `getrpcinfo` RPC {{summary_getRpcInfo}}
*Parameters: none*
*Result*
{% endautocrossref %}
{
"active_commands" (array) All active commands
[
{ (object) Information about an active command
"method" (string) The name of the RPC command
"duration" (numeric) The running time in microseconds
},...
]
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli getrpcinfo
{% endhighlight %}
{% endautocrossref %}

View File

@ -0,0 +1,90 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/gettransaction.md" %}
##### GetTransaction
{% include helpers/subhead-links.md %}
{% assign summary_getTransaction="get detailed information about in-wallet transaction <txid>." %}
{% autocrossref %}
The `gettransaction` RPC {{summary_getTransaction}}
*Parameter #1---txid*
{% itemplate ntpd1 %}
- n: "txid"
t: "string"
p: "Required<br>(exactly 1)"
d: "The transaction id"
{% enditemplate %}
*Parameter #2---include_watchonly*
{% itemplate ntpd1 %}
- n: "include_watchonly"
t: "boolean"
p: "Optional<br>Default=false"
d: "Whether to include watch-only addresses in balance calculation and details[]"
{% enditemplate %}
*Result*
{% endautocrossref %}
{
"amount" : x.xxx, (numeric) The transaction amount in BTC
"fee": x.xxx, (numeric) The amount of the fee in BTC. This is negative and only available for the
'send' category of transactions.
"confirmations" : n, (numeric) The number of confirmations
"blockhash" : "hash", (string) The block hash
"blockindex" : xx, (numeric) The index of the transaction in the block that includes it
"blocktime" : ttt, (numeric) The time in seconds since epoch (1 Jan 1970 GMT)
"txid" : "transactionid", (string) The transaction id.
"time" : ttt, (numeric) The transaction time in seconds since epoch (1 Jan 1970 GMT)
"timereceived" : ttt, (numeric) The time received in seconds since epoch (1 Jan 1970 GMT)
"bip125-replaceable": "yes|no|unknown", (string) Whether this transaction could be replaced due to BIP125 (replace-by-fee);
may be unknown for unconfirmed transactions not in the mempool
"details" : [
{
"address" : "address", (string) The bitcoin address involved in the transaction
"category" : (string) The transaction category.
"send" Transactions sent.
"receive" Non-coinbase transactions received.
"generate" Coinbase transactions received with more than 100 confirmations.
"immature" Coinbase transactions received with 100 or fewer confirmations.
"orphan" Orphaned coinbase transactions received.
"amount" : x.xxx, (numeric) The amount in BTC
"label" : "label", (string) A comment for the address/transaction, if any
"vout" : n, (numeric) the vout value
"fee": x.xxx, (numeric) The amount of the fee in BTC. This is negative and only available for the
'send' category of transactions.
"abandoned": xxx (bool) 'true' if the transaction has been abandoned (inputs are respendable). Only available for the
'send' category of transactions.
}
,...
],
"hex" : "data" (string) Raw data for transaction
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli gettransaction "1075db55d416d3ca199f55b6084e2115b9345e16c5cf302fc80e9d5fbf5d48d"
{% endhighlight %}
{% highlight bash %}
bitcoin-cli gettransaction "1075db55d416d3ca199f55b6084e2115b9345e16c5cf302fc80e9d5fbf5d48d" true
{% endhighlight %}
*See also*
* [GetRawTransaction][rpc getrawtransaction]: {{summary_getRawTransaction}}
{% endautocrossref %}

View File

@ -0,0 +1,87 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/gettxout.md" %}
##### GetTxOut
{% include helpers/subhead-links.md %}
{% assign summary_getTxOut="returns details about an unspent transaction output." %}
{% autocrossref %}
The `gettxout` RPC {{summary_getTxOut}}
*Parameter #1---txid*
{% itemplate ntpd1 %}
- n: "txid"
t: "string"
p: "Required<br>(exactly 1)"
d: "The transaction id"
{% enditemplate %}
*Parameter #2---n*
{% itemplate ntpd1 %}
- n: "n"
t: "number (int)"
p: "Required<br>(exactly 1)"
d: "vout number"
{% enditemplate %}
*Parameter #3---include_mempool*
{% itemplate ntpd1 %}
- n: "include_mempool"
t: "boolean"
p: "Optional<br>Default=true"
d: "Whether to include the mempool. Note that an unspent output that is spent in the mempool won't appear."
{% enditemplate %}
*Result*
{% endautocrossref %}
{
"bestblock": "hash", (string) The hash of the block at the tip of the chain
"confirmations" : n, (numeric) The number of confirmations
"value" : x.xxx, (numeric) The transaction value in BTC
"scriptPubKey" : { (json object)
"asm" : "code", (string)
"hex" : "hex", (string)
"reqSigs" : n, (numeric) Number of required signatures
"type" : "pubkeyhash", (string) The type, eg pubkeyhash
"addresses" : [ (array of string) array of bitcoin addresses
"address" (string) bitcoin address
,...
]
},
"coinbase" : true|false (boolean) Coinbase or not
}
{% autocrossref %}
*Example*
Get unspent transactions
{% highlight bash %}
bitcoin-cli listunspent
{% endhighlight %}
View the details
{% highlight bash %}
bitcoin-cli gettxout "txid" 1
{% endhighlight %}
*See also*
* [GetRawTransaction][rpc getrawtransaction]: {{summary_getRawTransaction}}
* [GetTransaction][rpc gettransaction]: {{summary_getTransaction}}
{% endautocrossref %}

View File

@ -0,0 +1,68 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/gettxoutproof.md" %}
##### GetTxOutProof
{% include helpers/subhead-links.md %}
{% assign summary_getTxOutProof="returns a hex-encoded proof that "txid" was included in a block." %}
{% autocrossref %}
*Added in Bitcoin Core 0.11.0*
The `gettxoutproof` RPC {{summary_getTxOutProof}}
NOTE: By default this function only works sometimes. This is when there is an
unspent output in the utxo for this transaction. To make it always work,
you need to maintain a transaction index, using the -txindex command line option or
specify the block in which the transaction is included manually (by blockhash).
*Parameter #1---txids*
{% itemplate ntpd1 %}
- n: "txids"
t: "json array"
p: "Required<br>(exactly 1)"
d: "A json array of txids to filter"
{% enditemplate %}
{% endautocrossref %}
[
"txid", (string) A transaction hash
...
]
{% autocrossref %}
*Parameter #2---blockhash*
{% itemplate ntpd1 %}
- n: "blockhash"
t: "string"
p: "Optional"
d: "If specified, looks for txid in the block with this hash"
{% enditemplate %}
*Result*
{% itemplate ntpd1 %}
- n: "`result`"
t: "string (hex)"
p: "Required<br>(exactly 1)"
d: "A string that is a serialized, hex-encoded data for the proof."
{% enditemplate %}
*See also*
* [VerifyTxOutProof][rpc verifytxoutproof]: {{summary_verifyTxOutProof}}
* [`merkleblock` message][merkleblock message]: A description of the
format used for the proof.
{% endautocrossref %}

View File

@ -0,0 +1,48 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/gettxoutsetinfo.md" %}
##### GetTxOutSetInfo
{% include helpers/subhead-links.md %}
{% assign summary_getTxOutSetInfo="returns statistics about the unspent transaction output set." %}
{% autocrossref %}
The `gettxoutsetinfo` RPC {{summary_getTxOutSetInfo}}
Note this call may take some time.
*Parameters: none*
*Result*
{% endautocrossref %}
{
"height":n, (numeric) The current block height (index)
"bestblock": "hex", (string) The hash of the block at the tip of the chain
"transactions": n, (numeric) The number of transactions with unspent outputs
"txouts": n, (numeric) The number of unspent transaction outputs
"bogosize": n, (numeric) A meaningless metric for UTXO set size
"hash_serialized_2": "hash", (string) The serialized hash
"disk_size": n, (numeric) The estimated size of the chainstate on disk
"total_amount": x.xxx (numeric) The total amount
}
{% autocrossref %}
*Example*
{% highlight bash %}
bitcoin-cli gettxoutsetinfo
{% endhighlight %}
*See also*
* [GetBlockChainInfo][rpc getblockchaininfo]: {{summary_getBlockChainInfo}}
* [GetMemPoolInfo][rpc getmempoolinfo]: {{summary_getMemPoolInfo}}
{% endautocrossref %}

View File

@ -0,0 +1,32 @@
{% comment %}
This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_data/devdocs/en/bitcoin-core/rpcs/rpcs/getunconfirmedbalance.md" %}
##### GetUnconfirmedBalance
{% include helpers/subhead-links.md %}
{% assign summary_getUnconfirmedBalance="returns the server's total unconfirmed balance." %}
{% autocrossref %}
The `getunconfirmedbalance` RPC {{summary_getUnconfirmedBalance}}
*Parameters: none*
*Result---`null` on success*
{% itemplate ntpd1 %}
- n: "`result`"
t: "null"
p: "Required<br>(exactly 1)"
d: "JSON `null` when the command was successfull or a JSON with an error field on error."
{% enditemplate %}
*See also*
* [GetBalance][rpc getbalance]: {{summary_getBalance}}
{% endautocrossref %}

Some files were not shown because too many files have changed in this diff Show More