Leiðbeiningar

Lesa innistæður og færslusögu

Innistæður, mörk, viðskipti og allar færslur, lesnar með lykli sem getur engu breytt. Algeng byrjun fyrir eignayfirlit, mælaborð og gögn fyrir bókhald.

Áður en þú byrjar

Lykill með account:read fyrir innistæður og mörk, og transactions:read fyrir færslusöguna. Báðar heimildirnar eru sjálfgefið valdar þegar þú býrð til lykil, og hvorug getur fært fjármuni.

Innistæður

GET/v1/balances telur upp hverja rafmynt sem á innistæðu, og USDC alltaf:

  • available (laust) má nota í viðskipti eða gjafabréf núna;
  • held (frátekið) er bundið: opnar pantanir, viðskipti í bið, veð fyrir lánum;
  • total er available að viðbættu held;
  • value_usdc og value_isk eru leiðbeinandi virði á núverandi verði.
# Signed by sign-headers.sh: see Authentication
curl https://public-api.myntkaup.is/v1/balances \
  $(./sign-headers.sh GET /v1/balances | sed 's/^/-H /')
import { Myntkaup } from "@myntkaup/api";

const client = new Myntkaup(); // reads the key from the environment
const balances = await client.balances.list();
for (const balance of balances.data) {
  console.log(balance.asset, balance.available, balance.held);
}
from myntkaup import Myntkaup

client = Myntkaup()  # reads the key from the environment
balances = client.balances.list()
for balance in balances["data"]:
    print(balance["asset"], balance["available"], balance["held"])
Svar · 200
{
  "as_of": "2026-11-03T10:15:10Z",
  "total_value_usdc": "1180.31",
  "total_value_isk": "164210",
  "data": [
    {
      "asset": "BTC",
      "available": "0.0123",
      "held": "0",
      "total": "0.0123",
      "value_usdc": "1180.31",
      "value_isk": "164210"
    }
  ]
}

Upphæðir eru tugatölur á strengjaformi. Leggðu þær saman með tugatölutegund, aldrei sem fleytitölur.

Mörk

GET/v1/limits sýnir mörkin á viðskiptum og gjafabréfum, hve mikið þú hefur notað í dag (UTC) og síðustu 30 daga, og beiðnatakmörk lykilsins. Kannaðu það fyrir stór viðskipti.

Viðskipti eða færslur?

Saga aðgangsins er í tveimur listum, fyrir ólíkar spurningar:

GET/v1/tradesGET/v1/transactions
HvaðAðeins viðskiptiAllar breytingar á innistæðu
InniheldurViðskipti úr API-inu, appinu og vefappinu (source)Viðskipti, innborganir, úttektir, gjöld, gjafir og gjafakóða, bónusa fyrir að bjóða vinum, lán, frátekningar
Hver færslaRafmynt, kaup eða sala, upphæðir, verð, staðatype, label, og changes fyrir hverja rafmynt með balance_after
Síurasset, side, from, toasset, type, from, to, lang
Hentar fyrirViðskiptasögu, meðalverð, hagnað og tapAfstemmingu innistæðna, bókhald, skattskil

Viðskipti sem voru gerð áður en verðtilboð komu til, eða í appinu eða vefappinu, hafa quote_id: null.

Færslur

Færsla skráir einn atburð og hvernig hann breytti hverri innistæðu:

Svar · 200
{
  "id": "tx_01JB8X2Q4M7Z3V9K5T1N6R0P2W",
  "type": "trade",
  "action": "buy-btc-usdc",
  "label": "Buy BTC",
  "changes": [
    {
      "asset": "USDC",
      "amount": "-100.00",
      "balance_after": "900.00"
    },
    {
      "asset": "BTC",
      "amount": "0.00104210",
      "balance_after": "0.00104210"
    }
  ],
  "created_at": "2026-11-03T10:15:10Z"
}
  • type er eitt af trade, deposit, withdrawal, fee, gift, giftcode, referral_bonus, loan, hold og other.
  • label er lýsing fyrir fólk, sjálfgefið á ensku, eða á íslensku með lang=is.
  • changes hefur eina færslu fyrir hverja rafmynt: amount með formerki og balance_after.

Að lesa allt

listAll (list_all í Python) fylgir bendlinum fyrir þig. Sjá síðuna Síðuskipting fyrir nánari upplýsingar.

import { Myntkaup } from "@myntkaup/api";

const client = new Myntkaup();

for await (const entry of client.transactions.listAll({ from: "2026-01-01T00:00:00Z" })) {
  for (const change of entry.changes) {
    console.log(entry.created_at, entry.type, change.asset, change.amount, change.balance_after);
  }
}
from myntkaup import Myntkaup

client = Myntkaup()

for entry in client.transactions.list_all(from_="2026-01-01T00:00:00Z"):
    for change in entry["changes"]:
        print(entry["created_at"], entry["type"], change["asset"], change["amount"], change["balance_after"])

Að halda afriti uppfærðu

Listar eru í tímaröð, nýjustu fyrst. Til að uppfæra afrit smám saman skaltu muna nýjasta id sem þú hefur vistað, og fletta svo frá byrjun þar til þú kemur að því:

sync.py
import csv
from pathlib import Path

from myntkaup import Myntkaup

client = Myntkaup()
state = Path("last_id.txt")
last_seen = state.read_text().strip() if state.exists() else None

new_entries = []
for entry in client.transactions.list_all():
    if entry["id"] == last_seen:
        break
    new_entries.append(entry)

with open("ledger.csv", "a", newline="") as file:
    writer = csv.writer(file)
    for entry in reversed(new_entries):  # oldest first
        for change in entry["changes"]:
            writer.writerow(
                [entry["created_at"], entry["id"], entry["type"], entry["label"],
                 change["asset"], change["amount"], change["balance_after"]]
            )

if new_entries:
    state.write_text(new_entries[0]["id"])

Keyrðu það mest á nokkurra mínútna fresti. Til að sækja alla söguna í fyrsta sinn skaltu biðja um eitt ár í einu með from og to: hver beiðni nær mest yfir 366 daga.

Verð til verðmats

GET/v1/prices skilar kaup- og söluverði allra rafmynta á þínu þrepi í einu kalli, geymt í skyndiminni í sekúndu. Notaðu það til að meta innistæður í stað þess að spyrja um hverja rafmynt fyrir sig.