Add flag if description field is not empty - google-chrome-extension

If you add any information to the description field of a google calendar (web) entry, it would be very useful to see a flag/mark/asterisk in the subject line. Then you can easily scroll through your event list or overview without double-clicking all records for (non-existent) details.
Is there an addon/plugin that will do this for me? Or do I have to program a chrome extension?

You can use Calendars:get by using this request, you were able to detect if the description of the calendar is empty or not.
Here's a sample request:
HTTP request
GET https://www.googleapis.com/calendar/v3/calendars/calendarId
Use calendarId to retrieve calendar IDs, call the calendarList.list method. If you want to access the primary calendar of the currently logged in user, use the primary keyword.
Note that every request, your application sends to the Google Calendar API. Your request must include an authorization token. The token also identifies your application to Google. Your application must use OAuth 2.0 to authorize requests.
Successful Response include description as string:
{
"kind": "calendar#calendar",
"etag": etag,
"id": string,
"summary": string,
"description": string,
"location": string,
"timeZone": string
}

Related

Apple sign in, authorize method returns name only first time

Implementing Apple sign in in a web app (old fashion ASP.NET, but it doesn't matter - the question can be treated as simple HTML/JS POC), calling method authorize on Apple endpoint:
https://appleid.apple.com/auth/authorize?client_id=...&redirect_uri=...&response_type=code%20id_token&state=...&response_mode=form_post&scope=name%20email
I want to get the user's first and last name.
Method returns something like this:
{
"state": "xxx",
"code": "yyy",
"id_token": "zzz",
"user": {
"name": {
"firstName":"John",
"lastName":"Doe"
},
"email":"example#privaterelay.appleid.com"
}
}
id_token is JWT which consists of user's apple ID and email, there is no data regarding name or surname.
As you can see, I can get name and surname from the user property. That's the only way known to me.
The problem is, Apple returns this data only the first time I request it. It's not a bug, it's a feature: https://developer.apple.com/documentation/sign_in_with_apple/sign_in_with_apple_js/configuring_your_webpage_for_sign_in_with_apple :
Important
Apple only returns the user object the first time the user authorizes
the app. Persist this information from your app; subsequent
authorization requests won’t contain the user object.
So I store this data for later in the workflow, I will store it in database.
Now my problem/question:
When user deletes their account, I delete all their data from db (I have to, because of the contract, law etc).
When the user registers again through Apple sign in, I ping Apple endpoint, and I don't get user data (including name and surname) any more (because of the Apple policy quoted above)!
What should I do to get it?
I'm doing apple sign-in back-end part, faced the similar issue.
For IOS 13+
SDK provides apple user uuid, email and name for the first authorize request.
We are mapping this unique apple_user_uuid with the profile details in DB.
(In case of request failures, you can ask back-end to put this in queue and app should keep this in cache until back-end call is successful).
For ANDROID/WEB Flow/IOS Below 13
For the first time in apple callback, it sends us the name with a one time code (5 minute expiry).
Using this code when we call token API, it provides us id_token JWT.
In token the subject is apple_user_uuid.
Persist it in the same table.
So now in back-end you will always have email,firstName, lastName tagged with apple_user_uuid, which remains constant for an apple id.
And don't delete this mapping if the user deletes your account. Until apple provides a fix.

Incoming Slack Webhook URL Components

Incoming Slack Webhook URL looks like https://hooks.slack.com/services/aaaaa/bbbbb/ccccc -- What is aaaaa, bbbbb, ccccc.. Can you please let us know is it possible to find what is the Slack Channel name and workspace name based on this webhook
Based on the incoming webhook alone (as a string) it's not possible, apart from the team_id mentioned in the comment above.
From my experience with only incoming-webhooks enabled and publicly distributed apps that information is available only in response after user installs the app with the standard OAuth process. Keep in mind that reponse will change depending of the scope of your application but if you ask for incoming-webhook you will get channel together with url which is incoming-webhook url. You will also get team_name and team_id which is Workspace info. You can find detailed explanation at https://api.slack.com/messaging/webhooks#incoming_webhooks_programmatic and https://api.slack.com/authentication/oauth-v2.
And here is an example of OAuth response json.
{
"ok": true,
"access_token": "xoxp-XXXXXXXX-XXXXXXXX-XXXXX",
"scope": "identify,bot,commands,incoming-webhook,chat:write:bot",
"user_id": "XXXXXXXX",
"team_name": "Your Workspace Name",
"team_id": "XXXXXXXX",
"incoming_webhook": {
"channel": "#channel-it-will-post-to",
"channel_id": "C05002EAE",
"configuration_url": "https://workspacename.slack.com/services/BXXXXX",
"url": "https://hooks.slack.com/TXXXXX/BXXXXX/XXXXXXXXXX"
}
So in the nutshell, as far as I know, there is no way to get information from webhook alone, but one other option, which is not directly the answer to the question is to expand your application and include web api permissions and then there is nothing stopping you to request that information independently from incoming-webhook directly from the workspace.

How to attach file to email using REST API

I am working with emails from REST API.
I am able to create the email in the system and to update it.
The problem is with attaching files to the email to correct the images in the body of the email.
The endpoint for attaching files to records looks like below:
http://<Base endpoint URL>/<Top-level entity>/<Key value 1>/<Key value 2>/files/<File name>
The problem with emails is that the Key for emails is the NoteID field which can be accessed only using $custom parameter with requests like below:
https://baseurl/18.200.001/Email?$filter=From eq 'test#email.com'&$custom=Message.NoteID
This request will return a response like below
[
{
"id": "50bd83f1-b5bb-49f2-8ca9-6e55d6e10463",
"rowNumber": 1,
"note": "",
...
...
...
"custom": {
"Message": {
"NoteID": {
"type": "CustomGuidField",
"value": "9daca267-4bbd-e911-81ee-0259459e71e6"
}
}
},
"files": []
}
]
Where the NoteID corresponds to the one shown in the browser URL for the email
The problem is that when I try to send a request for attaching a file to that email using that NoteID or id from the response I always receive 'No entity satisfies the condition." error message in the request profiler.
Is there any other way to attach files using REST API?
After reviewing the OpenAPI 2.0 specification, comparing the specification for attaching files to different entities and checking keys of the entities it turned out that the Key of the entity must be specified in the Web Service Endpoint.
In the case of Email entity, the key field is NoteID and it is not specified in the endpoint, even more, it is not being shown in the lookup of the fields in the Web Service Endpoint.
But luckily, the system is allowing to manually write NoteID in the grid and save the endpoint like below:
and this entity is even passing the validation

DocuSign ID Check with Embedded signing for documents sent via JAVA SDK

I'm trying to achieve ID Check on embedded signing through an envelope sent via Docusign Java SDK. I am able to make it work through remote signing however, I get the following error on embedded signing.
{
"errorCode": "INVALID_REQUEST_PARAMETER",
"message": "The request contained at least one invalid parameter. The value of AuthenticationMethod is invalid."
}
I'm fully aware of another post on the same topic posted in 2013 (DocuSign ID Check with Embedded signing). The difference here is that I'm not using any document templates but sending the documents in the envelope itself. Based on the comments a bug was logged with bug id 30830 but I can't say whether this was resolved.
Also, I have already added the settings that I know that are required for ID Check.
signer.setRequireIdLookup("true");
recipientViewRequest.setAuthenticationMethod("ID Check $");
Can anyone advise on what I'm missing ?
It's a little hard to tell from your question but from what I gather you might be setting the properties on the wrong request. As you know when creating a remote signing request you can do it through just one API request - Envelopes: create.
For embedded signing you still first create an envelope (with an embedded recipient) but then you need to generate the signing URL by calling EnvelopeViews: createRecipient.
When setting the ID Check authentication for your recipient you still need to assign this in the first request (ie the create envelope call) so that recipient is configured like so:
"recipients": {
"signers": [
{
"idCheckConfigurationName": "ID Check $",
"requireIdLookup": "true",
...
}
]
}
THEN, in the request body of the second call you need to set the authenticationMethod with the same value and provide the other required params to identify the signer.
Please confirm you are following this flow and if so and still stumped then post the actual JSON that you are sending for your requests and we should be able to determine from there.

Using the docusign api c# access code for authentication of signer

Using the sample C# send document API call, how can I send a data element located in my system, such as zip code or last 4 of ssn, to be enable this as an access code to view the document? This way I know that the person signing has another level of authentication tat ties back to the signer.
Have you read through the DocuSign API documentation yet? Just add the accessCode property to your signer JSON object and give it a value. Basically, something like this:
"recipients":
{
"signers": [
{
"email": "test_1#email.com",
"name": "Name 1",
"accessCode": "1234",
...
Description from API docs:
"This Optional element specifies the access code a recipient has to enter to validate their identity. This can be a maximum of 50 characters."

Resources