I need to be able to filter the templates that my organization has in docusign after I make a getTemplates API call. Right now we are filtering by folder name, but this solution is not ideal. Templates can easily get moved and the folders are created by the individual user not by organization, so every user in our organization would have to create the same folder structure.
Is there a way to add a custom data to a template? Ideally, this field would be returned with the JSON Response from DocuSign. Something like:
JSON Response from DocuSign
{
"envelopeTemplates": [
{
"allowMarkup": "sample string 30",
... other standard template properties ...
"customMetaData": {
"foo": "bar" // what ever the user wants to add here
}
}
]
}
Or does anyone have a better idea for filtering templates?
There are two possible ways to add the metadata to the template
TemplateCustom Fields let you specify metadata that gets associated at the Template level. This data isn't visible to recipients; it's just extra metadata that you can associate with an template and query later (via API). See here for more info.
Document Custom Fields let you specify metadata that gets associated at the Document level. This data isn't visible to recipients in any way; it's just extra metadata that you can associate with a specific Document and query later (via API). See here for more info.
It is possible to add custom data to a given template by adding a "Custom Field". See here how to Add Custom Document Fields to a Template Document
Related
Is there an API for editing/adding users/user groups to a project's security groups in Azure DevOps? For example, create a new security group under project and add members under it?
Create a group and add members under this new group are separate steps. As of now, we have not provide one api that you can achieve them at once.
(1) To create a new user group under project level:
POST https://vssps.dev.azure.com/{organization}/_apis/graph/groups?scopeDescriptor={scopeDescriptor}&api-version=6.1-preview.1
Request body:
{
"displayName": "{group name}",
"description": "{The description of this group}"
}
Notes:
The only trouble here is getting scopeDescriptor of the project.
Since you are trying to add group under Project level,
scopeDescriptor is a necessary parameter of this api.
a. Please firstly use this api to retrieve the id of the project that you would like to add the group to.
GET https://dev.azure.com/{organization}/_apis/projects?api-version=6.0
b. Then calling this Descriptors - Get api to get the corresponding scopeDescriptor.
GET https://vssps.dev.azure.com/{organization}/_apis/graph/descriptors/{storageKey}?api-version=5.0-preview.1
Please replace storageKey with project Id since we need to
get the scope descriptor for a project. The content of Value
property is what we are looking for:
Please copy the "descriptor" value into a txt file from the response body after you create a new group successfully, it is the important parameter for next steps.
(2) Adding a member into this new group, please refer to this api:
POST https://vssps.dev.azure.com/{organization}/_apis/graph/users?groupDescriptors={xxxxx}&api-version=6.1-preview.1
Request body:
{
"principalName": "{user' account address}"
}
Notes:
Here please input the descriptor value you copied from previous api's response body, as the value of groupDescriptors parameter.
For request body, just input the user's account address is ok.
Is there any option to get own fields (change fileds name, add alias or sth)? In https://graph.microsoft.com/oidc/userinfo there were some fields like sub, amr, aio returned in JSON. Fields are needed by third party extension in XWIKI (not easy to fix it) :/ Fields not appear in https://graph.microsoft.com/v1.0/me
I need to get all of them in JSON. I there any option to change returned filed name to own? Or maybe return missing fields as new fields? Values of those fields can be static, provided in URL link.... Fields just need to appear and it doens't matter what values will appear there.
Or maybe is there any option to get more fields using:
https://graph.microsoft.com/oidc/userinfo
https://login.microsoftonline.com/{tenant}}/openid/userinfo
like:
mailNickname
onPremisesSamAccountName
?
So there will bo no need to use Graoh v1.0 :)
I'm afraid it's not supported to extend fields with https://graph.microsoft.com/oidc/userinfo endpoint currently.
If possible you could get the additional fields through https://graph.microsoft.com/v1.0/me and handle sub information from https://graph.microsoft.com/oidc/userinfo with them together in your own code.
Similar posts for your reference:
Azure AD: OpenId Connect v2 - UserInfo not returning username, etc.
azure AD, How to add user claims for OIDC /userinfo request
The header parameters in the logicApp template can be added multiple times dynamically, but i want the same functionality in my custom connector template. I cannot find any tutorial or docs to do so.
This is my custom connector, here i can have multiple fields,but i want it similar to a key value pair table.
I don't think it is currently supported on the designer view. But you can do it in the code view and add them there:
"headers": {
"key1": "val1",
"key2": "val2"
}
HTH
I'm retrieving user information using the graph API (https://graph.microsoft.com/v1.0/me), but I'm only getting very little information:
{
"#odata.context": "https://graph.microsoft.com/beta/$metadata#users/$entity",
"id": "e163a120378.....",
"userPrincipalName": "myemail#example.com"
}
(Omitting properties with null values)
I'm sure that this user has at least a name (and probably some other properties), and I am expecting it to be included in the response, but it's not.
The access token used for the request was requested with scope https://graph.microsoft.com/User.Read, using the token enpoint https://login.microsoftonline.com/common/oauth2/v2.0/authorize. I've tried many other scopes, without results.
How do I retrieve user information with more details, like a name?
To resolve this issue, you'll want to update this account's profile with First Name and Last Name via https://profile.live.com. Once populated, these values will surface within Graph.
There are multiple systems backing Microsoft Accounts. Graph is pulling the profile data from Outlook.com. The https://profile.live.com site holds the Outlook Profile which that Graph is reading from. Once a user visits Outlook.com, all of the profile data is provisioned and then synced with https://account.microsoft.com. Prior to that however, the Profile isn't fully populated.
Is there a way to assign tabs to a document, without having a recipient declared?
Situation: We want to have a template for an employee application, and then use the API to fill the fields, assign the recipients, and embed for signing.
When I create the template with no recipient, it doesn't allow me to place any tags. Given that I don't know the recipient until the time I call the API, does that mean I can't place the tabs until then? I really don't want to have to place 50 tabs dynamically.
Thanks in advance.
Chase
DocuSign tabs are always with respect to a given recipient, never the document itself, however I believe you can still accomplish this workflow. If you create a Template through the DocuSign Console you can add a template role without providing any recipient info (i.e. name or email) at that time. Afterwards when you reference this template through a signature request API call you can then supply the actual recipient names and emails in the request and map them to your already configured envelope tabs through the
roleName
property for each recipient.
The very first DocuSign API Walkthrough has code that demonstrates how to do this with just one role, but note that this is just an example and you can have multiple roles.
DocuSign API Walkthroughs
From a high level these are the steps you want to take:
Create a template in the DocuSign Console.
Add document(s), then add at least one recipient but only fill in the role field.
Now on your document you'll see that you can add whatever tabs you want to the envelope, under that role.
Save the template.
Make an API call for requesting a signature, which references the templateId and has the roleName parameter present for your recipient(s). This roleName value should match the role that you saved with the template in step 2.
If you named the role Signer1 for instance, your request body (in JSON format) might look like this:
{
"accountId": "123456",
"emailSubject": "DocuSign API Call - Signature Request from Template",
"emailBlurb": "Sample email body",
"templateId": "B977F511-CAB0-...................",
"templateRoles": [
{
"roleName": "Signer1",
"email": "test#docusign.com",
"name": "John Doe"
}
],
"status": "sent"
}