For API GET call, not receiving item type in the payload for custom part.
Hi, We have following scenario, If I do a get call for Part or Requirement, I'm receiving the respective item-types id as 'itemtype':'id' in payload. But if I do get call for a custom Item I'm not receiving the 'itemtype':'id' in its payload. If I have to get the 'itemtype':'id' for a custom item, do I need to update my item type or my API call? Below, I have added API calls and responses for different items. Get Call for Requirement: instance/Server/odata/re_Requirement('D2E185A3F91248CEB219C848C56EC97C')?$expand= Payload: { "@odata.context": "instance/Server/odata/$metadata#re_Requirement/$entity", "classification": "Requirement", "content": "<Requirement aras:id=\"4c2ebcb8a3d544769f42e1238ddb0b55\" reqId=\"70F10587B45F4B7DB612CD2455089234\" xmlns:aras=\"http://aras.com/ArasTechDoc\" xmlns=\"http://www.aras.com/REStandard\"><Requirement-Info aras:id=\"1e9e767cf6d24c838d902d3e1e3e5c65\"><Requirement-Chapter aras:id=\"d1c3cc1e37954198b01ad944bfb74150\"><aras:emph emphtype=\"text\"></aras:emph></Requirement-Chapter><Requirement-Title aras:id=\"7b86d25939b248d99aa3fc6a27aac6ff\"><aras:emph emphtype=\"text\">Asot Req 1</aras:emph></Requirement-Title><Requirement-Number aras:id=\"fe249c8cbe1f4926843bcc65703fa948\"><aras:emph emphtype=\"text\">REQ-000000272</aras:emph></Requirement-Number></Requirement-Info><Text aras:id=\"27be607cf9014ff591071e5a4b62a1e6\" /></Requirement>", "[email protected]": "en", "created_on": "2026-01-14T07:01:01", "[email protected]": "Draft", "generation": 2, "global_version": "32007", "id": "D2E185A3F91248CEB219C848C56EC97C", "is_current": "1", "is_released": "0", "keyed_name": "REQ-000000272 Asot Req 1", "major_rev": "A", "modified_on": "2026-01-19T07:39:05", "new_version": "0", "not_lockable": "0", "req_complexity": "Low", "req_priority": "Low", "req_risk": "Low", "root_element_name": "Requirement", "root_element_type": "Single", "state": "Draft", "item_number": "REQ-000000272", "req_title": "Asot Req 1", "itemtype": "55515617CB224C90AB5A9DAC0F061C2A" } Get Call for Custom Item: instance/Server/odata/poc_ASOT_Item('EE714F53C7D8438990900B58658C5763')?$expand= Payload: { "@odata.context": "instance/Server/odata/$metadata#poc_ASOT_Item/$entity", "created_on": "2026-01-19T13:57:35", "generation": 1, "id": "EE714F53C7D8438990900B58658C5763", "is_current": "1", "is_released": "0", "keyed_name": "ASOT_00086", "major_rev": "A", "modified_on": "2026-01-19T13:57:35", "new_version": "1", "not_lockable": "0", "poc_channel_name": "234", "poc_datasource": "DOORS_SOURCE_1", "poc_datasourcetype": "DOORS", "poc_displayname": "xyz", "poc_fqn": "rr33ee55", "poc_item_number": "ASOT_00086" } Do you know how to do this? Thanks in advance. Best regards TanjumSolved74Views0likes2CommentsEditing an item via REST API without item id. Can we specify a WHERE attribute?
Hi community, I want to edit a custom item in Innovator via REST API. Typically the command looks like this: PATCH {base url}/Part(’16AA95A80DEB4B56BD8BA9BC509EAF0C’) My 2nd software that shall do the REST call doesn´t know the target item id. I only have the serial number (item_number) of the target item in Innovator. For regular AML queries we can use the WHERE attribute to perform these kinds of edit operations. Is something similar available in the REST API? An alternative solution would be to do a regular GET request first to get the ID. Or maybe a custom Method that does the edit with a standard AML query. Any ideas? What would you recommend? Thanks! AngelaSolved139Views0likes6CommentsAras REST Api
Hi, I am trying to build a C# HttpClient that will interact with Aras REST Api, I have followed the setup from this document Aras Rest API I noticed that I have to log into a pop up window very X minutes. Does anyone know if there is a way to pass user credentials into the token call? Thanks,114Views0likes4CommentsRESTFul API Delete Method Error 405
I tried to delete ItemType by following the Document about RESTful API in Aras. For example, PostMan was called as below (DELETE) localhost/.../exItemType ('abcde') If you call it url A 405.0 - Method Not Allowed error message is returned. Additionally, I tried to remove the RelationshipShip for itemType, but the same error occurred. Relationship remove was also carried out according to Document's method. For example, PostMan was called as below (DELETE) localhost/.../$ref This also returns an error of 405. How can I use RESTful to remove itemType?49Views0likes2CommentsIs there an "in" operator in the Aras REST API?
Hi community, Is there a way to optimize the following REST request that gets a number of specific items? https: // arasmagiccastle.com/test/server/odata/MagicItemType ?$ filter=serial_number eq '9879' or serial_number eq '678' or serial_number eq '643' or serial_number eq '123' or serial_number eq '234'........ Problems: 1. The number of requested items isn´t fixed, so the query can get super long 2. I don´t like it (solid argument, don´t question it! [emoticon:33306c418930400bac28808410f8ac8b]) What I would love to have: https://beautifulplm.com/test/server/odata/MagicItemType?$filter=serial_number in ('9879','678','643','123','234'). Good alternative: Another option would be to use a POST operation with @aras.action=get. This would allow us to use the filter condition inside the body. But Innovator doesn´t seem to support this variant yet. Browsers support URLs with a few thousand characters. The long query isn´t a problem right now. But I wonder if there is a more elegant solution to write requests like this? Thanks for any hint! @Aras: If you need more ideas for REST...Here you go! :)62Views0likes3CommentsRecursive API call to explode BOM
The internal reporting tool in Aras doesn't work for us therefore we have to use external tools. I need to explode the BOM downwards for parts. Use this data in PowerBi to create reports. I have figured how get the BOM structure but it only gives level 1. How do I drill down? This is my call to get level 1 BOM url/Part('9A75B30B66A5465BA372C30384133345') BOM($select=quantity,nmg_material_record;$expand=related_id($select=item_number,unit,major_rev))22Views0likes0CommentsConsuming CWS Endpoints in Aras Innovator
My previous blog reviewed how to configure a simple Web Service using Configurable Web Services. This companion blog will use the same example created in my previous blog and go over how to submit requests to the Web Service you created. It will be similar to previous blogs about authenticating with and utilizing our Rest API. We’ll be using Postman to execute our requests, but you can also use this method to communicate with Aras Innovator from your own custom applications. API Key vs Oauth In the previous blog, I showed how you could generate an API Key for your Web Service. I want to take a moment to say that while those are useful, they should not be used except in unique circumstances. The biggest reason is the lack of traceability. When external systems are accessing or modifying your Aras Innovator instance, you want a record of who is making those transactions. For custom applications, you should be authenticating via OAuth, as we will in this post. API Keys are intended for use in cases where a server-to-server connection is being made, and you wouldn’t be worried about who is committing that action. An example would be an Azure service called s called automatically and programmatically. The API Key would be the better option there as a user wouldn’t be responsible for the transaction. An Example – Launching Postman Since we’ve already created our Web Service, the next step is to launch Postman. If you’re unsure how to use/authenticate with Postman, take a look at these two blogs on authenticating and utilizing our Rest API. The format for querying your Web Service is exactly the same as using our OData endpoint. Using OData, a request for all parts looks like this: http://localhost/31demo/Server/Odata/Part Querying our new endpoint looks like this: http://localhost/31demo/Server/ws/partBom/v1/Part The URL you use is specific to your Endpoint, and of course, you can have multiple. You can find the URL in the Endpoints tab of your Web Service. It’s also important to note that you can use all the same tricks to get specific data that you can use in the OData endpoint. Things like filtering, getting specific items, and querying relationships all work. Here’s an example of the part output. The only things that are returned from your query are the things you defined in your Web Service. If you try to get Documents without including them in your Endpoint, you’ll see the following result. This is very powerful, allowing you to ensure that only the required data is exposed. A great example of this would be if you wanted to create an external application that queries Aras Innovator®. You’d want to limit the app's access to avoid potential security issues. That was a quick demonstration of how you can consume your Configurable Web Services. I highly recommend playing around with the Endpoint editor to see if it could suit the needs of your external applications.147Views0likes0Comments