curl --request GET \
--url https://api.slickerhq.com/ingest/v1/recovery_actions \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.slickerhq.com/ingest/v1/recovery_actions"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.slickerhq.com/ingest/v1/recovery_actions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.slickerhq.com/ingest/v1/recovery_actions",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.slickerhq.com/ingest/v1/recovery_actions"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.slickerhq.com/ingest/v1/recovery_actions")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.slickerhq.com/ingest/v1/recovery_actions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"recoveryActions": [
{
"requestId": "req_2uqkAo1bwllmzrgV2qtGv48DtGI",
"invoiceId": "inv_12345678",
"subscriptionId": "sub_12345678",
"transactionId": "txn_87654321",
"actionSuggestion": "ACTION_SUGGESTION_RETRY",
"idealRetryTime": "2023-01-18T09:30:00Z",
"createdAt": "2023-01-15T14:20:00Z"
},
{
"requestId": "req_3vrlBp2cwmmn0sH3qruHw59EuHJ",
"invoiceId": "inv_87654321",
"subscriptionId": "sub_87654321",
"transactionId": "txn_12345678",
"actionSuggestion": "ACTION_SUGGESTION_CARD_CHANGE",
"idealRetryTime": "2023-01-21T15:45:00Z",
"createdAt": "2023-01-20T10:30:00Z"
}
],
"nextPageToken": "123",
"totalSize": 150
}{
"code": 400,
"message": "Invalid request: must provide at least one filter parameter",
"details": []
}{
"code": 401,
"message": "Unauthorized: missing or invalid API key in Bearer token",
"details": []
}{
"code": 403,
"message": "Forbidden: insufficient permissions to list recovery actions",
"details": []
}{
"code": 404,
"message": "No recovery actions found for the specified criteria",
"details": []
}{
"code": 429,
"message": "Rate limit exceeded: try again later",
"details": []
}{
"code": 500,
"message": "Internal server error",
"details": []
}{
"code": 123,
"message": "<string>",
"details": [
{
"@type": "<string>"
}
]
}List recovery actions
curl --request GET \
--url https://api.slickerhq.com/ingest/v1/recovery_actions \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.slickerhq.com/ingest/v1/recovery_actions"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.slickerhq.com/ingest/v1/recovery_actions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.slickerhq.com/ingest/v1/recovery_actions",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.slickerhq.com/ingest/v1/recovery_actions"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.slickerhq.com/ingest/v1/recovery_actions")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.slickerhq.com/ingest/v1/recovery_actions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"recoveryActions": [
{
"requestId": "req_2uqkAo1bwllmzrgV2qtGv48DtGI",
"invoiceId": "inv_12345678",
"subscriptionId": "sub_12345678",
"transactionId": "txn_87654321",
"actionSuggestion": "ACTION_SUGGESTION_RETRY",
"idealRetryTime": "2023-01-18T09:30:00Z",
"createdAt": "2023-01-15T14:20:00Z"
},
{
"requestId": "req_3vrlBp2cwmmn0sH3qruHw59EuHJ",
"invoiceId": "inv_87654321",
"subscriptionId": "sub_87654321",
"transactionId": "txn_12345678",
"actionSuggestion": "ACTION_SUGGESTION_CARD_CHANGE",
"idealRetryTime": "2023-01-21T15:45:00Z",
"createdAt": "2023-01-20T10:30:00Z"
}
],
"nextPageToken": "123",
"totalSize": 150
}{
"code": 400,
"message": "Invalid request: must provide at least one filter parameter",
"details": []
}{
"code": 401,
"message": "Unauthorized: missing or invalid API key in Bearer token",
"details": []
}{
"code": 403,
"message": "Forbidden: insufficient permissions to list recovery actions",
"details": []
}{
"code": 404,
"message": "No recovery actions found for the specified criteria",
"details": []
}{
"code": 429,
"message": "Rate limit exceeded: try again later",
"details": []
}{
"code": 500,
"message": "Internal server error",
"details": []
}{
"code": 123,
"message": "<string>",
"details": [
{
"@type": "<string>"
}
]
}Authorizations
API key authentication using a Bearer token in the Authorization header.
Example: Authorization: Bearer YOUR_API_KEY
Query Parameters
Number of recovery actions to return per page (maximum 100)
1 <= x <= 100Token for retrieving the next page of results
Filter recovery actions by subscription identifier
Filter recovery actions by invoice identifier
Filter recovery actions by transaction identifier
Field to order the results by
RECOVERY_ACTION_ORDER_BY_CREATED_AT, RECOVERY_ACTION_ORDER_BY_IDEAL_RETRY_TIME Direction to order the results
RECOVERY_ACTION_ORDER_DIRECTION_ASC, RECOVERY_ACTION_ORDER_DIRECTION_DESC Response
A successful response with list of recovery actions.
Response containing a list of recommended recovery actions with pagination support
List of recovery actions recommended by Slicker's optimization algorithms
Show child attributes
Show child attributes
Token for retrieving the next page of results. Empty if no more results.
"123"
Total number of recovery actions available across all pages
150