Skype for Business Online Caller ID (Outbound CLI)

In Skype for Business Online, when a user makes an outbound PSTN call, by default the telephone number assigned to their Skype for Business Online user will be used as the Caller ID.

Two other Caller ID options are available:

  • Change the Caller ID to be something else (e.g. the Service Number assigned to an Auto Attendant).
  • Block the Caller ID.


SfB Online Caller ID

Note: a 999 call will always present the telephone number assigned to the user.

These two options are available by creating Caller ID policies, and then granting the policies to Skype for Business Online users.  In Skype for Business Online, this can only be done via PowerShell.

If you need instructions on how to connect to Skype for Business Online with PowerShell, see this article.

The Get-CsCallingLineIdentity cmdlet will list all of the Caller ID policies that exist in the organisation.  In a new Skype for Business Online deployment, only the global policy will exist.  If a Caller ID policy isn’t granted to a user, they will inherit the values set in the global policy.

Get-CsCallingLineIdentity | fl

Identity: Global
EnableUserOverride: False
CallingIDSubstitute: LineUri
BlockIncomingPstnCallerID: False

CallingIDSubstitute: LineUri dictates that calls will be presented outbound on the telephone number assigned to the user.

Changing the Caller ID

In this example, I’m creating a Caller ID policy for the Glasgow Office, and setting it to present outbound on a Service Number that is assigned to an Auto Attendant.  Note you must specify a valid Service Number, it cannot be a Subscriber Number.

New-CsCallingLineIdentity -Identity “Glasgow Office” -Description “Glasgow Office DDI Suppress” -BlockIncomingPstnCallerID $false -CallingIDSubstitute Service -ServiceNumber +441414960600

Identity: Tag:Glasgow Office
Description: Glasgow Office DDI Suppress
EnableUserOverride: False
ServiceNumber: +441414960600
CallingIDSubstitute: Service
BlockIncomingPstnCallerID: False

The policy can then be granted to a user by using the Grant-CsCallingLineIdentity cmdlet.

Grant-CsCallingLineIdentity -Identity -PolicyName “Glasgow Office”

To set the policy back to default (Global) run the following command:

Grant-CsCallingLineIdentity -Identity -PolicyName $null

To confirm the policy has been granted to a user, or to see what policy is assigned:

Get-CsOnlineUser -Identity | select CallingLineIdentity

CallingLineIdentity : Glasgow Office

To apply the policy in bulk, create an input CSV file containing the UPN/Email/SIP Address of the user, with a header column of SfBIdentity.  For example:


$glasgow = Import-CSV C:\temp\GlasgowUsers.csv

$glasgow | ForEach {
Grant-CsCallingLineIdentity -Identity $_.SfBIdentity -PolicyName “Glasgow Office”

Anonymous Caller ID

To have users present outbound with an Anonymous Caller ID, create a new Caller ID policy.

New-CsCallingLineIdentity -Identity “Anonymous” -Description “Anonymous DDI Suppress” -CallingIDSubstitute AnonymousIdentity: Tag:Anonymous

Description: Anonymous DDI Suppress
EnableUserOverride: False
CallingIDSubstitute: Anonymous
BlockIncomingPstnCallerID: False

Grant the policy to users following the same steps above, substituting ‘Glasgow Office’ for ‘Anonymous’.


  1. Hi Steve. I have followed this article, and created a new policy which allows users to selectively withhold their caller ID. Having assigned that policy to a user, I was then expecting to see an additional setting in the Skype for Business Client under “Call Forwarding”, but I do not see any change. Any idea how to get that to kick in? This seems to be one of the topic areas which isn’t well documented 😦


    1. Hi Ian,

      It’s well hidden…

      In the SfB Client, Options, Call Forwarding, at the very bottom of the window, under “More Call Settings”, you’ll see “Show or hide my caller ID”. Click on “Edit settings online”.

      This takes the user to a configuration page, where they can enable/disable Anonymous Calling.

      Hope this helps,


      1. Thanks Steve. I do not see these in our SfB client, but that may be because our client install is not the ‘click to run’ version. I did discover (thanks Google) that the link you are taken too from the client is and if my test users go straight to this link then they can control the setting.

        Cheers, Ian


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s