Azure Event Grid subcriptions events to Splunk Endpoint - splunk

I am trying to configure splunk url (https://xxxxxxxxxxx:8088/services/collector?token=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) in event grid subscription as webhook endpoint type.
But i am getting error ." Deployment has failed with the following error: {"code":"Url validation","message":"Webhook validation handshake failed for".
What is the correct process, does the splunk receives the logs ?
Does this work for splunk endpoints : https://learn.microsoft.com/en-us/azure/event-grid/receive-events. point me to the correct direction.

The error is expected as the webhook needs it needs to validate the endpoint. As you are using splunk endpoint so your splunk needs to validate it. I believe you cannot write any code/logic for the validation event. So, you can search for the validation log on your splunk and the validation event will be as below:
[
{
"id": "2d1781af-3a4c-4d7c-bd0c-e34b19da4e66",
"topic": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"subject": "",
"data": {
"validationCode": "512d38b6-c7b8-40c8-89fe-f46f9e9622b6",
"validationUrl": "https://rp-eastus2.eventgrid.azure.net:553/eventsubscriptions/myeventsub/validate?id=0000000000-0000-0000-0000-00000000000000&t=2022-10-28T04:23:35.1981776Z&apiVersion=2018-05-01-preview&token=1A1A1A1A"
},
"eventType": "Microsoft.EventGrid.SubscriptionValidationEvent",
"eventTime": "2022-10-28T04:23:35.1981776Z",
"metadataVersion": "1",
"dataVersion": "1"
}
]
Once you find the above event in your logs you can copy the value of validationUrl property and open in the browser to initiate the webhook validation.
Note : The provided URL is valid for 5 minutes. During that time, the provisioning state of the event subscription is AwaitingManualAction. If you don't complete the manual validation within 5 minutes, the provisioning state is set to Failed. You'll have to create the event subscription again before starting the manual validation.

Related

MPGS retrieve session unexpected parameters

I tried to follow the online guideline to do the hosted session integration.
When testing Retrieve session api using postman, the error occurred.
{
"error": {
"cause": "INVALID_REQUEST",
"explanation": "Unexpected parameter 'merchantId'"
},
"result": "ERROR"
}
I did settle the correct parameter, merchantId and sessionId.
https://ap-gateway.mastercard.com/api/documentation/apiDocumentation/rest-json/version/latest/operation/Session%3a%20Retrieve%20Session.html?locale=en_US
You don't actually include the text "merchantId". You have to provide a valid merchant ID. Click on the "URL Parameters" tab on the link you posted.
{merchantId} Alphanumeric + additional characters COMPULSORY
The unique identifier issued to you by your payment provider."
The same goes for "sessionId".

Zapier basic auth pass blank data

I have been trying to create an app in Zapier for one of my project. On the very first step, I am doing Authentication where I choose "Basic Auth" method. I have set API URL along with details, however cannot see the expected result and seeing error in my API return value. After debugging, I found that API doesn't get the value I pass thru the Zapier. I have checked the same API in postman and it works, however it only doesn't work thru the Zapier.
Below is even more detail how I proceed, what is expected result and what I am getting:
Process we're following
We have created an App
We went to Authentication step, there we have selected “Basic Auth” option
Under the Basic Auth, we have configure with setting end point and method is “Post”
We have set our field names as Key and as value we have set “{{bundle.authData.password}” and “{{bundle.authData.username}}” in order to field mapping
Then came to Step 2 to test the authentication
Under the “Test Setup”, we have connected the current Zapier account and clicked on “Test Authentication”
This process doesn’t post any value in parameters. Hope I could explain the issue, please help us to find where we’re going wrong.
Expected Result
{
"data": {
"first_name": "Dhaval",
"last_name": "Parekh",
"email_address": "dhaval.php#gmail.com",
"phone_no": "1234567890",
"user_id": "7oiA****",
"token_id": "zNkzT***"
},
"resend_verification_link": false,
"status": true,
"message": "You have successfully Logged in!!"
}
Actual Result
{
"resend_verification_link": false,
"status": false,
"message": "The password must contain a minimum of one lower case character. one upper case character, one digit"
}
What I understand after spending too much time, is it doesn't send the data with post method and hence I'm getting this issue. While it works fine with the Get Method. So, should I consider that Basic Auth will only with work with "Get" method in Zapier? Or I'm missing any piece to include here?
Please let me know what is missing? Or even I'm going thru the wrong root. I want to create an app in Zapier to allow other apps to connect.

Docusign add voidedReason to callback XML?

I'm using the Docusign REST Api and in the create envelope request I am requesting event notifications for "voided" see below. The callback occurs, but the voidedReason is not present in the XML, so to fetch voidedReason I have to make a separate API call to get the status of the envelope as suggested in: DocuSign - getting void envelope reason.
Is there some reason (no pun intended) that voidedReason is not included in the webhook callback XML for docusignenvelopeinformation.envelopestatus? It seems inconsistent in tha declinereason is provided in the receipientstatuses.recipientstatus object. Would be nice to not have to make the additional API call.
eventNotification: {
url: docusignCallbackUrl,
loggingEnabled: "true",
includeDocumentFields: "true",
requireAcknowledgment: "true",
envelopeEvents: [
{envelopeEventStatusCode: "completed"},
{envelopeEventStatusCode: "declined"},
{envelopeEventStatusCode: "voided"},
],
recipientEvents: [
{recipientEventStatusCode: "Completed"},
],
}
The DocuSign connect configuration offers a way to "Include Envelope Voided Reason" in the DocuSign connect XML payload/notification. This was added In October 2016 timeframe.
Add:
includeEnvelopeVoidReason: "true"
to your eventNotification.

Softlayer api for Block storage deletion request immediately

We are building a implementation where we can delete all the block sotrage including performance & endurance with selected billing ID, I have used the following softlayer rest api for cancellation of storage for our implementation
"https://api.softlayer.com//SoftLayer_Billing_Item/billingID/cancelItem"
Softlayer team told that if i will like to have my services removed immediately, i will need to update the request accordingly with my intention. So, what is the extra parameter should i give in that mentioned api to cancel the request immediately.
Regards,
Debartha
Please try the following request:
https://[username]:[apikey]#api.softlayer.com/rest/v3/SoftLayer_Billing_Item/[billingItemID]/cancelItem
Method: POST
Json Payload:
{
"parameters": [
true,
false,
"No longer needed",
"Cancel immediately"
]
}
The first property as true will cancel the item immediately. Please see the SLDN reference SoftLayer_Billing_Item::cancelItem
To get the billingItemID, please execute:
https://[username]:[apikey]#api.softlayer.com/rest/v3/SoftLayer_Network_Storage/[StorageID]/getBillingItem
Method: GET

Can't create replies to some existing youtube comments

I have a software, which allows you to create a reply to a comment on your youtube video. Therefore I use the youtube API v3 comments.insert method.
POST https://www.googleapis.com/youtube/v3/comments?part=id%2Csnippet&access_token=[access_token]
{
"snippet": {
"parentId": "parentId",
"textOriginal": "test message"
}
}
Most of the time the requests are successful. But for some comments I can't create replies this way. The API always returns:
{
"error": {
"errors": [
{
"domain": "youtube.comment",
"reason": "processingFailure",
"message": "The API server failed to successfully process the request. While this can be a transient error, it usually indicates that the requests input is invalid. Check the structure of the <code>comment</code> resource in the request body to ensure that it is valid.",
"locationType": "other",
"location": "body"
}
],
"code": 400,
"message": "The API server failed to successfully process the request. While this can be a transient error, it usually indicates that the requests input is invalid. Check the structure of the <code>comment</code> resource in the request body to ensure that it is valid."
}
}
I'm using a valid access token and the parentId is valid, too, because I can retrieve it through the API.
I took a look at the successful and failing requests, but didn't find any difference. So I assume that the request input isn't invalid as it is mentioned in the error message.
In my opinion this error isn't a transient error, because the same requests are still failing after some days.
I also tried to create a reply on such a comment through the API Explorer but the result was the same.
Does anyone have the same problems or am I doing something wrong?
When I go to the video and look at the comments directly, the comment with ID z13tjxdqnuygy1lga04cilcqxqipg1zbtbs has a "reply" option under it, while the comment with ID z13rgftjgw3bulyou04ccfnbjofztxg54yo0k does not. It seems that the user posted the comment via their Google+ page and disabled replies to their posts.