Skip to content

Videos

bash
curl https://api.fastapi.ai/v1/videos \
  -H "Authorization: Bearer $FAST_API_KEY" \
  -F "model=sora-2" \
  -F "prompt=A short cinematic shot of a city at sunrise"
javascript
const form = new FormData();
form.set('model', 'sora-2');
form.set('prompt', 'A short cinematic shot of a city at sunrise');

const res = await fetch('https://api.fastapi.ai/v1/videos', {
  method: 'POST',
  headers: { Authorization: `Bearer ${process.env.FAST_API_KEY}` },
  body: form,
});

console.log(await res.json());
python
import os
import requests

resp = requests.post(
  "https://api.fastapi.ai/v1/videos",
  headers={"Authorization": f"Bearer {os.environ['FAST_API_KEY']}"},
  data={"model": "sora-2", "prompt": "A short cinematic shot of a city at sunrise"},
)

print(resp.json())
go
package main

import (
  "bytes"
  "fmt"
  "io"
  "mime/multipart"
  "net/http"
  "os"
)

func main() {
  var buf bytes.Buffer
  w := multipart.NewWriter(&buf)
  _ = w.WriteField("model", "sora-2")
  _ = w.WriteField("prompt", "A short cinematic shot of a city at sunrise")
  _ = w.Close()

  req, _ := http.NewRequest("POST", "https://api.fastapi.ai/v1/videos", &buf)
  req.Header.Set("Authorization", "Bearer "+os.Getenv("FAST_API_KEY"))
  req.Header.Set("Content-Type", w.FormDataContentType())

  resp, err := http.DefaultClient.Do(req)
  if err != nil {
    panic(err)
  }
  defer resp.Body.Close()

  body, _ := io.ReadAll(resp.Body)
  fmt.Println(string(body))
}
java
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;

public class Main {
  public static void main(String[] args) throws Exception {
    String boundary = "----FastAPIBoundary";
    String body =
      "--" + boundary + "\r\n" +
      "Content-Disposition: form-data; name=\"model\"\r\n\r\n" +
      "sora-2\r\n" +
      "--" + boundary + "\r\n" +
      "Content-Disposition: form-data; name=\"prompt\"\r\n\r\n" +
      "A short cinematic shot of a city at sunrise\r\n" +
      "--" + boundary + "--\r\n";

    HttpRequest req = HttpRequest.newBuilder()
      .uri(URI.create("https://api.fastapi.ai/v1/videos"))
      .header("Authorization", "Bearer " + System.getenv("FAST_API_KEY"))
      .header("Content-Type", "multipart/form-data; boundary=" + boundary)
      .POST(HttpRequest.BodyPublishers.ofString(body))
      .build();

    HttpResponse<String> resp = HttpClient.newHttpClient().send(req, HttpResponse.BodyHandlers.ofString());
    System.out.println(resp.body());
  }
}

那年我双手插兜, 让bug稳如老狗