Another PowerShell vExpert.me URL Shortner
Building on Jonathan Medd’s excellent idea of Using PowerShell to access the vExpert.me URL Shortener, I decided to improve it a bit more.
Here is the completed script.
<#
.SYNOPSIS
Will create a new vExpert.me URL
.DESCRIPTION
Using the Invoke-Rest Cmdlet to invoke a creation of a new vExpert.me URL
.PARAMETER URL
URL that should be shortened.
.PARAMETER Custom
The custom URL that should be used.
.EXAMPLE
PS C:\> New-vExpertURL -URL 'https://www.google.com'
This example shows how to call the New-vExpertURL function with with the URL parameter and generate a random URL.
.EXAMPLE
PS C:\> New-vExpertURL -URL 'https://www.google.com' -Custom this_is_my_link
This will create a custome URL of https://vexpert.me/this_is_my_link pointing to https://www.google.com
.INPUTS
System.String
.OUTPUTS
System.String
.NOTES
For more information about advanced functions, call Get-Help with any
of the topics in the links listed below.
#>
function New-vExpertURL {
[CmdletBinding()]
param(
[Parameter(Position=0, Mandatory=$true)]
[System.String]$URL,
[Parameter(Position=1)]
[System.String]$Custom
)
begin {
if (!$($Custom) ) {
$baseurl_2 = "&action=shorturl&format=json&url="
} else {
$baseurl_2 = "&action=shorturl&keyword=" + $Custom + "&format=json&url="
}
$baseurl_1 = "https://vexpert.me/yourls-api.php?signature="
$secret = "xxxxxxxxx"
}
process {
$invokeurl = $baseurl_1 + $secret + $baseurl_2 + $URL
$vExpertme = Invoke-RestMethod -Uri $invokeurl
$vExpertme.shorturl | clip
Write-Host "The shortenend URL is now in your clipboard" -ForegroundColor Green
}
end {
}
}
It is quite self explanatory. You will need to enter your personal secret code in Line 47.
So I added 4 things
- This is now a function – and it accepts parameters.
- One of the parameters is CustomURL which will allow you to enter your custom text if you please.
- The output will provide the URL and a success message.
- The URL will now be in your clipboard so you can use it.