Introducing Acumatica Cloud ERP: 2026R2
Technical discussions focused on Web Services and APIs for developers
Recently active
We are using the nuget package Acumatica.RESTClient.ODataApi version 4.1.0. We are trying to call a generic inquiry via OData v3 using ODataApi.GetOData(). However, the $orderby parameter is not listed as a parameter for this method.The method includes the following parameters:select, filter, expand, skip, and top - but not $orderby.Is there a way to make an OData v3 call using an $orderby parameter?
I have been trying to send a token via API Key Authorization method but I've been getting an unauthorized error: {StatusCode: 401, ReasonPhrase: 'Unauthorized', Version: 1.1, Content: System.Net.Http.NoWriteNoSeekStreamContent, Headers:{ Date: Wed, 23 Oct 2024 16:35:03 GMT Transfer-Encoding: chunked Server: Microsoft-IIS/10.0 Content-Type: application/json; charset=utf-8}}This is my code:using System;using System.Collections;using System.Collections.Generic;using System.Linq;using System.Text;using PX.Common;using PX.Data;using PX.Data.BQL;using PX.Data.BQL.Fluent;using PX.Objects.CM;using PX.Objects.CS;using PX.Objects.GL;using PX.Objects.Common.Extensions;using PX.Objects;using PX.Objects.IN;using RiverlandDesarrolloV231;using System.Net.Http;using System.Threading.Tasks;using Newtonsoft.Json;using PX.Concurrency;namespace PX.Objects.IN{ public class INReceiptEntry_Extension : PXGraphExtension<PX.Objects.IN.INReceiptEntry> { #region Event Handlers public
We have a custom publicly available filter. public PXFilter<ShipperTankFilter> showShipperTanksFilter;The filter is defined as follows: [PXHidden] [Serializable] public class ShipperTankFilter : IBqlTable { #region TankSerialNbr [PXString(20)] [PXSelector(typeof(Search<SOShipLineSplit.lotSerialNbr>))] [PXUIField(DisplayName = "Tank Serial Nbr", Enabled = true)] public virtual string TankSerialNbr { get; set; } public abstract class tankSerialNbr : PX.Data.BQL.BqlString.Field<tankSerialNbr> { } #endregion }We have an action called createBoxes. We’ve exposed this action as a REST API endpoint named CreateBoxes, mapping the TankSerialNbr parameter. When we call the CreateBoxes action via Postman, we receive a 422 Unprocessable Entity error. By way of troubleshooting, we create another field TankSerialNbr2 on the filter as shown: [PXHidden] [Serializable] public class ShipperTankFilter : IBql
Hello! Is there a way that we can get a status changed date into a report not viewing by the Audit History? Amanda
I made a custom endpoint: I added the PrimaryQuote action: I send a POST request to set a Sales Quote as primary: I get a server error: { "message": "An error has occurred.", "exceptionMessage": "Object reference not set to an instance of an object.", "exceptionType": "System.NullReferenceException", "stackTrace": " at PX.Api.ContractBased.EntityService.Invoke(ISystemContract systemContract, String version, String name, EntityImpl entity, ActionImpl action, CbOperationContext operationContext, Boolean throwOnError)\r\n at PX.Api.ContractBased.AspNetCore.CbEndpointFeatureServiceExtensions.Invoke(IEntityService entityService, ICbEndpointFeature feature, EntityImpl entity, ActionImpl action, CbOperationContext operationContext)\r\n at PX.Api.ContractBased.WebApi.Controllers.ActionController.InvokeAction(String objectName, String actionName, ActionInvocation invocation)\r\n at lambda_method(Closure , Object , Object[] )\r\n at Microsoft.AspNetCore.Mvc.Internal.Acti
Hi guys I am trying to make a report based on today’date, payment method and status open. This is going to be on payment screen. Any one please guide me with any reference. When we select these fields in parameters It should return all the payments with customers in report. It will have customer relation with payemtns . Any one please guide me on how to start
Hello,On Acumatica Cloud 2024 R1I’m using the end point Default/23.200.001/Payment (also tried with Default/22.200.001/Payment) After creating a SaleOrder, I’m trying to add a Payment for it using the web service, but I’m stuck in error returning from the API with this message:{ "message": "The request is invalid.", "modelState": { "": [ "An exception occurred during input parsing" ] }}I’m not sure what is invalid, I’m using the same JSON format I used to create the sales order, here is my payment POST request: { "Type": { "value": "Payment" }, "CustomerID": { "value": "1047204" }, "ApplicationDate": { "value": "2024-10-18T11:00:51" }, "PaymentAmount": { "value": "439.22" }, "PaymentMethod": { "value": "ONLINE" }, "PaymentRef": { "value": "86561" }, "CashAccount": { "value": "11140_____" }, "AppliedToDocuments": [ { "Type": { "value": "SO" }, "ReferenceNbr": { "value": "86561" },
hi, All. We have one screen name bank deposits. I am trying to put data in ths screen using API. I have extended the endpoint and add this screen in webservices. But when I am calling put method it returns an error.Can any one please guide me on this
Here is the URL that has been working for well over a yearhttps://companyx.acumatica.com/ODatav4/companyx/PX_OBJECTS_AR_ARADDRESS?$format=jsonStarting on October 8th, 2024. the Azure Data Factory pipelines started failing with the error ”ErrorCode=RestCallFailedWithClientError,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=Rest call failed with client error, status code 404 NotFound”I am hunting for a change notification or something regarding the URL needing to be updated or something, but I am not having any luck. Thoughts?
Hi, I have created a new endpoint in acumatica and then entity of payment in it, Then i tried to create a record using the API but the payment Tab is null and the main summary is created.My query is :http://localhost/PR00000009/entity/Bank/22.200.001/BankDeposit?body: Entity : Below is the screen shot of the screen. The summary is created by PUT API but payment is null. What should i do in this case ? Response:
Hi everybody,Is there a native way to using the REST API to filter the list of ProjectTasks (for example) based on a single Attribute’s value? I tried a couple things for the $filter. I tried referencing attributes as if it they weren’t an array, like so.Attributes/AttributeID eq 'SCOPE' and Attributes/Value eq 'Test'But I got this error: “The parent value for a property access of a property 'AttributeID' is not a single value. Property access can only be applied to a single value” Then I tried using the `any` lambda, referenced here:Attributes/any(a: a/AttributeID eq 'SCOPE' and a/Value eq 'Test')But I got this error: “The method or operation is not implemented.” Is there any way to do this?
Hello all,I am currently implementing token retrieval using HttpClient in the .NET Framework and have encountered an issue. I am using the SendAsync method to send the username and password in the JSON body as part of the request, but I'm experiencing difficulties with the token acquisition.Below is a snippet of the code I am using for this operation:public PXAction<INRegister> PrenderAntena;[PXButton][PXUIField(DisplayName = "Prender Antena", MapEnableRights = PXCacheRights.Select, MapViewRights = PXCacheRights.Select, Enabled = true)]protected virtual IEnumerable prenderAntena(PXAdapter adapter){ Prueba(); return adapter.Get();}public async Task Prueba(){// Use specific classes to define the JSON structure var credentials = new Credentials { usuario = new FieldValue { value = "MyUser" }, contraseña = new FieldValue { value = "MyPassword" } }; string jsonPayload = JsonConvert.SerializeObject(credentials, Formatting.Indented); string url = "M
Hello! I am trying to pull all historical Sale Orders via the REST API. Given that we have a lot of orders, the request takes over 10 minutes. However, I noticed that every time I run the request, I hit this error around the 10 minute mark:If I add a time filter, eg get all Sales Orders after some date, the api returns results as long as it finishes in under 10 minutes. Anyone know what’s going on? Is there a way to set the timeout to be > 10 minutes?[OperationCanceledException: Operation Cancelled] PX.Data.PXCancellationToken.CheckCancellation() +197 PX.Data.PXAccess.GetConnectionString() +15 PX.Data.PXDatabase.get_Provider() +143 PX.Data.PXViewQueryCollection.Unload() +87 PX.Data.PXGraphQueryCacheCollection.Unload() +105 PX.Data.PXGraph.Unload() +2267 PX.Api.ContractBased.EntityExportContextBuilder.Dispose() +49 PX.Api.ContractBased.<GetListAsyncFromEnumerable&gt;d__8.MoveNext() +2117 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() +32 Sys
Hi, All. I am trying to get the UDF on customer screen using the GET in rest API. But the problem is the get call is returning the value null. Even the value is present in the UDF in UI. Any suggestion what should i do? Secondly when I am trying PUT request with empty body there is a value in the custom dict. Any one please help or guide me on how to over come this and what will be the best approach to fetch all udf values with customer id.GET: http://localhost/entity/Default/22.200.001/Customer?$filter=CustomerID eq '000002'&$custom=Baccount.AttributeAGDCRAN PUT: with same query
We have an external system that makes REST API calls to the SalesOrder endpoint. Every once in a while the resulting JSon has null for all Usr fields. I can refresh the data and the result will have all field values.The other day we added code in the graph extension’s initialization routine to access some custom fields in a setup table. Then we started to see the occasional error because those calls to GetExtension were failing. But only once in a while. But when they started to fail, they continued to fail, over and over, for a period of time. Sometimes we restarted Acumatica, sometimes the error just went away.I removed the code from the initialization routine and things were better.Doing some stress testing today, forcing ACM to send me the GET result from the order over and over, we’d get to a point where the JSon result was showing null values in all custom fields. The base fields still contained data. No change to the underlying transactional data - just sending multiple GET re
I'm trying to fetch the user-defined-field that I added in Customer Entity but it's not working. I'm getting this error: "message": "An error has occurred.", "exceptionMessage": "The column 'Document_AttributeCWCID' is not found in the data set.",It is working in Contact entity and SalesOrderMy sample parameter in Contact $custom = Contact.AttributeCWCIDIn SalesOrder: $custom = Document.AttributeSOID
Hi,I’m trying to integrate Cybersource Secure Acceptance as a new Processing Center in Acumatica,My problem is that after creating the processing center and after adidng payment method, when I go to pay a sales order , it’s not showing authorize or capture option and work as if it’s offlice payment method, see this screenshothere is what I did in creating my paymen pluginCreated a customization project in that project I created a class that implment ICCProcessingPlugin and I added all the settings and based on it I was able to create the payment processor and ad dpayment method attached to it. I created another class that implement ICCHostedPaymentFormProcessor , this is where I’m adidng the form that will be used to implement the payment form where the user enter his card details , I implemented the method “HostedFormData GetDataForPaymentForm” I created class to implmenet ICCTransactionProcessor but I’m not sure if it’s required or notWhat I expected when I go to create payment for S
Is it possible to notify a user with an on screen message when a business event’s condition is met? The use case is to display a message to the warehouse receiver when receiving an item that has a attribute set for special storage conditions such as Allergen, SDS, COA.
I have a custom button on a grid and want it to be enabled only for certain rows.Therefore I implment the RowSelected event and use SetDisabled(false).That seems to have no effect. Pressing the button after selecting a row where the action should be disabled is still possible but causes an error message saying the button is disabled.What do I have to do to get the button shown correctly as disabled? Some Code:ASPX:<asp:Content ID="cont1" ContentPlaceHolderID="phDS" Runat="Server"> <px:PXDataSource ID="ds" runat="server" … > <CallbackCommands> <px:PXDSCallbackCommand Name="Discard" DependOnGrid="grid" ><asp:Content ID="cont2" ContentPlaceHolderID="phL" runat="Server" RepaintOnDemand="false"> <px:PXGrid ID="grid" runat="server" DataSourceID="ds" SkinID="Details" >… <ActionBar > <CustomItems> <px:PXToolBarButton Text="Discard"> <AutoCallBack Command=
Hi,I used the screen “Web Services Endpoints” then menu “… > Service Definition > Open API 2.0” to generate the swagger.json file.This is for the Acumatica: "/entity/Default/23.200.001" collectionI then processed that through the openapi-generator to generate a java client:java -jar openapi-generator-cli-7.8.0.jar generate -i [domain]entity/Default/23.200.001/swagger.json?company=[company] -g java --api-package [mypackage].finance.acumatica.openapi.client --model-package [mypackage].acumatica.openapi.client.model -o testoutput --skip-validate-specThat generates the java client .java files. These all compile to .class files without any errors.So this all looks good so far. This is industry standard for generating a client from swagger.json data. However when I run the client I get an error. The client makes a request to acumatica for data like: VendorApi va = new VendorApi(apiClient); List ids = new ArrayList();
Hello all, I need to Nightly update 200-500 Projects Tasks to Completed and then Run the Allocation through the REST API. Works great for 1 project 1 task. But I will need to many each night. Is there a way to batch them in instead of 1 call to ProjectTask and 1 to run the Allocation? IS the REST API not the best way to do it? Thank you
Hi,I’m trying to filter out Project Tasks via my API query but so far haven’t been able to get this to work correctly. So far, I’ve tried filtering like this:“VisibilitySettings/TimeEntries eq 'true'”and“VisibilitySettings/TimeEntries eq true” For both of these filters, I will still get back ProjectTasks whose TimeEntries Visibility settings are equal to “false”. Is this possible to do?
My company has implemented integrated for UPS, however, we find that our discount with UPS is not applying. What could be causing this glitch and how can it be fixed?Acumatica’s Integrated Shipping Cost Our Expected Rate
I use $expand to examine an existing Sales Order:https://sandbox.com/entity/Default/22.200.001/SalesOrder/WB/WB00162584?$expand=FinancialSettings,BillToContact,BillToAddress,ShippingSettings,ShipToAddress,ShipToContact,Details,TotalsHowever, the Details JSON doesn’t include Subaccount. Do I need to expand something else to see it? I want to be able to create another details line and include the Subaccount but I’m not sure what to use.
When viewing a Blanket Order in the Acumatica UI, a tab is displayed which lists the children of that blanket order. Is there any way to fetch this list of orders using the REST API?Thank you.
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.