<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://en.bitcoin.it/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Emery</id>
	<title>Bitcoin Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://en.bitcoin.it/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Emery"/>
	<link rel="alternate" type="text/html" href="https://en.bitcoin.it/wiki/Special:Contributions/Emery"/>
	<updated>2026-05-16T23:36:53Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=Bitstamp&amp;diff=38898</id>
		<title>Bitstamp</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=Bitstamp&amp;diff=38898"/>
		<updated>2013-06-25T14:50:39Z</updated>

		<summary type="html">&lt;p&gt;Emery: Tulpenmanie is now Dojima&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A currency exchange, which operates a BTC/USD market with support for various currencies for deposit and withdrawal.&lt;br /&gt;
&lt;br /&gt;
==Trading==&lt;br /&gt;
*Buying/selling&lt;br /&gt;
&lt;br /&gt;
A buy/sell order is executed partially or in full when the price bid can be matched against a sell/buy order that is at or below the bid amount. &lt;br /&gt;
&lt;br /&gt;
==Adding funds==&lt;br /&gt;
&lt;br /&gt;
===BTC===&lt;br /&gt;
There are no fees incurred when when transferring bitcoins for deposit. Funds are available once confirmed (3 confirms), a process that can take roughly 30minutes.  A Bitstamp [[Redeemable code]] (coupon) denominated in BTC or BTC and USD can be deposited.  The bitcoins using these coupons are instantly credited.&lt;br /&gt;
&lt;br /&gt;
===EUR===&lt;br /&gt;
Exchange accepts EUR deposits via SEPA transfers, then converts them to USD and credits them to online account. &#039;&#039;&#039;No deposit fees!&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===GBP===&lt;br /&gt;
Exchange accepts wire transfers in GBP, then converts them to USD and credits them to online account.&amp;lt;br/&amp;gt;&lt;br /&gt;
Charging 0.1% deposit fee(minimum fee = $15)&lt;br /&gt;
&lt;br /&gt;
===USD===&lt;br /&gt;
Exchange accepts international wire transfers in USD, charging 0.1% deposit fee(minimum fee = $15)&amp;lt;br/&amp;gt;&lt;br /&gt;
Exchange accepts a Bitstamp redeemable code (coupon) in USD denomination or combination of USD and BTC&amp;lt;br/&amp;gt;&lt;br /&gt;
Exchange supports transfers between Dwolla, MtGox, Cash Bank Deposits, BTC-E and VirWox via &#039;&#039;&#039;Bitinstant&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
===CHF===&lt;br /&gt;
Exchange accepts wire transfers in CHF, then converts them to USD and credits them to online account.&amp;lt;br/&amp;gt;&lt;br /&gt;
Charging 0.1% deposit fee(minimum fee = $15)&lt;br /&gt;
&lt;br /&gt;
==Withdrawing funds==&lt;br /&gt;
&lt;br /&gt;
===BTC===&lt;br /&gt;
Bitcoins may be withdrawn at no charge.  Withdrawals can be sent to a bitcoin address or they can be made using a [[Redeemable code]] (coupon).&lt;br /&gt;
&lt;br /&gt;
===EUR===&lt;br /&gt;
SEPA withdrawals are charged with fixed 0.90€ fee once your funds are converted to EUR. Minimum amount for SEPA withdrawal is $10,00.&lt;br /&gt;
&lt;br /&gt;
===GBP===&lt;br /&gt;
GBP wire deposits and withdrawals in GBP are supported.&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===USD===&lt;br /&gt;
International wire withdrawals in USD will be charged with 0.09% fee, minimum fee is $15,00. Minimum amount for international withdrawal is $50,00.&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===CHF===&lt;br /&gt;
International wire withdrawals in CHF will be charged with 0.09% fee, minimum fee is $15,00. Minimum amount for international withdrawal is $50,00.&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Fees==&lt;br /&gt;
Bitstamp charges a trading fee from each party of successful trades made through the market. The amount of the fee will vary based on a 30 day trading history.  The rate for new accounts and those with the lowest volume is 0.5%.  Refer to the [https://www.bitstamp.net/fee_schedule fee schedule] to determine discount levels.  The fee that was charged appears in the account history next to each trade.&lt;br /&gt;
&lt;br /&gt;
==Internal transfers==&lt;br /&gt;
Bitstamp allows internal transfer of funds to other users using Bitstamp codes. One party withdraws funds by creating a code and then sending (in a secure manner) the code to a trusted user who then redeems that code by using deposit Bitstamp code option.  The code denominations can be in BTCs, USDs, or combination of those two.&lt;br /&gt;
&lt;br /&gt;
==Instant transfers via other services==&lt;br /&gt;
&#039;&#039;&#039;BitInstant&#039;&#039;&#039;&lt;br /&gt;
*Dwolla&lt;br /&gt;
*Liberty Reserve&lt;br /&gt;
*MtGox&lt;br /&gt;
*Cash Bank Deposits&lt;br /&gt;
*BTC-E&lt;br /&gt;
*VirWox&lt;br /&gt;
&lt;br /&gt;
==Localization==&lt;br /&gt;
Bitstamp is localizing website with online collaborative online translating tool. Feel free to join and help with translation to your native language.&lt;br /&gt;
&lt;br /&gt;
Link: http://crowdin.net/project/bitstamp &lt;br /&gt;
&lt;br /&gt;
==Account Security==&lt;br /&gt;
&lt;br /&gt;
Access to an account may be protected with the optional Google Authenticator utility.&lt;br /&gt;
&lt;br /&gt;
==Language Support==&lt;br /&gt;
&lt;br /&gt;
The site has support for various languages:&lt;br /&gt;
&lt;br /&gt;
* English&lt;br /&gt;
* Dutch&lt;br /&gt;
* Italian&lt;br /&gt;
* Polish&lt;br /&gt;
* Slovenian&lt;br /&gt;
* Finnish&lt;br /&gt;
* Czech&lt;br /&gt;
* Russian&lt;br /&gt;
&lt;br /&gt;
==API==&lt;br /&gt;
API is available https://www.bitstamp.net/api/&lt;br /&gt;
&lt;br /&gt;
==Data Services==&lt;br /&gt;
&lt;br /&gt;
===Linux===&lt;br /&gt;
* [https://github.com/3M3RY/Dojima Dojima] market client&lt;br /&gt;
&lt;br /&gt;
==History==&lt;br /&gt;
&lt;br /&gt;
The exchange was announced on August 22, 2011&amp;lt;ref&amp;gt;[http://bitcointalk.org/index.php?topic=38711.0 www.BITSTAMP.net Bitcoin exchange site for USD/BTC]&amp;lt;/ref&amp;gt;.  Bitstamp.net is owned by Bitstamp d.o.o. and based in Slovenia.&lt;br /&gt;
&lt;br /&gt;
On May 12, 2012 the exchange began offering volume discounts for trading fees&amp;lt;ref&amp;gt;[http://bitcointalk.org/index.php?topic=81519.0 Bitstamp introduces volume discount program]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
* [[Buying bitcoins]]&lt;br /&gt;
* [[Selling bitcoins]]&lt;br /&gt;
&lt;br /&gt;
==External Links==&lt;br /&gt;
&lt;br /&gt;
* [http://www.bitstamp.net Bitstamp] web site&lt;br /&gt;
* [http://twitter.com/#!/BitStamp @Bitstamp] Twitter&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
&amp;lt;References /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Exchanges]]&lt;br /&gt;
[[Category:EWallets]]&lt;/div&gt;</summary>
		<author><name>Emery</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=BTC-e&amp;diff=38897</id>
		<title>BTC-e</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=BTC-e&amp;diff=38897"/>
		<updated>2013-06-25T14:50:16Z</updated>

		<summary type="html">&lt;p&gt;Emery: Tulpenmanie is now Dojima&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A [[currency exchange]] with market for trading between bitcoins and other currencies, including the U.S. dollar, Russian ruble and other cryptocurrencies [[Litecoin]] and [[Namecoin]].  The site has Russian and English user interface translations.&lt;br /&gt;
&lt;br /&gt;
==Features==&lt;br /&gt;
&lt;br /&gt;
===Currency pairs===&lt;br /&gt;
[http://www.btc-e.com BTC-E] supports the exchange between the major currency pairs, such as:&lt;br /&gt;
&lt;br /&gt;
* BTC/USD&lt;br /&gt;
* BTC/EUR (Euro)&lt;br /&gt;
* BTC/RUR (Russian Ruble)&lt;br /&gt;
* USD/RUR&lt;br /&gt;
* EUR/USD&lt;br /&gt;
* LTC/BTC, LTC/USD, LTC/RUR&lt;br /&gt;
* NMC/BTC&lt;br /&gt;
&lt;br /&gt;
===Deposit options===&lt;br /&gt;
&lt;br /&gt;
====BTC====&lt;br /&gt;
There is no fee for depositing bitcoins or depositing (redeeming) a BTC-e [[redeemable code]] (BTC).&lt;br /&gt;
&lt;br /&gt;
====USD====&lt;br /&gt;
* Cash deposit (USD currency) at Post of Russia&lt;br /&gt;
* Cash deposit (USD currency) at various banks: (Savings Bank of Russia (Sberbank), Privatbank, RU/UA Terminals, Russian banks, Евросеть (Euroset), Лидер (Lider), Contact, Anelik, UNIStream)&lt;br /&gt;
* [[Liberty Reserve]]&lt;br /&gt;
* Webmoney WMZ (with volume discount available&amp;lt;ref&amp;gt;If the amount to deposit more than 30 WMZ, fee is reduced to 0.08%. Contact site support via private message for details&amp;lt;/ref&amp;gt;)&lt;br /&gt;
* Interkassa.com (VISA, MasterCard, PayPal, LiqPay, etc.)&lt;br /&gt;
* Yandex.ru&lt;br /&gt;
* LiqPay&lt;br /&gt;
* Perfect Money&lt;br /&gt;
* Qiwi&lt;br /&gt;
* [[OKPay]]&lt;br /&gt;
* RBK Money&lt;br /&gt;
* Additional digital currencies (НСМЭП (NSMEP), Единый Кошелек (Unified Purse), TeleMoney, moneymail, Unikarta, webcreds.com, z-payment, MTS, Альфа-Клик (Alfa-Click), Megafon, Monexy, Pin-Code)&lt;br /&gt;
* BTC-e [[redeemable code]], including those obtained from [[BitInstant]] (funding options include QIWI, Cyberplat) and AurumXChange&lt;br /&gt;
* International Wire Transfer (Wires in currency other than USD will be converted to USD at no charge&amp;lt;ref&amp;gt;[https://btc-e.com/news/97 Webmoney, Okpay, International bank transfer / EU Bank Transfer (SEPA)]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====EUR====&lt;br /&gt;
&lt;br /&gt;
* SEPA bank transfer (fee applies)&lt;br /&gt;
&lt;br /&gt;
====RUR====&lt;br /&gt;
* QIWI&lt;br /&gt;
* LiqPay&lt;br /&gt;
* Webmoney WMR&lt;br /&gt;
* BTC-e redeemable code&lt;br /&gt;
* Bank transfer&lt;br /&gt;
&lt;br /&gt;
===Withdraw options===&lt;br /&gt;
====BTC====&lt;br /&gt;
There is 0.01 BTC fee to withdraw bitcoins. Also available for withdrawal to BTC-e redeemable code (BTC).&lt;br /&gt;
&lt;br /&gt;
====USD====&lt;br /&gt;
&lt;br /&gt;
* Liberty Reserve&lt;br /&gt;
* Webmoney WMZ&lt;br /&gt;
* [[PayPal]]&lt;br /&gt;
* Perfect Money&lt;br /&gt;
* LiqPay&lt;br /&gt;
* QIWI&lt;br /&gt;
* OKPay&lt;br /&gt;
* [[Payza]]/AlertPay&lt;br /&gt;
* Epese.com&lt;br /&gt;
* Ecoin.cc&lt;br /&gt;
* RedPass.com&lt;br /&gt;
* Privatbank - USD, UAH&lt;br /&gt;
* Savings Bank (Sberbank)&lt;br /&gt;
* Telebank&lt;br /&gt;
* Alfa Bank&lt;br /&gt;
* Wire Transfer&lt;br /&gt;
* BTC-E redeemable code (cash out aurumxchange --&amp;gt; MtGox)&lt;br /&gt;
&lt;br /&gt;
====EUR====&lt;br /&gt;
Withdrawal methods in Euro.&lt;br /&gt;
&lt;br /&gt;
* SEPA bank transfer (fee applies)&lt;br /&gt;
&lt;br /&gt;
====RUB====&lt;br /&gt;
Withdrawal methods in Rubles.&lt;br /&gt;
&lt;br /&gt;
* QIWI&lt;br /&gt;
* LiqPay&lt;br /&gt;
* Webmoney WMR&lt;br /&gt;
* Яндекс.Деньги (Yandex)&lt;br /&gt;
* RBK Money&lt;br /&gt;
* Cash deposit into account at Сбербанка России! (Savings Bank Sberbank), Телебанк (Telebank), and АльфаБанк (Alfa Bank)&lt;br /&gt;
* Cash in Moscow, Russia (delivery to your address is possible)&lt;br /&gt;
* Transferred to credit card - VISA and MasterCard&lt;br /&gt;
* BTC-e redeemable code (RUR)&lt;br /&gt;
* Bank transfer&lt;br /&gt;
&lt;br /&gt;
==Data Services==&lt;br /&gt;
===Linux===&lt;br /&gt;
* [https://github.com/3M3RY/Dojima Dojima] market client&lt;br /&gt;
&lt;br /&gt;
==History==&lt;br /&gt;
&lt;br /&gt;
The site was first announced on July 17, 2011&amp;lt;ref&amp;gt;[http://bitcointalk.org/index.php?topic=29698.0 Btc-e.com exchange for the exchange of BTC &amp;lt;-&amp;gt; USD]&amp;lt;/ref&amp;gt; with test mode trading.  Live trading began on August 7, 2011&amp;lt;ref&amp;gt;[http://bitcointalk.org/index.php?topic=29698.msg437237#msg437237 Btc-e.com]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
On July 31, 2012 the service reported a security incident in which halted trading and caused financial loss to the exchange.  The exchange says it covered losses from reserves and trading resumed in a matter of hours&amp;lt;ref&amp;gt;[https://btc-e.com/news/81 News / Trade is stopped]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
On August 2, 2012 the service added an API for trading, but still lacks an API for bitcoin withdrawals (something offered by every major exchange).  On August 20, 2012 the service added BTC/RUR and USD/RUR trading markets.  On September 3, 2012 the service added numerous RUR deposit and withdawal methods as well as more USD deposit and withdrawal methods&amp;lt;ref&amp;gt;[https://btc-e.com/news/87 News / Update commissions deposit &amp;amp; withdrawal + add new methods withdrawal]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Criticism==&lt;br /&gt;
Bitcoin community member [[User:Luke-jr|Luke-Jr]] claims that BTC-E has frozen his account and funds on their own accord.{{cite}}&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
* [[Buying bitcoins]]&lt;br /&gt;
* [[Selling bitcoins]]&lt;br /&gt;
&lt;br /&gt;
==External Links==&lt;br /&gt;
&lt;br /&gt;
* [http://www.btc-e.com BTC-E] exchange website&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Exchanges]]&lt;br /&gt;
[[Category:EWallets]]&lt;/div&gt;</summary>
		<author><name>Emery</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=CampBX&amp;diff=38895</id>
		<title>CampBX</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=CampBX&amp;diff=38895"/>
		<updated>2013-06-25T14:49:09Z</updated>

		<summary type="html">&lt;p&gt;Emery: Tulpenmanie is now Dojima&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A bitcoin [[currency exchange]]/trading platform site headquartered in USA - Atlanta, GA.&lt;br /&gt;
&lt;br /&gt;
CampBX is a platform where you can buy and sell Bitcoins for US Dollars in real-time using advanced order-matching algorithms. Any buy or sell order that you place is matched against a database of other orders. If a perfect match is found, a Bitcoin-to-USD trade is executed instantly. If there are no matching orders at the price you specified, then your order can remain open for up to 31 days. To maintain fairness in trading, CampBX have taken a purely-platform approach and they are never a counter-party to any trade.&lt;br /&gt;
&lt;br /&gt;
This platform was designed from the ground up with stability and security as top priorities, and became the first Bitcoin website to obtain Payment Card Industry (PCI) certification and the McAfee Secure seal of confidence on June 28th, 2011 &amp;lt;ref&amp;gt;[https://bitcointalk.org/index.php?topic=23938.0 CampBX Hacker / Security Audit: Results]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
CampBX is also the first Bitcoin platform to bring advanced features like Margin Trading and Short-selling, and have several more innovative features in pipeline.&lt;br /&gt;
&lt;br /&gt;
There are no fees required to open a CampBX account.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Headquarter and Offices==&lt;br /&gt;
This platform is operated by BulBul Investments LLC, which is a corporate entity registered with the State of Georgia, and is headquartered in Atlanta at 2002 Summit Blvd #300, Atlanta, GA 30319. At launch time CampBX maintained a 4-people development office for a 3-month period; however as the development-phase ended they have switched to a Flex-office plan to save costs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Major Features==&lt;br /&gt;
CampBX aims to be the feature leader, and this vision is reflected in a comprehensive list of features:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt; Security certification from McAfee&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Advanced trading options with AON/FOK/Market&amp;lt;/li&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt; STOPLOSS and Short-Selling available soon &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Trading API available&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Wallet API available &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; CBX Instant Bitcoin Transfers Feature &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Stoploss / Custom Order Expiry Date/Time &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; SMS (Text Message) Notifications &amp;lt;/li&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt; Two-Factor Authentication &amp;lt;/li&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt; Based in USA - Atlanta &amp;lt;/li&amp;gt; &lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Adding Funds==&lt;br /&gt;
Funds deposited with the exchange for escrow towards placing a buy order include the following.&lt;br /&gt;
&lt;br /&gt;
===BTC===&lt;br /&gt;
&lt;br /&gt;
* Adding bitcoins to the account balance incurs no fees.&lt;br /&gt;
&lt;br /&gt;
===USD===&lt;br /&gt;
&lt;br /&gt;
* [[Dwolla]] (instant).  There is a $1,000 per-day transfer limit regardless of deposit or withdrawal.&lt;br /&gt;
* P2P bank transfer (available through Chase, Bank of America, Wells Fargo and ING, credited after 3 business days)&lt;br /&gt;
* Personal Check&lt;br /&gt;
* USPS Postal Money Order (No fee to receive, costs only $1.55 to send $1,000)&lt;br /&gt;
* Canada Post Money Order (USD)&lt;br /&gt;
&lt;br /&gt;
==Withdrawing Funds==&lt;br /&gt;
&lt;br /&gt;
===BTC===&lt;br /&gt;
&lt;br /&gt;
* CampBX does not have any fees for Bitcoin withdrawals.  The default withdrawal limit is 500 Bitcoins per-day; this limit can be increased by submitting a ticket to the help-desk.  Account-to-account (A2A) transfers to another Camp BX account can be made.  In the accountholder&#039;s profile is the CBX Instant Transfer which the sender needs to know.&lt;br /&gt;
&lt;br /&gt;
===USD===&lt;br /&gt;
&lt;br /&gt;
* [[Dwolla]] (instant).  There is a $1,000 per-day transfer limit regardless of deposit or withdrawal.&lt;br /&gt;
* ACH Withdrwal (Direct deposit)&lt;br /&gt;
* Bank transfer (Domestic wire)&lt;br /&gt;
* International Bank transfer (International wire)&lt;br /&gt;
* USPS Postal Money Order&lt;br /&gt;
&lt;br /&gt;
==Trading==&lt;br /&gt;
&lt;br /&gt;
CampBX is the only Bitcoin exchanges to offer both market orders as well as limit orders.  Market orders get filled regardless of the price. &lt;br /&gt;
Additional Advanced Trading options include Fill-or-Kill and All-or-Nothing fills.  Fill-or-Kill means that if the order cannot immediately be matched, it will be cancelled automatically.  All-or-Nothing means that the order will match only when the entire quantity in the order can be traded.  One option is to set a custom expiry date for each order, which allows setting up advanced trading strategies.&lt;br /&gt;
The trading algorithms implement trading functionality described in the following SEC Investor Bulletin as closely as possible:&lt;br /&gt;
­http://www.sec.gov/investor/alerts/trading101basics.pdf&lt;br /&gt;
&lt;br /&gt;
CampBX also provides Quick Trades for casual Bitcoin users, where you enter the quantity and the desired price for buying or selling Bitcoins, and execute the trade. All prices entered are &amp;quot;Limit&amp;quot; prices, where the platform will find a matching trade at given price or better.&lt;br /&gt;
&lt;br /&gt;
Additionally, though currently disabled, the exchange&#039;s trading site refers to margin trading (buying on margin and shorting) -- something that no other exchange has offered yet.&lt;br /&gt;
&lt;br /&gt;
===Fees===&lt;br /&gt;
&lt;br /&gt;
Trades on the exchange incur a commission (fee) of 0.55%.  (Volume discounts available)&lt;br /&gt;
&lt;br /&gt;
==Data Services==&lt;br /&gt;
===Linux===&lt;br /&gt;
* [https://github.com/3M3RY/Dojima Dojima] market client&lt;br /&gt;
&lt;br /&gt;
==History==&lt;br /&gt;
&lt;br /&gt;
A story of firsts:&lt;br /&gt;
&lt;br /&gt;
CampBX was the first Bitcoin trading platform to launch on Testnet &amp;lt;ref&amp;gt;[https://bitcointalk.org/index.php?topic=20777.0 CampBX Platform in Beta: Margin Trading, Short Selling, and Advanced Orders]&amp;lt;/ref&amp;gt;. This allowed Bitcoin users to try out CampBX without risking their Bitcoins on an unknown website. Following a major  CBX Testnet opened for public trial on June 21st, and in the following 15 days handled trading of ~90,000 testnet coins.&lt;br /&gt;
CampBX trade engine supported multiple advanced trading features like Margin Trading, Short Selling, Advanced Order Execution like FOK (Fill-or-Kill), (AON) All-or-Nothing orders, Stoploss, and custom expiry dates for orders.  &lt;br /&gt;
&lt;br /&gt;
On June 28th, we went through a rigorous third-party security audit by McAfee Hacker Safe (McAfee Secure) and two more white-hat auditors.  As our commitment to transparency, we shared the results of the audit in a public forum &amp;lt;ref&amp;gt;[https://bitcointalk.org/index.php?topic=23938.0 CampBX Hacker / Security Audit: Results]&amp;lt;/ref&amp;gt;.  CampBX obtained compliance with 7 security standards including PCI (Payment Card Industry) compliance, another major first in the Bitcoin world.  &lt;br /&gt;
&lt;br /&gt;
We ended the testnet phase and opened for trading following the Independence Day on July 5th, 2011 &amp;lt;ref&amp;gt;[http://forum.bitcoin.org/index.php?topic=26202.0 CampBX Launch - Free Trades for All Bxlievers!]&amp;lt;/ref&amp;gt;.  As we grow, we are determined to continue this tradition of security, transparency, and customer service.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
* [[Buying bitcoins]]&lt;br /&gt;
* [[Selling bitcoins]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==External Links==&lt;br /&gt;
&lt;br /&gt;
* [https://CampBX.com/register.php?r=JBfCSWoQaow CampBX Home Page]&lt;br /&gt;
* [https://twitter.com/CampBX [[Twitter]] Feed for CampBX]&lt;br /&gt;
* [https://facebook.com/CampBX [[Facebook]] page for CampBX]&lt;br /&gt;
* [https://campbx.com/api.php API Reference]&lt;br /&gt;
* [https://campbx.com/faq.php Office Location and FAQ]&lt;br /&gt;
* [https://campbx.com/contact.php Helpdesk for CampBX]&lt;br /&gt;
* [https://CampBX.com/register.php?r=JBfCSWoQaow CampBX Terms of Use (User Agreement)]&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
&amp;lt;References /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Exchanges]]&lt;br /&gt;
[[Category:EWallets]]&lt;/div&gt;</summary>
		<author><name>Emery</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=Mt._Gox&amp;diff=38894</id>
		<title>Mt. Gox</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=Mt._Gox&amp;diff=38894"/>
		<updated>2013-06-25T14:47:42Z</updated>

		<summary type="html">&lt;p&gt;Emery: Tulpenmanie is no longer developed&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;MtGox&#039;&#039;&#039;, called &amp;quot;Mount Gox&amp;quot; or &amp;quot;MTGOX&amp;quot;, has been the most widely used bitcoin [[currency exchange]] market&amp;lt;ref&amp;gt;2011-06-07 on #bitcoin-otc: &amp;quot;MagicalTux: you could use the count of users on mtgox (went over 30k recently)&amp;quot;&amp;lt;/ref&amp;gt; since it was started, and remains the largest in terms of popularity and volume.&lt;br /&gt;
&lt;br /&gt;
A registrant on MtGox has at least two sub-accounts: one for bitcoins (BTC), and one for US dollars (USD or MTGUSD) or other national currency. Bitcoins are bought using funds from the trader&#039;s national currency account, and the proceeds from the sale of bitcoins are deposited into the same account. Trading must always involve bitcoins as trading between different national currencies is not offered.&lt;br /&gt;
&lt;br /&gt;
Trades on Mt. Gox&#039;s execute from balances on deposit with the exchange which in turn makes trading on the market instantaneous, compared to some other Bitcoin markets where a subsequent settlement occurs manually between the trading partners. The disadvantage of this is that a third party must be trusted with keeping the money safe.&lt;br /&gt;
&lt;br /&gt;
MtGox was originally started by Jed McCaleb in July 2010, and was sold to [[Tibanne Co.]] in Japan in March 2011.  It is currently operated by Tibanne Co., managed by Mark Karpeles (MagicalTux).&lt;br /&gt;
&lt;br /&gt;
==Trading==&lt;br /&gt;
===Buying and selling===&lt;br /&gt;
&lt;br /&gt;
Buying and selling Bitcoins is simple.  A buy order is executed partially or in full when the price bid can be matched against a sell order that is at or below the bid amount.  A sell order is executed partially or in full when the price asked can be matched against a buy order that is at or above the ask amount.  Orders that cannot be matched immediately remain in the orderbook.&lt;br /&gt;
&lt;br /&gt;
Unfunded orders do not appear in the order book, but are automatically readded if a deposit is credited.  For example, Mt. Gox allows the entry of a &amp;quot;buy&amp;quot; order even if the account has insufficient funds.  If possible, Mt. Gox will execute a portion of the order if it can be partially funded.  If a deposit is later credited and the deposit resolves the insufficient funds status of an outstanding order, the order will be immediately activated, and if possible, executed.&lt;br /&gt;
&lt;br /&gt;
===Fees===&lt;br /&gt;
&lt;br /&gt;
Mt. Gox charges a trading fee of up to 0.6% from each party of successful trades made through the market.  The fee appears in the account history next to each trade.  The trading fee is discounted for larger customers based on volume, which is calculated as a sliding window over the last 720 hours (30 days).&lt;br /&gt;
&lt;br /&gt;
The fees are, by default, subtracted from the proceeds of each trade (e.g., a buy of 1.0 BTC will add to the account balance 0.994 BTC when the exchange fee is 0.6%).  An account setting will allow fees to be added to the purchase amount instead (e.g., buying 1.0 BTC at $5 will cost about $5.03 when the exchange fee is 0.6%).&lt;br /&gt;
&lt;br /&gt;
==Adding Funds==&lt;br /&gt;
&lt;br /&gt;
===BTC===&lt;br /&gt;
There are no fees incurred when transferring bitcoins to a Mt. Gox account.&lt;br /&gt;
&lt;br /&gt;
Funds are available once [[confirmation|confirmed]] (6 blocks)&amp;lt;ref&amp;gt;[http://www.bitcoin.org/smf/index.php?topic=3851.msg55220#msg55220 How long does it take to Deposit bitcoins to MtGox?]&amp;lt;/ref&amp;gt;, a process that can take roughly an hour.&lt;br /&gt;
&lt;br /&gt;
The deposit address is presented along with a QR code that can be scanned with a mobile.  This address does not change with each deposit request.&lt;br /&gt;
&lt;br /&gt;
The Add Bitcoins function experiences issues with some browser ad-blocking utilities even though no advertisements are displayed on the website.&lt;br /&gt;
&lt;br /&gt;
====Redeemable Code====&lt;br /&gt;
&lt;br /&gt;
Bitcoins from another Mt. Gox user sent by Mt. Gox [[redeemable code]] (A.K.A. &amp;quot;coupon&amp;quot;) may be deposited and will be available for trading immediately.&lt;br /&gt;
&lt;br /&gt;
===Dwolla===&lt;br /&gt;
&lt;br /&gt;
Dwolla is among the fastest and least expensive methods for adding funds from the United States of America to a Mt. Gox account. The transaction fee on [[Dwolla]] is merely $0.25. The process is automated and the funds become available for trading within an hour&amp;lt;ref&amp;gt;[http://forum.bitcoin.org/index.php?topic=15107.msg205622#msg205622 Dwolla to Mt. Gox vs. Dwolla to TradeHill]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===OKPay===&lt;br /&gt;
&lt;br /&gt;
[[OKPay]] may be used for depositing funds to USD, EUR, GBP, CHF, and RUB&amp;lt;ref&amp;gt;[https://support.mtgox.com/entries/21034626-okpay OKPAY]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Cash Deposit===&lt;br /&gt;
&lt;br /&gt;
====U.S. (USD)====&lt;br /&gt;
* BitInstant - Cash (U.S. dollars) may be deposited at any of thousands of banks, 7-11, Walmart, CVS, Moneygram and more that [[BitInstant]] uses to transfer funds to your Mt. Gox account.&lt;br /&gt;
&lt;br /&gt;
====Brazil (BRL)====&lt;br /&gt;
* BitInstant - Cash (Brazilian real) may be deposited using Boleto or through Banco Recomendito.&lt;br /&gt;
&lt;br /&gt;
====Brazil (BRL)====&lt;br /&gt;
* BitInstant - Cash (Russian rubles) may be deposited using QIWI or Cyberplat&lt;br /&gt;
&lt;br /&gt;
====UK (GBP)====&lt;br /&gt;
* Barclays - Cash (British pound sterling) may be deposited at any Barclays location.  There is a 1.5% fee on deposits made with this method&amp;lt;ref&amp;gt;[https://mtgox.com/press_release_20120806.html Introducing a new 1.5% fee on Barclays cash deposit]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Bank Wire===&lt;br /&gt;
&lt;br /&gt;
====International USD====&lt;br /&gt;
Funds in USD may be wired to the exchange&#039;s bank in Japan. Each wire is subject to a per-wire fee plus any intermediate fees.  &lt;br /&gt;
&lt;br /&gt;
====International Wire====&lt;br /&gt;
&lt;br /&gt;
An account can be configured with a wallet for each of the currencies that the exchange supports&amp;lt;ref&amp;gt;[https://mtgox.zendesk.com/entries/20413328-mt-gox-opens-15-new-currency-markets Mt.Gox Opens 15 New Currency Markets]&amp;lt;/ref&amp;gt;.  When a wire is received in one of these currencies, that account will be credited.&lt;br /&gt;
&lt;br /&gt;
* USD - U.S. Dollar &lt;br /&gt;
* EUR - Euro (SEPA or Int&#039;l wire)&lt;br /&gt;
* CAD - Canadian Dollar&lt;br /&gt;
* GBP - British Pound (Domestic or Int&#039;l wire)&lt;br /&gt;
* CHF - Swiss Francs&lt;br /&gt;
* RUB - Russian Rubles&lt;br /&gt;
* AUD - Australian Dollars&lt;br /&gt;
* SEK - Swedish Krona&lt;br /&gt;
* DKK - Danish Krona&lt;br /&gt;
* HKD - Hong Kong Dollars&lt;br /&gt;
* PLN - Polish Zloty (Domestic or Int&#039;l wire)&lt;br /&gt;
* CNY - Chinese Yuan&lt;br /&gt;
* SGD - Singapore Dollars&lt;br /&gt;
* TBH - Thai Baht&lt;br /&gt;
* NZD - New Zealand Dollars&lt;br /&gt;
* JPY - Japanese Yen (Domestic or Int&#039;l wire)&lt;br /&gt;
&lt;br /&gt;
====AurumXChange USD, EUR and CAD====&lt;br /&gt;
&lt;br /&gt;
Funds may be wired to [[AurumXChange Company]] as USD, EUR or CAD (the latter two of which would then be exchanged into USD) for purchase of a Mt. Gox USD [[redeemable code]] (voucher).  Other digital currencies such as [[Liberty Reserve]] can be converted for transfer to Mt. Gox as well.  The redeemable code provided is then used to load USD funds into an account with Mt. Gox.&lt;br /&gt;
&lt;br /&gt;
===Direct Deposit===&lt;br /&gt;
====EU====&lt;br /&gt;
&lt;br /&gt;
Funds in EUR may be added using SEPA Direct Debit for free, with funds convert to USD at the current ECB rate at the time the funds are received&amp;lt;ref&amp;gt;[http://www.bitcoin.org/smf/index.php?topic=5461.0 MTGox: Euro deposits]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
====U.S.====&lt;br /&gt;
&lt;br /&gt;
Mt. Gox doesn&#039;t directly support an ACH-based (direct deposit) deposit method.  Dwolla supports ACH-based fund transfers and those funds can then be deposited with Mt. Gox.&lt;br /&gt;
&lt;br /&gt;
====UK====&lt;br /&gt;
&lt;br /&gt;
Funds may be sent as a GBP direct deposit free of charge.&lt;br /&gt;
&lt;br /&gt;
====Australia====&lt;br /&gt;
&lt;br /&gt;
Funds may be sent using direct deposit (BPay) for a AU$2.00 per-deposit fee.  The funds will be converted to USD at the current rate.&lt;br /&gt;
&lt;br /&gt;
==Withdrawing Funds==&lt;br /&gt;
&lt;br /&gt;
MtGox imposes a $1,000 USD limit for withdrawals per 24 hours and a $10,000 USD limit for withdrawals per month with most non-verified accounts.  Bitcoins withdrawn are counted toward this limit as well and the USD value is calculated at the market rate at the time of the attempted withdrawal.  Customers that have been Verified have higher limits and customers that have Trusted status have limits even higher&amp;lt;ref&amp;gt;[http://bitcoin.stackexchange.com/questions/2442/mtgox-trusted-vs-verified MtGox - trusted vs verified]&amp;lt;/ref&amp;gt;.  Any [[MtGox#Transfers_to_Other_Customers|account-to-account transfers]] made also count toward this limit as well.&lt;br /&gt;
&lt;br /&gt;
Requests for higher withdrawal limits may be submitted by email&lt;br /&gt;
* For higher limits for withdrawal of USD funds, email: aml@mtgox.com&lt;br /&gt;
* For higher limits for withdrawal of BTC funds, email: btcupd@mtgox.com&lt;br /&gt;
&lt;br /&gt;
See the [[MtGox#AML|AML]] section regarding verification levels for AML purposes.&lt;br /&gt;
&lt;br /&gt;
===Dwolla===&lt;br /&gt;
&lt;br /&gt;
[[Dwolla]] is among the fastest and least expensive methods for withdrawing USD funds from a Mt. Gox account. The transaction fee to do so is just $0.25.&lt;br /&gt;
[[Dwolla]] withdrawals are processed every hour during business hours (Japan time) and every 12 hours on weekends.&lt;br /&gt;
&lt;br /&gt;
As of 25 May 2012, MtGox requires account holders to be &amp;quot;verified (level 1) - &#039;see below&#039;&amp;quot; to withdraw via Dwolla. &amp;lt;ref&amp;gt;https://support.mtgox.com/entries/21503347-new-aml-policy-for-all-dwolla-users&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The status of the withdrawal request will show one of the following status codes:&lt;br /&gt;
&lt;br /&gt;
* Preparing: System is running checks to see if the transfer can be executed.&lt;br /&gt;
* Confirmed: Transfer can be executed and is pending in queue.&lt;br /&gt;
* Todo: Transfer is near the top of the queue and will be executed soon.&lt;br /&gt;
* Processed: Transfer has been processed.&lt;br /&gt;
&lt;br /&gt;
===BTC===&lt;br /&gt;
&lt;br /&gt;
Bitcoins may be withdrawn at no charge.&lt;br /&gt;
&lt;br /&gt;
A [[green address]] option is available though this type of transaction could experience a delay if the exchange&#039;s wallet funding level for green address transactions is insufficient.  The withdrawal form also offers an &amp;quot;open transaction&amp;quot; option which forces the transaction to go through the blockchain.  If the recipient of a BTC withdrawal happens to also be from Mt. Gox&#039;s [[EWallet]], then that transfer would occur instantly and the transaction would not be broadcast to the Bitcoin network.  This &amp;quot;open transaction&amp;quot; option forces a withdrawal to be broadcast to the Bitcoin network.&lt;br /&gt;
&lt;br /&gt;
====Redeemable Code====&lt;br /&gt;
&lt;br /&gt;
Mt. Gox no longer allows bitcoins or other currency to be withdrawn using a [[redeemable code]].&lt;br /&gt;
&lt;br /&gt;
===Direct Deposit===&lt;br /&gt;
====U.S.====&lt;br /&gt;
&lt;br /&gt;
There is currently no option for withdrawing funds through a direct deposit bank transaction.  Funds withdrawn to Dwolla may then, in turn, be withdrawn with bank funds deposited as an ACH transaction.&lt;br /&gt;
&lt;br /&gt;
====EU====&lt;br /&gt;
&lt;br /&gt;
You may withdraw any amount as a direct deposit to your bank.  There is a 2% fee on these withdrawals.  Contact the exchange by e-mail for this service.&lt;br /&gt;
&lt;br /&gt;
====Australia====&lt;br /&gt;
&lt;br /&gt;
A per-withdrawal fee (2,000 JPY) is subtracted and the remaining amount is sent via international wire in the chosen currency. If not AUD then an exchange fee of 2.5% will be charged.&lt;br /&gt;
&lt;br /&gt;
===International Wire===&lt;br /&gt;
&lt;br /&gt;
To any IBAN, SWIFT/BIC and ABA routable bank&amp;lt;ref&amp;gt;[http://www.facebook.com/MtGox/posts/343372689080478 Mt.Gox now offers international wire transfer to all US Banks]&amp;lt;/ref&amp;gt;.  Fee applies.&lt;br /&gt;
&lt;br /&gt;
=&lt;br /&gt;
&lt;br /&gt;
==Customer Service==&lt;br /&gt;
&lt;br /&gt;
The preferred method for obtaining service is to place a request through the exchange&#039;s [https://mtgox.zendesk.com help desk].  Another method is to send e-mail with the request.&lt;br /&gt;
&lt;br /&gt;
==Wallet/Banking==&lt;br /&gt;
&lt;br /&gt;
An account at this exchange can be considered to be an [[eWallet]]. This service also offers [[:Category:ECommerce|eCommerce]] merchant [https://mtgox.com/merch/about payment services].&lt;br /&gt;
&lt;br /&gt;
==Security Center==&lt;br /&gt;
&lt;br /&gt;
The Security Center allows an account to be secured through the use of one or more One Time Password (OTP) solutions such as what YubiKey and Google Authenticator offer.  Features can be protected where the OTP must be provided for each action and are configured independently.&lt;br /&gt;
&lt;br /&gt;
For example, a typical configuration is to set OTP as being required for both withdrawals and security center changes but not for login.  With that configuration, the worst damage that can happen from a compromised account or session would be that bitcoins would be bought or sold (though they could also be bought and sold over and over until funds are depleted).&lt;br /&gt;
&lt;br /&gt;
* Login - The OTP must be provided for each login.&lt;br /&gt;
* Withdraw - The OTP must be provided for each withdrawal request.&lt;br /&gt;
* Security - The OTP must be provided during each configuration change to be performed.&lt;br /&gt;
&lt;br /&gt;
==AML==&lt;br /&gt;
&lt;br /&gt;
Varying degrees of verification will allow for greater per-day and per-month total amounts to be withdrawn&amp;lt;ref&amp;gt;[http://support.mtgox.com/entries/20919111-aml-account-statuses AML Account Statuses]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Unverified (Level 0)===&lt;br /&gt;
&lt;br /&gt;
Designed for basic users, consumers and Bitcoin enthusiasts where 10,000 USD (monthly) is enough for most needs.&lt;br /&gt;
&lt;br /&gt;
===Verified (Level 1)===&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;verified&amp;quot; status is designed for active traders and/or small companies.&lt;br /&gt;
&lt;br /&gt;
===Trusted (Level 2)===&lt;br /&gt;
&lt;br /&gt;
The “trusted” status is designed for day traders, professionals, and companies.&lt;br /&gt;
&lt;br /&gt;
==API==&lt;br /&gt;
&lt;br /&gt;
Mt Gox offers an [[MtGox/API|API]] which can be used to automate operations.&lt;br /&gt;
&lt;br /&gt;
==Data Services==&lt;br /&gt;
&lt;br /&gt;
===Web===&lt;br /&gt;
* Bitstock live watcher for trades, depth, history [http://bitstock.info bitstock.info] (Websockets browser required)&lt;br /&gt;
* [[Bitcoin Charts]]&lt;br /&gt;
* Clark Moody&#039;s [[Real Time Bitcoin Market Data]] including Ticker, Order Book and Time Sales (Websockets browser support required)&lt;br /&gt;
* [[MtGox Live]] (Websockets browser support required)&lt;br /&gt;
* [[Bitcoin Arbitrage Opportunities]] (Websockets browser support required)&lt;br /&gt;
* [[Bitcoin Prices]] market rates in multiple currencies&lt;br /&gt;
&lt;br /&gt;
===Windows===&lt;br /&gt;
* [[Sierra Chart MtGox Bridge]] trading and charting tool.&lt;br /&gt;
* [[ToyTrader]] command line trading tool&lt;br /&gt;
&lt;br /&gt;
===Mac OS X===&lt;br /&gt;
* [[BitTicker]] for Mac OS X&lt;br /&gt;
* [http://sneak.datavibe.net/20110613/mtgoxwatcher MtGox Watcher] for Mac OS X&lt;br /&gt;
&lt;br /&gt;
===Mobile===&lt;br /&gt;
* [[BitcoinX]] mobile app with bid, ask and 24 hour history. For Android&lt;br /&gt;
* [[MtGox Live]] Bitcoin Trader with buy, sell, send, chart and depth for Android and iOS&lt;br /&gt;
* [https://play.google.com/store/apps/details?id=com.veken0m.cavirtex Bitcoinium] for Android on Google Play&lt;br /&gt;
&lt;br /&gt;
=== firefox addon ===&lt;br /&gt;
* [https://github.com/joric/mtgox-ticker] firefox ticker addon &lt;br /&gt;
&lt;br /&gt;
===Linux===&lt;br /&gt;
* [http://www.goxsh.info goxsh] command line ticker / depth chart&lt;br /&gt;
&lt;br /&gt;
==E-Commerce==&lt;br /&gt;
&lt;br /&gt;
Online sellers can accept bitcoins for payment using the Mt. Gox&#039;s E-commerce Solution, which is an interface to the exchange&#039;s [[MtGox/API/HTTP/v1#Merchant_System|Merchant System API]].&lt;br /&gt;
&lt;br /&gt;
==History==&lt;br /&gt;
The exchange went online on July 18, 2010.&amp;lt;ref&amp;gt;[http://www.bitcoin.org/smf/index.php?topic=444.0 MtGox announcement on forum]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On October 10, 2010 the exchange switched from [[PayPal]] to Liberty Reserve as the main funding option as a result of this attack. Former PayPal customers still had the possibility to withdraw their USD using alternative methods.&lt;br /&gt;
&lt;br /&gt;
On March 6th, 2011 ownership of the exchange changed hands&amp;lt;ref&amp;gt;[https://bitcointalk.org/index.php?topic=4187.0 Mtgox is changing owners]&amp;lt;/ref&amp;gt;.  Tibanne publishes their [http://legal.tibanne.com/docs/20110801_company_certificate.pdf company certificate] from the Japanese government.&lt;br /&gt;
&lt;br /&gt;
On June 19, 2011 the service experienced a significant security breach&amp;lt;ref&amp;gt;[https://support.mtgox.com/entries/20224998-huge-bitcoin-sell-off-due-to-a-compromised-account-rollback Huge Bitcoin sell off due to a compromised account - rollback]&amp;lt;/ref&amp;gt;.  The incident caused a selloff down to BTC/USD of $0.01 due to fraudulent trading.  The site was disabled and all trading following the point that fraudulent trading began was rolled back. Complicating this breach was the release of a list of the exchange&#039;s accounts including username, email address and a password hash, which forced the exchange to implement an account recovery method for customers to regain control of their accounts.&lt;br /&gt;
&lt;br /&gt;
In July, 2011 it was observed that the exchange no longer allows new registrations to occur without having a valid e-mail address.&lt;br /&gt;
&lt;br /&gt;
On July 19, 2011 a press release announced that MtGox had acquired [[MtGox Live]].&amp;lt;ref&amp;gt;[https://mtgox.com/press_release_20110719.html World&#039;s Leading Bitcoin Exchange, Mt.Gox, acquires MtGoxLive.com]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Announced on March 6, 2012 was the Merchant Solution and API&amp;lt;ref&amp;gt;[https://mtgox.com/press_release_20120306.html Mt.Gox launches the definitive bitcoin checkout solution]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
* [[Buying bitcoins]]&lt;br /&gt;
* [[Selling bitcoins]]&lt;br /&gt;
* [[MtGox/API|API]]&lt;br /&gt;
* [[Bitcoin Ladder]]&lt;br /&gt;
&lt;br /&gt;
==External Links==&lt;br /&gt;
&lt;br /&gt;
* [https://mtgox.com MT. Gox exchange] website&lt;br /&gt;
* [https://mtgox.com/merch/about Mt. Gox Merchant Services]&lt;br /&gt;
* [https://mtgox.zendesk.com Customer Service Help Desk]&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Exchanges]]&lt;br /&gt;
[[Category:eWallets]]&lt;br /&gt;
[[Category:Shopping Cart Interfaces]]&lt;br /&gt;
[[ru:MtGox]]&lt;/div&gt;</summary>
		<author><name>Emery</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=MtGox/API/Streaming&amp;diff=31587</id>
		<title>MtGox/API/Streaming</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=MtGox/API/Streaming&amp;diff=31587"/>
		<updated>2012-10-05T19:04:23Z</updated>

		<summary type="html">&lt;p&gt;Emery: The websocket is gone. DOES ANYONE ELSE SEE A GLARING SECURITY ISSUE IN PEOPLE OTHER THAN MTGOX STAFF EDITING THIS PAGE?!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Real time streaming data may be obtained over the streaming API, implemented in [http://socket.io/ Socket.io]&amp;lt;ref&amp;gt;Socket.io forum announcement by MagicalTux: https://bitcointalk.org/index.php?topic=14412.msg613271#msg613271&amp;lt;/ref&amp;gt;. The original WebSocket API&amp;lt;ref&amp;gt;Original WebSocket thread: https://bitcointalk.org/index.php?topic=5855.msg86219&amp;lt;/ref&amp;gt; is deprecated as of 11-Nov-2011.&lt;br /&gt;
&lt;br /&gt;
==Connecting==&lt;br /&gt;
The following JavaScript code establishes a connection in the browser:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;script src=&amp;quot;https://socketio.mtgox.com/socket.io/socket.io.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;script&amp;gt;&lt;br /&gt;
    var conn = io.connect(&#039;https://socketio.mtgox.com/mtgox&#039;);&lt;br /&gt;
    conn.on(&#039;message&#039;, function(data) {&lt;br /&gt;
        // Handle incoming data object.&lt;br /&gt;
    });&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==the Currency parameter ==&lt;br /&gt;
use : &lt;br /&gt;
websocket.mtgox.com:80/mtgox?Currency=EUR&lt;br /&gt;
&lt;br /&gt;
 and the websocket will give you updates in EUR currency&lt;br /&gt;
&lt;br /&gt;
The session ID expires after 30 seconds&lt;br /&gt;
&lt;br /&gt;
==Handling Events==&lt;br /&gt;
Socket.io exposes a simple interface for handling events. Handling &amp;lt;tt&amp;gt;message&amp;lt;/tt&amp;gt; events is shown above, but there are other events that may be handled:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
conn.on(&#039;connect&#039;,    onConnect);&lt;br /&gt;
conn.on(&#039;disconnect&#039;, onDisconnect);&lt;br /&gt;
conn.on(&#039;error&#039;,      onError);&lt;br /&gt;
conn.on(&#039;message&#039;,    onMessage);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Incoming Data==&lt;br /&gt;
Data arrives as a full object instead of as JSON text, eliminating the need to parse the data in the JavaScript handler. Messages that come across the socket to trigger the &amp;lt;tt&amp;gt;message&amp;lt;/tt&amp;gt; event will contain the following minimum components:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;op&amp;quot;:&amp;lt;OPERATION_TYPE&amp;gt;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;tt&amp;gt;OPERATION_TYPE&amp;lt;/tt&amp;gt; field may take these values:&lt;br /&gt;
&lt;br /&gt;
:{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! OPERATION_TYPE !! Description&lt;br /&gt;
|-&lt;br /&gt;
| subscribe || Notification that the user is subscribed to a channel&lt;br /&gt;
|-&lt;br /&gt;
| unsubscribe || Messages will no longer arrive over the channel&lt;br /&gt;
|-&lt;br /&gt;
| remark || A server message, usually a warning&lt;br /&gt;
|-&lt;br /&gt;
| private || The operation for depth, trade, and ticker messages&lt;br /&gt;
|-&lt;br /&gt;
| result || The response for op:call operations&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===op:subscribe and op:unsubscribe===&lt;br /&gt;
The subscribe and unsubscribe message data are very simple, containing the channel and the operation.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;channel&amp;quot;:&amp;lt;CHANNEL_ID&amp;gt;,&lt;br /&gt;
  &amp;quot;op&amp;quot;:&amp;quot;subscribe&amp;quot; OR &amp;quot;unsubscribe&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some of the channels are:&lt;br /&gt;
&lt;br /&gt;
:{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Channel ID !! Description&lt;br /&gt;
|-&lt;br /&gt;
| dbf1dee9-4f2e-4a08-8cb7-748919a71b21 || Trades&lt;br /&gt;
|-&lt;br /&gt;
| d5f06780-30a8-4a48-a2f8-7ed181b4a13f || Ticker&lt;br /&gt;
|-&lt;br /&gt;
| 24e67e0d-1cad-4cc0-9e7a-f8523ef460fe || Depth&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===op:remark===&lt;br /&gt;
The remark operation contains message and success fields.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;op&amp;quot;:&amp;quot;remark&amp;quot;,&lt;br /&gt;
  &amp;quot;message&amp;quot;:&amp;lt;MESSAGE FROM THE SERVER&amp;gt;,&lt;br /&gt;
  &amp;quot;success&amp;quot;:&amp;lt;boolean&amp;gt;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===op:private===&lt;br /&gt;
The payloads of the &amp;lt;tt&amp;gt;op:private&amp;lt;/tt&amp;gt; messages contain the real time market information. Each message follows this form:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;channel&amp;quot;:&amp;lt;CHANNEL_ID&amp;gt;,&lt;br /&gt;
  &amp;quot;op&amp;quot;:&amp;quot;private&amp;quot;,&lt;br /&gt;
  &amp;quot;private&amp;quot;:&amp;lt;MESSAGE_TYPE&amp;gt;,&lt;br /&gt;
  &amp;lt;MESSAGE_TYPE&amp;gt;:&amp;lt;DATA_PAYLOAD&amp;gt;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;tt&amp;gt;MESSAGE_TYPE&amp;lt;/tt&amp;gt; field may take the values:&lt;br /&gt;
&lt;br /&gt;
:{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! MESSAGE_TYPE !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ticker || Ticker messages&lt;br /&gt;
|-&lt;br /&gt;
| trade || Trades, as they occur&lt;br /&gt;
|-&lt;br /&gt;
| depth || Orders placed or removed&lt;br /&gt;
|-&lt;br /&gt;
| result || The result of a websocket-encapsulated [[MtGox/API/HTTP/v1|version 1 HTTP API]] request&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Ticker====&lt;br /&gt;
Ticker messages contain the current inside Bid and Ask as well as daily highs, lows, and volume. The fields contained in the ticker match those defined in the version 1.0 API above. All fields contain &amp;lt;tt&amp;gt;currency&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;display&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;value&amp;lt;/tt&amp;gt;, and &amp;lt;tt&amp;gt;value_int&amp;lt;/tt&amp;gt; entries.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;channel&amp;quot;:&amp;quot;d5f06780-30a8-4a48-a2f8-7ed181b4a13f&amp;quot;,&lt;br /&gt;
  &amp;quot;op&amp;quot;:&amp;quot;private&amp;quot;,&lt;br /&gt;
  &amp;quot;origin&amp;quot;:&amp;quot;broadcast&amp;quot;,&lt;br /&gt;
  &amp;quot;private&amp;quot;:&amp;quot;ticker&amp;quot;,&lt;br /&gt;
  &amp;quot;ticker&amp;quot;:{&lt;br /&gt;
    &amp;quot;avg&amp;quot;:{&lt;br /&gt;
      &amp;quot;currency&amp;quot;:&amp;quot;USD&amp;quot;,&lt;br /&gt;
      &amp;quot;display&amp;quot;:&amp;quot;$2.26847&amp;quot;,&lt;br /&gt;
      &amp;quot;value&amp;quot;:&amp;quot;2.26847&amp;quot;,&lt;br /&gt;
      &amp;quot;value_int&amp;quot;:&amp;quot;226847&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;buy&amp;quot;:{...},&lt;br /&gt;
    &amp;quot;high&amp;quot;:{...},&lt;br /&gt;
    &amp;quot;last&amp;quot;:{..},&lt;br /&gt;
    &amp;quot;last_local&amp;quot;:{...},&lt;br /&gt;
    &amp;quot;last_orig&amp;quot;:{...},&lt;br /&gt;
    &amp;quot;low&amp;quot;:{...},&lt;br /&gt;
    &amp;quot;sell&amp;quot;:{...},&lt;br /&gt;
    &amp;quot;vol&amp;quot;:{&lt;br /&gt;
      &amp;quot;currency&amp;quot;:&amp;quot;BTC&amp;quot;,&lt;br /&gt;
      &amp;quot;display&amp;quot;:&amp;quot;118,696.02104208&amp;quot;,&lt;br /&gt;
      &amp;quot;value&amp;quot;:&amp;quot;118696.02104208&amp;quot;,&lt;br /&gt;
      &amp;quot;value_int&amp;quot;:&amp;quot;11869602104208&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;vwap&amp;quot;:{...}&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Trade====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;{&lt;br /&gt;
  &amp;quot;channel&amp;quot;:&amp;quot;dbf1dee9-4f2e-4a08-8cb7-748919a71b21&amp;quot;,&lt;br /&gt;
  &amp;quot;op&amp;quot;:&amp;quot;private&amp;quot;,&lt;br /&gt;
  &amp;quot;origin&amp;quot;:&amp;quot;broadcast&amp;quot;,&lt;br /&gt;
  &amp;quot;private&amp;quot;:&amp;quot;trade&amp;quot;,&lt;br /&gt;
  &amp;quot;trade&amp;quot;:{&lt;br /&gt;
    &amp;quot;amount&amp;quot;:2.71,&lt;br /&gt;
    &amp;quot;amount_int&amp;quot;:&amp;quot;271000000&amp;quot;,&lt;br /&gt;
    &amp;quot;date&amp;quot;:1310279340,&lt;br /&gt;
    &amp;quot;item&amp;quot;:&amp;quot;BTC&amp;quot;,&lt;br /&gt;
    &amp;quot;price&amp;quot;:14.43,&lt;br /&gt;
    &amp;quot;price_currency&amp;quot;:&amp;quot;USD&amp;quot;,&lt;br /&gt;
    &amp;quot;price_int&amp;quot;:&amp;quot;1443000&amp;quot;,&lt;br /&gt;
    &amp;quot;primary&amp;quot;:&amp;quot;Y&amp;quot;,&lt;br /&gt;
    &amp;quot;properties&amp;quot;:&amp;quot;limit, mixed_currency&amp;quot;,&lt;br /&gt;
    &amp;quot;tid&amp;quot;:&amp;quot;1310279340877902&amp;quot;,&lt;br /&gt;
    &amp;quot;trade_type&amp;quot;:&amp;quot;bid&amp;quot;,&lt;br /&gt;
    &amp;quot;type&amp;quot;:&amp;quot;trade&amp;quot;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;trade&#039;&#039;&#039; contains the following:&lt;br /&gt;
&lt;br /&gt;
:{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name !! Value&lt;br /&gt;
|-&lt;br /&gt;
| amount || the traded amount in item (BTC), float, deprecated&lt;br /&gt;
|-&lt;br /&gt;
| amount_int || the traded amount * 1E8&lt;br /&gt;
|-&lt;br /&gt;
| date || unix timestamp of trade&lt;br /&gt;
|-&lt;br /&gt;
| item || What was this trade about&lt;br /&gt;
|-&lt;br /&gt;
| price || price per unit, float, deprecated&lt;br /&gt;
|-&lt;br /&gt;
| price_int || price in smallest unit as integer (5 decimals of USD, 3 in case of JPY)&lt;br /&gt;
|-&lt;br /&gt;
| price_currency || currency in which trade was completed&lt;br /&gt;
|-&lt;br /&gt;
| tid || Trade id (big integer, which is in fact trade timestamp in microseconds)&lt;br /&gt;
|-&lt;br /&gt;
| trade_type || Did this trade result from the execution of a bid or a ask?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Depth====&lt;br /&gt;
&lt;br /&gt;
Changes to the market depth data are broadcast so an up-to-date market depth can be kept by clients.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;{&lt;br /&gt;
  &amp;quot;channel&amp;quot;:&amp;quot;24e67e0d-1cad-4cc0-9e7a-f8523ef460fe&amp;quot;,&lt;br /&gt;
  &amp;quot;depth&amp;quot;:{&lt;br /&gt;
    &amp;quot;currency&amp;quot;:&amp;quot;USD&amp;quot;,&lt;br /&gt;
    &amp;quot;item&amp;quot;:&amp;quot;BTC&amp;quot;,&lt;br /&gt;
    &amp;quot;now&amp;quot;:&amp;quot;1323644358437819&amp;quot;,&lt;br /&gt;
    &amp;quot;price&amp;quot;:&amp;quot;14.43&amp;quot;,&lt;br /&gt;
    &amp;quot;price_int&amp;quot;:&amp;quot;1443000&amp;quot;,&lt;br /&gt;
    &amp;quot;total_volume_int&amp;quot;:&amp;quot;849766000&amp;quot;,&lt;br /&gt;
    &amp;quot;type&amp;quot;:1,&lt;br /&gt;
    &amp;quot;type_str&amp;quot;:&amp;quot;ask&amp;quot;,&lt;br /&gt;
    &amp;quot;volume&amp;quot;:&amp;quot;-2.71&amp;quot;,&lt;br /&gt;
    &amp;quot;volume_int&amp;quot;:&amp;quot;-271000000&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;op&amp;quot;:&amp;quot;private&amp;quot;,&lt;br /&gt;
  &amp;quot;origin&amp;quot;:&amp;quot;broadcast&amp;quot;,&lt;br /&gt;
  &amp;quot;private&amp;quot;:&amp;quot;depth&amp;quot;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;depth&#039;&#039;&#039; contains the following:&lt;br /&gt;
&lt;br /&gt;
:{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name !! Value&lt;br /&gt;
|-&lt;br /&gt;
| currency || the currency affected&lt;br /&gt;
|-&lt;br /&gt;
| item || the item (BTC)&lt;br /&gt;
|-&lt;br /&gt;
| price || price as a float, deprecated&lt;br /&gt;
|-&lt;br /&gt;
| total_volume_int || total volume at this price, after applying the depth update, can be used as a starting point before applying subsequent updates.&lt;br /&gt;
|-&lt;br /&gt;
| price_int || the price at which volume change happened (5 decimal for USD, 3 for JPY)&lt;br /&gt;
|-&lt;br /&gt;
| type || 1=ask, 2=bid. deprecated, use type_str&lt;br /&gt;
|-&lt;br /&gt;
| type_str || type of order at this depth, either &amp;quot;ask&amp;quot; or &amp;quot;bid&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| volume || the volume change as float, deprecated&lt;br /&gt;
|-&lt;br /&gt;
| volume_int || volume change * 1E8&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== op:result ===&lt;br /&gt;
&lt;br /&gt;
Output from [[MtGox/API/HTTP/v1|HTTP API version 1]] requests that were sent over the websocket.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;{&lt;br /&gt;
    &amp;quot;id&amp;quot;:&amp;lt;REQUEST ID&amp;gt;,&lt;br /&gt;
    &amp;quot;op&amp;quot;:&amp;quot;result&amp;quot;,&lt;br /&gt;
    &amp;quot;result&amp;quot;: {&lt;br /&gt;
        ...&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;result&amp;quot; contains the result of the call the same as if it were called over the HTTP API. &amp;lt;REQUEST ID&amp;gt; is the ID chosen by you when the request was sent.&lt;br /&gt;
&lt;br /&gt;
=== Private per-account messages ===&lt;br /&gt;
&lt;br /&gt;
The streaming API provides a private channel for every user which receives updates for account-related activities like new orders being created. To subscribe, do:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;{&lt;br /&gt;
    &amp;quot;op&amp;quot;:&amp;quot;mtgox.subscribe&amp;quot;,&lt;br /&gt;
    &amp;quot;key&amp;quot;:&amp;lt;PRIVATE_IDKEY&amp;gt;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRIVATE_IDKEY&amp;gt; is obtained by sending a request to [[MtGox/API/HTTP/v1#idKey|generic/private/idkey]] in the version 1 API. Either over HTTP or through the websocket using [[#Authenticated_commands|op:call]].&lt;br /&gt;
&lt;br /&gt;
==== user_order ====&lt;br /&gt;
&lt;br /&gt;
user_order is sent when a the status of a user&#039;s order is changed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;{&lt;br /&gt;
    &amp;quot;channel&amp;quot;:  &amp;lt;USER CHANNEL GUID&amp;gt;&lt;br /&gt;
    &amp;quot;op&amp;quot;: &amp;quot;private&amp;quot;.&lt;br /&gt;
    &amp;quot;origin&amp;quot;: &amp;quot;broadcast&amp;quot;,&lt;br /&gt;
    &amp;quot;private&amp;quot;: &amp;quot;user_order&amp;quot;.&lt;br /&gt;
    &amp;quot;user_order&amp;quot;: {&lt;br /&gt;
        &amp;quot;amount&amp;quot;: {&lt;br /&gt;
            &amp;quot;currency&amp;quot;: &amp;quot;BTC&amp;quot;,&lt;br /&gt;
            &amp;quot;display&amp;quot;: &amp;quot;1.00000000\U00a0BTC&amp;quot;,&lt;br /&gt;
            &amp;quot;value&amp;quot;: &amp;quot;1.00000000&amp;quot;,&lt;br /&gt;
            &amp;quot;value_int&amp;quot;: &amp;quot;100000000&amp;quot;&lt;br /&gt;
        },&lt;br /&gt;
        &amp;quot;currency&amp;quot;: &amp;quot;USD&amp;quot;,&lt;br /&gt;
        &amp;quot;date&amp;quot;: &amp;quot;1330522328&amp;quot;,&lt;br /&gt;
        &amp;quot;item&amp;quot;: &amp;quot;BTC&amp;quot;,&lt;br /&gt;
        &amp;quot;oid&amp;quot;: &amp;lt;ORDER GUID&amp;gt;,&lt;br /&gt;
        &amp;quot;price&amp;quot;: {&lt;br /&gt;
            &amp;quot;currency&amp;quot;: &amp;quot;USD&amp;quot;,&lt;br /&gt;
            &amp;quot;display&amp;quot;: &amp;quot;$10.00000&amp;quot;,&lt;br /&gt;
            &amp;quot;value&amp;quot;: &amp;quot;10.00000&amp;quot;,&lt;br /&gt;
            &amp;quot;value_int&amp;quot;: &amp;quot;1000000&amp;quot;,&lt;br /&gt;
        };&lt;br /&gt;
        &amp;quot;status&amp;quot;: &amp;lt;ORDER STATUS&amp;gt;,&lt;br /&gt;
        &amp;quot;type&amp;quot;: &amp;lt;ORDER TYPE&amp;gt;,&lt;br /&gt;
    };&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name !! Value&lt;br /&gt;
|-&lt;br /&gt;
| USER CHANNEL GUID || GUID of private user channel&lt;br /&gt;
|-&lt;br /&gt;
| ORDER GUID || GUID of order&lt;br /&gt;
|-&lt;br /&gt;
| ORDER STATUS || New status of the order. Valid states are: pending, post-pending, open, executing, invalid, or stop.&lt;br /&gt;
|-&lt;br /&gt;
| ORDER TYPE || bid or ask&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
When an order is cancelled, the &amp;quot;user_order&amp;quot; field only contains the &amp;quot;oid&amp;quot;, and none of the other fields.&lt;br /&gt;
&lt;br /&gt;
==== wallet ====&lt;br /&gt;
&lt;br /&gt;
Updates to the user&#039;s wallet balance.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;{&lt;br /&gt;
    &amp;quot;channel&amp;quot;: &amp;lt;USER CHANNEL GUID&amp;gt;,&lt;br /&gt;
    &amp;quot;op&amp;quot;: &amp;quot;private&amp;quot;,&lt;br /&gt;
    &amp;quot;origin&amp;quot;: &amp;quot;broadcast&amp;quot;,&lt;br /&gt;
    &amp;quot;private&amp;quot;: &amp;quot;wallet&amp;quot;,&lt;br /&gt;
    &amp;quot;wallet&amp;quot;: {&lt;br /&gt;
        &amp;quot;op&amp;quot;: &amp;lt;UPDATE SOURCE&amp;gt;,&lt;br /&gt;
        &amp;quot;amount&amp;quot;: {&lt;br /&gt;
            ...&lt;br /&gt;
        },&lt;br /&gt;
        &amp;quot;info&amp;quot;: &amp;lt;UPDATE INFO&amp;gt;,&lt;br /&gt;
        &amp;quot;ref&amp;quot;: &amp;lt;REFERENCE CODE&amp;gt;,&lt;br /&gt;
        &amp;quot;balance&amp;quot;: {&lt;br /&gt;
            ...&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;...&amp;quot; values above are normal &#039;amount&#039; type dictionaries containing &amp;quot;currency&amp;quot;, &amp;quot;value&amp;quot;, &amp;quot;value_int&amp;quot;, and &amp;quot;display&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name !! Value&lt;br /&gt;
|-&lt;br /&gt;
| USER CHANNEL GUID || GUID of private user channel&lt;br /&gt;
|-&lt;br /&gt;
| ORDER GUID || GUID of order&lt;br /&gt;
|-&lt;br /&gt;
| UPDATE SOURCE || Cause of the balance update. Can be: in, out, earned, spent, withdraw, or deposit&lt;br /&gt;
|-&lt;br /&gt;
| UPDATE INFO || Human readable string describing the update. Same string you see in the account history on mtgox.com&lt;br /&gt;
|-&lt;br /&gt;
| REFERENCE CODE || Reference code for bank transfers. &amp;quot;null&amp;quot; if this isn&#039;t a bank transfer.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Description of the different source types:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Source !! Description&lt;br /&gt;
|-&lt;br /&gt;
| deposit  || Account deposits&lt;br /&gt;
|-&lt;br /&gt;
| withdraw || Account withdrawals&lt;br /&gt;
|-&lt;br /&gt;
| earned || Amount of USD gained from a trade&lt;br /&gt;
|-&lt;br /&gt;
| spent || Amount of USD used for a trade&lt;br /&gt;
|-&lt;br /&gt;
| in || Amount of BTC gained from a trade&lt;br /&gt;
|-&lt;br /&gt;
| out || Amount of BTC used for a trade&lt;br /&gt;
|-&lt;br /&gt;
| fee || MtGox fees&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== trade ====&lt;br /&gt;
&lt;br /&gt;
Trades that happen on behalf of a user whose private channel you&#039;re subscribed to issue trade messages with the same format as the [[MtGox/API/Streaming#Trade|public trades channel]] does. If you&#039;re subscribed to both, be careful not to take both into account during calculations, it might cause some hard to track down issues&lt;br /&gt;
&lt;br /&gt;
==  Outgoing commands==&lt;br /&gt;
=== Direct commands ===&lt;br /&gt;
&lt;br /&gt;
Commands that can be sent without authentication&lt;br /&gt;
&lt;br /&gt;
==== unsubscribe ====&lt;br /&gt;
Stop receiving messages from a channel&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;{&lt;br /&gt;
    &amp;quot;op&amp;quot;:&amp;quot;unsubscribe&amp;quot;, &lt;br /&gt;
    &amp;quot;channel&amp;quot;:&amp;lt;CHANNEL ID&amp;gt;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Responds with an identical message to confirm&lt;br /&gt;
==== mtgox.subscribe ====&lt;br /&gt;
Subscribe to a channel to start receiving messages from it.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;{&lt;br /&gt;
    &amp;quot;op&amp;quot;: &amp;quot;mtgox.subscribe&amp;quot;,&lt;br /&gt;
    &amp;quot;type&amp;quot;: &amp;quot;ticker&amp;quot;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;quot;type&amp;quot; can be ticker, trades, or depth.&lt;br /&gt;
&lt;br /&gt;
=== Authenticated commands ===&lt;br /&gt;
&lt;br /&gt;
These commands require an API key and secret pair to sign requests. Any of the [[MtGox/API/HTTP/v1|HTTP API version 1]] methods can be called. Responses are [[MtGox/API/Streaming#op:result|op:result]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;{&lt;br /&gt;
    &amp;quot;op&amp;quot;:&amp;quot;call&amp;quot;,&lt;br /&gt;
    &amp;quot;id&amp;quot;:&amp;lt;REQUEST ID&amp;gt;,&lt;br /&gt;
    &amp;quot;call&amp;quot;:&amp;lt;BASE-64 ENCODED SIGNED REQUEST&amp;gt;,&lt;br /&gt;
    &amp;quot;context&amp;quot;:&amp;quot;mtgox.com&amp;quot;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;REQUEST ID&amp;gt; can be any string, it&#039;s used to identify the response as belonging to this request when an answer comes back. md5&#039;ing your nonce is a good way to get an id. &lt;br /&gt;
&lt;br /&gt;
&amp;quot;call&amp;quot; must be a base-64 encoded string consisting of, in order: an API key, a signed copy of the request, and the request text itself.&lt;br /&gt;
&lt;br /&gt;
The queries themselves look like:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;{&lt;br /&gt;
    &amp;quot;id&amp;quot;:&amp;lt;REQUEST ID&amp;gt;,&lt;br /&gt;
    &amp;quot;call&amp;quot;:&amp;lt;HTTP API ENDPOINT&amp;gt;,&lt;br /&gt;
    &amp;quot;nonce&amp;quot;:&amp;lt;REQUEST NONCE&amp;gt;,&lt;br /&gt;
    &amp;quot;params&amp;quot;:&amp;lt;REQUEST PARAMETERS&amp;gt;,&lt;br /&gt;
    &amp;quot;item&amp;quot;:&amp;quot;BTC&amp;quot;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HTTP API ENDPOINT&amp;gt; is the last two path components of any version 1 API endpoint, for example [[#Private_info|private/info]], or [[#Cancelled_Trades|public/cancelledtrades]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;REQUEST PARAMETERS&amp;gt; is optional for any request that doesn&#039;t have parameters.&lt;br /&gt;
&lt;br /&gt;
The signing process is similar to the HTTP API, but because we can&#039;t send headers in an open websocket, the API key and signed request are simply prepended to the actual query data and base64 encoded. Reference implementations are available at https://github.com/MtGox/websocket&lt;br /&gt;
&lt;br /&gt;
Here&#039;s a sample of how to create a valid request in PHP 5.3:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;$nonce = explode(&#039; &#039;, microtime(false));&lt;br /&gt;
$nonce = $nonce[1].substr($nonce[0], 2, 6);&lt;br /&gt;
$id = md5($nonce); // id can be anything to recognize this call&lt;br /&gt;
$query = array(&#039;call&#039; =&amp;gt; $call, &#039;params&#039; =&amp;gt; $params, &#039;item&#039; =&amp;gt; $item, &#039;currency&#039; =&amp;gt; $currency, &#039;id&#039; =&amp;gt; $id, &#039;nonce&#039; =&amp;gt; $nonce);&lt;br /&gt;
$query = json_encode($query);&lt;br /&gt;
// generate signature&lt;br /&gt;
$sign = hash_hmac(&#039;sha512&#039;, $query, base64_decode($apiSecret), true);&lt;br /&gt;
// prefix signature to query&lt;br /&gt;
$query = pack(&#039;H*&#039;, str_replace(&#039;-&#039;,&#039;&#039;,$apiKey)).$sign.$query;&lt;br /&gt;
// send query&lt;br /&gt;
$call = array(&#039;op&#039; =&amp;gt; &#039;call&#039;, &#039;call&#039; =&amp;gt; base64_encode($query), &#039;id&#039; =&amp;gt; $id, &#039;context&#039; =&amp;gt; &#039;mtgox.com&#039;);&lt;br /&gt;
// $call can now be pushed out to the websocket&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== examples ==&lt;br /&gt;
&lt;br /&gt;
=== ticker ===&lt;br /&gt;
javascript, using hookio : &lt;br /&gt;
&lt;br /&gt;
http://www.youtube.com/watch?v=KD5ljtNK72U&lt;br /&gt;
&lt;br /&gt;
http://github.com/hookio&lt;br /&gt;
&lt;br /&gt;
http://github.com/cronopio/hook.io-mtgox&lt;br /&gt;
&lt;br /&gt;
Another node.js project, using plain websockets (largely based on cronopio&#039;s work) :&lt;br /&gt;
&lt;br /&gt;
https://github.com/dlanod/node-mtgox-websocket-client&lt;br /&gt;
&lt;br /&gt;
A python example :&lt;br /&gt;
https://github.com/3M3RY/python-mtgox&lt;br /&gt;
&lt;br /&gt;
A Java example:&lt;br /&gt;
https://github.com/timmolter/XChange&lt;br /&gt;
&lt;br /&gt;
=== arbitrage ===&lt;br /&gt;
https://github.com/goteppo/ArBit&lt;br /&gt;
&lt;br /&gt;
=== websocket tools ===&lt;br /&gt;
https://github.com/cronopio/hook.io-ws&lt;br /&gt;
&lt;br /&gt;
https://github.com/dlanod/node-mtgox-websocket-client&lt;br /&gt;
&lt;br /&gt;
https://github.com/progrium/wssh&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;wssh websocket.mtgox.com:80/mtgox | grep depth 1&amp;gt;&amp;gt;depth.txt&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
* [[MtGox/API/HTTP/v1]]&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&amp;lt;references&amp;gt;&amp;lt;/references&amp;gt;&lt;/div&gt;</summary>
		<author><name>Emery</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=CampBX&amp;diff=31238</id>
		<title>CampBX</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=CampBX&amp;diff=31238"/>
		<updated>2012-09-25T21:57:49Z</updated>

		<summary type="html">&lt;p&gt;Emery: added reference to tulpenmanie application&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A bitcoin [[currency exchange]]/trading platform site headquartered in USA - Atlanta, GA.&lt;br /&gt;
&lt;br /&gt;
CampBX is a platform where you can buy and sell Bitcoins for US Dollars in real-time using advanced order-matching algorithms. Any buy or sell order that you place is matched against a database of other orders. If a perfect match is found, a Bitcoin-to-USD trade is executed instantly. If there are no matching orders at the price you specified, then your order can remain open for up to 31 days. To maintain fairness in trading, CampBX have taken a purely-platform approach and they are never a counter-party to any trade.&lt;br /&gt;
&lt;br /&gt;
This platform was designed from the ground up with stability and security as top priorities, and became the first Bitcoin website to obtain Payment Card Industry (PCI) certification and the McAfee Secure seal of confidence on June 28th, 2011 &amp;lt;ref&amp;gt;[https://bitcointalk.org/index.php?topic=23938.0 CampBX Hacker / Security Audit: Results]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
CampBX is also the first Bitcoin platform to bring advanced features like Margin Trading and Short-selling, and have several more innovative features in pipeline.&lt;br /&gt;
&lt;br /&gt;
There are no fees required to open a CampBX account.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Headquarter and Offices==&lt;br /&gt;
This platform is operated by BulBul Investments LLC, which is a corporate entity registered with the State of Georgia, and is headquartered in Atlanta at 2002 Summit Blvd #300, Atlanta, GA 30319. At launch time CampBX maintained a 4-people development office for a 3-month period; however as the development-phase ended they have switched to a Flex-office plan to save costs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Major Features==&lt;br /&gt;
CampBX aims to be the feature leader, and this vision is reflected in a comprehensive list of features:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt; Security certification from McAfee&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Advanced trading options with AON/FOK/Market&amp;lt;/li&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt; STOPLOSS and Short-Selling available soon &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Trading API available&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Wallet API available &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; CBX Instant Bitcoin Transfers Feature &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Stoploss / Custom Order Expiry Date/Time &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; SMS (Text Message) Notifications &amp;lt;/li&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt; Two-Factor Authentication &amp;lt;/li&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt; Based in USA - Atlanta &amp;lt;/li&amp;gt; &lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Adding Funds==&lt;br /&gt;
Funds deposited with the exchange for escrow towards placing a buy order include the following.&lt;br /&gt;
&lt;br /&gt;
===BTC===&lt;br /&gt;
&lt;br /&gt;
* Adding bitcoins to the account balance incurs no fees.&lt;br /&gt;
&lt;br /&gt;
===USD===&lt;br /&gt;
&lt;br /&gt;
* [[Dwolla]] (instant).  There is a $1,000 per-day transfer limit regardless of deposit or withdrawal.&lt;br /&gt;
* Personal Check&lt;br /&gt;
* USPS Postal Money Order (No fee to receive, costs only $1.55 to send $1,000)&lt;br /&gt;
* Canada Post Money Order (USD)&lt;br /&gt;
&lt;br /&gt;
==Withdrawing Funds==&lt;br /&gt;
&lt;br /&gt;
===BTC===&lt;br /&gt;
&lt;br /&gt;
* CampBX does not have any fees for Bitcoin withdrawals.  The default withdrawal limit is 500 Bitcoins per-day; this limit can be increased by submitting a ticket to the help-desk.  Account-to-account (A2A) transfers to another Camp BX account can be made.  In the accountholder&#039;s profile is the CBX Instant Transfer which the sender needs to know.&lt;br /&gt;
&lt;br /&gt;
===USD===&lt;br /&gt;
&lt;br /&gt;
* [[Dwolla]] (instant).  There is a $1,000 per-day transfer limit regardless of deposit or withdrawal.&lt;br /&gt;
* ACH Withdrwal (Direct deposit)&lt;br /&gt;
* Bank transfer (Domestic wire)&lt;br /&gt;
* International Bank transfer (International wire)&lt;br /&gt;
* USPS Postal Money Order&lt;br /&gt;
&lt;br /&gt;
==Trading==&lt;br /&gt;
&lt;br /&gt;
CampBX is the only Bitcoin exchanges to offer both market orders as well as limit orders.  Market orders get filled regardless of the price. &lt;br /&gt;
Additional Advanced Trading options include Fill-or-Kill and All-or-Nothing fills.  Fill-or-Kill means that if the order cannot immediately be matched, it will be cancelled automatically.  All-or-Nothing means that the order will match only when the entire quantity in the order can be traded.  One option is to set a custom expiry date for each order, which allows setting up advanced trading strategies.&lt;br /&gt;
The trading algorithms implement trading functionality described in the following SEC Investor Bulletin as closely as possible:&lt;br /&gt;
­http://www.sec.gov/investor/alerts/trading101basics.pdf&lt;br /&gt;
&lt;br /&gt;
CampBX also provides Quick Trades for casual Bitcoin users, where you enter the quantity and the desired price for buying or selling Bitcoins, and execute the trade. All prices entered are &amp;quot;Limit&amp;quot; prices, where the platform will find a matching trade at given price or better.&lt;br /&gt;
&lt;br /&gt;
Additionally, though currently disabled, the exchange&#039;s trading site refers to margin trading (buying on margin and shorting) -- something that no other exchange has offered yet.&lt;br /&gt;
&lt;br /&gt;
===Fees===&lt;br /&gt;
&lt;br /&gt;
Trades on the exchange incur a commission (fee) of 0.55%.  (Volume discounts available)&lt;br /&gt;
&lt;br /&gt;
==Data Services==&lt;br /&gt;
===Linux===&lt;br /&gt;
* [https://github.com/3M3RY/tulpenmanie tulpenmanie] graphical trading platform&lt;br /&gt;
&lt;br /&gt;
==History==&lt;br /&gt;
&lt;br /&gt;
A story of firsts:&lt;br /&gt;
&lt;br /&gt;
CampBX was the first Bitcoin trading platform to launch on Testnet &amp;lt;ref&amp;gt;[https://bitcointalk.org/index.php?topic=20777.0 CampBX Platform in Beta: Margin Trading, Short Selling, and Advanced Orders]&amp;lt;/ref&amp;gt;. This allowed Bitcoin users to try out CampBX without risking their Bitcoins on an unknown website. Following a major  CBX Testnet opened for public trial on June 21st, and in the following 15 days handled trading of ~90,000 testnet coins.&lt;br /&gt;
CampBX trade engine supported multiple advanced trading features like Margin Trading, Short Selling, Advanced Order Execution like FOK (Fill-or-Kill), (AON) All-or-Nothing orders, Stoploss, and custom expiry dates for orders.  &lt;br /&gt;
&lt;br /&gt;
On June 28th, we went through a rigorous third-party security audit by McAfee Hacker Safe (McAfee Secure) and two more white-hat auditors.  As our commitment to transparency, we shared the results of the audit in a public forum &amp;lt;ref&amp;gt;[https://bitcointalk.org/index.php?topic=23938.0 CampBX Hacker / Security Audit: Results]&amp;lt;/ref&amp;gt;.  CampBX obtained compliance with 7 security standards including PCI (Payment Card Industry) compliance, another major first in the Bitcoin world.  &lt;br /&gt;
&lt;br /&gt;
We ended the testnet phase and opened for trading following the Independence Day on July 5th, 2011 &amp;lt;ref&amp;gt;[http://forum.bitcoin.org/index.php?topic=26202.0 CampBX Launch - Free Trades for All Bxlievers!]&amp;lt;/ref&amp;gt;.  As we grow, we are determined to continue this tradition of security, transparency, and customer service.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
* [[Buying bitcoins]]&lt;br /&gt;
* [[Selling bitcoins]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==External Links==&lt;br /&gt;
&lt;br /&gt;
* [https://CampBX.com/register.php?r=JBfCSWoQaow CampBX Home Page]&lt;br /&gt;
* [https://twitter.com/CampBX [[Twitter]] Feed for CampBX]&lt;br /&gt;
* [https://facebook.com/CampBX [[Facebook]] page for CampBX]&lt;br /&gt;
* [https://campbx.com/api.php API Reference]&lt;br /&gt;
* [https://campbx.com/faq.php Office Location and FAQ]&lt;br /&gt;
* [https://campbx.com/contact.php Helpdesk for CampBX]&lt;br /&gt;
* [https://CampBX.com/register.php?r=JBfCSWoQaow CampBX Terms of Use (User Agreement)]&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
&amp;lt;References /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Exchanges]]&lt;br /&gt;
[[Category:EWallets]]&lt;/div&gt;</summary>
		<author><name>Emery</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=BTC-e&amp;diff=31237</id>
		<title>BTC-e</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=BTC-e&amp;diff=31237"/>
		<updated>2012-09-25T21:56:07Z</updated>

		<summary type="html">&lt;p&gt;Emery: line spacing&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A [[currency exchange]] with market for trading between bitcoins and other currencies, including the U.S. dollar, Russian ruble and other cryptocurrencies [[Litecoin]] and [[Namecoin]].  The site has Russian and English user interface translations.&lt;br /&gt;
&lt;br /&gt;
==Features==&lt;br /&gt;
&lt;br /&gt;
===Currency pairs===&lt;br /&gt;
[http://www.btc-e.com BTC-E] supports the exchange between the major currency pairs, such as:&lt;br /&gt;
* BTC/USD&lt;br /&gt;
* BTC/RUR (Russian Ruble)&lt;br /&gt;
* USD/RUR&lt;br /&gt;
* LTC/BTC, LTC/USD&lt;br /&gt;
* NMC/BTC&lt;br /&gt;
&lt;br /&gt;
===Deposit options===&lt;br /&gt;
&lt;br /&gt;
====BTC====&lt;br /&gt;
There is no fee for depositing bitcoins or depositing (redeeming) a BTC-e [[redeemable code]] (BTC).&lt;br /&gt;
&lt;br /&gt;
====USD====&lt;br /&gt;
* Cash deposit (USD currency) at Post of Russia&lt;br /&gt;
* Cash deposit (USD currency) at various banks: (Savings Bank of Russia (Sberbank), Privatbank, RU/UA Terminals, Russian banks, Евросеть (Euroset), Лидер (Lider), Contact, Anelik, UNIStream)&lt;br /&gt;
* [[Liberty Reserve]]&lt;br /&gt;
* Webmoney WMZ (with volume discount available&amp;lt;ref&amp;gt;If the amount to deposit more than 30 WMZ, fee is reduced to 0.08%. Contact support site support via private message for details&amp;lt;/ref&amp;gt;)&lt;br /&gt;
* Interkassa.com (VISA, MasterCard, PayPal, LiqPay, etc.)&lt;br /&gt;
* Yandex.ru&lt;br /&gt;
* LiqPay&lt;br /&gt;
* Perfect Money&lt;br /&gt;
* Qiwi&lt;br /&gt;
* [[OKPay]]&lt;br /&gt;
* RBK Money&lt;br /&gt;
* Additional digital currencies (НСМЭП (NSMEP), Единый Кошелек (Unified Purse), TeleMoney, moneymail, Unikarta, webcreds.com, z-payment, MTS, Альфа-Клик (Alfa-Click), Megafon, Monexy, Pin-Code)&lt;br /&gt;
* BTC-e [[redeemable code]], including those obtained from [[BitInstant]] (funding options include QIWI, Cyberplat) and AurumXChange&lt;br /&gt;
* International Wire Transfer&lt;br /&gt;
&lt;br /&gt;
====RUR====&lt;br /&gt;
* QIWI&lt;br /&gt;
* LiqPay&lt;br /&gt;
* Webmoney WMR&lt;br /&gt;
* BTC-e redeemable code&lt;br /&gt;
* Bank transfer&lt;br /&gt;
&lt;br /&gt;
===Withdraw options===&lt;br /&gt;
====BTC====&lt;br /&gt;
There is no fee to withdraw bitcoins.  Also available for withdrawal to BTC-e redeemable code (BTC).&lt;br /&gt;
&lt;br /&gt;
====USD====&lt;br /&gt;
&lt;br /&gt;
* Liberty Reserve&lt;br /&gt;
* Webmoney WMZ&lt;br /&gt;
* [[PayPal]]&lt;br /&gt;
* Perfect Money&lt;br /&gt;
* LiqPay&lt;br /&gt;
* QIWI&lt;br /&gt;
* OKPay&lt;br /&gt;
* [[Payza]]/AlertPay&lt;br /&gt;
* Epese.com&lt;br /&gt;
* Ecoin.cc&lt;br /&gt;
* RedPass.com&lt;br /&gt;
* Privatbank - USD, UAH&lt;br /&gt;
* Savings Bank (Sberbank)&lt;br /&gt;
* Telebank&lt;br /&gt;
* Alfa Bank&lt;br /&gt;
* Wire Transfer&lt;br /&gt;
* BTC-E redeemable code (cash out aurumxchange --&amp;gt; MtGox)&lt;br /&gt;
&lt;br /&gt;
====RUB====&lt;br /&gt;
Withdrawal methods in Rubles.&lt;br /&gt;
&lt;br /&gt;
* QIWI&lt;br /&gt;
* LiqPay&lt;br /&gt;
* Webmoney WMR&lt;br /&gt;
* Яндекс.Деньги (Yandex)&lt;br /&gt;
* RBK Money&lt;br /&gt;
* Cash deposit into account at Сбербанка России! (Savings Bank Sberbank), Телебанк (Telebank), and АльфаБанк (Alfa Bank)&lt;br /&gt;
* Cash in Moscow, Russia (delivery to your address is possible)&lt;br /&gt;
* Transferred to credit card - VISA and MasterCard&lt;br /&gt;
* BTC-e redeemable code (RUR)&lt;br /&gt;
* Bank transfer&lt;br /&gt;
&lt;br /&gt;
==Data Services==&lt;br /&gt;
===Linux===&lt;br /&gt;
* [https://github.com/3M3RY/tulpenmanie tulpenmanie] graphical trading platform&lt;br /&gt;
&lt;br /&gt;
==History==&lt;br /&gt;
&lt;br /&gt;
The site was first announced on July 17, 2011&amp;lt;ref&amp;gt;[http://bitcointalk.org/index.php?topic=29698.0 Btc-e.com exchange for the exchange of BTC &amp;lt;-&amp;gt; USD]&amp;lt;/ref&amp;gt; with test mode trading.  Live trading began on August 7, 2011&amp;lt;ref&amp;gt;[http://bitcointalk.org/index.php?topic=29698.msg437237#msg437237 Btc-e.com]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
On July 31, 2012 the service reported a security incident in which halted trading and caused financial loss to the exchange.  The exchange says it covered losses from reserves and trading resumed in a matter of hours&amp;lt;ref&amp;gt;[https://btc-e.com/news/81 News / Trade is stopped]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
On August 2, 2012 the service added an API for trading, but still lacks an API for bitcoin withdrawals (something offered by every major exchange).  On August 20, 2012 the service added BTC/RUR and USD/RUR trading markets.  On September 3, 2012 the service added numerous RUR deposit and withdawal methods as well as more USD deposit and withdrawal methods&amp;lt;ref&amp;gt;[https://btc-e.com/news/87 News / Update commissions deposit &amp;amp; withdrawal + add new methods withdrawal]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
* [[Buying bitcoins]]&lt;br /&gt;
* [[Selling bitcoins]]&lt;br /&gt;
&lt;br /&gt;
==External Links==&lt;br /&gt;
&lt;br /&gt;
* [http://www.btc-e.com BTC-E] exchange website&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Exchanges]]&lt;br /&gt;
[[Category:EWallets]]&lt;/div&gt;</summary>
		<author><name>Emery</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=BTC-e&amp;diff=31236</id>
		<title>BTC-e</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=BTC-e&amp;diff=31236"/>
		<updated>2012-09-25T21:54:52Z</updated>

		<summary type="html">&lt;p&gt;Emery: added reference to tulpenmanie application&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A [[currency exchange]] with market for trading between bitcoins and other currencies, including the U.S. dollar, Russian ruble and other cryptocurrencies [[Litecoin]] and [[Namecoin]].  The site has Russian and English user interface translations.&lt;br /&gt;
&lt;br /&gt;
==Features==&lt;br /&gt;
&lt;br /&gt;
===Currency pairs===&lt;br /&gt;
[http://www.btc-e.com BTC-E] supports the exchange between the major currency pairs, such as:&lt;br /&gt;
* BTC/USD&lt;br /&gt;
* BTC/RUR (Russian Ruble)&lt;br /&gt;
* USD/RUR&lt;br /&gt;
* LTC/BTC, LTC/USD&lt;br /&gt;
* NMC/BTC&lt;br /&gt;
&lt;br /&gt;
===Deposit options===&lt;br /&gt;
&lt;br /&gt;
====BTC====&lt;br /&gt;
There is no fee for depositing bitcoins or depositing (redeeming) a BTC-e [[redeemable code]] (BTC).&lt;br /&gt;
&lt;br /&gt;
====USD====&lt;br /&gt;
* Cash deposit (USD currency) at Post of Russia&lt;br /&gt;
* Cash deposit (USD currency) at various banks: (Savings Bank of Russia (Sberbank), Privatbank, RU/UA Terminals, Russian banks, Евросеть (Euroset), Лидер (Lider), Contact, Anelik, UNIStream)&lt;br /&gt;
* [[Liberty Reserve]]&lt;br /&gt;
* Webmoney WMZ (with volume discount available&amp;lt;ref&amp;gt;If the amount to deposit more than 30 WMZ, fee is reduced to 0.08%. Contact support site support via private message for details&amp;lt;/ref&amp;gt;)&lt;br /&gt;
* Interkassa.com (VISA, MasterCard, PayPal, LiqPay, etc.)&lt;br /&gt;
* Yandex.ru&lt;br /&gt;
* LiqPay&lt;br /&gt;
* Perfect Money&lt;br /&gt;
* Qiwi&lt;br /&gt;
* [[OKPay]]&lt;br /&gt;
* RBK Money&lt;br /&gt;
* Additional digital currencies (НСМЭП (NSMEP), Единый Кошелек (Unified Purse), TeleMoney, moneymail, Unikarta, webcreds.com, z-payment, MTS, Альфа-Клик (Alfa-Click), Megafon, Monexy, Pin-Code)&lt;br /&gt;
* BTC-e [[redeemable code]], including those obtained from [[BitInstant]] (funding options include QIWI, Cyberplat) and AurumXChange&lt;br /&gt;
* International Wire Transfer&lt;br /&gt;
&lt;br /&gt;
====RUR====&lt;br /&gt;
* QIWI&lt;br /&gt;
* LiqPay&lt;br /&gt;
* Webmoney WMR&lt;br /&gt;
* BTC-e redeemable code&lt;br /&gt;
* Bank transfer&lt;br /&gt;
&lt;br /&gt;
===Withdraw options===&lt;br /&gt;
====BTC====&lt;br /&gt;
There is no fee to withdraw bitcoins.  Also available for withdrawal to BTC-e redeemable code (BTC).&lt;br /&gt;
&lt;br /&gt;
====USD====&lt;br /&gt;
&lt;br /&gt;
* Liberty Reserve&lt;br /&gt;
* Webmoney WMZ&lt;br /&gt;
* [[PayPal]]&lt;br /&gt;
* Perfect Money&lt;br /&gt;
* LiqPay&lt;br /&gt;
* QIWI&lt;br /&gt;
* OKPay&lt;br /&gt;
* [[Payza]]/AlertPay&lt;br /&gt;
* Epese.com&lt;br /&gt;
* Ecoin.cc&lt;br /&gt;
* RedPass.com&lt;br /&gt;
* Privatbank - USD, UAH&lt;br /&gt;
* Savings Bank (Sberbank)&lt;br /&gt;
* Telebank&lt;br /&gt;
* Alfa Bank&lt;br /&gt;
* Wire Transfer&lt;br /&gt;
* BTC-E redeemable code (cash out aurumxchange --&amp;gt; MtGox)&lt;br /&gt;
&lt;br /&gt;
====RUB====&lt;br /&gt;
Withdrawal methods in Rubles.&lt;br /&gt;
&lt;br /&gt;
* QIWI&lt;br /&gt;
* LiqPay&lt;br /&gt;
* Webmoney WMR&lt;br /&gt;
* Яндекс.Деньги (Yandex)&lt;br /&gt;
* RBK Money&lt;br /&gt;
* Cash deposit into account at Сбербанка России! (Savings Bank Sberbank), Телебанк (Telebank), and АльфаБанк (Alfa Bank)&lt;br /&gt;
* Cash in Moscow, Russia (delivery to your address is possible)&lt;br /&gt;
* Transferred to credit card - VISA and MasterCard&lt;br /&gt;
* BTC-e redeemable code (RUR)&lt;br /&gt;
* Bank transfer&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Data Services==&lt;br /&gt;
&lt;br /&gt;
===Linux===&lt;br /&gt;
* [https://github.com/3M3RY/tulpenmanie tulpenmanie] graphical trading platform&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==History==&lt;br /&gt;
&lt;br /&gt;
The site was first announced on July 17, 2011&amp;lt;ref&amp;gt;[http://bitcointalk.org/index.php?topic=29698.0 Btc-e.com exchange for the exchange of BTC &amp;lt;-&amp;gt; USD]&amp;lt;/ref&amp;gt; with test mode trading.  Live trading began on August 7, 2011&amp;lt;ref&amp;gt;[http://bitcointalk.org/index.php?topic=29698.msg437237#msg437237 Btc-e.com]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
On July 31, 2012 the service reported a security incident in which halted trading and caused financial loss to the exchange.  The exchange says it covered losses from reserves and trading resumed in a matter of hours&amp;lt;ref&amp;gt;[https://btc-e.com/news/81 News / Trade is stopped]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
On August 2, 2012 the service added an API for trading, but still lacks an API for bitcoin withdrawals (something offered by every major exchange).  On August 20, 2012 the service added BTC/RUR and USD/RUR trading markets.  On September 3, 2012 the service added numerous RUR deposit and withdawal methods as well as more USD deposit and withdrawal methods&amp;lt;ref&amp;gt;[https://btc-e.com/news/87 News / Update commissions deposit &amp;amp; withdrawal + add new methods withdrawal]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
* [[Buying bitcoins]]&lt;br /&gt;
* [[Selling bitcoins]]&lt;br /&gt;
&lt;br /&gt;
==External Links==&lt;br /&gt;
&lt;br /&gt;
* [http://www.btc-e.com BTC-E] exchange website&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Exchanges]]&lt;br /&gt;
[[Category:EWallets]]&lt;/div&gt;</summary>
		<author><name>Emery</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=Bitstamp&amp;diff=31235</id>
		<title>Bitstamp</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=Bitstamp&amp;diff=31235"/>
		<updated>2012-09-25T21:54:06Z</updated>

		<summary type="html">&lt;p&gt;Emery: added reference to tulpenmanie application&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;An currency exchange which operates a BTC/USD market with support for various currencies for deposit and withdrawal.&lt;br /&gt;
&lt;br /&gt;
==Trading==&lt;br /&gt;
*Buying/selling&lt;br /&gt;
&lt;br /&gt;
A buy/sell order is executed partially or in full when the price bid can be matched against a sell/buy order that is at or below the bid amount. &lt;br /&gt;
&lt;br /&gt;
==Adding funds==&lt;br /&gt;
&lt;br /&gt;
===BTC===&lt;br /&gt;
There are no fees incurred when when transferring bitcoins for deposit. Funds are available once confirmed (3 confirms), a process that can take roughly 30minutes.  A Bitstamp [[Redeemable code]] (coupon) denominated in BTC or BTC and USD can be deposited.  The bitcoins using these coupons are instantly credited.&lt;br /&gt;
&lt;br /&gt;
===EUR===&lt;br /&gt;
Exchange accepts EUR deposits via SEPA transfers, then converts them to USD and credits them to online account. &#039;&#039;&#039;No deposit fees!&#039;&#039;&#039;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===GBP===&lt;br /&gt;
Exchange accepts wire transfers in GBP, then converts them to USD and credits them to online account.&amp;lt;br/&amp;gt;&lt;br /&gt;
Charging 0.1% deposit fee(minimum fee = $15)&lt;br /&gt;
&lt;br /&gt;
===USD===&lt;br /&gt;
Exchange accepts international wire transfers in USD, charging 0.1% deposit fee(minimum fee = $15)&amp;lt;br/&amp;gt;&lt;br /&gt;
Exchange accepts MtGox - USD redeemable codes, charging 2% fee.&amp;lt;br/&amp;gt;&lt;br /&gt;
Exchange accepts a Bitstamp redeemable code (coupon) in USD denomination or combination of USD and BTC&amp;lt;br/&amp;gt;&lt;br /&gt;
Exchange supports transfers between Dwolla, Liberty Reserve, MtGox, Cash Bank Deposits, Crypto X Change, Bitcoinica, BTC-E and VirWox via &#039;&#039;&#039;Bitinstant&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
===CHF===&lt;br /&gt;
Exchange accepts wire transfers in CHF, then converts them to USD and credits them to online account.&amp;lt;br/&amp;gt;&lt;br /&gt;
Charging 0.1% deposit fee(minimum fee = $15)&lt;br /&gt;
&lt;br /&gt;
==Withdrawing funds==&lt;br /&gt;
&lt;br /&gt;
===BTC===&lt;br /&gt;
Bitcoins may be withdrawn at no charge.  Withdrawals can be sent to a bitcoin address or they can be made using a [[Redeemable code]] (coupon).&lt;br /&gt;
&lt;br /&gt;
===EUR===&lt;br /&gt;
SEPA withdrawals are charged with fixed 0.90€ fee once your funds are converted to EUR. Minimum amount for SEPA withdrawal is $10,00.&lt;br /&gt;
&lt;br /&gt;
===GBP===&lt;br /&gt;
GBP wire deposits and withdrawals in GBP are supported.&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===USD===&lt;br /&gt;
International wire withdrawals in USD will be charged with 0.09% fee, minimum fee is $15,00. Minimum amount for international withdrawal is $50,00.&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Withdrawal can occur using a Bitstamp redeemable code (coupon) (USD denomination) or as a Mt. Gox redeemable code (2% fee). &lt;br /&gt;
&lt;br /&gt;
===CHF===&lt;br /&gt;
International wire withdrawals in CHF will be charged with 0.09% fee, minimum fee is $15,00. Minimum amount for international withdrawal is $50,00.&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Fees==&lt;br /&gt;
Bitstamp charges a trading fee from each party of successful trades made through the market. The amount of the fee will vary based on a 30 day trading history.  The rate for new accounts and those with the lowest volume is 0.5%.  Refer to the [https://www.bitstamp.net/fee_schedule fee schedule] to determine discount levels.  The fee that was charged appears in the account history next to each trade.&lt;br /&gt;
&lt;br /&gt;
==Internal transfers==&lt;br /&gt;
Bitstamp allows internal transfer of funds to other users using Bitstamp codes. One party withdraws funds by creating a code and then sending (in a secure manner) the code to a trusted user who then redeems that code by using deposit Bitstamp code option.  The code denominations can be in BTCs, USDs, or combination of those two.&lt;br /&gt;
&lt;br /&gt;
==Instant transfers via other services==&lt;br /&gt;
&#039;&#039;&#039;BitInstant&#039;&#039;&#039;&lt;br /&gt;
*Dwolla&lt;br /&gt;
*Liberty Reserve&lt;br /&gt;
*MtGox&lt;br /&gt;
*Cash Bank Deposits&lt;br /&gt;
*Crypto X Change&lt;br /&gt;
*Bitcoinica&lt;br /&gt;
*BTC-E&lt;br /&gt;
*VirWox&lt;br /&gt;
&lt;br /&gt;
==Localization==&lt;br /&gt;
Bitstamp is localizing website with online collaborative online translating tool. Feel free to join and help with translation to your native language.&lt;br /&gt;
&lt;br /&gt;
Link: http://crowdin.net/project/bitstamp &lt;br /&gt;
&lt;br /&gt;
==Account Security==&lt;br /&gt;
&lt;br /&gt;
Access to an account may be protected with the optional Google Authenticator utility.&lt;br /&gt;
&lt;br /&gt;
==Language Support==&lt;br /&gt;
&lt;br /&gt;
The site has support for various languages:&lt;br /&gt;
&lt;br /&gt;
* English&lt;br /&gt;
* Dutch&lt;br /&gt;
* Italian&lt;br /&gt;
* Polish&lt;br /&gt;
* Slovenian&lt;br /&gt;
&lt;br /&gt;
==API==&lt;br /&gt;
API is available https://www.bitstamp.net/api/&lt;br /&gt;
&lt;br /&gt;
==Data Services==&lt;br /&gt;
&lt;br /&gt;
===Linux===&lt;br /&gt;
* [https://github.com/3M3RY/tulpenmanie tulpenmanie] graphical trading platform&lt;br /&gt;
&lt;br /&gt;
==History==&lt;br /&gt;
&lt;br /&gt;
The exchange was announced on August 22, 2011&amp;lt;ref&amp;gt;[http://bitcointalk.org/index.php?topic=38711.0 www.BITSTAMP.net Bitcoin exchange site for USD/BTC]&amp;lt;/ref&amp;gt;.  Bitstamp.net is owned by Bitstamp d.o.o. and based in Slovenia.&lt;br /&gt;
&lt;br /&gt;
On May 12, 2012 the exchange began offering volume discounts for trading fees&amp;lt;ref&amp;gt;[http://bitcointalk.org/index.php?topic=81519.0 Bitstamp introduces volume discount program]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
* [[Buying bitcoins]]&lt;br /&gt;
* [[Selling bitcoins]]&lt;br /&gt;
&lt;br /&gt;
==External Links==&lt;br /&gt;
&lt;br /&gt;
* [http://www.bitstamp.net Bitstamp] web site&lt;br /&gt;
* [http://twitter.com/#!/BitStamp @Bitstamp] Twitter&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
&amp;lt;References /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Exchanges]]&lt;br /&gt;
[[Category:EWallets]]&lt;/div&gt;</summary>
		<author><name>Emery</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=Mt._Gox&amp;diff=31234</id>
		<title>Mt. Gox</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=Mt._Gox&amp;diff=31234"/>
		<updated>2012-09-25T21:48:40Z</updated>

		<summary type="html">&lt;p&gt;Emery: /* Linux */ added reference to tulpenmanie application&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;MtGox&#039;&#039;&#039;, called &amp;quot;Mount Gox&amp;quot; or &amp;quot;MTGOX&amp;quot;, has been the most widely used bitcoin [[currency exchange]] market&amp;lt;ref&amp;gt;2011-06-07 on #bitcoin-otc: &amp;quot;MagicalTux: you could use the count of users on mtgox (went over 30k recently)&amp;quot;&amp;lt;/ref&amp;gt; since it was started, and remains the largest in terms of popularity and volume.&lt;br /&gt;
&lt;br /&gt;
A registrant on MtGox has at least two sub-accounts: one for bitcoins (BTC), and one for US dollars (USD or MTGUSD) or other national currency. Bitcoins are bought using funds from the trader&#039;s national currency account, and the proceeds from the sale of bitcoins are deposited into the same account. Trading must always involve bitcoins as trading between different national currencies is not offered.&lt;br /&gt;
&lt;br /&gt;
Trades on Mt. Gox&#039;s execute from balances on deposit with the exchange which in turn makes trading on the market instantaneous, compared to some other Bitcoin markets where a subsequent settlement occurs manually between the trading partners. The disadvantage of this is that a third party must be trusted with keeping the money safe.&lt;br /&gt;
&lt;br /&gt;
MtGox was originally started by Jed McCaleb in July 2010, and was sold to [[Tibanne Co.]] in Japan in March 2011.  It is currently operated by Tibanne Co., managed by Mark Karpeles (MagicalTux).&lt;br /&gt;
&lt;br /&gt;
==Trading==&lt;br /&gt;
===Buying and selling===&lt;br /&gt;
&lt;br /&gt;
Buying and selling Bitcoins is simple.  A buy order is executed partially or in full when the price bid can be matched against a sell order that is at or below the bid amount.  A sell order is executed partially or in full when the price asked can be matched against a buy order that is at or above the ask amount.  Orders that cannot be matched immediately remain in the orderbook.&lt;br /&gt;
&lt;br /&gt;
Unfunded orders do not appear in the order book, but are automatically readded if a deposit is credited.  For example, Mt. Gox allows the entry of a &amp;quot;buy&amp;quot; order even if the account has insufficient funds.  If possible, Mt. Gox will execute a portion of the order if it can be partially funded.  If a deposit is later credited and the deposit resolves the insufficient funds status of an outstanding order, the order will be immediately activated, and if possible, executed.&lt;br /&gt;
&lt;br /&gt;
===Fees===&lt;br /&gt;
&lt;br /&gt;
Mt. Gox charges a trading fee of up to 0.6% from each party of successful trades made through the market.  The fee appears in the account history next to each trade.  The trading fee is discounted for larger customers based on volume, which is calculated as a sliding window over the last 720 hours (30 days).&lt;br /&gt;
&lt;br /&gt;
The fees are, by default, subtracted from the proceeds of each trade (e.g., a buy of 1.0 BTC will add to the account balance 0.994 BTC when the exchange fee is 0.6%).  An account setting will allow fees to be added to the purchase amount instead (e.g., buying 1.0 BTC at $5 will cost about $5.03 when the exchange fee is 0.6%).&lt;br /&gt;
&lt;br /&gt;
==Adding Funds==&lt;br /&gt;
&lt;br /&gt;
===BTC===&lt;br /&gt;
There are no fees incurred when transferring bitcoins to a Mt. Gox account.&lt;br /&gt;
&lt;br /&gt;
Funds are available once [[confirmation|confirmed]] (6 blocks)&amp;lt;ref&amp;gt;[http://www.bitcoin.org/smf/index.php?topic=3851.msg55220#msg55220 How long does it take to Deposit bitcoins to MtGox?]&amp;lt;/ref&amp;gt;, a process that can take roughly an hour.&lt;br /&gt;
&lt;br /&gt;
The deposit address is presented along with a QR code that can be scanned with a mobile.  This address does not change with each deposit request.&lt;br /&gt;
&lt;br /&gt;
The Add Bitcoins function experiences issues with some browser ad-blocking utilities even though no advertisements are displayed on the website.&lt;br /&gt;
&lt;br /&gt;
====Redeemable Code====&lt;br /&gt;
&lt;br /&gt;
Bitcoins from another Mt. Gox user sent by Mt. Gox [[redeemable code]] may be deposited and will be available for trading immediately.&lt;br /&gt;
&lt;br /&gt;
===Dwolla===&lt;br /&gt;
&lt;br /&gt;
Dwolla is among the fastest and least expensive methods for adding funds to a Mt. Gox account. The transaction fee on [[Dwolla]] is merely $0.25. The process is automated and the funds become available for trading within an hour&amp;lt;ref&amp;gt;[http://forum.bitcoin.org/index.php?topic=15107.msg205622#msg205622 Dwolla to Mt. Gox vs. Dwolla to TradeHill]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===OKPay===&lt;br /&gt;
&lt;br /&gt;
OKPay may be used for depositing funds to USD, EUR, GBP, CHF, and RUB&amp;lt;ref&amp;gt;[https://support.mtgox.com/entries/21034626-okpay OKPAY]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Cash Deposit===&lt;br /&gt;
&lt;br /&gt;
====U.S. (USD)====&lt;br /&gt;
* BitInstant - Cash (U.S. dollars) may be deposited at any of thousands of banks, 7-11, Walmart, CVS, Moneygram and more that [[BitInstant]] uses to transfer funds to your Mt. Gox account.&lt;br /&gt;
&lt;br /&gt;
====Brazil (BRL)====&lt;br /&gt;
* BitInstant - Cash (Brazilian real) may be deposited using Boleto or through Banco Recomendito.&lt;br /&gt;
&lt;br /&gt;
====Brazil (BRL)====&lt;br /&gt;
* BitInstant - Cash (Russian rubles) may be deposited using QIWI or Cyberplat&lt;br /&gt;
&lt;br /&gt;
====UK (GBP)====&lt;br /&gt;
* Barclays - Cash (British pound sterling) may be deposited at any Barclays location.  There is a 1.5% fee on deposits made with this method&amp;lt;ref&amp;gt;[https://mtgox.com/press_release_20120806.html Introducing a new 1.5% fee on Barclays cash deposit]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Bank Wire===&lt;br /&gt;
&lt;br /&gt;
====International USD====&lt;br /&gt;
Funds in USD may be wired to the exchange&#039;s bank in Japan. Each wire is subject to a per-wire fee plus any intermediate fees.  &lt;br /&gt;
&lt;br /&gt;
====International Wire====&lt;br /&gt;
&lt;br /&gt;
An account can be configured with a wallet for each of the currencies that the exchange supports&amp;lt;ref&amp;gt;[https://mtgox.zendesk.com/entries/20413328-mt-gox-opens-15-new-currency-markets Mt.Gox Opens 15 New Currency Markets]&amp;lt;/ref&amp;gt;.  When a wire is received in one of these currencies, that account will be credited.&lt;br /&gt;
&lt;br /&gt;
* USD - U.S. Dollar &lt;br /&gt;
* EUR - Euro (SEPA or Int&#039;l wire)&lt;br /&gt;
* CAD - Canadian Dollar&lt;br /&gt;
* GBP - British Pound (Domestic or Int&#039;l wire)&lt;br /&gt;
* CHF - Swiss Francs&lt;br /&gt;
* RUB - Russian Rubles&lt;br /&gt;
* AUD - Australian Dollars&lt;br /&gt;
* SEK - Swedish Krona&lt;br /&gt;
* DKK - Danish Krona&lt;br /&gt;
* HKD - Hong Kong Dollars&lt;br /&gt;
* PLN - Polish Zloty (Domestic or Int&#039;l wire)&lt;br /&gt;
* CNY - Chinese Yuan&lt;br /&gt;
* SGD - Singapore Dollars&lt;br /&gt;
* TBH - Thai Baht&lt;br /&gt;
* NZD - New Zealand Dollars&lt;br /&gt;
* JPY - Japanese Yen (Domestic or Int&#039;l wire)&lt;br /&gt;
&lt;br /&gt;
====AurumXChange USD, EUR and CAD====&lt;br /&gt;
&lt;br /&gt;
Funds may be wired to [[AurumXChange Company]] as USD, EUR or CAD (the latter two of which would then be exchanged into USD) for for purchase of a Mt. Gox USD [[redeemable code]] (voucher).  Other digital currencies such as [[Liberty Reserve]] can be converted for transfer to Mt. Gox as well.  The redeemable code provided is then used to load USD funds into an account with Mt. Gox.&lt;br /&gt;
&lt;br /&gt;
===Direct Deposit===&lt;br /&gt;
====EU====&lt;br /&gt;
&lt;br /&gt;
Funds in EUR may be added using SEPA Direct Debit for free, with funds convert to USD at the current ECB rate at the time the funds are received&amp;lt;ref&amp;gt;[http://www.bitcoin.org/smf/index.php?topic=5461.0 MTGox: Euro deposits]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
====U.S.====&lt;br /&gt;
&lt;br /&gt;
Mt. Gox doesn&#039;t directly support an ACH-based (direct deposit) deposit method.  Dwolla supports ACH-based fund transfers and those funds can then be deposited with Mt. Gox.&lt;br /&gt;
&lt;br /&gt;
====UK====&lt;br /&gt;
&lt;br /&gt;
Funds may be sent as a GBP direct deposit free of charge.&lt;br /&gt;
&lt;br /&gt;
====Australia====&lt;br /&gt;
&lt;br /&gt;
Funds may be sent using direct deposit (BPay) for a AU$2.00 per-deposit fee.  The funds will be converted to USD at the current rate.&lt;br /&gt;
&lt;br /&gt;
==Withdrawing Funds==&lt;br /&gt;
&lt;br /&gt;
MtGox imposes a $1,000 USD limit for withdrawals per 24 hours and a $10,000 USD limit for withdrawals per month with most non-verified accounts.  Bitcoins withdrawn are counted toward this limit as well and the USD value is calculated at the market rate at the time of the attempted withdrawal.  Customers that have been Verified have higher limits and customers that have Trusted status have limits even higher&amp;lt;ref&amp;gt;[http://bitcoin.stackexchange.com/questions/2442/mtgox-trusted-vs-verified MtGox - trusted vs verified]&amp;lt;/ref&amp;gt;.  Any [[MtGox#Transfers_to_Other_Customers|account-to-account transfers]] made also count toward this limit as well.&lt;br /&gt;
&lt;br /&gt;
Requests for higher withdrawal limits may be submitted by email&lt;br /&gt;
* For higher limits for withdrawal of USD funds, email: aml@mtgox.com&lt;br /&gt;
* For higher limits for withdrawal of BTC funds, email: btcupd@mtgox.com&lt;br /&gt;
&lt;br /&gt;
See the [[MtGox#AML|AML]] section regarding verification levels for AML purposes.&lt;br /&gt;
&lt;br /&gt;
===Dwolla===&lt;br /&gt;
&lt;br /&gt;
[[Dwolla]] is among the fastest and least expensive methods for withdrawing USD funds from a Mt. Gox account. The transaction fee to do so is just $0.25.&lt;br /&gt;
[[Dwolla]] withdrawals are processed every hour during business hours (Japan time) and every 12 hours on weekends.&lt;br /&gt;
&lt;br /&gt;
As of 25 May 2012, MtGox requires account holders to be &amp;quot;verified (level 1) - &#039;see below&#039;&amp;quot; to withdraw via Dwolla. &amp;lt;ref&amp;gt;https://support.mtgox.com/entries/21503347-new-aml-policy-for-all-dwolla-users&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The status of the withdrawal request will show one of the following status codes:&lt;br /&gt;
&lt;br /&gt;
* Preparing: System is running checks to see if the transfer can be executed.&lt;br /&gt;
* Confirmed: Transfer can be executed and is pending in queue.&lt;br /&gt;
* Todo: Transfer is near the top of the queue and will be executed soon.&lt;br /&gt;
* Processed: Transfer has been processed.&lt;br /&gt;
&lt;br /&gt;
===BTC===&lt;br /&gt;
&lt;br /&gt;
Bitcoins may be withdrawn at no charge.&lt;br /&gt;
&lt;br /&gt;
A [[green address]] option is available though this type of transaction could experience a delay if the exchange&#039;s wallet funding level for green address transactions is insufficient.  The withdrawal form also offers an &amp;quot;open transaction&amp;quot; option which forces the transaction to go through the blockchain.  If the recipient of a BTC withdrawal happens to also be from Mt. Gox&#039;s [[EWallet]], then that transfer would occur instantly and the transaction would not be broadcast to the Bitcoin network.  This &amp;quot;open transaction&amp;quot; option forces a withdrawal to be broadcast to the Bitcoin network.&lt;br /&gt;
&lt;br /&gt;
====Redeemable Code====&lt;br /&gt;
&lt;br /&gt;
Bitcoins to another Mt. Gox account may be sent by Mt. Gox [[redeemable code]].&lt;br /&gt;
&lt;br /&gt;
===Redeemable Code (Currency)===&lt;br /&gt;
&lt;br /&gt;
Funds may be withdrawn by sending a Mt. Gox redeemable code (voucher) to another party.&lt;br /&gt;
&lt;br /&gt;
The denominated of the code will be for the currency of the account&#039;s wallet that is active when the withdrawal request is inititiated (e.g., MTGUSD, MTGEUR, MTGAUD, MTGCAD, etc.)&lt;br /&gt;
&lt;br /&gt;
Following are some of the services which accept a Mt. Gox redeemable code.&lt;br /&gt;
&lt;br /&gt;
====AurumXChange USD, EUR and CAD====&lt;br /&gt;
&lt;br /&gt;
Funds sent to [[AurumXChange Company]] can then be wired to a USD, EUR or CAD bank account or they can be converted to another digital currency, such as Liberty Reserve.&lt;br /&gt;
&lt;br /&gt;
====BitInstant====&lt;br /&gt;
&lt;br /&gt;
USD funds sent to to [[BitInstant]] can then be transferred further through their service.&lt;br /&gt;
&lt;br /&gt;
===Direct Deposit===&lt;br /&gt;
====U.S.====&lt;br /&gt;
&lt;br /&gt;
There is currently no option for withdrawing funds through a direct deposit bank transaction.  Funds withdrawn to Dwolla may then, in turn, be withdrawn with bank funds deposited as an ACH transaction.&lt;br /&gt;
&lt;br /&gt;
====EU====&lt;br /&gt;
&lt;br /&gt;
You may withdraw any amount as a direct deposit to your bank.  There is a 2% fee on these withdrawals.  Contact the exchange by e-mail for this service.&lt;br /&gt;
&lt;br /&gt;
====Australia====&lt;br /&gt;
&lt;br /&gt;
A per-withdrawal fee (2,000 JPY) is subtracted and the remaining amount is sent via international wire in the chosen currency. If not AUD then an exchange fee of 2.5% will be charged.&lt;br /&gt;
&lt;br /&gt;
===International Wire===&lt;br /&gt;
&lt;br /&gt;
To any IBAN, SWIFT/BIC and ABA routable bank&amp;lt;ref&amp;gt;[http://www.facebook.com/MtGox/posts/343372689080478 Mt.Gox now offers international wire transfer to all US Banks]&amp;lt;/ref&amp;gt;.  Fee applies.&lt;br /&gt;
&lt;br /&gt;
==Transfers to Other Customers==&lt;br /&gt;
&lt;br /&gt;
Mt. Gox funds, either USD or BTC, may be sent to another Mt. Gox customer using a redeemable Mt. Gox code (voucher).&lt;br /&gt;
&lt;br /&gt;
==Customer Service==&lt;br /&gt;
&lt;br /&gt;
The preferred method for obtaining service is to place a request through the exchange&#039;s [https://mtgox.zendesk.com help desk].  Another method is to send e-mail with the request.&lt;br /&gt;
&lt;br /&gt;
==Wallet/Banking==&lt;br /&gt;
&lt;br /&gt;
An account at this exchange can be considered to be an [[eWallet]]. This service also offers [[:Category:ECommerce|eCommerce]] merchant [https://mtgox.com/merch/about payment services].&lt;br /&gt;
&lt;br /&gt;
==Security Center==&lt;br /&gt;
&lt;br /&gt;
The Security Center allows an account to be secured through the use of one or more One Time Password (OTP) solutions such as what YubiKey and Google Authenticator offer.  Features can be protected where the OTP must be provided for each action and are configured independently.&lt;br /&gt;
&lt;br /&gt;
For example, a typical configuration is to set OTP as being required for both withdrawals and security center changes but not for login.  With that configuration, the worst damage that can happen from a compromised account or session would be that bitcoins would be bought or sold (though they could also be bought and sold over and over until funds are depleted).&lt;br /&gt;
&lt;br /&gt;
* Login - The OTP must be provided for each login.&lt;br /&gt;
* Withdraw - The OTP must be provided for each withdrawal request.&lt;br /&gt;
* Security - The OTP must be provided during each configuration change to be performed.&lt;br /&gt;
&lt;br /&gt;
==AML==&lt;br /&gt;
&lt;br /&gt;
Varying degrees of verification will allow for greater per-day and per-month total amounts to be withdrawn&amp;lt;ref&amp;gt;[http://support.mtgox.com/entries/20919111-aml-account-statuses AML Account Statuses]&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Unverified (Level 0)===&lt;br /&gt;
&lt;br /&gt;
Designed for basic users, consumers and Bitcoin enthusiasts where 10,000 USD (monthly) is enough for most needs.&lt;br /&gt;
&lt;br /&gt;
===Verified (Level 1)===&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;verified&amp;quot; status is designed for active traders and/or small companies.&lt;br /&gt;
&lt;br /&gt;
===Trusted (Level 2)===&lt;br /&gt;
&lt;br /&gt;
The “trusted” status is designed for day traders, professionals, and companies.&lt;br /&gt;
&lt;br /&gt;
==API==&lt;br /&gt;
&lt;br /&gt;
Mt Gox offers an [[MtGox/API|API]] which can be used to automate operations.&lt;br /&gt;
&lt;br /&gt;
==Data Services==&lt;br /&gt;
&lt;br /&gt;
===Web===&lt;br /&gt;
* Bitstock live watcher for trades, depth, history [http://bitstock.info bitstock.info] (Websockets browser required)&lt;br /&gt;
* [[Bitcoin Charts]]&lt;br /&gt;
* Clark Moody&#039;s [[Real Time Bitcoin Market Data]] including Ticker, Order Book and Time Sales (Websockets browser support required)&lt;br /&gt;
* [[MtGox Live]] (Websockets browser support required)&lt;br /&gt;
* [[Bitcoin Arbitrage Opportunities]] (Websockets browser support required)&lt;br /&gt;
* [[Bitcoin Prices]] market rates in multiple currencies&lt;br /&gt;
&lt;br /&gt;
===Windows===&lt;br /&gt;
* [[Sierra Chart MtGox Bridge]] trading and charting tool.&lt;br /&gt;
* [[ToyTrader]] command line trading tool&lt;br /&gt;
&lt;br /&gt;
===Mac OS X===&lt;br /&gt;
* [[BitTicker]] for Mac OS X&lt;br /&gt;
* [http://sneak.datavibe.net/20110613/mtgoxwatcher MtGox Watcher] for Mac OS X&lt;br /&gt;
&lt;br /&gt;
===Mobile===&lt;br /&gt;
* [[BitcoinX]] mobile app with bid, ask and 24 hour history. For Android&lt;br /&gt;
* [[MtGox Live]] Bitcoin Trader with buy, sell, send, chart and depth for Android and iOS&lt;br /&gt;
&lt;br /&gt;
=== firefox addon ===&lt;br /&gt;
* [https://github.com/joric/mtgox-ticker] firefox ticker addon &lt;br /&gt;
&lt;br /&gt;
===Linux===&lt;br /&gt;
* [http://www.goxsh.info goxsh] command line ticker / depth chart&lt;br /&gt;
* [https://github.com/3M3RY/tulpenmanie tulpenmanie] graphical trading platform&lt;br /&gt;
&lt;br /&gt;
==E-Commerce==&lt;br /&gt;
&lt;br /&gt;
Online sellers can accept bitcoins for payment using the Mt. Gox&#039;s E-commerce Solution, which is an interface to the exchange&#039;s [[MtGox/API/HTTP/v1#Merchant_System|Merchant System API]].&lt;br /&gt;
&lt;br /&gt;
==History==&lt;br /&gt;
The exchange went online on July 18, 2010.&amp;lt;ref&amp;gt;[http://www.bitcoin.org/smf/index.php?topic=444.0 MtGox announcement on forum]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On October 10, 2010 the exchange switched from [[PayPal]] to Liberty Reserve as the main funding option as a result of this attack. Former PayPal customers still had the possibility to withdraw their USD using alternative methods.&lt;br /&gt;
&lt;br /&gt;
On March 6th, 2011 ownership of the exchange changed hands&amp;lt;ref&amp;gt;[http://www.bitcoin.org/smf/index.php?topic=4187.0 Mtgox is changing owners]&amp;lt;/ref&amp;gt;.  Tibanne publishes their [http://legal.tibanne.com/docs/20110801_company_certificate.pdf company certificate] from the Japanese government.&lt;br /&gt;
&lt;br /&gt;
On June 19, 2011 the service experienced a significant security breach&amp;lt;ref&amp;gt;[https://support.mtgox.com/entries/20224998-huge-bitcoin-sell-off-due-to-a-compromised-account-rollback Huge Bitcoin sell off due to a compromised account - rollback]&amp;lt;/ref&amp;gt;.  The incident caused a selloff down to BTC/USD of $0.01 due to fraudulent trading.  The site was disabled and all trading following the point that fraudulent trading began was rolled back. Complicating this breach was the release of a list of the exchange&#039;s accounts including username, email address and a password hash, which forced the exchange to implement an account recovery method for customers to regain control of their accounts.&lt;br /&gt;
&lt;br /&gt;
In July, 2011 it was observed that the exchange no longer allows new registrations to occur without having a valid e-mail address.&lt;br /&gt;
&lt;br /&gt;
On July 19, 2011 a press release announced that MtGox had acquired [[MtGox Live]].&amp;lt;ref&amp;gt;[https://mtgox.com/press_release_20110719.html World&#039;s Leading Bitcoin Exchange, Mt.Gox, acquires MtGoxLive.com]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Announced on March 6, 2012 was the Merchant Solution and API&amp;lt;ref&amp;gt;[https://mtgox.com/press_release_20120306.html Mt.Gox launches the definitive bitcoin checkout solution]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
* [[Buying bitcoins]]&lt;br /&gt;
* [[Selling bitcoins]]&lt;br /&gt;
* [[MtGox/API|API]]&lt;br /&gt;
&lt;br /&gt;
==External Links==&lt;br /&gt;
&lt;br /&gt;
* [https://mtgox.com MT. Gox exchange] website&lt;br /&gt;
* [https://mtgox.com/merch/about Mt. Gox Merchant Services]&lt;br /&gt;
* [https://mtgox.zendesk.com Customer Service Help Desk]&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Exchanges]]&lt;br /&gt;
[[Category:eWallets]]&lt;br /&gt;
[[Category:Shopping Cart Interfaces]]&lt;br /&gt;
[[ru:MtGox]]&lt;/div&gt;</summary>
		<author><name>Emery</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=MtGox/API&amp;diff=23728</id>
		<title>MtGox/API</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=MtGox/API&amp;diff=23728"/>
		<updated>2012-02-12T08:26:18Z</updated>

		<summary type="html">&lt;p&gt;Emery: Added python example&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The [[MtGox]] API provides methods to access information from the market, place orders, and more.&lt;br /&gt;
&lt;br /&gt;
Two APIs are currently available: the HTTP API (available by posting to mtgox.com/code/*) and the websocket API.&lt;br /&gt;
&lt;br /&gt;
==Number Formats==&lt;br /&gt;
&lt;br /&gt;
In the &amp;quot;old API&amp;quot;, currency- and amount-values (price, volume,...) were given as &#039;&#039;&#039;float&#039;&#039;&#039;. These values are likely being deprecated and replaced by fields of the same name with &amp;quot;_int&amp;quot; as suffix. These are &#039;&#039;&#039;fixed-decimal&#039;&#039;&#039;, so you have to move the decimal point yourself (divide). The exponent differs based on the kind of the value.&lt;br /&gt;
&lt;br /&gt;
In order to convert the &#039;&#039;&#039;int&#039;&#039;&#039; to a &#039;&#039;&#039;decimal&#039;&#039;&#039; you can...&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! kind of field !! ...divide by !! ...multiply by&lt;br /&gt;
|-&lt;br /&gt;
| BTC (volume, amount) || 1E8 (10,000,000) || 0.00000001&lt;br /&gt;
|-&lt;br /&gt;
| USD (price) || 1E5 (100,000) || 0.00001&lt;br /&gt;
|-&lt;br /&gt;
| JPY (price) || 1E3 (1,000) || 0.001&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Implementation advice: it&#039;s probably best to use &#039;&#039;&#039;int&#039;&#039;&#039; or &#039;&#039;&#039;Decimal&#039;&#039;&#039; (if your language/db offers such a type) in your clients. Using &#039;&#039;&#039;float&#039;&#039;&#039; will likely lead to nasty rounding problems.&lt;br /&gt;
&lt;br /&gt;
== Currency Symbols ==&lt;br /&gt;
List of the currency symbols available with the API:&lt;br /&gt;
&lt;br /&gt;
USD, AUD, CAD, CHF, CNY, DKK, EUR, GBP, HKD, JPY, NZD, PLN, RUB, SEK, SGD, THB&lt;br /&gt;
&lt;br /&gt;
== HTTP API ==&lt;br /&gt;
This API is available in &amp;lt;nowiki&amp;gt;https://mtgox.com/api/*&amp;lt;/nowiki&amp;gt;, and provides various informations. It also supports making an order, a withdraw, a deposit, etc.  There is also a [https://rubygems.org/gems/mtgox Ruby gem] and [[Finance::MtGox|Perl module]] for interacting with the HTTP API.&lt;br /&gt;
&lt;br /&gt;
=== Authentication ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Authentication is performed by signing each request using HMAC-SHA512. The request must contain an extra value &amp;quot;nonce&amp;quot; which must be an always incrementing numeric value.  A reference implementation is provided here:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
&lt;br /&gt;
function mtgox_query($path, array $req = array()) {&lt;br /&gt;
	// API settings&lt;br /&gt;
	$key = &#039;&#039;;&lt;br /&gt;
	$secret = &#039;&#039;;&lt;br /&gt;
&lt;br /&gt;
	// generate a nonce as microtime, with as-string handling to avoid problems with 32bits systems&lt;br /&gt;
	$mt = explode(&#039; &#039;, microtime());&lt;br /&gt;
	$req[&#039;nonce&#039;] = $mt[1].substr($mt[0], 2, 6);&lt;br /&gt;
&lt;br /&gt;
	// generate the POST data string&lt;br /&gt;
	$post_data = http_build_query($req, &#039;&#039;, &#039;&amp;amp;&#039;);&lt;br /&gt;
&lt;br /&gt;
	// generate the extra headers&lt;br /&gt;
	$headers = array(&lt;br /&gt;
		&#039;Rest-Key: &#039;.$key,&lt;br /&gt;
		&#039;Rest-Sign: &#039;.base64_encode(hash_hmac(&#039;sha512&#039;, $post_data, base64_decode($secret), true)),&lt;br /&gt;
	);&lt;br /&gt;
&lt;br /&gt;
	// our curl handle (initialize if required)&lt;br /&gt;
	static $ch = null;&lt;br /&gt;
	if (is_null($ch)) {&lt;br /&gt;
		$ch = curl_init();&lt;br /&gt;
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);&lt;br /&gt;
		curl_setopt($ch, CURLOPT_USERAGENT, &#039;Mozilla/4.0 (compatible; MtGox PHP client; &#039;.php_uname(&#039;s&#039;).&#039;; PHP/&#039;.phpversion().&#039;)&#039;);&lt;br /&gt;
	}&lt;br /&gt;
	curl_setopt($ch, CURLOPT_URL, &#039;https://mtgox.com/api/&#039;.$path);&lt;br /&gt;
	curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);&lt;br /&gt;
	curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);&lt;br /&gt;
&lt;br /&gt;
	// run the query&lt;br /&gt;
	$res = curl_exec($ch);&lt;br /&gt;
	if ($res === false) throw new Exception(&#039;Could not get reply: &#039;.curl_error($ch));&lt;br /&gt;
	$dec = json_decode($res, true);&lt;br /&gt;
	if (!$dec) throw new Exception(&#039;Invalid data received, please make sure connection is working and requested API exists&#039;);&lt;br /&gt;
	return $dec;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// example 1: get infos about the account, plus the list of rights we have access to&lt;br /&gt;
var_dump(mtgox_query(&#039;0/info.php&#039;));&lt;br /&gt;
&lt;br /&gt;
// old api (get funds)&lt;br /&gt;
var_dump(mtgox_query(&#039;0/getFunds.php&#039;));&lt;br /&gt;
&lt;br /&gt;
// trade example&lt;br /&gt;
// var_dump(mtgox_query(&#039;0/buyBTC.php&#039;, array(&#039;amount&#039; =&amp;gt; 1, &#039;price&#039; =&amp;gt; 15)));&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Python version here: https://bitcointalk.org/index.php?topic=49789.msg592388#msg592388&lt;br /&gt;
&lt;br /&gt;
=== Cache ===&lt;br /&gt;
&lt;br /&gt;
All of the API methods below have cached results, ticker, depth . . . have a 10 seconds cache .&lt;br /&gt;
No need to poll more often, you wont have more results, you could just be blocked by the prolexic anti ddos features.&lt;br /&gt;
&lt;br /&gt;
=== Methods API version 0===&lt;br /&gt;
&lt;br /&gt;
==== 0/data/getTrades.php ====&lt;br /&gt;
This allows retrieving all trades which happened in the last 24 hours. The returned data is cached and may not reflect latest activity.&lt;br /&gt;
&lt;br /&gt;
Parameters:&lt;br /&gt;
* since: Passing a tid in &amp;quot;since&amp;quot; allows retrieving all trades since that trade. The passed id is may not exist. Ie. to get all trades from the very beginning one would just call https://mtgox.com/code/data/getTrades.php?since=0 . since returns only 100 trades, and you can call the method again by passing the latest trade you have imported in since.&lt;br /&gt;
&lt;br /&gt;
* data is returned in standard json format like :&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
[&lt;br /&gt;
{&amp;quot;date&amp;quot;:1279408157,&lt;br /&gt;
&amp;quot;price&amp;quot;:&amp;quot;0.04951&amp;quot;,&lt;br /&gt;
&amp;quot;amount&amp;quot;:&amp;quot;20&amp;quot;,&lt;br /&gt;
&amp;quot;price_int&amp;quot;:&amp;quot;4951&amp;quot;,&lt;br /&gt;
&amp;quot;amount_int&amp;quot;:&amp;quot;2000000000&amp;quot;,&lt;br /&gt;
&amp;quot;tid&amp;quot;:&amp;quot;1&amp;quot;,&lt;br /&gt;
&amp;quot;price_currency&amp;quot;:&amp;quot;USD&amp;quot;,&lt;br /&gt;
&amp;quot;item&amp;quot;:&amp;quot;BTC&amp;quot;,&lt;br /&gt;
&amp;quot;trade_type&amp;quot;:&amp;quot;&amp;quot;&lt;br /&gt;
&amp;quot;primary&amp;quot;:&amp;quot;Y&amp;quot;&lt;br /&gt;
},&lt;br /&gt;
{&amp;quot;date&amp;quot;:1279424586,&amp;quot;price&amp;quot;:&amp;quot;0.05941&amp;quot;,&amp;quot;amount&amp;quot;:&amp;quot;50.01&amp;quot;,&amp;quot;price_int&amp;quot;:&amp;quot;5941&amp;quot;,&amp;quot;amount_int&amp;quot;:&amp;quot;5001000000&amp;quot;,&amp;quot;tid&amp;quot;:&amp;quot;2&amp;quot;,&amp;quot;price_currency&amp;quot;:&amp;quot;USD&amp;quot;,&amp;quot;item&amp;quot;:&amp;quot;BTC&amp;quot;,&amp;quot;trade_type&amp;quot;:&amp;quot;&amp;quot;}]&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== 0/getDepth.php ====&lt;br /&gt;
Get the current Market depth&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/0/data/getDepth.php?Currency=PLN&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/0/data/getDepth.php?Currency=AUD&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/0/data/getDepth.php?Currency=USD&lt;br /&gt;
&lt;br /&gt;
==== 0/getFunds.php ====&lt;br /&gt;
Get your current balance&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/0/getFunds.php&lt;br /&gt;
&lt;br /&gt;
getfunds is now deprecated since multi currency, please use info.php&lt;br /&gt;
&lt;br /&gt;
==== 0/buyBTC.php ====&lt;br /&gt;
Place an order to Buy BTC&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/0/buyBTC.php&lt;br /&gt;
&lt;br /&gt;
POST data: amount=#&amp;amp;price=#&amp;amp;Currency=PLN&lt;br /&gt;
&lt;br /&gt;
returns a list of your open orders&lt;br /&gt;
&lt;br /&gt;
you can omit the price to do a market order&lt;br /&gt;
&lt;br /&gt;
==== 0/sellBTC.php ====&lt;br /&gt;
Place an order to Sell BTC&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/0/sellBTC.php&lt;br /&gt;
&lt;br /&gt;
POST data: &amp;amp;amount=#&amp;amp;price=#&amp;amp;Currency=PLN &lt;br /&gt;
&lt;br /&gt;
returns a list of your open orders&lt;br /&gt;
&lt;br /&gt;
you can omit the price to do a market order&lt;br /&gt;
&lt;br /&gt;
==== 0/getOrders.php ====&lt;br /&gt;
Fetch a list of your open Orders&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/0/getOrders.php&lt;br /&gt;
&lt;br /&gt;
oid: Order ID&lt;br /&gt;
&lt;br /&gt;
type: 1 for sell order or 2 for buy order&lt;br /&gt;
&lt;br /&gt;
status: 1 for active, 2 for not enough funds&lt;br /&gt;
&lt;br /&gt;
==== 0/cancelOrder.php ====&lt;br /&gt;
Cancel an order&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/0/cancelOrder.php&lt;br /&gt;
&lt;br /&gt;
POST data: oid=#&amp;amp;type=#&lt;br /&gt;
&lt;br /&gt;
oid: Order ID&lt;br /&gt;
&lt;br /&gt;
type: 1 for sell order or 2 for buy order&lt;br /&gt;
&lt;br /&gt;
==== 0/redeemCode.php ====&lt;br /&gt;
Used to redeem a mtgox coupon code&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/0/redeemCode.php&lt;br /&gt;
&lt;br /&gt;
* call with a post parameter &amp;quot;code&amp;quot; containing the code to redeem&lt;br /&gt;
&lt;br /&gt;
* it will return an array with amount (float amount value of code), currency (3 letters, BTC or USD), reference (the transaction id), and status&lt;br /&gt;
&lt;br /&gt;
==== 0/withdraw.php ====&lt;br /&gt;
withdraw / Send BTC&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/0/withdraw.php&lt;br /&gt;
&lt;br /&gt;
POST data: group1=BTC&amp;amp;btca=bitcoin_address_to_send_to&amp;amp;amount=#&lt;br /&gt;
&lt;br /&gt;
* pass btca parameter to withdraw to a btc adress&lt;br /&gt;
&lt;br /&gt;
* pass group1 for a coupon : BTC2CODE or USD2CODE&lt;br /&gt;
&lt;br /&gt;
* pass group1=DWUSD&amp;amp;dwaccount=XXX-XXX-XXXX (no btca=xxxxxxx) for a dwolla withdraw&lt;br /&gt;
&lt;br /&gt;
* pass green=1 to use the new greenaddress feature ( see [[GreenAddress]] )&lt;br /&gt;
* return code and status if successful&lt;br /&gt;
&lt;br /&gt;
 To make a withdraw in another Currency , use group1=USD2CODE and add a Currency parameter ( example Currency=EUR to get a mtgox EUR coupon )&lt;br /&gt;
&lt;br /&gt;
==== 0/btcAddress.php ====&lt;br /&gt;
get a bitcoin deposit adress for your account &lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/0/btcAddress.php&lt;br /&gt;
&lt;br /&gt;
* pass POST data &amp;quot;description&amp;quot; to add a description that will appear in your history when this BTC address receive a deposit&lt;br /&gt;
&lt;br /&gt;
*pass POST data &amp;quot;ipn&amp;quot; to add an url that mtgox will ping whenever this new address receive funds&lt;br /&gt;
description ( see above ) is also required for ipn to work&lt;br /&gt;
&lt;br /&gt;
* returns a bitcoin deposit address&lt;br /&gt;
&lt;br /&gt;
==== 0/history_[CUR].csv ====&lt;br /&gt;
&lt;br /&gt;
Allows downloading your activity history for a given currency (BTC or USD for now).&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/0/history_BTC.csv&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/0/history_USD.csv&lt;br /&gt;
&lt;br /&gt;
encoding is utf-8&lt;br /&gt;
&lt;br /&gt;
==== 0/info.php ====&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/0/info.php&lt;br /&gt;
&lt;br /&gt;
returns info about your account, funds, fees, API privileges, withdraw limits . . . &lt;br /&gt;
&lt;br /&gt;
==== 0/ticker ====&lt;br /&gt;
&lt;br /&gt;
http://mtgox.com/api/0/data/ticker.php&lt;br /&gt;
&lt;br /&gt;
returns the current ticker :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{&amp;quot;ticker&amp;quot;:&lt;br /&gt;
 {&lt;br /&gt;
 &amp;quot;high&amp;quot;:5.70653,&lt;br /&gt;
 &amp;quot;low&amp;quot;:5.4145,&lt;br /&gt;
 &amp;quot;avg&amp;quot;:5.561388723,&lt;br /&gt;
 &amp;quot;vwap&amp;quot;:5.610932845,&lt;br /&gt;
 &amp;quot;vol&amp;quot;:55698,&lt;br /&gt;
 &amp;quot;last&amp;quot;:5.56915,&lt;br /&gt;
 &amp;quot;buy&amp;quot;:5.51326,&lt;br /&gt;
 &amp;quot;sell&amp;quot;:5.5672&lt;br /&gt;
 }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 the time frame for high, low, vol, avg, vwap . . . is sliding 24 hours&lt;br /&gt;
&lt;br /&gt;
what is vwap ? &lt;br /&gt;
&lt;br /&gt;
please see http://en.wikipedia.org/wiki/VWAP&lt;br /&gt;
&lt;br /&gt;
=== API version 0 examples ===&lt;br /&gt;
&lt;br /&gt;
==== all api shell type CLI ====&lt;br /&gt;
&lt;br /&gt;
python : http://www.goxsh.info/&lt;br /&gt;
&lt;br /&gt;
perl : http://pastebin.com/vEpgw5nW&lt;br /&gt;
&lt;br /&gt;
==== other ====&lt;br /&gt;
&lt;br /&gt;
https : http://stackoverflow.com/questions/7046370/https-request-with-boost-asio-and-openssl&lt;br /&gt;
&lt;br /&gt;
https://github.com/sje397/mtgox-plasmoid&lt;br /&gt;
&lt;br /&gt;
module perl : http://search.cpan.org/~mndrix/Finance-MtGox-0.02/&lt;br /&gt;
&lt;br /&gt;
==== gather data ====&lt;br /&gt;
&lt;br /&gt;
https://github.com/Lexiks/MyBitBoard&lt;br /&gt;
&lt;br /&gt;
==== gettrade ====&lt;br /&gt;
&lt;br /&gt;
bash : https://bitcointalk.org/index.php?topic=39402.0&lt;br /&gt;
&lt;br /&gt;
perl : http://pastebin.com/raw.php?i=pmhMXZJu&lt;br /&gt;
&lt;br /&gt;
==== ticker ====&lt;br /&gt;
&lt;br /&gt;
http://pastebin.com/pd0ZR4WY&lt;br /&gt;
&lt;br /&gt;
=== Methods API version 1===&lt;br /&gt;
&lt;br /&gt;
==== Multi Currency Ticker ====&lt;br /&gt;
&lt;br /&gt;
 https://mtgox.com/api/1/BTCUSD/public/ticker&lt;br /&gt;
 https://mtgox.com/api/1/BTCEUR/public/ticker&lt;br /&gt;
&lt;br /&gt;
 returns the current ticker for the selected currency :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
&amp;quot;result&amp;quot;:&amp;quot;success&amp;quot;,&lt;br /&gt;
&amp;quot;return&amp;quot;:&lt;br /&gt;
 {&lt;br /&gt;
 &amp;quot;high&amp;quot;: {&amp;quot;value&amp;quot;:&amp;quot;5.70653&amp;quot;,&amp;quot;value_int&amp;quot;:&amp;quot;570653&amp;quot;,&amp;quot;display&amp;quot;:&amp;quot;$5.70653&amp;quot;,&amp;quot;currency&amp;quot;:&amp;quot;USD&amp;quot;},&lt;br /&gt;
 &amp;quot;low&amp;quot;: {&amp;quot;value&amp;quot;:&amp;quot;5.4145&amp;quot;,&amp;quot;value_int&amp;quot;:&amp;quot;541450&amp;quot;,&amp;quot;display&amp;quot;:&amp;quot;$5.41450&amp;quot;,&amp;quot;currency&amp;quot;:&amp;quot;USD&amp;quot;},&lt;br /&gt;
 &amp;quot;avg&amp;quot;: {&amp;quot;value&amp;quot;:&amp;quot;5.561119626&amp;quot;,&amp;quot;value_int&amp;quot;:&amp;quot;556112&amp;quot;,&amp;quot;display&amp;quot;:&amp;quot;$5.56112&amp;quot;,&amp;quot;currency&amp;quot;:&amp;quot;USD&amp;quot;},&lt;br /&gt;
 &amp;quot;vwap&amp;quot;: {&amp;quot;value&amp;quot;:&amp;quot;5.610480461&amp;quot;,&amp;quot;value_int&amp;quot;:&amp;quot;561048&amp;quot;,&amp;quot;display&amp;quot;:&amp;quot;$5.61048&amp;quot;,&amp;quot;currency&amp;quot;:&amp;quot;USD&amp;quot;},&lt;br /&gt;
 &amp;quot;vol&amp;quot;:&lt;br /&gt;
 {&lt;br /&gt;
  &amp;quot;value&amp;quot;:&amp;quot;55829.58960346&amp;quot;,&lt;br /&gt;
  &amp;quot;value_int&amp;quot;:&amp;quot;5582958960346&amp;quot;,&lt;br /&gt;
  &amp;quot;display&amp;quot;:&amp;quot;55,829.58960346\u00a0BTC&amp;quot;,&lt;br /&gt;
  &amp;quot;currency&amp;quot;:&amp;quot;BTC&amp;quot;&lt;br /&gt;
 },&lt;br /&gt;
 &amp;quot;last_local&amp;quot;:{&amp;quot;value&amp;quot;:&amp;quot;5.5594&amp;quot;,&amp;quot;value_int&amp;quot;:&amp;quot;555940&amp;quot;,&amp;quot;display&amp;quot;:&amp;quot;$5.55940&amp;quot;,&amp;quot;currency&amp;quot;:&amp;quot;USD&amp;quot;},&lt;br /&gt;
 &amp;quot;last_orig&amp;quot;:{&amp;quot;value&amp;quot;:&amp;quot;5.5594&amp;quot;,&amp;quot;value_int&amp;quot;:&amp;quot;555940&amp;quot;,&amp;quot;display&amp;quot;:&amp;quot;$5.55940&amp;quot;,&amp;quot;currency&amp;quot;:&amp;quot;USD&amp;quot;},&lt;br /&gt;
 &amp;quot;last&amp;quot;:{&amp;quot;value&amp;quot;:&amp;quot;5.5594&amp;quot;,&amp;quot;value_int&amp;quot;:&amp;quot;555940&amp;quot;,&amp;quot;display&amp;quot;:&amp;quot;$5.55940&amp;quot;,&amp;quot;currency&amp;quot;:&amp;quot;USD&amp;quot;},&lt;br /&gt;
 &amp;quot;buy&amp;quot;:{&amp;quot;value&amp;quot;:&amp;quot;5.53587&amp;quot;,&amp;quot;value_int&amp;quot;:&amp;quot;553587&amp;quot;,&amp;quot;display&amp;quot;:&amp;quot;$5.53587&amp;quot;,&amp;quot;currency&amp;quot;:&amp;quot;USD&amp;quot;},&lt;br /&gt;
 &amp;quot;sell&amp;quot;:{&amp;quot;value&amp;quot;:&amp;quot;5.56031&amp;quot;,&amp;quot;value_int&amp;quot;:&amp;quot;556031&amp;quot;,&amp;quot;display&amp;quot;:&amp;quot;$5.56031&amp;quot;,&amp;quot;currency&amp;quot;:&amp;quot;USD&amp;quot;}&lt;br /&gt;
 }&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
note : last_local include only the last trade in the selected currency, last_orig include data of the original last trade ( currency,price in currency . . . ),last can be a conversion of the last trde in another currency&lt;br /&gt;
&lt;br /&gt;
==== Multi Currency depth ====&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/1/BTCPLN/public/depth?raw&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/1/BTCAUD/public/depth?raw&lt;br /&gt;
&lt;br /&gt;
==== Multi currency trades ====&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/1/BTCPLN/public/trades?raw&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/1/BTCAUD/public/trades?raw&lt;br /&gt;
&lt;br /&gt;
to get only the trades since a given trade id, you can add the parameter since=&amp;lt;trade_id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/1/BTCUSD/public/trades?since=0&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/1/BTCEUR/public/trades?since=1316312781670700&lt;br /&gt;
&lt;br /&gt;
For multi currency,also returns the primary value,&amp;quot;Y&amp;quot; or &amp;quot;N&amp;quot;, the primary currency is always the buyers currency&lt;br /&gt;
&lt;br /&gt;
A trade can appear in more than one currency, to ignore duplicates, use only the trades having primary =Y&lt;br /&gt;
&lt;br /&gt;
example of returned data : &lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
{&amp;quot;date&amp;quot;:1316312781,&lt;br /&gt;
&amp;quot;price&amp;quot;:&amp;quot;3.5599&amp;quot;,&lt;br /&gt;
&amp;quot;amount&amp;quot;:&amp;quot;3.6900096&amp;quot;,&lt;br /&gt;
&amp;quot;price_int&amp;quot;:&amp;quot;355990&amp;quot;,&lt;br /&gt;
&amp;quot;amount_int&amp;quot;:&amp;quot;369000960&amp;quot;,&lt;br /&gt;
&amp;quot;tid&amp;quot;:&amp;quot;1316312781670700&amp;quot;,&lt;br /&gt;
&amp;quot;price_currency&amp;quot;:&amp;quot;EUR&amp;quot;,&lt;br /&gt;
&amp;quot;item&amp;quot;:&amp;quot;BTC&amp;quot;,&lt;br /&gt;
&amp;quot;trade_type&amp;quot;:&amp;quot;bid&amp;quot;,&lt;br /&gt;
&amp;quot;primary&amp;quot;:&amp;quot;Y&amp;quot;,&lt;br /&gt;
&amp;quot;properties&amp;quot;:&amp;quot;limit,mixed_currency&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Cancelled Trades ====&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/1/BTCUSD/public/cancelledtrades&lt;br /&gt;
&lt;br /&gt;
returns a list of all the cancelled trades this last month, list of trade ids in json format .&lt;br /&gt;
&lt;br /&gt;
==== Full Depth ====&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/1/BTCUSD/public/fulldepth&lt;br /&gt;
&lt;br /&gt;
returns full depth&lt;br /&gt;
&lt;br /&gt;
==== Private info ====&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/1/generic/private/info&lt;br /&gt;
&lt;br /&gt;
returns information about your account, funds, fees, API privileges, withdraw limits . . .&lt;br /&gt;
&lt;br /&gt;
==== Your open orders ====&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/1/generic/private/orders&lt;br /&gt;
 &lt;br /&gt;
returns information about your current open orders&lt;br /&gt;
&lt;br /&gt;
==== Submit an order ====&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/1/BTCUSD/private/order/add&lt;br /&gt;
&lt;br /&gt;
parameters: &lt;br /&gt;
* type (bid|ask)&lt;br /&gt;
* amount_int &amp;lt;amount as int&amp;gt;&lt;br /&gt;
* price_int &amp;lt;price as int&amp;gt; (can be omitted to place market order)&lt;br /&gt;
 &lt;br /&gt;
submits an order and returns info about success or error&lt;br /&gt;
&lt;br /&gt;
==== Currency information ====&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/1/generic/public/currency&lt;br /&gt;
&lt;br /&gt;
pass parameter ?currency=&amp;lt;currency_symbol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
returns information about a currency ( number of decimals . . . )&lt;br /&gt;
&lt;br /&gt;
==== HOTP key ====&lt;br /&gt;
&lt;br /&gt;
https://mtgox.com/api/1/generic/public/hotp_gen&lt;br /&gt;
&lt;br /&gt;
used to generate a new HOTP key ( useful for developpers )&lt;br /&gt;
&lt;br /&gt;
== Streaming API ==&lt;br /&gt;
Real time streaming data may be obtained over the streaming API, implemented in [http://socket.io/ Socket.io]&amp;lt;ref&amp;gt;Socket.io forum announcement by MagicalTux: https://bitcointalk.org/index.php?topic=14412.msg613271#msg613271&amp;lt;/ref&amp;gt;. The original WebSocket API&amp;lt;ref&amp;gt;Original WebSocket thread: https://bitcointalk.org/index.php?topic=5855.msg86219&amp;lt;/ref&amp;gt; is deprecated as of 11-Nov-2011.&lt;br /&gt;
&lt;br /&gt;
===Connecting===&lt;br /&gt;
The following JavaScript code establishes a connection in the browser:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;script src=&amp;quot;https://socketio.mtgox.com/socket.io/socket.io.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;script&amp;gt;&lt;br /&gt;
    var conn = io.connect(&#039;https://socketio.mtgox.com/mtgox&#039;);&lt;br /&gt;
    conn.on(&#039;message&#039;, function(data) {&lt;br /&gt;
        // Handle incoming data object.&lt;br /&gt;
    });&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The session ID expires after 30 seconds&lt;br /&gt;
&lt;br /&gt;
===Handling Events===&lt;br /&gt;
Socket.io exposes a simple interface for handling events. Handling &amp;lt;tt&amp;gt;message&amp;lt;/tt&amp;gt; events is shown above, but there are other events that may be handled:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
conn.on(&#039;connect&#039;,    onConnect);&lt;br /&gt;
conn.on(&#039;disconnect&#039;, onDisconnect);&lt;br /&gt;
conn.on(&#039;error&#039;,      onError);&lt;br /&gt;
conn.on(&#039;message&#039;,    onMessage);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Incoming Data===&lt;br /&gt;
Data arrives as a full object instead of as JSON text, eliminating the need to parse the data in the JavaScript handler. Messages that come across the socket to trigger the &amp;lt;tt&amp;gt;message&amp;lt;/tt&amp;gt; event will contain the following minimum components:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;op&amp;quot;:&amp;lt;OPERATION_TYPE&amp;gt;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;tt&amp;gt;OPERATION_TYPE&amp;lt;/tt&amp;gt; field may take these values:&lt;br /&gt;
&lt;br /&gt;
:{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! OPERATION_TYPE !! Description&lt;br /&gt;
|-&lt;br /&gt;
| subscribe || Notification that the user is subscribed to a channel&lt;br /&gt;
|-&lt;br /&gt;
| unsubscribe || Messages will no longer arrive over the channel&lt;br /&gt;
|-&lt;br /&gt;
| remark || A server message, usually a warning&lt;br /&gt;
|-&lt;br /&gt;
| private || The operation for depth, trade, and ticker messages&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===op:subscribe and op:unsubscribe===&lt;br /&gt;
The subscribe and unsubscribe message data are very simple, containing the channel and the operation.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;channel&amp;quot;:&amp;lt;CHANNEL_ID&amp;gt;,&lt;br /&gt;
  &amp;quot;op&amp;quot;:&amp;quot;subscribe&amp;quot; OR &amp;quot;unsubscribe&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some of the channels are:&lt;br /&gt;
&lt;br /&gt;
:{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Channel ID !! Description&lt;br /&gt;
|-&lt;br /&gt;
| dbf1dee9-4f2e-4a08-8cb7-748919a71b21 || Trades&lt;br /&gt;
|-&lt;br /&gt;
| d5f06780-30a8-4a48-a2f8-7ed181b4a13f || Ticker&lt;br /&gt;
|-&lt;br /&gt;
| 24e67e0d-1cad-4cc0-9e7a-f8523ef460fe || Depth&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===op:remark===&lt;br /&gt;
The remark operation contains message and success fields.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;op&amp;quot;:&amp;quot;remark&amp;quot;,&lt;br /&gt;
  &amp;quot;message&amp;quot;:&amp;lt;MESSAGE FROM THE SERVER&amp;gt;,&lt;br /&gt;
  &amp;quot;success&amp;quot;:&amp;lt;boolean&amp;gt;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===op:private===&lt;br /&gt;
The payloads of the &amp;lt;tt&amp;gt;op:private&amp;lt;/tt&amp;gt; messages contain the real time market information. Each message follows this form:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;channel&amp;quot;:&amp;lt;CHANNEL_ID&amp;gt;,&lt;br /&gt;
  &amp;quot;op&amp;quot;:&amp;quot;private&amp;quot;,&lt;br /&gt;
  &amp;quot;private&amp;quot;:&amp;lt;MESSAGE_TYPE&amp;gt;,&lt;br /&gt;
  &amp;lt;MESSAGE_TYPE&amp;gt;:&amp;lt;DATA_PAYLOAD&amp;gt;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;tt&amp;gt;MESSAGE_TYPE&amp;lt;/tt&amp;gt; field may take the values:&lt;br /&gt;
&lt;br /&gt;
:{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! MESSAGE_TYPE !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ticker || Ticker messages&lt;br /&gt;
|-&lt;br /&gt;
| trade || Trades, as they occur&lt;br /&gt;
|-&lt;br /&gt;
| depth || Orders placed or removed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Ticker====&lt;br /&gt;
Ticker messages contain the current inside Bid and Ask as well as daily highs, lows, and volume. The fields contained in the ticker match those defined in the version 1.0 API above. All fields contain &amp;lt;tt&amp;gt;currency&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;display&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;value&amp;lt;/tt&amp;gt;, and &amp;lt;tt&amp;gt;value_int&amp;lt;/tt&amp;gt; entries.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;channel&amp;quot;:&amp;quot;d5f06780-30a8-4a48-a2f8-7ed181b4a13f&amp;quot;,&lt;br /&gt;
  &amp;quot;op&amp;quot;:&amp;quot;private&amp;quot;,&lt;br /&gt;
  &amp;quot;origin&amp;quot;:&amp;quot;broadcast&amp;quot;,&lt;br /&gt;
  &amp;quot;private&amp;quot;:&amp;quot;ticker&amp;quot;,&lt;br /&gt;
  &amp;quot;ticker&amp;quot;:{&lt;br /&gt;
    &amp;quot;avg&amp;quot;:{&lt;br /&gt;
      &amp;quot;currency&amp;quot;:&amp;quot;USD&amp;quot;,&lt;br /&gt;
      &amp;quot;display&amp;quot;:&amp;quot;$2.26847&amp;quot;,&lt;br /&gt;
      &amp;quot;value&amp;quot;:&amp;quot;2.26847&amp;quot;,&lt;br /&gt;
      &amp;quot;value_int&amp;quot;:&amp;quot;226847&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;buy&amp;quot;:{...},&lt;br /&gt;
    &amp;quot;high&amp;quot;:{...},&lt;br /&gt;
    &amp;quot;last&amp;quot;:{..},&lt;br /&gt;
    &amp;quot;last_local&amp;quot;:{...},&lt;br /&gt;
    &amp;quot;last_orig&amp;quot;:{...},&lt;br /&gt;
    &amp;quot;low&amp;quot;:{...},&lt;br /&gt;
    &amp;quot;sell&amp;quot;:{...},&lt;br /&gt;
    &amp;quot;vol&amp;quot;:{&lt;br /&gt;
      &amp;quot;currency&amp;quot;:&amp;quot;BTC&amp;quot;,&lt;br /&gt;
      &amp;quot;display&amp;quot;:&amp;quot;118,696.02104208&amp;quot;,&lt;br /&gt;
      &amp;quot;value&amp;quot;:&amp;quot;118696.02104208&amp;quot;,&lt;br /&gt;
      &amp;quot;value_int&amp;quot;:&amp;quot;11869602104208&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    &amp;quot;vwap&amp;quot;:{...}&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Trade====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;{&lt;br /&gt;
  &amp;quot;channel&amp;quot;:&amp;quot;dbf1dee9-4f2e-4a08-8cb7-748919a71b21&amp;quot;,&lt;br /&gt;
  &amp;quot;op&amp;quot;:&amp;quot;private&amp;quot;,&lt;br /&gt;
  &amp;quot;origin&amp;quot;:&amp;quot;broadcast&amp;quot;,&lt;br /&gt;
  &amp;quot;private&amp;quot;:&amp;quot;trade&amp;quot;,&lt;br /&gt;
  &amp;quot;trade&amp;quot;:{&lt;br /&gt;
    &amp;quot;amount&amp;quot;:2.71,&lt;br /&gt;
    &amp;quot;amount_int&amp;quot;:&amp;quot;271000000&amp;quot;,&lt;br /&gt;
    &amp;quot;date&amp;quot;:1310279340,&lt;br /&gt;
    &amp;quot;item&amp;quot;:&amp;quot;BTC&amp;quot;,&lt;br /&gt;
    &amp;quot;price&amp;quot;:14.43,&lt;br /&gt;
    &amp;quot;price_currency&amp;quot;:&amp;quot;USD&amp;quot;,&lt;br /&gt;
    &amp;quot;price_int&amp;quot;:&amp;quot;1443000&amp;quot;,&lt;br /&gt;
    &amp;quot;primary&amp;quot;:&amp;quot;Y&amp;quot;,&lt;br /&gt;
    &amp;quot;properties&amp;quot;:&amp;quot;limit, mixed_currency&amp;quot;,&lt;br /&gt;
    &amp;quot;tid&amp;quot;:&amp;quot;1310279340877902&amp;quot;,&lt;br /&gt;
    &amp;quot;trade_type&amp;quot;:&amp;quot;bid&amp;quot;,&lt;br /&gt;
    &amp;quot;type&amp;quot;:&amp;quot;trade&amp;quot;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;trade&#039;&#039;&#039; contains the following:&lt;br /&gt;
&lt;br /&gt;
:{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name !! Value&lt;br /&gt;
|-&lt;br /&gt;
| amount || the traded amount in item (BTC), float, deprecated&lt;br /&gt;
|-&lt;br /&gt;
| amount_int || the traded amount * 1E8&lt;br /&gt;
|-&lt;br /&gt;
| date || unix timestamp of trade&lt;br /&gt;
|-&lt;br /&gt;
| item || What was this trade about&lt;br /&gt;
|-&lt;br /&gt;
| price || price per unit, float, deprecated&lt;br /&gt;
|-&lt;br /&gt;
| price_int || price in smallest unit as integer (5 decimals of USD, 3 in case of JPY)&lt;br /&gt;
|-&lt;br /&gt;
| price_currency || currency in which trade was completed&lt;br /&gt;
|-&lt;br /&gt;
| tid || Trade id (big integer, which is in fact trade timestamp in microseconds)&lt;br /&gt;
|-&lt;br /&gt;
| trade_type || Did this trade result from the execution of a bid or a ask?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Depth====&lt;br /&gt;
&lt;br /&gt;
Changes to the market depth data are broadcast so an up-to-date market depth can be kept by clients.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;{&lt;br /&gt;
  &amp;quot;channel&amp;quot;:&amp;quot;24e67e0d-1cad-4cc0-9e7a-f8523ef460fe&amp;quot;,&lt;br /&gt;
  &amp;quot;depth&amp;quot;:{&lt;br /&gt;
    &amp;quot;currency&amp;quot;:&amp;quot;USD&amp;quot;,&lt;br /&gt;
    &amp;quot;item&amp;quot;:&amp;quot;BTC&amp;quot;,&lt;br /&gt;
    &amp;quot;now&amp;quot;:&amp;quot;1323644358437819&amp;quot;,&lt;br /&gt;
    &amp;quot;price&amp;quot;:&amp;quot;14.43&amp;quot;,&lt;br /&gt;
    &amp;quot;price_int&amp;quot;:&amp;quot;1443000&amp;quot;,&lt;br /&gt;
    &amp;quot;total_volume_int&amp;quot;:&amp;quot;849766000&amp;quot;,&lt;br /&gt;
    &amp;quot;type&amp;quot;:1,&lt;br /&gt;
    &amp;quot;type_str&amp;quot;:&amp;quot;ask&amp;quot;,&lt;br /&gt;
    &amp;quot;volume&amp;quot;:&amp;quot;-2.71&amp;quot;,&lt;br /&gt;
    &amp;quot;volume_int&amp;quot;:&amp;quot;-271000000&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;op&amp;quot;:&amp;quot;private&amp;quot;,&lt;br /&gt;
  &amp;quot;origin&amp;quot;:&amp;quot;broadcast&amp;quot;,&lt;br /&gt;
  &amp;quot;private&amp;quot;:&amp;quot;depth&amp;quot;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;depth&#039;&#039;&#039; contains the following:&lt;br /&gt;
&lt;br /&gt;
:{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name !! Value&lt;br /&gt;
|-&lt;br /&gt;
| currency || the currency affected&lt;br /&gt;
|-&lt;br /&gt;
| item || the item (BTC)&lt;br /&gt;
|-&lt;br /&gt;
| price || price as a float, deprecated&lt;br /&gt;
|-&lt;br /&gt;
| price_int || the price at which volume change happened (5 decimal for USD, 3 for JPY)&lt;br /&gt;
|-&lt;br /&gt;
| type || 1=ask, 2=bid. deprecated, use type_str&lt;br /&gt;
|-&lt;br /&gt;
| type_str || type of order at this depth, either &amp;quot;ask&amp;quot; or &amp;quot;bid&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| volume || the volume change as float, deprecated&lt;br /&gt;
|-&lt;br /&gt;
| volume_int || volume change * 1E8&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===  Outgoing commands===&lt;br /&gt;
==== Direct commands ====&lt;br /&gt;
&lt;br /&gt;
Commands that can be sent without authentication&lt;br /&gt;
&lt;br /&gt;
===== unsubscribe =====&lt;br /&gt;
Stop receiving messages from a channel&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;{&lt;br /&gt;
    &amp;quot;op&amp;quot;:&amp;quot;unsubscribe&amp;quot;, &lt;br /&gt;
    &amp;quot;channel&amp;quot;:&amp;lt;CHANNEL ID&amp;gt;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Responds with an identical message to confirm&lt;br /&gt;
===== mtgox.subscribe =====&lt;br /&gt;
Subscribe to a channel to start receiving messages from it.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;{&lt;br /&gt;
    &amp;quot;op&amp;quot;: &amp;quot;mtgox.subscribe&amp;quot;,&lt;br /&gt;
    &amp;quot;type&amp;quot;: &amp;quot;ticker&amp;quot;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;quot;type&amp;quot; can be ticker, trades, or depth.&lt;br /&gt;
&lt;br /&gt;
==== Authenticated commands ====&lt;br /&gt;
&lt;br /&gt;
These commands require an API key and secret pair to sign requests. Any of the &amp;quot;version 1&amp;quot; requests from the HTTP API can be called. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;{&lt;br /&gt;
    &amp;quot;op&amp;quot;:&amp;quot;call&amp;quot;,&lt;br /&gt;
    &amp;quot;id&amp;quot;:&amp;lt;REQUEST ID&amp;gt;,&lt;br /&gt;
    &amp;quot;call&amp;quot;:&amp;lt;BASE-64 ENCODED SIGNED REQUEST&amp;gt;,&lt;br /&gt;
    &amp;quot;context&amp;quot;:&amp;quot;mtgox.com&amp;quot;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;REQUEST ID&amp;gt; can be any string, it&#039;s used to identify the response as belonging to this request when an answer comes back. md5&#039;ing your nonce is a good way to get an id. &lt;br /&gt;
&lt;br /&gt;
&amp;quot;call&amp;quot; must be a base-64 encoded string consisting of, in order: an API key, a signed copy of the response, and the response text itself.&lt;br /&gt;
&lt;br /&gt;
The queries themselves look like:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;{&lt;br /&gt;
    &amp;quot;id&amp;quot;:&amp;lt;REQUEST ID&amp;gt;,&lt;br /&gt;
    &amp;quot;call&amp;quot;:&amp;lt;HTTP API ENDPOINT&amp;gt;,&lt;br /&gt;
    &amp;quot;nonce&amp;quot;:&amp;lt;REQUEST NONCE&amp;gt;,&lt;br /&gt;
    &amp;quot;params&amp;quot;:&amp;lt;REQUEST PARAMETERS&amp;gt;,&lt;br /&gt;
    &amp;quot;item&amp;quot;:&amp;quot;BTC&amp;quot;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HTTP API ENDPOINT&amp;gt; is the last two path components of any version 1 API endpoint, for example [[#Private_info|private/info]], or [[#Cancelled_Trades|public/cancelledtrades]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;REQUEST PARAMETERS&amp;gt; is optional for any request that doesn&#039;t have parameters.&lt;br /&gt;
&lt;br /&gt;
The signing process is similar to the HTTP API, but because we can&#039;t send headers in an open websocket, the API key and signed request are simply prepended to the actual query data and base64 encoded. Reference implementations are available at https://github.com/MtGox/websocket&lt;br /&gt;
&lt;br /&gt;
Here&#039;s a sample of how to create a valid request in PHP 5.3:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php&amp;quot;&amp;gt;$nonce = explode(&#039; &#039;, microtime(false));&lt;br /&gt;
$nonce = $nonce[1].substr($nonce[0], 2, 6);&lt;br /&gt;
$id = md5($nonce); // id can be anything to recognize this call&lt;br /&gt;
$query = array(&#039;call&#039; =&amp;gt; $call, &#039;params&#039; =&amp;gt; $params, &#039;item&#039; =&amp;gt; $item, &#039;currency&#039; =&amp;gt; $currency, &#039;id&#039; =&amp;gt; $id, &#039;nonce&#039; =&amp;gt; $nonce);&lt;br /&gt;
$query = json_encode($query);&lt;br /&gt;
// generate signature&lt;br /&gt;
$sign = hash_hmac(&#039;sha512&#039;, $query, base64_decode($apiSecret), true);&lt;br /&gt;
// prefix signature to query&lt;br /&gt;
$query = pack(&#039;H*&#039;, str_replace(&#039;-&#039;,&#039;&#039;,$apiKey)).$sign.$query;&lt;br /&gt;
// send query&lt;br /&gt;
$call = array(&#039;op&#039; =&amp;gt; &#039;call&#039;, &#039;call&#039; =&amp;gt; base64_encode($query), &#039;id&#039; =&amp;gt; $id, &#039;context&#039; =&amp;gt; &#039;mtgox.com&#039;);&lt;br /&gt;
// $call can now be pushed out to the websocket&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== examples ===&lt;br /&gt;
&lt;br /&gt;
==== ticker ====&lt;br /&gt;
javascript, using hookio : &lt;br /&gt;
&lt;br /&gt;
http://www.youtube.com/watch?v=KD5ljtNK72U&lt;br /&gt;
&lt;br /&gt;
http://github.com/hookio&lt;br /&gt;
&lt;br /&gt;
http://github.com/cronopio/hook.io-mtgox&lt;br /&gt;
&lt;br /&gt;
Another node.js project, using plain websockets (largely based on cronopio&#039;s work) :&lt;br /&gt;
&lt;br /&gt;
https://github.com/dlanod/node-mtgox-websocket-client&lt;br /&gt;
&lt;br /&gt;
A python example :&lt;br /&gt;
https://github.com/3M3RY/python-mtgox&lt;br /&gt;
&lt;br /&gt;
==== arbitrage ====&lt;br /&gt;
https://github.com/goteppo/ArBit&lt;br /&gt;
&lt;br /&gt;
==== websocket ====&lt;br /&gt;
https://github.com/cronopio/hook.io-ws&lt;br /&gt;
&lt;br /&gt;
https://github.com/dlanod/node-mtgox-websocket-client&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&amp;lt;references&amp;gt;&amp;lt;/references&amp;gt;&lt;/div&gt;</summary>
		<author><name>Emery</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=Protocol_documentation&amp;diff=23333</id>
		<title>Protocol documentation</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=Protocol_documentation&amp;diff=23333"/>
		<updated>2012-02-03T18:12:45Z</updated>

		<summary type="html">&lt;p&gt;Emery: added getwork note.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Sources:&lt;br /&gt;
* [[Original Bitcoin client]] source&lt;br /&gt;
&lt;br /&gt;
Type names used in this documentation are from the C99 standard.&lt;br /&gt;
&lt;br /&gt;
For protocol used in mining, see [[Getwork]].&lt;br /&gt;
&lt;br /&gt;
==Common standards==&lt;br /&gt;
&lt;br /&gt;
=== Hashes ===&lt;br /&gt;
&lt;br /&gt;
Usually, when a hash is computed within bitcoin, it is computed twice. Most of the time [http://en.wikipedia.org/wiki/SHA-2 SHA-256] hashes are used, however [http://en.wikipedia.org/wiki/RIPEMD RIPEMD-160] is also used when a shorter hash is desirable (for example when creating a bitcoin address).&lt;br /&gt;
&lt;br /&gt;
Example of double-SHA-256 encoding of string &amp;quot;hello&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
 hello&lt;br /&gt;
 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824 (first round of sha-256)&lt;br /&gt;
 9595c9df90075148eb06860365df33584b75bff782a510c6cd4883a419833d50 (second round of sha-256)&lt;br /&gt;
&lt;br /&gt;
For bitcoin addresses (RIPEMD-160) this would give:&lt;br /&gt;
&lt;br /&gt;
 hello&lt;br /&gt;
 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824 (first round is sha-256)&lt;br /&gt;
 b6a9c8c230722b7c748331a8b450f05566dc7d0f (with ripemd-160)&lt;br /&gt;
&lt;br /&gt;
=== Merkle Trees ===&lt;br /&gt;
&lt;br /&gt;
Merkle trees are binary trees of hashes. Merkle trees in bitcoin use &#039;&#039;&#039;Double&#039;&#039;&#039; SHA-256, and are built up as so:&lt;br /&gt;
 &lt;br /&gt;
 hash(a) = sha256(sha256(a))&lt;br /&gt;
 &lt;br /&gt;
 hash(a) hash(b) hash(c)&lt;br /&gt;
 hash(hash(a)+hash(b)) hash(hash(c)+hash(c))&lt;br /&gt;
 hash(hash(hash(a)+hash(b))+hash(hash(c)+hash(c)))&lt;br /&gt;
&lt;br /&gt;
They are paired up, with the last element being _duplicated_.&lt;br /&gt;
&lt;br /&gt;
Note: Hashes in Merkle Tree displayed in the [[Block Explorer]] are of little-endian notation. For some implementations and [http://www.fileformat.info/tool/hash.htm calculations], the bits need to be reversed before they are hashed, and again after the hashing operation.&lt;br /&gt;
&lt;br /&gt;
=== Signatures ===&lt;br /&gt;
&lt;br /&gt;
Bitcoin uses [http://en.wikipedia.org/wiki/Elliptic_curve_cryptography Elliptic Curve] [http://en.wikipedia.org/wiki/Digital_Signature_Algorithm Digital Signature Algorithm] ([http://en.wikipedia.org/wiki/Elliptic_Curve_DSA ECDSA]) to sign transactions. &lt;br /&gt;
&lt;br /&gt;
For ECDSA the secp256k1 curve from http://www.secg.org/collateral/sec2_final.pdf is used.&lt;br /&gt;
&lt;br /&gt;
Public keys (in scripts) are given as 04 &amp;lt;x&amp;gt; &amp;lt;y&amp;gt; where &#039;&#039;x&#039;&#039; and &#039;&#039;y&#039;&#039; are 32 byte big-endian integers representing the coordinates of a point on the curve or in compressed form given as &amp;lt;sign&amp;gt; &amp;lt;x&amp;gt; where &amp;lt;sign&amp;gt; is 0x02 if &#039;&#039;y&#039;&#039; is even and 0x03 if &#039;&#039;y&#039;&#039; is odd. Signatures use [http://en.wikipedia.org/wiki/Distinguished_Encoding_Rules DER encoding] to pack the &#039;&#039;r&#039;&#039; and &#039;&#039;s&#039;&#039; components into a single byte stream (this is also what OpenSSL produces by default).&lt;br /&gt;
&lt;br /&gt;
=== Transaction Verification ===&lt;br /&gt;
Transactions are cryptographically signed records that reassign ownership of Bitcoins to new addresses.  Transactions have &#039;&#039;inputs&#039;&#039; - records which reference the funds from other previous transactions - and &#039;&#039;outputs&#039;&#039; - records which determine the new owner of the transferred Bitcoins, and which will be referenced as inputs in future transactions as those funds are respent.&lt;br /&gt;
&lt;br /&gt;
Each &#039;&#039;input&#039;&#039; must have a cryptographic digital signature that unlocks the funds from the prior transaction.  Only the person possessing the appropriate [[private key]] is able to create a satisfactory signature; this in effect ensures that funds can only be spent by their owners.&lt;br /&gt;
&lt;br /&gt;
Each &#039;&#039;output&#039;&#039; determines which Bitcoin address (or other criteria, see [[Scripting]]) is the recipient of the funds.&lt;br /&gt;
&lt;br /&gt;
In a transaction, the sum of all inputs must be equal to or greater than the sum of all outputs.  If the inputs exceed the outputs, the difference is considered a [[transaction fee]], and is redeemable by whoever first includes the transaction into the block chain.&lt;br /&gt;
&lt;br /&gt;
A special kind of transaction, called a [[coinbase transaction]], has no inputs.  It is created by [[miners]], and there is one coinbase transaction per block.  Because each block comes with a reward of newly created Bitcoins (e.g. 50 BTC for the first 210,000 blocks), the first transaction of a block is, with few exceptions, the transaction that grants those coins to their recipient (the miner).  In addition to the newly created Bitcoins, the coinbase transaction is also used for assigning the recipient of any transaction fees that were paid within the other transactions being included in the same block.  The coinbase transaction can assign the entire reward to a single Bitcoin address, or split it in portions among multiple addresses, just like any other transaction.  Coinbase transactions always contain outputs totaling the sum of the block reward plus all transaction fees collected from the other transactions in the same block.&lt;br /&gt;
&lt;br /&gt;
Most Bitcoin outputs encumber the newly transferred coins with a single ECDSA private key.  The actual record saved with inputs and outputs isn&#039;t necessarily a key, but a &#039;&#039;script&#039;&#039;.  Bitcoin uses an interpreted scripting system to determine whether an output&#039;s criteria have been satisfied, with which more complex operations are possible, such as outputs that require two ECDSA signatures, or two-of-three-signature schemes.  An output that references a single Bitcoin address is a &#039;&#039;typical&#039;&#039; output; an output actually contains this information in the form of a script that requires a single ECDSA signature (see [[OP_CHECKSIG]]).  The output script specifies what must be provided to unlock the funds later, and when the time comes in the future to spend the transaction in another input, that input must provide all of the thing(s) that satisfy the requirements defined by the original output script.&lt;br /&gt;
&lt;br /&gt;
=== Addresses ===&lt;br /&gt;
&lt;br /&gt;
A bitcoin address is in fact the hash of a ECDSA public key, computed this way:&lt;br /&gt;
&lt;br /&gt;
 Version = 1 byte of 0 (zero); on the test network, this is 1 byte of 111&lt;br /&gt;
 Key hash = Version concatenated with RIPEMD-160(SHA-256(public key))&lt;br /&gt;
 Checksum = 1st 4 bytes of SHA-256(SHA-256(Key hash))&lt;br /&gt;
 Bitcoin Address = Base58Encode(Key hash concatenated with Checksum)&lt;br /&gt;
&lt;br /&gt;
The Base58 encoding used is home made, and has some differences. Especially, leading zeroes are kept as single zeroes when conversion happens.&lt;br /&gt;
&lt;br /&gt;
== Common structures ==&lt;br /&gt;
&lt;br /&gt;
Almost all integers are encoded in little endian. Only IP or port number are encoded big endian.&lt;br /&gt;
&lt;br /&gt;
=== Message structure ===&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
| 4 || magic || uint32_t || Magic value indicating message origin network, and used to seek to next message when stream state is unknown&lt;br /&gt;
|-&lt;br /&gt;
| 12 || command || char[12] || ASCII string identifying the packet content, NULL padded (non-NULL padding results in packet rejected)&lt;br /&gt;
|-&lt;br /&gt;
| 4 || length || uint32_t || Length of payload in number of bytes&lt;br /&gt;
|-&lt;br /&gt;
| 4 || checksum || uint32_t || First 4 bytes of sha256(sha256(payload)) (not included in version or verack)&lt;br /&gt;
|-&lt;br /&gt;
| ? || payload || uchar[] || The actual data&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Before 20 February 2012, the version and verack messages do not have a checksum; the payload starts 4 bytes earlier. On and after 20 February 2012, all messages have checksums.&lt;br /&gt;
&lt;br /&gt;
Known magic values:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Network !! Magic value !! Sent over wire as&lt;br /&gt;
|-&lt;br /&gt;
| main || 0xD9B4BEF9 || F9 BE B4 D9&lt;br /&gt;
|-&lt;br /&gt;
| testnet || 0xDAB5BFFA || FA BF B5 DA&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Variable length integer ===&lt;br /&gt;
&lt;br /&gt;
Integer can be encoded depending on the represented value to save space.  Variable length integers always precede an array/vector of a type of data that may vary in length.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Value !! Storage length !! Format&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; 0xfd || 1 || uint8_t&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;= 0xffff || 3 || 0xfd followed by the length as uint16_t&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;= 0xffffffff || 5 || 0xfe followed by the length as uint32_t&lt;br /&gt;
|-&lt;br /&gt;
| - || 9 || 0xff followed by the length as uint64_t&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Variable length string ===&lt;br /&gt;
&lt;br /&gt;
Variable length string can be stored using a variable length integer followed by the string itself.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
| ? || length || [[Protocol_specification#Variable_length_integer|var_int]] || Length of the string&lt;br /&gt;
|-&lt;br /&gt;
| ? || string || char[] || The string itself (can be empty)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Network address ===&lt;br /&gt;
&lt;br /&gt;
When a network address is needed somewhere, this structure is used.  This protocol and structure supports IPv6, &#039;&#039;&#039;but note that the original client currently only supports IPv4 networking&#039;&#039;&#039;. Network addresses are not prefixed with a timestamp in the version message.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
| 4 || time || uint32 || the Time (version &amp;gt;= 31402)&lt;br /&gt;
|-&lt;br /&gt;
| 8 || services || uint64_t || same service(s) listed in [[#version|version]]&lt;br /&gt;
|-&lt;br /&gt;
| 16 || IPv6/4 || char[16] || IPv6 address. Network byte order. The original client only supports IPv4 and only reads the last 4 bytes to get the IPv4 address. However, the IPv4 address is written into the message as a 16 byte [http://en.wikipedia.org/wiki/IPv6#IPv4-mapped_IPv6_addresses IPv4-mapped IPv6 address]&lt;br /&gt;
(12 bytes &#039;&#039;00 00 00 00  00 00 00 00  00 00 FF FF&#039;&#039;, followed by the 4 bytes of the IPv4 address).&lt;br /&gt;
|-&lt;br /&gt;
| 2 || port || uint16_t || port number, network byte order&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Hexdump example of Network address structure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
0000   01 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  ................&lt;br /&gt;
0010   00 00 FF FF 0A 00 00 01  20 8D                    ........ .&lt;br /&gt;
&lt;br /&gt;
Network address:&lt;br /&gt;
 01 00 00 00 00 00 00 00                         - 1 (NODE_NETWORK: see services listed under version command)&lt;br /&gt;
 00 00 00 00 00 00 00 00 00 00 FF FF 0A 00 00 01 - IPv6: ::ffff:10.0.0.1 or IPv4: 10.0.0.1&lt;br /&gt;
 20 8D                                           - Port 8333&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Inventory Vectors ===&lt;br /&gt;
&lt;br /&gt;
Inventory vectors are used for notifying other nodes about objects they have or data which is being requested.&lt;br /&gt;
&lt;br /&gt;
Inventory vectors consist of the following data format:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
| 4 || type || uint32_t || Identifies the object type linked to this inventory&lt;br /&gt;
|-&lt;br /&gt;
| 32 || hash || char[32] || Hash of the object&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The object type is currently defined as one of the following possibilities:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Value !! Name !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0 || ERROR || Any data of with this number may be ignored&lt;br /&gt;
|-&lt;br /&gt;
| 1 || MSG_TX || Hash is related to a transaction&lt;br /&gt;
|-&lt;br /&gt;
| 2 || MSG_BLOCK || Hash is related to a data block&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Other Data Type values are considered reserved for future implementations.&lt;br /&gt;
&lt;br /&gt;
=== Block Headers ===&lt;br /&gt;
&lt;br /&gt;
Block headers are sent in a headers packet in response to a getheaders message.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
| 4 || version || uint32_t || Block version information, based upon the software version creating this block&lt;br /&gt;
|-&lt;br /&gt;
| 32 || prev_block || char[32] || The hash value of the previous block this particular block references&lt;br /&gt;
|-&lt;br /&gt;
| 32 || merkle_root || char[32] || The reference to a Merkle tree collection which is a hash of all transactions related to this block&lt;br /&gt;
|-&lt;br /&gt;
| 4 || timestamp || uint32_t || A timestamp recording when this block was created (Limited to 2106!)&lt;br /&gt;
|-&lt;br /&gt;
| 4 || bits || uint32_t || The calculated difficulty target being used for this block&lt;br /&gt;
|-&lt;br /&gt;
| 4 || nonce || uint32_t || The nonce used to generate this block… to allow variations of the header and compute different hashes&lt;br /&gt;
|-&lt;br /&gt;
| 1 || txn_count || uint8_t || Number of transaction entries, this value is always 0&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Message types ==&lt;br /&gt;
&lt;br /&gt;
=== version ===&lt;br /&gt;
&lt;br /&gt;
When a node creates an outgoing connection, it will immediately advertise its version. The remote node will respond with its version. No futher communication is possible until both peers have exchanged their version.&lt;br /&gt;
&lt;br /&gt;
Payload:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
| 4 || version || int32_t || Identifies protocol version being used by the node&lt;br /&gt;
|-&lt;br /&gt;
| 8 || services || uint64_t || bitfield of features to be enabled for this connection&lt;br /&gt;
|-&lt;br /&gt;
| 8 || timestamp || int64_t || standard UNIX timestamp in seconds&lt;br /&gt;
|-&lt;br /&gt;
| 26 || addr_recv || net_addr || The network address of the node receiving this message&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot;| version &amp;gt;= 106&lt;br /&gt;
|-&lt;br /&gt;
| 26 || addr_from || net_addr || The network address of the node emitting this message&lt;br /&gt;
|-&lt;br /&gt;
| 8 || nonce || uint64_t || Node random nonce, randomly generated every time a version packet is sent. This nonce is used to detect connections to self.&lt;br /&gt;
|-&lt;br /&gt;
| ? || user_agent || [[#Variable length string|var_str]] || [[BIP_0014|User Agent]] (0x00 if string is 0 bytes long)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot;| version &amp;gt;= 209&lt;br /&gt;
|-&lt;br /&gt;
| 4 || start_height || int32_t || The last block received by the emitting node&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
If the emitter of the packet has version &amp;gt;= 209, a &amp;quot;verack&amp;quot; packet shall be sent if the version packet was accepted.&lt;br /&gt;
&lt;br /&gt;
The following services are currently assigned:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Value !! Name !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 1 || NODE_NETWORK || This node can be asked for full blocks instead of just headers.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Hexdump example of version message (note the message header for this version message does not have a checksum):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
0000   F9 BE B4 D9 76 65 72 73  69 6F 6E 00 00 00 00 00   ....version.....&lt;br /&gt;
0010   55 00 00 00 9C 7C 00 00  01 00 00 00 00 00 00 00   U....|..........&lt;br /&gt;
0020   E6 15 10 4D 00 00 00 00  01 00 00 00 00 00 00 00   ...M............&lt;br /&gt;
0030   00 00 00 00 00 00 00 00  00 00 FF FF 0A 00 00 01   ................&lt;br /&gt;
0040   20 8D 01 00 00 00 00 00  00 00 00 00 00 00 00 00   ................&lt;br /&gt;
0050   00 00 00 00 FF FF 0A 00  00 02 20 8D DD 9D 20 2C   .......... ... ,&lt;br /&gt;
0060   3A B4 57 13 00 55 81 01  00                        :.W..U...&lt;br /&gt;
&lt;br /&gt;
Message header:&lt;br /&gt;
 F9 BE B4 D9                                                                   - Main network magic bytes&lt;br /&gt;
 76 65 72 73 69 6F 6E 00 00 00 00 00                                           - &amp;quot;version&amp;quot; command&lt;br /&gt;
 55 00 00 00                                                                   - Payload is 85 bytes long&lt;br /&gt;
                                                                               - No checksum in version message until 20 February 2012. See https://bitcointalk.org/index.php?topic=55852.0&lt;br /&gt;
Version message:&lt;br /&gt;
 9C 7C 00 00                                                                   - 31900 (version 0.3.19)&lt;br /&gt;
 01 00 00 00 00 00 00 00                                                       - 1 (NODE_NETWORK services)&lt;br /&gt;
 E6 15 10 4D 00 00 00 00                                                       - Mon Dec 20 21:50:14 EST 2010&lt;br /&gt;
 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 FF FF 0A 00 00 01 20 8D - Recipient address info - see Network Address&lt;br /&gt;
 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 FF FF 0A 00 00 02 20 8D - Sender address info - see Network Address&lt;br /&gt;
 DD 9D 20 2C 3A B4 57 13                                                       - Node random unique ID&lt;br /&gt;
 00                                                                            - &amp;quot;&amp;quot; sub-version string (string is 0 bytes long)&lt;br /&gt;
 55 81 01 00                                                                   - Last block sending node has is block #98645&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== verack ===&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;verack&#039;&#039; message is sent in reply to &#039;&#039;version&#039;&#039; for clients &amp;gt;= 209.  This message consists of only a [[#Message structure|message header]] with the command string &amp;quot;verack&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Hexdump of the verack message:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
0000   F9 BE B4 D9 76 65 72 61  63 6B 00 00 00 00 00 00   ....verack......&lt;br /&gt;
0010   00 00 00 00                                        ....&lt;br /&gt;
&lt;br /&gt;
Message header:&lt;br /&gt;
 F9 BE B4 D9                          - Main network magic bytes&lt;br /&gt;
 76 65 72 61  63 6B 00 00 00 00 00 00 - &amp;quot;verack&amp;quot; command&lt;br /&gt;
 00 00 00 00                          - Payload is 0 bytes long&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== addr ===&lt;br /&gt;
&lt;br /&gt;
Provide information on known nodes of the network. Non-advertised nodes should be forgotten after typically 3 hours&lt;br /&gt;
&lt;br /&gt;
Payload (maximum payload length: 1000 bytes):&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
| 1+ || count || [[Protocol_specification#Variable_length_integer|var_int]] || Number of address entries&lt;br /&gt;
|-&lt;br /&gt;
| 30x? || addr_list || (uint32_t + net_addr)[] || Address of other nodes on the network. version &amp;lt; 209 will only read the first one. The uint32_t is a timestamp (see note below).&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039;: Starting version 31402, addresses are prefixed with a timestamp. If no timestamp is present, the addresses should not be relayed to other peers, unless it is indeed confirmed they are up.&lt;br /&gt;
&lt;br /&gt;
Hexdump example of &#039;&#039;addr&#039;&#039; message:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
0000   F9 BE B4 D9 61 64 64 72  00 00 00 00 00 00 00 00   ....addr........&lt;br /&gt;
0010   1F 00 00 00 ED 52 39 9B  01 E2 15 10 4D 01 00 00   .....R9.....M...&lt;br /&gt;
0020   00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 FF   ................&lt;br /&gt;
0030   FF 0A 00 00 01 20 8D                               ..... .&lt;br /&gt;
&lt;br /&gt;
Message Header:&lt;br /&gt;
 F9 BE B4 D9                                     - Main network magic bytes&lt;br /&gt;
 61 64 64 72  00 00 00 00 00 00 00 00            - &amp;quot;addr&amp;quot;&lt;br /&gt;
 1F 00 00 00                                     - payload is 31 bytes long&lt;br /&gt;
 ED 52 39 9B                                     - checksum of payload&lt;br /&gt;
&lt;br /&gt;
Payload:&lt;br /&gt;
 01                                              - 1 address in this message&lt;br /&gt;
&lt;br /&gt;
Address:&lt;br /&gt;
 E2 15 10 4D                                     - Mon Dec 20 21:50:10 EST 2010 (only when version is &amp;gt;= 31402)&lt;br /&gt;
 01 00 00 00 00 00 00 00                         - 1 (NODE_NETWORK service - see version message)&lt;br /&gt;
 00 00 00 00 00 00 00 00 00 00 FF FF 0A 00 00 01 - IPv4: 10.0.0.1, IPv6: ::ffff:10.0.0.1 (IPv4-mapped IPv6 address)&lt;br /&gt;
 20 8D                                           - port 8333&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== inv ===&lt;br /&gt;
&lt;br /&gt;
Allows a node to advertise its knowledge of one or more objects. It can be received unsolicited, or in reply to &#039;&#039;getblocks&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Payload (maximum payload length: 50000 bytes):&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
| ? || count || [[Protocol_specification#Variable_length_integer|var_int]] || Number of inventory entries&lt;br /&gt;
|-&lt;br /&gt;
| 36x? || inventory || [[Protocol specification#Inventory Vectors|inv_vect]][] || Inventory vectors&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== getdata ===&lt;br /&gt;
&lt;br /&gt;
getdata is used in response to inv, to retrieve the content of a specific object, and is usually sent after receiving an &#039;&#039;inv&#039;&#039; packet, after filtering known elements.&lt;br /&gt;
&lt;br /&gt;
Payload (maximum payload length: 50000 bytes):&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
| ? || count || [[Protocol_specification#Variable_length_integer|var_int]] || Number of inventory entries&lt;br /&gt;
|-&lt;br /&gt;
| 36x? || inventory || [[Protocol specification#Inventory Vectors|inv_vect]][] || Inventory vectors&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== getblocks ===&lt;br /&gt;
&lt;br /&gt;
Return an &#039;&#039;inv&#039;&#039; packet containing the list of blocks starting right after the last known (and correct) hash in the block locator object, up to hash_stop or 500 blocks, whichever comes first. To receive the next blocks hashes, one needs to issue getblocks again with a new block locator object.&lt;br /&gt;
&lt;br /&gt;
Payload:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
| 4 || version || uint32_t || the protocol version&lt;br /&gt;
|-&lt;br /&gt;
| 1+ || hash count || [[Protocol_specification#Variable_length_integer|var_int]] || number of block locator hash entries&lt;br /&gt;
|-&lt;br /&gt;
| 32+ || block locator hashes || char[32] || block locator object; newest back to genesis block (dense to start, but then sparse)&lt;br /&gt;
|-&lt;br /&gt;
| 32 || hash_stop || char[32] || hash of the last desired block; set to zero to get as many blocks as possible (500)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
To create the block locator hashes, keep pushing hashes until you go back to the genesis block. After pushing 10 hashes back, the step backwards doubles every loop:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// From libbitcoin which is under AGPL&lt;br /&gt;
std::vector&amp;lt;size_t&amp;gt; block_locator_indices(int top_depth)&lt;br /&gt;
{&lt;br /&gt;
    // Start at max_depth&lt;br /&gt;
    std::vector&amp;lt;size_t&amp;gt; indices;&lt;br /&gt;
    // Push last 10 indices first&lt;br /&gt;
    size_t step = 1, start = 0;&lt;br /&gt;
    for (int i = top_depth; i &amp;gt; 0; i -= step, ++start)&lt;br /&gt;
    {&lt;br /&gt;
        if (start &amp;gt;= 10)&lt;br /&gt;
            step *= 2;&lt;br /&gt;
        indices.push_back(i);&lt;br /&gt;
    }&lt;br /&gt;
    indices.push_back(0);&lt;br /&gt;
    return indices;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that it is allowed to send in fewer known hashes down to a minimum of just one hash. However, the purpose of the block locator object is to detect a wrong branch in the caller&#039;s main chain. If the peer detects that you are off the main chain, it will send in block hashes which are earlier than your last known block. So if you just send in your last known hash and it is off the main chain, the peer starts over at block #1.&lt;br /&gt;
&lt;br /&gt;
=== getheaders ===&lt;br /&gt;
&lt;br /&gt;
Return a &#039;&#039;headers&#039;&#039; packet containing the headers of blocks starting right after the last known (and correct) hash in the block locator object, up to hash_stop or 2000 blocks, whichever comes first. To receive the next block headers, one needs to issue getheaders again with a new block locator object. The &#039;&#039;getheaders&#039;&#039; command is used by thin clients to quickly download the blockchain where the contents of the transactions would be irrelevant (because they are not ours). &lt;br /&gt;
&lt;br /&gt;
Payload:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
| 4 || version || uint32_t || the protocol version&lt;br /&gt;
|-&lt;br /&gt;
| 1+ || hash count || [[Protocol_specification#Variable_length_integer|var_int]] || number of block locator hash entries&lt;br /&gt;
|-&lt;br /&gt;
| 32+ || block locator hashes || char[32] || block locator object; newest back to genesis block (dense to start, but then sparse)&lt;br /&gt;
|-&lt;br /&gt;
| 32 || hash_stop || char[32] || hash of the last desired block header; set to zero to get as many blocks as possible (2000)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
For the block locator object in this packet, the same rules apply as for the [[Protocol_specification#Variable_length_integer|getblocks]] packet.&lt;br /&gt;
&lt;br /&gt;
=== tx ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;tx&#039;&#039; describes a bitcoin transaction, in reply to &#039;&#039;getdata&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
| 4 || version || uint32_t || Transaction data format version&lt;br /&gt;
|-&lt;br /&gt;
| 1+ || tx_in count || [[Protocol_specification#Variable_length_integer|var_int]] || Number of Transaction inputs&lt;br /&gt;
|-&lt;br /&gt;
| 41+ || tx_in || tx_in[] || A list of 1 or more transaction inputs or sources for coins&lt;br /&gt;
|-&lt;br /&gt;
| 1+ || tx_out count || [[Protocol_specification#Variable_length_integer|var_int]] || Number of Transaction outputs&lt;br /&gt;
|-&lt;br /&gt;
| 8+ || tx_out || tx_out[] || A list of 1 or more transaction outputs or destinations for coins&lt;br /&gt;
|-&lt;br /&gt;
| 4 || lock_time || uint32_t || The block number or timestamp at which this transaction is locked:&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Value !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0 || Always locked&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt; 500000000  || Block number at which this transaction is locked&lt;br /&gt;
|-&lt;br /&gt;
| &amp;gt;= 500000000 || UNIX timestamp at which this transaction is locked&lt;br /&gt;
|}&lt;br /&gt;
A non-locked transaction must not be included in blocks, and it can be modified by broadcasting a new version before the time has expired (replacement is currently disabled in Bitcoin, however, so this is useless).&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
TxIn consists of the following fields:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
| 36 || previous_output || outpoint || The previous output transaction reference, as an OutPoint structure&lt;br /&gt;
|-&lt;br /&gt;
| 1+ || script length || [[Protocol_specification#Variable_length_integer|var_int]] || The length of the signature script&lt;br /&gt;
|-&lt;br /&gt;
| ? || signature script || uchar[] || Computational Script for confirming transaction authorization&lt;br /&gt;
|-&lt;br /&gt;
| 4 || [http://bitcoin.stackexchange.com/q/2025/323 sequence] || uint32_t || Transaction version as defined by the sender. Intended for &amp;quot;replacement&amp;quot; of transactions when information is updated before inclusion into a block.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The OutPoint structure consists of the following fields:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
| 32 || hash || char[32] || The hash of the referenced transaction.&lt;br /&gt;
|-&lt;br /&gt;
| 4 || index || uint32_t || The index of the specific output in the transaction. The first output is 0, etc.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The Script structure consists of a series of pieces of information and operations related to the value of the transaction.&lt;br /&gt;
&lt;br /&gt;
(Structure to be expanded in the future… see script.h and script.cpp and [[Script]] for more information)&lt;br /&gt;
&lt;br /&gt;
The TxOut structure consists of the following fields:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
| 8 || value || uint64_t || Transaction Value&lt;br /&gt;
|-&lt;br /&gt;
| 1+ || pk_script length || [[Protocol_specification#Variable_length_integer|var_int]] || Length of the pk_script&lt;br /&gt;
|-&lt;br /&gt;
| ? || pk_script || uchar[] || Usually contains the public key as a Bitcoin script setting up conditions to claim this output.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Example &#039;&#039;tx&#039;&#039; message:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
000000	F9 BE B4 D9 74 78 00 00  00 00 00 00 00 00 00 00   ....tx..........&lt;br /&gt;
000010	02 01 00 00 E2 93 CD BE  01 00 00 00 01 6D BD DB   .............m..&lt;br /&gt;
000020	08 5B 1D 8A F7 51 84 F0  BC 01 FA D5 8D 12 66 E9   .[...Q........f.&lt;br /&gt;
000030	B6 3B 50 88 19 90 E4 B4  0D 6A EE 36 29 00 00 00   .;P......j.6)...&lt;br /&gt;
000040	00 8B 48 30 45 02 21 00  F3 58 1E 19 72 AE 8A C7   ..H0E.!..X..r...&lt;br /&gt;
000050	C7 36 7A 7A 25 3B C1 13  52 23 AD B9 A4 68 BB 3A   .6zz%;..R#...h.:&lt;br /&gt;
000060	59 23 3F 45 BC 57 83 80  02 20 59 AF 01 CA 17 D0   Y#?E.W... Y.....&lt;br /&gt;
000070	0E 41 83 7A 1D 58 E9 7A  A3 1B AE 58 4E DE C2 8D   .A.z.X.z...XN...&lt;br /&gt;
000080	35 BD 96 92 36 90 91 3B  AE 9A 01 41 04 9C 02 BF   5...6..;...A....&lt;br /&gt;
000090	C9 7E F2 36 CE 6D 8F E5  D9 40 13 C7 21 E9 15 98   .~.6.m...@..!...&lt;br /&gt;
0000A0	2A CD 2B 12 B6 5D 9B 7D  59 E2 0A 84 20 05 F8 FC   *.+..].}Y... ...&lt;br /&gt;
0000B0	4E 02 53 2E 87 3D 37 B9  6F 09 D6 D4 51 1A DA 8F   N.S..=7.o...Q...&lt;br /&gt;
0000C0	14 04 2F 46 61 4A 4C 70  C0 F1 4B EF F5 FF FF FF   ../FaJLp..K.....&lt;br /&gt;
0000D0	FF 02 40 4B 4C 00 00 00  00 00 19 76 A9 14 1A A0   ..@KL......v....&lt;br /&gt;
0000E0	CD 1C BE A6 E7 45 8A 7A  BA D5 12 A9 D9 EA 1A FB   .....E.z........&lt;br /&gt;
0000F0	22 5E 88 AC 80 FA E9 C7  00 00 00 00 19 76 A9 14   &amp;quot;^...........v..&lt;br /&gt;
000100	0E AB 5B EA 43 6A 04 84  CF AB 12 48 5E FD A0 B7   ..[.Cj.....H^...&lt;br /&gt;
000110	8B 4E CC 52 88 AC 00 00  00 00                     .N.R......&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Message header:&lt;br /&gt;
 F9 BE B4 D9                                       - main network magic bytes&lt;br /&gt;
 74 78 00 00 00 00 00 00 00 00 00 00               - &amp;quot;tx&amp;quot; command&lt;br /&gt;
 02 01 00 00                                       - payload is 258 bytes long&lt;br /&gt;
 E2 93 CD BE                                       - checksum of payload&lt;br /&gt;
&lt;br /&gt;
Transaction:&lt;br /&gt;
 01 00 00 00                                       - version&lt;br /&gt;
&lt;br /&gt;
Inputs:&lt;br /&gt;
 01                                                - number of transaction inputs&lt;br /&gt;
&lt;br /&gt;
Input 1:&lt;br /&gt;
 6D BD DB 08 5B 1D 8A F7  51 84 F0 BC 01 FA D5 8D  - previous output (outpoint)&lt;br /&gt;
 12 66 E9 B6 3B 50 88 19  90 E4 B4 0D 6A EE 36 29&lt;br /&gt;
 00 00 00 00&lt;br /&gt;
&lt;br /&gt;
 8B                                                - script is 139 bytes long&lt;br /&gt;
&lt;br /&gt;
 48 30 45 02 21 00 F3 58  1E 19 72 AE 8A C7 C7 36  - signature script (scriptSig)&lt;br /&gt;
 7A 7A 25 3B C1 13 52 23  AD B9 A4 68 BB 3A 59 23&lt;br /&gt;
 3F 45 BC 57 83 80 02 20  59 AF 01 CA 17 D0 0E 41&lt;br /&gt;
 83 7A 1D 58 E9 7A A3 1B  AE 58 4E DE C2 8D 35 BD&lt;br /&gt;
 96 92 36 90 91 3B AE 9A  01 41 04 9C 02 BF C9 7E&lt;br /&gt;
 F2 36 CE 6D 8F E5 D9 40  13 C7 21 E9 15 98 2A CD&lt;br /&gt;
 2B 12 B6 5D 9B 7D 59 E2  0A 84 20 05 F8 FC 4E 02&lt;br /&gt;
 53 2E 87 3D 37 B9 6F 09  D6 D4 51 1A DA 8F 14 04&lt;br /&gt;
 2F 46 61 4A 4C 70 C0 F1  4B EF F5&lt;br /&gt;
&lt;br /&gt;
 FF FF FF FF                                       - sequence&lt;br /&gt;
&lt;br /&gt;
Outputs:&lt;br /&gt;
 02                                                - 2 Output Transactions&lt;br /&gt;
&lt;br /&gt;
Output 1:&lt;br /&gt;
 40 4B 4C 00 00 00 00 00                           - 0.05 BTC (5000000)&lt;br /&gt;
 19                                                - pk_script is 25 bytes long&lt;br /&gt;
&lt;br /&gt;
 76 A9 14 1A A0 CD 1C BE  A6 E7 45 8A 7A BA D5 12  - pk_script&lt;br /&gt;
 A9 D9 EA 1A FB 22 5E 88  AC&lt;br /&gt;
&lt;br /&gt;
Output 2:&lt;br /&gt;
 80 FA E9 C7 00 00 00 00                           - 33.54 BTC (3354000000)&lt;br /&gt;
 19                                                - pk_script is 25 bytes long&lt;br /&gt;
&lt;br /&gt;
 76 A9 14 0E AB 5B EA 43  6A 04 84 CF AB 12 48 5E  - pk_script&lt;br /&gt;
 FD A0 B7 8B 4E CC 52 88  AC&lt;br /&gt;
&lt;br /&gt;
Locktime:&lt;br /&gt;
 00 00 00 00                                       - lock time&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== block ===&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;&#039;block&#039;&#039;&#039; message is sent in response to a getdata message which requests transaction information from a block hash.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
| 4 || version || uint32_t || Block version information, based upon the software version creating this block&lt;br /&gt;
|-&lt;br /&gt;
| 32 || prev_block || char[32] || The hash value of the previous block this particular block references&lt;br /&gt;
|-&lt;br /&gt;
| 32 || merkle_root || char[32] || The reference to a Merkle tree collection which is a hash of all transactions related to this block&lt;br /&gt;
|-&lt;br /&gt;
| 4 || timestamp || uint32_t || A unix timestamp recording when this block was created (Currently limited to dates before the year 2106!)&lt;br /&gt;
|-&lt;br /&gt;
| 4 || bits || uint32_t || The calculated [[Difficulty|difficulty target]] being used for this block&lt;br /&gt;
|-&lt;br /&gt;
| 4 || nonce || uint32_t || The nonce used to generate this block… to allow variations of the header and compute different hashes&lt;br /&gt;
|-&lt;br /&gt;
| ? || txn_count || [[Protocol_specification#Variable_length_integer|var_int]] || Number of transaction entries&lt;br /&gt;
|-&lt;br /&gt;
| ? || txns || tx[] || Block transactions, in format of &amp;quot;tx&amp;quot; command&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The SHA256 hash that identifies each block (and which must have a run of 0 bits) is calculated from the first 6 fields of this structure (version, prev_block, merkle_root, timestamp, bits, nonce, and standard SHA256 padding, making two 64-byte chunks in all) and &#039;&#039;not&#039;&#039; from the complete block. To calculate the hash, only two chunks need to be processed by the SHA256 algorithm. Since the &#039;&#039;nonce&#039;&#039; field is in the second chunk, the first chunk stays constant during mining and therefore only the second chunk needs to be processed. However, a Bitcoin hash is the hash of the hash, so two SHA256 rounds are needed for each mining iteration.&lt;br /&gt;
See [[Block hashing algorithm]] for details and an example.&lt;br /&gt;
&lt;br /&gt;
=== headers ===&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;headers&#039;&#039; packet returns block headers in response to a &#039;&#039;getheaders&#039;&#039; packet. &lt;br /&gt;
&lt;br /&gt;
Payload:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
| ? || count || [[Protocol_specification#Variable_length_integer|var_int]] || Number of block headers&lt;br /&gt;
|-&lt;br /&gt;
| 81x? || headers || [[Protocol_specification#Block_Headers|block_header]][] || [[Protocol_specification#Block_Headers|Block headers]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note that the block headers in this packet include a transaction count (a var_int, so there can be more than 81 bytes per header) as opposed to the block headers which are sent to miners.&lt;br /&gt;
&lt;br /&gt;
=== getaddr ===&lt;br /&gt;
&lt;br /&gt;
The getaddr message sends a request to a node asking for information about known active peers to help with identifying potential nodes in the network. The response to receiving this message is to transmit an addr message with one or more peers from a database of known active peers. The typical presumption is that a node is likely to be active if it has been sending a message within the last three hours.&lt;br /&gt;
&lt;br /&gt;
No additional data is transmitted with this message.&lt;br /&gt;
&lt;br /&gt;
=== checkorder ===&lt;br /&gt;
&lt;br /&gt;
This message is used for [[IP Transactions]], to ask the peer if it accepts such transactions and allow it to look at the content of the order.&lt;br /&gt;
&lt;br /&gt;
It contains a CWalletTx object&lt;br /&gt;
&lt;br /&gt;
Payload:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot;| Fields from CMerkleTx&lt;br /&gt;
|-&lt;br /&gt;
| ? || hashBlock&lt;br /&gt;
|-&lt;br /&gt;
| ? || vMerkleBranch&lt;br /&gt;
|-&lt;br /&gt;
| ? || nIndex&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot;| Fields from CWalletTx&lt;br /&gt;
|-&lt;br /&gt;
| ? || vtxPrev&lt;br /&gt;
|-&lt;br /&gt;
| ? || mapValue&lt;br /&gt;
|-&lt;br /&gt;
| ? || vOrderForm&lt;br /&gt;
|-&lt;br /&gt;
| ? || fTimeReceivedIsTxTime&lt;br /&gt;
|-&lt;br /&gt;
| ? || nTimeReceived&lt;br /&gt;
|-&lt;br /&gt;
| ? || fFromMe&lt;br /&gt;
|-&lt;br /&gt;
| ? || fSpent&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== submitorder ===&lt;br /&gt;
&lt;br /&gt;
Confirms an order has been submitted. &lt;br /&gt;
&lt;br /&gt;
Payload:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
| 32 || hash || char[32] || Hash of the transaction&lt;br /&gt;
|-&lt;br /&gt;
| ? || wallet_entry || CWalletTx || Same payload as checkorder&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== reply ===&lt;br /&gt;
&lt;br /&gt;
Generic reply for [[IP Transactions]]&lt;br /&gt;
&lt;br /&gt;
Payload:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
| 4 || reply || uint32_t || reply code&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Possible values:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Value !! Name !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0 || SUCCESS || The IP Transaction can proceed (&#039;&#039;checkorder&#039;&#039;), or has been accepted (&#039;&#039;submitorder&#039;&#039;)&lt;br /&gt;
|-&lt;br /&gt;
| 1 || WALLET_ERROR || AcceptWalletTransaction() failed&lt;br /&gt;
|-&lt;br /&gt;
| 2 || DENIED || IP Transactions are not accepted by this node&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== ping ===&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;ping&#039;&#039; message is sent primarily to confirm that the TCP/IP connection is still valid. An error in transmission is presumed to be a closed connection and the address is removed as a current peer. No reply is expected as a result of this message being sent nor any sort of action expected on the part of a client when it is used.&lt;br /&gt;
&lt;br /&gt;
=== alert ===&lt;br /&gt;
&lt;br /&gt;
An &#039;&#039;&#039;alert&#039;&#039;&#039; is sent between nodes to send a general notification message throughout the network. If the alert can be confirmed with the signature as having come from the the core development group of the Bitcoin software, the message is suggested to be displayed for end-users. Attempts to perform transactions, particularly automated transactions through the client, are suggested to be halted. The text in the Message string should be relayed to log files and any user interfaces.&lt;br /&gt;
&lt;br /&gt;
Alert format:&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
| ? || payload || var_str || Serialized alert payload&lt;br /&gt;
|-&lt;br /&gt;
| ? || signature || var_str || An ECDSA signature of the message&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The developers of Satoshi&#039;s client use this public key for signing alerts:&lt;br /&gt;
 04fc9702847840aaf195de8442ebecedf5b095cdbb9bc716bda9110971b28a49e0ead8564ff0db22209e0374782c093bb899692d524e9d6a6956e7c5ecbcd68284&lt;br /&gt;
 (hash) 1AGRxqDa5WjUKBwHB9XYEjmkv1ucoUUy1s&lt;br /&gt;
&lt;br /&gt;
The payload is serialized into a var_str to ensure that versions using incompatible alert formats can still relay alerts among one another. The current alert payload format is:&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field Size !! Description !! Data type !! Comments&lt;br /&gt;
|-&lt;br /&gt;
| 4 || Version || int32_t || Alert format version&lt;br /&gt;
|-&lt;br /&gt;
| 8 || RelayUntil || int64_t || The timestamp beyond which nodes should stop relaying this alert&lt;br /&gt;
|-&lt;br /&gt;
| 8 || Expiration || int64_t || The timestamp beyond which this alert is no longer in effect and should be ignored&lt;br /&gt;
|-&lt;br /&gt;
| 4 || ID || int32_t || A unique ID number for this alert&lt;br /&gt;
|-&lt;br /&gt;
| 4 || Cancel || int32_t || All alerts with an ID number less than or equal to this number should be canceled: deleted and not accepted in the future&lt;br /&gt;
|-&lt;br /&gt;
| ? || setCancel || set&amp;lt;int&amp;gt; || All alert IDs contained in this set should be canceled as above&lt;br /&gt;
|-&lt;br /&gt;
| 4 || MinVer || int32_t || This alert only applies to versions greater than or equal to this version. Other versions should still relay it.&lt;br /&gt;
|-&lt;br /&gt;
| 4 || MaxVer || int32_t || This alert only applies to versions less than or equal to this version. Other versions should still relay it.&lt;br /&gt;
|-&lt;br /&gt;
| ? || setSubVer || set&amp;lt;string&amp;gt; || If this set contains any elements, then only nodes that have their subVer contained in this set are affected by the alert. Other versions should still relay it.&lt;br /&gt;
|-&lt;br /&gt;
| 4 || Priority || int32_t || Relative priority compared to other alerts&lt;br /&gt;
|-&lt;br /&gt;
| ? || Comment || string || A comment on the alert that is not displayed&lt;br /&gt;
|-&lt;br /&gt;
| ? || StatusBar || string || The alert message that is displayed to the user&lt;br /&gt;
|-&lt;br /&gt;
| ? || Reserved || string || Reserved&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Scripting ==&lt;br /&gt;
&lt;br /&gt;
See [[script]].&lt;br /&gt;
&lt;br /&gt;
== Wireshark dissector ==&lt;br /&gt;
A dissector for wireshark is being developed at https://github.com/blueCommand/bitcoin-dissector&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
* [[Network]]&lt;br /&gt;
* [[Protocol rules]]&lt;br /&gt;
[[zh-cn:协议说明]]&lt;br /&gt;
[[Category:Technical]]&lt;br /&gt;
[[Category:Developer]]&lt;/div&gt;</summary>
		<author><name>Emery</name></author>
	</entry>
	<entry>
		<id>https://en.bitcoin.it/w/index.php?title=Recommended_Reading&amp;diff=23236</id>
		<title>Recommended Reading</title>
		<link rel="alternate" type="text/html" href="https://en.bitcoin.it/w/index.php?title=Recommended_Reading&amp;diff=23236"/>
		<updated>2012-02-01T20:09:35Z</updated>

		<summary type="html">&lt;p&gt;Emery: Started new page.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;*&amp;quot;Choice in Currency&amp;quot; by Friedrich A. Hayek (1976)[http://mises.org/resources/3983]&lt;/div&gt;</summary>
		<author><name>Emery</name></author>
	</entry>
</feed>