{"openapi":"3.1.0","info":{"title":"FlyerPartners API","description":"Documentation FlyerPartners API by <a href=\"https://t.me/FlyerPartnersBot\">@FlyerPartnersBot</a><br/>API endpoint: <b>api.flyerpartners.com</b>"},"paths":{"/get_smart_link":{"post":{"summary":"Project: Generate Smart Link","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"key":{"type":"string","description":"Project API key"},"user_id":{"type":"integer","description":"User ID in Telegram"},"ignored_partners":{"type":"string","description":"Comma-separated list of partner numbers to ignore (e.g., '1,2,3')"}},"required":["key","user_id"]}}}},"responses":{"200":{"description":"Smart link successfully generated","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","description":"Smart link data","properties":{"link":{"type":"string","description":"Smart link URL"},"signature":{"type":"string","description":"Signature for verification"}},"required":["link","signature"]}},"required":["result"]}}}},"400":{"description":"Error occurred","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}}}}},"/transition":{"get":{"summary":"Partner: Track Transition","parameters":[{"name":"key","in":"query","required":true,"schema":{"type":"string"}},{"name":"signature","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Transition successfully tracked","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"boolean","enum":[true]}},"required":["result"]}}}},"400":{"description":"Error occurred","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}}}}},"/payout":{"get":{"summary":"Partner: Create Payout","parameters":[{"name":"key","in":"query","required":true,"schema":{"type":"string"}},{"name":"signature","in":"query","required":true,"schema":{"type":"string"}},{"name":"amount","in":"query","required":true,"schema":{"type":"string"}},{"name":"hold","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"200":{"description":"Payout initiated","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"integer","description":"payout_id"}},"required":["result"]}}}},"400":{"description":"Error occurred","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}}}}},"/payout/transactions/hold":{"get":{"summary":"Partner: Get list of transactions on hold","parameters":[{"name":"key","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"List of transactions on hold","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"count":{"type":"integer","description":"Total number of transactions on hold"},"transactions":{"type":"array","items":{"type":"object","properties":{"payout_id":{"type":"integer","description":"ID of the payout"},"tcreate":{"type":"integer","description":"Timestamp of transaction creation"},"signature":{"type":"string","description":"Unique transaction signature"},"amount":{"type":"string","description":"Transaction amount in USDT"}},"required":["payout_id","tcreate","signature","amount"]}}},"required":["count","transactions"]}},"required":["result"]}}}},"400":{"description":"Error occurred","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}}}}},"/payout/confirm":{"get":{"summary":"Partner: Confirm Payout on Hold","parameters":[{"name":"key","in":"query","required":true,"schema":{"type":"string"}},{"name":"payout_id","in":"query","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"Payout confirmed","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"boolean","enum":[true]}},"required":["result"]}}}},"400":{"description":"Error occurred","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}}}}},"/payout/cancel":{"get":{"summary":"Partner: Cancel Payout on Hold","parameters":[{"name":"key","in":"query","required":true,"schema":{"type":"string"}},{"name":"payout_id","in":"query","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"Payout cancelled","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"boolean","enum":[true]}},"required":["result"]}}}},"400":{"description":"Error occurred","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}}}}}}}