# Trench > Developer documentation for the Trench Partner API — connect users, trade, and participate in token governance on Solana via OAuth 2.0. ## Docs - [Proposal Endpoints](https://partner.tren.ch/api-reference/governance-propose.md): Create metadata change proposals, extend the mutability window, finalize metadata, and withdraw proposal bonds. Requires the governance:propose scope. - [Governance Read Endpoints](https://partner.tren.ch/api-reference/governance-read.md): Read a token's governance config, its proposals, the connected user's votes, and the voter list for a single proposal. No scope required. - [Voting Endpoints](https://partner.tren.ch/api-reference/governance-vote.md): Cast, cancel, and withdraw governance votes, and settle a closed proposal. Requires the governance:vote scope. - [GET /partner/v1/me](https://partner.tren.ch/api-reference/me.md): Read the connected Trench user, your client ID, and the scopes the presented access token carries. - [POST /oauth/revoke](https://partner.tren.ch/api-reference/oauth-revoke.md): Revoke a Trench access or refresh token. Which token you send determines whether one token or the whole connection is revoked. - [POST /oauth/token](https://partner.tren.ch/api-reference/oauth-token.md): Exchange an authorization code for a token pair, or rotate a refresh token. Authenticated with your client ID and an API key. - [API Reference](https://partner.tren.ch/api-reference/overview.md): Every Trench OAuth and Partner API endpoint in one index, with the scope each one requires, its rate limit, and the conventions shared across all of them. - [Trade Endpoints](https://partner.tren.ch/api-reference/trades.md): Buy, buy exact out, and sell on behalf of a connected user, on the Trench bonding curve or the Raydium pool the token migrated to. - [Amount Conventions and Base Units](https://partner.tren.ch/concepts/amounts.md): Every amount in the Trench Partner API is an integer string in base units. Lamports for SOL, 1e6 units for tokens, plus priority fee and tip minimums. - [Tokens, Refresh, and Revocation](https://partner.tren.ch/concepts/authentication.md): Trench Partner API credentials: what each one does, how long it lives, how rotation works, and the reuse conditions that revoke a connection outright. - [Error Codes and Handling](https://partner.tren.ch/concepts/errors.md): Stable error codes returned by the Trench Partner API, grouped by auth, trading, governance, and validation, with the meaning of each. - [Partner Fees](https://partner.tren.ch/concepts/partner-fees.md): Charge your own fee on any trade with partnerFeeBps, paid to a wallet you register with Trench in the same transaction as the trade. - [Rate Limits](https://partner.tren.ch/concepts/rate-limits.md): The two rate limit layers on the Trench Partner API: your app's tier budget and the per-endpoint limits, how each bucket is keyed, and request size ceilings. - [Registering Your App](https://partner.tren.ch/concepts/registration.md): Register your app yourself in the Trench partner portal. Covers tiers, API keys and rotation, redirect URIs, volume caps, and fee wallets. - [OAuth Scopes and What They Grant](https://partner.tren.ch/concepts/scopes.md): The Trench Partner API scope registry, exactly which endpoint each scope gates, and why governance reads require no scope at all. - [Security Requirements](https://partner.tren.ch/concepts/security.md): Non-negotiable security requirements for Trench Partner API integrations: API key handling, PKCE and state verification, token storage, and refresh discipline. - [Connect a User](https://partner.tren.ch/guides/connect-flow.md): Open the Trench consent popup with PKCE, relay the authorization code from your callback, and exchange it for a token pair on your backend. - [Read and Participate in Governance](https://partner.tren.ch/guides/governance.md): Read proposals, tallies, and the connected user's own votes without a scope, then cast votes and create proposals with the governance write scopes. - [Trade on Behalf of a User](https://partner.tren.ch/guides/trading.md): Execute buys, exact-out buys, and sells on behalf of a connected Trench user, set slippage, handle migrated tokens, and charge your own fee. - [Trench Partner API](https://partner.tren.ch/introduction.md): Connect Trench users to your app and trade or vote on their behalf, without touching their keys. - [Quickstart](https://partner.tren.ch/quickstart.md): Go from registering an app to a confirmed on-chain buy in five steps.