Skip to main content
POST
/
custodians
/
me
/
alerts
/
retry-by-block-number
Replay alert by block number (deprecated)
curl --request POST \
  --url https://api.portalhq.io/api/v3/custodians/me/alerts/retry-by-block-number \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "chainReferenceId": "11155111",
  "blockNumber": 7313326,
  "streamId": "streamId"
}
'
import requests

url = "https://api.portalhq.io/api/v3/custodians/me/alerts/retry-by-block-number"

payload = {
"chainReferenceId": "11155111",
"blockNumber": 7313326,
"streamId": "streamId"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({chainReferenceId: '11155111', blockNumber: 7313326, streamId: 'streamId'})
};

fetch('https://api.portalhq.io/api/v3/custodians/me/alerts/retry-by-block-number', 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.portalhq.io/api/v3/custodians/me/alerts/retry-by-block-number",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'chainReferenceId' => '11155111',
'blockNumber' => 7313326,
'streamId' => 'streamId'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);

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

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"strings"
"net/http"
"io"
)

func main() {

url := "https://api.portalhq.io/api/v3/custodians/me/alerts/retry-by-block-number"

payload := strings.NewReader("{\n \"chainReferenceId\": \"11155111\",\n \"blockNumber\": 7313326,\n \"streamId\": \"streamId\"\n}")

req, _ := http.NewRequest("POST", url, payload)

req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.post("https://api.portalhq.io/api/v3/custodians/me/alerts/retry-by-block-number")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"chainReferenceId\": \"11155111\",\n \"blockNumber\": 7313326,\n \"streamId\": \"streamId\"\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.portalhq.io/api/v3/custodians/me/alerts/retry-by-block-number")

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

request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"chainReferenceId\": \"11155111\",\n \"blockNumber\": 7313326,\n \"streamId\": \"streamId\"\n}"

response = http.request(request)
puts response.read_body
{
  "error": "<string>"
}
{
"error": "<string>"
}

Authorizations

Authorization
string
header
required

Portal API Key (Custodian API Key). Pass as a Bearer token in the Authorization header.

Body

application/json
chainReferenceId
string
required

The EVM chain reference ID (e.g. "11155111" for Sepolia).

blockNumber
integer
required

The block number of the transaction(s) to resend.

streamId
string
required

The ID of the stream configured by Portal.

Response

Alert replayed successfully (no content)