Determine if a DocuSign account exists using accountName - docusignapi

Is there any way to locate a DocuSign account using the accountName property (and not the account Id)? The REST API only has a method to get account info by Id.

No you can not get account info based on the account name, only the accountId. The accountId is part of the URL that you use in the REST request and the equivalent does not exist for account names unfortunately. If you want to do it by account name what you can do is create a simple lookup table that links account names to account Ids, and based on the account name use its corresponding accountId for the request.
For reference, this is the request that is currently supported

Related

Getting Account ID from Segment.io Salesforce (Actions) Mapping to Create Contact

The Salesforce (Actions) destination in Segment allows one to map Accounts and also Contacts. I'm using this for upserts upon receipt of an identify call.
Their documentation says, that for a contact to be associated with an account, the account ID must be provided.
The ID of the account that this contact is associated with. This is the Salesforce-generated ID assigned to the account during creation (i.e. 0018c00002CDThnAAH).
Fair enough, but the account is created by Segment using another mapping from the same identify. So how can I get the newly created account ID from that step to include in the Account ID field of the contact mapping triggered by the same identify?
The account ID is required to map the new contact to an existing account. But the account ID doesn't exist except as created by another mapping, which isn't made available as a variable in the current context.
Account ID field customer mapping
Simply, how can a single identify event - not having a pre-existing account ID - trigger the creation of both a new account and a related contact using the Segment Salesforce (Actions) destination?
I've tried configuring the mappings in different orders to see if Segment could just recognize that it was itself creating the new account ID. I would expect that at some point the ID it's creating, which I can see in testing, is made available to the other mappings, but that doesn't seem to be the case.
Segment support says it’s not possible to create a new account and a new related contact at the same time from a single Identify.
The account ID needs to be Included in the identify to create a contact related to the account being created. But the account ID doesn’t exist before Segment creates the account, so can't be included in the Identify.
Very frustrating.

DocuSign Signing groups Import from One account to other Account "Same Signing group ID"

Is it possible to get DocuSign Signing groups from account ABC and create same Signing GROUP in account XYZ? We know that we can create signing groups using DocuSign API. Our main concern is that We want to create/import Signing Groups with same SigningGroupID.
As we are saving Signing group ID in our application processes and we want to use same Signing group IDs in some other user account.
Could you please confirm us if this is possible and will not cause any issues?
Is there any other option available for us?
Signing groups are an account object. That means they are part of a specific account. They use a numeric identifier (up to 1,000,000) that is unique inside the account and is generated randomly when you use the API to create a new one.
There's no way to set the group ID directly.
Your best solution is to have a mapping table in your database that maps your groups to your accounts. Another solution is to first make an API call to obtain (list) all the groups and find the one you want and its ID. That solution is less recommended as it requires an extra API call each time.

You cannot change `company[tax_id]` via API if an account is verified. Stripe

We have created a connect account using the API in Stripe. We followed the documentation here. The custom connected account can either be a "company" or an "individual" or "non-profit". We would also like to enable the user to change the tax_id (EIN) programatically. We use the following code
custom_account_rep = stripe.Account.modify(
stripe_custom_account_id,
company = {'tax_id' : center_ein} )
The following error is displayed.
stripe error : InvalidRequestError(message='You cannot change `company[tax_id]` via API if an account is verified.
It is clear that we cannot enable the user to modify the account once it is verified. How do we get the "status" that the account is "verified"?
The account object does not have any field called "status". Not sure if this is relevant, but we also have an external bank account linked to this custom connect account. The external bank account has a status (and its value is "new"). Please help.
At the moment there isn't just one field that you can check for the status of company verification for a Custom Connect account. For your specific use case, you can check a few fields on the Account object to see whether company.tax_id has been verified or not.
Check requirements.currently_due and requirements.past_due. If company.tax_id is in either of these arrays, that means the tax ID needs to be set for the Account (because it was either never provided, or was provided and failed verification).
Check requirements.pending_verification. If company.tax_id is in this array, that means it is currently going through verification and can still be updated.
You can read more about business verification here: https://stripe.com/docs/connect/identity-verification-api#determining-if-identity-or-business-verification-is-needed

How to get groupwise Email Ids in google?

We are using Google for corporate since last 5 years. There have been many dozens google groups created by different site/business division/local administrators. Now we need to know, for each employee, which all groups he is a part of. Does google provide any API to fetch this details ?
Yes. The Directory API has a function to Retrieve all groups for a domain or the account. Here's a part in the docs that I think is what you are specifically aiming for:
All groups for the account — Use the customer argument with either my_customer or the account's customerId value. As an account administrator, use the string my_customer to represent your account's customerId. If you are a reseller accessing a resold customer's account, use the resold account's customerId. For the customerId value use the account's primary domain name in the Retrieve all users in a domain operation's request. The resulting response has the customerId value.

Azure AD Graph API cannot access Microsoft Account

I have 2 users in Azure AD
Microsoft Account user
Microsoft Azure Active Directory user
User 2 always works in Graph API calls but not the user 1.
https://graph.windows.net/tenantid/users/testmail#hotmail.com?api-version=2013-04-05
(Email actually is url encoded as testmail%40hotmail.com).
This gives the following error
"{\"odata.error\":{\"code\":\"Request_ResourceNotFound\",\"message\":{\"lang\":\"en\",\"value\":\"Resource 'testmail#hotmail.com' does not exist or one of its queried reference-property objects are not present.\"}}}"
Does anyone know how to fix this?
Edited:
Things I figured out trying to fix this. I am using UserPrincipal name in the query above(..users/testmail#hotmail.com?..). For built-in domain accounts userPricipal name is testmail#domain.com(this works) but for a Microsoft account userPrincipal name is testmail_hotmail.com#EXT##domain.com. This was given in the all users list (https://graph.windows.net/tenantid/users?api-version=2013-04-05). But even when I changed the query to '..users/testmail_hotmail.com#EXT##domain.com?..' ofcourse after url encoding(testmail_hotmail.com%23EXT%23%40domain.com), still it does not work. Objectid always works though for all accounts(..users/objectId?..) .
Also tried otherMails. May be the api is wrong as otherMails is an array. "https://graph.windows.net/tenantId/Users?$filter=otherMails eq 'testmail%40hotmail.com'&api-version=2013-04-05"
So the question still remains. if only email is available for an MS account(not objectid) when making the call, how to get user details?
You are missing your domain in the URL you posted. It should be
https://graph.windows.net/[your Azure AD domain]/users
To get the email address for a user you need to add the object Id of the user in the request URL. So, for example, to get an Azure AD user it would be like this:
https://graph.windows.net/[your Azure AD domain]/users/[object ID of user]/mail
For users in the directory sourced from a Microsoft Account, the mail property is null. So, you will have to look in the otherMails property like this:
https://graph.windows.net/[your Azure AD domain]/users/[object ID of user]/otherMails
If you want to access the full user account using a user's UPN, you can do that for users sourced from Azure AD. For example, for a tenant domain contoso.com and a user with a UPN johndoe#contoso.com, the query would look like this:
https://graph.windows.net/contoso.com/users/johndoe#contoso.com
This doesn't work for users sourced from Microsoft Accounts. For these accounts, the UPN contains characters (#, . for example) that break the query. You can filter by the UPN though using the naming convention that is used for users sourced from Microsoft Accounts. Suppose you have a user whose email is jayhamlin#yahoo.com in your directory. The UPN would be something like jayhamlin_yahoo.com#EXT##contoso.com. So, you could use a filter and look for the first part of the UPN like this:
https://graph.windows.net/contoso.com/users?api-version=2013-11-08&$filter=startswith(userPrincipalName, 'jayhamlin_yahoo')
You can easily explore the Graph API and object properties for your directory using https://graphexplorer.cloudapp.net.
That filter can work, but you could also filter on otherMails. Your original query didn't work because otherMails is a multi-valued property- so you need to use "any":
https://graph.windows.net/tenantId/users?api-version=1.5&$filter=otherMails/any(x:startswith(x,'testmail#hotmail.com'))
When are you using this lookup? Is it once the user has signed in or for some people picking scenario?
Cheers,

Resources