# LinkSwap > LinkSwap is a free link exchange marketplace for indie founders, site owners, and SEO professionals. The current release implements a public REST API for site submission, domain ownership verification, a searchable marketplace of verified listings, rule-based partner matching, and a link exchange workflow with crawler-verified link placement on both sides. Daily dropped-link monitoring, language-model reranking, and the MCP endpoint are on the roadmap and are not enabled on this deployment. Site: https://linkswap.click Interface language: English. Listed websites may be in any language; each listing carries a content_language field. ## Live today - GET /api/v1/categories lists the marketplace taxonomy: every category slug, display name, group, alias, verified-site count, and landing page, plus a free-text resolution preview with ?q= (for example ?q=an%20ai%20newsletter resolves to ai-tools). Use it before submitting so a category value never has to be guessed. - POST /api/v1/sites submits a domain and returns a one-time control token, a verification token, and machine-readable next_action instructions. No user account is required. The category field accepts a slug, a display name, or free text; unmatched text is stored as a reviewable suggestion and the listing is filed under "other". Optional favicon_url and preview_image_url (https only) control the icon and screenshot shown on the listing. Humans can run the identical workflow with the browser form at https://linkswap.click/submit. - POST /api/v1/sites/{id}/verify checks for that token as a meta tag, a file under /.well-known/, or a DNS TXT record. Only verified sites become public. This write requires the one-time control token in the X-Control-Token header. - GET /api/v1/sites/{domain} returns a public listing: category, content language, DR, LS Score, link slots, dropped-link count, and verification method. - GET /api/v1/matches returns up to ten verified sites ranked by category, complementary topic, language, authority proximity, trust score, and link history, each with a written reason. This is deterministic rule scoring; no language model is called. - GET /api/v1/status?domain=example.com reports verification state, public visibility, active exchange count, the last recorded link check, and the live capability list. - POST /api/v1/exchanges proposes a swap. The requester is inferred from the X-Control-Token; the target must be an ownership-verified listing. A request expires after seven days without acceptance, and only one active exchange is allowed per site pair. - GET /api/v1/exchanges?domain=example.com lists every exchange involving one domain. This read is public and never returns the private request note. - POST /api/v1/exchanges/{id}/accept accepts a proposal. Only the target site's control token is accepted. - POST /api/v1/exchanges/{id}/confirm reports a placed link. page_url must be on the reporting site's own registered domain; LinkSwap fetches the page, verifies an anchor pointing at the partner, and records the result. Both sides must be verified before the exchange reaches completed. - /marketplace filters verified sites by category, content language, search term, LS Score, DR, and dropped-link history. /categories/ pages list the sites in one topic. /sites/ is one page per listed domain. /dashboard?domain= shows that site's exchange requests. ## On the roadmap (not enabled) - Daily monitoring of completed exchanges, detection of removed anchors and nofollow switches, and the seven-day grace period are step 7. Placement checks currently run only when a party reports a link. - DeepSeek reranking of match candidates and three-way exchange rings are step 5. - The Streamable HTTP MCP endpoint at /api/mcp is step 8. It currently returns HTTP 501; the REST API is the supported agent interface today. ## What LinkSwap does not do - LinkSwap does not sell backlinks, guarantee rankings, or place links on a site's behalf. - LinkSwap does not recommend large-scale reciprocal linking. Excessive or manipulative link exchanges can violate Google's spam policies; site owners remain responsible for their own link profile. - LinkSwap does not require a user account for API submissions. A per-site control token acts as the credential for write endpoints; all GET endpoints are public. - LinkSwap does not expose pending, unverified submissions in the marketplace, in site profiles, or in sitemap.xml. - LinkSwap does not send email or place links on a site's behalf. Exchange state and machine-readable next_action instructions are the only notification channel on this deployment. - LinkSwap does not support three-way exchanges or weekly swap caps yet; both are planned safeguards. ## For AI agents - [Add your site (browser form)](https://linkswap.click/submit): the human submission path — same REST workflow, no account, one-click verification check. - [Agent quickstart and capability list](https://linkswap.click/for-agents): live vs planned endpoints, REST quickstart, exchange lifecycle, and the agent contract. - [Exchange workflow guide](https://linkswap.click/for-agents#exchanges): the seven states, the four exchange endpoints, and the crawler confirmation rules. - [OpenAPI 3.1 specification](https://linkswap.click/openapi.json): machine-readable REST contract with an x-status field on every operation. - [Dashboard](https://linkswap.click/dashboard): look up a domain's verification and listing state in a browser. - [agents.txt](https://linkswap.click/agents.txt): machine-readable access and capability notes. - [llms.txt source](https://linkswap.click/llms.txt): this file. ## Key facts - Price: submitting a site and browsing the marketplace are free. - Ownership proof: 3 publishable channels (meta tag, /.well-known/ file, DNS TXT record); a LinkSwap badge on the homepage also satisfies ownership when it contains the token. - Live REST capabilities: 10 (list categories, submit, verify, read listing, matches, status, create exchange, list exchanges, accept, confirm placement). - Exchange states: proposed, accepted, linking, completed, monitoring, broken, expired. A proposed request expires after 7 days; both sides need a crawler-verified link to complete. - Marketplace categories: 14, each with a /categories/ landing page. The category field also accepts display names and free text resolved by alias and keyword matching. A category page is indexed only after it holds at least 5 verified listings. - Errors are machine-readable: every error response includes a next_action field. - Authentication: GET endpoints and POST /api/v1/sites need no credentials; POST /api/v1/sites/{id}/verify and all three exchange writes require X-Control-Token. - Submissions are idempotent: a repeated request_key never creates a duplicate listing. - Daily submission quota: 5. Usage is counted per X-API-Key when supplied, otherwise per client IP address; an API key scopes the counter and does not raise the limit. - Content is published first and reviewed asynchronously; clearly illegal content is removed automatically. - Recommended link attributes for new placements: rel="ugc nofollow". The crawler records the rel value found on the page; three-way exchanges and weekly swap caps are planned safeguards. ## Browse - [Marketplace](https://linkswap.click/marketplace): filter ownership-verified sites by category, content language, search term, LS Score, DR, and public dropped-link history. - [Site profiles](https://linkswap.click/sites/example.com): one page per listed domain at /sites/, showing category, language, DR, LS Score, link slots, and dropped-link history. - [Category pages](https://linkswap.click/categories/ai-tools): /categories/ landing pages for each of the 14 topics. - [Homepage](https://linkswap.click/): product overview, monitoring example output, FAQ, and Google-safe linking guidance. - [Terms and reporting](https://linkswap.click/terms): verification rules, content policy, and how to report a listing. - [FAQ](https://linkswap.click/#faq): reciprocal linking and Google guidelines, ownership verification, dropped links, pricing, agent submissions, non-English websites. - Development dataset: listings shown while the network is growing are seeded sample records, labelled as such on the page. They are illustrative, not live inventory.