How to get URL pointing to specific candidate in Workday from WID - workday-api

I've been try to figure out a way to get a URL pointing to a candidate's profile in Workday given a candidate's WID. My scenario is that I use the Put_Candidate operation (Workday Web Services SOAP API) to create a candidate which lets me know the WID and the Candidate_ID of the created candidate. From this returned information, I was hoping to construct the URL to the created candidate's profile in Workday. Is this possible? I'd appreciate any help/guidance that anyone can provide regarding this sort of scenario. Thank you.

I know its a little late, but if you are still looking for an answer then you can use
Get_workers api in Humar Resource Module and frame a request as below:-
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:bsvc="urn:com.workday/bsvc">
<soapenv:Header>
<wsse:Security soapenv:mustUnderstand="1" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:UsernameToken>
<wsse:Username>your username</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">your password</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</soapenv:Header>
<soapenv:Body>
<wd:Get_Workers_Request xmlns:wd="urn:com.workday/bsvc" version="set appropriate version here">
<wd:Request_References bsvc:Skip_Non_Existing_Instances="false">
<wd:Worker_Reference >
<wd:ID wd:type="WID">Populate WID here</wd:ID>
</wd:Worker_Reference>
</wd:Request_References>
</wd:Get_Workers_Request>
</soapenv:Body>
</soapenv:Envelope>

Related

Add Itinerary Remark SABRE

While i am sending Add Itinerary Remark in sabre FLIGHT API Request it's through Error (Business logic Error). Please Suggest me
<?xml version='1.0' encoding='utf-8'?>
<soap-env:Envelope xmlns:soap-env='http://schemas.xmlsoap.org/soap/envelope/'>
<soap-env:Header>
<eb:MessageHeader xmlns:eb='http://www.ebxml.org/namespaces/messageHeader'>
<eb:From>
<eb:PartyId eb:type='urn:x12.org.IO5:01'>sabre#example.com</eb:PartyId>
</eb:From>
<eb:To>
<eb:PartyId eb:type='urn:x12.org.IO5:01'>webservices.sabre.com</eb:PartyId>
</eb:To>
<eb:ConversationId>1500986572sabre#example.com</eb:ConversationId>
<eb:Service eb:type='OTA'>Air</eb:Service>
<eb:Action>AddRemarkLLSRQ</eb:Action>
<eb:CPAID>IPCC</eb:CPAID>
<eb:MessageData>
<eb:MessageId>mid:1500986572sabre#example.com</eb:MessageId>
<eb:Timestamp>2017-07-25T12-42-52Z</eb:Timestamp>
<eb:TimeToLive>2017-07-25T12-42-52Z</eb:TimeToLive>
</eb:MessageData>
</eb:MessageHeader>
<wsse:Security xmlns:wsse='http://schemas.xmlsoap.org/ws/2002/12/secext'>
<wsse:UsernameToken>
<wsse:Username>USER</wsse:Username>
<wsse:Password>PASS</wsse:Password>
<Organization>IPCC</Organization>
<Domain>Default</Domain>
</wsse:UsernameToken>
<wsse:BinarySecurityToken>Shared/IDL:IceSess\/SessMgr:1\.0.IDL/Common/!ICESMS\/ACPCRTC!ICESMSLB\/CRT.LB!-3250684970584119419!1379810!0</wsse:BinarySecurityToken>
</wsse:Security>
</soap-env:Header>
<soap-env:Body>
<AddRemarkRQ xmlns='http://webservices.sabre.com/sabreXML/2011/10' xmlns:xs='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' ReturnHostCommand='false' Version='2.1.0'>
<RemarkInfo>
<FOP_Remark>
<CC_Info>
<PaymentCard Code="VI" ExpireDate="2022-3" Number="4111111111111111" />
</CC_Info>
</FOP_Remark>
<Remark Type="General">
<Text>Swadesh Dash,nandan#gmail.com,8989852356</Text>
</Remark>
<Remark Type="Client Address">
<Text>Swadesh Dash,8989852356, nandan#gmail.com</Text>
</Remark>
</RemarkInfo>
</AddRemarkRQ>
</soap-env:Body>
</soap-env:Envelope>
Would help knowing what is the business error you got, but I see:
ExpireDate="2022-3" - I presume that it does not take 3 as month, it should be 03
In the other 2 remarks there # signs which likely are characters not supported in remarks.
For an improved response, please post the business error.
I can get only one possible reason and that is "Special Characters not allowed by Sabre"
And you have used # in remarks.
Special Characters which are not allowed are #,$,%,&,(,),[,],{,},<,>,?,=,+,;,Σ,_,' etc.

Magento Customer Update API Error - Cannot use object of type stdClass as array

Hi Im am trying to connect to magento api Customer Update using SOAP UI. I perfectly connect and update products. I can list Customers
but for some reason I can not update a customer. The xml I am using is as follows:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:Magento">
<soapenv:Header/>
<soapenv:Body>
<urn:customerCustomerUpdateRequestParam>
<sessionId>65e47ee067bba9c51b97c8d80929a138</sessionId>
<customerId>1</customerId>
<customerData>
<email>33#ddd.com</email>
</customerData>
</urn:customerCustomerUpdateRequestParam>
</soapenv:Body>
</soapenv:Envelope>
And the response I get is the following:
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode>SOAP-ENV:Server</faultcode>
<faultstring>Cannot use object of type stdClass as array</faultstring>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Can any one shed some light on this?
Thanks.

How to validate part of message in WSOESB and choose first?

Here is how it works.
I do have dss service that returns message of format
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:dss="https://rmis33.r-mis.ru/services/dss">
<soapenv:Header/>
<soapenv:Body>
<dss:Requests>
<dss:Request>...</dss:Request>
<dss:Request>...</dss:Request>
<dss:Request>...</dss:Request>
....
<dss:Request>...</dss:Request>
</dss:Requests>
</soapenv:Body>
</soapenv:Envelope>
I have to split message on Request element and validate it, then choose first that pass validation over XSD.
It is hard to do on database level because it has a lot of elements(sub-elements) and XSD was already provided.
You can use validate mediator to validate XML messages against XML schema.There is a complete sample which demonstrates validating messages.

Sonos API Extendedmetadata probleem

I'm having problems with the Sonos api for Extendedmetadata, please see below output. The art and extra information is not shown for track info.
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<getExtendedMetadataResponse xmlns="http://www.sonos.com/Services/1.1">
<getExtendedMetadataResult>
<mediaMetadata>
<id>track-28938</id>
<itemType>track</itemType>
<mimeType>audio/mp3</mimeType>
<trackMetadata>
<artistId>artist-4619</artistId>
<artist>Jelte Veenhoven</artist>
<albumid>album-916</albumid>
<album>From Olivet to Calvary</album>
<duration>397</duration>
<albumArtURI>http://<server ip>/functions/load_albumart.php?album_id=916&size=200</albumArtURI>
<canSkip>true</canSkip>
<canAddToFavorites>true</canAddToFavorites>
</trackMetadata>
</mediaMetadata>
</getExtendedMetadataResult>
</getExtendedMetadataResponse>
</soap:Body>
</soap:Envelope>
It seems I missed the title tag in mediaMetadata, which was not mentioned in any Sonos examples and Manuals.....
:-)
First, trackMetadata doesn't have any Extra field. Check http://musicpartners.sonos.com/node/83 for detailed information.
Second, what do you mean by art information?
Keep in mind that non-mandatory fields specified in the wsdl file that are not generated in your python/php code won't appear in the SOAP response.
You need to provide more information about your code. We can't just guess.

eBay API: GetOrders call returning no orders

I have placed test orders in the sandbox eBay account.
I am not able to get the orders listing from the GetOrders API call.
It retruns the success message but no orders are fetched.
Below are the API call details :
<?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/" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns="urn:ebay:apis:eBLBaseComponents" ><soap:Header><RequesterCredentials><eBayAuthToken>...</eBayAuthToken><Credentials><AppId>Clarion89-2b36-4da6-b073-00dafbcff12</AppId><DevId>f79169c1-f95b-4d23-9fe2-547504ffb827</DevId><AuthCert>...</AuthCert></Credentials></RequesterCredentials></soap:Header><soap:Body><GetOrdersRequest><DetailLevel>ReturnAll</DetailLevel><Version>527</Version><CreateTimeFrom>2012-04-02T09:52:27.000Z</CreateTimeFrom><CreateTimeTo>2012-05-03T09:52:27.000Z</CreateTimeTo><OrderRole>Seller</OrderRole><OrderStatus>Active</OrderStatus><ListingType>FixedPriceItem</ListingType></GetOrdersRequest></soap:Body></soap:Envelope>
Response returned as below
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<GetOrdersResponse xmlns="urn:ebay:apis:eBLBaseComponents">
<Timestamp>2012-05-03T09:54:03.650Z</Timestamp>
<Ack>Success</Ack>
<Version>771</Version>
<Build>E771_CORE_BUNDLED_14795207_R1</Build>
<PaginationResult>
<TotalNumberOfPages>0</TotalNumberOfPages>
<TotalNumberOfEntries>0</TotalNumberOfEntries>
</PaginationResult>
<HasMoreOrders>false</HasMoreOrders>
<OrderArray/>
<OrdersPerPage>100</OrdersPerPage>
<PageNumber>1</PageNumber>
<ReturnedOrderCountActual>0</ReturnedOrderCountActual>
</GetOrdersResponse>
</soapenv:Body>
</soapenv:Envelope>
Please tell me why i am not getting order details
first of all i would use an higher version (i'm actually using 771 as compatibility level)
I used to have a similar problem at the very benning when i started coded for api, then i switched CreatedTime filter to NumberOfDays wich are the days to look back from today.
What language are you using to make the call?
Check your request parameters against your orders that are stored on ebay. It may happen that there are no orders matching the parameters you are entering in your call. Try entering the most basic request parameters like
<?xml version="1.0" encoding="utf-8"?>
<GetOrdersRequest xmlns="urn:ebay:apis:eBLBaseComponents">
<RequesterCredentials>
<eBayAuthToken>[your authentication token]</eBayAuthToken>
</RequesterCredentials>
<CreateTimeFrom>2012-05-10T00:00:00.000Z</CreateTimeFrom>
<CreateTimeTo>2012-05-15T00:00:00.000Z</CreateTimeTo>
</GetOrdersRequest>
You can enter the dates as per your requirement but make sure you use the date format accepted by ebay.