GraphQL API Reference

Welcome to the Galoy API reference!

Contact

Galoy developer community

https://chat.galoy.io/

API Endpoints
https://api.staging.galoy.io/graphql

Galoy API Tutorial

Overview

Find detailed documentation of the hosted production API at dev.blink.sv

  • The production API endpoint is: https://api.blink.sv/graphql

Authentication

  • To get an API key register with a phone number or log in with your existing Blink account on dashboard.blink.sv. Use the same credentials as with the Blink wallet app.
  • for your custom requests set the API key in the header as:
    "X-API-KEY" "blink_..."
    

Extra Resources

If you use Postman, we have a collection you can import to test the API. Find it at dev.blink.sv/api/postman

Queries

accountDefaultWallet

Response

Returns a PublicWallet!

Arguments
Name Description
username - Username!
walletCurrency - WalletCurrency

Example

Query
query accountDefaultWallet(
  $username: Username!,
  $walletCurrency: WalletCurrency
) {
  accountDefaultWallet(
    username: $username,
    walletCurrency: $walletCurrency
  ) {
    currency
    id
    walletCurrency
  }
}
Variables
{"username": Username, "walletCurrency": "BTC"}
Response
{
  "data": {
    "accountDefaultWallet": {
      "currency": "BTC",
      "id": 4,
      "walletCurrency": "BTC"
    }
  }
}

authorization

Description

Retrieve the list of scopes permitted for the user's token or API key

Response

Returns an Authorization!

Example

Query
query authorization {
  authorization {
    scopes
  }
}
Response
{"data": {"authorization": {"scopes": ["READ"]}}}

btcPriceList

Response

Returns [PricePoint]

Arguments
Name Description
range - PriceGraphRange!

Example

Query
query btcPriceList($range: PriceGraphRange!) {
  btcPriceList(range: $range) {
    price {
      ...PriceFragment
    }
    timestamp
  }
}
Variables
{"range": "FIVE_YEARS"}
Response
{
  "data": {
    "btcPriceList": [
      {"price": Price, "timestamp": 1592577642}
    ]
  }
}

businessMapMarkers

Response

Returns [MapMarker!]!

Example

Query
query businessMapMarkers {
  businessMapMarkers {
    mapInfo {
      ...MapInfoFragment
    }
    username
  }
}
Response
{
  "data": {
    "businessMapMarkers": [
      {
        "mapInfo": MapInfo,
        "username": Username
      }
    ]
  }
}

currencyConversionEstimation

Description

Returns an estimated conversion rate for the given amount and currency

Response

Returns a CurrencyConversionEstimation!

Arguments
Name Description
amount - Float! Amount in major unit.
currency - DisplayCurrency! Currency of the amount to be converted.

Example

Query
query currencyConversionEstimation(
  $amount: Float!,
  $currency: DisplayCurrency!
) {
  currencyConversionEstimation(
    amount: $amount,
    currency: $currency
  ) {
    btcSatAmount
    id
    timestamp
    usdCentAmount
  }
}
Variables
{"amount": 123.45, "currency": DisplayCurrency}
Response
{
  "data": {
    "currencyConversionEstimation": {
      "btcSatAmount": SatAmount,
      "id": "4",
      "timestamp": 1592577642,
      "usdCentAmount": CentAmount
    }
  }
}

currencyList

Response

Returns [Currency!]!

Example

Query
query currencyList {
  currencyList {
    flag
    fractionDigits
    id
    name
    symbol
  }
}
Response
{
  "data": {
    "currencyList": [
      {
        "flag": "xyz789",
        "fractionDigits": 123,
        "id": 4,
        "name": "abc123",
        "symbol": "xyz789"
      }
    ]
  }
}

globals

Response

Returns a Globals

Example

Query
query globals {
  globals {
    buildInformation {
      ...BuildInformationFragment
    }
    feesInformation {
      ...FeesInformationFragment
    }
    lightningAddressDomain
    lightningAddressDomainAliases
    network
    nodesIds
    supportedCountries {
      ...CountryFragment
    }
  }
}
Response
{
  "data": {
    "globals": {
      "buildInformation": BuildInformation,
      "feesInformation": FeesInformation,
      "lightningAddressDomain": "abc123",
      "lightningAddressDomainAliases": [
        "xyz789"
      ],
      "network": "mainnet",
      "nodesIds": ["xyz789"],
      "supportedCountries": [Country]
    }
  }
}

lnInvoicePaymentStatus

Deprecated in favor of lnInvoicePaymentStatusByPaymentRequest
Response

Returns a LnInvoicePaymentStatusPayload!

Arguments
Name Description
input - LnInvoicePaymentStatusInput!

Example

Query
query lnInvoicePaymentStatus($input: LnInvoicePaymentStatusInput!) {
  lnInvoicePaymentStatus(input: $input) {
    errors {
      ...ErrorFragment
    }
    paymentHash
    paymentRequest
    status
  }
}
Variables
{"input": LnInvoicePaymentStatusInput}
Response
{
  "data": {
    "lnInvoicePaymentStatus": {
      "errors": [Error],
      "paymentHash": PaymentHash,
      "paymentRequest": LnPaymentRequest,
      "status": "EXPIRED"
    }
  }
}

lnInvoicePaymentStatusByHash

Response

Returns a LnInvoicePaymentStatus!

Arguments
Name Description
input - LnInvoicePaymentStatusByHashInput!

Example

Query
query lnInvoicePaymentStatusByHash($input: LnInvoicePaymentStatusByHashInput!) {
  lnInvoicePaymentStatusByHash(input: $input) {
    paymentHash
    paymentRequest
    status
  }
}
Variables
{"input": LnInvoicePaymentStatusByHashInput}
Response
{
  "data": {
    "lnInvoicePaymentStatusByHash": {
      "paymentHash": PaymentHash,
      "paymentRequest": LnPaymentRequest,
      "status": "EXPIRED"
    }
  }
}

lnInvoicePaymentStatusByPaymentRequest

Response

Returns a LnInvoicePaymentStatus!

Arguments
Name Description
input - LnInvoicePaymentStatusByPaymentRequestInput!

Example

Query
query lnInvoicePaymentStatusByPaymentRequest($input: LnInvoicePaymentStatusByPaymentRequestInput!) {
  lnInvoicePaymentStatusByPaymentRequest(input: $input) {
    paymentHash
    paymentRequest
    status
  }
}
Variables
{"input": LnInvoicePaymentStatusByPaymentRequestInput}
Response
{
  "data": {
    "lnInvoicePaymentStatusByPaymentRequest": {
      "paymentHash": PaymentHash,
      "paymentRequest": LnPaymentRequest,
      "status": "EXPIRED"
    }
  }
}

me

Response

Returns a User

Example

Query
query me {
  me {
    contactByUsername {
      ...UserContactFragment
    }
    contacts {
      ...UserContactFragment
    }
    createdAt
    defaultAccount {
      ...AccountFragment
    }
    email {
      ...EmailFragment
    }
    id
    language
    phone
    supportChat {
      ...SupportMessageFragment
    }
    totpEnabled
    username
  }
}
Response
{
  "data": {
    "me": {
      "contactByUsername": UserContact,
      "contacts": [UserContact],
      "createdAt": 1592577642,
      "defaultAccount": Account,
      "email": Email,
      "id": 4,
      "language": Language,
      "phone": Phone,
      "supportChat": [SupportMessage],
      "totpEnabled": false,
      "username": Username
    }
  }
}

mobileVersions

Response

Returns [MobileVersions]

Example

Query
query mobileVersions {
  mobileVersions {
    currentSupported
    minSupported
    platform
  }
}
Response
{
  "data": {
    "mobileVersions": [
      {
        "currentSupported": 123,
        "minSupported": 123,
        "platform": "abc123"
      }
    ]
  }
}

onChainTxFee

Response

Returns an OnChainTxFee!

Arguments
Name Description
address - OnChainAddress!
amount - SatAmount!
speed - PayoutSpeed! Default = FAST
walletId - WalletId!

Example

Query
query onChainTxFee(
  $address: OnChainAddress!,
  $amount: SatAmount!,
  $speed: PayoutSpeed!,
  $walletId: WalletId!
) {
  onChainTxFee(
    address: $address,
    amount: $amount,
    speed: $speed,
    walletId: $walletId
  ) {
    amount
  }
}
Variables
{
  "address": OnChainAddress,
  "amount": SatAmount,
  "speed": "FAST",
  "walletId": WalletId
}
Response
{"data": {"onChainTxFee": {"amount": SatAmount}}}

onChainUsdTxFee

Response

Returns an OnChainUsdTxFee!

Arguments
Name Description
address - OnChainAddress!
amount - CentAmount!
speed - PayoutSpeed! Default = FAST
walletId - WalletId!

Example

Query
query onChainUsdTxFee(
  $address: OnChainAddress!,
  $amount: CentAmount!,
  $speed: PayoutSpeed!,
  $walletId: WalletId!
) {
  onChainUsdTxFee(
    address: $address,
    amount: $amount,
    speed: $speed,
    walletId: $walletId
  ) {
    amount
  }
}
Variables
{
  "address": OnChainAddress,
  "amount": CentAmount,
  "speed": "FAST",
  "walletId": WalletId
}
Response
{"data": {"onChainUsdTxFee": {"amount": CentAmount}}}

onChainUsdTxFeeAsBtcDenominated

Response

Returns an OnChainUsdTxFee!

Arguments
Name Description
address - OnChainAddress!
amount - SatAmount!
speed - PayoutSpeed! Default = FAST
walletId - WalletId!

Example

Query
query onChainUsdTxFeeAsBtcDenominated(
  $address: OnChainAddress!,
  $amount: SatAmount!,
  $speed: PayoutSpeed!,
  $walletId: WalletId!
) {
  onChainUsdTxFeeAsBtcDenominated(
    address: $address,
    amount: $amount,
    speed: $speed,
    walletId: $walletId
  ) {
    amount
  }
}
Variables
{
  "address": OnChainAddress,
  "amount": SatAmount,
  "speed": "FAST",
  "walletId": WalletId
}
Response
{
  "data": {
    "onChainUsdTxFeeAsBtcDenominated": {
      "amount": CentAmount
    }
  }
}

realtimePrice

Description

Returns 1 Sat and 1 Usd Cent price for the given currency in minor unit

Response

Returns a RealtimePrice!

Arguments
Name Description
currency - DisplayCurrency Default = "USD"

Example

Query
query realtimePrice($currency: DisplayCurrency) {
  realtimePrice(currency: $currency) {
    btcSatPrice {
      ...PriceOfOneSatInMinorUnitFragment
    }
    denominatorCurrency
    denominatorCurrencyDetails {
      ...CurrencyFragment
    }
    id
    timestamp
    usdCentPrice {
      ...PriceOfOneUsdCentInMinorUnitFragment
    }
  }
}
Variables
{"currency": "USD"}
Response
{
  "data": {
    "realtimePrice": {
      "btcSatPrice": PriceOfOneSatInMinorUnit,
      "denominatorCurrency": DisplayCurrency,
      "denominatorCurrencyDetails": Currency,
      "id": 4,
      "timestamp": 1592577642,
      "usdCentPrice": PriceOfOneUsdCentInMinorUnit
    }
  }
}

userDefaultWalletId

will be migrated to AccountDefaultWalletId
Response

Returns a WalletId!

Arguments
Name Description
username - Username!

Example

Query
query userDefaultWalletId($username: Username!) {
  userDefaultWalletId(username: $username)
}
Variables
{"username": Username}
Response
{"data": {"userDefaultWalletId": WalletId}}

usernameAvailable

Response

Returns a Boolean

Arguments
Name Description
username - Username!

Example

Query
query usernameAvailable($username: Username!) {
  usernameAvailable(username: $username)
}
Variables
{"username": Username}
Response
{"data": {"usernameAvailable": false}}

Mutations

accountDelete

Response

Returns an AccountDeletePayload!

Example

Query
mutation accountDelete {
  accountDelete {
    errors {
      ...ErrorFragment
    }
    success
  }
}
Response
{
  "data": {
    "accountDelete": {"errors": [Error], "success": true}
  }
}

accountDisableNotificationCategory

Arguments
Name Description
input - AccountDisableNotificationCategoryInput!

Example

Query
mutation accountDisableNotificationCategory($input: AccountDisableNotificationCategoryInput!) {
  accountDisableNotificationCategory(input: $input) {
    account {
      ...ConsumerAccountFragment
    }
    errors {
      ...ErrorFragment
    }
  }
}
Variables
{"input": AccountDisableNotificationCategoryInput}
Response
{
  "data": {
    "accountDisableNotificationCategory": {
      "account": ConsumerAccount,
      "errors": [Error]
    }
  }
}

accountDisableNotificationChannel

Arguments
Name Description
input - AccountDisableNotificationChannelInput!

Example

Query
mutation accountDisableNotificationChannel($input: AccountDisableNotificationChannelInput!) {
  accountDisableNotificationChannel(input: $input) {
    account {
      ...ConsumerAccountFragment
    }
    errors {
      ...ErrorFragment
    }
  }
}
Variables
{"input": AccountDisableNotificationChannelInput}
Response
{
  "data": {
    "accountDisableNotificationChannel": {
      "account": ConsumerAccount,
      "errors": [Error]
    }
  }
}

accountEnableNotificationCategory

Arguments
Name Description
input - AccountEnableNotificationCategoryInput!

Example

Query
mutation accountEnableNotificationCategory($input: AccountEnableNotificationCategoryInput!) {
  accountEnableNotificationCategory(input: $input) {
    account {
      ...ConsumerAccountFragment
    }
    errors {
      ...ErrorFragment
    }
  }
}
Variables
{"input": AccountEnableNotificationCategoryInput}
Response
{
  "data": {
    "accountEnableNotificationCategory": {
      "account": ConsumerAccount,
      "errors": [Error]
    }
  }
}

accountEnableNotificationChannel

Arguments
Name Description
input - AccountEnableNotificationChannelInput!

Example

Query
mutation accountEnableNotificationChannel($input: AccountEnableNotificationChannelInput!) {
  accountEnableNotificationChannel(input: $input) {
    account {
      ...ConsumerAccountFragment
    }
    errors {
      ...ErrorFragment
    }
  }
}
Variables
{"input": AccountEnableNotificationChannelInput}
Response
{
  "data": {
    "accountEnableNotificationChannel": {
      "account": ConsumerAccount,
      "errors": [Error]
    }
  }
}

accountUpdateDefaultWalletId

Arguments
Name Description
input - AccountUpdateDefaultWalletIdInput!

Example

Query
mutation accountUpdateDefaultWalletId($input: AccountUpdateDefaultWalletIdInput!) {
  accountUpdateDefaultWalletId(input: $input) {
    account {
      ...ConsumerAccountFragment
    }
    errors {
      ...ErrorFragment
    }
  }
}
Variables
{"input": AccountUpdateDefaultWalletIdInput}
Response
{
  "data": {
    "accountUpdateDefaultWalletId": {
      "account": ConsumerAccount,
      "errors": [Error]
    }
  }
}

accountUpdateDisplayCurrency

Arguments
Name Description
input - AccountUpdateDisplayCurrencyInput!

Example

Query
mutation accountUpdateDisplayCurrency($input: AccountUpdateDisplayCurrencyInput!) {
  accountUpdateDisplayCurrency(input: $input) {
    account {
      ...ConsumerAccountFragment
    }
    errors {
      ...ErrorFragment
    }
  }
}
Variables
{"input": AccountUpdateDisplayCurrencyInput}
Response
{
  "data": {
    "accountUpdateDisplayCurrency": {
      "account": ConsumerAccount,
      "errors": [Error]
    }
  }
}

callbackEndpointAdd

Response

Returns a CallbackEndpointAddPayload!

Arguments
Name Description
input - CallbackEndpointAddInput!

Example

Query
mutation callbackEndpointAdd($input: CallbackEndpointAddInput!) {
  callbackEndpointAdd(input: $input) {
    errors {
      ...ErrorFragment
    }
    id
  }
}
Variables
{"input": CallbackEndpointAddInput}
Response
{
  "data": {
    "callbackEndpointAdd": {
      "errors": [Error],
      "id": EndpointId
    }
  }
}

callbackEndpointDelete

Response

Returns a SuccessPayload!

Arguments
Name Description
input - CallbackEndpointDeleteInput!

Example

Query
mutation callbackEndpointDelete($input: CallbackEndpointDeleteInput!) {
  callbackEndpointDelete(input: $input) {
    errors {
      ...ErrorFragment
    }
    success
  }
}
Variables
{"input": CallbackEndpointDeleteInput}
Response
{
  "data": {
    "callbackEndpointDelete": {
      "errors": [Error],
      "success": false
    }
  }
}

captchaCreateChallenge

Response

Returns a CaptchaCreateChallengePayload!

Example

Query
mutation captchaCreateChallenge {
  captchaCreateChallenge {
    errors {
      ...ErrorFragment
    }
    result {
      ...CaptchaCreateChallengeResultFragment
    }
  }
}
Response
{
  "data": {
    "captchaCreateChallenge": {
      "errors": [Error],
      "result": CaptchaCreateChallengeResult
    }
  }
}

captchaRequestAuthCode

Response

Returns a SuccessPayload!

Arguments
Name Description
input - CaptchaRequestAuthCodeInput!

Example

Query
mutation captchaRequestAuthCode($input: CaptchaRequestAuthCodeInput!) {
  captchaRequestAuthCode(input: $input) {
    errors {
      ...ErrorFragment
    }
    success
  }
}
Variables
{"input": CaptchaRequestAuthCodeInput}
Response
{
  "data": {
    "captchaRequestAuthCode": {
      "errors": [Error],
      "success": false
    }
  }
}

deviceNotificationTokenCreate

Response

Returns a SuccessPayload!

Arguments
Name Description
input - DeviceNotificationTokenCreateInput!

Example

Query
mutation deviceNotificationTokenCreate($input: DeviceNotificationTokenCreateInput!) {
  deviceNotificationTokenCreate(input: $input) {
    errors {
      ...ErrorFragment
    }
    success
  }
}
Variables
{"input": DeviceNotificationTokenCreateInput}
Response
{
  "data": {
    "deviceNotificationTokenCreate": {
      "errors": [Error],
      "success": false
    }
  }
}

feedbackSubmit

Response

Returns a SuccessPayload!

Arguments
Name Description
input - FeedbackSubmitInput!

Example

Query
mutation feedbackSubmit($input: FeedbackSubmitInput!) {
  feedbackSubmit(input: $input) {
    errors {
      ...ErrorFragment
    }
    success
  }
}
Variables
{"input": FeedbackSubmitInput}
Response
{
  "data": {
    "feedbackSubmit": {"errors": [Error], "success": true}
  }
}

intraLedgerPaymentSend

Description

Actions a payment which is internal to the ledger e.g. it does not use onchain/lightning. Returns payment status (success, failed, pending, already_paid).

Response

Returns a PaymentSendPayload!

Arguments
Name Description
input - IntraLedgerPaymentSendInput!

Example

Query
mutation intraLedgerPaymentSend($input: IntraLedgerPaymentSendInput!) {
  intraLedgerPaymentSend(input: $input) {
    errors {
      ...ErrorFragment
    }
    status
    transaction {
      ...TransactionFragment
    }
  }
}
Variables
{"input": IntraLedgerPaymentSendInput}
Response
{
  "data": {
    "intraLedgerPaymentSend": {
      "errors": [Error],
      "status": "ALREADY_PAID",
      "transaction": Transaction
    }
  }
}

intraLedgerUsdPaymentSend

Description

Actions a payment which is internal to the ledger e.g. it does not use onchain/lightning. Returns payment status (success, failed, pending, already_paid).

Response

Returns a PaymentSendPayload!

Arguments
Name Description
input - IntraLedgerUsdPaymentSendInput!

Example

Query
mutation intraLedgerUsdPaymentSend($input: IntraLedgerUsdPaymentSendInput!) {
  intraLedgerUsdPaymentSend(input: $input) {
    errors {
      ...ErrorFragment
    }
    status
    transaction {
      ...TransactionFragment
    }
  }
}
Variables
{"input": IntraLedgerUsdPaymentSendInput}
Response
{
  "data": {
    "intraLedgerUsdPaymentSend": {
      "errors": [Error],
      "status": "ALREADY_PAID",
      "transaction": Transaction
    }
  }
}

lnAddressPaymentSend

Description

Sends a payment to a lightning address.

Response

Returns a PaymentSendPayload!

Arguments
Name Description
input - LnAddressPaymentSendInput!

Example

Query
mutation lnAddressPaymentSend($input: LnAddressPaymentSendInput!) {
  lnAddressPaymentSend(input: $input) {
    errors {
      ...ErrorFragment
    }
    status
    transaction {
      ...TransactionFragment
    }
  }
}
Variables
{"input": LnAddressPaymentSendInput}
Response
{
  "data": {
    "lnAddressPaymentSend": {
      "errors": [Error],
      "status": "ALREADY_PAID",
      "transaction": Transaction
    }
  }
}

lnInvoiceCancel

Description

Cancel an unpaid lightning invoice for an associated wallet.

Response

Returns a SuccessPayload!

Arguments
Name Description
input - LnInvoiceCancelInput!

Example

Query
mutation lnInvoiceCancel($input: LnInvoiceCancelInput!) {
  lnInvoiceCancel(input: $input) {
    errors {
      ...ErrorFragment
    }
    success
  }
}
Variables
{"input": LnInvoiceCancelInput}
Response
{
  "data": {
    "lnInvoiceCancel": {
      "errors": [Error],
      "success": false
    }
  }
}

lnInvoiceCreate

Description

Returns a lightning invoice for an associated wallet. When invoice is paid the value will be credited to a BTC wallet. Expires after 'expiresIn' or 24 hours.

Response

Returns a LnInvoicePayload!

Arguments
Name Description
input - LnInvoiceCreateInput!

Example

Query
mutation lnInvoiceCreate($input: LnInvoiceCreateInput!) {
  lnInvoiceCreate(input: $input) {
    errors {
      ...ErrorFragment
    }
    invoice {
      ...LnInvoiceFragment
    }
  }
}
Variables
{"input": LnInvoiceCreateInput}
Response
{
  "data": {
    "lnInvoiceCreate": {
      "errors": [Error],
      "invoice": LnInvoice
    }
  }
}

lnInvoiceCreateOnBehalfOfRecipient

Description

Returns a lightning invoice for an associated wallet. When invoice is paid the value will be credited to a BTC wallet. Expires after 'expiresIn' or 24 hours.

Response

Returns a LnInvoicePayload!

Arguments
Name Description
input - LnInvoiceCreateOnBehalfOfRecipientInput!

Example

Query
mutation lnInvoiceCreateOnBehalfOfRecipient($input: LnInvoiceCreateOnBehalfOfRecipientInput!) {
  lnInvoiceCreateOnBehalfOfRecipient(input: $input) {
    errors {
      ...ErrorFragment
    }
    invoice {
      ...LnInvoiceFragment
    }
  }
}
Variables
{"input": LnInvoiceCreateOnBehalfOfRecipientInput}
Response
{
  "data": {
    "lnInvoiceCreateOnBehalfOfRecipient": {
      "errors": [Error],
      "invoice": LnInvoice
    }
  }
}

lnInvoiceFeeProbe

Response

Returns a SatAmountPayload!

Arguments
Name Description
input - LnInvoiceFeeProbeInput!

Example

Query
mutation lnInvoiceFeeProbe($input: LnInvoiceFeeProbeInput!) {
  lnInvoiceFeeProbe(input: $input) {
    amount
    errors {
      ...ErrorFragment
    }
  }
}
Variables
{"input": LnInvoiceFeeProbeInput}
Response
{
  "data": {
    "lnInvoiceFeeProbe": {
      "amount": SatAmount,
      "errors": [Error]
    }
  }
}

lnInvoicePaymentSend

Description

Pay a lightning invoice using a balance from a wallet which is owned by the account of the current user. Provided wallet can be USD or BTC and must have sufficient balance to cover amount in lightning invoice. Returns payment status (success, failed, pending, already_paid).

Response

Returns a PaymentSendPayload!

Arguments
Name Description
input - LnInvoicePaymentInput!

Example

Query
mutation lnInvoicePaymentSend($input: LnInvoicePaymentInput!) {
  lnInvoicePaymentSend(input: $input) {
    errors {
      ...ErrorFragment
    }
    status
    transaction {
      ...TransactionFragment
    }
  }
}
Variables
{"input": LnInvoicePaymentInput}
Response
{
  "data": {
    "lnInvoicePaymentSend": {
      "errors": [Error],
      "status": "ALREADY_PAID",
      "transaction": Transaction
    }
  }
}

lnNoAmountInvoiceCreate

Description

Returns a lightning invoice for an associated wallet. Can be used to receive any supported currency value (currently USD or BTC). Expires after 'expiresIn' or 24 hours for BTC invoices or 5 minutes for USD invoices.

Response

Returns a LnNoAmountInvoicePayload!

Arguments
Name Description
input - LnNoAmountInvoiceCreateInput!

Example

Query
mutation lnNoAmountInvoiceCreate($input: LnNoAmountInvoiceCreateInput!) {
  lnNoAmountInvoiceCreate(input: $input) {
    errors {
      ...ErrorFragment
    }
    invoice {
      ...LnNoAmountInvoiceFragment
    }
  }
}
Variables
{"input": LnNoAmountInvoiceCreateInput}
Response
{
  "data": {
    "lnNoAmountInvoiceCreate": {
      "errors": [Error],
      "invoice": LnNoAmountInvoice
    }
  }
}

lnNoAmountInvoiceCreateOnBehalfOfRecipient

Description

Returns a lightning invoice for an associated wallet. Can be used to receive any supported currency value (currently USD or BTC). Expires after 'expiresIn' or 24 hours for BTC invoices or 5 minutes for USD invoices.

Response

Returns a LnNoAmountInvoicePayload!

Arguments
Name Description
input - LnNoAmountInvoiceCreateOnBehalfOfRecipientInput!

Example

Query
mutation lnNoAmountInvoiceCreateOnBehalfOfRecipient($input: LnNoAmountInvoiceCreateOnBehalfOfRecipientInput!) {
  lnNoAmountInvoiceCreateOnBehalfOfRecipient(input: $input) {
    errors {
      ...ErrorFragment
    }
    invoice {
      ...LnNoAmountInvoiceFragment
    }
  }
}
Variables
{"input": LnNoAmountInvoiceCreateOnBehalfOfRecipientInput}
Response
{
  "data": {
    "lnNoAmountInvoiceCreateOnBehalfOfRecipient": {
      "errors": [Error],
      "invoice": LnNoAmountInvoice
    }
  }
}

lnNoAmountInvoiceFeeProbe

Response

Returns a SatAmountPayload!

Arguments
Name Description
input - LnNoAmountInvoiceFeeProbeInput!

Example

Query
mutation lnNoAmountInvoiceFeeProbe($input: LnNoAmountInvoiceFeeProbeInput!) {
  lnNoAmountInvoiceFeeProbe(input: $input) {
    amount
    errors {
      ...ErrorFragment
    }
  }
}
Variables
{"input": LnNoAmountInvoiceFeeProbeInput}
Response
{
  "data": {
    "lnNoAmountInvoiceFeeProbe": {
      "amount": SatAmount,
      "errors": [Error]
    }
  }
}

lnNoAmountInvoicePaymentSend

Description

Pay a lightning invoice using a balance from a wallet which is owned by the account of the current user. Provided wallet must be BTC and must have sufficient balance to cover amount specified in mutation request. Returns payment status (success, failed, pending, already_paid).

Response

Returns a PaymentSendPayload!

Arguments
Name Description
input - LnNoAmountInvoicePaymentInput!

Example

Query
mutation lnNoAmountInvoicePaymentSend($input: LnNoAmountInvoicePaymentInput!) {
  lnNoAmountInvoicePaymentSend(input: $input) {
    errors {
      ...ErrorFragment
    }
    status
    transaction {
      ...TransactionFragment
    }
  }
}
Variables
{"input": LnNoAmountInvoicePaymentInput}
Response
{
  "data": {
    "lnNoAmountInvoicePaymentSend": {
      "errors": [Error],
      "status": "ALREADY_PAID",
      "transaction": Transaction
    }
  }
}

lnNoAmountUsdInvoiceFeeProbe

Response

Returns a CentAmountPayload!

Arguments
Name Description
input - LnNoAmountUsdInvoiceFeeProbeInput!

Example

Query
mutation lnNoAmountUsdInvoiceFeeProbe($input: LnNoAmountUsdInvoiceFeeProbeInput!) {
  lnNoAmountUsdInvoiceFeeProbe(input: $input) {
    amount
    errors {
      ...ErrorFragment
    }
  }
}
Variables
{"input": LnNoAmountUsdInvoiceFeeProbeInput}
Response
{
  "data": {
    "lnNoAmountUsdInvoiceFeeProbe": {
      "amount": CentAmount,
      "errors": [Error]
    }
  }
}

lnNoAmountUsdInvoicePaymentSend

Description

Pay a lightning invoice using a balance from a wallet which is owned by the account of the current user. Provided wallet must be USD and have sufficient balance to cover amount specified in mutation request. Returns payment status (success, failed, pending, already_paid).

Response

Returns a PaymentSendPayload!

Arguments
Name Description
input - LnNoAmountUsdInvoicePaymentInput!

Example

Query
mutation lnNoAmountUsdInvoicePaymentSend($input: LnNoAmountUsdInvoicePaymentInput!) {
  lnNoAmountUsdInvoicePaymentSend(input: $input) {
    errors {
      ...ErrorFragment
    }
    status
    transaction {
      ...TransactionFragment
    }
  }
}
Variables
{"input": LnNoAmountUsdInvoicePaymentInput}
Response
{
  "data": {
    "lnNoAmountUsdInvoicePaymentSend": {
      "errors": [Error],
      "status": "ALREADY_PAID",
      "transaction": Transaction
    }
  }
}

lnUsdInvoiceBtcDenominatedCreateOnBehalfOfRecipient

Description

Returns a lightning invoice denominated in satoshis for an associated wallet. When invoice is paid the equivalent value at invoice creation will be credited to a USD wallet. Expires after 'expiresIn' or 5 minutes (short expiry time because there is a USD/BTC exchange rate associated with the amount).

Response

Returns a LnInvoicePayload!

Example

Query
mutation lnUsdInvoiceBtcDenominatedCreateOnBehalfOfRecipient($input: LnUsdInvoiceBtcDenominatedCreateOnBehalfOfRecipientInput!) {
  lnUsdInvoiceBtcDenominatedCreateOnBehalfOfRecipient(input: $input) {
    errors {
      ...ErrorFragment
    }
    invoice {
      ...LnInvoiceFragment
    }
  }
}
Variables
{
  "input": LnUsdInvoiceBtcDenominatedCreateOnBehalfOfRecipientInput
}
Response
{
  "data": {
    "lnUsdInvoiceBtcDenominatedCreateOnBehalfOfRecipient": {
      "errors": [Error],
      "invoice": LnInvoice
    }
  }
}

lnUsdInvoiceCreate

Description

Returns a lightning invoice denominated in satoshis for an associated wallet. When invoice is paid the equivalent value at invoice creation will be credited to a USD wallet. Expires after 'expiresIn' or 5 minutes (short expiry time because there is a USD/BTC exchange rate associated with the amount).

Response

Returns a LnInvoicePayload!

Arguments
Name Description
input - LnUsdInvoiceCreateInput!

Example

Query
mutation lnUsdInvoiceCreate($input: LnUsdInvoiceCreateInput!) {
  lnUsdInvoiceCreate(input: $input) {
    errors {
      ...ErrorFragment
    }
    invoice {
      ...LnInvoiceFragment
    }
  }
}
Variables
{"input": LnUsdInvoiceCreateInput}
Response
{
  "data": {
    "lnUsdInvoiceCreate": {
      "errors": [Error],
      "invoice": LnInvoice
    }
  }
}

lnUsdInvoiceCreateOnBehalfOfRecipient

Description

Returns a lightning invoice denominated in satoshis for an associated wallet. When invoice is paid the equivalent value at invoice creation will be credited to a USD wallet. Expires after 'expiresIn' or 5 minutes (short expiry time because there is a USD/BTC exchange rate associated with the amount).

Response

Returns a LnInvoicePayload!

Arguments
Name Description
input - LnUsdInvoiceCreateOnBehalfOfRecipientInput!

Example

Query
mutation lnUsdInvoiceCreateOnBehalfOfRecipient($input: LnUsdInvoiceCreateOnBehalfOfRecipientInput!) {
  lnUsdInvoiceCreateOnBehalfOfRecipient(input: $input) {
    errors {
      ...ErrorFragment
    }
    invoice {
      ...LnInvoiceFragment
    }
  }
}
Variables
{"input": LnUsdInvoiceCreateOnBehalfOfRecipientInput}
Response
{
  "data": {
    "lnUsdInvoiceCreateOnBehalfOfRecipient": {
      "errors": [Error],
      "invoice": LnInvoice
    }
  }
}

lnUsdInvoiceFeeProbe

Response

Returns a SatAmountPayload!

Arguments
Name Description
input - LnUsdInvoiceFeeProbeInput!

Example

Query
mutation lnUsdInvoiceFeeProbe($input: LnUsdInvoiceFeeProbeInput!) {
  lnUsdInvoiceFeeProbe(input: $input) {
    amount
    errors {
      ...ErrorFragment
    }
  }
}
Variables
{"input": LnUsdInvoiceFeeProbeInput}
Response
{
  "data": {
    "lnUsdInvoiceFeeProbe": {
      "amount": SatAmount,
      "errors": [Error]
    }
  }
}

lnurlPaymentSend

Description

Sends a payment to a lightning address.

Response

Returns a PaymentSendPayload!

Arguments
Name Description
input - LnurlPaymentSendInput!

Example

Query
mutation lnurlPaymentSend($input: LnurlPaymentSendInput!) {
  lnurlPaymentSend(input: $input) {
    errors {
      ...ErrorFragment
    }
    status
    transaction {
      ...TransactionFragment
    }
  }
}
Variables
{"input": LnurlPaymentSendInput}
Response
{
  "data": {
    "lnurlPaymentSend": {
      "errors": [Error],
      "status": "ALREADY_PAID",
      "transaction": Transaction
    }
  }
}

merchantMapSuggest

Response

Returns a MerchantPayload!

Arguments
Name Description
input - MerchantMapSuggestInput!

Example

Query
mutation merchantMapSuggest($input: MerchantMapSuggestInput!) {
  merchantMapSuggest(input: $input) {
    errors {
      ...ErrorFragment
    }
    merchant {
      ...MerchantFragment
    }
  }
}
Variables
{"input": MerchantMapSuggestInput}
Response
{
  "data": {
    "merchantMapSuggest": {
      "errors": [Error],
      "merchant": Merchant
    }
  }
}

onChainAddressCreate

Response

Returns an OnChainAddressPayload!

Arguments
Name Description
input - OnChainAddressCreateInput!

Example

Query
mutation onChainAddressCreate($input: OnChainAddressCreateInput!) {
  onChainAddressCreate(input: $input) {
    address
    errors {
      ...ErrorFragment
    }
  }
}
Variables
{"input": OnChainAddressCreateInput}
Response
{
  "data": {
    "onChainAddressCreate": {
      "address": OnChainAddress,
      "errors": [Error]
    }
  }
}

onChainAddressCurrent

Response

Returns an OnChainAddressPayload!

Arguments
Name Description
input - OnChainAddressCurrentInput!

Example

Query
mutation onChainAddressCurrent($input: OnChainAddressCurrentInput!) {
  onChainAddressCurrent(input: $input) {
    address
    errors {
      ...ErrorFragment
    }
  }
}
Variables
{"input": OnChainAddressCurrentInput}
Response
{
  "data": {
    "onChainAddressCurrent": {
      "address": OnChainAddress,
      "errors": [Error]
    }
  }
}

onChainPaymentSend

Response

Returns a PaymentSendPayload!

Arguments
Name Description
input - OnChainPaymentSendInput!

Example

Query
mutation onChainPaymentSend($input: OnChainPaymentSendInput!) {
  onChainPaymentSend(input: $input) {
    errors {
      ...ErrorFragment
    }
    status
    transaction {
      ...TransactionFragment
    }
  }
}
Variables
{"input": OnChainPaymentSendInput}
Response
{
  "data": {
    "onChainPaymentSend": {
      "errors": [Error],
      "status": "ALREADY_PAID",
      "transaction": Transaction
    }
  }
}

onChainPaymentSendAll

Response

Returns a PaymentSendPayload!

Arguments
Name Description
input - OnChainPaymentSendAllInput!

Example

Query
mutation onChainPaymentSendAll($input: OnChainPaymentSendAllInput!) {
  onChainPaymentSendAll(input: $input) {
    errors {
      ...ErrorFragment
    }
    status
    transaction {
      ...TransactionFragment
    }
  }
}
Variables
{"input": OnChainPaymentSendAllInput}
Response
{
  "data": {
    "onChainPaymentSendAll": {
      "errors": [Error],
      "status": "ALREADY_PAID",
      "transaction": Transaction
    }
  }
}

onChainUsdPaymentSend

Response

Returns a PaymentSendPayload!

Arguments
Name Description
input - OnChainUsdPaymentSendInput!

Example

Query
mutation onChainUsdPaymentSend($input: OnChainUsdPaymentSendInput!) {
  onChainUsdPaymentSend(input: $input) {
    errors {
      ...ErrorFragment
    }
    status
    transaction {
      ...TransactionFragment
    }
  }
}
Variables
{"input": OnChainUsdPaymentSendInput}
Response
{
  "data": {
    "onChainUsdPaymentSend": {
      "errors": [Error],
      "status": "ALREADY_PAID",
      "transaction": Transaction
    }
  }
}

onChainUsdPaymentSendAsBtcDenominated

Response

Returns a PaymentSendPayload!

Arguments
Name Description
input - OnChainUsdPaymentSendAsBtcDenominatedInput!

Example

Query
mutation onChainUsdPaymentSendAsBtcDenominated($input: OnChainUsdPaymentSendAsBtcDenominatedInput!) {
  onChainUsdPaymentSendAsBtcDenominated(input: $input) {
    errors {
      ...ErrorFragment
    }
    status
    transaction {
      ...TransactionFragment
    }
  }
}
Variables
{"input": OnChainUsdPaymentSendAsBtcDenominatedInput}
Response
{
  "data": {
    "onChainUsdPaymentSendAsBtcDenominated": {
      "errors": [Error],
      "status": "ALREADY_PAID",
      "transaction": Transaction
    }
  }
}

quizClaim

Response

Returns a QuizClaimPayload!

Arguments
Name Description
input - QuizClaimInput!

Example

Query
mutation quizClaim($input: QuizClaimInput!) {
  quizClaim(input: $input) {
    errors {
      ...ErrorFragment
    }
    quizzes {
      ...QuizFragment
    }
  }
}
Variables
{"input": QuizClaimInput}
Response
{
  "data": {
    "quizClaim": {
      "errors": [Error],
      "quizzes": [Quiz]
    }
  }
}

supportChatMessageAdd

Response

Returns a SupportChatMessageAddPayload!

Arguments
Name Description
input - SupportChatMessageAddInput!

Example

Query
mutation supportChatMessageAdd($input: SupportChatMessageAddInput!) {
  supportChatMessageAdd(input: $input) {
    errors {
      ...ErrorFragment
    }
    supportMessage {
      ...SupportMessageFragment
    }
  }
}
Variables
{"input": SupportChatMessageAddInput}
Response
{
  "data": {
    "supportChatMessageAdd": {
      "errors": [Error],
      "supportMessage": [SupportMessage]
    }
  }
}

supportChatReset

Response

Returns a SuccessPayload!

Example

Query
mutation supportChatReset {
  supportChatReset {
    errors {
      ...ErrorFragment
    }
    success
  }
}
Response
{
  "data": {
    "supportChatReset": {
      "errors": [Error],
      "success": false
    }
  }
}

userContactUpdateAlias

will be moved to AccountContact
Response

Returns a UserContactUpdateAliasPayload!

Arguments
Name Description
input - UserContactUpdateAliasInput!

Example

Query
mutation userContactUpdateAlias($input: UserContactUpdateAliasInput!) {
  userContactUpdateAlias(input: $input) {
    contact {
      ...UserContactFragment
    }
    errors {
      ...ErrorFragment
    }
  }
}
Variables
{"input": UserContactUpdateAliasInput}
Response
{
  "data": {
    "userContactUpdateAlias": {
      "contact": UserContact,
      "errors": [Error]
    }
  }
}

userEmailDelete

Response

Returns a UserEmailDeletePayload!

Example

Query
mutation userEmailDelete {
  userEmailDelete {
    errors {
      ...ErrorFragment
    }
    me {
      ...UserFragment
    }
  }
}
Response
{
  "data": {
    "userEmailDelete": {
      "errors": [Error],
      "me": User
    }
  }
}

userEmailRegistrationInitiate

Arguments
Name Description
input - UserEmailRegistrationInitiateInput!

Example

Query
mutation userEmailRegistrationInitiate($input: UserEmailRegistrationInitiateInput!) {
  userEmailRegistrationInitiate(input: $input) {
    emailRegistrationId
    errors {
      ...ErrorFragment
    }
    me {
      ...UserFragment
    }
  }
}
Variables
{"input": UserEmailRegistrationInitiateInput}
Response
{
  "data": {
    "userEmailRegistrationInitiate": {
      "emailRegistrationId": EmailRegistrationId,
      "errors": [Error],
      "me": User
    }
  }
}

userEmailRegistrationValidate

Arguments
Name Description
input - UserEmailRegistrationValidateInput!

Example

Query
mutation userEmailRegistrationValidate($input: UserEmailRegistrationValidateInput!) {
  userEmailRegistrationValidate(input: $input) {
    errors {
      ...ErrorFragment
    }
    me {
      ...UserFragment
    }
  }
}
Variables
{"input": UserEmailRegistrationValidateInput}
Response
{
  "data": {
    "userEmailRegistrationValidate": {
      "errors": [Error],
      "me": User
    }
  }
}

userLogin

Response

Returns an AuthTokenPayload!

Arguments
Name Description
input - UserLoginInput!

Example

Query
mutation userLogin($input: UserLoginInput!) {
  userLogin(input: $input) {
    authToken
    errors {
      ...ErrorFragment
    }
    totpRequired
  }
}
Variables
{"input": UserLoginInput}
Response
{
  "data": {
    "userLogin": {
      "authToken": AuthToken,
      "errors": [Error],
      "totpRequired": true
    }
  }
}

userLoginUpgrade

Response

Returns an UpgradePayload!

Arguments
Name Description
input - UserLoginUpgradeInput!

Example

Query
mutation userLoginUpgrade($input: UserLoginUpgradeInput!) {
  userLoginUpgrade(input: $input) {
    authToken
    errors {
      ...ErrorFragment
    }
    success
  }
}
Variables
{"input": UserLoginUpgradeInput}
Response
{
  "data": {
    "userLoginUpgrade": {
      "authToken": AuthToken,
      "errors": [Error],
      "success": true
    }
  }
}

userLogout

Response

Returns a SuccessPayload!

Arguments
Name Description
input - UserLogoutInput

Example

Query
mutation userLogout($input: UserLogoutInput) {
  userLogout(input: $input) {
    errors {
      ...ErrorFragment
    }
    success
  }
}
Variables
{"input": UserLogoutInput}
Response
{
  "data": {
    "userLogout": {"errors": [Error], "success": false}
  }
}

userPhoneDelete

Response

Returns a UserPhoneDeletePayload!

Example

Query
mutation userPhoneDelete {
  userPhoneDelete {
    errors {
      ...ErrorFragment
    }
    me {
      ...UserFragment
    }
  }
}
Response
{
  "data": {
    "userPhoneDelete": {
      "errors": [Error],
      "me": User
    }
  }
}

userPhoneRegistrationInitiate

Response

Returns a SuccessPayload!

Arguments
Name Description
input - UserPhoneRegistrationInitiateInput!

Example

Query
mutation userPhoneRegistrationInitiate($input: UserPhoneRegistrationInitiateInput!) {
  userPhoneRegistrationInitiate(input: $input) {
    errors {
      ...ErrorFragment
    }
    success
  }
}
Variables
{"input": UserPhoneRegistrationInitiateInput}
Response
{
  "data": {
    "userPhoneRegistrationInitiate": {
      "errors": [Error],
      "success": true
    }
  }
}

userPhoneRegistrationValidate

Arguments
Name Description
input - UserPhoneRegistrationValidateInput!

Example

Query
mutation userPhoneRegistrationValidate($input: UserPhoneRegistrationValidateInput!) {
  userPhoneRegistrationValidate(input: $input) {
    errors {
      ...ErrorFragment
    }
    me {
      ...UserFragment
    }
  }
}
Variables
{"input": UserPhoneRegistrationValidateInput}
Response
{
  "data": {
    "userPhoneRegistrationValidate": {
      "errors": [Error],
      "me": User
    }
  }
}

userTotpDelete

Response

Returns a UserTotpDeletePayload!

Example

Query
mutation userTotpDelete {
  userTotpDelete {
    errors {
      ...ErrorFragment
    }
    me {
      ...UserFragment
    }
  }
}
Response
{
  "data": {
    "userTotpDelete": {
      "errors": [Error],
      "me": User
    }
  }
}

userTotpRegistrationInitiate

Example

Query
mutation userTotpRegistrationInitiate {
  userTotpRegistrationInitiate {
    errors {
      ...ErrorFragment
    }
    totpRegistrationId
    totpSecret
  }
}
Response
{
  "data": {
    "userTotpRegistrationInitiate": {
      "errors": [Error],
      "totpRegistrationId": TotpRegistrationId,
      "totpSecret": TotpSecret
    }
  }
}

userTotpRegistrationValidate

Arguments
Name Description
input - UserTotpRegistrationValidateInput!

Example

Query
mutation userTotpRegistrationValidate($input: UserTotpRegistrationValidateInput!) {
  userTotpRegistrationValidate(input: $input) {
    errors {
      ...ErrorFragment
    }
    me {
      ...UserFragment
    }
  }
}
Variables
{"input": UserTotpRegistrationValidateInput}
Response
{
  "data": {
    "userTotpRegistrationValidate": {
      "errors": [Error],
      "me": User
    }
  }
}

userUpdateLanguage

Response

Returns a UserUpdateLanguagePayload!

Arguments
Name Description
input - UserUpdateLanguageInput!

Example

Query
mutation userUpdateLanguage($input: UserUpdateLanguageInput!) {
  userUpdateLanguage(input: $input) {
    errors {
      ...ErrorFragment
    }
    user {
      ...UserFragment
    }
  }
}
Variables
{"input": UserUpdateLanguageInput}
Response
{
  "data": {
    "userUpdateLanguage": {
      "errors": [Error],
      "user": User
    }
  }
}

userUpdateUsername

Username will be moved to @Handle in Accounts. Also SetUsername naming should be used instead of UpdateUsername to reflect the idempotency of Handles
Response

Returns a UserUpdateUsernamePayload!

Arguments
Name Description
input - UserUpdateUsernameInput!

Example

Query
mutation userUpdateUsername($input: UserUpdateUsernameInput!) {
  userUpdateUsername(input: $input) {
    errors {
      ...ErrorFragment
    }
    user {
      ...UserFragment
    }
  }
}
Variables
{"input": UserUpdateUsernameInput}
Response
{
  "data": {
    "userUpdateUsername": {
      "errors": [Error],
      "user": User
    }
  }
}

Subscriptions

lnInvoicePaymentStatus

Deprecated in favor of lnInvoicePaymentStatusByPaymentRequest
Response

Returns a LnInvoicePaymentStatusPayload!

Arguments
Name Description
input - LnInvoicePaymentStatusInput!

Example

Query
subscription lnInvoicePaymentStatus($input: LnInvoicePaymentStatusInput!) {
  lnInvoicePaymentStatus(input: $input) {
    errors {
      ...ErrorFragment
    }
    paymentHash
    paymentRequest
    status
  }
}
Variables
{"input": LnInvoicePaymentStatusInput}
Response
{
  "data": {
    "lnInvoicePaymentStatus": {
      "errors": [Error],
      "paymentHash": PaymentHash,
      "paymentRequest": LnPaymentRequest,
      "status": "EXPIRED"
    }
  }
}

lnInvoicePaymentStatusByHash

Response

Returns a LnInvoicePaymentStatusPayload!

Arguments
Name Description
input - LnInvoicePaymentStatusByHashInput!

Example

Query
subscription lnInvoicePaymentStatusByHash($input: LnInvoicePaymentStatusByHashInput!) {
  lnInvoicePaymentStatusByHash(input: $input) {
    errors {
      ...ErrorFragment
    }
    paymentHash
    paymentRequest
    status
  }
}
Variables
{"input": LnInvoicePaymentStatusByHashInput}
Response
{
  "data": {
    "lnInvoicePaymentStatusByHash": {
      "errors": [Error],
      "paymentHash": PaymentHash,
      "paymentRequest": LnPaymentRequest,
      "status": "EXPIRED"
    }
  }
}

lnInvoicePaymentStatusByPaymentRequest

Response

Returns a LnInvoicePaymentStatusPayload!

Arguments
Name Description
input - LnInvoicePaymentStatusByPaymentRequestInput!

Example

Query
subscription lnInvoicePaymentStatusByPaymentRequest($input: LnInvoicePaymentStatusByPaymentRequestInput!) {
  lnInvoicePaymentStatusByPaymentRequest(input: $input) {
    errors {
      ...ErrorFragment
    }
    paymentHash
    paymentRequest
    status
  }
}
Variables
{"input": LnInvoicePaymentStatusByPaymentRequestInput}
Response
{
  "data": {
    "lnInvoicePaymentStatusByPaymentRequest": {
      "errors": [Error],
      "paymentHash": PaymentHash,
      "paymentRequest": LnPaymentRequest,
      "status": "EXPIRED"
    }
  }
}

myUpdates

Response

Returns a MyUpdatesPayload!

Example

Query
subscription myUpdates {
  myUpdates {
    errors {
      ...ErrorFragment
    }
    me {
      ...UserFragment
    }
    update {
      ... on IntraLedgerUpdate {
        ...IntraLedgerUpdateFragment
      }
      ... on LnUpdate {
        ...LnUpdateFragment
      }
      ... on OnChainUpdate {
        ...OnChainUpdateFragment
      }
      ... on Price {
        ...PriceFragment
      }
      ... on RealtimePrice {
        ...RealtimePriceFragment
      }
    }
  }
}
Response
{
  "data": {
    "myUpdates": {
      "errors": [Error],
      "me": User,
      "update": IntraLedgerUpdate
    }
  }
}

price

Response

Returns a PricePayload!

Arguments
Name Description
input - PriceInput!

Example

Query
subscription price($input: PriceInput!) {
  price(input: $input) {
    errors {
      ...ErrorFragment
    }
    price {
      ...PriceFragment
    }
  }
}
Variables
{"input": PriceInput}
Response
{
  "data": {
    "price": {
      "errors": [Error],
      "price": Price
    }
  }
}

realtimePrice

Description

Returns the price of 1 satoshi

Response

Returns a RealtimePricePayload!

Arguments
Name Description
input - RealtimePriceInput!

Example

Query
subscription realtimePrice($input: RealtimePriceInput!) {
  realtimePrice(input: $input) {
    errors {
      ...ErrorFragment
    }
    realtimePrice {
      ...RealtimePriceFragment
    }
  }
}
Variables
{"input": RealtimePriceInput}
Response
{
  "data": {
    "realtimePrice": {
      "errors": [Error],
      "realtimePrice": RealtimePrice
    }
  }
}

Types

Account

Fields
Field Name Description
callbackEndpoints - [CallbackEndpoint!]!
callbackPortalUrl - String!
csvTransactions - String!
Arguments
walletIds - [WalletId!]!
defaultWallet - PublicWallet!
defaultWalletId - WalletId! Shifting property to 'defaultWallet.id'
displayCurrency - DisplayCurrency!
id - ID!
invoices - InvoiceConnection
Arguments
after - String

Returns the items in the list that come after the specified cursor.

before - String

Returns the items in the list that come before the specified cursor.

first - Int

Returns the first n items from the list.

last - Int

Returns the last n items from the list.

walletIds - [WalletId]
level - AccountLevel!
limits - AccountLimits!
notificationSettings - NotificationSettings!
pendingIncomingTransactions - [Transaction!]!
Arguments
walletIds - [WalletId]
realtimePrice - RealtimePrice!
transactions - TransactionConnection
Arguments
after - String

Returns the items in the list that come after the specified cursor.

before - String

Returns the items in the list that come before the specified cursor.

first - Int

Returns the first n items from the list.

last - Int

Returns the last n items from the list.

walletIds - [WalletId]
walletById - Wallet!
Arguments
walletId - WalletId!
wallets - [Wallet!]!
Possible Types
Account Types

ConsumerAccount

Example
{
  "callbackEndpoints": [CallbackEndpoint],
  "callbackPortalUrl": "abc123",
  "csvTransactions": "xyz789",
  "defaultWallet": PublicWallet,
  "defaultWalletId": WalletId,
  "displayCurrency": DisplayCurrency,
  "id": 4,
  "invoices": InvoiceConnection,
  "level": "ONE",
  "limits": AccountLimits,
  "notificationSettings": NotificationSettings,
  "pendingIncomingTransactions": [Transaction],
  "realtimePrice": RealtimePrice,
  "transactions": TransactionConnection,
  "walletById": Wallet,
  "wallets": [Wallet]
}

AccountDeletePayload

Fields
Field Name Description
errors - [Error!]!
success - Boolean!
Example
{"errors": [Error], "success": false}

AccountDisableNotificationCategoryInput

Fields
Input Field Description
category - NotificationCategory!
channel - NotificationChannel
Example
{"category": NotificationCategory, "channel": "PUSH"}

AccountDisableNotificationChannelInput

Fields
Input Field Description
channel - NotificationChannel!
Example
{"channel": "PUSH"}

AccountEnableNotificationCategoryInput

Fields
Input Field Description
category - NotificationCategory!
channel - NotificationChannel
Example
{"category": NotificationCategory, "channel": "PUSH"}

AccountEnableNotificationChannelInput

Fields
Input Field Description
channel - NotificationChannel!
Example
{"channel": "PUSH"}

AccountLevel

Values
Enum Value Description

ONE

THREE

TWO

ZERO

Example
"ONE"

AccountLimit

Fields
Field Name Description
interval - Seconds The rolling time interval in seconds that the limits would apply for.
remainingLimit - CentAmount The amount of cents remaining below the limit for the current 24 hour period.
totalLimit - CentAmount! The current maximum limit for a given 24 hour period.
Possible Types
AccountLimit Types

OneDayAccountLimit

Example
{
  "interval": Seconds,
  "remainingLimit": CentAmount,
  "totalLimit": CentAmount
}

AccountLimits

Fields
Field Name Description
convert - [AccountLimit!]! Limits for converting between currencies among a account's own wallets.
internalSend - [AccountLimit!]! Limits for sending to other internal accounts.
withdrawal - [AccountLimit!]! Limits for withdrawing to external onchain or lightning destinations.
Example
{
  "convert": [AccountLimit],
  "internalSend": [AccountLimit],
  "withdrawal": [AccountLimit]
}

AccountUpdateDefaultWalletIdInput

Fields
Input Field Description
walletId - WalletId!
Example
{"walletId": WalletId}

AccountUpdateDefaultWalletIdPayload

Fields
Field Name Description
account - ConsumerAccount
errors - [Error!]!
Example
{
  "account": ConsumerAccount,
  "errors": [Error]
}

AccountUpdateDisplayCurrencyInput

Fields
Input Field Description
currency - DisplayCurrency!
Example
{"currency": DisplayCurrency}

AccountUpdateDisplayCurrencyPayload

Fields
Field Name Description
account - ConsumerAccount
errors - [Error!]!
Example
{
  "account": ConsumerAccount,
  "errors": [Error]
}

AccountUpdateNotificationSettingsPayload

Fields
Field Name Description
account - ConsumerAccount
errors - [Error!]!
Example
{
  "account": ConsumerAccount,
  "errors": [Error]
}

AuthToken

Description

An Opaque Bearer token

Example
AuthToken

AuthTokenPayload

Fields
Field Name Description
authToken - AuthToken
errors - [Error!]!
totpRequired - Boolean
Example
{
  "authToken": AuthToken,
  "errors": [Error],
  "totpRequired": true
}

Authorization

Fields
Field Name Description
scopes - [Scope!]!
Example
{"scopes": ["READ"]}

BTCWallet

Description

A wallet belonging to an account which contains a BTC balance and a list of transactions.

Fields
Field Name Description
accountId - ID!
balance - SignedAmount! A balance stored in BTC.
id - ID!
invoiceByPaymentHash - Invoice!
Arguments
paymentHash - PaymentHash!
invoices - InvoiceConnection A list of all invoices associated with walletIds optionally passed.
Arguments
after - String

Returns the items in the list that come after the specified cursor.

before - String

Returns the items in the list that come before the specified cursor.

first - Int

Returns the first n items from the list.

last - Int

Returns the last n items from the list.

pendingIncomingBalance - SignedAmount! An unconfirmed incoming onchain balance.
pendingIncomingTransactions - [Transaction!]!
pendingIncomingTransactionsByAddress - [Transaction!]!
Arguments
address - OnChainAddress!

Returns the items that include this address.

transactionById - Transaction!
Arguments
transactionId - ID!
transactions - TransactionConnection A list of BTC transactions associated with this wallet.
Arguments
after - String

Returns the items in the list that come after the specified cursor.

before - String

Returns the items in the list that come before the specified cursor.

first - Int

Returns the first n items from the list.

last - Int

Returns the last n items from the list.

transactionsByAddress - TransactionConnection
Arguments
address - OnChainAddress!

Returns the items that include this address.

after - String

Returns the items in the list that come after the specified cursor.

before - String

Returns the items in the list that come before the specified cursor.

first - Int

Returns the first n items from the list.

last - Int

Returns the last n items from the list.

transactionsByPaymentHash - [Transaction!]!
Arguments
paymentHash - PaymentHash!
transactionsByPaymentRequest - [Transaction!]!
Arguments
paymentRequest - LnPaymentRequest!
walletCurrency - WalletCurrency!
Example
{
  "accountId": "4",
  "balance": SignedAmount,
  "id": "4",
  "invoiceByPaymentHash": Invoice,
  "invoices": InvoiceConnection,
  "pendingIncomingBalance": SignedAmount,
  "pendingIncomingTransactions": [Transaction],
  "pendingIncomingTransactionsByAddress": [Transaction],
  "transactionById": Transaction,
  "transactions": TransactionConnection,
  "transactionsByAddress": TransactionConnection,
  "transactionsByPaymentHash": [Transaction],
  "transactionsByPaymentRequest": [Transaction],
  "walletCurrency": "BTC"
}

Boolean

Description

The Boolean scalar type represents true or false.

Example
true

BuildInformation

Fields
Field Name Description
commitHash - String
helmRevision - Int
Example
{
  "commitHash": "abc123",
  "helmRevision": 987
}

CallbackEndpoint

Fields
Field Name Description
id - EndpointId!
url - EndpointUrl!
Example
{
  "id": EndpointId,
  "url": EndpointUrl
}

CallbackEndpointAddInput

Fields
Input Field Description
url - EndpointUrl! callback endpoint to be called
Example
{"url": EndpointUrl}

CallbackEndpointAddPayload

Fields
Field Name Description
errors - [Error!]!
id - EndpointId
Example
{
  "errors": [Error],
  "id": EndpointId
}

CallbackEndpointDeleteInput

Fields
Input Field Description
id - EndpointId!
Example
{"id": EndpointId}

CaptchaCreateChallengePayload

Fields
Field Name Description
errors - [Error!]!
result - CaptchaCreateChallengeResult
Example
{
  "errors": [Error],
  "result": CaptchaCreateChallengeResult
}

CaptchaCreateChallengeResult

Fields
Field Name Description
challengeCode - String!
failbackMode - Boolean!
id - String!
newCaptcha - Boolean!
Example
{
  "challengeCode": "abc123",
  "failbackMode": true,
  "id": "xyz789",
  "newCaptcha": false
}

CaptchaRequestAuthCodeInput

Fields
Input Field Description
challengeCode - String!
channel - PhoneCodeChannelType
phone - Phone!
secCode - String!
validationCode - String!
Example
{
  "challengeCode": "abc123",
  "channel": "SMS",
  "phone": Phone,
  "secCode": "abc123",
  "validationCode": "abc123"
}

CentAmount

Description

(Positive) Cent amount (1/100 of a dollar)

Example
CentAmount

CentAmountPayload

Fields
Field Name Description
amount - CentAmount
errors - [Error!]!
Example
{
  "amount": CentAmount,
  "errors": [Error]
}

ConsumerAccount

Fields
Field Name Description
callbackEndpoints - [CallbackEndpoint!]!
callbackPortalUrl - String!
csvTransactions - String! return CSV stream, base64 encoded, of the list of transactions in the wallet
Arguments
walletIds - [WalletId!]!
defaultWallet - PublicWallet!
defaultWalletId - WalletId!
displayCurrency - DisplayCurrency!
id - ID!
invoices - InvoiceConnection A list of all invoices associated with walletIds optionally passed.
Arguments
after - String

Returns the items in the list that come after the specified cursor.

before - String

Returns the items in the list that come before the specified cursor.

first - Int

Returns the first n items from the list.

last - Int

Returns the last n items from the list.

walletIds - [WalletId]
level - AccountLevel!
limits - AccountLimits!
notificationSettings - NotificationSettings!
pendingIncomingTransactions - [Transaction!]!
Arguments
walletIds - [WalletId]
quiz - [Quiz!]! List the quiz questions of the consumer account
realtimePrice - RealtimePrice!
transactions - TransactionConnection A list of all transactions associated with walletIds optionally passed.
Arguments
after - String

Returns the items in the list that come after the specified cursor.

before - String

Returns the items in the list that come before the specified cursor.

first - Int

Returns the first n items from the list.

last - Int

Returns the last n items from the list.

walletIds - [WalletId]
walletById - Wallet!
Arguments
walletId - WalletId!
wallets - [Wallet!]!
Example
{
  "callbackEndpoints": [CallbackEndpoint],
  "callbackPortalUrl": "xyz789",
  "csvTransactions": "xyz789",
  "defaultWallet": PublicWallet,
  "defaultWalletId": WalletId,
  "displayCurrency": DisplayCurrency,
  "id": 4,
  "invoices": InvoiceConnection,
  "level": "ONE",
  "limits": AccountLimits,
  "notificationSettings": NotificationSettings,
  "pendingIncomingTransactions": [Transaction],
  "quiz": [Quiz],
  "realtimePrice": RealtimePrice,
  "transactions": TransactionConnection,
  "walletById": Wallet,
  "wallets": [Wallet]
}

ContactAlias

Description

An alias name that a user can set for a wallet (with which they have transactions)

Example
ContactAlias

Coordinates

Fields
Field Name Description
latitude - Float!
longitude - Float!
Example
{"latitude": 987.65, "longitude": 987.65}

Country

Fields
Field Name Description
id - CountryCode!
supportedAuthChannels - [PhoneCodeChannelType!]!
Example
{
  "id": "US",
  "supportedAuthChannels": ["SMS"]
}

CountryCode

Description

A CCA2 country code (ex US, FR, etc)

Example
"US"

Currency

Fields
Field Name Description
flag - String!
fractionDigits - Int!
id - ID!
name - String!
symbol - String!
Example
{
  "flag": "xyz789",
  "fractionDigits": 123,
  "id": "4",
  "name": "abc123",
  "symbol": "xyz789"
}

CurrencyConversionEstimation

Fields
Field Name Description
btcSatAmount - SatAmount! Amount in satoshis.
id - ID!
timestamp - Timestamp! Unix timestamp (number of seconds elapsed since January 1, 1970 00:00:00 UTC)
usdCentAmount - CentAmount! Amount in USD cents.
Example
{
  "btcSatAmount": SatAmount,
  "id": 4,
  "timestamp": 1592577642,
  "usdCentAmount": CentAmount
}

DepositFeesInformation

Fields
Field Name Description
minBankFee - String!
minBankFeeThreshold - String! below this amount minBankFee will be charged
ratio - String! ratio to charge as basis points above minBankFeeThreshold amount
Example
{
  "minBankFee": "xyz789",
  "minBankFeeThreshold": "abc123",
  "ratio": "abc123"
}

DeviceNotificationTokenCreateInput

Fields
Input Field Description
deviceToken - String!
Example
{"deviceToken": "abc123"}

DisplayCurrency

Description

Display currency of an account

Example
DisplayCurrency

Email

Fields
Field Name Description
address - EmailAddress
verified - Boolean
Example
{
  "address": "test@test.com",
  "verified": false
}

EmailAddress

Description

Email address

Example
"test@test.com"

EmailRegistrationId

Description

An id to be passed between registrationInitiate and registrationValidate for confirming email

Example
EmailRegistrationId

EndpointId

Example
EndpointId

EndpointUrl

Description

Url that will be fetched on events for the account

Example
EndpointUrl

Error

Fields
Field Name Description
code - String
message - String!
path - [String]
Possible Types
Error Types

GraphQLApplicationError

Example
{
  "code": "abc123",
  "message": "abc123",
  "path": ["xyz789"]
}

ExchangeCurrencyUnit

Values
Enum Value Description

BTCSAT

USDCENT

Example
"BTCSAT"

Feedback

Description

Feedback shared with our user

Example
Feedback

FeedbackSubmitInput

Fields
Input Field Description
feedback - Feedback!
Example
{"feedback": Feedback}

FeesInformation

Fields
Field Name Description
deposit - DepositFeesInformation!
Example
{"deposit": DepositFeesInformation}

Float

Description

The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.

Example
123.45

Globals

Description

Provides global settings for the application which might have an impact for the user.

Fields
Field Name Description
buildInformation - BuildInformation!
feesInformation - FeesInformation!
lightningAddressDomain - String! The domain name for lightning addresses accepted by this Galoy instance
lightningAddressDomainAliases - [String!]!
network - Network! Which network (mainnet, testnet, regtest, signet) this instance is running on.
nodesIds - [String!]! A list of public keys for the running lightning nodes. This can be used to know if an invoice belongs to one of our nodes.
supportedCountries - [Country!]! A list of countries and their supported auth channels
Example
{
  "buildInformation": BuildInformation,
  "feesInformation": FeesInformation,
  "lightningAddressDomain": "abc123",
  "lightningAddressDomainAliases": [
    "abc123"
  ],
  "network": "mainnet",
  "nodesIds": ["xyz789"],
  "supportedCountries": [Country]
}

GraphQLApplicationError

Fields
Field Name Description
code - String
message - String!
path - [String]
Example
{
  "code": "xyz789",
  "message": "abc123",
  "path": ["xyz789"]
}

Hex32Bytes

Description

Hex-encoded string of 32 bytes

Example
Hex32Bytes

ID

Description

The ID scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4") or integer (such as 4) input value will be accepted as an ID.

Example
4

InitiationVia

Example
InitiationViaIntraLedger

InitiationViaIntraLedger

Fields
Field Name Description
counterPartyUsername - Username
counterPartyWalletId - WalletId
Example
{
  "counterPartyUsername": Username,
  "counterPartyWalletId": WalletId
}

InitiationViaLn

Fields
Field Name Description
paymentHash - PaymentHash!
paymentRequest - LnPaymentRequest! Bolt11 invoice
Example
{
  "paymentHash": PaymentHash,
  "paymentRequest": LnPaymentRequest
}

InitiationViaOnChain

Fields
Field Name Description
address - OnChainAddress!
Example
{"address": OnChainAddress}

Int

Description

The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

Example
987

IntraLedgerPaymentSendInput

Fields
Input Field Description
amount - SatAmount! Amount in satoshis.
memo - Memo Optional memo to be attached to the payment.
recipientWalletId - WalletId!
walletId - WalletId! The wallet ID of the sender.
Example
{
  "amount": SatAmount,
  "memo": Memo,
  "recipientWalletId": WalletId,
  "walletId": WalletId
}

IntraLedgerUpdate

Fields
Field Name Description
amount - SatAmount! Deprecated in favor of transaction
displayCurrencyPerSat - Float! Deprecated in favor of transaction
transaction - Transaction!
txNotificationType - TxNotificationType!
usdPerSat - Float! updated over displayCurrencyPerSat
walletId - WalletId! Deprecated in favor of transaction
Example
{
  "amount": SatAmount,
  "displayCurrencyPerSat": 123.45,
  "transaction": Transaction,
  "txNotificationType": "IntraLedgerPayment",
  "usdPerSat": 123.45,
  "walletId": WalletId
}

IntraLedgerUsdPaymentSendInput

Fields
Input Field Description
amount - CentAmount! Amount in cents.
memo - Memo Optional memo to be attached to the payment.
recipientWalletId - WalletId!
walletId - WalletId! The wallet ID of the sender.
Example
{
  "amount": CentAmount,
  "memo": Memo,
  "recipientWalletId": WalletId,
  "walletId": WalletId
}

Invoice

Description

A lightning invoice.

Fields
Field Name Description
createdAt - Timestamp!
externalId - TxExternalId! The unique external id set for the invoice.
paymentHash - PaymentHash! The payment hash of the lightning invoice.
paymentRequest - LnPaymentRequest! The bolt11 invoice to be paid.
paymentSecret - LnPaymentSecret! The payment secret of the lightning invoice. This is not the preimage of the payment hash.
paymentStatus - InvoicePaymentStatus! The payment status of the invoice.
Possible Types
Invoice Types

LnInvoice

LnNoAmountInvoice

Example
{
  "createdAt": 1592577642,
  "externalId": TxExternalId,
  "paymentHash": PaymentHash,
  "paymentRequest": LnPaymentRequest,
  "paymentSecret": LnPaymentSecret,
  "paymentStatus": "EXPIRED"
}

InvoiceConnection

Description

A connection to a list of items.

Fields
Field Name Description
edges - [InvoiceEdge!] A list of edges.
pageInfo - PageInfo! Information to aid in pagination.
Example
{
  "edges": [InvoiceEdge],
  "pageInfo": PageInfo
}

InvoiceEdge

Description

An edge in a connection.

Fields
Field Name Description
cursor - String! A cursor for use in pagination
node - Invoice! The item at the end of the edge
Example
{
  "cursor": "xyz789",
  "node": Invoice
}

InvoicePaymentStatus

Values
Enum Value Description

EXPIRED

PAID

PENDING

Example
"EXPIRED"

Language

Example
Language

LnAddressPaymentSendInput

Fields
Input Field Description
amount - SatAmount! Amount in satoshis.
lnAddress - String! Lightning address to send to.
walletId - WalletId! Wallet ID to send bitcoin from.
Example
{
  "amount": SatAmount,
  "lnAddress": "xyz789",
  "walletId": WalletId
}

LnInvoice

Fields
Field Name Description
createdAt - Timestamp!
externalId - TxExternalId!
paymentHash - PaymentHash!
paymentRequest - LnPaymentRequest!
paymentSecret - LnPaymentSecret!
paymentStatus - InvoicePaymentStatus!
satoshis - SatAmount!
Example
{
  "createdAt": 1592577642,
  "externalId": TxExternalId,
  "paymentHash": PaymentHash,
  "paymentRequest": LnPaymentRequest,
  "paymentSecret": LnPaymentSecret,
  "paymentStatus": "EXPIRED",
  "satoshis": SatAmount
}

LnInvoiceCancelInput

Fields
Input Field Description
paymentHash - PaymentHash!
walletId - WalletId! Wallet ID for a wallet associated with the current account.
Example
{
  "paymentHash": PaymentHash,
  "walletId": WalletId
}

LnInvoiceCreateInput

Fields
Input Field Description
amount - SatAmount! Amount in satoshis.
expiresIn - Minutes Optional invoice expiration time in minutes.
externalId - TxExternalId
memo - Memo Optional memo for the lightning invoice.
walletId - WalletId! Wallet ID for a BTC wallet belonging to the current account.
Example
{
  "amount": SatAmount,
  "expiresIn": Minutes,
  "externalId": TxExternalId,
  "memo": Memo,
  "walletId": WalletId
}

LnInvoiceCreateOnBehalfOfRecipientInput

Fields
Input Field Description
amount - SatAmount! Amount in satoshis.
descriptionHash - Hex32Bytes
expiresIn - Minutes Optional invoice expiration time in minutes.
externalId - TxExternalId
memo - Memo Optional memo for the lightning invoice.
recipientWalletId - WalletId! Wallet ID for a BTC wallet which belongs to any account.
Example
{
  "amount": SatAmount,
  "descriptionHash": Hex32Bytes,
  "expiresIn": Minutes,
  "externalId": TxExternalId,
  "memo": Memo,
  "recipientWalletId": WalletId
}

LnInvoiceFeeProbeInput

Fields
Input Field Description
paymentRequest - LnPaymentRequest!
walletId - WalletId!
Example
{
  "paymentRequest": LnPaymentRequest,
  "walletId": WalletId
}

LnInvoicePayload

Fields
Field Name Description
errors - [Error!]!
invoice - LnInvoice
Example
{
  "errors": [Error],
  "invoice": LnInvoice
}

LnInvoicePaymentInput

Fields
Input Field Description
memo - Memo Optional memo to associate with the lightning invoice.
paymentRequest - LnPaymentRequest! Payment request representing the invoice which is being paid.
walletId - WalletId! Wallet ID with sufficient balance to cover amount of invoice. Must belong to the account of the current user.
Example
{
  "memo": Memo,
  "paymentRequest": LnPaymentRequest,
  "walletId": WalletId
}

LnInvoicePaymentStatus

Fields
Field Name Description
paymentHash - PaymentHash
paymentRequest - LnPaymentRequest
status - InvoicePaymentStatus
Example
{
  "paymentHash": PaymentHash,
  "paymentRequest": LnPaymentRequest,
  "status": "EXPIRED"
}

LnInvoicePaymentStatusByHashInput

Fields
Input Field Description
paymentHash - PaymentHash!
Example
{"paymentHash": PaymentHash}

LnInvoicePaymentStatusByPaymentRequestInput

Fields
Input Field Description
paymentRequest - LnPaymentRequest!
Example
{"paymentRequest": LnPaymentRequest}

LnInvoicePaymentStatusInput

Fields
Input Field Description
paymentRequest - LnPaymentRequest!
Example
{"paymentRequest": LnPaymentRequest}

LnInvoicePaymentStatusPayload

Fields
Field Name Description
errors - [Error!]!
paymentHash - PaymentHash
paymentRequest - LnPaymentRequest
status - InvoicePaymentStatus
Example
{
  "errors": [Error],
  "paymentHash": PaymentHash,
  "paymentRequest": LnPaymentRequest,
  "status": "EXPIRED"
}

LnNoAmountInvoice

Fields
Field Name Description
createdAt - Timestamp!
externalId - TxExternalId!
paymentHash - PaymentHash!
paymentRequest - LnPaymentRequest!
paymentSecret - LnPaymentSecret!
paymentStatus - InvoicePaymentStatus!
Example
{
  "createdAt": 1592577642,
  "externalId": TxExternalId,
  "paymentHash": PaymentHash,
  "paymentRequest": LnPaymentRequest,
  "paymentSecret": LnPaymentSecret,
  "paymentStatus": "EXPIRED"
}

LnNoAmountInvoiceCreateInput

Fields
Input Field Description
expiresIn - Minutes Optional invoice expiration time in minutes.
externalId - TxExternalId
memo - Memo Optional memo for the lightning invoice.
walletId - WalletId! ID for either a USD or BTC wallet belonging to the account of the current user.
Example
{
  "expiresIn": Minutes,
  "externalId": TxExternalId,
  "memo": Memo,
  "walletId": WalletId
}

LnNoAmountInvoiceCreateOnBehalfOfRecipientInput

Fields
Input Field Description
expiresIn - Minutes Optional invoice expiration time in minutes.
externalId - TxExternalId
memo - Memo Optional memo for the lightning invoice.
recipientWalletId - WalletId! ID for either a USD or BTC wallet which belongs to the account of any user.
Example
{
  "expiresIn": Minutes,
  "externalId": TxExternalId,
  "memo": Memo,
  "recipientWalletId": WalletId
}

LnNoAmountInvoiceFeeProbeInput

Fields
Input Field Description
amount - SatAmount!
paymentRequest - LnPaymentRequest!
walletId - WalletId!
Example
{
  "amount": SatAmount,
  "paymentRequest": LnPaymentRequest,
  "walletId": WalletId
}

LnNoAmountInvoicePayload

Fields
Field Name Description
errors - [Error!]!
invoice - LnNoAmountInvoice
Example
{
  "errors": [Error],
  "invoice": LnNoAmountInvoice
}

LnNoAmountInvoicePaymentInput

Fields
Input Field Description
amount - SatAmount! Amount to pay in satoshis.
memo - Memo Optional memo to associate with the lightning invoice.
paymentRequest - LnPaymentRequest! Payment request representing the invoice which is being paid.
walletId - WalletId! Wallet ID with sufficient balance to cover amount defined in mutation request. Must belong to the account of the current user.
Example
{
  "amount": SatAmount,
  "memo": Memo,
  "paymentRequest": LnPaymentRequest,
  "walletId": WalletId
}

LnNoAmountUsdInvoiceFeeProbeInput

Fields
Input Field Description
amount - CentAmount!
paymentRequest - LnPaymentRequest!
walletId - WalletId!
Example
{
  "amount": CentAmount,
  "paymentRequest": LnPaymentRequest,
  "walletId": WalletId
}

LnNoAmountUsdInvoicePaymentInput

Fields
Input Field Description
amount - CentAmount! Amount to pay in USD cents.
memo - Memo Optional memo to associate with the lightning invoice.
paymentRequest - LnPaymentRequest! Payment request representing the invoice which is being paid.
walletId - WalletId! Wallet ID with sufficient balance to cover amount defined in mutation request. Must belong to the account of the current user.
Example
{
  "amount": CentAmount,
  "memo": Memo,
  "paymentRequest": LnPaymentRequest,
  "walletId": WalletId
}

LnPaymentPreImage

Example
LnPaymentPreImage

LnPaymentRequest

Description

BOLT11 lightning invoice payment request with the amount included

Example
LnPaymentRequest

LnPaymentSecret

Example
LnPaymentSecret

LnUpdate

Fields
Field Name Description
paymentHash - PaymentHash! Deprecated in favor of transaction
status - InvoicePaymentStatus!
transaction - Transaction!
walletId - WalletId! Deprecated in favor of transaction
Example
{
  "paymentHash": PaymentHash,
  "status": "EXPIRED",
  "transaction": Transaction,
  "walletId": WalletId
}

LnUsdInvoiceBtcDenominatedCreateOnBehalfOfRecipientInput

Fields
Input Field Description
amount - SatAmount! Amount in satoshis.
descriptionHash - Hex32Bytes
expiresIn - Minutes Optional invoice expiration time in minutes.
externalId - TxExternalId
memo - Memo Optional memo for the lightning invoice. Acts as a note to the recipient.
recipientWalletId - WalletId! Wallet ID for a USD wallet which belongs to the account of any user.
Example
{
  "amount": SatAmount,
  "descriptionHash": Hex32Bytes,
  "expiresIn": Minutes,
  "externalId": TxExternalId,
  "memo": Memo,
  "recipientWalletId": WalletId
}

LnUsdInvoiceCreateInput

Fields
Input Field Description
amount - CentAmount! Amount in USD cents.
expiresIn - Minutes Optional invoice expiration time in minutes.
externalId - TxExternalId
memo - Memo Optional memo for the lightning invoice.
walletId - WalletId! Wallet ID for a USD wallet belonging to the current user.
Example
{
  "amount": CentAmount,
  "expiresIn": Minutes,
  "externalId": TxExternalId,
  "memo": Memo,
  "walletId": WalletId
}

LnUsdInvoiceCreateOnBehalfOfRecipientInput

Fields
Input Field Description
amount - CentAmount! Amount in USD cents.
descriptionHash - Hex32Bytes
expiresIn - Minutes Optional invoice expiration time in minutes.
externalId - TxExternalId
memo - Memo Optional memo for the lightning invoice. Acts as a note to the recipient.
recipientWalletId - WalletId! Wallet ID for a USD wallet which belongs to the account of any user.
Example
{
  "amount": CentAmount,
  "descriptionHash": Hex32Bytes,
  "expiresIn": Minutes,
  "externalId": TxExternalId,
  "memo": Memo,
  "recipientWalletId": WalletId
}

LnUsdInvoiceFeeProbeInput

Fields
Input Field Description
paymentRequest - LnPaymentRequest!
walletId - WalletId!
Example
{
  "paymentRequest": LnPaymentRequest,
  "walletId": WalletId
}

LnurlPaymentSendInput

Fields
Input Field Description
amount - SatAmount! Amount in satoshis.
lnurl - String! Lnurl string to send to.
walletId - WalletId! Wallet ID to send bitcoin from.
Example
{
  "amount": SatAmount,
  "lnurl": "abc123",
  "walletId": WalletId
}

MapInfo

Fields
Field Name Description
coordinates - Coordinates!
title - String!
Example
{
  "coordinates": Coordinates,
  "title": "xyz789"
}

MapMarker

Fields
Field Name Description
mapInfo - MapInfo!
username - Username!
Example
{
  "mapInfo": MapInfo,
  "username": Username
}

Memo

Description

Text field in a lightning payment transaction

Example
Memo

Merchant

Fields
Field Name Description
coordinates - Coordinates! GPS coordinates for the merchant that can be used to place the related business on a map
createdAt - Timestamp!
id - ID!
title - String!
username - Username! The username of the merchant
validated - Boolean! Whether the merchant has been validated
Example
{
  "coordinates": Coordinates,
  "createdAt": 1592577642,
  "id": "4",
  "title": "xyz789",
  "username": Username,
  "validated": true
}

MerchantMapSuggestInput

Fields
Input Field Description
latitude - Float!
longitude - Float!
title - String!
username - Username!
Example
{
  "latitude": 987.65,
  "longitude": 123.45,
  "title": "xyz789",
  "username": Username
}

MerchantPayload

Fields
Field Name Description
errors - [Error!]!
merchant - Merchant
Example
{
  "errors": [Error],
  "merchant": Merchant
}

Minutes

Description

(Positive) amount of minutes

Example
Minutes

MobileVersions

Fields
Field Name Description
currentSupported - Int!
minSupported - Int!
platform - String!
Example
{
  "currentSupported": 123,
  "minSupported": 987,
  "platform": "abc123"
}

MyUpdatesPayload

Fields
Field Name Description
errors - [Error!]!
me - User
update - UserUpdate
Example
{
  "errors": [Error],
  "me": User,
  "update": IntraLedgerUpdate
}

Network

Values
Enum Value Description

mainnet

regtest

signet

testnet

Example
"mainnet"

NotificationCategory

Example
NotificationCategory

NotificationChannel

Values
Enum Value Description

PUSH

Example
"PUSH"

NotificationChannelSettings

Fields
Field Name Description
disabledCategories - [NotificationCategory!]!
enabled - Boolean!
Example
{
  "disabledCategories": [NotificationCategory],
  "enabled": true
}

NotificationSettings

Fields
Field Name Description
push - NotificationChannelSettings!
Example
{"push": NotificationChannelSettings}

OnChainAddress

Description

An address for an on-chain bitcoin destination

Example
OnChainAddress

OnChainAddressCreateInput

Fields
Input Field Description
walletId - WalletId!
Example
{"walletId": WalletId}

OnChainAddressCurrentInput

Fields
Input Field Description
walletId - WalletId!
Example
{"walletId": WalletId}

OnChainAddressPayload

Fields
Field Name Description
address - OnChainAddress
errors - [Error!]!
Example
{
  "address": OnChainAddress,
  "errors": [Error]
}

OnChainPaymentSendAllInput

Fields
Input Field Description
address - OnChainAddress!
memo - Memo
speed - PayoutSpeed!
walletId - WalletId!
Example
{
  "address": OnChainAddress,
  "memo": Memo,
  "speed": "FAST",
  "walletId": WalletId
}

OnChainPaymentSendInput

Fields
Input Field Description
address - OnChainAddress!
amount - SatAmount!
memo - Memo
speed - PayoutSpeed!
walletId - WalletId!
Example
{
  "address": OnChainAddress,
  "amount": SatAmount,
  "memo": Memo,
  "speed": "FAST",
  "walletId": WalletId
}

OnChainTxFee

Fields
Field Name Description
amount - SatAmount!
Example
{"amount": SatAmount}

OnChainTxHash

Example
OnChainTxHash

OnChainUpdate

Fields
Field Name Description
amount - SatAmount! Deprecated in favor of transaction
displayCurrencyPerSat - Float! Deprecated in favor of transaction
transaction - Transaction!
txHash - OnChainTxHash! Deprecated in favor of transaction
txNotificationType - TxNotificationType!
usdPerSat - Float! updated over displayCurrencyPerSat
walletId - WalletId! Deprecated in favor of transaction
Example
{
  "amount": SatAmount,
  "displayCurrencyPerSat": 123.45,
  "transaction": Transaction,
  "txHash": OnChainTxHash,
  "txNotificationType": "IntraLedgerPayment",
  "usdPerSat": 987.65,
  "walletId": WalletId
}

OnChainUsdPaymentSendAsBtcDenominatedInput

Fields
Input Field Description
address - OnChainAddress!
amount - SatAmount!
memo - Memo
speed - PayoutSpeed!
walletId - WalletId!
Example
{
  "address": OnChainAddress,
  "amount": SatAmount,
  "memo": Memo,
  "speed": "FAST",
  "walletId": WalletId
}

OnChainUsdPaymentSendInput

Fields
Input Field Description
address - OnChainAddress!
amount - CentAmount!
memo - Memo
speed - PayoutSpeed!
walletId - WalletId!
Example
{
  "address": OnChainAddress,
  "amount": CentAmount,
  "memo": Memo,
  "speed": "FAST",
  "walletId": WalletId
}

OnChainUsdTxFee

Fields
Field Name Description
amount - CentAmount!
Example
{"amount": CentAmount}

OneDayAccountLimit

Fields
Field Name Description
interval - Seconds The rolling time interval value in seconds for the current 24 hour period.
remainingLimit - CentAmount The amount of cents remaining below the limit for the current 24 hour period.
totalLimit - CentAmount! The current maximum limit for a given 24 hour period.
Example
{
  "interval": Seconds,
  "remainingLimit": CentAmount,
  "totalLimit": CentAmount
}

OneTimeAuthCode

Description

An authentication code valid for a single use

Example
OneTimeAuthCode

PageInfo

Description

Information about pagination in a connection.

Fields
Field Name Description
endCursor - String When paginating forwards, the cursor to continue.
hasNextPage - Boolean! When paginating forwards, are there more items?
hasPreviousPage - Boolean! When paginating backwards, are there more items?
startCursor - String When paginating backwards, the cursor to continue.
Example
{
  "endCursor": "xyz789",
  "hasNextPage": true,
  "hasPreviousPage": false,
  "startCursor": "abc123"
}

PaymentHash

Example
PaymentHash

PaymentSendPayload

Fields
Field Name Description
errors - [Error!]!
status - PaymentSendResult
transaction - Transaction
Example
{
  "errors": [Error],
  "status": "ALREADY_PAID",
  "transaction": Transaction
}

PaymentSendResult

Values
Enum Value Description

ALREADY_PAID

FAILURE

PENDING

SUCCESS

Example
"ALREADY_PAID"

PayoutSpeed

Values
Enum Value Description

FAST

Example
"FAST"

Phone

Description

Phone number which includes country code

Example
Phone

PhoneCodeChannelType

Values
Enum Value Description

SMS

WHATSAPP

Example
"SMS"

Price

Description

Price amount expressed in base/offset. To calculate, use: base / 10^offset

Fields
Field Name Description
base - SafeInt!
currencyUnit - String!
formattedAmount - String!
offset - Int!
Example
{
  "base": 9007199254740991,
  "currencyUnit": "abc123",
  "formattedAmount": "abc123",
  "offset": 123
}

PriceGraphRange

Description

The range for the X axis in the BTC price graph

Values
Enum Value Description

FIVE_YEARS

ONE_DAY

ONE_MONTH

ONE_WEEK

ONE_YEAR

Example
"FIVE_YEARS"

PriceInput

Fields
Input Field Description
amount - SatAmount!
amountCurrencyUnit - ExchangeCurrencyUnit!
priceCurrencyUnit - ExchangeCurrencyUnit!
Example
{
  "amount": SatAmount,
  "amountCurrencyUnit": "BTCSAT",
  "priceCurrencyUnit": "BTCSAT"
}

PriceInterface

Fields
Field Name Description
base - SafeInt!
currencyUnit - String! Deprecated due to type renaming
offset - Int!
Example
{
  "base": 9007199254740991,
  "currencyUnit": "xyz789",
  "offset": 123
}

PriceOfOneSatInMinorUnit

Description

Price of 1 sat in base/offset. To calculate, use: base / 10^offset

Fields
Field Name Description
base - SafeInt!
currencyUnit - String! Deprecated due to type renaming
offset - Int!
Example
{
  "base": 9007199254740991,
  "currencyUnit": "xyz789",
  "offset": 123
}

PriceOfOneSettlementMinorUnitInDisplayMinorUnit

Description

Price of 1 sat or 1 usd cent in base/offset. To calculate, use: base / 10^offset

Fields
Field Name Description
base - SafeInt!
currencyUnit - String! Deprecated due to type renaming
formattedAmount - String! Deprecated please use base / 10^offset
offset - Int!
Example
{
  "base": 9007199254740991,
  "currencyUnit": "abc123",
  "formattedAmount": "abc123",
  "offset": 987
}

PriceOfOneUsdCentInMinorUnit

Description

Price of 1 usd cent in base/offset. To calculate, use: base / 10^offset

Fields
Field Name Description
base - SafeInt!
currencyUnit - String! Deprecated due to type renaming
offset - Int!
Example
{
  "base": 9007199254740991,
  "currencyUnit": "xyz789",
  "offset": 123
}

PricePayload

Fields
Field Name Description
errors - [Error!]!
price - Price
Example
{"errors": [Error], "price": Price}

PricePoint

Fields
Field Name Description
price - Price!
timestamp - Timestamp! Unix timestamp (number of seconds elapsed since January 1, 1970 00:00:00 UTC)
Example
{"price": Price, "timestamp": 1592577642}

PublicWallet

Description

A public view of a generic wallet which stores value in one of our supported currencies.

Fields
Field Name Description
currency - WalletCurrency!
id - ID!
walletCurrency - WalletCurrency! Shifting property to 'currency'
Example
{
  "currency": "BTC",
  "id": "4",
  "walletCurrency": "BTC"
}

Quiz

Fields
Field Name Description
amount - SatAmount! The reward in Satoshis for the quiz question
completed - Boolean!
id - ID!
notBefore - Timestamp
Example
{
  "amount": SatAmount,
  "completed": true,
  "id": 4,
  "notBefore": 1592577642
}

QuizClaimInput

Fields
Input Field Description
id - ID!
Example
{"id": "4"}

QuizClaimPayload

Fields
Field Name Description
errors - [Error!]!
quizzes - [Quiz!]!
Example
{
  "errors": [Error],
  "quizzes": [Quiz]
}

RealtimePrice

Fields
Field Name Description
btcSatPrice - PriceOfOneSatInMinorUnit!
denominatorCurrency - DisplayCurrency! Deprecated in favor of denominatorCurrencyDetails
denominatorCurrencyDetails - Currency!
id - ID!
timestamp - Timestamp! Unix timestamp (number of seconds elapsed since January 1, 1970 00:00:00 UTC)
usdCentPrice - PriceOfOneUsdCentInMinorUnit!
Example
{
  "btcSatPrice": PriceOfOneSatInMinorUnit,
  "denominatorCurrency": DisplayCurrency,
  "denominatorCurrencyDetails": Currency,
  "id": "4",
  "timestamp": 1592577642,
  "usdCentPrice": PriceOfOneUsdCentInMinorUnit
}

RealtimePriceInput

Fields
Input Field Description
currency - DisplayCurrency
Example
{"currency": DisplayCurrency}

RealtimePricePayload

Fields
Field Name Description
errors - [Error!]!
realtimePrice - RealtimePrice
Example
{
  "errors": [Error],
  "realtimePrice": RealtimePrice
}

SafeInt

Description

Non-fractional signed whole numeric value between -(2^53) + 1 and 2^53 - 1

Example
9007199254740991

SatAmount

Description

(Positive) Satoshi amount

Example
SatAmount

SatAmountPayload

Fields
Field Name Description
amount - SatAmount
errors - [Error!]!
Example
{
  "amount": SatAmount,
  "errors": [Error]
}

Scope

Values
Enum Value Description

READ

RECEIVE

WRITE

Example
"READ"

Seconds

Description

(Positive) amount of seconds

Example
Seconds

SettlementVia

Example
SettlementViaIntraLedger

SettlementViaIntraLedger

Fields
Field Name Description
counterPartyUsername - Username Settlement destination: Could be null if the payee does not have a username
counterPartyWalletId - WalletId
preImage - LnPaymentPreImage
Example
{
  "counterPartyUsername": Username,
  "counterPartyWalletId": WalletId,
  "preImage": LnPaymentPreImage
}

SettlementViaLn

Fields
Field Name Description
paymentSecret - LnPaymentSecret Shifting property to 'preImage' to improve granularity of the LnPaymentSecret type
preImage - LnPaymentPreImage
Example
{
  "paymentSecret": LnPaymentSecret,
  "preImage": LnPaymentPreImage
}

SettlementViaOnChain

Fields
Field Name Description
arrivalInMempoolEstimatedAt - Timestamp
transactionHash - OnChainTxHash
vout - Int
Example
{
  "arrivalInMempoolEstimatedAt": 1592577642,
  "transactionHash": OnChainTxHash,
  "vout": 123
}

SignedAmount

Description

An amount (of a currency) that can be negative (e.g. in a transaction)

Example
SignedAmount

SignedDisplayMajorAmount

Description

A string amount (of a currency) that can be negative (e.g. in a transaction)

Example
SignedDisplayMajorAmount

String

Description

The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

Example
"xyz789"

SuccessPayload

Fields
Field Name Description
errors - [Error!]!
success - Boolean
Example
{"errors": [Error], "success": false}

SupportChatMessageAddInput

Fields
Input Field Description
message - String!
Example
{"message": "abc123"}

SupportChatMessageAddPayload

Fields
Field Name Description
errors - [Error!]!
supportMessage - [SupportMessage]
Example
{
  "errors": [Error],
  "supportMessage": [SupportMessage]
}

SupportMessage

Fields
Field Name Description
id - ID!
message - String!
role - SupportRole!
timestamp - Timestamp!
Example
{
  "id": "4",
  "message": "xyz789",
  "role": "ASSISTANT",
  "timestamp": 1592577642
}

SupportRole

Values
Enum Value Description

ASSISTANT

USER

Example
"ASSISTANT"

Timestamp

Description

Timestamp field, serialized as Unix time (the number of seconds since the Unix epoch)

Example
1592577642

TotpCode

Description

A time-based one-time password

Example
TotpCode

TotpRegistrationId

Description

An id to be passed between set and verify for confirming totp

Example
TotpRegistrationId

TotpSecret

Description

A secret to generate time-based one-time password

Example
TotpSecret

Transaction

Description

Give details about an individual transaction. Galoy have a smart routing system which is automatically settling intraledger when both the payer and payee use the same wallet therefore it's possible the transactions is being initiated onchain or with lightning but settled intraledger.

Fields
Field Name Description
createdAt - Timestamp!
direction - TxDirection!
externalId - TxExternalId
id - ID!
initiationVia - InitiationVia! From which protocol the payment has been initiated.
memo - Memo
settlementAmount - SignedAmount! Amount of the settlement currency sent or received.
settlementCurrency - WalletCurrency! Wallet currency for transaction.
settlementDisplayAmount - SignedDisplayMajorAmount!
settlementDisplayCurrency - DisplayCurrency!
settlementDisplayFee - SignedDisplayMajorAmount!
settlementFee - SignedAmount!
settlementPrice - PriceOfOneSettlementMinorUnitInDisplayMinorUnit! Price in WALLETCURRENCY/SETTLEMENTUNIT at time of settlement.
settlementVia - SettlementVia! To which protocol the payment has settled on.
status - TxStatus!
Example
{
  "createdAt": 1592577642,
  "direction": "RECEIVE",
  "externalId": TxExternalId,
  "id": 4,
  "initiationVia": InitiationViaIntraLedger,
  "memo": Memo,
  "settlementAmount": SignedAmount,
  "settlementCurrency": "BTC",
  "settlementDisplayAmount": SignedDisplayMajorAmount,
  "settlementDisplayCurrency": DisplayCurrency,
  "settlementDisplayFee": SignedDisplayMajorAmount,
  "settlementFee": SignedAmount,
  "settlementPrice": PriceOfOneSettlementMinorUnitInDisplayMinorUnit,
  "settlementVia": SettlementViaIntraLedger,
  "status": "FAILURE"
}

TransactionConnection

Description

A connection to a list of items.

Fields
Field Name Description
edges - [TransactionEdge!] A list of edges.
pageInfo - PageInfo! Information to aid in pagination.
Example
{
  "edges": [TransactionEdge],
  "pageInfo": PageInfo
}

TransactionEdge

Description

An edge in a connection.

Fields
Field Name Description
cursor - String! A cursor for use in pagination
node - Transaction! The item at the end of the edge
Example
{
  "cursor": "abc123",
  "node": Transaction
}

TxDirection

Values
Enum Value Description

RECEIVE

SEND

Example
"RECEIVE"

TxExternalId

Description

An external reference id that can be optionally added for transactions.

Example
TxExternalId

TxNotificationType

Values
Enum Value Description

IntraLedgerPayment

IntraLedgerReceipt

LigtningReceipt

OnchainPayment

OnchainReceipt

OnchainReceiptPending

Example
"IntraLedgerPayment"

TxStatus

Values
Enum Value Description

FAILURE

PENDING

SUCCESS

Example
"FAILURE"

UpgradePayload

Fields
Field Name Description
authToken - AuthToken
errors - [Error!]!
success - Boolean!
Example
{
  "authToken": AuthToken,
  "errors": [Error],
  "success": false
}

UsdWallet

Description

A wallet belonging to an account which contains a USD balance and a list of transactions.

Fields
Field Name Description
accountId - ID!
balance - SignedAmount!
id - ID!
invoiceByPaymentHash - Invoice!
Arguments
paymentHash - PaymentHash!
invoices - InvoiceConnection A list of all invoices associated with walletIds optionally passed.
Arguments
after - String

Returns the items in the list that come after the specified cursor.

before - String

Returns the items in the list that come before the specified cursor.

first - Int

Returns the first n items from the list.

last - Int

Returns the last n items from the list.

pendingIncomingBalance - SignedAmount! An unconfirmed incoming onchain balance.
pendingIncomingTransactions - [Transaction!]!
pendingIncomingTransactionsByAddress - [Transaction!]!
Arguments
address - OnChainAddress!

Returns the items that include this address.

transactionById - Transaction!
Arguments
transactionId - ID!
transactions - TransactionConnection
Arguments
after - String

Returns the items in the list that come after the specified cursor.

before - String

Returns the items in the list that come before the specified cursor.

first - Int

Returns the first n items from the list.

last - Int

Returns the last n items from the list.

transactionsByAddress - TransactionConnection
Arguments
address - OnChainAddress!

Returns the items that include this address.

after - String

Returns the items in the list that come after the specified cursor.

before - String

Returns the items in the list that come before the specified cursor.

first - Int

Returns the first n items from the list.

last - Int

Returns the last n items from the list.

transactionsByPaymentHash - [Transaction!]!
Arguments
paymentHash - PaymentHash!
transactionsByPaymentRequest - [Transaction!]!
Arguments
paymentRequest - LnPaymentRequest!
walletCurrency - WalletCurrency!
Example
{
  "accountId": 4,
  "balance": SignedAmount,
  "id": 4,
  "invoiceByPaymentHash": Invoice,
  "invoices": InvoiceConnection,
  "pendingIncomingBalance": SignedAmount,
  "pendingIncomingTransactions": [Transaction],
  "pendingIncomingTransactionsByAddress": [Transaction],
  "transactionById": Transaction,
  "transactions": TransactionConnection,
  "transactionsByAddress": TransactionConnection,
  "transactionsByPaymentHash": [Transaction],
  "transactionsByPaymentRequest": [Transaction],
  "walletCurrency": "BTC"
}

User

Fields
Field Name Description
contactByUsername - UserContact! Get single contact details. Can include the transactions associated with the contact. will be moved to Accounts
Arguments
username - Username!
contacts - [UserContact!]! Get full list of contacts. Can include the transactions associated with each contact. will be moved to account
createdAt - Timestamp!
defaultAccount - Account!
email - Email Email address
id - ID!
language - Language! Preferred language for user. When value is 'default' the intent is to use preferred language from OS settings.
phone - Phone Phone number with international calling code.
supportChat - [SupportMessage!]!
totpEnabled - Boolean! Whether TOTP is enabled for this user.
username - Username Optional immutable user friendly identifier. will be moved to @Handle in Account and Wallet
Example
{
  "contactByUsername": UserContact,
  "contacts": [UserContact],
  "createdAt": 1592577642,
  "defaultAccount": Account,
  "email": Email,
  "id": 4,
  "language": Language,
  "phone": Phone,
  "supportChat": [SupportMessage],
  "totpEnabled": false,
  "username": Username
}

UserContact

Fields
Field Name Description
alias - ContactAlias Alias the user can set for this contact. Only the user can see the alias attached to their contact.
id - Username!
transactions - TransactionConnection Paginated list of transactions sent to/from this contact.
Arguments
after - String

Returns the items in the list that come after the specified cursor.

before - String

Returns the items in the list that come before the specified cursor.

first - Int

Returns the first n items from the list.

last - Int

Returns the last n items from the list.

transactionsCount - Int!
username - Username! Actual identifier of the contact.
Example
{
  "alias": ContactAlias,
  "id": Username,
  "transactions": TransactionConnection,
  "transactionsCount": 987,
  "username": Username
}

UserContactUpdateAliasInput

Fields
Input Field Description
alias - ContactAlias!
username - Username!
Example
{
  "alias": ContactAlias,
  "username": Username
}

UserContactUpdateAliasPayload

Fields
Field Name Description
contact - UserContact
errors - [Error!]!
Example
{
  "contact": UserContact,
  "errors": [Error]
}

UserEmailDeletePayload

Fields
Field Name Description
errors - [Error!]!
me - User
Example
{"errors": [Error], "me": User}

UserEmailRegistrationInitiateInput

Fields
Input Field Description
email - EmailAddress!
Example
{"email": "test@test.com"}

UserEmailRegistrationInitiatePayload

Fields
Field Name Description
emailRegistrationId - EmailRegistrationId
errors - [Error!]!
me - User
Example
{
  "emailRegistrationId": EmailRegistrationId,
  "errors": [Error],
  "me": User
}

UserEmailRegistrationValidateInput

Fields
Input Field Description
code - OneTimeAuthCode!
emailRegistrationId - EmailRegistrationId!
Example
{
  "code": OneTimeAuthCode,
  "emailRegistrationId": EmailRegistrationId
}

UserEmailRegistrationValidatePayload

Fields
Field Name Description
errors - [Error!]!
me - User
Example
{"errors": [Error], "me": User}

UserLoginInput

Fields
Input Field Description
code - OneTimeAuthCode!
phone - Phone!
Example
{
  "code": OneTimeAuthCode,
  "phone": Phone
}

UserLoginUpgradeInput

Fields
Input Field Description
code - OneTimeAuthCode!
phone - Phone!
Example
{
  "code": OneTimeAuthCode,
  "phone": Phone
}

UserLogoutInput

Fields
Input Field Description
deviceToken - String!
Example
{"deviceToken": "abc123"}

UserPhoneDeletePayload

Fields
Field Name Description
errors - [Error!]!
me - User
Example
{"errors": [Error], "me": User}

UserPhoneRegistrationInitiateInput

Fields
Input Field Description
channel - PhoneCodeChannelType
phone - Phone!
Example
{"channel": "SMS", "phone": Phone}

UserPhoneRegistrationValidateInput

Fields
Input Field Description
code - OneTimeAuthCode!
phone - Phone!
Example
{
  "code": OneTimeAuthCode,
  "phone": Phone
}

UserPhoneRegistrationValidatePayload

Fields
Field Name Description
errors - [Error!]!
me - User
Example
{"errors": [Error], "me": User}

UserTotpDeletePayload

Fields
Field Name Description
errors - [Error!]!
me - User
Example
{"errors": [Error], "me": User}

UserTotpRegistrationInitiatePayload

Fields
Field Name Description
errors - [Error!]!
totpRegistrationId - TotpRegistrationId
totpSecret - TotpSecret
Example
{
  "errors": [Error],
  "totpRegistrationId": TotpRegistrationId,
  "totpSecret": TotpSecret
}

UserTotpRegistrationValidateInput

Fields
Input Field Description
authToken - AuthToken
totpCode - TotpCode!
totpRegistrationId - TotpRegistrationId!
Example
{
  "authToken": AuthToken,
  "totpCode": TotpCode,
  "totpRegistrationId": TotpRegistrationId
}

UserTotpRegistrationValidatePayload

Fields
Field Name Description
errors - [Error!]!
me - User
Example
{"errors": [Error], "me": User}

UserUpdate

Example
IntraLedgerUpdate

UserUpdateLanguageInput

Fields
Input Field Description
language - Language!
Example
{"language": Language}

UserUpdateLanguagePayload

Fields
Field Name Description
errors - [Error!]!
user - User
Example
{"errors": [Error], "user": User}

UserUpdateUsernameInput

Fields
Input Field Description
username - Username!
Example
{"username": Username}

UserUpdateUsernamePayload

Fields
Field Name Description
errors - [Error!]!
user - User
Example
{"errors": [Error], "user": User}

Username

Description

Unique identifier of a user

Example
Username

Wallet

Description

A generic wallet which stores value in one of our supported currencies.

Fields
Field Name Description
accountId - ID!
balance - SignedAmount!
id - ID!
invoiceByPaymentHash - Invoice!
Arguments
paymentHash - PaymentHash!

The lightning invoice with the matching paymentHash belonging to this wallet.

invoices - InvoiceConnection
Arguments
after - String

Returns the items in the list that come after the specified cursor.

before - String

Returns the items in the list that come before the specified cursor.

first - Int

Returns the first n items from the list.

last - Int

Returns the last n items from the list.

pendingIncomingBalance - SignedAmount!
pendingIncomingTransactions - [Transaction!]! Pending incoming OnChain transactions. When transactions are confirmed they will receive a new id and be found in the transactions list. Transactions are ordered anti-chronologically, ie: the newest transaction will be first
pendingIncomingTransactionsByAddress - [Transaction!]! Pending incoming OnChain transactions. When transactions are confirmed they will receive a new id and be found in the transactions list. Transactions are ordered anti-chronologically, ie: the newest transaction will be first
Arguments
address - OnChainAddress!

Returns the items that include this address.

transactionById - Transaction!
Arguments
transactionId - ID!
transactions - TransactionConnection Transactions are ordered anti-chronologically, ie: the newest transaction will be first
Arguments
after - String

Returns the items in the list that come after the specified cursor.

before - String

Returns the items in the list that come before the specified cursor.

first - Int

Returns the first n items from the list.

last - Int

Returns the last n items from the list.

transactionsByAddress - TransactionConnection Transactions are ordered anti-chronologically, ie: the newest transaction will be first
Arguments
address - OnChainAddress!

Returns the items that include this address.

after - String

Returns the items in the list that come after the specified cursor.

before - String

Returns the items in the list that come before the specified cursor.

first - Int

Returns the first n items from the list.

last - Int

Returns the last n items from the list.

transactionsByPaymentHash - [Transaction!]! Returns the transactions that include this paymentHash. This should be a list of size one for a received lightning payment. This can be more that one transaction for a sent lightning payment.
Arguments
paymentHash - PaymentHash!

The payment hash of the lightning invoice paid in this transaction.

transactionsByPaymentRequest - [Transaction!]! Returns the transactions that include this paymentRequest.
Arguments
paymentRequest - LnPaymentRequest!

Lightning invoice paid in this transaction.

walletCurrency - WalletCurrency!
Possible Types
Wallet Types

BTCWallet

UsdWallet

Example
{
  "accountId": 4,
  "balance": SignedAmount,
  "id": "4",
  "invoiceByPaymentHash": Invoice,
  "invoices": InvoiceConnection,
  "pendingIncomingBalance": SignedAmount,
  "pendingIncomingTransactions": [Transaction],
  "pendingIncomingTransactionsByAddress": [Transaction],
  "transactionById": Transaction,
  "transactions": TransactionConnection,
  "transactionsByAddress": TransactionConnection,
  "transactionsByPaymentHash": [Transaction],
  "transactionsByPaymentRequest": [Transaction],
  "walletCurrency": "BTC"
}

WalletCurrency

Values
Enum Value Description

BTC

USD

Example
"BTC"

WalletId

Description

Unique identifier of a wallet

Example
WalletId