Skip to content

Latest commit

 

History

History
738 lines (529 loc) · 45.3 KB

File metadata and controls

738 lines (529 loc) · 45.3 KB

FormanceWalletsV1

(Wallets.V1)

Overview

Available Operations

WalletsgetServerInfo

Get server info

Example Usage

using formance;
using formance.Models.Components;

var sdk = new Formance(security: new Security() {
    ClientID = "<YOUR_CLIENT_ID_HERE>",
    ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
});

var res = await sdk.Wallets.V1.WalletsgetServerInfoAsync();

// handle response

Response

WalletsgetServerInfoResponse

Errors

Error Type Status Code Content Type
formance.Models.Errors.WalletsErrorResponse default application/json
formance.Models.Errors.SDKException 4XX, 5XX */*

GetTransactions

Example Usage

using formance;
using formance.Models.Requests;
using formance.Models.Components;

var sdk = new Formance(security: new Security() {
    ClientID = "<YOUR_CLIENT_ID_HERE>",
    ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
});

var res = await sdk.Wallets.V1.GetTransactionsAsync(
    pageSize: 100,
    walletID: "wallet1",
    cursor: "aHR0cHM6Ly9nLnBhZ2UvTmVrby1SYW1lbj9zaGFyZQ=="
);

// handle response

Parameters

Parameter Type Required Description Example
PageSize long The maximum number of results to return per page 100
WalletID string A wallet ID to filter on wallet1
Cursor string Parameter used in pagination requests.
Set to the value of next for the next page of results.
Set to the value of previous for the previous page of results.
No other parameters can be set when the cursor is set.
aHR0cHM6Ly9nLnBhZ2UvTmVrby1SYW1lbj9zaGFyZQ==

Response

Models.Requests.GetTransactionsResponse

Errors

Error Type Status Code Content Type
formance.Models.Errors.WalletsErrorResponse default application/json
formance.Models.Errors.SDKException 4XX, 5XX */*

ListWallets

List all wallets

Example Usage

using formance;
using formance.Models.Requests;
using System.Collections.Generic;
using formance.Models.Components;

var sdk = new Formance(security: new Security() {
    ClientID = "<YOUR_CLIENT_ID_HERE>",
    ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
});

ListWalletsRequest req = new ListWalletsRequest() {
    Name = "wallet1",
    Metadata = new Dictionary<string, string>() {
        { "admin", "true" },
    },
    PageSize = 100,
    Cursor = "aHR0cHM6Ly9nLnBhZ2UvTmVrby1SYW1lbj9zaGFyZQ==",
    Expand = "balances",
};

var res = await sdk.Wallets.V1.ListWalletsAsync(req);

// handle response

Parameters

Parameter Type Required Description
request ListWalletsRequest ✔️ The request object to use for the request.

Response

Models.Requests.ListWalletsResponse

Errors

Error Type Status Code Content Type
formance.Models.Errors.WalletsErrorResponse default application/json
formance.Models.Errors.SDKException 4XX, 5XX */*

CreateWallet

Create a new wallet

Example Usage

using formance;
using formance.Models.Requests;
using formance.Models.Components;
using System.Collections.Generic;

var sdk = new Formance(security: new Security() {
    ClientID = "<YOUR_CLIENT_ID_HERE>",
    ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
});

var res = await sdk.Wallets.V1.CreateWalletAsync(
    idempotencyKey: "<value>",
    createWalletRequest: new Models.Components.CreateWalletRequest() {
        Metadata = new Dictionary<string, string>() {
            { "key", "<value>" },
        },
        Name = "<value>",
    }
);

// handle response

Parameters

Parameter Type Required Description
IdempotencyKey string Use an idempotency key
CreateWalletRequest Models.Components.CreateWalletRequest N/A

Response

Models.Requests.CreateWalletResponse

Errors

Error Type Status Code Content Type
formance.Models.Errors.WalletsErrorResponse default application/json
formance.Models.Errors.SDKException 4XX, 5XX */*

GetWallet

Get a wallet

Example Usage

using formance;
using formance.Models.Requests;
using formance.Models.Components;

var sdk = new Formance(security: new Security() {
    ClientID = "<YOUR_CLIENT_ID_HERE>",
    ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
});

var res = await sdk.Wallets.V1.GetWalletAsync(id: "<id>");

// handle response

Parameters

Parameter Type Required Description
Id string ✔️ N/A

Response

Models.Requests.GetWalletResponse

Errors

Error Type Status Code Content Type
formance.Models.Errors.WalletsErrorResponse default application/json
formance.Models.Errors.SDKException 4XX, 5XX */*

UpdateWallet

Update a wallet

Example Usage

using formance;
using formance.Models.Requests;
using System.Collections.Generic;
using formance.Models.Components;

var sdk = new Formance(security: new Security() {
    ClientID = "<YOUR_CLIENT_ID_HERE>",
    ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
});

var res = await sdk.Wallets.V1.UpdateWalletAsync(
    id: "<id>",
    idempotencyKey: "<value>",
    requestBody: new UpdateWalletRequestBody() {
        Metadata = new Dictionary<string, string>() {
            { "key", "<value>" },
        },
    }
);

// handle response

Parameters

Parameter Type Required Description
Id string ✔️ N/A
IdempotencyKey string Use an idempotency key
RequestBody UpdateWalletRequestBody N/A

Response

UpdateWalletResponse

Errors

Error Type Status Code Content Type
formance.Models.Errors.WalletsErrorResponse default application/json
formance.Models.Errors.SDKException 4XX, 5XX */*

GetWalletSummary

Get wallet summary

Example Usage

using formance;
using formance.Models.Requests;
using formance.Models.Components;

var sdk = new Formance(security: new Security() {
    ClientID = "<YOUR_CLIENT_ID_HERE>",
    ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
});

var res = await sdk.Wallets.V1.GetWalletSummaryAsync(id: "<id>");

// handle response

Parameters

Parameter Type Required Description
Id string ✔️ N/A

Response

Models.Requests.GetWalletSummaryResponse

Errors

Error Type Status Code Content Type
formance.Models.Errors.WalletsErrorResponse default application/json
formance.Models.Errors.SDKException 4XX, 5XX */*

ListBalances

List balances of a wallet

Example Usage

using formance;
using formance.Models.Requests;
using formance.Models.Components;

var sdk = new Formance(security: new Security() {
    ClientID = "<YOUR_CLIENT_ID_HERE>",
    ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
});

var res = await sdk.Wallets.V1.ListBalancesAsync(id: "<id>");

// handle response

Parameters

Parameter Type Required Description
Id string ✔️ N/A

Response

Models.Requests.ListBalancesResponse

Errors

Error Type Status Code Content Type
formance.Models.Errors.SDKException 4XX, 5XX */*

CreateBalance

Create a balance

Example Usage

using formance;
using formance.Models.Requests;
using formance.Models.Components;
using System.Numerics;

var sdk = new Formance(security: new Security() {
    ClientID = "<YOUR_CLIENT_ID_HERE>",
    ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
});

var res = await sdk.Wallets.V1.CreateBalanceAsync(
    id: "<id>",
    idempotencyKey: "<value>",
    createBalanceRequest: new Models.Components.CreateBalanceRequest() {
        Name = "<value>",
    }
);

// handle response

Parameters

Parameter Type Required Description
Id string ✔️ N/A
IdempotencyKey string Use an idempotency key
CreateBalanceRequest Models.Components.CreateBalanceRequest N/A

Response

Models.Requests.CreateBalanceResponse

Errors

Error Type Status Code Content Type
formance.Models.Errors.WalletsErrorResponse default application/json
formance.Models.Errors.SDKException 4XX, 5XX */*

GetBalance

Get detailed balance

Example Usage

using formance;
using formance.Models.Requests;
using formance.Models.Components;

var sdk = new Formance(security: new Security() {
    ClientID = "<YOUR_CLIENT_ID_HERE>",
    ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
});

var res = await sdk.Wallets.V1.GetBalanceAsync(
    id: "<id>",
    balanceName: "<value>"
);

// handle response

Parameters

Parameter Type Required Description
Id string ✔️ N/A
BalanceName string ✔️ N/A

Response

Models.Requests.GetBalanceResponse

Errors

Error Type Status Code Content Type
formance.Models.Errors.WalletsErrorResponse default application/json
formance.Models.Errors.SDKException 4XX, 5XX */*

DebitWallet

Debit a wallet

Example Usage

using formance;
using formance.Models.Requests;
using formance.Models.Components;
using System.Numerics;
using System.Collections.Generic;

var sdk = new Formance(security: new Security() {
    ClientID = "<YOUR_CLIENT_ID_HERE>",
    ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
});

var res = await sdk.Wallets.V1.DebitWalletAsync(
    id: "<id>",
    idempotencyKey: "<value>",
    debitWalletRequest: new Models.Components.DebitWalletRequest() {
        Amount = new Monetary() {
            Asset = "USD/2",
            Amount = 100,
        },
        Pending = true,
        Metadata = new Dictionary<string, string>() {
            { "key", "" },
        },
    }
);

// handle response

Parameters

Parameter Type Required Description Example
Id string ✔️ N/A
IdempotencyKey string Use an idempotency key
DebitWalletRequest Models.Components.DebitWalletRequest N/A {
"amount": {
"asset": "USD/2",
"amount": 100
},
"metadata": {
"key": ""
},
"pending": true
}

Response

Models.Requests.DebitWalletResponse

Errors

Error Type Status Code Content Type
formance.Models.Errors.WalletsErrorResponse default application/json
formance.Models.Errors.SDKException 4XX, 5XX */*

CreditWallet

Credit a wallet

Example Usage

using formance;
using formance.Models.Requests;
using formance.Models.Components;
using System.Numerics;
using System.Collections.Generic;

var sdk = new Formance(security: new Security() {
    ClientID = "<YOUR_CLIENT_ID_HERE>",
    ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
});

var res = await sdk.Wallets.V1.CreditWalletAsync(
    id: "<id>",
    idempotencyKey: "<value>",
    creditWalletRequest: new Models.Components.CreditWalletRequest() {
        Amount = new Monetary() {
            Asset = "USD/2",
            Amount = 100,
        },
        Metadata = new Dictionary<string, string>() {
            { "key", "" },
        },
        Sources = new List<Subject>() {
            Subject.CreateLedgerAccountSubject(
                new LedgerAccountSubject() {
                    Type = "<value>",
                    Identifier = "<value>",
                }
            ),
        },
    }
);

// handle response

Parameters

Parameter Type Required Description Example
Id string ✔️ N/A
IdempotencyKey string Use an idempotency key
CreditWalletRequest Models.Components.CreditWalletRequest N/A {
"amount": {
"asset": "USD/2",
"amount": 100
},
"metadata": {
"key": ""
},
"sources": []
}

Response

CreditWalletResponse

Errors

Error Type Status Code Content Type
formance.Models.Errors.WalletsErrorResponse default application/json
formance.Models.Errors.SDKException 4XX, 5XX */*

GetHolds

Get all holds for a wallet

Example Usage

using formance;
using formance.Models.Requests;
using System.Collections.Generic;
using formance.Models.Components;

var sdk = new Formance(security: new Security() {
    ClientID = "<YOUR_CLIENT_ID_HERE>",
    ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
});

var res = await sdk.Wallets.V1.GetHoldsAsync(
    pageSize: 100,
    walletID: "wallet1",
    metadata: new Dictionary<string, string>() {
        { "admin", "true" },
    },
    cursor: "aHR0cHM6Ly9nLnBhZ2UvTmVrby1SYW1lbj9zaGFyZQ=="
);

// handle response

Parameters

Parameter Type Required Description Example
PageSize long The maximum number of results to return per page 100
WalletID string The wallet to filter on wallet1
Metadata Dictionary<String, string> Filter holds by metadata key value pairs. Nested objects can be used as seen in the example below. {
"admin": "true"
}
Cursor string Parameter used in pagination requests.
Set to the value of next for the next page of results.
Set to the value of previous for the previous page of results.
No other parameters can be set when the pagination token is set.
aHR0cHM6Ly9nLnBhZ2UvTmVrby1SYW1lbj9zaGFyZQ==

Response

Models.Requests.GetHoldsResponse

Errors

Error Type Status Code Content Type
formance.Models.Errors.WalletsErrorResponse default application/json
formance.Models.Errors.SDKException 4XX, 5XX */*

GetHold

Get a hold

Example Usage

using formance;
using formance.Models.Requests;
using formance.Models.Components;

var sdk = new Formance(security: new Security() {
    ClientID = "<YOUR_CLIENT_ID_HERE>",
    ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
});

var res = await sdk.Wallets.V1.GetHoldAsync(holdID: "<id>");

// handle response

Parameters

Parameter Type Required Description
HoldID string ✔️ The hold ID

Response

Models.Requests.GetHoldResponse

Errors

Error Type Status Code Content Type
formance.Models.Errors.WalletsErrorResponse default application/json
formance.Models.Errors.SDKException 4XX, 5XX */*

ConfirmHold

Confirm a hold

Example Usage

using formance;
using formance.Models.Requests;
using formance.Models.Components;
using System.Numerics;

var sdk = new Formance(security: new Security() {
    ClientID = "<YOUR_CLIENT_ID_HERE>",
    ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
});

var res = await sdk.Wallets.V1.ConfirmHoldAsync(
    holdId: "<id>",
    idempotencyKey: "<value>",
    confirmHoldRequest: new Models.Components.ConfirmHoldRequest() {
        Amount = 100,
        Final = true,
    }
);

// handle response

Parameters

Parameter Type Required Description
HoldId string ✔️ N/A
IdempotencyKey string Use an idempotency key
ConfirmHoldRequest Models.Components.ConfirmHoldRequest N/A

Response

ConfirmHoldResponse

Errors

Error Type Status Code Content Type
formance.Models.Errors.WalletsErrorResponse default application/json
formance.Models.Errors.SDKException 4XX, 5XX */*

VoidHold

Cancel a hold

Example Usage

using formance;
using formance.Models.Requests;
using formance.Models.Components;

var sdk = new Formance(security: new Security() {
    ClientID = "<YOUR_CLIENT_ID_HERE>",
    ClientSecret = "<YOUR_CLIENT_SECRET_HERE>",
});

var res = await sdk.Wallets.V1.VoidHoldAsync(
    holdId: "<id>",
    idempotencyKey: "<value>"
);

// handle response

Parameters

Parameter Type Required Description
HoldId string ✔️ N/A
IdempotencyKey string Use an idempotency key

Response

VoidHoldResponse

Errors

Error Type Status Code Content Type
formance.Models.Errors.WalletsErrorResponse default application/json
formance.Models.Errors.SDKException 4XX, 5XX */*