Powershell script to create Contacts inside Exchange account? - powershell

Is it possible with Powershell to create Contacts inside a Exchange account?
Im not talking about creating a Contact in Active Directory, but a contact in the Exchange account there will be visable by Outlook, Webmail, and Mobile sync.
The reason for this, is that a customer wants a easy way to deploy some static adresses, without the use of using contacts in the Global Address list.

You can do this using the EWS Managed API library with Powershell for this, I have a module on GitHub which should work okay https://github.com/gscales/Powershell-Scripts/tree/master/EWSContacts
Cheers
Glen

Related

Shared Contacts from a Mailbox in outlook Permissions

I have a problem with a shared user account that I need some help with:
In outlook, we use a user mailbox for our company contacts that I have restricted to be only accessible by a few people. Problem is that some people need access to this and we put the account on their phone, but then they have full control and can add and remove contacts at will.
Is there a way to restrict (for example an iPhone) access to the outlook account to be read only?
I have tried using the ECP (no applicable settings) and made the user a "reviewer" to their own box, but the phone still has full access.
The problem with access from a phone is that the build and applications and even the Outlook app for iPhone and Android doesn't have the ability to access Shared Mailboxes.
So the only way of getting it working on a phone, outside of having the users open the webmail which is not a nice experience on a mobile devices despite Microsofts best efforts, is to give the mailbox an Exchange license and provide the user with a username and password for the mailbox.
However doing this will give the user full access to all folders in the mailbox.
I would recommend a solution like
CiraSync, where you could sync contacts between folders directly to the users own mailbox or from the GAL directly to the users.
I would recommend other vendors that does the same but this is the only vendor that I have tested myself on customers and I have good experiences with.

Create client under CSP using powershell

We are switching from reseller/advisor accounts to CSP.
We can manually create Customers under PartnerCenter which creates the relationship as Cloud Reseller as opposed to Advisor as before.
We can create the company name fine and add License based subscriptions however when we add Usage Based Subscription it lists the subscription name as Microsoft Azure instead of our Company Name. Also we have to go into this subscription and manually create AzureReader and AzureAdmin users under the ARM Portal.
I am looking for powershell options to automate this process:
Create a new client under CSP using powershell.
Create a usage based subscription with our Company Name instead of Subscription name of Microsoft Azure under this new client.
Add the AzureReader and AzureAdmin users to the Subscription.
Any assistance is appreciated.
I looked through several forums as well as scripts on Github but have not found anything and unfortunately I am not a coder or powershell guru.
Updating my answer -
Powershell preview is out now here
i am afraid there are no power-shell to accomplish this but instead there is a .net sdk or a REST API that can help to accomplish this.
Read more here

Use Powershell to list all mailbox users contacts from their contact folder with all attributes

I am on Office 365 and I (Admin of the site) have to run a query that takes a users mailbox (e. g: 'john.doe#example.com') and lists all of its contacts from the contact folder with all available attributes like name, email-address and so on. After searching heavily with Google and co. I found nothing regarding powershell handling contacts except importing and exporting. Is there a way?
You need to use an API like Exchange Web Services to access that level of information. You can use the EWS Managed API from Powershell. As it turns out, Glen Scales has a good write-up on exporting contacts that way.

Trigger script across multiple Google accounts? (Google Apps Script)

I know I can use Google Apps Script to send an email from the account that is currently logged in. I'm wondering, is it possible for a "master" Script on one account to push a trigger of some kind out to a series of other Google Accounts, telling them to run their scripts?
Essentially I need to send a bunch of emails from various different accounts, and the user who runs the script won't be able to log into all of them. I'm looking for a way to make all these accounts listen for a central signal to run their scripts.
Does this make sense? Any thoughts?
Thank you,
Pacific 231
The short answer is yes...
You will have to write one script for each account that will run as a service (deployed as webApp with its own url) and your master script will have to call each of them using an urlFetch with some parameters added to the url telling them what email to send. You'll have to add some security feature to these calls.
Every webApp service will run as the user who wrote the script and will be accessible to anyone (if in a Google Apps account you will be able to restrict the use to members of the Google Apps community).
This is not too hard to do but will require some work though...
We'll be glad to help you if you meet specific issues.

How to manage office 365 accounts in windows azure web site

I'd like to deploy a Office 365/Exchange Online management portal in the WAWS(Windows Azure WebSite) which could create new user/group/mailbox or change some property of specific user, etc. Is it possible to deploy this kind of web application in the WAWS environment? Should I call PowerShell and Office365 cmdlet in the ASP.NET environment? Or there are any better way to do this?
As the #Matt alludes to in his comment, there is already a web-based management portal for both of these. However, since you ask this question, I'm going to assume that you want additional functionality/customization.
The short answer is yes, you can.
User accounts in Office 365 are, behind the scenes, accounts in Azure Active Directory. So, for creating users, contacts, security groups and adding licenses, you will need to use the Azure Active Directory Graph API:
Getting Started With Windows Azure Active Directory Graph
For managing Exchange Online, you will probably want to use the Exchange Web Services Managed API 2.0. You'll probably only need this if you need to create distribution groups or manage individual users' contact folders (mailboxes for users get created when you assign an Exchange license from Azure Active Directory).
Get started with EWS Managed API client applications
Update: the Office 365 APIs were recently announced, and are now in Preview. They are a RESTful API, which can be used to manage (for now), mail, contacts and calendar items. Depending on your use case, this may be easier to deal with than the EWS Managed API 2.0.
Using the Mail, Calendar, and Contact REST APIs to work with emails, calendar items, and contacts