Introducing Acumatica Cloud ERP: 2026R1
Technical discussions focused on Web Services and APIs for developers
Recently active
I've tried this GET method but I just get an invalid type cast error:https://sandbox.com/entity/Default/22.200.001/Customer?$expand=PrimaryContact&$filter=PrimaryContact.Email eq 'kylelauridsen86@gmail.com'
I have an SOShipment object and we store a value in INItemLotSerialKvExt. We need to access the data via OData v4 and would like to get the value in a single call when accessing the SOShipment. Essentially, for every SOShipLineSplit on the shipment, we want to get the INItemLotSerial → INItemLotSerialKvExt Logically, it seems I could get this data like this: SOShipment → SOShipLineSplit → INItemLotSerial → INItemLotSerialKvExt. But those navigation properties do not seem to exist in the OData schema. Instead, the best I’ve been able to find is the following: SOShipment → SOShipLineSplit → INLotSerialStatusByCostCenter → INItemLotSerial → INItemLotSerialKvExt. This seems a round about way of getting the value. Here are the pertinent schema nodes for the links above: <EntityType Name="SOShipLineSplit"> <NavigationProperty Name="INLotSerialStatusByCostCenterByLocationID" Type="PX.Objects.IN.INLotSerialStatusByCostCenter"> <Re
I have this call:###PUT {{url}}/entity/Default/22.200.001/TimeEntryAuthorization: Bearer {{authToken}}Content-Type: application/json { "Summary" : {"value" : "Time entry summary"}, "Date" : {"value" : "2024-08-29T09:00:00" }, "Employee" : {"value" : "EMP001" }, "ProjectID" : {"value" : "CA.1001" }, "ProjectTaskID" : {"value" : "ANNUAL PAID" }, "EarningType" : {"value" : "VL" }, "TimeSpent" : {"value" : "08:00" }} The response comes back with an error (shortened):{ "id": "5fd70d80-0b66-ef11-96a7-00155dc9a206", "rowNumber": 1, "note": { "value": "" }, "error": "Inserting 'Time Activity' record raised at least one error. Please review the errors.",…"Employee": { "value": "EMP001", "error": "Employee 'EMP001' cannot be found in the system." }, Now, ‘EMP001’ definitely exists and is ‘Active”. I have even tried add the user to the “Administrator” role, but I still get the error. Any ideas would be appreciated.
I have successfully created an employee using the REST API, but I need to link that to a user. However, I do not seem to find any documentation, or API, related to managing users. Is what I’m trying to do possible using the API, or would an Admin need to use the portal to configure the relationship (Linked Entity)?
Hello again! I have a question relating to the automatic creation of item codes through the API. Along with the item codes themselves, I have a need to populate the unit of measure conversions (for example Cartons to LBS or Pallets with the conversion factors. The problem I am facing is, the UOMConversions class is not available in the Non-Stock Items object. It IS available on Stock Items, but we are not using those. We had a consulting group build out the initial system and they created a customization project to get us to where we can apparently have the UOM conversions on Non-Stock Items (as shown in this screenshot), however I am unable to contact them and need to figure out how to create those entries on the non-stock items via the API myself (along with help from here if possible).Here’s a shot of the Non-Stock Items in the customization project showing the fields I need access to: I just don’t know how to gain access to those fields via the class objects. I found a class objec
Currently, I doing this PUT method but it doesn’t do anything but return the sales order object:https://sandbox.com/AcumaticaERP/entity/Default/22.200.001/SalesOrder?$expand=Payments&$select=Payments/AppliedToOrder:{ "OrderType": {"value": "WB"}, "OrderNbr": {"value": "WB00159383"}, "Payments": [ { "ReferenceNbr": { "value": "598095" } } ] }I’m expecting it to return the unpaid balance on the order so I can use this amount to call the same method with the following body:{ "OrderType": {"value": "WB"}, "OrderNbr": {"value": "WB00159383"}, "Payments": [ { "ReferenceNbr": { "value": "787266" }, "AppliedToOrder": { "value": 55.5900 } } ] }
Hi, I used such request for uploading attachments to Acumatica for Billshttps://mycloud.acumatica.com/entity/ARTSDocEndpoint/23.200.001/bill/inv/096178/files/105908469_2024-07-29.pdfIt worked for all environments, but suddenly I started received such error {"message":"An error has occurred.","exceptionMessage":"More than one entity satisfies the condition.","exceptionType":"PX.Api.ContractBased.MoreThanOneEntitySatisfiesTheConditionException","stackTrace":" at PX.Api.ContractBased.EntityService.GetImpl(ISystemContract systemContract, String version, String name, EntityImpl entity, PXGraph screenGraph, EntityDescriptor entityDescriptor, CbOperationContext operationContext)\r\n at PX.Api.ContractBased.EntityService.DetermineEntityDescriptor(ISystemContract systemContract, String version, String name, EntityImpl entity, EntityExportContextBuilder entityExportContextBuilder, EntityDescriptor& entityDescriptor, PXGraph graph, CbOperationContext operationContext, Boolean& isArchi
Here’s what I’m doing now in SOAP to Record a CC payment: var pymtSchema = _context.AR302000GetSchema(); _context.AR302000Clear(); var commands = new List<Command>(); try { _context.AR302000Clear(); commands.Clear(); commands.Add(new Value { Value = "Payment", LinkedCommand = pymtSchema.PaymentSummary.Type }); commands.Add(new Value { Value = paymentRefNbr, LinkedCommand = pymtSchema.PaymentSummary.ReferenceNbr }); commands.Add(new Value { Value = bt_transactiontoken, LinkedCommand = pymtSchema.PaymentSummary.PaymentRef }); commands.Add(new Value { Value = bt_transactiontoken, LinkedCommand = pymtSchema.RecordCCPaymentCCPaymentData.PCTranNumber }); commands.Add(new Value { Value = "OK", LinkedCommand = pymtSchema.PaymentSummary.ServiceCommands.DialogAnswer, Commit = true }); commands.Add(pymtSchema.Actions.R
Since converting from SOAP, I’ve run into C# issues related specifically to the Sales Price (AR202000) page. For instance, when using a PUT method to create a brand new Sales Price row, I need to use a CancellationToken to timeout after 5 seconds. Otherwise, I need to wait 5+ minutes to get a response back (InnerException: Error while copying content to a stream). This is very strange since there is no wait time at all using Postman. This isn’t my biggest concern since I’ve worked around it with the timeout/cancellation.My biggest problem occurs when using a PUT method just to retrieve a Sales Price row (using InventoryID/PriceType/PriceCode). This can take anywhere between 1 second to 5 minutes just to retrieve a response. I need to do this to retrieve the RecordID, which is a new REST requirement for deleting specific SalePrice rows. I don’t receive any response errors like I do trying to create the Sales Price row. This is drastically increasing the processing time compared
Here’s the URL I tried with a POST method in Postman:https://sandbox.com/AcumaticaERP/entity/Default/22.200.001/Payment/ActionName Question: is there a way to pass a value to the popup window that is display when the Action is invoked? maybe I also need to pass something so it can submit this value?I tried to add the popup box field name but it’s not working...{ "entity": { "Type": { "value": "Payment" }, "ReferenceNbr": { "value": "598035" }, "PopupFieldName": {"value": "abc12345xyz"} }, "parameters": {}}
I’m trying to setup integrating FedEx, and I’ve been trying to setup the RestCarrier setting. All of the guides I’ve seen are just for PX.FedExCarrier.FedExCarrier, and don’t work for PX.FedExRestCarrier.FedExRestCarrier.
Good day,I want to create a customer through Acumatica Web service endpoint, and I get this error:"error": "Inserting 'Address' record raised at least one error. Please review the errors.; CountryID: 'Country' cannot be empty.",Country is required to create the customer, so I have the field added in the web service endpoint and I have tried using CountryID or Country, but it gives the error.Any suggestions?{ "CustomerID":{"value":"TESTCUSTOMER"}, "CustomerName":{"value":"Test Customer"}, "SendDunningLettersbyEmail":{"value":false}, "SendInvoicesbyEmail":{"value":false}, "SendStatementsbyEmail":{"value":false}, "Address":{ "AddressLine1": {"value": "123 Main St"}, "City": {"value": "Random city"}, "Country": {"value": "US"}, "State": {"value": "CA"}, "PostalCode": {"value": "00000"} }, "Attributes": [ { "AttributeID": { "value": "ARCONTACT" }, "Required": { "value": true }, "Value": { "value": "Cash" } } ]}
I’m trying to invoke the following: GET {{url}}/entity/Default/22.200.001/TimeEntry?$filter=cf.DateTime(f='Items.Date')%20ge%20datetimeoffset'2024-08-01'%20and%20cf.DateTime(f='Items.Date')%20le%20datetimeoffset'2024-08-16'&$select=Date,ProjectID,TimeSpent,BillableTime,EmployeeAuthorization: Bearer {{token}}Accept: application/json However, I receive the following error:{ "message": "You have insufficient rights to access the TimeEntry (PM209100) form." } When I add my user to the “Administrator” role it works fine, but I prefer using a custom role.Which permissions do I need to add to the role to make this work?I’ve tried adding all “Time and Expenses”, “Projects”, as well as “Project Management” permissions to no avail.
Hi all, I have a custom action on my Sales Order screen which sends an email to the customer of a selected order. Currently we are manually clicking this button for each order. Is there a way to access these actions via REST API given the Order Nbr? Or alternatively is there a way to “Add Email” to an order via REST API? Thanks!
I tried using the following PUT method in Postman:https://sandbox.com/AcumaticaERP/entity/Default/22.200.001/SalesPricesInquiry?$expand=SalesPriceDetails However, I have to wait 5 minutes until I get a “Could not get response” message when I use this body:{ "SalesPriceDetails": [ { "InventoryID": { "value": "00099-00098" }, "PriceType": { "value": "Customer Price Class" }, "PriceCode": { "value": "VIP" }, "UOM": { "value": "EA" }, "Price": { "value": "149.44" }, "Currency": { "value": "USD" }, "EffectiveDate": { "value": "2022-03-01T00:00:00-08:00" } }]}
I’ve been using the SOAP ValidateAddresses Action to validate the BillToAddress and ShipToAddress on my Sales Order. However, I can’t find any documentation for how to do this in REST. Can someone please offer some advice and, perhaps, an example for doing this in Postman? Thanks you in advance.
Trying to set up the FedEx Shipping Integration. The carrier page seems to be working, however the external application is not connecting correctly. Is there a guide how to set this up? This guide goes over FedEx integration, but PX.FedExCarrier.FedExCarrier and not PX.FedExRestCarrier.FedExRestCarrier.
To get the data from StockItem Entity - we have this one const ACUMATICA_API_URL = `https://client.acumatica.com/entity/EndpointName/EndpointVersion/StockItem/${stockItemId}?$expand=RelatedItems`;This works and I get these data. And I got this new SyncDetails (or SyncHistory) entity: I’ve tried this URL: https://client.acumatica.com/entity/EndpointName/EndpointVersion/SyncHistory
Good day, Is it possible to add multiple payments ex 100+ via a singular api call? We’ve had a look at the following api call (screenshot attached) which supports the addition of a singular payment on the system. Our goal is however to add payments via a batch process. Kind regards,Alecia
Hello - We are looking at creating an SFTP interface between Birchstreet and Acumatica. It is a pretty straight forward interface, that would be sending vendor and payment information outbound to the SFTP, for Birchstreet to pick up, and Birchstreet would be sending AP, (Bills with file attachments) to Acumatica. I know we can run import scenarios with AP Bills, and this seems pretty straight forward, but our Acumatica host SWK, quoted us at 100-150 hours of coding to get this done. This seems very high for such a simple interface. Does any other Acumatica user have an existing interface with Birchstreet?Thanks!
Hello, we have a requirement to import bulk Sales Order into Acumatica, so we created a custom screen and an action button in it. Then we created a web service endpoint with the custom screen and also added action in it. We are able to create Sales Order through postman but that doesn’t returning any response.Please have a look at below code and guide in correct direction. [PXButton(CommitChanges = true)] [PXUIField(DisplayName = "Process", MapEnableRights = PXCacheRights.Select, MapViewRights = PXCacheRights.Select)] public virtual IEnumerable process(PXAdapter adapter) { List<OrderImportFilter> list = adapter.Get<OrderImportFilter>().ToList(); if (this.Filter.Current != null) { if (!string.IsNullOrEmpty(this.Filter.Current.OrderData)) { OrderResponse responseData = JsonConvert.DeserializeObject<OrderResponse>(this.Filter.Current.OrderData); if (r
We have extended the StockItems endpoint from 23.200.001to include the following fieldsIt works great when filtering on AlternateID or InventoryID but when we try to filter on VendorCustomer we get a nil object unless we use substringof.Here’s an example:GET Request: ~/23.200.001/PartNumberXRef/?$filter=InventoryID eq '104175' and substringof('00250'%2CVendorCustomer)Returns: [{"id":"655f9396-3b5a-4796-8031-f18d8c447610","rowNumber":1,"note":null,"AlternateID":{"value":"3639541"},"InventoryID":{"value":"104175"},"VendorCustomer":{"value":"000000000250"},"custom":{}}]If we try this request, we get a nil object.GET Request: ~/23.200.001/PartNumberXRef/?$filter=InventoryID eq '104175' and VendorCustomer eq '000000000250'Returns: []Any thoughts as to why the equals query is not working or what we’re doing wrong?Thank you in advance.
We are using data from Acumatica in our BI (Superset) and Data Warehouse, but we are running into an issue. We pull the data via OData for each DAC. But, our number are off every time someone deletes a Sales Order, Return, Shipment, Refund, Payment, Invoice, etc. I looked at https://help.acumatica.com/(W(9))/Help?ScreenId=ShowWiki&pageid=4a1939a3-26aa-49e3-83c6-5bcc884e66b9, and tried adding the column to the SOOrder table, then deleting an order, and it didn’t work (I tried with and without the Usr in front) - It deleted the order, and it did not preserve the data as it says it would in the doc. I had planned to create a customization with a DB view to then use in a GI to then send push notifications to our Data Warehouse, but I can’t get past the part of being able to see what data is being deleted. I also looked at the Trace after deleting an order, which wasn’t helpful because it doesn’t show the deleted data either (that is below). Any pointers or suggestions here?SELECT COUNT
HiI have developed an integration using Odatav4 - to fetch(read only) from DAC based queriesI would like to know what the minimum User Role/Licence Type is needed in AcumaticaThe role is, I assume, “Odatav4User”The Licence Type. “Limited API” , “Full API” ? Kind Regards
Hi,I have a customization that used to work in R2021 but is new throwing a “server has restarted” message since moving to R2022. This is on a local instance (2022.217.202.5231) and I have narrowed my code right down to the smallest steps to replicate the issue. This identifies that this appears to be the result of making an asynchronous API call from within a processing form.So, my question is how should one make asynchronous calls from within a processing form and what is wrong with the code below (which was used to work on R2021)?I have also found this link in my travels:https://stackoverflow.com/questions/50910047/is-it-possible-to-use-async-methods-inside-acumaticas-pxlongoperation Here is the simplified code that produces the problem: I have a processing form:This is looping over a MASTRemoteExt DAC which has 44 recordsAnd the TestAPI method in the MASTRemoteMaint Graph:All this is doing is, for each remote record, making an asynchronous API call using HTTPClient and setting the
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.