Get taxonomy term store in iOS SharePoint client - ios

I couldn't get any lead info on how to retrieve a taxonomy term store using REST API in an iOS app.
Any information will be highly appreciated. Thanks.
EDIT
According to this article, managed taxonomy data cannot be consumed from REST.
Though, this can be done using JSOM (sp.taxonomy.js), so it seems reasonable to ask if the same stuff can be ported to iOS or other platforms.

I managed to get taxonomy terms by POSTing this SOAP message to _vti_bin/TaxonomyClientService.asmx:
<?xml version='1.0' encoding='utf-8'?>
<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>
<soap:Body>
<GetKeywordTermsByGuids xmlns='http://schemas.microsoft.com/sharepoint/taxonomy/soap/'>
<termIds><id>64d031b6-76bb-49ec-a3b3-cb42b8f0953b</id></termIds>
</GetKeywordTermsByGuids>
</soap:Body>
</soap:Envelope>
If you need to include more than one guid in the termIds node, you must post it in an XML format like this:
<set>
<id>guid1</id>
<id>guid2</id>
...
</set>
and, of course, HTML escaped.

Related

requested data getting null in soap web service from ios

I am trying to insert data into the SQL server database through SOAP XML Web service from IOS using Swift code, but it is get only Id value which is auto generate in database ,but i cant insert my data into table because it will get null values which i have passed in Soap message.
My Code in swift
<?xml version='1.0' encoding='utf-8'?><soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>
<soap:Body>
<CreateUserDetail xmlns='http://tempuri.org/'>
<userdetail>
<UserDetail>
<Id>1</Id>
<Username xsi:type='xs:string'>username</Username>
<Password xsi:type='xs:string'>password</Password>
</UserDetail>
</userdetail>
</CreateUserDetail>
</soap:Body>
</soap:Envelope>
I have surfing many of blog and sites and finally I got solution for it here is a soap message with solution
my new soap message is written below
<SOAP-ENV:Envelope xmlns:SOAP-ENC='http://schemas.xmlsoap.org/soap/encoding/' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:tns='http://tempuri.org/' xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/'>
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<tns:CreateUserDetail>
<tns:userdetail>
<tns:Id xmlns:tns='http://schemas.datacontract.org/2004/07/WcfService1'>1</tns:Id>
<tns:Username xmlns:tns='http://schemas.datacontract.org/2004/07/WcfService1'>String</tns:Username>
<tns:Password xmlns:tns='http://schemas.datacontract.org/2004/07/WcfService1'>String</tns:Password>
</tns:userdetail>
</tns:CreateUserDetail>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
you have to just replace xmlns:tns='your target namespace' which i have write in id,username,password element
hope it will help someone

QBO unable to upload invoice

My task is to upload an invoice to UK QuickBooks Online.
I always get an error:
"You must select a product/service or an account for each split line with either an amount or a billable $$customer$$."
My XML request:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Invoice xmlns="http://www.intuit.com/sb/cdm/v2" xmlns:ns2="http://www.intuit.com/sb/cdm/qbopayroll/v1" xmlns:ns3="http://www.intuit.com/sb/cdm/qbo">
<Header>
<TxnDate>2013-11-30</TxnDate>
<CustomerId idDomain="QBO">1</CustomerId>
<TaxAmt>6.8</TaxAmt>
<BillAddr>
<Line1>Alex</Line1>
<Line2>Test</Line2>
<Line3>Prague</Line3>
</BillAddr>
<ShipAddr>
<Line1>Test</Line1>
<Line2>Prague</Line2>
</ShipAddr>
<BillEmail></BillEmail>
<DiscountTaxable>false</DiscountTaxable>
</Header>
<Line>
<Desc>Internet connection</Desc>
<Amount>34</Amount>
<Taxable>true</Taxable>
<ItemId>3</ItemId>
<UnitPrice>34</UnitPrice>
<Qty>1.00</Qty>
</Line>
How can I solve this problem?
Thanks.
It looks like you're using the v2 APIs, which only support the USA QuickBooks Online editions.
Have you tried using the v3 APIs, which use a global tax model which supports what you're trying to do?

QuickBooks (QBD) SyncActivity inconsistent behavior?

I am using QuickBooks (QBD) SyncActivity API to get the information about Quickbooks Desktop synchronizations.But sometime when I call SyncActivity API I didn't get response and sometimes I get response.
Is there any connectivity issue with cloud or Is there anyting I'm missing to specify to get details from cloud, below is Request and code for more details,
//Sync Activity details
Intuit.Ipp.Data.Qbd.SyncActivityRequest syncActivityRequest = new SyncActivityRequest();
var syncStatuses = dataServices.GetSyncActivity(syncActivityRequest);
syncActivity Request,
<?xml version="1.0" encoding="utf-8"?>
<SyncActivityRequest xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.intuit.com/sb/cdm/v2" />
Please share your views and suggessions.
Thanks,
Reshma D.
You pass in a begin and end time stamp and you will get a response if there was any sync activity within the time span that you specified. There may or may not be something to return
<?xml version="1.0"?>
<SyncActivityRequest xmlns="http://www.intuit.com/sb/cdm/v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.intuit.com/sb/cdm/v2 RestDataFilter.xsd ">
<OfferingId>ipp</OfferingId>
<StartCreatedTMS>2011-06-02T08:31:25.0Z</StartCreatedTMS>
<EndCreatedTMS>2011-06-02T08:31:28.0Z</EndCreatedTMS>
</SyncActivityRequest>
Thanks
Jarred

Cannot get records for particular meeting

Cannot figure out how to properly send request to get all records, which are corresponding to the meeting.
From this request mysite.adobeconnect.com/api/xml?action=sco-info&sco-id=1087877981
I get such response:
<?xml version="1.0" encoding="utf-8"?>
<results>
<status code="ok"/>
<sco account-id="1051298934" disabled="" display-seq="0" folder-id="1057190786" icon="meeting" lang="en" max-retries="" sco-id="1087877981" source-sco-id="1051270965" type="meeting" version="3">
<date-begin>2013-08-20T03:15:00.000-07:00</date-begin>
<date-created>2013-08-20T03:30:04.200-07:00</date-created>
<date-end>2013-08-20T04:15:00.000-07:00</date-end>
<date-modified>2013-08-20T06:39:45.927-07:00</date-modified>
<name>DevTeam Meeting 2</name>
<url-path>/devmeeting2/</url-path>
<update-linked-item>true</update-linked-item>
</sco>
<source-sco>
<source-sco account-id="1051298934" disabled="" display-seq="0" folder-id="1051270964" icon="meeting" lang="en" max-retries="" sco-id="1051270965" source-sco-id="-8888" type="meeting" version="1">
<date-created>2012-05-15T14:09:07.453-07:00</date-created>
<date-modified>2013-08-13T16:33:57.600-07:00</date-modified>
<name>Default Meeting Template</name>
<url-path>/defaultmeetingtemplate/</url-path>
</source-sco></source-sco>
</results>
Where I see folder-id="1057190786" and sco-id="1087877981", but when I'm trying to get records for this meeting, using folder-id or sco-id according to documentation with requests
mysite.adobeconnect.com/api/xml?action=list-recordings&folder-id=1057190786
or
mysite.adobeconnect.com/api/xml?action=list-recordings&folder-id=1087877981
I receive:
<?xml version="1.0" encoding="utf-8"?>
<results>
<status code="invalid">
<invalid field="action" type="enum" subcode="no-such-item"/>
</status>
</results>
You should use another API method to get the recordings. They listed in the "scos" container, "url-path" element is what you need.
You should try the sco-contents method...
/api/xml?action=sco-contents&filter-icon=archive&sco-id=1087877981
Get your meeting contents calling sco-contents
You will find your records in those sco with icon="archive"
Don't use "list-recordings" as is not available anymore.
Reference (Sep. 20, 2016)
Provides a list of recordings (FLV and MP4) for a specified folder. The service and hence the API is no longer available.
Docs here.

Intuit anywhere API telling me that a field is required when it's already specified

I am trying to create an invoice in QB for windows. Here is the XML:
<?xml version='1.0' encoding='utf-8'?>
<Add xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.intuit.com/sb/cdm/v2" xsi:schemaLocation="http://www.intuit.com/sb/cdm/V2./RestDataFilter.xsd " RequestId="1836474224e142c9ad9b7dd6cb0eaa41" FullResponse="true">
<OfferingId>ipp</OfferingId>
<ExternalRealmId>596059545</ExternalRealmId>
<Invoice>
<Header>
<TxnDate>2013-01-30</TxnDate>
<DiscountAmt>0</DiscountAmt>
<ARAccountName>Sales - Support and Maintenance</ARAccountName>
<DiscountAccountName>Discounts/Refunds</DiscountAccountName>
<DueDate>2013-02-17</DueDate>
<Currency>USD</Currency>
<CustomerId>4</CustomerId>
</Header>
<Line>
<Qty>1</Qty>
<UnitPrice>7.00</UnitPrice>
<Desc>Follow-up Test, Instant for Person138-Org3 Person138-Org3</Desc>
</Line>
</Invoice>
</Add>
Here's the response:
-2001: cvc-complex-type.2.4.a: Invalid content was found starting with element 'ARAccountName'. One of '{"http://www.intuit.com/sb/cdm/v2":DiscountAccountId, "http://www.intuit.com/sb/cdm/v2":DiscountAccountName, "http://www.intuit.com/sb/cdm/v2":DiscountTaxable, "http://www.intuit.com/sb/cdm/v2":TxnId}' is expected.
I don't understand, as I already have DiscountAccountName specified. I also tried to go with something more like the create example (same as above but with ARAccountName and DiscountAccountName removed) and got a similar response. Thanks in advance for your help.
The Intuit XML requests are validated by an XSD, and with XML validated by XSDs the order of the tags you provide matters.
That means that if the documentation (https://ipp.developer.intuit.com/0010_Intuit_Partner_Platform/0050_Data_Services/0500_QuickBooks_Windows/0600_Object_Reference/Invoice) dictates that ARAccountName comes before DiscountAmt, then you must put ARAccountName before DiscountAmt.
Switch the order of your XML tags to match the order shown in the docs, and you'll be all set.

Resources