oiii integration guide
Integrate the oiii offerwall, JSON API and S2S postback in minutes. If you already support BitcoTasks, oiii uses the same URL formats and postback parameters — swap the domain and keys.
Getting started
- Create an account and open My apps → Add new app.
- Set your app name, URL, platform, currency name, currency round (0–2 decimals) and exchange rate (units earned per $1 USD).
- Set your Postback URL. It is called whenever a user completes something, and when a completion is reversed.
- Copy your API key, Secret key and Bearer token from the app page. Your app is reviewed and approved — you can integrate right away.
Offerwall embed
The wall is responsive and shows Offers, Surveys, PTC, Shortlinks, Tasks and Faucet tabs. Replace [API_KEY] and [USER_ID].
JavaScript (new tab / popup)
iFrame
Add ?tab=offers|surveys|ptc|shortlinks|tasks|faucet to open a specific tab.
Parameters
| Parameter | Description | Type |
|---|---|---|
| [API_KEY] | Your app's API key | varchar(32) |
| [USER_ID] | Unique ID of the user on your site (letters, digits, _ - . @ :) | varchar(64) |
| [USER_IP] | The user's IP (API endpoints only) | string |
| [BEARER_TOKEN] | API token from your app page | string |
S2S postback
Whenever a user completes an offer, survey, PTC view, shortlink, approved task or faucet claim, oiii sends an HTTP POST to your postback URL (parameters are sent both in the body and in the query string, so $_REQUEST works). You can also place macros like {subId} in your URL.
| Parameter | Description | Example |
|---|---|---|
| subId | Your user ID | user123 |
| transId | Unique transaction ID — use it to prevent double credits | OF-1A2B3C4D5E6F |
| offer_name | Name of the completed offer | Install and reach level 5 |
| offer_type | offer, survey, ptc, video, shortlink, task, faucet | ptc |
| reward | Amount of your currency to credit (always positive) | 125.00 |
| reward_name | Your currency name | Points |
| reward_value | Your exchange rate (units per $1) | 1000.00 |
| payout | Your USD earning for this action | 0.125000 |
| userIp | User IP at completion | 203.0.113.7 |
| country | ISO2 country | US |
| status | 1 = credit, 2 = chargeback (subtract) | 1 |
| debug | 1 = test postback from your dashboard | 0 |
| signature | MD5 signature, see below | 17b4e2a7… |
reward and payout are always absolute values; use status to add or subtract.
Postback security
Verify every postback: md5($subId . $transId . $reward . $secretKey). Your endpoint must reply with exactly ok. Failed postbacks are retried automatically with growing delays and can be resent from your dashboard.
JSON API
Render the wall content in your own UI. Enable Allow API on your app, then send Authorization: Bearer [BEARER_TOKEN]. Limit: 60 requests per minute per app (HTTP 429 above). Every response looks like {"status":"200","message":"success","data":[…]}. Each item has a url / link — open it in a new tab for the user; completions arrive by postback.
PTC
Shortlinks
Tasks
Faucet
Offers & surveys
Send the end user's browser User-Agent in a User-UA header so device targeting is correct.
Android / iOS
Open https://oiii.si/offerwall/[API_KEY]/[USER_ID] in a WebView (JavaScript enabled) or the system browser.
Advertisers
Any account can advertise — no website needed. Deposit with FaucetPay (minimum $1.00), then create:
- PTC / Video — price per visit by pack duration. Total = price × visits. Optional daily limit, views per user, device and country targeting, iframe or new-window display.
- Shortlinks — give your shortener domain and API key (AdLinkFly-compatible). Total = reward × visitors × tier multiplier. Each visit is verified with a one-time token through your shortener.
- Tasks — instructions + proof; you approve or reject. Total = (reward × completions) + 15% fee.
Campaigns are reviewed before going live. Rejected or stopped campaigns refund the unused budget to your ad balance automatically. Publisher earnings can be transferred to your ad balance at any time.