#!/bin/bash # client-credentials - Obtain an OAuth2 access token via the client_credentials grant # # Usage: # client-credentials [options] # client-credentials -h # # Options: # -e, --endpoint Endpoint type: am or slas (default: am) # -c, --client-id Client ID (overrides J_CLIENT_ID) # -s, --client-secret Client secret (overrides J_CLIENT_SECRET) # -S, --scopes Scopes (optional; overrides J_SCOPES) # -C, --shortcode Shortcode (required for slas; overrides J_SHORTCODE) # -o, --org-id Organization ID (required for slas; overrides J_ORG_ID) # -h, --help Show help message _client_credentials() ( local SCRIPT_NAME; SCRIPT_NAME="$(basename "${BASH_SOURCE[0]}")" case "${BASH_SOURCE[0]}" in /dev/*|/proc/*) SCRIPT_NAME="" ;; esac case "$SCRIPT_NAME" in ""|bash|sh|zsh|dash) SCRIPT_NAME="client-credentials" ;; esac _error() { echo "[ERR][$SCRIPT_NAME] $*" >&2; } _show_help() { local s; [ -t 1 ] && s=$'\033[4m' local r; [ -t 1 ] && r=$'\033[24m' cat <