Code Monkey home page Code Monkey logo

sdk-charp-netcore's Introduction

C# library for the Geins Management API

Geins Management API is an RESTful api to power your applications who manages your geins services. Geins provides an easy-to-use and scalable solution for managing all aspects of an online store, from product listings and customer information to order processing and payment transactions.

:::tip With this API, you can build custom applications and integrate with third-party systems, dashboards and other bussiness logic apps. :::

Getting started

Once you have created an account, you can start using the Management API by creating an API key. You can create as many API keys as you need. Each API key is connected to a specific account so you can keep track of operations and manage keys. You can find your API key in the geins merchant center.

Fast track

Use one of our SDKs to get started quickly. The SDKs are available for the most popular programming languages and frameworks.

Or, if you prefer to just take it for a test run:

Run in Postman

Authentication

Two authentication methods are supported:

  • API Key
  • Basic Auth

This C# SDK is automatically generated by the OpenAPI Generator project:

  • API version: v1.7
  • SDK version: 1.0.0
  • Build package: org.openapitools.codegen.languages.CSharpNetCoreClientCodegen

Frameworks supported

  • .NET Core >=1.0
  • .NET Framework >=4.6
  • Mono/Xamarin >=vNext

Dependencies

The DLLs included in the package may not be the latest version. We recommend using NuGet to obtain the latest version of the packages:

Install-Package RestSharp
Install-Package Newtonsoft.Json
Install-Package JsonSubTypes
Install-Package System.ComponentModel.Annotations

NOTE: RestSharp versions greater than 105.1.0 have a bug which causes file uploads to fail. See RestSharp#742. NOTE: RestSharp for .Net Core creates a new socket for each api call, which can lead to a socket exhaustion problem. See RestSharp#1406.

Installation

Generate the DLL using your preferred tool (e.g. dotnet build)

Then include the DLL (under the bin folder) in the C# project, and use the namespaces:

using Org.OpenAPITools.Api;
using Org.OpenAPITools.Client;
using Org.OpenAPITools.Model;

Usage

To use the API client with a HTTP proxy, setup a System.Net.WebProxy

Configuration c = new Configuration();
System.Net.WebProxy webProxy = new System.Net.WebProxy("http://myProxyUrl:80/");
webProxy.Credentials = System.Net.CredentialCache.DefaultCredentials;
c.Proxy = webProxy;

Getting Started

using System.Collections.Generic;
using System.Diagnostics;
using Org.OpenAPITools.Api;
using Org.OpenAPITools.Client;
using Org.OpenAPITools.Model;

namespace Example
{
    public class Example
    {
        public static void Main()
        {

            Configuration config = new Configuration();
            config.BasePath = "https://mgmtapi.geins.io";
            // Configure API key authorization: apiKey
            config.ApiKey.Add("x-apikey", "YOUR_API_KEY");
            // Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
            // config.ApiKeyPrefix.Add("x-apikey", "Bearer");
            // Configure HTTP basic authorization: basicAuth
            config.Username = "YOUR_USERNAME";
            config.Password = "YOUR_PASSWORD";

            var apiInstance = new BrandApi(config);
            var brand = new BrandModelsWriteBrand(); // BrandModelsWriteBrand | The brand to create.

            try
            {
                // Create a new brand
                EnvelopeBrandModelsReadBrand result = apiInstance.CreateBrand(brand);
                Debug.WriteLine(result);
            }
            catch (ApiException e)
            {
                Debug.Print("Exception when calling BrandApi.CreateBrand: " + e.Message );
                Debug.Print("Status Code: "+ e.ErrorCode);
                Debug.Print(e.StackTrace);
            }

        }
    }
}

Documentation for API Endpoints

All URIs are relative to https://mgmtapi.geins.io

Class Method HTTP request Description
BrandApi CreateBrand POST /API/Brand Create a new brand
BrandApi GetBrandById GET /API/Brand/{id} Get a specific brand
BrandApi QueryBrands POST /API/Brand/Query Query brands
BrandApi UpdateBrand PUT /API/Brand/{id} Updates a brand
CategoryApi CreateCategory POST /API/Category Create a new category
CategoryApi GetCategoryById GET /API/Category/{id} Get a specific category
CategoryApi QueryCategories POST /API/Category/Query Query categories
CategoryApi UpdateCategory PUT /API/Category/{id} Update a category
MarketApi GetMarketById GET /API/Market/{marketId} Get a specific market
MarketApi ListMarkets GET /API/Market/List Gets a list of all markets
OrderApi AddCommentToOrder POST /API/Order/{id}/Comment Adds a comment to the order
OrderApi CreateOrder POST /API/Order Post a new order
OrderApi CreateOrderId POST /API/Order/Id Create a new order id
OrderApi DeleteOrder DELETE /API/Order/{id} Deletes or deactivates an order
OrderApi GetCaptureById GET /API/Order/Capture/{captureId} Get Capture by Id
OrderApi GetOrderById GET /API/Order/{id}/{include} Get an instance of a order
OrderApi GetOrderStatuses GET /API/Order/Statuses Get a list of available order statuses
OrderApi GetRefundById GET /API/Order/Refund/{refundId} Get Refund by Id
OrderApi PartialUpdateOfOrder PATCH /API/Order/{id} Partial update of an order
OrderApi QueryOrders POST /API/Order/Query Query the order repository
OrderApi SetCaptureAsProcessed POST /API/Order/Capture/SetAsProcessed Set a capture as processed (= captured)
OrderApi SetPaymentAsPayed POST /API/Order/PaymentDetail/{paymentDetailId}/SetAsPayed Set Payment Detail as payed
OrderApi SetRefundAsProcessed POST /API/Order/Refund/SetAsProcessed Set a refund as processed (= settled)
OrderApi UpdateOrderStatus POST /API/Order/{id}/Status/{status}/{transactionId}/{secondaryTransactionId} Update order status
OrderApi UpdateTransactionData POST /API/Order/{id}/TransactionData Updates transaction data on an order
OrderApi ValidateOrder POST /API/Order/ValidateCreation Validates order data for order creation.
PageAreaApi CreateOrUpdateAPageArea POST /API/PageArea Create or update a page area
PageAreaApi CreateOrUpdatePageAreaFamily POST /API/PageAreaFamily Create or update a page area family
PageAreaApi GetPageArea GET /API/PageArea/{name} Get a specific page area
PageAreaApi GetPageAreaFamily GET /API/PageAreaFamily/{familyId} Get a specific page area family
PageAreaApi ListPageAreaFamilies GET /API/PageAreaFamily/List Gets a list of all page area families, including nested data
PaymentApi QueryPaymentOptions POST /API/Payment/Query Query payment options
PriceListApi ListPriceLists GET /API/PriceList/List Get all price list definitions
PriceListApi UpdatePricelistPrices PUT /API/PriceList/Price Updates price list prices
ProductApi AddAvailabilityMonitor POST /API/Product/MonitorAvailability Add a product availability monitor
ProductApi AddCategoryToProduct PUT /API/Product/{productId}/Category Adds a category relation to a product
ProductApi AddImageToProduct PUT /API/Product/{productId}/Image/{imageName} Adds an image relation to a product
ProductApi AddRelatedProductsToProduct PUT /API/Product/{productId}/Related Add related products to a product
ProductApi BatchUpdateProductItems PUT /API/Product/Items Updates product items in batch
ProductApi BatchUpdateStockValues PUT /API/Product/Stock Update stock values for multiple product items
ProductApi CreateProduct POST /API/Product Create a new product
ProductApi CreateProductItems POST /API/Product/{productId}/Item Create a new product item
ProductApi GetProductById GET /API/Product/{productId} Get a specific product
ProductApi GetProductItemById GET /API/Product/Item/{itemId} Get a specific product item
ProductApi LinkRelatedProductsByRelationId PUT /API/Product/{productId}/Related/{relationTypeId} Add related products to a product using a fixed relation type
ProductApi ListAllProductItemsPaged GET /API/Product/Items/{page} Get all product items with pagination
ProductApi ListFeeds GET /API/Product/Feeds Gets a list of all feeds
ProductApi ListProductItems GET /API/Product/Items Get all product items
ProductApi ListProductRelationTypes GET /API/Product/RelationTypes Gets a list of product relation types
ProductApi QueryProducts POST /API/Product/Query Query products
ProductApi QueryProductsPaged POST /API/Product/Query/{page} Query products with pagination
ProductApi QueryStock POST /API/Product/Stock/Query Query stock
ProductApi UpdateProduct PUT /API/Product/{productId} Updates a product
ProductApi UpdateProductItem PUT /API/Product/Item/{itemId} Updates a product item
ProductParameterApi BatchReplaceProductParameterValues POST /API/ProductParameter/Values Replace multiple product parameter values
ProductParameterApi BatchUpdateProductParameterValues PUT /API/ProductParameter/Values Update multiple product parameter values
ProductParameterApi CreateOrUpdateProductParameterValue POST /API/ProductParameter/Value Create or update a new product parameter value
ProductParameterApi CreateProductParameter POST /API/ProductParameter Create a new product parameter
ProductParameterApi CreateProductParameterGroup POST /API/ProductParameter/Group Create a new product parameter group
ProductParameterApi CreateProductParameterPredefinedValue POST /API/ProductParameter/PredefinedValue Create a new predefined value for a product parameter
ProductParameterApi GetProductParameterById GET /API/ProductParameter/{id} Get a specific product parameter
ProductParameterApi GetProductParameterGroupById GET /API/ProductParameter/Group/{id} Get a specific product parameter group
ProductParameterApi GetProductParameterPredefinedValue GET /API/ProductParameter/PredefinedValue/{id} Get a specific predefined value for a product parameter
ProductParameterApi GetProductParameterValue GET /API/ProductParameter/Value/{id} Get a specific product parameter value
ProductParameterApi UpdateProductParameter PUT /API/ProductParameter/{id} Updates a product parameter
ProductParameterApi UpdateProductParameterGroup PUT /API/ProductParameter/Group/{id} Update a product parameter group
ShippingApi CreateParcelGroup POST /API/Shipping/ParcelGroup Create a new parcel group
ShippingApi QueryShippingOptions POST /API/Shipping/Query Query shipping options
SupplierApi CreateSupplier POST /API/Supplier Create a new supplier
SupplierApi GetSupplierById GET /API/Supplier/{id} Get a specific supplier
SupplierApi QuerySuppliers POST /API/Supplier/Query Query suppliers
SupplierApi UpdateSupplier PUT /API/Supplier/{id} Updates a supplier
UserApi CreateUserProfile POST /API/User Create user profile
UserApi DeleteUserProfile DELETE /API/User/email Delete user profile
UserApi GetUserProfile POST /API/User/Query Get a specific user profile
UserApi UpdateUserProfile PUT /API/User Update user profile
VariantApi AddProductToVariantGroup PUT /API/VariantGroup/{groupId}/{productId} Adds a product to an existing group
VariantApi AddProductToVariantGroupByProductId PUT /API/Variant/{productId1}/{productId2} Adds a product to an existing group
VariantApi CreateVariantGroup POST /API/VariantGroup Create a new variant group
VariantApi CreateVariantGroupWithProduct POST /API/Variant/{productId}/VariantGroup Create a new group for the provided product id
VariantApi DeleteVariantGroup DELETE /API/VariantGroup/{groupId} Delete an entire variant group
VariantApi DeleteVariantGroupByProductId DELETE /API/Variant/{productId}/VariantGroup Delete an entire variant group
VariantApi GetVariantGroup GET /API/VariantGroup/{groupId} Get a specific variant group
VariantApi GetVariantGroupByProductId GET /API/Variant/{productId}/VariantGroup Get the variant group for the provided id
VariantApi GetVariantLabels GET /API/Variant/Labels Get all valid variant labels
VariantApi RemoveProductFromVariantGroup DELETE /API/Variant/{productId} Remove a product from its variant group
VariantApi UpdateVariant PUT /API/Variant/{productId} Adds the variant details for the product with the provided ID
VariantApi UpdateVariantGroup PUT /API/VariantGroup/{groupId} Updates the settings of a group

Documentation for Models

Documentation for Authorization

apiKey

  • Type: API key
  • API key parameter name: x-apikey
  • Location: HTTP header

basicAuth

  • Type: HTTP basic authentication

sdk-charp-netcore's People

Contributors

arvidsson-geins avatar

Watchers

Kristian Arvidsson avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.