-
Notifications
You must be signed in to change notification settings - Fork 980
Add Bullshot to x402 ecosystem #838
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Adds Bullshot project metadata for inclusion in the x402 ecosystem page. Bullshot integrates x402 to enable gas-free token trading in production.
🟡 Heimdall Review Status
|
|
@SadaqatETH is attempting to deploy a commit to the Coinbase Team on Vercel. A member of the Team first needs to authorize it. |
|
Hi there! Can you please walk me through how Bullshot is using x402? Is it to buy/sell tokens? If so, could you please provide link to docs that shows the available endpoints? I couldn't see a Doc link on the site and the Doc link from the repo (https://docs.bullshot.org/) lead to a 404 Thanks! |
|
Hi there,
Thanks for reaching out. Bullshot uses x402 to power gasless buy/sell flows. Users sign an authorization; our relayer validates the signature, executes on-chain, and covers gas.
Docs (public, no secrets):
* Documentation page: https://bullshot.io/documentation (shows flow, safety, and placeholder routes)
*
Live token example (for UI/flow reference): https://bullshot.io/tokens/0xE35Ce0BfF90f4867E6DFA40CbD44693f50a701dE (UI only, no keys exposed)
Source Endpoint placeholders (hosts/keys kept private):
* POST /api/execute-buy – accept signed authorization and execute buy (relayer pays gas)
* POST /api/execute-sell – accept signed authorization and execute sell (relayer pays gas)
* GET /api/transactions/{nonce} – status polling (pending/success/failed/recovered)
If you’d like, I can also share the private host details and any additional integration notes directly for review.
Best,
Best regards,
Engr Sadaqat Ullah Khan
Email: ***@***.******@***.***>
…________________________________
From: Ash ***@***.***>
Sent: Tuesday, December 23, 2025 1:57 AM
To: coinbase/x402 ***@***.***>
Cc: Sadaqat ETH ***@***.***>; Mention ***@***.***>
Subject: Re: [coinbase/x402] Add Bullshot to x402 ecosystem (PR #838)
[https://avatars.githubusercontent.com/u/105402607?s=20&v=4]Must-be-Ash left a comment (coinbase/x402#838)<#838 (comment)>
Hi there! Can you please walk me through how Bullshot is using x402? Is it to buy/sell tokens? If so, could you please provide link to docs that shows the available endpoints? I couldn't see a Doc link on the site and the Doc link from the repo (https://docs.bullshot.org/) lead to a 404
Thanks!
—
Reply to this email directly, view it on GitHub<#838 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AZNV6V56CJKQ3CWJKPHTH6L4DBLLPAVCNFSM6AAAAACPXFRFOGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTMOBUGEZDMNBSG4>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
|
Hi @SadaqatETH, thanks for the update but the usage of x402 remains unclear. Also this statement from your docs: doesn't sound like a typical x402 pattern, where approval is per request.
Just having a relayer paying for gas doesnt make it x402. If your "facilitator" deviates from the spec it isn't compatible with all other clients and facilitators. |
|
Hi, thank you for the detailed review and for pointing these gaps out — we appreciate the scrutiny.
Let me clarify and update you on the current state of our x402 implementation:
1. x402 Endpoint / 402 Response
You’re correct to ask for a concrete example.
Our x402-compliant endpoint is now live at:
👉 https://x.bullshot.io/x402/premium-data
This endpoint returns a 402 Payment Required response when accessed without a valid x402 payment payload, following the x402 flow.
2. “Approve Once” Statement
Good catch — this was indeed misleading and not aligned with the x402 pattern.
We have fixed this behavior and updated our code:
* Approval is now performed per transaction / per request
* No persistent “approve once” model is used anymore
* This now matches the expected x402 authorization flow
We’ve also updated our internal docs accordingly.
3. Authorization Being Signed
The signed authorization corresponds to the x402 payment authorization payload, used by the facilitator to validate and relay the transaction before granting access to the protected resource.
No custom or proprietary signing scheme is used beyond the x402-defined flow.
4. Tokens & Networks / EIP-3009 Compatibility
You’re absolutely right that the current x402 reference implementation relies on EIP-3009.
To align with this:
* We are currently supporting USDC on BSC
* We explicitly migrated from USDT to USDC to ensure EIP-3009 compatibility
* Non-EIP-3009 tokens are not used in our x402 flow at this time
5. Facilitator Compatibility
We fully agree with your point: simply relaying gas does not make something x402.
Following your feedback, we’ve ensured that our facilitator does not deviate from the x402 spec, so the flow remains compatible with other x402 clients and facilitators.
…________________________________
Thanks again for the feedback — it helped us tighten our implementation and bring it fully in line with the spec.
If you’d like us to validate this against any specific x402 client or test scenario, we’re happy to do so.
Best regards,
Engr Sadaqat Ullah Khan
Email: ***@***.******@***.***>
________________________________
From: phdargen ***@***.***>
Sent: Tuesday, December 23, 2025 6:33 PM
To: coinbase/x402 ***@***.***>
Cc: Sadaqat ETH ***@***.***>; Mention ***@***.***>
Subject: Re: [coinbase/x402] Add Bullshot to x402 ecosystem (PR #838)
[https://avatars.githubusercontent.com/u/29732335?s=20&v=4]phdargen left a comment (coinbase/x402#838)<#838 (comment)>
Hi @SadaqatETH<https://github.com/SadaqatETH>, thanks for the update but the usage of x402 remains unclear.
I couldn't find anything related to x402 in the repo you shared.
Also this statement from your docs:
02
Approve Once
Approve spend for stablecoin. One-time per wallet/token.
doesn't sound like a typical x402 pattern, where approval is per request.
* Could you please provide any endpoint that would return a 402 response according to the specs?
* Could you please clarify what kind of authorization is signed?
* Which tokens and networks are supported for trading? The x402 reference implementation currently only supports EIP-3009 tokens via the exact scheme<https://github.com/coinbase/x402/blob/main/specs/schemes/exact/scheme_exact_evm.md>, how do you handle non-EIP-3009 tokens?
Just having a relayer paying for gas doesnt make it x402. If your "facilitator" deviates from the spec<https://github.com/coinbase/x402/blob/main/specs/x402-specification-v2.md> it isn't compatible with all other clients and facilitators.
—
Reply to this email directly, view it on GitHub<#838 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AZNV6V6ULH7JEQMCQVKB6NL4DFAD5AVCNFSM6AAAAACPXFRFOGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTMOBWGY2TEMBSG4>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
|
Hi, just following up on my previous information regarding the x402 clarifications and updated endpoint shared.
Please let me know if you had a chance to review it, or if any additional details are needed from our side.
Best regards,
Engr Sadaqat Ullah Khan
Email: ***@***.******@***.***>
…________________________________
From: Engr Sadaqath ***@***.***>
Sent: Wednesday, December 24, 2025 9:20 PM
To: coinbase/x402 ***@***.***>; coinbase/x402 ***@***.***>
Cc: Mention ***@***.***>
Subject: Re: [coinbase/x402] Add Bullshot to x402 ecosystem (PR #838)
Hi, thank you for the detailed review and for pointing these gaps out — we appreciate the scrutiny.
Let me clarify and update you on the current state of our x402 implementation:
1. x402 Endpoint / 402 Response
You’re correct to ask for a concrete example.
Our x402-compliant endpoint is now live at:
👉 https://x.bullshot.io/x402/premium-data
This endpoint returns a 402 Payment Required response when accessed without a valid x402 payment payload, following the x402 flow.
2. “Approve Once” Statement
Good catch — this was indeed misleading and not aligned with the x402 pattern.
We have fixed this behavior and updated our code:
*
Approval is now performed per transaction / per request
*
No persistent “approve once” model is used anymore
*
This now matches the expected x402 authorization flow
We’ve also updated our internal docs accordingly.
3. Authorization Being Signed
The signed authorization corresponds to the x402 payment authorization payload, used by the facilitator to validate and relay the transaction before granting access to the protected resource.
No custom or proprietary signing scheme is used beyond the x402-defined flow.
4. Tokens & Networks / EIP-3009 Compatibility
You’re absolutely right that the current x402 reference implementation relies on EIP-3009.
To align with this:
*
We are currently supporting USDC on BSC
*
We explicitly migrated from USDT to USDC to ensure EIP-3009 compatibility
*
Non-EIP-3009 tokens are not used in our x402 flow at this time
5. Facilitator Compatibility
We fully agree with your point: simply relaying gas does not make something x402.
Following your feedback, we’ve ensured that our facilitator does not deviate from the x402 spec, so the flow remains compatible with other x402 clients and facilitators.
________________________________
Thanks again for the feedback — it helped us tighten our implementation and bring it fully in line with the spec.
If you’d like us to validate this against any specific x402 client or test scenario, we’re happy to do so.
Best regards,
Engr Sadaqat Ullah Khan
Email: ***@***.******@***.***>
________________________________
From: phdargen ***@***.***>
Sent: Tuesday, December 23, 2025 6:33 PM
To: coinbase/x402 ***@***.***>
Cc: Sadaqat ETH ***@***.***>; Mention ***@***.***>
Subject: Re: [coinbase/x402] Add Bullshot to x402 ecosystem (PR #838)
[https://avatars.githubusercontent.com/u/29732335?s=20&v=4]phdargen left a comment (coinbase/x402#838)<#838 (comment)>
Hi @SadaqatETH<https://github.com/SadaqatETH>, thanks for the update but the usage of x402 remains unclear.
I couldn't find anything related to x402 in the repo you shared.
Also this statement from your docs:
02
Approve Once
Approve spend for stablecoin. One-time per wallet/token.
doesn't sound like a typical x402 pattern, where approval is per request.
* Could you please provide any endpoint that would return a 402 response according to the specs?
* Could you please clarify what kind of authorization is signed?
* Which tokens and networks are supported for trading? The x402 reference implementation currently only supports EIP-3009 tokens via the exact scheme<https://github.com/coinbase/x402/blob/main/specs/schemes/exact/scheme_exact_evm.md>, how do you handle non-EIP-3009 tokens?
Just having a relayer paying for gas doesnt make it x402. If your "facilitator" deviates from the spec<https://github.com/coinbase/x402/blob/main/specs/x402-specification-v2.md> it isn't compatible with all other clients and facilitators.
—
Reply to this email directly, view it on GitHub<#838 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AZNV6V6ULH7JEQMCQVKB6NL4DFAD5AVCNFSM6AAAAACPXFRFOGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTMOBWGY2TEMBSG4>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
|
Hey hello mates , happy new year , is there any update about this , we are still waiting for your update about our integration !! |
|
Hey @SadaqatETH, The endpoint you provided (https://x.bullshot.io/x402/premium-data) does not return a valid x402 response. Not for x402 v1 or v2. Given:
I do not believe this project meets the requirements to be considered an x402 ecosystem project at this time. Closing for now. Once the project is fully integrated with x402, and that integration can be proven, we can re-open the PR and revisit. |
Overview
Bullshot is a live decentralized token launchpad and trading platform that integrates x402 to enable gas-free token trading using bonding curve mechanics.
This PR adds Bullshot to the x402 ecosystem as a Client-Side Integration.
x402 Usage
Links
Status