예제 #1
0
        public static void GetOrderTransactions()
        {
            string endpoint = "https://api.ebay.com/wsapi";
            string callName = "GetOrderTransactions";
            string siteId   = "2";
            string version  = "949";
            // Build the request URL
            string requestURL = endpoint
                                + "?callname=" + callName
                                + "&siteid=" + siteId
                                + "&appid=" + Settings.AppId
                                + "&version=" + version
                                + "&routing=default";
            // Create the service
            eBayAPIInterfaceService service = new eBayAPIInterfaceService();

            // Assign the request URL to the service locator.
            service.Url = requestURL;
            // Set credentials
            service.RequesterCredentials = new CustomSecurityHeaderType();
            service.RequesterCredentials.eBayAuthToken =
                "AgAAAA**AQAAAA**aAAAAA**c8WOVg**nY+sHZ2PrBmdj6wVnY+sEZ2PrA2dj6AAlIeiCpiLoAydj6x9nY+seQ**JiADAA**AAMAAA**sPiqCG+IiAwqtalGeoTnnESc7Br2D+btBopa9arMMDNaOfglryGRHk3tn/aXAj3p2/KmDiKSmYrg51QGFNokYSGUskmH/jjsOtKgoLyTTJZ+3CtWqeAOz/cbrYadAD8l+s6xUfnTk9mWm4BjyAfYqJ1zkNHUC5YaFTk+oaDZPZ9bE7uGjfw1cvQeX6M7TalgTSygqdVV6hOVJZ3I9UPuO66HchFTPvd4n02aZ2UfsXrcYdOpstNdjLuETQIB5tmUWo6uiCwh/r+eiWt8jIycZegb/9uRHzwEy7rW9Tk7fIpIohoBtryYRLUnMJvy9Dg4l++AhFY0yakWJsWu7VHy7eCuz+OI0Pk+E+uOQhgQRzIji96K6/AnBNV9lLiOa6CiI5MdkcrF2Z4Kr4WoxAgy+4WjoUq+PRG8eDHseFWANwOVhmY9qZJq0ulR9SNcXd8FoRiinxzx3f+lO+MgfrRcea2QKKQVoYDI69jKOQ568FVQ6Zp0ClJy9ru/L9IqB87COBLFP6Ie+Zx+2nhgj+GuARYOu2z0Z7kqx+R6H19hIYoxNncQtGi2ruzqWXG+hbFWXTlqrne8IiJr1udgK1ZxJk9FTCCKQCx0s57SXuBkyaM15y2pqC+ze43ZiLGC3wk94pWEACDNRWu4rH27RZTN+ALBoGWkVdSzGxuVfMD164ak4cAJrIiT2OX77FqnLN+MGcVbfJCAu+BREtguSzW6JmM9qHXHBI+4H/jfGruvYoIt2zg7DzMFv50i+hpnLe5F";
            // use your token
            service.RequesterCredentials.Credentials          = new UserIdPasswordType();
            service.RequesterCredentials.Credentials.AppId    = Settings.AppId;
            service.RequesterCredentials.Credentials.DevId    = Settings.DevId;
            service.RequesterCredentials.Credentials.AuthCert = Settings.CertId;
            // Make the call
            GetOrderTransactionsRequestType request = new GetOrderTransactionsRequestType();

            request.Version = "949";
            var response = service.GetOrderTransactions(request);

            Console.WriteLine(response.Timestamp);
        }
예제 #2
0
        public OrderType[] GeteBayOrdersByOrderLineItemID(IList <string> orderLineItemIDs)
        {
            try
            {
                if (orderLineItemIDs == null || orderLineItemIDs.Count == 0)
                {
                    return(default(OrderType[]));
                }

                GetOrderTransactionsCall        getOrderTransactionCall;
                GetOrderTransactionsRequestType getOrderTransactionRequest;

                DetailLevelCodeTypeCollection detailLevelColl = new DetailLevelCodeTypeCollection();
                detailLevelColl.Add(DetailLevelCodeType.ItemReturnDescription);

                var apiContext = _eBayApiContextProvider.GetAPIContext();

                List <OrderType> returnOrders = new List <OrderType>();

                getOrderTransactionCall                = new GetOrderTransactionsCall(apiContext);
                getOrderTransactionRequest             = new GetOrderTransactionsRequestType();
                getOrderTransactionRequest.DetailLevel = detailLevelColl;

                int pageSize   = 20;
                int totalPage  = Convert.ToInt32(Math.Ceiling(Convert.ToDecimal(orderLineItemIDs.Count()) / Convert.ToDecimal(pageSize)));
                int pageNumber = 1;

                do
                {
                    getOrderTransactionRequest.ItemTransactionIDArray = new ItemTransactionIDTypeCollection();
                    var lstTransactionIDs = orderLineItemIDs.Select(olid => new ItemTransactionIDType()
                    {
                        OrderLineItemID = olid
                    }).Skip((pageNumber - 1) * pageSize).Take(pageSize);
                    getOrderTransactionRequest.ItemTransactionIDArray.AddRange(lstTransactionIDs.ToArray());

                    var getOrderTransactionResponse = getOrderTransactionCall.ExecuteRequest(getOrderTransactionRequest) as GetOrderTransactionsResponseType;
                    if (getOrderTransactionResponse.OrderArray != null && getOrderTransactionResponse.OrderArray.Count > 0)
                    {
                        returnOrders.AddRange(getOrderTransactionResponse.OrderArray.ToArray());
                    }

                    pageNumber++;
                } while (pageNumber <= totalPage);

                return(returnOrders.ToArray());
            }
            catch (Exception ex)
            {
                LogManager.Instance.Error(ex.Message);
                throw ex;
            }
        }
예제 #3
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="ApiContext">The <see cref="ApiCall.ApiContext"/> for this API Call of type <see cref="ApiContext"/>.</param>
 public GetOrderTransactionsCall(ApiContext ApiContext)
 {
     ApiRequest      = new GetOrderTransactionsRequestType();
     this.ApiContext = ApiContext;
 }
예제 #4
0
 /// <summary>
 ///
 /// </summary>
 public GetOrderTransactionsCall()
 {
     ApiRequest = new GetOrderTransactionsRequestType();
 }
		/// <summary>
		/// 
		/// </summary>
		/// <param name="ApiContext">The <see cref="ApiCall.ApiContext"/> for this API Call of type <see cref="ApiContext"/>.</param>
		public GetOrderTransactionsCall(ApiContext ApiContext)
		{
			ApiRequest = new GetOrderTransactionsRequestType();
			this.ApiContext = ApiContext;
		}
		/// <summary>
		/// 
		/// </summary>
		public GetOrderTransactionsCall()
		{
			ApiRequest = new GetOrderTransactionsRequestType();
		}
예제 #7
0
 public static void GetOrderTransactions()
 {
     string endpoint = "https://api.ebay.com/wsapi";
     string callName = "GetOrderTransactions";
     string siteId = "2";
     string version = "949";
     // Build the request URL
     string requestURL = endpoint
                         + "?callname=" + callName
                         + "&siteid=" + siteId
                         + "&appid=" + Settings.AppId
                         + "&version=" + version
                         + "&routing=default";
     // Create the service
     eBayAPIInterfaceService service = new eBayAPIInterfaceService();
     // Assign the request URL to the service locator.
     service.Url = requestURL;
     // Set credentials
     service.RequesterCredentials = new CustomSecurityHeaderType();
     service.RequesterCredentials.eBayAuthToken =
         "AgAAAA**AQAAAA**aAAAAA**c8WOVg**nY+sHZ2PrBmdj6wVnY+sEZ2PrA2dj6AAlIeiCpiLoAydj6x9nY+seQ**JiADAA**AAMAAA**sPiqCG+IiAwqtalGeoTnnESc7Br2D+btBopa9arMMDNaOfglryGRHk3tn/aXAj3p2/KmDiKSmYrg51QGFNokYSGUskmH/jjsOtKgoLyTTJZ+3CtWqeAOz/cbrYadAD8l+s6xUfnTk9mWm4BjyAfYqJ1zkNHUC5YaFTk+oaDZPZ9bE7uGjfw1cvQeX6M7TalgTSygqdVV6hOVJZ3I9UPuO66HchFTPvd4n02aZ2UfsXrcYdOpstNdjLuETQIB5tmUWo6uiCwh/r+eiWt8jIycZegb/9uRHzwEy7rW9Tk7fIpIohoBtryYRLUnMJvy9Dg4l++AhFY0yakWJsWu7VHy7eCuz+OI0Pk+E+uOQhgQRzIji96K6/AnBNV9lLiOa6CiI5MdkcrF2Z4Kr4WoxAgy+4WjoUq+PRG8eDHseFWANwOVhmY9qZJq0ulR9SNcXd8FoRiinxzx3f+lO+MgfrRcea2QKKQVoYDI69jKOQ568FVQ6Zp0ClJy9ru/L9IqB87COBLFP6Ie+Zx+2nhgj+GuARYOu2z0Z7kqx+R6H19hIYoxNncQtGi2ruzqWXG+hbFWXTlqrne8IiJr1udgK1ZxJk9FTCCKQCx0s57SXuBkyaM15y2pqC+ze43ZiLGC3wk94pWEACDNRWu4rH27RZTN+ALBoGWkVdSzGxuVfMD164ak4cAJrIiT2OX77FqnLN+MGcVbfJCAu+BREtguSzW6JmM9qHXHBI+4H/jfGruvYoIt2zg7DzMFv50i+hpnLe5F";
     // use your token
     service.RequesterCredentials.Credentials = new UserIdPasswordType();
     service.RequesterCredentials.Credentials.AppId = Settings.AppId;
     service.RequesterCredentials.Credentials.DevId = Settings.DevId;
     service.RequesterCredentials.Credentials.AuthCert = Settings.CertId;
     // Make the call
     GetOrderTransactionsRequestType request = new GetOrderTransactionsRequestType();
     request.Version = "949";
     var response = service.GetOrderTransactions(request);
     Console.WriteLine(response.Timestamp);
 }
예제 #8
0
        public OrderType[] GeteBayOrdersByOrderLineItemID(IList <OrderLineItemIDObject> orderLineItemIDs)
        {
            try
            {
                if (orderLineItemIDs == null || orderLineItemIDs.Count == 0)
                {
                    return(default(OrderType[]));
                }

                GetOrderTransactionsCall        getOrderTransactionCall;
                GetOrderTransactionsRequestType getOrderTransactionRequest;

                DetailLevelCodeTypeCollection detailLevelColl = new DetailLevelCodeTypeCollection();
                detailLevelColl.Add(DetailLevelCodeType.ReturnAll);

                var apiContexts = _eBayAPIContextProvider.GetAPIContext();

                List <OrderType> returnOrders = new List <OrderType>();


                var orderLineItemIDGroup = orderLineItemIDs.GroupBy(i => i.SellerID);
                foreach (var sellerGroupItemID in orderLineItemIDGroup)
                {
                    var apiContext = apiContexts.Where(c => c.ApiCredential.eBayAccount.UserName.ToLower().Equals(sellerGroupItemID.Key.ToLower())).FirstOrDefault();
                    if (apiContext != null)
                    {
                        getOrderTransactionCall                = new GetOrderTransactionsCall(apiContext);
                        getOrderTransactionRequest             = new GetOrderTransactionsRequestType();
                        getOrderTransactionRequest.DetailLevel = detailLevelColl;

                        int pageSize   = 20;
                        int totalPage  = Convert.ToInt32(Math.Ceiling(Convert.ToDecimal(sellerGroupItemID.Count()) / Convert.ToDecimal(pageSize)));
                        int pageNumber = 1;

                        do
                        {
                            getOrderTransactionRequest.ItemTransactionIDArray = new ItemTransactionIDTypeCollection();
                            var lstTransactionIDs = sellerGroupItemID.Select(gi => new ItemTransactionIDType()
                            {
                                OrderLineItemID = gi.OrderLineItemID
                            }).Skip((pageNumber - 1) * pageSize).Take(pageSize);
                            getOrderTransactionRequest.ItemTransactionIDArray.AddRange(lstTransactionIDs.ToArray());

                            var getOrderTransactionResponse = getOrderTransactionCall.ExecuteRequest(getOrderTransactionRequest) as GetOrderTransactionsResponseType;
                            if (getOrderTransactionResponse.OrderArray != null && getOrderTransactionResponse.OrderArray.Count > 0)
                            {
                                returnOrders.AddRange(getOrderTransactionResponse.OrderArray.ToArray());
                            }

                            pageNumber++;
                        } while (pageNumber <= totalPage);
                        //foreach (var orderLineItemIDObj in sellerGroupItemID)
                        //{

                        //}
                    }
                }


                return(returnOrders.ToArray());
            }
            catch (Exception ex)
            {
                return(default(OrderType[]));
            }
        }