Find then comment
Start a Find job on a paid plan, pick a video URL from the cards, then post a comment.
When you finish this page, Rumora has searched YouTube or TikTok for you, you have picked one video from the result cards, and a comment is queued on that video. Find does not paste the video and does not post the comment. Those are separate steps on purpose, so you choose the URL.
Before you start
You need all of this:
- A team workspace on an active paid plan. Find is off on a free grant.
get_usagemust show"find_enabled": true. - Enough credits for the search plus the comment. Today each keyword is 50 credits and a comment is 25 credits. Trust
get_usageforfind_creditsandcomment_credits. - An API key that starts with
rmr_, copied from API keys. - One to ten search keywords. You will type them. Rumora does not invent them unless you use Get inspired in the web app.
Set these once:
export HOST=https://rumora.ai
export TOKEN='rmr_YOUR_TOKEN'You can run the same commands in the playground.
1. Confirm Find is allowed
curl -sS "$HOST/api/v1/usage" \
-H "Authorization: Bearer $TOKEN"Check three things in the JSON:
find_enabledistrue. If it isfalse, open Billing, start a paid plan, then run this call again.credits_leftis at leastfind_creditstimes the number of keywords you will send, pluscomment_creditsfor the post.limits.youtube.commentMaxLengthorlimits.tiktok.commentMaxLength, matching the platform you will search.
If you see "code": "UNAUTHORIZED", mint a new key.
2. Start the search
platform must be youtube or tiktok. terms is an array of keywords. Each keyword spends find_credits. Keep idempotency_key at least 8 characters and reuse it if this request times out.
curl -sS -X POST "$HOST/api/v1/finds" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"platform": "youtube",
"terms": ["ai coding agents"],
"idempotency_key": "find-1"
}'You should see "type": "find" and "status": "queued". Copy id. That is the Find job id.
If you see "code": "FORBIDDEN", the workspace has no paid plan. Buy a plan or paste a URL instead.
If you see "code": "CONFLICT", a Find job is already running for this workspace. Copy job_id from the error body and poll that id in step 3. Do not start a second search.
If you see "code": "PAYMENT_REQUIRED", open checkout_url, buy credits, then retry with the same idempotency_key.
3. Poll until cards appear
Replace JOB_ID with the id from step 2, or with job_id from a CONFLICT error. Run this every few seconds.
curl -sS "$HOST/api/v1/status/JOB_ID" \
-H "Authorization: Bearer $TOKEN"Watch status and cards:
- When
cardsis a non-empty array, you are done polling. Each card has aurl. Copy theurlyou want to comment on. - When
"status": "refunded", the search returned nothing and the Find credits came back. Change the keywords and start again with a new idempotency key. - When
"status": "queued"or another in-progress value, wait and poll again.
Find still has not posted a comment.
4. Post a comment on the URL you picked
Replace VIDEO_URL with a url from cards. Keep text at or under commentMaxLength from step 1. Use a new idempotency key. Do not send likes.
curl -sS -X POST "$HOST/api/v1/comments" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"video_url": "VIDEO_URL",
"text": "Useful breakdown of this.",
"idempotency_key": "comment-1"
}'You should see "type": "thread" and "status": "queued". Copy id if you will like or reply next.
To like that comment after it is live, continue with Comment then like from the poll step, using this new thread id.
If something fails
Match error.code in Errors. Why Find is a job you poll, not a list of URLs in the first response, is in Status and polling.
Last updated on