# Linden Lab > Linden Lab is the San Francisco company behind Second Life, the user-built 3D > virtual world it has operated continuously since 2003. Its public API surface is > small, old, and unusually honest about what it is: a handful of documented HTTP > endpoints on wiki.secondlife.com, no OpenAPI, no SDK, and no developer plan. > Generated by API Evangelist from probes and documentation gathered 2026-08-25. > Not published by Linden Lab. https://apievangelist.com ## What is and is not Linden Lab Linden Lab operates Second Life. It no longer operates Tilia: Tilia LLC, its payments subsidiary and the operator of the Tilia Pay API, was sold to Thunes under an agreement announced 2024-04-23 and has been rebranded to Thunes. tilia.io is not a Linden Lab API and is excluded from this profile. Sansar was divested in 2020. ## Machine-readable contracts There are none. No OpenAPI, no AsyncAPI, no GraphQL schema, no gRPC .proto, no WSDL, no /.well-known/ document on any host. This was established by probing /openapi.json, /openapi.yaml, /swagger.json, /v1/openapi.json, /api-docs, /docs and /redoc against api.secondlife.com, create.secondlife.com, secondlife.com and lindenlab.com; by POSTing an introspection query to /graphql; and by GitHub code search across the secondlife org. All missed. The APIs below are real and live — they are simply documented in prose on a MediaWiki. ## APIs - [Live Data Feeds](https://wiki.secondlife.com/wiki/Linden_Lab_Official:Live_Data_Feeds): Anonymous, unauthenticated grid statistics and L$ currency-market data. `GET https://api.secondlife.com/datafeeds/homepage.txt` (text), `homepage.xml` (LLSD), `secondlife.xml` (plain XML), `lindex.txt` / `lindex.xml` (LindeX market). Signups update daily, the inworld count every 3 minutes, LindeX every 15 minutes. The `.txt` format is unusual: a field name on one line, its value on the next. - [Name to Agent ID API](https://wiki.secondlife.com/wiki/Name_to_agent_ID_API): `POST https://api.secondlife.com/get_agent_id` with an `api-key` header and a JSON body `{"username": "...", "lastname": "..."}`; returns the avatar UUID. Keys are issued at https://accounts.secondlife.com/manage_api_key. Limited to 2 requests per second; exceeding it returns 403. - [Registration API](https://wiki.secondlife.com/wiki/Linden_Lab_Official:Registration_API): Create Second Life accounts from your own site. Capability-based — POST credentials to `https://cap.secondlife.com/get_reg_capabilities` to receive per-operation capability URLs (`create_user`, `check_name`, `add_to_group`, `get_last_names`, `get_error_codes`). LLSD XML request/response. Access is by application: https://wiki.secondlife.com/wiki/Linden_Lab_Official:Registration_API_Request_Form - [Map API](https://wiki.secondlife.com/wiki/Linden_Lab_Official:Map_API): Embeddable Leaflet-based Second Life map for web pages, plus two JSONP capability endpoints on cap.secondlife.com for region-name and global-coordinate lookup. - [Inventory API](https://wiki.secondlife.com/wiki/Linden_Lab_Official:Inventory_API): LLSD, viewer-facing. Capability URLs (`FetchInventory2`, `FetchInventoryDescendents2`, `FetchLib2`, `FetchLibDescendents2`) are issued to the viewer at login; not reachable by a third party. - [Marketplace Automatic Notification System](https://wiki.secondlife.com/wiki/Direct_Delivery_and_Automatic_Notification_System): Outbound webhook. Every Marketplace sale is forwarded to a merchant-configured URL with a `X-ANS-Verify-Hash` SHA1 header. Event types: `Purchase`, `Redelivery`. ## Operational surfaces - [Status page](https://status.secondlifegrid.net/) — machine-readable via `https://status.secondlifegrid.net/api/v2/status.json`, `/api/v2/summary.json` and `/history.rss` (Atlassian Statuspage v2). - [Release notes](https://releasenotes.secondlife.com/) — viewer and simulator. - [Viewer releases](https://github.com/secondlife/viewer/releases) — tagged several times a week. ## Documentation - [Creator docs (LSL and SLua scripting)](https://create.secondlife.com/script/) - [LSL reference](https://create.secondlife.com/script/lsl-reference/) - [APIs and Web Services Portal](https://wiki.secondlife.com/wiki/APIs_and_Web_Services_Portal) - [Category:APIs](https://wiki.secondlife.com/wiki/Category:APIs) - [API Terms of Use](https://wiki.secondlife.com/wiki/Linden_Lab_Official:API_Terms_of_Use) ## First-party packages None wrap the web APIs. What Linden Lab publishes is platform tooling: `llsd` (PyPI 1.2.4), `llbase` (PyPI 1.3.1), `llsd-asgi` (PyPI 0.2.2), `autobuild` (PyPI 3.10.2), and the `lindenlab.sl-vscode-plugin` VS Code extension (1.0.6). Source: https://github.com/secondlife ## Testing Aditi, the Second Life Preview Grid (`secondlife.aditi.lindenlab.com`), is a full parallel copy of the world where any account holder can test; new Aditi accounts receive L$50,000 of test currency and nothing can be moved back to the production grid. There is no test mode for the web APIs — the Registration API creates real accounts on the production grid. ## What an agent should know before integrating - There is no idempotency key, no pagination, no rate-limit response header, and no consistent error envelope across the surface. The two documented APIs return errors in two different shapes. - Every response from api.secondlife.com carries an undocumented `x-ll-request-id`. It is the only tracing handle available. - No reversal operation is published for any write. Account creation cannot be undone through the API. - The API Terms state Linden Lab "may amend these API Terms at any time in its sole discretion, with or without notice". There is no deprecation policy and no SLA. - `api.secondlife.com` answers every unrecognised path with a 403 that names the wiki portal, so a 403 there means "no such endpoint", not "forbidden". ## Company - [Linden Lab](https://lindenlab.com/) - [Second Life](https://secondlife.com/) - [Terms of Service](https://lindenlab.com/tos) - [Privacy Policy](https://lindenlab.com/privacy) - [News and media](https://lindenlab.com/press) - [Support / knowledge base](https://lindenlab.freshdesk.com/support/home) - [GitHub](https://github.com/secondlife)