Sample code for 30+ languages & platforms
PowerShell

ChartURL - Create a Signed URL

See more HTTP Misc Examples

Demonstrates how to create a signed URL for ChartURL.

Chilkat PowerShell Downloads

PowerShell
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll"

# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

$crypt = New-Object Chilkat.Crypt2

# Example key: "dek-d7a46236eda961a6c3c18ffcc6b077ba87d27e9ae85f7842c6d427c265dd5f69d5131308d93332353d4a55a4b1160fcf516515a4a9f0aa50fbf2d7a2e7d0f1c5"
$key = "charturl-sign-encrypt-key"
# Example token: "dt-RwYN"
$token = "charturl-token"

$slug = "weekly-activity"
$data = "{ `"options`": {`"data`": {`"columns`": [[`"This Week`",10,13],[`"Last Week`",9,5]]}}}"

$crypt.HashAlgorithm = "SHA256"
$crypt.MacAlgorithm = "HMAC"
$crypt.SetMacKeyString($key)
$crypt.EncodingMode = "base64"

$json = New-Object Chilkat.JsonObject
$json.Load($data)
$("json = " + $json.Emit())

$sig = $crypt.MacStringENC($json.Emit())

$sbUrl = New-Object Chilkat.StringBuilder
$sbUrl.Append("https://charturl.com/i/")
$sbUrl.Append($token)
$sbUrl.Append("/")
$sbUrl.Append($slug)
$sbUrl.Append("?d=")
$sbUrl.Append($crypt.EncodeString($json.Emit(),"utf-8","url"))
$sbUrl.Append("&s=")
$sbUrl.Append($crypt.EncodeString($sig,"utf-8","url"))

$("Signed URL: " + $sbUrl.GetAsString())