I'm using Worklight Adapter based authentication for m y app. After success response from server about the good passing the authentication test, the application starts to send the request to server over and over.
Logs from server says, that user is login and logout in the loop.
{
"message": "invoke logout request [project ProjectName]",
"sourceClass": "com.worklight.integration.js.JavaScriptIntegrationLibraryImplementation",
"sourceMethodName": "info",
"level": "INFO",
"source": "server",
"threadId": 19,
"loggerName": "com.worklight.integration.js.JavaScriptIntegrationLibraryImplementation",
"server": {
"ip": "--"
},
"timestamp": "---"
}
{
"message": "Setting active user [project ProjectName]",
"sourceClass": "com.worklight.integration.js.JavaScriptIntegrationLibraryImplementation",
"sourceMethodName": "info",
"level": "INFO",
"source": "server",
"threadId": 19,
"loggerName": "com.worklight.integration.js.JavaScriptIntegrationLibraryImplementation",
"server": {
"ip": "--"
},
"timestamp": "---"
}
{
"message": "invoke logout request [project ProjectName]",
"sourceClass": "com.worklight.integration.js.JavaScriptIntegrationLibraryImplementation",
"sourceMethodName": "info",
"level": "INFO",
"source": "server",
"threadId": 21,
"loggerName": "com.worklight.integration.js.JavaScriptIntegrationLibraryImplementation",
"server": {
"ip": "--"
},
"timestamp": "---"
}
{
"message": "Setting active user [project ProjectName]",
"sourceClass": "com.worklight.integration.js.JavaScriptIntegrationLibraryImplementation",
"sourceMethodName": "info",
"level": "INFO",
"source": "server",
"threadId": 21,
"loggerName": "com.worklight.integration.js.JavaScriptIntegrationLibraryImplementation",
"server": {
"ip": "--"
},
"timestamp": "---"
}
This change of the source code helps to avoid this activity. (Deleting the challengeHandler.submitSuccess() calling)
But in this way, callback function from challendeHandler.submitAdapterAuthentication and WL.Client.logout are not called.
All activities are showed in the logs package.
Please help me to release this problem.
Invoking Wl.Client.login("realmname") before submit user credentials helped me.
Related
I have recently joined a company that is using Vonage and we have WhatsApp communications which was working fine in both dev and production that have both suddenly stopped working.
The shape of the incoming json looks to have changed significantly, but I have changed the code that is reading this and am able to read the messages into the system.
The problem that I have now, is outgoing message is not being accepted.
If I send this json body over
{
"from": "4474183xxxxx",
"to": "4474719xxxxx",
"message": {
"Type": "text",
"content": "Hello! I’m CAI, A Virtual Chat-bot assistant. blurb, more blurb.... .\n\n1. Okay I understand\n\nChoose any one option. Type \"1\" to choose first option."
}
}
I get the following response
{
"Status": "fail", // custom one to my company
"e3": {
"Error": {
"body": {
"type": "https://developer.vonage.com/api-errors",
"title": "Your request parameters didn't validate.",
"detail": "Found errors validating 1 of your submitted parameters.",
"invalid_parameters": [
{
"name": "to",
"reason": "Malformed JSON body."
}
],
"instance": "cf4bce73-2db5-4102-b7af-xxxxxx"
},
"headers": {
"date": "Wed, 02 Nov 2022 14:02:08 GMT",
"content-type": "application/problem+json",
"content-length": "287",
"connection": "close",
"x-envoy-upstream-service-time": "3",
"x-frame-options": "deny",
"x-xss-protection": "1; mode=block",
"strict-transport-security": "max-age=31536000; includeSubdomains",
"x-content-type-options": "nosniff",
"server": "envoy"
},
"statusCode": 400
},
"StatCode": 400,
"Response": null
},
"a": {
"label": 6,
"trys": [
[
0,
6,
null,
7
]
],
"ops": []
}
}
However, looking at the shape of the message that is on the website (https://dashboard.nexmo.com/messages/sandbox) and send this message
{
"from": "xxxx",
"to": "xxxx",
"message_type": "text",
"text": "Hello! I’m CAI, blurb... .\n\n1. Okay I understand\n\nChoose any one option. Type \"1\" to choose first option.",
"channel" : "whatsapp"
}
I get this response
{
"Status": "fail",
"e3": {},
"a": {
"label": 6,
"trys": [
[
0,
6,
null,
7
]
],
"ops": []
},
"Message": "Cannot read property 'Type' of undefined"
}
I would be grateful if someone could help me shape the message that needs to be sent to vonage to that this can be sent out to the end user \ recipient correct.
Thanks
Simon
We have to try to integrate Easyship courier API. And We are facing the below issue.
{
"rates": [],
"messages": [
"Sorry, we couldn't find any shipping solutions based on the information provided."
]
}
For more information, I have shared the request parameter and API response.
API URL:- https://api.easyship.com/v2/rates
Request Parameter:
{
"origin_address": {
"postal_code": "91601",
"city": "Los Ángeles",
"state": "CA",
"country_alpha2": "US"
},
"destination_address": {
"postal_code": "95140",
"city": "Mount Hamilton",
"state": "CA",
"country_alpha2": "US"
},
"parcels": [
{
"total_actual_weight": 5,
"items": [
{
"quantity": 1,
"category": "mobile_phones",
"dimensions": {
"width": 10,
"height": 10,
"length": 25
},
"description": "Apple iPad",
"actual_weight": 5,
"declared_currency": "USD",
"declared_customs_value": 49500.55
}
]
}
]
}
Response Parameter:
{
"status": "failure",
"errors": [
"Sorry, we couldn't find any shipping solutions based on the information provided."
],
"request_id": "545b5f76a41e2994a13f384559dee625",
"timestamp": "2022-10-12T10:09:21.272Z"
}
Note:
This request parameter works with the production access token.
We have applied all possible solutions for this issue but didn't find anything.
Also we don't want to use the production access token because we are in the developing stage. so please please provide working with a sandbox solution.
Could someone guide me an idea of how to create the registration and login for candidates with the Recruit api? I'm making a flutter app and I need my candidates to register and log in trow the app and see the job opening, post jobs.
At the moment I created the user with [POST] https://recruit.zoho.com/recruit/v2/Candidates
{
"data": [
{
"Email": "mail#gmail.com",
"First_Name": "TheName",
"Last_Name": "TheLastName",
"Mobile": "000000000",
"Expected_Salary": "8000000",
"Country": "PY",
"Departamento": "Central",
"C_I": "37114594",
"Ciudad_de_residencia": "City",
"$Password":"myPassWord199**"
}
],
"trigger": [
"approval",
"workflow",
"blueprint"
]
}
Works Well, got success
{
"data": [
{
"code": "SUCCESS",
"details": {
"Modified_Time": "2022-06-15T20:47:23-04:00",
"Modified_By": {
"name": "Admin",
"id": "00000000000000"
},
"Created_Time": "2022-06-15T20:47:23-04:00",
"id": "00000000000000",
"Created_By": {
"name": "Admin",
"id": "00000000000000"
}
},
"message": "record added",
"status": "success"
}
]
}
But If I try to log in in the web version (for testing the new candidate) don't work, but if it see the dashboard, the user exist. Need to add something else?
Basically I need a register api and a login one for the created record of the candidate.
Any help will be awesome, Thanks
I am referring information on following url.
https://ibm-public-cos.github.io/crs-docs/about-compatibility-api#operations-on-buckets
As mentioned in above URL,there are 3 Objects related IBM cloud storage object API which are accessible.However,some APIs of IBM CSO API are not accessible e.g. PUT Bucket ACL & GET Bucket ACL and getting 403 error message while accessing them with POSTMAN.I need information that how can we access these APIs? Please provide any information related to it.
Any help is greatly appreciated.
As of today, GET/PUT Bucket ACL are supported in IBM COS. If you are using Postman, here's an example of a Postman dump for these (obviously you'll need to calculate the Authorization header and use all of your own info, this is just an educational sample):
{
"version": 1,
"collections": [
{
"id": "ab20b534-025a-4be2-b90f-a980d4a81632",
"name": "Operations on buckets",
"folders": [],
"requests": [
{
"id": "b89a66a4-0183-43cf-9712-7c07ba615b0b",
"url": "http://endpoint/bucket-name?acl=",
"method": "PUT",
"collectionId": "ab20b534-025a-4be2-b90f-a980d4a81632",
"name": "Add a bucket ACL (canned)",
"description": "",
"headers": "x-amz-date: {timestamp}\nAuthorization: {authorization-string}\nx-amz-acl: public-read\nContent-Type: text/plain",
"dataMode": "raw",
"data": ""
},
{
"id": "df2a9b2a-d66b-4ea6-8cfb-ab341ec23bc2",
"url": "http://endpoint/bucket-name?acl=",
"method": "PUT",
"collectionId": "ab20b534-025a-4be2-b90f-a980d4a81632",
"name": "Add a bucket ACL (custom)",
"description": "",
"headers": "x-amz-date: {timestamp}\nx-amz-content-sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\nAuthorization: {authorization-string}\nContent-Type: text/plain; charset=utf-8",
"dataMode": "raw",
"data": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<AccessControlPolicy xmlns=\"http://s3.amazonaws.com/doc/2006-03-01/\">\n <Owner>\n <ID>d4d11b981e6e489486a945d640d41c4d</ID>\n <DisplayName>OwnerDisplayName1</DisplayName>\n </Owner>\n <AccessControlList>\n <Grant>\n <Grantee xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"CanonicalUser\">\n <ID>d4d11b981e6e489486a945d640d41c4d</ID>\n <DisplayName>some-name</DisplayName>\n </Grantee>\n <Permission>FULL_CONTROL</Permission>\n </Grant>\n <Grant>\n <Grantee xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"CanonicalUser\">\n <ID>a5c26620b0704967a72d7aeb90cf57b2</ID>\n <DisplayName>some-name</DisplayName>\n </Grantee>\n <Permission>WRITE</Permission>\n </Grant>\n </AccessControlList>\n</AccessControlPolicy>"
},
{
"id": "7f79523f-b9aa-46ad-abda-9ad7e37d3980",
"url": "http://bucket-name.endpoint/?acl=",
"method": "GET",
"collectionId": "ab20b534-025a-4be2-b90f-a980d4a81632",
"name": "Get a bucket ACL",
"description": "",
"headers": "x-amz-date: {timestamp}\nAuthorization: {authorization-string}\nContent-Type: text/plain",
"dataMode": "raw",
"data": ""
}
],
"order": [
"b89a66a4-0183-43cf-9712-7c07ba615b0b",
"df2a9b2a-d66b-4ea6-8cfb-ab341ec23bc2",
"7f79523f-b9aa-46ad-abda-9ad7e37d3980"
]
}
],
"environments": [
{
"id": "fa619322-0a84-47b5-958b-84fa4a6286ba",
"name": "API-Flow Imports",
"values": [],
"timestamp": 1497532748923
}
]
}
Based on your reference to the 'Cloud Storage Object API', I can guess you might be working with an on-premises installation of IBM COS. Please send me an email at nicholas.lange[at]ibm.com so we can discuss what you are looking for.
OVERVIEW
I am not sure what happened, as I have not touched my code that interacts with the Add Account endpoint in Yodlee (POST /{cobrandName}/v1/providers/{providerId}), but it has become broken (it was working as of Thursday). I am now getting this reply:
{ errorCode: 'Y400',
errorMessage: 'Null argument specified',
referenceCode: 'RB_134ae91e-4c80-4ad5-aac5-243ca428421d' }
DETAILS
I have the appropriate route params inserted into this POST /{cobrandName}/v1/providers/{providerId} and am passing a stringified JSON object as the request body (per the documentation) that looks like this:
{
"provider": [{
"id": 492,
"name": "Fidelity Investments",
"loginUrl": "https://login.fidelity.com/ftgw/Fas/Fidelity/RtlCust/Login/Init?AuthRedU",
"baseUrl": "http://www.fidelity.com/",
"favicon": "https://moneycenter.ydlstatic.com/fastlink/appscenter/siteImage.fastlink.do?access_type=APPS_CENTER_PRODUCTION&siteId=492&imageType=FAVICON",
"logo": "https://moneycenter.ydlstatic.com/fastlink/appscenter/siteImage.fastlink.do?access_type=APPS_CENTER_PRODUCTION&siteId=492&imageType=LOGO",
"status": "Supported",
"mfaType": "Multiple levels of strong authentication.",
"oAuthSite": false,
"lastModified": "2016-03-31T10:39:36Z",
"forgetPasswordUrl": "http://personal.fidelity.com/accounts/services/content/pinchange.shtml.tvsr",
"containerNames": ["tax", "investment"],
"loginForm": {
"id": 172,
"forgetPasswordURL": "http://personal.fidelity.com/accounts/services/content/pinchange.shtml.tvsr",
"formType": "login",
"row": [{
"id": 4140,
"label": "Username",
"form": "0001",
"fieldRowChoice": "0001",
"field": [{
"id": 358,
"name": "LOGIN",
"maxLength": 15,
"type": "text",
"value": "07ceb28fc8b71dc3e08126e0169022419c114e02cbca7fcfb2e11b939d805c898310d0741bcc0a76943227a38c02e66fd5a5fb132a3c0fb4c663102b9e0947c99953f15fa051ac95fdf9a3ee7d461d33ff11482a3cf973ccd3c2aba6d494deb6ddd1d0dfc89ee0bfa991bf24e19d07bd9f066bbde4fd74ed88f3808ab7420f1430b1ead362a32dd26d5b077f263c83469c37a3c8816b7eaa243f9f89dc4ad4e023642ba1aa651d4b371f613d37619279d90187d11bbd4404896d18605c028bd55461c6e11b47a8aad8ea93d483db7c1211728c9b1222a86811a106077ae5525c75f427520d52478e48f22f6ae11a21bcb42e772befa2e83570c4b4d7c3a54619",
"isOptional": false,
"valueEditable": true
}]
}, {
"id": 4139,
"label": "Password",
"form": "0001",
"fieldRowChoice": "0002",
"field": [{
"id": 357,
"name": "PASSWORD",
"maxLength": 20,
"type": "password",
"value": "285968df9ddf385b2da03d7247533dd0f7dbf6d951c0a6a92bad7701868d4941bcdfe7a41167f3bb0a47cb5ae22557444f83a641318c1985035c6e2c7e7e11a4e71ac52965ad26845ee64a13a2a61c07945870b7c009aba673e01b074fc047e9b08c20cbde0cb36a6068a9d07b4cad7a777f8f6654dd8436527d6017e3a81af68f1dbbfabc52a93a2f8423b342b243316248cebb549bed7433f77a90aae4a3c1c892a725872f77a369407741be98715b39039b547f735e92748ddd5d389c4de3082684c1f5f5b1917ceb34348010866ce6cb649d6e4dac4c45d85c4a729c67fb643c34e704278f3a15626bbe73cddf69cfe5df8bcdd5682415afe952585da800",
"isOptional": false,
"valueEditable": true
}]
}]
}
}]
}
The form values are encrypted via PKI as per the documentation, using the key provided by the appropriate API endpoint, and I have both a cobrand session token and a yodlee user session token in the authentication headers ('Authorization': 'cobSession={appToken}, userSession={token}'). I was previously receiving back the expected 'refresh info' response using the same exact structure and process. I'm trying to understand what the 'null argument' referenced in the error is.