Sora Watermark Remover
by @nanophotohq
Remove watermarks from Sora 2 generated videos via the NanoPhoto.AI API. Use when: (1) User needs Sora watermark removal or a watermark remover for a Sora vi...
clawhub install sora-watermark-removerπ About This Skill
name: sora-watermark-remover description: "Remove watermarks from Sora 2 generated videos via the NanoPhoto.AI API. Use when: (1) User needs Sora watermark removal or a watermark remover for a Sora video, (2) User provides a Sora share link from sora.chatgpt.com and wants a clean downloadable video, (3) User mentions remove watermark, no watermark, clean Sora export, Sora share link, or NanoPhoto. Prerequisite: Obtain an API key at https://nanophoto.ai/settings/apikeys and configure env.NANOPHOTO_API_KEY."
Sora Watermark Remover
Remove watermarks from Sora 2 generated videos via the NanoPhoto.AI API.
Publisher / source:
Prerequisites
1. Obtain an API key at: https://nanophoto.ai/settings/apikeys
2. Configure NANOPHOTO_API_KEY before using the skill.
3. Do not paste the API key into chat; store it in the platform's secure env setting for this skill.
Preferred OpenClaw setup:
NANOPHOTO_API_KEYEquivalent config shape:
{
"skills": {
"entries": {
"sora-watermark-remover": {
"enabled": true,
"env": {
"NANOPHOTO_API_KEY": "your_api_key_here"
}
}
}
}
}
Other valid ways to provide the key:
export NANOPHOTO_API_KEY="your_api_key_here"NANOPHOTO_API_KEYCredential declaration summary:
NANOPHOTO_API_KEYNANOPHOTO_API_KEYIf the env var is not set, ask the user to configure it before proceeding.
Workflow
1. Collect the Sora 2 share link from the user (format: https://sora.chatgpt.com/p/...)
2. Validate the link contains sora.chatgpt.com/p/
3. Confirm the user is authorized to process the content and that watermark removal is allowed for their use case
4. Call the API to remove the watermark
5. Return the clean video URL to the user
API Call
curl -X POST "https://nanophoto.ai/api/sora/remove-watermark" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $NANOPHOTO_API_KEY" \
--data-raw '{
"share_link": "https://sora.chatgpt.com/p/s_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
}'
Success response:
{
"success": true,
"status": "completed",
"url": "https://video.nanophoto.ai/sora/watermark-remover/xxx.mp4"
}
Error Handling
| errorCode | Cause | Action |
|-----------|-------|--------|
| LOGIN_REQUIRED | Invalid or missing API key | Verify key at https://nanophoto.ai/settings/apikeys |
| API_KEY_RATE_LIMIT_EXCEEDED | >100 requests/hour | Wait and retry |
| MISSING_SHARE_LINK | No share_link in body | Ask user for the Sora share link |
| INVALID_SHARE_LINK | Link doesn't match sora.chatgpt.com/p/ | Ask user to provide a valid Sora 2 share link |
| GENERATION_FAILED | Server-side processing error | Retry or report to user |
Full API Reference
See references/api.md for complete endpoint documentation.
βοΈ Configuration
1. Obtain an API key at: https://nanophoto.ai/settings/apikeys
2. Configure NANOPHOTO_API_KEY before using the skill.
3. Do not paste the API key into chat; store it in the platform's secure env setting for this skill.
Preferred OpenClaw setup:
NANOPHOTO_API_KEYEquivalent config shape:
{
"skills": {
"entries": {
"sora-watermark-remover": {
"enabled": true,
"env": {
"NANOPHOTO_API_KEY": "your_api_key_here"
}
}
}
}
}
Other valid ways to provide the key:
export NANOPHOTO_API_KEY="your_api_key_here"NANOPHOTO_API_KEYCredential declaration summary:
NANOPHOTO_API_KEYNANOPHOTO_API_KEYIf the env var is not set, ask the user to configure it before proceeding.