Up-v-ApimaticSDK
0.0.5
dotnet add package Up-v-ApimaticSDK --version 0.0.5
NuGet\Install-Package Up-v-ApimaticSDK -Version 0.0.5
<PackageReference Include="Up-v-ApimaticSDK" Version="0.0.5" />
<PackageVersion Include="Up-v-ApimaticSDK" Version="0.0.5" />
<PackageReference Include="Up-v-ApimaticSDK" />
paket add Up-v-ApimaticSDK --version 0.0.5
#r "nuget: Up-v-ApimaticSDK, 0.0.5"
#:package Up-v-ApimaticSDK@0.0.5
#addin nuget:?package=Up-v-ApimaticSDK&version=0.0.5
#tool nuget:?package=Up-v-ApimaticSDK&version=0.0.5
Getting Started with Upvest Investment API
Introduction
Upvest Investment API.
Install the Package
If you are building with .NET CLI tools then you can also use the following command:
dotnet add package Up-v-ApimaticSDK --version 0.0.5
You can also view the package at: https://www.nuget.org/packages/Up-v-ApimaticSDK/0.0.5
Initialize the API Client
Note: Documentation for the client can be found here.
The following parameters are configurable for the API Client:
| Parameter | Type | Description |
|---|---|---|
| Environment | Environment |
The API environment. <br> Default: Environment.Production |
| Timeout | TimeSpan |
Http client timeout.<br>Default: TimeSpan.FromSeconds(30) |
| HttpClientConfiguration | Action<HttpClientConfiguration.Builder> |
Action delegate that configures the HTTP client by using the HttpClientConfiguration.Builder for customizing API call settings.<br>Default: new HttpClient() |
| LogBuilder | LogBuilder |
Represents the logging configuration builder for API calls |
| ClientCredentialsAuth | ClientCredentialsAuth |
The Credentials Setter for OAuth 2 Client Credentials Grant |
| HttpSignature | HttpSignatureCredentials |
The key material used to sign every request with an HTTP message signature |
The API client can be initialized as follows:
Code-Based Initialization
using Microsoft.Extensions.Logging;
using System.Collections.Generic;
using UpvestInvestmentApi.Standard;
using UpvestInvestmentApi.Standard.Authentication;
using UpvestInvestmentApi.Standard.Http.Signature;
using UpvestInvestmentApi.Standard.Models;
namespace ConsoleApp;
UpvestInvestmentApiClient client = new UpvestInvestmentApiClient.Builder()
.ClientCredentialsAuth(
new ClientCredentialsAuthModel.Builder(
"OAuthClientId",
"OAuthClientSecret"
)
.OauthScopes(
new List<OauthScope>
{
OauthScope.Accountsread,
OauthScope.Accountsadmin,
})
.Build())
.HttpSignature(HttpSignatureCredentials.FromFile(
keyId: "KeyId",
privateKeyPath: @"C:\\keys\\upvest-http-sign-key.pem",
privateKeyPassphrase: "PrivateKeyPassphrase"))
.HttpClientConfig(httpClientConfig =>
httpClientConfig.Timeout(TimeSpan.FromSeconds(100)))
.Environment(UpvestInvestmentApi.Standard.Environment.Production)
.LoggingConfig(config => config
.LogLevel(LogLevel.Information)
.RequestConfig(reqConfig => reqConfig.Body(true))
.ResponseConfig(respConfig => respConfig.Headers(true))
)
.Build();
Configuration-Based Initialization
using UpvestInvestmentApi.Standard;
using Microsoft.Extensions.Configuration;
namespace ConsoleApp;
// Build the IConfiguration using .NET conventions (JSON, environment, etc.)
var configuration = new ConfigurationBuilder()
.AddJsonFile("config.json")
.AddEnvironmentVariables() // [optional] read environment variables
.Build();
// Instantiate your SDK and configure it from IConfiguration
var client = UpvestInvestmentApiClient
.FromConfiguration(configuration.GetSection("UpvestInvestmentApi"));
See the Configuration-Based Initialization section for details.
Environments
The SDK can be configured to use a different environment for making API calls. Available environments are:
Fields
| Name | Description |
|---|---|
| Production | Default Sandbox environment |
| Environment2 | Live environment |
Authorization
This API uses the following authentication schemes.
HTTP Signatures
On top of the OAuth 2 token, every request to the Upvest Investment API has to
carry a cryptographic signature. The SDK creates it for you once you pass
HttpSignature(...) to the client builder -- see
HTTP Signatures for details.
List of APIs
- Access Tokens
- Webhook Subscriptions
- User Identifiers
- User Checks
- Tax Exemptions
- Tax Wrappers
- Account Groups
- Reference Accounts
- Direct Debits
- Credit Fundings
- Cash Balance Transfers
- Virtual Bank Accounts
- Cash Balances
- Price Data
- Tax Residencies
- Fees Configurations
- Transaction Fees Models
- Portfolios Rebalancing
- Virtual Cash Balances
- Savings Plans
- Securities Transfers
- Account Transfers
- ISA Transfers
- Business Checks
- Files
- Users
- Accounts
- Mandates
- Top-Ups
- Withdrawals
- Instruments
- Orders
- Positions
- Reports
- Transactions
- Fees
- Portfolios
- Valuations
- Liquidations
- Returns
- Tests
- Businesses
- Roles
SDK Infrastructure
Configuration
- Configuration-Based Initialization
- HttpClientConfiguration
- HttpClientConfigurationBuilder
- LogBuilder
- LogRequestBuilder
- LogResponseBuilder
- ProxyConfigurationBuilder
HTTP
Utilities
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- APIMatic.Core (>= 0.4.13 && < 0.5.0)
- Microsoft.CSharp (>= 4.7.0)
- Microsoft.Extensions.Configuration.Binder (>= 8.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.