{"openapi":"3.1.0","info":{"title":"WURK x402 Solana Token Boost Endpoints","version":"1.1.0","description":"WURK API token boost endpoints let agents pay with Solana x402 for DexScreener rockets and token or community vote actions.","x-guidance":"Use this OpenAPI document to discover WURK x402 payable operations.\nFor paid `/solana/*` and `/base/*` operations, call without `PAYMENT-SIGNATURE` to receive a live 402 challenge, sign it, then retry the same URL with `PAYMENT-SIGNATURE`.\nTreat the live 402 response as the source of truth for exact price, asset, payee, and timeout.","contact":{"email":"info@wurk.fun"}},"servers":[{"url":"https://wurkapi.fun"}],"tags":[{"name":"Dex"},{"name":"Votes"}],"paths":{"/solana/dex":{"post":{"operationId":"post_solana_dex","tags":["Dex"],"summary":"Dex Rockets (POST)","description":"Public x402 endpoint: `/solana/dex`.\n\nFlow kind: **paid** endpoint.\n\nFlow: call once **without** `PAYMENT-SIGNATURE` to receive `402 Payment-Required`; sign the requirement; retry the same URL **with** `PAYMENT-SIGNATURE` for `200`.\n\nUse `PAYMENT-SIGNATURE` for public routes (`/solana/*`, `/base/*`). `X-PAYMENT` is legacy/test context.\n\nPricing hint: `{\"currency\":\"USDC\",\"perUnit\":0.02,\"unit\":\"rocket\"}`.\n\nDefaults: `{\"amount\":40}`.\n\nLimits: `{\"amountMin\":5,\"amountMax\":250}`.","x-payment-info":{"protocols":["x402",{"x402":{"network":"solana","scheme":"exact","paymentHeader":"PAYMENT-SIGNATURE"}}],"price":{"mode":"dynamic","currency":"USD","description":"The live 402 challenge is the source of truth for the exact amount."},"pricingMode":"quote","challengeSource":"runtime","paymentHeader":"PAYMENT-SIGNATURE"},"parameters":[{"$ref":"#/components/parameters/PaymentSignature"},{"$ref":"#/components/parameters/Url"},{"$ref":"#/components/parameters/Amount"}],"requestBody":{"required":false,"description":"Optional JSON body mirror of the query inputs for agent invocation. Query/path parameters remain the canonical runtime contract.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"properties":{"url":{"type":"string","format":"uri"},"amount":{"type":"integer","minimum":0}}}}}},"responses":{"200":{"$ref":"#/components/responses/PaidSuccess"},"400":{"$ref":"#/components/responses/BadRequest"},"402":{"$ref":"#/components/responses/PaymentRequired"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/solana/vote":{"post":{"operationId":"post_solana_vote","tags":["Votes"],"summary":"Unified Vote Endpoint (POST)","description":"Public x402 endpoint: `/solana/vote`.\n\nFlow kind: **paid** endpoint.\n\nFlow: call once **without** `PAYMENT-SIGNATURE` to receive `402 Payment-Required`; sign the requirement; retry the same URL **with** `PAYMENT-SIGNATURE` for `200`.\n\nUse `PAYMENT-SIGNATURE` for public routes (`/solana/*`, `/base/*`). `X-PAYMENT` is legacy/test context.\n\nPricing hint: `{\"currency\":\"USDC\",\"perUnit\":0.02,\"unit\":\"vote\"}`.\n\nDefaults: `{\"amount\":100,\"voteType\":\"skeleton_vote\"}`.\n\nLimits: `{\"amountMin\":5,\"amountMax\":250,\"voteTypeEnum\":[\"skeleton_vote\",\"moontok_vote\",\"majortrending_vote\",\"coingecko_vote\",\"coinmarketcap_vote\"]}`.\n\nSupported vote types: `skeleton_vote`, `moontok_vote`, `majortrending_vote`, `coingecko_vote`, `coinmarketcap_vote`.","x-payment-info":{"protocols":["x402",{"x402":{"network":"solana","scheme":"exact","paymentHeader":"PAYMENT-SIGNATURE"}}],"price":{"mode":"dynamic","currency":"USD","description":"The live 402 challenge is the source of truth for the exact amount."},"pricingMode":"quote","challengeSource":"runtime","paymentHeader":"PAYMENT-SIGNATURE"},"parameters":[{"$ref":"#/components/parameters/PaymentSignature"},{"$ref":"#/components/parameters/VoteType"},{"$ref":"#/components/parameters/TypeAlias"},{"$ref":"#/components/parameters/Url"},{"$ref":"#/components/parameters/Amount"}],"requestBody":{"required":false,"description":"Optional JSON body mirror of the query inputs for agent invocation. Query/path parameters remain the canonical runtime contract.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"properties":{"voteType":{"type":"string"},"type":{"type":"string"},"url":{"type":"string","format":"uri"},"amount":{"type":"integer","minimum":0}}}}}},"responses":{"200":{"$ref":"#/components/responses/PaidSuccess"},"400":{"$ref":"#/components/responses/BadRequest"},"402":{"$ref":"#/components/responses/PaymentRequired"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/solana/skeletonvote":{"post":{"operationId":"post_solana_skeletonvote","tags":["Votes"],"summary":"Skeleton Vote (POST)","description":"Public x402 endpoint: `/solana/skeletonvote`.\n\nFlow kind: **paid** endpoint.\n\nFlow: call once **without** `PAYMENT-SIGNATURE` to receive `402 Payment-Required`; sign the requirement; retry the same URL **with** `PAYMENT-SIGNATURE` for `200`.\n\nUse `PAYMENT-SIGNATURE` for public routes (`/solana/*`, `/base/*`). `X-PAYMENT` is legacy/test context.\n\nPricing hint: `{\"currency\":\"USDC\",\"perUnit\":0.02,\"unit\":\"vote\"}`.\n\nDefaults: `{\"amount\":100,\"voteType\":\"skeleton_vote\"}`.\n\nLimits: `{\"amountMin\":5,\"amountMax\":250,\"voteTypeEnum\":[\"skeleton_vote\",\"moontok_vote\",\"majortrending_vote\",\"coingecko_vote\",\"coinmarketcap_vote\"]}`.\n\nEquivalent voteType for unified `/vote`: `skeleton_vote`.","x-payment-info":{"protocols":["x402",{"x402":{"network":"solana","scheme":"exact","paymentHeader":"PAYMENT-SIGNATURE"}}],"price":{"mode":"dynamic","currency":"USD","description":"The live 402 challenge is the source of truth for the exact amount."},"pricingMode":"quote","challengeSource":"runtime","paymentHeader":"PAYMENT-SIGNATURE"},"parameters":[{"$ref":"#/components/parameters/PaymentSignature"},{"$ref":"#/components/parameters/Url"},{"$ref":"#/components/parameters/Amount"}],"requestBody":{"required":false,"description":"Optional JSON body mirror of the query inputs for agent invocation. Query/path parameters remain the canonical runtime contract.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"properties":{"url":{"type":"string","format":"uri"},"amount":{"type":"integer","minimum":0}}}}}},"responses":{"200":{"$ref":"#/components/responses/PaidSuccess"},"400":{"$ref":"#/components/responses/BadRequest"},"402":{"$ref":"#/components/responses/PaymentRequired"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/solana/majorvote":{"post":{"operationId":"post_solana_majorvote","tags":["Votes"],"summary":"Major Trending Vote (POST)","description":"Public x402 endpoint: `/solana/majorvote`.\n\nFlow kind: **paid** endpoint.\n\nFlow: call once **without** `PAYMENT-SIGNATURE` to receive `402 Payment-Required`; sign the requirement; retry the same URL **with** `PAYMENT-SIGNATURE` for `200`.\n\nUse `PAYMENT-SIGNATURE` for public routes (`/solana/*`, `/base/*`). `X-PAYMENT` is legacy/test context.\n\nPricing hint: `{\"currency\":\"USDC\",\"perUnit\":0.02,\"unit\":\"vote\"}`.\n\nDefaults: `{\"amount\":100,\"voteType\":\"skeleton_vote\"}`.\n\nLimits: `{\"amountMin\":5,\"amountMax\":250,\"voteTypeEnum\":[\"skeleton_vote\",\"moontok_vote\",\"majortrending_vote\",\"coingecko_vote\",\"coinmarketcap_vote\"]}`.\n\nEquivalent voteType for unified `/vote`: `majortrending_vote`.","x-payment-info":{"protocols":["x402",{"x402":{"network":"solana","scheme":"exact","paymentHeader":"PAYMENT-SIGNATURE"}}],"price":{"mode":"dynamic","currency":"USD","description":"The live 402 challenge is the source of truth for the exact amount."},"pricingMode":"quote","challengeSource":"runtime","paymentHeader":"PAYMENT-SIGNATURE"},"parameters":[{"$ref":"#/components/parameters/PaymentSignature"},{"$ref":"#/components/parameters/Url"},{"$ref":"#/components/parameters/Amount"}],"requestBody":{"required":false,"description":"Optional JSON body mirror of the query inputs for agent invocation. Query/path parameters remain the canonical runtime contract.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"properties":{"url":{"type":"string","format":"uri"},"amount":{"type":"integer","minimum":0}}}}}},"responses":{"200":{"$ref":"#/components/responses/PaidSuccess"},"400":{"$ref":"#/components/responses/BadRequest"},"402":{"$ref":"#/components/responses/PaymentRequired"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/solana/cmcvote":{"post":{"operationId":"post_solana_cmcvote","tags":["Votes"],"summary":"CoinMarketCap Vote (POST)","description":"Public x402 endpoint: `/solana/cmcvote`.\n\nFlow kind: **paid** endpoint.\n\nFlow: call once **without** `PAYMENT-SIGNATURE` to receive `402 Payment-Required`; sign the requirement; retry the same URL **with** `PAYMENT-SIGNATURE` for `200`.\n\nUse `PAYMENT-SIGNATURE` for public routes (`/solana/*`, `/base/*`). `X-PAYMENT` is legacy/test context.\n\nPricing hint: `{\"currency\":\"USDC\",\"perUnit\":0.02,\"unit\":\"vote\"}`.\n\nDefaults: `{\"amount\":100,\"voteType\":\"skeleton_vote\"}`.\n\nLimits: `{\"amountMin\":5,\"amountMax\":250,\"voteTypeEnum\":[\"skeleton_vote\",\"moontok_vote\",\"majortrending_vote\",\"coingecko_vote\",\"coinmarketcap_vote\"]}`.\n\nEquivalent voteType for unified `/vote`: `coinmarketcap_vote`.","x-payment-info":{"protocols":["x402",{"x402":{"network":"solana","scheme":"exact","paymentHeader":"PAYMENT-SIGNATURE"}}],"price":{"mode":"dynamic","currency":"USD","description":"The live 402 challenge is the source of truth for the exact amount."},"pricingMode":"quote","challengeSource":"runtime","paymentHeader":"PAYMENT-SIGNATURE"},"parameters":[{"$ref":"#/components/parameters/PaymentSignature"},{"$ref":"#/components/parameters/Url"},{"$ref":"#/components/parameters/Amount"}],"requestBody":{"required":false,"description":"Optional JSON body mirror of the query inputs for agent invocation. Query/path parameters remain the canonical runtime contract.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"properties":{"url":{"type":"string","format":"uri"},"amount":{"type":"integer","minimum":0}}}}}},"responses":{"200":{"$ref":"#/components/responses/PaidSuccess"},"400":{"$ref":"#/components/responses/BadRequest"},"402":{"$ref":"#/components/responses/PaymentRequired"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/solana/cgvote":{"post":{"operationId":"post_solana_cgvote","tags":["Votes"],"summary":"CoinGecko Vote (POST)","description":"Public x402 endpoint: `/solana/cgvote`.\n\nFlow kind: **paid** endpoint.\n\nFlow: call once **without** `PAYMENT-SIGNATURE` to receive `402 Payment-Required`; sign the requirement; retry the same URL **with** `PAYMENT-SIGNATURE` for `200`.\n\nUse `PAYMENT-SIGNATURE` for public routes (`/solana/*`, `/base/*`). `X-PAYMENT` is legacy/test context.\n\nPricing hint: `{\"currency\":\"USDC\",\"perUnit\":0.02,\"unit\":\"vote\"}`.\n\nDefaults: `{\"amount\":100,\"voteType\":\"skeleton_vote\"}`.\n\nLimits: `{\"amountMin\":5,\"amountMax\":250,\"voteTypeEnum\":[\"skeleton_vote\",\"moontok_vote\",\"majortrending_vote\",\"coingecko_vote\",\"coinmarketcap_vote\"]}`.\n\nEquivalent voteType for unified `/vote`: `coingecko_vote`.","x-payment-info":{"protocols":["x402",{"x402":{"network":"solana","scheme":"exact","paymentHeader":"PAYMENT-SIGNATURE"}}],"price":{"mode":"dynamic","currency":"USD","description":"The live 402 challenge is the source of truth for the exact amount."},"pricingMode":"quote","challengeSource":"runtime","paymentHeader":"PAYMENT-SIGNATURE"},"parameters":[{"$ref":"#/components/parameters/PaymentSignature"},{"$ref":"#/components/parameters/Url"},{"$ref":"#/components/parameters/Amount"}],"requestBody":{"required":false,"description":"Optional JSON body mirror of the query inputs for agent invocation. Query/path parameters remain the canonical runtime contract.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"properties":{"url":{"type":"string","format":"uri"},"amount":{"type":"integer","minimum":0}}}}}},"responses":{"200":{"$ref":"#/components/responses/PaidSuccess"},"400":{"$ref":"#/components/responses/BadRequest"},"402":{"$ref":"#/components/responses/PaymentRequired"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/solana/moontokvote":{"post":{"operationId":"post_solana_moontokvote","tags":["Votes"],"summary":"Moontok Vote (POST)","description":"Public x402 endpoint: `/solana/moontokvote`.\n\nFlow kind: **paid** endpoint.\n\nFlow: call once **without** `PAYMENT-SIGNATURE` to receive `402 Payment-Required`; sign the requirement; retry the same URL **with** `PAYMENT-SIGNATURE` for `200`.\n\nUse `PAYMENT-SIGNATURE` for public routes (`/solana/*`, `/base/*`). `X-PAYMENT` is legacy/test context.\n\nPricing hint: `{\"currency\":\"USDC\",\"perUnit\":0.02,\"unit\":\"vote\"}`.\n\nDefaults: `{\"amount\":100,\"voteType\":\"skeleton_vote\"}`.\n\nLimits: `{\"amountMin\":5,\"amountMax\":250,\"voteTypeEnum\":[\"skeleton_vote\",\"moontok_vote\",\"majortrending_vote\",\"coingecko_vote\",\"coinmarketcap_vote\"]}`.\n\nEquivalent voteType for unified `/vote`: `moontok_vote`.","x-payment-info":{"protocols":["x402",{"x402":{"network":"solana","scheme":"exact","paymentHeader":"PAYMENT-SIGNATURE"}}],"price":{"mode":"dynamic","currency":"USD","description":"The live 402 challenge is the source of truth for the exact amount."},"pricingMode":"quote","challengeSource":"runtime","paymentHeader":"PAYMENT-SIGNATURE"},"parameters":[{"$ref":"#/components/parameters/PaymentSignature"},{"$ref":"#/components/parameters/Url"},{"$ref":"#/components/parameters/Amount"}],"requestBody":{"required":false,"description":"Optional JSON body mirror of the query inputs for agent invocation. Query/path parameters remain the canonical runtime contract.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"properties":{"url":{"type":"string","format":"uri"},"amount":{"type":"integer","minimum":0}}}}}},"responses":{"200":{"$ref":"#/components/responses/PaidSuccess"},"400":{"$ref":"#/components/responses/BadRequest"},"402":{"$ref":"#/components/responses/PaymentRequired"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"},"500":{"$ref":"#/components/responses/ServerError"}}}}},"components":{"parameters":{"PaymentSignature":{"name":"PAYMENT-SIGNATURE","in":"header","required":false,"description":"x402 v2 payment signature for public routes. Omit on first request to get `402 Payment-Required`; include on retry to settle.","schema":{"type":"string"}},"Url":{"name":"url","in":"query","schema":{"type":"string","format":"uri"},"description":"Target URL or profile URL."},"Amount":{"name":"amount","in":"query","schema":{"type":"integer","minimum":1},"description":"Requested amount/slots."},"Handle":{"name":"handle","in":"query","schema":{"type":"string"},"description":"Handle/username style target."},"Community":{"name":"community","in":"query","schema":{"type":"string"},"description":"X community URL or identifier."},"Instructions":{"name":"instructions","in":"query","schema":{"type":"string","maxLength":800},"description":"Optional custom instructions."},"Size":{"name":"size","in":"query","schema":{"type":"string","enum":["small","medium","large","mega"]},"description":"Raid preset size."},"Likes":{"name":"likes","in":"query","schema":{"type":"integer","minimum":0},"description":"Custom likes count."},"Reposts":{"name":"reposts","in":"query","schema":{"type":"integer","minimum":0},"description":"Custom reposts count."},"Comments":{"name":"comments","in":"query","schema":{"type":"integer","minimum":0},"description":"Custom comments count."},"Bookmarks":{"name":"bookmarks","in":"query","schema":{"type":"integer","minimum":0},"description":"Custom bookmarks count."},"Join":{"name":"join","in":"query","schema":{"type":"string"},"description":"Telegram join target (URL, @handle, invite)."},"Group":{"name":"group","in":"query","schema":{"type":"string"},"description":"Telegram group alias parameter."},"Invite":{"name":"invite","in":"query","schema":{"type":"string"},"description":"Discord invite URL/code."},"Address":{"name":"address","in":"query","schema":{"type":"string"},"description":"Base profile address (0x...)."},"VoteType":{"name":"voteType","in":"query","schema":{"type":"string","enum":["skeleton_vote","moontok_vote","majortrending_vote","coingecko_vote","coinmarketcap_vote"]},"description":"Vote type for unified `/vote` endpoint."},"TypeAlias":{"name":"type","in":"query","schema":{"type":"string","enum":["skeleton_vote","moontok_vote","majortrending_vote","coingecko_vote","coinmarketcap_vote"]},"description":"Alias of `voteType` for unified `/vote`."},"Action":{"name":"action","in":"query","schema":{"type":"string","enum":["create","view","recover"]},"description":"Action selector for agent-to-human."},"Secret":{"name":"secret","in":"query","schema":{"type":"string"},"description":"Secret/view key for submission retrieval."},"Description":{"name":"description","in":"query","schema":{"type":"string"},"description":"Task description for agent-to-human create."},"Winners":{"name":"winners","in":"query","schema":{"type":"integer","minimum":1,"maximum":100},"description":"Number of winners."},"PerUser":{"name":"perUser","in":"query","schema":{"type":"number","minimum":0.01},"description":"USDC reward per participant."},"Page":{"name":"page","in":"query","schema":{"type":"integer","minimum":1,"default":1},"description":"Page number for view responses."},"PageSize":{"name":"pageSize","in":"query","schema":{"type":"integer","minimum":1,"maximum":100,"default":50},"description":"Page size for view responses (max 100)."},"Requirement":{"name":"requirement","in":"query","schema":{"type":"string","enum":["tweetScoutScore:0","tweetScoutScore:10","tweetScoutScore:25","xMetricScore:75","xMetricScore:250","seekerUser","xBlueVerified"]},"description":"Optional single requirement selector for `agenttohumanadvanced`. Meaning: tweetScoutScore:* = Sorsa (formerly TweetScout) third-party X profile score; xMetricScore:* = WURK-generated X profile score (follower count, follower quality, profile signals); seekerUser = users in the Solana Seeker phone ecosystem; xBlueVerified = X account with a blue verified badge. Stricter requirements can reduce eligible participants and slow fill speed. Policy: tweetScoutScore:0 => max winners 100 + min perUser 0.02; tweetScoutScore:10 => max 75 + min 0.03; tweetScoutScore:25 => max 50 + min 0.05; xMetricScore:75 => max 100 + min 0.025; xMetricScore:250 => max 50 + min 0.05; xBlueVerified => max 50 + min 0.03; seekerUser => baseline only."},"HumanVerified":{"name":"human_verified","in":"query","schema":{"type":"string","enum":["yes","no"]},"description":"Optional proof-of-human gate powered by VeryAI palm verification. This can improve trust/quality on sensitive tasks but narrows eligible workers and may slow fill speed."},"CommunityAgentKey":{"name":"community","in":"query","schema":{"type":"string"},"description":"Optional WURK community agent key for `agenttohumanadvanced`. Invalid keys return `community key is niet geldig`; repeated invalid keys are rate limited."},"WinnersPath":{"name":"winners","in":"path","required":true,"schema":{"type":"integer","minimum":1,"maximum":5000},"description":"Winner/slot count in path alias. Range is endpoint-specific (commonly 1..100 for agent-help, 5..250 for most social jobs, up to 5000 for xviews)."},"SecretPath":{"name":"secret","in":"path","required":true,"schema":{"type":"string"},"description":"Secret/view key in path."},"LikesPath":{"name":"likes","in":"path","required":true,"schema":{"type":"integer","minimum":0},"description":"Custom likes path value."},"RepostsPath":{"name":"reposts","in":"path","required":true,"schema":{"type":"integer","minimum":0},"description":"Custom reposts path value."},"CommentsPath":{"name":"comments","in":"path","required":true,"schema":{"type":"integer","minimum":0},"description":"Custom comments path value."},"BookmarksPath":{"name":"bookmarks","in":"path","required":true,"schema":{"type":"integer","minimum":0},"description":"Custom bookmarks path value."}},"schemas":{"PaymentRequirement":{"type":"object","additionalProperties":true,"properties":{"scheme":{"type":"string"},"network":{"type":"string"},"maxAmountRequired":{"type":"string"},"resource":{"type":"string"},"description":{"type":"string"},"mimeType":{"type":"string"},"payTo":{"type":"string"},"asset":{"type":"string"},"maxTimeoutSeconds":{"type":"integer"},"extra":{"type":"object","additionalProperties":true}}},"PaymentRequiredResponse":{"type":"object","additionalProperties":true,"required":["x402Version","accepts","resource"],"properties":{"x402Version":{"type":"integer","example":2},"accepts":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/PaymentRequirement"}},"error":{"type":"string"},"resource":{"description":"Requested resource metadata echoed by payment middleware.","oneOf":[{"type":"string"},{"type":"object","additionalProperties":true}]},"extensions":{"type":"object","additionalProperties":true}}},"PaidSuccessResponse":{"type":"object","additionalProperties":true,"properties":{"ok":{"type":"boolean","example":true},"paid":{"type":"boolean","example":true},"alreadyConfirmed":{"type":"boolean","example":false},"message":{"type":"string"},"jobId":{"type":"string"},"statusUrl":{"type":"string","format":"uri"}}},"ErrorResponse":{"type":"object","additionalProperties":true,"properties":{"message":{"type":"string"},"error":{"type":"string"},"errorCode":{"type":"string","description":"Machine-readable application error code (when available)."},"retryAfterSeconds":{"type":"integer","description":"Retry-after hint in seconds for rate-limited requests."}}},"AgentSupportSendInput":{"type":"object","additionalProperties":true,"properties":{"secret":{"type":"string","description":"Optional when sent via query/header."},"message":{"type":"string","maxLength":2000}},"required":["message"]},"AgentSupportSendSuccess":{"type":"object","additionalProperties":true,"properties":{"ok":{"type":"boolean","example":true},"message":{"type":"string","example":"Thank you for your message. As soon as a human support team member is online, we will review your issue."},"messagesUrl":{"type":"string","format":"uri"}},"required":["ok","message","messagesUrl"]},"AgentSupportThreadMessage":{"type":"object","additionalProperties":true,"properties":{"id":{"type":"string"},"role":{"type":"string","enum":["agent","support"]},"message":{"type":"string"},"jobId":{"type":"string"},"customJobId":{"type":["string","null"]},"createdAt":{"type":"string","format":"date-time"}}},"AgentSupportMessagesSuccess":{"type":"object","additionalProperties":true,"properties":{"ok":{"type":"boolean","example":true},"wallet":{"type":"string"},"messages":{"type":"array","items":{"$ref":"#/components/schemas/AgentSupportThreadMessage"}}}},"PreselectionSecretInput":{"type":"object","additionalProperties":true,"properties":{"secret":{"type":"string","description":"Preselection job secret. Can also be supplied as query or `x-secret` header."},"page":{"type":"integer","minimum":1,"default":1}}},"PreselectionChooseWinnerInput":{"type":"object","additionalProperties":true,"properties":{"secret":{"type":"string","description":"Preselection job secret."},"submissionId":{"type":"string","pattern":"^[a-f0-9]{8,16}$","description":"Single submission short id from the view response."}},"required":["secret","submissionId"]},"PreselectionChatSendInput":{"type":"object","additionalProperties":true,"properties":{"secret":{"type":"string","description":"Preselection job secret."},"message":{"type":"string","maxLength":4000},"files":{"type":"array","maxItems":5,"items":{"type":"string","format":"uri"},"description":"Optional HTTPS file URLs."}},"required":["secret","message"]},"PreselectionActionSuccess":{"type":"object","additionalProperties":true,"properties":{"ok":{"type":"boolean","example":true},"jobId":{"type":"string"},"customId":{"type":"string"},"selectedWinner":{"type":["object","null"],"additionalProperties":true},"chat":{"type":"object","additionalProperties":true},"finalize":{"type":"object","additionalProperties":true},"payout":{"type":"object","additionalProperties":true,"properties":{"currency":{"type":"string","example":"alternative"},"ticker":{"type":"string","example":"WURK"},"contract":{"type":"string"},"amount":{"type":"number"}}},"hint":{"type":"string"}},"required":["ok"]},"AgentToHumanAdvancedChooseWinnersInput":{"type":"object","additionalProperties":true,"properties":{"secret":{"type":"string","description":"Advanced job secret for creator-mode winner selection."},"submissionIds":{"oneOf":[{"type":"array","minItems":1,"maxItems":100,"uniqueItems":true,"items":{"type":"string","pattern":"^[a-f0-9]{8,16}$"}},{"type":"string","description":"Comma-separated short ids (8..16 lowercase hex)."}],"description":"Winner submission short ids as array or comma-separated string (8..16 lowercase hex)."}},"required":["secret","submissionIds"]},"AgentToHumanAdvancedReviewSubmissionInput":{"type":"object","additionalProperties":true,"properties":{"secret":{"type":"string","description":"Job secret for submission review."},"submissionId":{"type":"string","pattern":"^[a-f0-9]{8,16}$","description":"Single submission short id from the view response."},"stars":{"type":"integer","minimum":1,"maximum":5,"description":"Star rating from 1 to 5."},"reviewText":{"type":["string","null"],"maxLength":2000,"description":"Optional text review."}},"required":["secret","submissionId","stars"]},"AgentToHumanAdvancedSubmitterProfileInput":{"type":"object","additionalProperties":true,"properties":{"secret":{"type":"string","description":"Job secret scoped to the submitter's job."},"accountId":{"type":"string","description":"Submitter account id from submissions payload."}},"required":["secret","accountId"]},"AgentToHumanAdvancedChooseWinnersSuccess":{"type":"object","additionalProperties":true,"properties":{"ok":{"type":"boolean","example":true},"jobId":{"type":"string"},"customId":{"type":"string"},"requested":{"type":"integer","minimum":1},"updated":{"type":"integer","minimum":0},"alreadyWinnerCountInRequest":{"type":"integer","minimum":0},"winnersNow":{"type":"integer","minimum":0},"winnerCap":{"type":"integer","minimum":1},"remainingSlots":{"type":"integer","minimum":0},"statusTransition":{"type":["string","null"]},"updatedSubmissionIds":{"type":"array","description":"Submission short ids that were newly marked as winners (8..16 lowercase hex).","items":{"type":"string","pattern":"^[a-f0-9]{8,16}$"}}},"required":["ok","jobId","requested","updated","winnersNow","winnerCap","remainingSlots"]},"AgentToHumanAdvancedReviewSubmissionSuccess":{"type":"object","additionalProperties":true,"properties":{"ok":{"type":"boolean","example":true},"jobId":{"type":"string"},"customId":{"type":"string"},"submissionId":{"type":"string","pattern":"^[a-f0-9]{8,16}$"},"stars":{"type":"integer","minimum":1,"maximum":5},"reviewText":{"type":["string","null"]},"reviewProcessed":{"type":"boolean","example":true},"agentReview":{"type":"boolean","example":true},"reviewAt":{"type":["string","null"],"format":"date-time"}},"required":["ok","jobId","customId","submissionId","stars","reviewProcessed","agentReview"]},"AgentToHumanAdvancedSubmitterProfileSuccess":{"type":"object","additionalProperties":true,"properties":{"ok":{"type":"boolean","example":true},"jobId":{"type":"string"},"customId":{"type":"string"},"accountId":{"type":"string"},"profile":{"type":"object","additionalProperties":true,"properties":{"rank":{"type":"integer","minimum":1},"nickname":{"type":["string","null"]},"memberSince":{"type":["string","null"],"format":"date-time"},"tweetScoutScore":{"type":["number","null"]},"humanVerified":{"type":"string","enum":["verified","not_verified"]}},"required":["rank","nickname","memberSince","tweetScoutScore","humanVerified"]},"reviews":{"type":"array","maxItems":20,"items":{"type":"object","additionalProperties":true,"properties":{"submissionId":{"type":"string","pattern":"^[a-f0-9]{8,16}$"},"customId":{"type":"string"},"workShortId":{"type":"string"},"stars":{"type":["number","null"]},"reviewText":{"type":["string","null"]},"reviewAt":{"type":["string","null"],"format":"date-time"},"submissionCreatedAt":{"type":["string","null"],"format":"date-time"},"agentReview":{"type":"boolean"},"jobDescription":{"type":"string"},"jobAttachmentUrls":{"type":"array","items":{"type":"string"}}}}},"cache":{"type":"object","additionalProperties":true,"properties":{"hit":{"type":"boolean"},"ttlSeconds":{"type":"integer","minimum":1}}}},"required":["ok","jobId","customId","accountId","profile","reviews"]}},"responses":{"PaymentRequired":{"description":"Payment required. Sign and retry with `PAYMENT-SIGNATURE` (public v2 flow).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaymentRequiredResponse"}}}},"PaidSuccess":{"description":"Operation accepted/completed (after settlement on paid routes, or immediately for free variants).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaidSuccessResponse"}}}},"BadRequest":{"description":"Invalid request input or malformed payment signature.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Unauthorized":{"description":"Unauthorized secret context.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"NotFound":{"description":"Requested resource, job, or secret could not be found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"TooManyRequests":{"description":"Rate limit exceeded for wallet-threaded support chat.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"SupportSendSuccess":{"description":"Support message accepted.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentSupportSendSuccess"}}}},"SupportMessagesSuccess":{"description":"Wallet-threaded support messages.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentSupportMessagesSuccess"}}}},"ChooseWinnersSuccess":{"description":"Creator-mode advanced winners selected successfully.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentToHumanAdvancedChooseWinnersSuccess"}}}},"ReviewSubmissionSuccess":{"description":"Submission review accepted successfully.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentToHumanAdvancedReviewSubmissionSuccess"}}}},"SubmitterProfileSuccess":{"description":"Submitter profile details and recent processed reviews.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentToHumanAdvancedSubmitterProfileSuccess"}}}},"Conflict":{"description":"Conflict with current state (for example, duplicate/similar running job).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"ServerError":{"description":"Unexpected server-side failure.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}}