Introduction

The Shuuraku API is organized around REST and uses HTTP response codes to indicate API errors. We use built-in HTTP features, like HTTP authentication and HTTP verbs, which are understood by off-the-shelf HTTP clients. JSON is returned by all API responses, including errors.

Language:
Authentication

Authenticate your account by including your token in API requests. Do not share your token publicly on accessible areas such GitHub, client-side code, and so forth.

All API requests must be made over HTTPS. Calls made over plain HTTP will fail. API requests without authentication will also fail.

Errors

Shuuraku uses conventional HTTP response codes to indicate the success or failure of an API request. In general: Codes in the 2xx range indicate success. Codes in the 4xx range indicate an error that failed given the information provided (e.g., a required parameter was omitted, a charge failed, etc.). Codes in the 5xx range indicate an error with Shuuraku's servers (these are rare).

Some 4xx errors that could be handled programmatically include an error code that briefly explains the error reported.

200 - OK - Everything worked as expected.

400 - Bad Request - The request was unacceptable, often due to missing a required parameter.

401 - Unauthorized - No valid API key provided.

402 - Request Failed - The parameters were valid but the request failed.

404 - Not Found - The requested resource doesn't exist.

429 - Too Many Requests - Too many requests hit the API too quickly.

5XX - Server Errors - Something went wrong on Shuuraku's end.

Create A Countdown timer
Create a custom countdown timer that will count down to a specific date and time. Between the start date and the countdown date, an animated image will be generated. After the countdown date, a "0000-00-00 00:00:00" image will be generated.
Arguments
forms_colour
required
string
A hex value starting with a "#" character
forms_date_time
required
date-time
A date-time string formatted as YYYY-MM-DD HH:MM:SS, the date and time that the countdown timer should count down to
forms_expired_message
optional
string
A string shown when the countdown timer reaches "00:00:00:00". This string will be shown in place of "00:00:00:00" and can be a maximum of 25 characters. This parameter can only be used if you are a on a "Mid" or "Enterprise" plan.
forms_font
required
uuid
A uuid associated with a font. Valid values can be found in the fonts section.
forms_label
required
string
A label to identify this marketing item
forms_link
required
string
A string representing a link. Clicking the countdown will redirect to this link.
forms_message
optional
string
A string shown above the countdown timer, which can explain the reason for the countdown timer.
forms_show_labels
required
integer
"1" to generate labels on your countdown timer or "0" to not generate labels on your countdown timer. Labels are the "days", "hours", "minutes", and "seconds" strings that show below each number in the countdown timer.
forms_size
required
integer
A number value used to set the font size of the countdown timer. Valid values can be found in the font sizes section.
forms_timezone
required
string
A string signifying the timezone you want the countdown timer to be associated with. Valid values can be found in the timezones section.
Returns
Returns and object that includes the Marketing Item Number.
POST https://api.shuuraku.com/v1/Countdown/Create
curl -X POST \
-H "Authorization: Bearer abcdef1234567890" \
-d forms_colour=#000000 \
-d forms_date_time="2025-09-22 11:24:53" \
-d forms_expired_message="Countdown complete" \
-d forms_font="00000000-0000-4000-a000-000000000001" \
-d forms_label="My Countdown" \
-d forms_link="https://www.shuuraku.com" \
-d forms_message="Countdown to my event" \
-d forms_show_labels=1 \
-d forms_size=36 \
-d forms_timezone=America/New_York \
https://api.shuuraku.com/v1/Countdown/Create
$.ajax({
    url: "https://api.shuuraku.com/v1/Countdown/Create",
    type: "POST",
    beforeSend: function(xhr) {
        xhr.setRequestHeader("Authorization", "Bearer abcdef1234567890");
    },
    data: {
        forms_colour: "#000000",
        forms_date_time: "2025-09-22 11:24:53",
        forms_expired_message: "Countdown complete",
        forms_font: "00000000-0000-4000-a000-000000000001",
        forms_label: "My Countdown",
        forms_link: "https://www.shuuraku.com",
        forms_message: "Countdown to my event",
        forms_show_labels: "1",
        forms_size: "36",
        forms_timezone: "America/New_York"
    },
    success: function(data) { alert("success"); },
    error: function(data) { alert("error"); }
});
<?php

$curl = curl_init();
$data = array(
    'forms_colour' => '#000000',
    'forms_date_time' => '2025-09-22 11:24:53',
    'forms_expired_message' => 'Countdown complete',
    'forms_font' => '00000000-0000-4000-a000-000000000001',
    'forms_label' => 'My Countdown',
    'forms_link' => 'https://www.shuuraku.com',
    'forms_message' => 'Countdown to my event',
    'forms_show_labels' => '1',
    'forms_size' => '36',
    'forms_timezone' => 'America/New_York'
);

curl_setopt_array($curl, array(
    CURLOPT_URL => 'https://api.shuuraku.com/v1/Countdown/Create',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 0,
    CURLOPT_FOLLOWLOCATION => false,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_POST => count($data),
    CURLOPT_POSTFIELDS => http_build_query($data),
    CURLOPT_HTTPHEADER => array(
        'Authorization: Bearer abcdef1234567890'
    )
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo 'cURL error #:' . $err;
} else {
    echo $response;
}

?>
package main

import (
    "fmt"
    "os"
    "path/filepath"
    "net/http"
    "io/ioutil"
)

func main() {
    data := url.Values{}
    data.Set("forms_colour", "#000000")
    data.Set("forms_date_time", "2025-09-22 11:24:53")
    data.Set("forms_expired_message", "Countdown complete")
    data.Set("forms_font", "00000000-0000-4000-a000-000000000001")
    data.Set("forms_label", "My Countdown")
    data.Set("forms_link", "https://www.shuuraku.com")
    data.Set("forms_message", "Countdown to my event")
    data.Set("forms_show_labels", "1")
    data.Set("forms_size", "36")
    data.Set("forms_timezone", "America/New_York")

    client := &http.Client {
        CheckRedirect: func(req *http.Request, via []*http.Request) error {
        return http.ErrUseLastResponse
        },
    }
    req, err := http.NewRequest("POST", "https://api.shuuraku.com/v1/Countdown/Create", strings.NewReader(data.Encode()))
    if err != nil {
        fmt.Println(err)
    }
    req.Header.Add("Authorization", "Bearer abcdef1234567890")
    req.Header.Add("Content-Type", "application/x-www-form-urlencoded")     req.Header.Add("Content-Length", strconv.Itoa(len(data.Encode())))
    res, err := client.Do(req)
    defer res.Body.Close()
    body, err := ioutil.ReadAll(res.Body)

    fmt.Println(string(body))
}
import requests
url = 'https://api.shuuraku.com/v1/Countdown/Create'
payload = {
    'forms_colour': '#000000',
    'forms_date_time': '2025-09-22 11:24:53',
    'forms_expired_message': 'Countdown complete',
    'forms_font': '00000000-0000-4000-a000-000000000001',
    'forms_label': 'My Countdown',
    'forms_link': 'https://www.shuuraku.com',
    'forms_message': 'Countdown to my event',
    'forms_show_labels': '1',
    'forms_size': '36',
    'forms_timezone': 'America/New_York'
}
headers = {
    'Authorization': 'Bearer abcdef1234567890'
}
response = requests.request('POST', url, headers = headers, data = payload, allow_redirects=False, timeout=undefined, allow_redirects=false)
print(response.text)
require "uri"
require "net/http"

url = URI("https://api.shuuraku.com/v1/Countdown/Create")

https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true

request = Net::HTTP::Post.new(url)
request.set_form_data({
    "forms_colour" => "#000000",
    "forms_date_time" => "2025-09-22 11:24:53",
    "forms_expired_message" => "Countdown complete",
    "forms_font" => "00000000-0000-4000-a000-000000000001",
    "forms_label" => "My Countdown",
    "forms_link" => "https://www.shuuraku.com",
    "forms_message" => "Countdown to my event",
    "forms_show_labels" => "1",
    "forms_size" => "36",
    "forms_timezone" => "America/New_York"
})
request["Authorization"] = "Bearer abcdef1234567890"

response = https.request(request)
puts response.read_body
{"result":{"id_marketing_item":"00000000-0000-4000-a000-000000000002","url":"https://www.shuuraku.com/countdown/abcdefg1234567890.gif"}}
Create A QR Code
Create a custom QR code that can encode URLs, text, or other data types. The QR code can be customized with colors, fonts, and optional logos.
Arguments
forms_colour
required
string
A hex value starting with a "#" character for the QR code color
forms_data
required
string
The data to encode in the QR code (URL, text, email, etc.)
forms_data_type
required
string
The type of data to encode (e.g., "url", "text", "email", "phone")
forms_font
required
uuid
A uuid associated with a font. Valid values can be found in the fonts section.
forms_label
required
string
A label to identify this marketing item
forms_logo
optional
string
A base64 encoded image (no more than 150x150 pixels) to overlay on the QR code. This parameter can only be used if you are on a "Basic", "Mid", or "Enterprise" plan.
forms_message
optional
string
A string shown above the QR code, which can explain the purpose of the QR code.
forms_size
required
integer
A number value used to set the font size. Valid values can be found in the font sizes section.
forms_time_ranges
optional
array
An array of time ranges to show different links at different times of day. Each time range should include start, end, and data. Example: [{"start":"09:00","end":"17:00","data":"https://www.shuuraku.com/business"},{"start":"17:00","end":"09:00","data":"https://www.shuuraku.com/after-hours"}]. This parameter can only be used if you are on a "Mid" or "Enterprise" plan.
forms_timezone
optional
string
A string signifying the timezone. Valid values can be found in the timezones section. This parameter can only be used if you are on a "Mid" or "Enterprise" plan.
Returns
Returns an object that includes the Marketing Item Number and URL.
POST https://api.shuuraku.com/v1/QRCode/Create
curl -X POST \
-H "Authorization: Bearer abcdef1234567890" \
-d forms_colour=#000000 \
-d forms_data="https://www.shuuraku.com" \
-d forms_data_type=url \
-d forms_font="00000000-0000-4000-a000-000000000001" \
-d forms_label="My QR Code" \
-d forms_logo="iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAIAAACRXR/mAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAdnJLH8AAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAuIwAALiMBeKU/dgAAAAd0SU1FB+kHBhUVBTfmECYAAACZSURBVFjD7ZlBCsAgDARN6Vv1TfpZe/NQqCgxQens0R6yMJFNrNRaw366wpbCFrawha3TbN39zyJiVLifLkDUQ0wpvU5ijEvqlVK4ic43sSnnrCnTumJwvAOiBUSlZnsAiD/qreWZTVS7QVyV0ES1P0RlMI8McEDE1t57ovOjIRAt9kS7rR+Ix00Qg7EGxBkJP1ewhS1sfekB2MYlo2hBu20AAAAASUVORK5CYII=" \
-d forms_message="Scan to visit us" \
-d forms_size=36 \
-d forms_time_ranges='[{"start":"09:00","end":"17:00","data":"https://www.shuuraku.com/business"},{"start":"17:00","end":"09:00","data":"https://www.shuuraku.com/after-hours"}]' \
-d forms_timezone=America/New_York \
https://api.shuuraku.com/v1/QRCode/Create
$.ajax({
    url: "https://api.shuuraku.com/v1/QRCode/Create",
    type: "POST",
    beforeSend: function(xhr) {
        xhr.setRequestHeader("Authorization", "Bearer abcdef1234567890");
    },
    data: {
        forms_colour: "#000000",
        forms_data: "https://www.shuuraku.com",
        forms_data_type: "url",
        forms_font: "00000000-0000-4000-a000-000000000001",
        forms_label: "My QR Code",
        forms_logo: "iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAIAAACRXR/mAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAdnJLH8AAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAuIwAALiMBeKU/dgAAAAd0SU1FB+kHBhUVBTfmECYAAACZSURBVFjD7ZlBCsAgDARN6Vv1TfpZe/NQqCgxQens0R6yMJFNrNRaw366wpbCFrawha3TbN39zyJiVLifLkDUQ0wpvU5ijEvqlVK4ic43sSnnrCnTumJwvAOiBUSlZnsAiD/qreWZTVS7QVyV0ES1P0RlMI8McEDE1t57ovOjIRAt9kS7rR+Ix00Qg7EGxBkJP1ewhS1sfekB2MYlo2hBu20AAAAASUVORK5CYII=",         forms_message: "Scan to visit us",
        forms_size: "36",
        forms_time_ranges: '[{"start":"09:00","end":"17:00","data":"https://www.shuuraku.com/business"},{"start":"17:00","end":"09:00","data":"https://www.shuuraku.com/after-hours"}]',
        forms_timezone: "America/New_York"
    },
    success: function(data) { alert("success"); },
    error: function(data) { alert("error"); }
});
<?php

$curl = curl_init();
$data = array(
    'forms_colour' => '#000000',
    'forms_data' => 'https://www.shuuraku.com',
    'forms_data_type' => 'url',
    'forms_font' => '00000000-0000-4000-a000-000000000001',
    'forms_label' => 'My QR Code',
    'forms_logo' => 'iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAIAAACRXR/mAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAdnJLH8AAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAuIwAALiMBeKU/dgAAAAd0SU1FB+kHBhUVBTfmECYAAACZSURBVFjD7ZlBCsAgDARN6Vv1TfpZe/NQqCgxQens0R6yMJFNrNRaw366wpbCFrawha3TbN39zyJiVLifLkDUQ0wpvU5ijEvqlVK4ic43sSnnrCnTumJwvAOiBUSlZnsAiD/qreWZTVS7QVyV0ES1P0RlMI8McEDE1t57ovOjIRAt9kS7rR+Ix00Qg7EGxBkJP1ewhS1sfekB2MYlo2hBu20AAAAASUVORK5CYII=",     'forms_message' => 'Scan to visit us',
    'forms_size' => '36',
    'forms_time_ranges' => '[{"start":"09:00","end":"17:00","data":"https://www.shuuraku.com/business"},{"start":"17:00","end":"09:00","data":"https://www.shuuraku.com/after-hours"}]',
    'forms_timezone' => 'America/New_York'
);

curl_setopt_array($curl, array(
    CURLOPT_URL => 'https://api.shuuraku.com/v1/QRCode/Create',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 0,
    CURLOPT_FOLLOWLOCATION => false,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_POST => count($data),
    CURLOPT_POSTFIELDS => http_build_query($data),
    CURLOPT_HTTPHEADER => array(
        'Authorization: Bearer abcdef1234567890'
    )
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo 'cURL error #:' . $err;
} else {
    echo $response;
}

?>
package main

import (
    "fmt"
    "os"
    "path/filepath"
    "net/http"
    "io/ioutil"
)

func main() {
    data := url.Values{}
    data.Set("forms_colour", "#000000")
    data.Set("forms_data", "https://www.shuuraku.com")
    data.Set("forms_data_type", "url")
    data.Set("forms_font", "00000000-0000-4000-a000-000000000001")
    data.Set("forms_label", "My QR Code")
    data.Set("forms_logo", "iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAIAAACRXR/mAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAdnJLH8AAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAuIwAALiMBeKU/dgAAAAd0SU1FB+kHBhUVBTfmECYAAACZSURBVFjD7ZlBCsAgDARN6Vv1TfpZe/NQqCgxQens0R6yMJFNrNRaw366wpbCFrawha3TbN39zyJiVLifLkDUQ0wpvU5ijEvqlVK4ic43sSnnrCnTumJwvAOiBUSlZnsAiD/qreWZTVS7QVyV0ES1P0RlMI8McEDE1t57ovOjIRAt9kS7rR+Ix00Qg7EGxBkJP1ewhS1sfekB2MYlo2hBu20AAAAASUVORK5CYII=")
    data.Set("forms_message", "Scan to visit us")
    data.Set("forms_size", "36")
    data.Set("forms_time_ranges", `[{"start":"09:00","end":"17:00","data":"https://www.shuuraku.com/business"},{"start":"17:00","end":"09:00","data":"https://www.shuuraku.com/after-hours"}]`)
    data.Set("forms_timezone", "America/New_York")

    client := &http.Client {
        CheckRedirect: func(req *http.Request, via []*http.Request) error {
        return http.ErrUseLastResponse
        },
    }
    req, err := http.NewRequest("POST", "https://api.shuuraku.com/v1/QRCode/Create", strings.NewReader(data.Encode()))
    if err != nil {
        fmt.Println(err)
    }
    req.Header.Add("Authorization", "Bearer abcdef1234567890")
    req.Header.Add("Content-Type", "application/x-www-form-urlencoded")     req.Header.Add("Content-Length", strconv.Itoa(len(data.Encode())))
    res, err := client.Do(req)
    defer res.Body.Close()
    body, err := ioutil.ReadAll(res.Body)

    fmt.Println(string(body))
}
import requests
url = 'https://api.shuuraku.com/v1/QRCode/Create'
payload = {
    'forms_colour': '#000000',
    'forms_data': 'https://www.shuuraku.com',
    'forms_data_type': 'url',
    'forms_font': '00000000-0000-4000-a000-000000000001',
    'forms_label': 'My QR Code',
    'forms_logo': 'iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAIAAACRXR/mAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAdnJLH8AAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAuIwAALiMBeKU/dgAAAAd0SU1FB+kHBhUVBTfmECYAAACZSURBVFjD7ZlBCsAgDARN6Vv1TfpZe/NQqCgxQens0R6yMJFNrNRaw366wpbCFrawha3TbN39zyJiVLifLkDUQ0wpvU5ijEvqlVK4ic43sSnnrCnTumJwvAOiBUSlZnsAiD/qreWZTVS7QVyV0ES1P0RlMI8McEDE1t57ovOjIRAt9kS7rR+Ix00Qg7EGxBkJP1ewhS1sfekB2MYlo2hBu20AAAAASUVORK5CYII=",     'forms_message': 'Scan to visit us',
    'forms_size': '36',
    'forms_time_ranges': '[{"start":"09:00","end":"17:00","data":"https://www.shuuraku.com/business"},{"start":"17:00","end":"09:00","data":"https://www.shuuraku.com/after-hours"}]',
    'forms_timezone': 'America/New_York'
}
headers = {
    'Authorization': 'Bearer abcdef1234567890'
}
response = requests.request('POST', url, headers = headers, data = payload, allow_redirects=False, timeout=undefined, allow_redirects=false)
print(response.text)
require "uri"
require "net/http"

url = URI("https://api.shuuraku.com/v1/QRCode/Create")

https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true

request = Net::HTTP::Post.new(url)
request.set_form_data({
    "forms_colour" => "#000000",
    "forms_data" => "https://www.shuuraku.com",
    "forms_data_type" => "url",
    "forms_font" => "00000000-0000-4000-a000-000000000001",
    "forms_label" => "My QR Code",
    "forms_logo" => "iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAIAAACRXR/mAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAdnJLH8AAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAuIwAALiMBeKU/dgAAAAd0SU1FB+kHBhUVBTfmECYAAACZSURBVFjD7ZlBCsAgDARN6Vv1TfpZe/NQqCgxQens0R6yMJFNrNRaw366wpbCFrawha3TbN39zyJiVLifLkDUQ0wpvU5ijEvqlVK4ic43sSnnrCnTumJwvAOiBUSlZnsAiD/qreWZTVS7QVyV0ES1P0RlMI8McEDE1t57ovOjIRAt9kS7rR+Ix00Qg7EGxBkJP1ewhS1sfekB2MYlo2hBu20AAAAASUVORK5CYII=",     "forms_message" => "Scan to visit us",
    "forms_size" => "36",
    "forms_time_ranges" => '[{"start":"09:00","end":"17:00","data":"https://www.shuuraku.com/business"},{"start":"17:00","end":"09:00","data":"https://www.shuuraku.com/after-hours"}]',
    "forms_timezone" => "America/New_York"
})
request["Authorization"] = "Bearer abcdef1234567890"

response = https.request(request)
puts response.read_body
{"result":{"id_marketing_item":"00000000-0000-4000-a000-000000000002","url":"https://www.shuuraku.com/qrcode/abcdefg1234567890"}}
Create A Signature
Create a custom email signature that can include company logos, social media links, and personalized employee information. Signatures can be customized with colors, fonts, and various styling options.
Arguments
forms_colour
required
string
A hex value starting with a "#" character for the signature color
forms_employee_list
optional
array
An array representing employee information to include in the signature. Each entry should include signature_employee_identifier (unique employee ID), signature_data_1 (i.e. name), signature_data_2 (i.e. title), and signature_data_3 (i.e. email/phone). Example: [{"signature_employee_identifier":"12345","signature_data_1":"John Smith","signature_data_2":"john.smith@company.com","signature_data_3":"+1-555-123-4567"},{"signature_employee_identifier":"67890","signature_data_1":"Sarah Johnson","signature_data_2":"sarah.johnson@company.com","signature_data_3":"+1-555-987-6543"}]. This parameter can only be used if you are on an "Enterprise" plan.
forms_font
required
uuid
A uuid associated with a font. Valid values can be found in the fonts section.
forms_label
required
string
A label to identify this marketing item
forms_link
required
string
A string representing a link. Clicking the signature will redirect to this link.
forms_logo
optional
string
A base64 encoded image (no more than 150x150 pixels) to include in the signature.
forms_message
optional
string
A string shown in the signature, which can include company information or taglines. This parameter can only be used if you are on a "Basic", "Mid", or "Enterprise" plan.
forms_social_list
optional
array
An array representing social media links in a 3-column by 5-row grid layout (positions 1-15). Each entry should include columnLength (how many grid spaces the link occupies), displayText (text to display), icon (social media icon identifier), link (URL), and position (grid position 1-15). Valid icon values can be found in the icons section. Example: [{"columnLength":1,"displayText":"Follow us","icon":"00000000-0000-4000-a000-000000000001","link":"https://facebook.com/company","position":1},{"columnLength":2,"displayText":"Tweet us","icon":"00000000-0000-4000-a000-000000000002","link":"https://twitter.com/company","position":2}]. This parameter can only be used if you are on a "Mid" or "Enterprise" plan.
forms_style
required
integer
A number value used to set the signature style/layout
Returns
Returns an object that includes the Marketing Item Number and URL.
POST https://api.shuuraku.com/v1/Signature/Create
curl -X POST \
-H "Authorization: Bearer abcdef1234567890" \
-d forms_colour=#000000 \
-d forms_employee_list='[{"signature_employee_identifier":"12345","signature_data_1":"John Smith","signature_data_2":"john.smith@company.com","signature_data_3":"+1-555-123-4567"},{"signature_employee_identifier":"67890","signature_data_1":"Sarah Johnson","signature_data_2":"sarah.johnson@company.com","signature_data_3":"+1-555-987-6543"}]' \
-d forms_font="00000000-0000-4000-a000-000000000001" \
-d forms_label="Company Signature" \
-d forms_link="https://www.shuuraku.com" \
-d forms_logo="iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAIAAACRXR/mAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAdnJLH8AAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAuIwAALiMBeKU/dgAAAAd0SU1FB+kHBhUVBTfmECYAAACZSURBVFjD7ZlBCsAgDARN6Vv1TfpZe/NQqCgxQens0R6yMJFNrNRaw366wpbCFrawha3TbN39zyJiVLifLkDUQ0wpvU5ijEvqlVK4ic43sSnnrCnTumJwvAOiBUSlZnsAiD/qreWZTVS7QVyV0ES1P0RlMI8McEDE1t57ovOjIRAt9kS7rR+Ix00Qg7EGxBkJP1ewhS1sfekB2MYlo2hBu20AAAAASUVORK5CYII=" \
-d forms_message="Building amazing digital experiences" \
-d forms_social_list='[{"columnLength":1,"displayText":"Follow us","icon":"a7b4a403-1286-4fd3-9818-76189cba204c","link":"https://facebook.com/company","position":1},{"columnLength":1,"displayText":"Tweet us","icon":"bc4d2192-71e3-41d1-b9e9-966d7a4873fe","link":"https://twitter.com/company","position":2}]' \
-d forms_style=1 \
https://api.shuuraku.com/v1/Signature/Create
$.ajax({
    url: "https://api.shuuraku.com/v1/Signature/Create",
    type: "POST",
    beforeSend: function(xhr) {
        xhr.setRequestHeader("Authorization", "Bearer abcdef1234567890");
    },
    data: {
        forms_colour: "#000000",
        forms_employee_list: '[{"signature_employee_identifier":"12345","signature_data_1":"John Smith","signature_data_2":"john.smith@company.com","signature_data_3":"+1-555-123-4567"},{"signature_employee_identifier":"67890","signature_data_1":"Sarah Johnson","signature_data_2":"sarah.johnson@company.com","signature_data_3":"+1-555-987-6543"}]',
        forms_font: "00000000-0000-4000-a000-000000000001",
        forms_label: "Company Signature",
        forms_link: "https://www.shuuraku.com",
        forms_logo: "iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAIAAACRXR/mAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAdnJLH8AAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAuIwAALiMBeKU/dgAAAAd0SU1FB+kHBhUVBTfmECYAAACZSURBVFjD7ZlBCsAgDARN6Vv1TfpZe/NQqCgxQens0R6yMJFNrNRaw366wpbCFrawha3TbN39zyJiVLifLkDUQ0wpvU5ijEvqlVK4ic43sSnnrCnTumJwvAOiBUSlZnsAiD/qreWZTVS7QVyV0ES1P0RlMI8McEDE1t57ovOjIRAt9kS7rR+Ix00Qg7EGxBkJP1ewhS1sfekB2MYlo2hBu20AAAAASUVORK5CYII=",         forms_message: "Building amazing digital experiences",
        forms_social_list: '[{"columnLength":1,"displayText":"Follow us","icon":"a7b4a403-1286-4fd3-9818-76189cba204c","link":"https://facebook.com/company","position":1},{"columnLength":1,"displayText":"Tweet us","icon":"bc4d2192-71e3-41d1-b9e9-966d7a4873fe","link":"https://twitter.com/company","position":2}]',
        forms_style: "1"
    },
    success: function(data) { alert("success"); },
    error: function(data) { alert("error"); }
});
<?php

$curl = curl_init();
$data = array(
    'forms_colour' => '#000000',
    'forms_employee_list' => '[{"signature_employee_identifier":"12345","signature_data_1":"John Smith","signature_data_2":"john.smith@company.com","signature_data_3":"+1-555-123-4567"},{"signature_employee_identifier":"67890","signature_data_1":"Sarah Johnson","signature_data_2":"sarah.johnson@company.com","signature_data_3":"+1-555-987-6543"}]',
    'forms_font' => '00000000-0000-4000-a000-000000000001',
    'forms_label' => 'Company Signature',
    'forms_link' => 'https://www.shuuraku.com',
    'forms_logo' => 'iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAIAAACRXR/mAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAdnJLH8AAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAuIwAALiMBeKU/dgAAAAd0SU1FB+kHBhUVBTfmECYAAACZSURBVFjD7ZlBCsAgDARN6Vv1TfpZe/NQqCgxQens0R6yMJFNrNRaw366wpbCFrawha3TbN39zyJiVLifLkDUQ0wpvU5ijEvqlVK4ic43sSnnrCnTumJwvAOiBUSlZnsAiD/qreWZTVS7QVyV0ES1P0RlMI8McEDE1t57ovOjIRAt9kS7rR+Ix00Qg7EGxBkJP1ewhS1sfekB2MYlo2hBu20AAAAASUVORK5CYII=",     'forms_message' => 'Building amazing digital experiences',
    'forms_social_list' => '[{"columnLength":1,"displayText":"Follow us","icon":"a7b4a403-1286-4fd3-9818-76189cba204c","link":"https://facebook.com/company","position":1},{"columnLength":1,"displayText":"Tweet us","icon":"bc4d2192-71e3-41d1-b9e9-966d7a4873fe","link":"https://twitter.com/company","position":2}]',
    'forms_style' => '1'
);

curl_setopt_array($curl, array(
    CURLOPT_URL => 'https://api.shuuraku.com/v1/Signature/Create',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 0,
    CURLOPT_FOLLOWLOCATION => false,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_POST => count($data),
    CURLOPT_POSTFIELDS => http_build_query($data),
    CURLOPT_HTTPHEADER => array(
        'Authorization: Bearer abcdef1234567890'
    )
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo 'cURL error #:' . $err;
} else {
    echo $response;
}

?>
package main

import (
    "fmt"
    "os"
    "path/filepath"
    "net/http"
    "io/ioutil"
)

func main() {
    data := url.Values{}
    data.Set("forms_colour", "#000000")
    data.Set("forms_employee_list", `[{"signature_employee_identifier":"12345","signature_data_1":"John Smith","signature_data_2":"john.smith@company.com","signature_data_3":"+1-555-123-4567"},{"signature_employee_identifier":"67890","signature_data_1":"Sarah Johnson","signature_data_2":"sarah.johnson@company.com","signature_data_3":"+1-555-987-6543"}]`)
    data.Set("forms_font", "00000000-0000-4000-a000-000000000001")
    data.Set("forms_label", "Company Signature")
    data.Set("forms_link", "https://www.shuuraku.com")
    data.Set("forms_logo", "iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAIAAACRXR/mAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAdnJLH8AAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAuIwAALiMBeKU/dgAAAAd0SU1FB+kHBhUVBTfmECYAAACZSURBVFjD7ZlBCsAgDARN6Vv1TfpZe/NQqCgxQens0R6yMJFNrNRaw366wpbCFrawha3TbN39zyJiVLifLkDUQ0wpvU5ijEvqlVK4ic43sSnnrCnTumJwvAOiBUSlZnsAiD/qreWZTVS7QVyV0ES1P0RlMI8McEDE1t57ovOjIRAt9kS7rR+Ix00Qg7EGxBkJP1ewhS1sfekB2MYlo2hBu20AAAAASUVORK5CYII=")
    data.Set("forms_message", "Building amazing digital experiences")
    data.Set("forms_social_list", `[{"columnLength":1,"displayText":"Follow us","icon":"a7b4a403-1286-4fd3-9818-76189cba204c","link":"https://facebook.com/company","position":1},{"columnLength":1,"displayText":"Tweet us","icon":"bc4d2192-71e3-41d1-b9e9-966d7a4873fe","link":"https://twitter.com/company","position":2}]`)
    data.Set("forms_style", "1")

    client := &http.Client {
        CheckRedirect: func(req *http.Request, via []*http.Request) error {
        return http.ErrUseLastResponse
        },
    }
    req, err := http.NewRequest("POST", "https://api.shuuraku.com/v1/Signature/Create", strings.NewReader(data.Encode()))
    if err != nil {
        fmt.Println(err)
    }
    req.Header.Add("Authorization", "Bearer abcdef1234567890")
    req.Header.Add("Content-Type", "application/x-www-form-urlencoded")     req.Header.Add("Content-Length", strconv.Itoa(len(data.Encode())))
    res, err := client.Do(req)
    defer res.Body.Close()
    body, err := ioutil.ReadAll(res.Body)

    fmt.Println(string(body))
}
import requests
url = 'https://api.shuuraku.com/v1/Signature/Create'
payload = {
    'forms_colour': '#000000',
    'forms_employee_list': '[{"signature_employee_identifier":"12345","signature_data_1":"John Smith","signature_data_2":"john.smith@company.com","signature_data_3":"+1-555-123-4567"},{"signature_employee_identifier":"67890","signature_data_1":"Sarah Johnson","signature_data_2":"sarah.johnson@company.com","signature_data_3":"+1-555-987-6543"}]',
    'forms_font': '00000000-0000-4000-a000-000000000001',
    'forms_label': 'Company Signature',
    'forms_link': 'https://www.shuuraku.com',
    'forms_logo': 'iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAIAAACRXR/mAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAdnJLH8AAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAuIwAALiMBeKU/dgAAAAd0SU1FB+kHBhUVBTfmECYAAACZSURBVFjD7ZlBCsAgDARN6Vv1TfpZe/NQqCgxQens0R6yMJFNrNRaw366wpbCFrawha3TbN39zyJiVLifLkDUQ0wpvU5ijEvqlVK4ic43sSnnrCnTumJwvAOiBUSlZnsAiD/qreWZTVS7QVyV0ES1P0RlMI8McEDE1t57ovOjIRAt9kS7rR+Ix00Qg7EGxBkJP1ewhS1sfekB2MYlo2hBu20AAAAASUVORK5CYII=",     'forms_message': 'Building amazing digital experiences',
    'forms_social_list': '[{"columnLength":1,"displayText":"Follow us","icon":"a7b4a403-1286-4fd3-9818-76189cba204c","link":"https://facebook.com/company","position":1},{"columnLength":1,"displayText":"Tweet us","icon":"bc4d2192-71e3-41d1-b9e9-966d7a4873fe","link":"https://twitter.com/company","position":2}]',
    'forms_style': '1'
}
headers = {
    'Authorization': 'Bearer abcdef1234567890'
}
response = requests.request('POST', url, headers = headers, data = payload, allow_redirects=False, timeout=undefined, allow_redirects=false)
print(response.text)
require "uri"
require "net/http"

url = URI("https://api.shuuraku.com/v1/Signature/Create")

https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true

request = Net::HTTP::Post.new(url)
request.set_form_data({
    "forms_colour" => "#000000",
    "forms_employee_list" => '[{"signature_employee_identifier":"12345","signature_data_1":"John Smith","signature_data_2":"john.smith@company.com","signature_data_3":"+1-555-123-4567"},{"signature_employee_identifier":"67890","signature_data_1":"Sarah Johnson","signature_data_2":"sarah.johnson@company.com","signature_data_3":"+1-555-987-6543"}]',
    "forms_font" => "00000000-0000-4000-a000-000000000001",
    "forms_label" => "Company Signature",
    "forms_link" => "https://www.shuuraku.com",
    "forms_logo" => "iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAIAAACRXR/mAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAdnJLH8AAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAuIwAALiMBeKU/dgAAAAd0SU1FB+kHBhUVBTfmECYAAACZSURBVFjD7ZlBCsAgDARN6Vv1TfpZe/NQqCgxQens0R6yMJFNrNRaw366wpbCFrawha3TbN39zyJiVLifLkDUQ0wpvU5ijEvqlVK4ic43sSnnrCnTumJwvAOiBUSlZnsAiD/qreWZTVS7QVyV0ES1P0RlMI8McEDE1t57ovOjIRAt9kS7rR+Ix00Qg7EGxBkJP1ewhS1sfekB2MYlo2hBu20AAAAASUVORK5CYII=",     "forms_message" => "Building amazing digital experiences",
    "forms_social_list" => '[{"columnLength":1,"displayText":"Follow us","icon":"a7b4a403-1286-4fd3-9818-76189cba204c","link":"https://facebook.com/company","position":1},{"columnLength":1,"displayText":"Tweet us","icon":"bc4d2192-71e3-41d1-b9e9-966d7a4873fe","link":"https://twitter.com/company","position":2}]',
    "forms_style" => "1"
})
request["Authorization"] = "Bearer abcdef1234567890"

response = https.request(request)
puts response.read_body
{"result":{"id_marketing_item":"00000000-0000-4000-a000-000000000003","url":"https://www.shuuraku.com/signature/abcdefg1234567890"}}
Retrieve a list of all Marketing Items
Retrieve a list of all Marketing Items in summary format, which includes when the Marketing Item was created, how much the Marketing Item cost, and what the Marketing Item Number is.
Returns
Return an array of Marketing Item objects for a customer account. Each object in the array is a separate Marketing Item.
GET https://api.shuuraku.com/v1/MarketingItems
curl -X GET \
-H "Authorization: Bearer abcdef1234567890" \
https://api.shuuraku.com/v1/MarketingItems
$.ajax({
    url: "https://api.shuuraku.com/v1/MarketingItems",
    type: "GET",
    beforeSend: function(xhr) {
        xhr.setRequestHeader("Authorization", "Bearer abcdef1234567890");
    },
    data: { },
    success: function(data) { alert("success"); },
    error: function(data) { alert("error"); }
});
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => 'https://api.shuuraku.com/v1/MarketingItems',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 0,
    CURLOPT_FOLLOWLOCATION => false,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'GET',
    CURLOPT_HTTPHEADER => array(
        'Authorization: Bearer abcdef1234567890'
    )
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo 'cURL error #:' . $err;
} else {
    echo $response;
}

?>
package main

import (
    "fmt"
    "os"
    "path/filepath"
    "net/http"
    "io/ioutil"
)

func main() {
    url := "https://api.shuuraku.com/v1/MarketingItems"
    method := "GET"

    client := &http.Client {
        CheckRedirect: func(req *http.Request, via []*http.Request) error {
        return http.ErrUseLastResponse
        },
    }
    req, err := http.NewRequest(method, url, nil)
    if err != nil {
        fmt.Println(err)
    }
    req.Header.Add("Authorization", "Bearer abcdef1234567890")

    res, err := client.Do(req)
    defer res.Body.Close()
    body, err := ioutil.ReadAll(res.Body)

    fmt.Println(string(body))
}
import requests
url = 'https://api.shuuraku.com/v1/MarketingItems'
payload = {}
headers = {
    'Authorization': 'Bearer abcdef1234567890'
}
response = requests.request('GET', url, headers = headers, data = payload, allow_redirects=False, timeout=undefined, allow_redirects=false)
print(response.text)
require "uri"
require "net/http"

url = URI("https://api.shuuraku.com/v1/MarketingItems")

https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = "Bearer abcdef1234567890"

response = https.request(request)
puts response.read_body
{"result":[{"id_marketing_item":"00000000-0000-4000-a000-000000000000","date_created":"2025-09-18 11:24:53","marketing_item_type":"Countdown","url":"https://www.shuuraku.com/countdown/abcdefg1234567890a"},{"id_marketing_item":"00000000-0000-4000-a000-000000000001","date_created":"2025-09-18 11:24:53","marketing_item_type":"Countdown","url":"https://www.shuuraku.com/countdown/abcdefg1234567890b"},{"id_marketing_item":"00000000-0000-4000-a000-000000000002","date_created":"2025-09-18 11:24:53","marketing_item_type":"Countdown","url":"https://www.shuuraku.com/countdown/abcdefg1234567890c"}]}
Get Marketing Item Details
Get additional Marketing Item information for an Marketing Item Number including customizations made when the Marketing Item was created.
Arguments
{MARKETING_ITEM_ID}
required
integer
A number representing the Marketing Item you want to get details for.
Returns
Marketing item details are returned in objects which includes core Marketing Item values and "options" includes customizations for the Marketing Item.
GET https://api.shuuraku.com/v1/MarketingItems/{MARKETING_ITEM_ID}
curl -X GET \
-H "Authorization: Bearer abcdef1234567890" \
https://api.shuuraku.com/v1/MarketingItems/00000000-0000-4000-a000-000000000001
$.ajax({
    url: "https://api.shuuraku.com/v1/MarketingItems/00000000-0000-4000-a000-000000000001",
    type: "GET",
    beforeSend: function(xhr) {
        xhr.setRequestHeader("Authorization", "Bearer abcdef1234567890");
    },
    data: { },
    success: function(data) { alert("success"); },
    error: function(data) { alert("error"); }
});
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => 'https://api.shuuraku.com/v1/MarketingItems/00000000-0000-4000-a000-000000000001',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 0,
    CURLOPT_FOLLOWLOCATION => false,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'GET',
    CURLOPT_HTTPHEADER => array(
        'Authorization: Bearer abcdef1234567890'
    )
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo 'cURL error #:' . $err;
} else {
    echo $response;
}

?>
package main

import (
    "fmt"
    "os"
    "path/filepath"
    "net/http"
    "io/ioutil"
)

func main() {
    url := "https://api.shuuraku.com/v1/MarketingItems/00000000-0000-4000-a000-000000000001"
    method := "GET"

    client := &http.Client {
        CheckRedirect: func(req *http.Request, via []*http.Request) error {
        return http.ErrUseLastResponse
        },
    }
    req, err := http.NewRequest(method, url, nil)
    if err != nil {
        fmt.Println(err)
    }
    req.Header.Add("Authorization", "Bearer abcdef1234567890")

    res, err := client.Do(req)
    defer res.Body.Close()
    body, err := ioutil.ReadAll(res.Body)

    fmt.Println(string(body))
}
import requests
url = 'https://api.shuuraku.com/v1/MarketingItems/00000000-0000-4000-a000-000000000001'
payload = {}
headers = {
    'Authorization': 'Bearer abcdef1234567890'
}
response = requests.request('GET', url, headers = headers, data = payload, allow_redirects=False, timeout=undefined, allow_redirects=false)
print(response.text)
require "uri"
require "net/http"

url = URI("https://api.shuuraku.com/v1/MarketingItems/00000000-0000-4000-a000-000000000001")

https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = "Bearer abcdef1234567890"

response = https.request(request)
puts response.read_body
{"result":{"id_marketing_item":"00000000-0000-4000-a000-000000000001","date_created":"2025-09-18 11:24:53","marketing_item_type":"Countdown","options":{"colour":"#ff0000","date_time":"2025-09-18 11:24:53","expired_message":"Countdown complete","font":"1","link":"https://www.shuuraku.com","message":"Countdown to my event","show_labels":"1","size":"48","timezone":"America\/New_York"},"url":"https://www.shuuraku.com/countdown/abcdefg1234567890"}}
Retrieve a list of all payments
Retrieve a list of all payments in summary format, which includes when the payment was created, the payment amount, and what the Payment ID is.
Returns
Return an array of payment objects for a customer account. Each object in the array is a separate payment.
GET https://api.shuuraku.com/v1/Payments
curl -X GET \
-H "Authorization: Bearer abcdef1234567890" \
https://api.shuuraku.com/v1/Payments
$.ajax({
    url: "https://api.shuuraku.com/v1/Payments",
    type: "GET",
    beforeSend: function(xhr) {
        xhr.setRequestHeader("Authorization", "Bearer abcdef1234567890");
    },
    data: { },
    success: function(data) { alert("success"); },
    error: function(data) { alert("error"); }
});
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => 'https://api.shuuraku.com/v1/Payments',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 0,
    CURLOPT_FOLLOWLOCATION => false,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'GET',
    CURLOPT_HTTPHEADER => array(
        'Authorization: Bearer abcdef1234567890'
    )
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo 'cURL error #:' . $err;
} else {
    echo $response;
}

?>
package main

import (
    "fmt"
    "os"
    "path/filepath"
    "net/http"
    "io/ioutil"
)

func main() {
    url := "https://api.shuuraku.com/v1/Payments"
    method := "GET"

    client := &http.Client {
        CheckRedirect: func(req *http.Request, via []*http.Request) error {
        return http.ErrUseLastResponse
        },
    }
    req, err := http.NewRequest(method, url, nil)
    if err != nil {
        fmt.Println(err)
    }
    req.Header.Add("Authorization", "Bearer abcdef1234567890")

    res, err := client.Do(req)
    defer res.Body.Close()
    body, err := ioutil.ReadAll(res.Body)

    fmt.Println(string(body))
}
import requests
url = 'https://api.shuuraku.com/v1/Payments'
payload = {}
headers = {
    'Authorization': 'Bearer abcdef1234567890'
}
response = requests.request('GET', url, headers = headers, data = payload, allow_redirects=False, timeout=undefined, allow_redirects=false)
print(response.text)
require "uri"
require "net/http"

url = URI("https://api.shuuraku.com/v1/Payments")

https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = "Bearer abcdef1234567890"

response = https.request(request)
puts response.read_body
{"result":[{"id_payment":"00000000-0000-4000-a000-000000000000","date_created":"2025-09-18 11:24:53","payment_total":"79.99"},{"id_payment":"00000000-0000-4000-a000-000000000001","date_created":"2025-09-18 11:24:53","payment_total":"79.99"}]}
Get Payment Details
Get additional payment information for a Payment ID including billing address, masked card details, and the plan that was paid for.
Arguments
{PAYMENT_ID}
required
integer
A number representing the Marketing Item you want to get details for.
Returns
Payment details are returned as an object.
GET https://api.shuuraku.com/v1/Payments/{PAYMENT_ID}
curl -X GET \
-H "Authorization: Bearer abcdef1234567890" \
https://api.shuuraku.com/v1/Payments/00000000-0000-4000-a000-000000000001
$.ajax({
    url: "https://api.shuuraku.com/v1/Payments/00000000-0000-4000-a000-000000000001",
    type: "GET",
    beforeSend: function(xhr) {
        xhr.setRequestHeader("Authorization", "Bearer abcdef1234567890");
    },
    data: { },
    success: function(data) { alert("success"); },
    error: function(data) { alert("error"); }
});
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => 'https://api.shuuraku.com/v1/Payments/00000000-0000-4000-a000-000000000001',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 0,
    CURLOPT_FOLLOWLOCATION => false,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'GET',
    CURLOPT_HTTPHEADER => array(
        'Authorization: Bearer abcdef1234567890'
    )
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo 'cURL error #:' . $err;
} else {
    echo $response;
}

?>
package main

import (
    "fmt"
    "os"
    "path/filepath"
    "net/http"
    "io/ioutil"
)

func main() {
    url := "https://api.shuuraku.com/v1/Payments/00000000-0000-4000-a000-000000000001"
    method := "GET"

    client := &http.Client {
        CheckRedirect: func(req *http.Request, via []*http.Request) error {
        return http.ErrUseLastResponse
        },
    }
    req, err := http.NewRequest(method, url, nil)
    if err != nil {
        fmt.Println(err)
    }
    req.Header.Add("Authorization", "Bearer abcdef1234567890")

    res, err := client.Do(req)
    defer res.Body.Close()
    body, err := ioutil.ReadAll(res.Body)

    fmt.Println(string(body))
}
import requests
url = 'https://api.shuuraku.com/v1/Payments/00000000-0000-4000-a000-000000000001'
payload = {}
headers = {
    'Authorization': 'Bearer abcdef1234567890'
}
response = requests.request('GET', url, headers = headers, data = payload, allow_redirects=False, timeout=undefined, allow_redirects=false)
print(response.text)
require "uri"
require "net/http"

url = URI("https://api.shuuraku.com/v1/Payments/00000000-0000-4000-a000-000000000001")

https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = "Bearer abcdef1234567890"

response = https.request(request)
puts response.read_body
{"result":{"id_payment":"00000000-0000-4000-a000-000000000001","date_created":"2025-09-18 11:24:53","billing_first_name":"Paxton","billing_last_name":"Smith","billing_address_1":"12 Avenue Avenue","billing_address_2":"Suite 200","billing_country":"CA","billing_province_state":"ON","billing_city":"Toronto","billing_zip_postal_code":"A1B2C3","billing_phone":"4165551234","payment_total":"79.99","card_type":"Visa","card_masked_number":"**** 1111","plan":"Enterprise"}}
Get Plan Details
Arguments
Returns
Plan details, which include your current plan.
GET https://api.shuuraku.com/v1/Plan
curl -X GET \
-H "Authorization: Bearer abcdef1234567890" \
https://api.shuuraku.com/v1/Plan
$.ajax({
    url: "https://api.shuuraku.com/v1/Plan",
    type: "GET",
    beforeSend: function(xhr) {
        xhr.setRequestHeader("Authorization", "Bearer abcdef1234567890");
    },
    data: { },
    success: function(data) { alert("success"); },
    error: function(data) { alert("error"); }
});
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_URL => 'https://api.shuuraku.com/v1/Plan',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => '',
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 0,
    CURLOPT_FOLLOWLOCATION => false,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'GET',
    CURLOPT_HTTPHEADER => array(
        'Authorization: Bearer abcdef1234567890'
    )
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo 'cURL error #:' . $err;
} else {
    echo $response;
}

?>
package main

import (
    "fmt"
    "os"
    "path/filepath"
    "net/http"
    "io/ioutil"
)

func main() {
    url := "https://api.shuuraku.com/v1/Plan"
    method := "GET"

    client := &http.Client {
        CheckRedirect: func(req *http.Request, via []*http.Request) error {
        return http.ErrUseLastResponse
        },
    }
    req, err := http.NewRequest(method, url, nil)
    if err != nil {
        fmt.Println(err)
    }
    req.Header.Add("Authorization", "Bearer abcdef1234567890")

    res, err := client.Do(req)
    defer res.Body.Close()
    body, err := ioutil.ReadAll(res.Body)

    fmt.Println(string(body))
}
import requests
url = 'https://api.shuuraku.com/v1/Plan'
payload = {}
headers = {
    'Authorization': 'Bearer abcdef1234567890'
}
response = requests.request('GET', url, headers = headers, data = payload, allow_redirects=False, timeout=undefined, allow_redirects=false)
print(response.text)
require "uri"
require "net/http"

url = URI("https://api.shuuraku.com/v1/Plan")

https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = "Bearer abcdef1234567890"

response = https.request(request)
puts response.read_body
{"result":{"plan":"Free","plan_maximum_view_count":20000,"plan_maximum_view_count_exceeded":false,"current_view_count":0}}
Fonts
00000000-0000-4000-a000-000000000001: Anonymous Pro
00000000-0000-4000-a000-000000000002: Arial
00000000-0000-4000-a000-000000000003: Bitstream Vera Sans Mono
00000000-0000-4000-a000-000000000004: BPmono
00000000-0000-4000-a000-000000000005: Courier Prime
00000000-0000-4000-a000-000000000006: Cousine
00000000-0000-4000-a000-000000000007: Cutive Mono
00000000-0000-4000-a000-000000000008: DejaVu Sans Mono
00000000-0000-4000-a000-000000000009: Digital Dream
00000000-0000-4000-a000-000000000010: Erika Type
00000000-0000-4000-a000-000000000011: Fantasque Sans Mono
00000000-0000-4000-a000-000000000012: Fira Mono
00000000-0000-4000-a000-000000000013: Graph 35+ Pix
00000000-0000-4000-a000-000000000014: IBM Plex Mono
00000000-0000-4000-a000-000000000015: Inconsolata
00000000-0000-4000-a000-000000000016: Joystix Monospace
00000000-0000-4000-a000-000000000017: Larabiefont Rg
00000000-0000-4000-a000-000000000018: LCD
00000000-0000-4000-a000-000000000019: Lekton
00000000-0000-4000-a000-000000000020: Liberation Mono
00000000-0000-4000-a000-000000000021: Monofonto
00000000-0000-4000-a000-000000000022: Monoid
00000000-0000-4000-a000-000000000023: Monospace
00000000-0000-4000-a000-000000000024: Nanum Gothic Coding
00000000-0000-4000-a000-000000000025: Nimbus Mono
00000000-0000-4000-a000-000000000026: NinePin
00000000-0000-4000-a000-000000000027: NK57 Monospace Sc Rg
00000000-0000-4000-a000-000000000028: Noto Mono
00000000-0000-4000-a000-000000000029: Nova Mono
00000000-0000-4000-a000-000000000030: Overpass Mono
00000000-0000-4000-a000-000000000031: Oxygen Mono
00000000-0000-4000-a000-000000000032: PT Mono
00000000-0000-4000-a000-000000000033: Roboto Mono
00000000-0000-4000-a000-000000000034: Share Tech Mono
00000000-0000-4000-a000-000000000035: Source Code Pro
00000000-0000-4000-a000-000000000036: Space Mono
00000000-0000-4000-a000-000000000037: Ubuntu Mono
00000000-0000-4000-a000-000000000038: Unispace
00000000-0000-4000-a000-000000000039: White Rabbit
Icons
0419b765-b476-4e84-8889-3fc773963d58: Apple
9516b2dd-cc20-42b2-9416-18a18158b994: Behance
adf241c4-e9be-4111-894f-a946491349af: Blogger
74e81203-fe49-4a0e-82a1-7466b9a9758c: Deviantart
8e60adf3-1307-44dd-aae6-683d4402bfba: Dribbble
815f9f20-0f2a-47e5-879a-5780c0252fcd: Drive
03be36e5-d303-4923-be9c-9dcb55c6f78f: Dropbox
79d0be1f-e4a7-4734-8a64-a6e736ae1bf6: Email
edcb708a-0edd-454e-971d-d8c502980757: Envato
7ce0bbe2-9ba5-42c3-8b17-80013e803eab: Evernote
a7b4a403-1286-4fd3-9818-76189cba204c: Facebook
12b17d39-b1f9-4a29-bdd1-c9283f95f2cc: Flickr
d45a8e08-5a12-4cd6-8368-90317b113adb: Google
c73ca1db-b3ff-406c-9b13-8e17e7aca880: Instagram
5afddeef-b9b0-4503-9fe6-d2c3b873b141: LinkedIn
5186b374-66fa-4dc2-91d2-503c9a37e91b: Messenger
0e6d390d-025c-4437-83db-d24025eae526: Paypal
dea48c65-0985-47e9-b8d1-b86bf64fff59: Pinterest
a519e9f9-950c-40bd-97a2-87cb5a0c7809: RSS
d08fc181-67ba-4832-a030-07aa632892fd: Skype
8b043d33-da58-4de5-98fe-245a96d8df4c: Slack
704dc04f-e564-4705-b266-b1935c61edd3: Snapchat
bcb36fd7-9438-4b4b-96dc-b582a12afa98: Soundcloud
7f276856-8c96-4745-9b92-bc303c98faf4: Stripe
488306b3-5ef3-4307-bfa1-7e8b6bd6123b: Tumblr
bc4d2192-71e3-41d1-b9e9-966d7a4873fe: Twitter
85c94d53-ec27-4b2d-bae4-691aa5436d81: Viber
c6af8a3f-f359-49c8-bc85-4c8f6e92a2ed: Vimeo
e0cc3491-582b-43cf-9e91-f224c2e58215: Vine
2e74497d-8e3f-4388-9ed5-5d41c5636d50: Website
5a067810-503f-4b85-b072-c64a0a045af2: Whatsapp
10a5df9f-9204-4d08-a6df-2792d5cd9b14: Window
d2473bc9-63b6-42d4-93b6-afe1f4d08a2b: X
52064bb4-4eac-42ad-ae46-1da51abe1c17: Yahoo
6d409825-d369-431f-b9e8-99ee6431dc2a: Youtube
Fonts Sizes
36, 48, 72
Timezones
Pacific/Midway, America/Adak, Etc/GMT+10, Pacific/Marquesas, Pacific/Gambier, America/Anchorage, America/Ensenada, Etc/GMT+8, America/Los_Angeles, America/Denver, America/Chihuahua, America/Dawson_Creek, America/Belize, America/Cancun, Chile/EasterIsland, America/Chicago, America/New_York, America/Havana, America/Bogota, America/Caracas, America/Santiago, America/La_Paz, Atlantic/Stanley, America/Campo_Grande, America/Goose_Bay, America/Glace_Bay, America/St_Johns, America/Araguaina, America/Montevideo, America/Miquelon, America/Godthab, America/Argentina/Buenos_Aires, America/Sao_Paulo, America/Noronha, Atlantic/Cape_Verde, Atlantic/Azores, Europe/Belfast, Europe/Dublin, Europe/Lisbon, Europe/London, Africa/Abidjan, Europe/Amsterdam, Europe/Belgrade, Europe/Brussels, Africa/Algiers, Africa/Windhoek, Asia/Beirut, Africa/Cairo, Asia/Gaza, Africa/Blantyre, Asia/Jerusalem, Europe/Minsk, Asia/Damascus, Europe/Moscow, Africa/Addis_Ababa, Asia/Tehran, Asia/Dubai, Asia/Yerevan, Asia/Kabul, Asia/Yekaterinburg, Asia/Tashkent, Asia/Kolkata, Asia/Katmandu, Asia/Dhaka, Asia/Novosibirsk, Asia/Rangoon, Asia/Bangkok, Asia/Krasnoyarsk, Asia/Hong_Kong, Asia/Irkutsk, Australia/Perth, Australia/Eucla, Asia/Tokyo, Asia/Seoul, Asia/Yakutsk, Australia/Adelaide, Australia/Darwin, Australia/Brisbane, Australia/Hobart, Asia/Vladivostok, Australia/Lord_Howe, Etc/GMT-11, Asia/Magadan, Pacific/Norfolk, Asia/Anadyr, Pacific/Auckland, Etc/GMT-12, Pacific/Chatham, Pacific/Tongatapu, Pacific/Kiritimati