These docs are for v20.3.44. Click to read the latest docs for v20.3.186.

Discussions

Ask a Question
ANSWERED

Asi Scheduler Endpoint

I have successfully written a POST request to fetch a token from iMIS for further use in other queries (my next query being '~/party/194' to get iMIS Id 194's information). Even though I am using this token that I have stored with the GET request, I cannot seem to hit the API, it keeps on giving me a CORS error... My idea is to develop a front-end app that ties in with a npm package that allows for easier calls to the API in Javascript (getPartyById(id) for example). So currently I have a localhost:3000 running on the iMIS server, a create-react-app running with a login screen to authenticate the iMIS user and receive the token. Am I missing something? Or is it only possible to make any other API calls (GET, PUT, POST when inserting) when calling these simplified JS queries from within the iMIS website as an iPart?

Offset and Count acting strange

When using /api/Organization?limit=100 I get strange results: ``` "Offset": 0, "Limit": 100, "Count": 50, "TotalCount": 16206, "NextPageLink": null, "HasNext": true, "NextOffset": 50 ``` So I want to get the next 50 results: /api/Organization?offset=50&limit=100 ``` "Offset": 0, "Limit": 100, "Count": 50, "TotalCount": 16206, "NextPageLink": null, "HasNext": true, "NextOffset": 50 ``` Is there a bug here in /api/Organization endpoint? /api/Party works as expected, but I want to view Organisations and I'm not sure how to filter them with the /api/Party endpoint.
ANSWERED

How do I add a new Address

I don't really see an actual Addresses endpoint so I was attempting to use CsAddress: POSTing the following to /api/CsAddress: ```json { "$type": "Asi.Soa.Core.DataContracts.GenericEntityData, Asi.Contracts", "EntityTypeName": "CsAddress", "PrimaryParentEntityTypeName": "Party", "PrimaryParentIdentity": { "$type": "Asi.Soa.Core.DataContracts.IdentityData, Asi.Contracts", "EntityTypeName": "Party", "IdentityElements": { "$type": "System.Collections.ObjectModel.Collection`1[[System.String, mscorlib]], mscorlib", "$values": [ "CONTACT_ID_HERE" ] } }, "Properties": { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyDataCollection, Asi.Contracts", "$values": [ { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "Address1", "Value": "" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "Address2", "Value": "" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "Address3", "Value": "" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "BadAddress", "Value": "" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "BarCode", "Value": "" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "City", "Value": "" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "Country", "Value": "" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "County", "Value": "" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "CRRT", "Value": "" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "Email", "Value": "[email protected]" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "Fax", "Value": "" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "FullAddress", "Value": "" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "MailCode", "Value": "" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "Phone", "Value": "" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "AddressPurpose", "Value": "Reception" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "StateHouse", "Value": "" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "StateProvince", "Value": "" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "StateSenate", "Value": "" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "UsCongress", "Value": "" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "Zip", "Value": "" } ] } } ``` Results in: ```json { "$type": "Asi.Soa.Core.DataContracts.ValidationResultsData, Asi.Contracts", "Errors": { "$type": "Asi.Soa.Core.DataContracts.ValidationResultDataCollection, Asi.Contracts", "$values": [ { "$type": "Asi.Soa.Core.DataContracts.ValidationResultData, Asi.Contracts", "Message": " \r\nCsAddress constraint violations:\r\n PropertyName=Address1; Message=Required Field - Address1; Severity=Error\r\n PropertyName=Address2; Message=Required Field - Address2; Severity=Error\r\n PropertyName=Address3; Message=Required Field - Address3; Severity=Error\r\n PropertyName=BadAddress; Message=Required Field - BadAddress; Severity=Error\r\n PropertyName=BarCode; Message=Required Field - BarCode; Severity=Error\r\n PropertyName=City; Message=Required Field - City; Severity=Error\r\n PropertyName=Country; Message=Required Field - Country; Severity=Error\r\n PropertyName=County; Message=Required Field - County; Severity=Error\r\n PropertyName=CRRT; Message=Required Field - CRRT; Severity=Error\r\n PropertyName=Fax; Message=Required Field - Fax; Severity=Error\r\n PropertyName=FullAddress; Message=Required Field - FullAddress; Severity=Error\r\n PropertyName=ID; Message=Required Field - ID; Severity=Error\r\n PropertyName=MailCode; Message=Required Field - MailCode; Severity=Error\r\n PropertyName=Phone; Message=Required Field - Phone; Severity=Error\r\n PropertyName=StateHouse; Message=Required Field - StateHouse; Severity=Error\r\n PropertyName=StateProvince; Message=Required Field - StateProvince; Severity=Error\r\n PropertyName=StateSenate; Message=Required Field - StateSenate; Severity=Error\r\n PropertyName=UsCongress; Message=Required Field - UsCongress; Severity=Error\r\n PropertyName=Zip; Message=Required Field - Zip; Severity=Error\r\n" } ] }, "Warnings": { "$type": "Asi.Soa.Core.DataContracts.ValidationResultDataCollection, Asi.Contracts", "$values": [] } } ``` I clearly have those properties in the body, so I'm not sure why I'm getting those validation errors. Additionally, is there an easier way to go about this?

Getting all available IQA via REST API

Hi, Is there a way to get all available IQA with the full path and name via the REST API for iMIS 2017 and iMIS Cloud? I know that I can get the name at least from the document system by filtering by documenttypecode IQD but it does not give me the full path. Any pointers are much appreciated. Thank you very much for your help! Best, Alex
ANSWERED

Metadata for IQA

Hiya, is there a way to get the metadata of an IQA via the REST API i.e. field names/Aliases returned, filters on the IQA... Any pointer in the right direction is much appreciated. Thanks much! Alex

Updating username

I'm trying to update just a person's username. I'm trying the request from this page https://developer.imis.com/reference/usersecurity but I keep getting this message: "{"$type":"System.Web.Http.HttpError, System.Web.Http","Message":"Authorization has been denied for this request."}" Here is my request: var data = { "$type": "Asi.Soa.Core.DataContracts.GenericExecuteRequest, Asi.Contracts", "EntityTypeName": "UserSecurity", "OperationName": "UpdateUserName", "Parameters": { "$type": "System.Collections.ObjectModel.Collection`1[[System.Object, mscorlib]], mscorlib", "$values": [ "johnb", "[email protected]", "change123", true ] }, "UseJson": false, "ParameterTypeNames": { "$type": "System.Collections.ObjectModel.Collection`1[[System.String, mscorlib]], mscorlib", "$values": [ "System.String", "System.String", "System.String", "System.Boolean" ] } }; var xhr = new XMLHttpRequest(); xhr.addEventListener("readystatechange", function () { if (this.readyState === this.DONE) { console.log(this.responseText); } }); xhr.open("POST", "https://imistour2647.imiscloud.com/api/UserSecurity/_execute"); xhr.setRequestHeader("content-type", "application/json"); xhr.send(data); Any help is appreciated. Also, do you need to pass the password through the api for this to work?

Connecting from a Single Page App to REST API

I am a novice to the iMIS REST endpoint connectivity. The requirement is to have the Single Page App connect to the API and get the names of all companies with a contains search. Where do I start? I am trying to get my head around OAuth2.0 authorization, JWT and its expiry and Refresh token. Any pointers into this direction would be deeply appreciated.

Adding Structured Snippet, Meta tags, and opengraph data to iMIS

Hello, I am a digital marketer and SEO specialist for my company and we are unable to run the most recent version of iMIS RiSE platform due to a variety of reasons but I still need to add requisite information to the headers of individual pages as well as tags to the pages themselves to comply with industry standards. This provides a few questions/challenges: 1. How do I create rel canonical and other metatags in page headers? 2. How do I add schema.org JSON scripting to add structured data and open-graphs? 3. Is there a way to edit headers beyond the template? 4. Do I have to go through and hard code the scripting and open-graphs to the various pages? I would like to just focus on these despite further questions. Does anyone know of a solution to add these in iMIS?
ANSWERED

IMIS / RISE - Version Control

Hello, I was wondering if anyone could offer some advice. I've been looking at improving our Workflow and one thing I think would really help us is having our IMIS instances version controlled (preferably Git). Does IMIS (Specifically RISE) have the ability to have a 'Development' instance aswell as a 'Production' instance, so that we can add/edit (break) as much as we like without our clients/customers seeing it. Then, when ready we can publish the development site into the production area? Many thanks, Alex.
ANSWERED

PostCode Lookup

Hello, I was wondering if the 'PostCode' lookup functionality within IMIS is available via the REST API? I'm developing an application form and this functionality would be great! We have it on our current application form which uses the 'ContactAccountCreator' iPart, but we'd like to extend the functionality using our own custom form. It would be great if we could utilize the postcode lookup. Many thanks, Alex.