Skip to main content

Partnership Requests

A partnership request is the direct, no-code way to start a swap: you pick a partner in the directory, propose a schedule up front, and if they accept, the campaign is created automatically with both channels already attached. Nobody copies or types a CP code.

Requests live on the Find Partners page at https://onflowads.com/telegram/dashboard/cross-promotion/discover. You send them from the Find partners tab and manage them on the Requests tab.

Before you start​

  • A public Telegram channel with the Onflow Ads bot added as an admin — it becomes your side of the campaign.
  • Room in your monthly initiation allowance. Sending is refused at the cap; see Rules and fairness.
  • A reliability score of at least 5.0/10 and no open account review.
  • The partner must be currently listed in the directory. If they unlisted after you loaded the page, sending returns "That partner is no longer listed in the directory."

Why use a request instead of a code?​

RequestCP code (OFCP-…)
Best forPartners you found in the directoryPartners you already know and talk to
ScheduleYou propose it up front, inside the requestCreator sets it; joiner confirms or renegotiates
PairingAutomatic on accept — both channels attachedPartner enters the code and attaches their channel
Expiry72 hours unanswered24 hours unjoined

Step by step: sending a request​

  1. On the Find partners tab, set your channel at the top of the page — paste it under Match against your channel and press Use channel. This is required: it is the channel you will promote. Skipping it and pressing Request swap shows "Set your channel at the top first — that's the channel you'll promote."
  2. Press Request swap on a partner's card. The card is replaced by an inline form headed "Request a swap with" that partner.
  3. Pick the proposed go-live date, time, timezone and duration. It is the same scheduler as the create wizard, with the same 14-day window and the same run lengths (12, 24, 36, 48, 72, 96 or 168 hours).
  4. Optionally write a Message — up to 240 characters. It is shown to them in quotes on the request card.
  5. Press Send request. You see "Request sent — we'll let you know when they respond." The partner is notified by Telegram DM (if their account is linked) and by email.
Propose a time you would actually keep

The schedule you send is the campaign's schedule if they accept — and if the go-live has already passed by the time they get round to accepting, the campaign opens unconfirmed and you both have to renegotiate. Propose something a day or two out rather than this evening, and the accept lands clean.

Rules for outbound requests​

  • One pending request per partner at a time. Their card shows a disabled Request sent button until it resolves; sending another returns "You already have a pending request to this partner."
  • Sending runs the monthly initiation cap gate — but the allowance is only actually spent when a campaign exists, which happens on accept. An expired, declined or cancelled request costs you nothing.
  • Pending requests expire after 72 hours with no decision. An expired request shows an Expired badge; send a fresh one if you are still interested.
  • Cancel request on the Requests tab withdraws a pending one immediately. The recipient can no longer accept it.
  • A pending outbound request can be boosted to the top of the recipient's queue — see below.

Boosting a request to the top of their queue​

A busy partner's Requests to you list is ordered newest first, and yours sinks as others arrive. ⚡ Boost — $X lifts your still-pending request to the top of that list, where it wears a ⚡ Priority badge.

  1. On the Requests tab, press ⚡ Boost — $X on your own pending request. The button arms, changing to Confirm — charge wallet.
  2. Press it again. Your wallet is charged and the page confirms "Your request is boosted to the top of their queue."

The price falls with your plan and is free on Ultimate — see Add-ons and extras. The button appears only on your own outbound request, while it is still pending and not already boosted; a request that has been accepted, declined, cancelled or boosted has none.

Position is all it buys

A boost puts your request in front of them sooner. It does not change the trust signals on your card, and it does not make an accept any more likely on its own — the pitch on your listing, the message on the request and a track record they can see are what decide it. If a boost is refused because the request has moved on, nothing is charged.

Requests sent to you​

The Requests tab lists two sections — Requests to you and Requests you sent. Each card shows:

  • the other channel's photo, name, @handle and subscriber count, with its OFCH- channel ID;
  • their optional message, in quotes;
  • the standard trust signals — size verdict, track record, star rating (see Rules and fairness);
  • the Proposed schedule — go-live, timezone, duration and end time;
  • a status pill: Pending, Accepted, Declined, Cancelled or Expired, plus ⚡ Priority on a boosted request.

Accepting​

Press Accept & set up. What happens:

  1. The campaign is created instantly — the requester is the creator, you are the partner, both channels are already attached, and the schedule is the one they proposed.
  2. If the proposed go-live is still in the future, the campaign is immediately Confirmed and both of you get the full confirmation by Telegram DM and email.
  3. If the proposed go-live has already passed, the campaign opens in Awaiting confirmation instead, and the requester is told to agree a new time with you. Fix it through Schedule proposals.
  4. Either way you land straight on the campaign page, ready to build posts — see Creatives.
Accepting is a commitment

Accepting makes you the campaign's joiner, so the same checks as joining with a code apply: the anti-ghost join cooldown and the reliability floor. If you are in a cooldown or your account is under review, the accept is refused with the reason. And once accepted, the anti-ghost clock starts: a campaign left unconfirmed for 48 hours is released and costs you a strike and −0.30 reliability. See Anti-ghost protections.

Declining​

Type an optional reason in the Reason if you decline (optional) field — up to 300 characters — then press Decline. The requester is told by Telegram DM and email, with your reason if you gave one, and it appears on their request card under "Reason:".

After a request is accepted​

The card gains an Open campaign button linking to the new campaign page. From there the normal flow continues: schedule (already agreed, or renegotiated), posts, review, automatic delivery.

Request statuses at a glance​

StatusMeaningWho can act
PendingWaiting for the recipientRecipient: accept or decline. Sender: cancel
AcceptedCampaign created — open it from the cardBoth: open the campaign
DeclinedRecipient said no (reason shown if given)Nobody — send a new request later if things change
CancelledThe sender withdrew itNobody
Expired72 hours passed with no decisionSender: send a fresh one

If something goes wrong​

What you seeWhat it meansWhat to do
"Set your channel at the top first — that's the channel you'll promote."You pressed Request swap before naming your own channel.Set it under Match against your channel and press Use channel, then try again.
"You already have a pending request to this partner."One is still open with them.Wait for their decision, or cancel yours on the Requests tab and send a new one.
"You've used all N cross-promotion initiations your <plan> plan includes this month."You are at your monthly cap.Joining and accepting stay unlimited. Wait for the reset on the 1st, or upgrade — see Rules and fairness.
"Cross-Promotion needs a reliability score of at least 5/10 — yours is X."Your score is below the floor.Finish what you have already started; the score also heals on a clean streak. See Rules and fairness.
"This request has expired. Ask them to send a fresh one."More than 72 hours passed before you decided.Ask the sender to resend, or send them one yourself.
"That partner is no longer listed in the directory."They unlisted between your page load and your send.Nothing to fix — their listing is gone.
"Not enough wallet balance — top up to boost this request." after Confirm — charge walletThe boost debit would overdraw your wallet. Nothing was charged and the request was not boosted.Top up, then press the button again. The request queues normally meanwhile.
"This request can't be boosted — it may be handled already, not yours, or already boosted."The request changed state between your page load and your confirm.Reload the Requests tab for its current state. Nothing was charged.
From the support chat

Partner requests lists what you received and sent; accept the request from @channel or decline it answers one, and withdraw the partner request I sent to @channel pulls one back — each after CONFIRM. What the assistant can do for you has the full list and the confirmation rule.


Next: Manual promos with CP codes — the other way to pair up, for a partner you already know and talk to.