CallerID control in Office365 CloudPBX

When using CloudPBX with PSTN Calling, you are able to control the number that is shown when a user is dialing out – when the PSTN Calling feature was in preview this was done with CsCallerIDPolicy’s but they have been deprecated, and a shiny new set of CMD-LET’s have been introduced in order to control this.

Meaning that 


Can no longer be used.

Instead this is how to do it.

If you want to have a look at your current policyes – NOTE: If you havent yet played with this only the default “global” policy wil be shown.
NOTE: This must be run in an online powershell against your SKYPE for Business online subscription.
If you need help to open such a shell please look here:

To view current policyes run

When creating new policyes you have the choice to either make a Servicenumber policy, which will show a Servicenumber for outgoing calls, this could be an Autoattendant or a Call Queue.
OR you could choose to make the policy show “anonymous” meaning NO CallerId is presented.

To create a policy for servicenumbers type:

New-CsCallingLineIdentity -Identity “US_Call_Queue” -CallingIdSubstitute “Service” -ServiceNumber “14255522020” -EnableUserOverride $False -Verbose
To create a policy for anonymous type:
New-CsCallingLineIdentity -Identity “CallerIDAnonymous -Description “anonymous policy” -CallingIDSubstitute Anonymous -EnableUserOverride $false

Note this:
  • Identity must be unique.
  • ServiceNumber must be a valid Service Number in the Skype for Business Online Telephone Number Inventory.
  • If CallerIdSubstitute is given as “Service”, then ServiceNumber cannot be empty

 For both types it is also possible to actually prevent incoming calls from showing callerID do this by adding
-BlockIncomingPstnCallerID $true

If you made a mistake, or later need to change your policy either remove them with


Or by using the SET cmd-let

Set-CsCallingLineIdentity -Identity "CallerIDAnonymous -BlockIncomingPstnCallerID $true 

Now finally - you want to make all this happen, meaning granting the policy to your users.
This is straightforward.

-PolicyName Anonymous -Identity

Or by piping - so for instance.

Get-csonlineuser -Filter {LineURI -like “tel:+45*”}| Grant-CsCallingLineIdentity

-PolicyName Anonymous

AS always - HAPPY SKYPE'ing. :)


  1. Peter

    Is there anything like this for on premise Skype 4B?

    We have the exact same situation with off-hours service team. Skype4B forwards incomming call to a cellphone, but sends the original callers ID. We would like to define our support number here, so that the service team member on watch, can see it's a service call.

    Do you know of a way to accomplish this?

    Greate blog btw.

    1. Post

      Hi – there are many cases where you would want that, for instance – If you have some IT-supporters receiving calls that when they dail the users back, they want to hide their DID and instead show the department number.

Leave a Reply

Your email address will not be published. Required fields are marked *