Solana

Get stake by ID

get

Returns a specific stake request by ID.

Authorizations
Path parameters
stakeIdstringRequired
Header parameters
x-client-idstringRequired
x-connection-idstringRequired

The provider connection through which the resource is accessed

AuthorizationstringOptional
Responses
200

The stake request was successfully retrieved.

application/json
get
GET /v1/provider/solana/stakes/{stakeId} HTTP/1.1
Host: auth.armory.playnarval.com
detached-jws: YOUR_API_KEY
x-client-id: text
x-connection-id: text
Accept: */*
{
  "data": {
    "stakeRequest": {
      "stakeRequestId": "text",
      "provider": "anchorage",
      "createdAt": null,
      "networkId": "text",
      "externalId": "text",
      "accountId": "text",
      "clientId": "text",
      "connectionId": "text",
      "providerSpecific": null,
      "status": "pending_approval",
      "externalStatus": "text"
    },
    "positions": [
      {
        "positionId": "text",
        "status": "closed",
        "provider": "text",
        "externalStatus": "text",
        "networkId": "text",
        "accountId": "text",
        "clientId": "text",
        "connectionId": "text",
        "validatorAddress": "text",
        "stakeAccountAddress": "text",
        "transactions": [
          {
            "externalTxId": "text",
            "externalTransactionStatus": "text",
            "transactionHash": "text"
          }
        ]
      }
    ],
    "transactions": [
      {
        "externalTxId": "text",
        "externalTransactionStatus": "text",
        "transactionHash": "text"
      }
    ]
  }
}

Create stake

post

Creates a new stake request on the provider.

Authorizations
Header parameters
x-client-idstringRequired
x-connection-idstringRequired

The provider connection through which the resource is accessed

AuthorizationstringOptional
Body

Request to stake tokens on an account. Will result in one or multiple stake positions.

sourceone ofRequired
or
createdAtanyOptional
amountstringRequired
idempotenceIdstringRequired
stakeRequestIdstringOptional

Sets the stake ID to an arbitrary value.

memostringOptional
providerSpecificanyOptional
Responses
201

The stake request was successfully created.

application/json
post
POST /v1/provider/solana/stakes HTTP/1.1
Host: auth.armory.playnarval.com
detached-jws: YOUR_API_KEY
x-client-id: text
x-connection-id: text
Content-Type: application/json
Accept: */*
Content-Length: 210

{
  "source": {
    "type": "account",
    "id": "text"
  },
  "createdAt": null,
  "validator": {
    "address": "text",
    "externalId": "text"
  },
  "amount": "text",
  "idempotenceId": "text",
  "stakeRequestId": "text",
  "memo": "text",
  "providerSpecific": null
}
{
  "data": {
    "stakeRequest": {
      "stakeRequestId": "text",
      "provider": "anchorage",
      "createdAt": null,
      "networkId": "text",
      "externalId": "text",
      "accountId": "text",
      "clientId": "text",
      "connectionId": "text",
      "providerSpecific": null,
      "status": "pending_approval",
      "externalStatus": "text"
    },
    "positions": [
      {
        "positionId": "text",
        "status": "closed",
        "provider": "text",
        "externalStatus": "text",
        "networkId": "text",
        "accountId": "text",
        "clientId": "text",
        "connectionId": "text",
        "validatorAddress": "text",
        "stakeAccountAddress": "text",
        "transactions": [
          {
            "externalTxId": "text",
            "externalTransactionStatus": "text",
            "transactionHash": "text"
          }
        ]
      }
    ],
    "transactions": [
      {
        "externalTxId": "text",
        "externalTransactionStatus": "text",
        "transactionHash": "text"
      }
    ]
  }
}

List unstakeable positions

get

Returns a list of positions that can be unstaked.

Authorizations
Query parameters
accountIdstringOptional

The account ID to list unstakeable positions for

Header parameters
x-client-idstringRequired
x-connection-idstringRequired

The provider connection through which the resource is accessed

AuthorizationstringOptional
Responses
200

The unstakeable positions were successfully retrieved.

application/json
get
GET /v1/provider/solana/unstakeable-positions HTTP/1.1
Host: auth.armory.playnarval.com
detached-jws: YOUR_API_KEY
x-client-id: text
x-connection-id: text
Accept: */*
{
  "data": [
    {
      "positionId": "text",
      "status": "closed",
      "provider": "text",
      "externalStatus": "text",
      "networkId": "text",
      "accountId": "text",
      "clientId": "text",
      "connectionId": "text",
      "validatorAddress": "text",
      "stakeAccountAddress": "text",
      "transactions": [
        {
          "externalTxId": "text",
          "externalTransactionStatus": "text",
          "transactionHash": "text"
        }
      ]
    }
  ]
}

Create unstake

post

Creates a new unstake request on the provider.

Authorizations
Header parameters
x-client-idstringRequired
x-connection-idstringRequired

The provider connection through which the resource is accessed

AuthorizationstringOptional
Body

Request to unstake from a specific stake position.

sourceone ofRequired
or
stakePositionIdstringOptional

Optionally identify the position to unstake by internal Position ID. Only set if validatorAddress and stakeAccount are undefined

validatorAddressstringOptional

Optionally identify the position to unstake by validator address+stake account. Only set if stakePositionId is undefined

stakeAccountAddressstringOptional

Optionally identify the position to unstake by stake account. Only set if stakePositionId is undefined

amountstringRequired
unstakeIdstringOptional

Sets the unstake ID to an arbitrary value.

networkIdstringRequired
idempotenceIdstringRequired
Responses
201

The unstake request was successfully created.

application/json
post
POST /v1/provider/solana/unstakes HTTP/1.1
Host: auth.armory.playnarval.com
detached-jws: YOUR_API_KEY
x-client-id: text
x-connection-id: text
Content-Type: application/json
Accept: */*
Content-Length: 198

{
  "source": {
    "type": "account",
    "id": "text"
  },
  "stakePositionId": "text",
  "validatorAddress": "text",
  "stakeAccountAddress": "text",
  "amount": "text",
  "unstakeId": "text",
  "networkId": "text",
  "idempotenceId": "text"
}
{
  "data": {
    "unstakeRequest": {
      "unstakeId": "text",
      "provider": "anchorage",
      "createdAt": null,
      "networkId": "text",
      "externalId": "text",
      "accountId": "text",
      "clientId": "text",
      "connectionId": "text",
      "status": "pending_approval",
      "externalStatus": "text"
    },
    "transactions": [
      {
        "externalTxId": "text",
        "externalTransactionStatus": "text",
        "transactionHash": "text"
      }
    ]
  }
}

Get unstake by ID

get

Returns a specific unstake request by ID.

Authorizations
Path parameters
unstakeIdstringRequired

The unstake ID to retrieve

Header parameters
x-client-idstringRequired
x-connection-idstringRequired

The provider connection through which the resource is accessed

AuthorizationstringOptional
Responses
200

The unstake request was successfully retrieved.

application/json
get
GET /v1/provider/solana/unstakes/{unstakeId} HTTP/1.1
Host: auth.armory.playnarval.com
detached-jws: YOUR_API_KEY
x-client-id: text
x-connection-id: text
Accept: */*
{
  "data": {
    "unstakeRequest": {
      "unstakeId": "text",
      "provider": "anchorage",
      "createdAt": null,
      "networkId": "text",
      "externalId": "text",
      "accountId": "text",
      "clientId": "text",
      "connectionId": "text",
      "status": "pending_approval",
      "externalStatus": "text"
    },
    "transactions": [
      {
        "externalTxId": "text",
        "externalTransactionStatus": "text",
        "transactionHash": "text"
      }
    ]
  }
}

Create stake withdrawal

post

Creates a new stake withdrawal request on the provider.

Authorizations
Header parameters
x-client-idstringRequired
x-connection-idstringRequired

The provider connection through which the resource is accessed

AuthorizationstringOptional
Body
idempotenceIdstringOptional
memostringOptional
Responses
201

The stake withdrawal request was successfully created.

application/json
post
POST /v1/provider/solana/withdraw HTTP/1.1
Host: auth.armory.playnarval.com
detached-jws: YOUR_API_KEY
x-client-id: text
x-connection-id: text
Content-Type: application/json
Accept: */*
Content-Length: 145

{
  "position": {
    "unstakeId": "text",
    "externalId": "text",
    "validatorAddress": "text",
    "stakeAccountAddress": "text"
  },
  "idempotenceId": "text",
  "memo": "text"
}
{
  "data": {
    "unstakeRequest": {
      "unstakeId": "text",
      "provider": "anchorage",
      "createdAt": null,
      "networkId": "text",
      "externalId": "text",
      "accountId": "text",
      "clientId": "text",
      "connectionId": "text",
      "status": "pending_approval",
      "externalStatus": "text"
    },
    "transactions": [
      {
        "externalTxId": "text",
        "externalTransactionStatus": "text",
        "transactionHash": "text"
      }
    ]
  }
}

Last updated