Editing 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! Angela0Views0likes0CommentsAras 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,0Views0likes4CommentsRESTFul 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?0Views0likes2CommentsIs 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! :)0Views0likes3CommentsRecursive 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))0Views0likes0CommentsConsuming 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.2Views0likes0CommentsCan <servername> in an ARAS URL include a path parameter?
link As per the above document, a valid ARAS server URL is of the pattern "https://<servername>/<web alias>/oauthserver/connect/authorize" In the above pattern, can a valid ARAS server include a path parameter within the <servername> part, before <web_alias>? for example, Is it valid to have "/aras" in the below URLs?: Access Token URL: sample.company.com/aras/<web alias>/oauthserver/connect/token Part Request URL: sample.company.com/aras/<web alias>/server/odata/Part0Views0likes0CommentsREST API does not return properties with Item datatype
Hi, I am using Release 15 and trying to GET all Properties of an Item using REST API with this request: http://server/innovatorserver/server/odata/par('D193004BBD7D4EF390925A859A4E371D') It does return all properties except the ones which are datatype = Item. I am able to get the missing items properties one-by-one with such requests: http://server/innovatorserver/server/odata/par('D193004BBD7D4EF390925A859A4E371D')/lead_est I tried with other ItemTypes as well and find same issue. Is this normal for OData or I am missing something in the API request? Or may be newer version has this issue fixed already? Of course AML requests do return all properties though. Regards0Views0likes1Comment