Inteligencia de Plataforma API
Substack API
Substack alcanza millones de lectores y apoya más de 5 millones de suscripciones pagadas en boletines, ensayos, podcasts y videos, lo que lo convierte en una herramienta importante para el liderazgo de pensamiento, audiencias propias y ingresos directos al lector.
Referencia de API Versión: 1.0.0 10 Endpoints Autenticación
URL base
https://api.pressmonitor.com/substack/v1 Autenticación
Todas las solicitudes utilizan autenticación mediante token Bearer. Agrega el encabezado de Autorización a cada llamada.
Authorization: Bearer YOUR_TOKEN GET
/feed Alimentación
Feed
Parámetros
| Nombre | Tipo | Ubicación | Requerido | Descripción |
|---|---|---|---|---|
| cursor | integer | query | No | Cursor |
| tab | string | query | No | Pestaña |
Ejemplos de código
curl --request GET \ --url 'https://api.pressmonitor.com/substack/v1/feed?cursor=SOME_INTEGER_VALUE&tab=SOME_STRING_VALUE' const http = require("https"); const options = { "method": "GET", "hostname": "api.pressmonitor.com", "port": null, "path": "/substack/v1/feed?cursor=SOME_INTEGER_VALUE&tab=SOME_STRING_VALUE", "headers": {} }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.end(); import requests url = "https://api.pressmonitor.com/substack/v1/feed" querystring = {"cursor":"SOME_INTEGER_VALUE","tab":"SOME_STRING_VALUE"} response = requests.request("GET", url, params=querystring) print(response.text) <?php $curl = curl_init(); curl_setopt_array($curl, [ CURLOPT_URL => "https://api.pressmonitor.com/substack/v1/feed?cursor=SOME_INTEGER_VALUE&tab=SOME_STRING_VALUE", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "GET", ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://api.pressmonitor.com/substack/v1/feed?cursor=SOME_INTEGER_VALUE&tab=SOME_STRING_VALUE") .get() .build(); Response response = client.newCall(request).execute(); Respuestas
200 Éxito
GET
/profile-activity Actividad del Perfil
Profile Activity
Parámetros
| Nombre | Tipo | Ubicación | Requerido | Descripción |
|---|---|---|---|---|
| profile_id | string | query | Sí | ID de Perfil |
Ejemplos de código
curl --request GET \ --url 'https://api.pressmonitor.com/substack/v1/profile-activity?profile_id=SOME_STRING_VALUE' const http = require("https"); const options = { "method": "GET", "hostname": "api.pressmonitor.com", "port": null, "path": "/substack/v1/profile-activity?profile_id=SOME_STRING_VALUE", "headers": {} }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.end(); import requests url = "https://api.pressmonitor.com/substack/v1/profile-activity" querystring = {"profile_id":"SOME_STRING_VALUE"} response = requests.request("GET", url, params=querystring) print(response.text) <?php $curl = curl_init(); curl_setopt_array($curl, [ CURLOPT_URL => "https://api.pressmonitor.com/substack/v1/profile-activity?profile_id=SOME_STRING_VALUE", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "GET", ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://api.pressmonitor.com/substack/v1/profile-activity?profile_id=SOME_STRING_VALUE") .get() .build(); Response response = client.newCall(request).execute(); Respuestas
200 Éxito
GET
/profile-posts Publicaciones del Perfil
Profile Posts
Parámetros
| Nombre | Tipo | Ubicación | Requerido | Descripción |
|---|---|---|---|---|
| profile_id | string | query | Sí | ID de Perfil |
Ejemplos de código
curl --request GET \ --url 'https://api.pressmonitor.com/substack/v1/profile-posts?profile_id=SOME_STRING_VALUE' const http = require("https"); const options = { "method": "GET", "hostname": "api.pressmonitor.com", "port": null, "path": "/substack/v1/profile-posts?profile_id=SOME_STRING_VALUE", "headers": {} }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.end(); import requests url = "https://api.pressmonitor.com/substack/v1/profile-posts" querystring = {"profile_id":"SOME_STRING_VALUE"} response = requests.request("GET", url, params=querystring) print(response.text) <?php $curl = curl_init(); curl_setopt_array($curl, [ CURLOPT_URL => "https://api.pressmonitor.com/substack/v1/profile-posts?profile_id=SOME_STRING_VALUE", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "GET", ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://api.pressmonitor.com/substack/v1/profile-posts?profile_id=SOME_STRING_VALUE") .get() .build(); Response response = client.newCall(request).execute(); Respuestas
200 Éxito
GET
/profile-public Perfil Público
Profile Public
Parámetros
| Nombre | Tipo | Ubicación | Requerido | Descripción |
|---|---|---|---|---|
| handle | string | query | Sí | Alias |
Ejemplos de código
curl --request GET \ --url 'https://api.pressmonitor.com/substack/v1/profile-public?handle=SOME_STRING_VALUE' const http = require("https"); const options = { "method": "GET", "hostname": "api.pressmonitor.com", "port": null, "path": "/substack/v1/profile-public?handle=SOME_STRING_VALUE", "headers": {} }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.end(); import requests url = "https://api.pressmonitor.com/substack/v1/profile-public" querystring = {"handle":"SOME_STRING_VALUE"} response = requests.request("GET", url, params=querystring) print(response.text) <?php $curl = curl_init(); curl_setopt_array($curl, [ CURLOPT_URL => "https://api.pressmonitor.com/substack/v1/profile-public?handle=SOME_STRING_VALUE", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "GET", ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://api.pressmonitor.com/substack/v1/profile-public?handle=SOME_STRING_VALUE") .get() .build(); Response response = client.newCall(request).execute(); Respuestas
200 Éxito
GET
/reader-comment Comentario de Lector
Reader Comment
Parámetros
| Nombre | Tipo | Ubicación | Requerido | Descripción |
|---|---|---|---|---|
| comment_id | string | query | Sí | ID de Comentario |
Ejemplos de código
curl --request GET \ --url 'https://api.pressmonitor.com/substack/v1/reader-comment?comment_id=SOME_STRING_VALUE' const http = require("https"); const options = { "method": "GET", "hostname": "api.pressmonitor.com", "port": null, "path": "/substack/v1/reader-comment?comment_id=SOME_STRING_VALUE", "headers": {} }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.end(); import requests url = "https://api.pressmonitor.com/substack/v1/reader-comment" querystring = {"comment_id":"SOME_STRING_VALUE"} response = requests.request("GET", url, params=querystring) print(response.text) <?php $curl = curl_init(); curl_setopt_array($curl, [ CURLOPT_URL => "https://api.pressmonitor.com/substack/v1/reader-comment?comment_id=SOME_STRING_VALUE", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "GET", ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://api.pressmonitor.com/substack/v1/reader-comment?comment_id=SOME_STRING_VALUE") .get() .build(); Response response = client.newCall(request).execute(); Respuestas
200 Éxito
GET
/reader-comment-replies Respuestas a Comentarios de Lectores
Reader Comment Replies
Parámetros
| Nombre | Tipo | Ubicación | Requerido | Descripción |
|---|---|---|---|---|
| comment_id | string | query | Sí | ID de Comentario |
Ejemplos de código
curl --request GET \ --url 'https://api.pressmonitor.com/substack/v1/reader-comment-replies?comment_id=SOME_STRING_VALUE' const http = require("https"); const options = { "method": "GET", "hostname": "api.pressmonitor.com", "port": null, "path": "/substack/v1/reader-comment-replies?comment_id=SOME_STRING_VALUE", "headers": {} }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.end(); import requests url = "https://api.pressmonitor.com/substack/v1/reader-comment-replies" querystring = {"comment_id":"SOME_STRING_VALUE"} response = requests.request("GET", url, params=querystring) print(response.text) <?php $curl = curl_init(); curl_setopt_array($curl, [ CURLOPT_URL => "https://api.pressmonitor.com/substack/v1/reader-comment-replies?comment_id=SOME_STRING_VALUE", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "GET", ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://api.pressmonitor.com/substack/v1/reader-comment-replies?comment_id=SOME_STRING_VALUE") .get() .build(); Response response = client.newCall(request).execute(); Respuestas
200 Éxito
GET
/reader-post Publicación de Lector
Reader Post
Parámetros
| Nombre | Tipo | Ubicación | Requerido | Descripción |
|---|---|---|---|---|
| post_id | string | query | Sí | ID de Publicación |
Ejemplos de código
curl --request GET \ --url 'https://api.pressmonitor.com/substack/v1/reader-post?post_id=SOME_STRING_VALUE' const http = require("https"); const options = { "method": "GET", "hostname": "api.pressmonitor.com", "port": null, "path": "/substack/v1/reader-post?post_id=SOME_STRING_VALUE", "headers": {} }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.end(); import requests url = "https://api.pressmonitor.com/substack/v1/reader-post" querystring = {"post_id":"SOME_STRING_VALUE"} response = requests.request("GET", url, params=querystring) print(response.text) <?php $curl = curl_init(); curl_setopt_array($curl, [ CURLOPT_URL => "https://api.pressmonitor.com/substack/v1/reader-post?post_id=SOME_STRING_VALUE", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "GET", ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://api.pressmonitor.com/substack/v1/reader-post?post_id=SOME_STRING_VALUE") .get() .build(); Response response = client.newCall(request).execute(); Respuestas
200 Éxito
GET
/search-people Buscar Personas
Search People
Parámetros
| Nombre | Tipo | Ubicación | Requerido | Descripción |
|---|---|---|---|---|
| query | string | query | Sí | Consulta de búsqueda |
| page | integer | query | No | Página |
Ejemplos de código
curl --request GET \ --url 'https://api.pressmonitor.com/substack/v1/search-people?query=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE' const http = require("https"); const options = { "method": "GET", "hostname": "api.pressmonitor.com", "port": null, "path": "/substack/v1/search-people?query=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE", "headers": {} }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.end(); import requests url = "https://api.pressmonitor.com/substack/v1/search-people" querystring = {"query":"SOME_STRING_VALUE","page":"SOME_INTEGER_VALUE"} response = requests.request("GET", url, params=querystring) print(response.text) <?php $curl = curl_init(); curl_setopt_array($curl, [ CURLOPT_URL => "https://api.pressmonitor.com/substack/v1/search-people?query=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "GET", ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://api.pressmonitor.com/substack/v1/search-people?query=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE") .get() .build(); Response response = client.newCall(request).execute(); Respuestas
200 Éxito
GET
/search-post Buscar Publicación
Search Post
Parámetros
| Nombre | Tipo | Ubicación | Requerido | Descripción |
|---|---|---|---|---|
| query | string | query | Sí | Consulta de búsqueda |
| page | integer | query | No | Página |
Ejemplos de código
curl --request GET \ --url 'https://api.pressmonitor.com/substack/v1/search-post?query=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE' const http = require("https"); const options = { "method": "GET", "hostname": "api.pressmonitor.com", "port": null, "path": "/substack/v1/search-post?query=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE", "headers": {} }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.end(); import requests url = "https://api.pressmonitor.com/substack/v1/search-post" querystring = {"query":"SOME_STRING_VALUE","page":"SOME_INTEGER_VALUE"} response = requests.request("GET", url, params=querystring) print(response.text) <?php $curl = curl_init(); curl_setopt_array($curl, [ CURLOPT_URL => "https://api.pressmonitor.com/substack/v1/search-post?query=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "GET", ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://api.pressmonitor.com/substack/v1/search-post?query=SOME_STRING_VALUE&page=SOME_INTEGER_VALUE") .get() .build(); Response response = client.newCall(request).execute(); Respuestas
200 Éxito
GET
/search-top Buscar Principales
Search Top
Parámetros
| Nombre | Tipo | Ubicación | Requerido | Descripción |
|---|---|---|---|---|
| query | string | query | Sí | Consulta de búsqueda |
Ejemplos de código
curl --request GET \ --url 'https://api.pressmonitor.com/substack/v1/search-top?query=SOME_STRING_VALUE' const http = require("https"); const options = { "method": "GET", "hostname": "api.pressmonitor.com", "port": null, "path": "/substack/v1/search-top?query=SOME_STRING_VALUE", "headers": {} }; const req = http.request(options, function (res) { const chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function () { const body = Buffer.concat(chunks); console.log(body.toString()); }); }); req.end(); import requests url = "https://api.pressmonitor.com/substack/v1/search-top" querystring = {"query":"SOME_STRING_VALUE"} response = requests.request("GET", url, params=querystring) print(response.text) <?php $curl = curl_init(); curl_setopt_array($curl, [ CURLOPT_URL => "https://api.pressmonitor.com/substack/v1/search-top?query=SOME_STRING_VALUE", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "GET", ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://api.pressmonitor.com/substack/v1/search-top?query=SOME_STRING_VALUE") .get() .build(); Response response = client.newCall(request).execute(); Respuestas
200 Éxito