Stepeee Stepeee Piattaforma AI completamente automatizzata

Autenticazione

1

Verifica la tua chiave API

Puoi trovarla nel menu in alto a destra > Impostazioni > Account > Chiavi API.

2

Aggiungila all'header della richiesta

Aggiungi la chiave API generata all'header Authorization nel formato Bearer.

3

Invia la richiesta all'URL di base

Invia le richieste all'URL di base seguente, aggiungendo il percorso dell'endpoint.

URL di base

https://stepeee.com/public-api/v1

Esempio di richiesta

curl https://stepeee.com/public-api/v1/projects \
  -H "Authorization: Bearer sk_xxxxxxxxxxxxxxxx"
import requests

response = requests.get(
    "https://stepeee.com/public-api/v1/projects",
    headers={"Authorization": "Bearer sk_xxxxxxxxxxxxxxxx"},
)
print(response.json())
const response = await fetch("https://stepeee.com/public-api/v1/projects", {
  headers: { Authorization: "Bearer sk_xxxxxxxxxxxxxxxx" },
});
const data = await response.json();
console.log(data);
var request = URLRequest(url: URL(string: "https://stepeee.com/public-api/v1/projects")!)
request.setValue("Bearer sk_xxxxxxxxxxxxxxxx", forHTTPHeaderField: "Authorization")

let (data, _) = try await URLSession.shared.data(for: request)
print(String(data: data, encoding: .utf8)!)
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://stepeee.com/public-api/v1/projects"))
    .header("Authorization", "Bearer sk_xxxxxxxxxxxxxxxx")
    .build();

HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
$ch = curl_init("https://stepeee.com/public-api/v1/projects");
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer sk_xxxxxxxxxxxxxxxx",
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
curl_close($ch);

echo $response;

Formato della risposta ed errori

Tutte le risposte vengono restituite nel formato busta (envelope) seguente.

In caso di successo

{ "data": ... }

In caso di errore

{ "error": { "code": "...", "message": "..." } }

Codici di stato

StatoSignificato
401La chiave API non è valida o è scaduta
404La risorsa non esiste (include anche i casi in cui non hai i permessi di accesso)
422I parametri non sono validi
429È stato superato il limite di richieste
500Si è verificato un errore imprevisto

Progetti

GET › /projects

Recupera l'elenco dei progetti accessibili al titolare della chiave API.

Esempio di richiesta
curl https://stepeee.com/public-api/v1/projects \
  -H "Authorization: Bearer sk_xxxxxxxxxxxxxxxx"
import requests

response = requests.get(
    "https://stepeee.com/public-api/v1/projects",
    headers={"Authorization": "Bearer sk_xxxxxxxxxxxxxxxx"},
)
print(response.json())
const response = await fetch("https://stepeee.com/public-api/v1/projects", {
  headers: { Authorization: "Bearer sk_xxxxxxxxxxxxxxxx" },
});
const data = await response.json();
console.log(data);
var request = URLRequest(url: URL(string: "https://stepeee.com/public-api/v1/projects")!)
request.setValue("Bearer sk_xxxxxxxxxxxxxxxx", forHTTPHeaderField: "Authorization")

let (data, _) = try await URLSession.shared.data(for: request)
print(String(data: data, encoding: .utf8)!)
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://stepeee.com/public-api/v1/projects"))
    .header("Authorization", "Bearer sk_xxxxxxxxxxxxxxxx")
    .build();

HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
$ch = curl_init("https://stepeee.com/public-api/v1/projects");
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer sk_xxxxxxxxxxxxxxxx",
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
curl_close($ch);

echo $response;
Esempio di risposta
{
  "data": [
    {
      "project_unique": "a1b2c3d4e5",
      "project_name": "Sample Project",
      "description": "Sample project description",
      "created_at": "2026-01-10T09:00:00Z"
    }
  ],
  "meta": { "total": 1 }
}
GET › /projects/{project_unique}

Recupera i dettagli di un singolo progetto.

  • project_unique(string, percorso, obbligatorio) — l'ID pubblico del progetto
Esempio di richiesta
curl https://stepeee.com/public-api/v1/projects/a1b2c3d4e5 \
  -H "Authorization: Bearer sk_xxxxxxxxxxxxxxxx"
import requests

response = requests.get(
    "https://stepeee.com/public-api/v1/projects/a1b2c3d4e5",
    headers={"Authorization": "Bearer sk_xxxxxxxxxxxxxxxx"},
)
print(response.json())
const response = await fetch("https://stepeee.com/public-api/v1/projects/a1b2c3d4e5", {
  headers: { Authorization: "Bearer sk_xxxxxxxxxxxxxxxx" },
});
const data = await response.json();
console.log(data);
var request = URLRequest(url: URL(string: "https://stepeee.com/public-api/v1/projects/a1b2c3d4e5")!)
request.setValue("Bearer sk_xxxxxxxxxxxxxxxx", forHTTPHeaderField: "Authorization")

let (data, _) = try await URLSession.shared.data(for: request)
print(String(data: data, encoding: .utf8)!)
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://stepeee.com/public-api/v1/projects/a1b2c3d4e5"))
    .header("Authorization", "Bearer sk_xxxxxxxxxxxxxxxx")
    .build();

HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
$ch = curl_init("https://stepeee.com/public-api/v1/projects/a1b2c3d4e5");
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer sk_xxxxxxxxxxxxxxxx",
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
curl_close($ch);

echo $response;
Esempio di risposta
{
  "data": {
    "project_unique": "a1b2c3d4e5",
    "project_name": "Sample Project",
    "description": "Sample project description",
    "is_readonly": false,
    "created_at": "2026-01-10T09:00:00Z"
  }
}

Contenuti

GET › /projects/{project_unique}/contents

Recupera un elenco unificato dei contenuti generati in un progetto (post, blog, immagini e video).

  • project_unique(string, percorso, obbligatorio) — l'ID pubblico del progetto
Esempio di richiesta
curl https://stepeee.com/public-api/v1/projects/a1b2c3d4e5/contents \
  -H "Authorization: Bearer sk_xxxxxxxxxxxxxxxx"
import requests

response = requests.get(
    "https://stepeee.com/public-api/v1/projects/a1b2c3d4e5/contents",
    headers={"Authorization": "Bearer sk_xxxxxxxxxxxxxxxx"},
)
print(response.json())
const response = await fetch("https://stepeee.com/public-api/v1/projects/a1b2c3d4e5/contents", {
  headers: { Authorization: "Bearer sk_xxxxxxxxxxxxxxxx" },
});
const data = await response.json();
console.log(data);
var request = URLRequest(url: URL(string: "https://stepeee.com/public-api/v1/projects/a1b2c3d4e5/contents")!)
request.setValue("Bearer sk_xxxxxxxxxxxxxxxx", forHTTPHeaderField: "Authorization")

let (data, _) = try await URLSession.shared.data(for: request)
print(String(data: data, encoding: .utf8)!)
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://stepeee.com/public-api/v1/projects/a1b2c3d4e5/contents"))
    .header("Authorization", "Bearer sk_xxxxxxxxxxxxxxxx")
    .build();

HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
$ch = curl_init("https://stepeee.com/public-api/v1/projects/a1b2c3d4e5/contents");
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer sk_xxxxxxxxxxxxxxxx",
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
curl_close($ch);

echo $response;
Esempio di risposta
{
  "data": [
    {
      "mode": "moviemode",
      "variation_unique": "m1a2b3c4d5",
      "title": "Generated Title",
      "progress": { "step_process": 3, "is_complete": true },
      "created_at": "2026-01-12T03:00:00Z"
    }
  ],
  "meta": { "total": 1 }
}
GET › /projects/{project_unique}/contents/{variation_unique}

Recupera i dettagli di un singolo contenuto. Include il testo e gli asset generati, oltre allo stato di pubblicazione (risultati della pubblicazione su social/WordPress, ecc.). La struttura di "content" varia in base alla modalità.

  • project_unique(string, percorso, obbligatorio) — l'ID pubblico del progetto
  • variation_unique(string, percorso, obbligatorio) — l'ID pubblico del contenuto
Esempio di richiesta
curl https://stepeee.com/public-api/v1/projects/a1b2c3d4e5/contents/m1a2b3c4d5 \
  -H "Authorization: Bearer sk_xxxxxxxxxxxxxxxx"
import requests

response = requests.get(
    "https://stepeee.com/public-api/v1/projects/a1b2c3d4e5/contents/m1a2b3c4d5",
    headers={"Authorization": "Bearer sk_xxxxxxxxxxxxxxxx"},
)
print(response.json())
const response = await fetch("https://stepeee.com/public-api/v1/projects/a1b2c3d4e5/contents/m1a2b3c4d5", {
  headers: { Authorization: "Bearer sk_xxxxxxxxxxxxxxxx" },
});
const data = await response.json();
console.log(data);
var request = URLRequest(url: URL(string: "https://stepeee.com/public-api/v1/projects/a1b2c3d4e5/contents/m1a2b3c4d5")!)
request.setValue("Bearer sk_xxxxxxxxxxxxxxxx", forHTTPHeaderField: "Authorization")

let (data, _) = try await URLSession.shared.data(for: request)
print(String(data: data, encoding: .utf8)!)
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://stepeee.com/public-api/v1/projects/a1b2c3d4e5/contents/m1a2b3c4d5"))
    .header("Authorization", "Bearer sk_xxxxxxxxxxxxxxxx")
    .build();

HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
$ch = curl_init("https://stepeee.com/public-api/v1/projects/a1b2c3d4e5/contents/m1a2b3c4d5");
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer sk_xxxxxxxxxxxxxxxx",
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
curl_close($ch);

echo $response;
Esempio di risposta
{
  "data": {
    "mode": "moviemode",
    "variation_unique": "m1a2b3c4d5",
    "title": "Generated Title",
    "progress": { "step_process": 3, "is_complete": true },
    "publish": [
      {
        "platform": "youtube",
        "status": "success",
        "post_url": "https://youtube.com/watch?v=xxxx",
        "posted_at": "2026-01-12T04:00:00Z"
      }
    ],
    "content": {
      "movie_unique": "v1a2b3c4d5e6f7g8h9i0",
      "download_url": "https://... (issued dynamically per request)",
      "thumbnail_url": "https://... (issued dynamically per request)"
    },
    "created_at": "2026-01-12T03:00:00Z"
  }
}