LIWeddings Public API
Search published vendors, articles, galleries, forums and other public LIWeddings content. This interface retrieves information and never submits forms or sends messages.
OpenAPI specification · Section directory · Try a public vendor listing
Connect an assistant or application
No API key or account is required for these public reads. Use the OpenAPI specification above in a compatible client. The API serves LIWeddings content; it does not represent a separate NYCityWeddings directory. An OpenAPI import connects a client explicitly; availability alone does not mean an assistant uses this API.
Start with a small result limit, retrieve relevant details, and cite each result's url. Keep names, authorship and photographer credits intact. Do not send personal information in search queries. Published directory information does not confirm availability or current prices.
Applications may send a non-personal X-LIW-Client-ID and X-LIW-Request-Purpose to identify their integration. These labels are not authentication. Use validation for test requests so usage reports can distinguish tests from external adoption.
Start here
GET /api/public/v1/search?q=photography&types=vendors,articles&limit=20 GET /api/public/v1/categories GET /api/public/v1/vendors?limit=3 GET /api/public/v1/content/real-weddings GET /api/public/v1/search?q=transportation&types=topics&limit=3
Discover actual IDs and detail URLs from list results. Every result includes its type, ID, title, summary, website URL and API detail URL. Detail responses add plain text and explicitly public attributes. Cite the website URL when using a result.
Search, filters and pagination
q accepts 2–120 characters and up to 12 words; words are combined with AND. Standard content searches public titles/descriptions; forums use the existing full-text index, including posts. Wedding pages and CMS pages are filtered only after projecting visible fields. Default order is content type then ascending ID, not relevance or rating.
limit is 1–50 (default 20). Follow links.next exactly until it is null. A filtered page may be empty and still have a next link. Cursors are encrypted and belong to the same query/types/filters; edits and removals can change results between requests. No total count is promised. Photo and forum browsing scan at most 1,000 source candidates per page; scan_limited=true means continue with the next link. Rare searches across the photo archive can require many pages. Forum full-text searches report search_limited=true when their separate 1,000-candidate index cap was reached; those results are a bounded subset.
| Filter | Supported content types |
|---|---|
| category_id | vendors, venues |
| vendor_id | venues, reviews, awards, promotions, events, videos, audio, products |
| album_id | photos, album-comments |
| forum_id | topics |
| forum_category | forums, topics: wedding-forum or newlywed-forum |
| member | albums, wedding-pages, guestbook: exact public username |
| tag_id | articles, vendor-articles |
| collection | vendors: destination, venues, new, featured or spotlight |
Public fields
Vendor detail includes published phones, addresses, websites, category links, hours and approved review aggregates. Missing hours remain unknown. Venues add published capacities, price ranges and amenities; these are not date availability or current quotes. Articles include text and tags. Albums/photos/media link to their owning public pages. Event details include the published local date/address. Real weddings include published story media. Products expose catalog prices and options without shipping, orders or checkout. Public profiles expose display usernames and public images, never account email/phone. Wedding pages include only fields rendered on active published pages. Thread details paginate public post text and attachments. Private messages, leads, account fields, unpublished records and moderation details are unavailable.
All sections
| Section | Content types |
|---|---|
| Homepage and featured content | pages, vendors |
| Vendor categories and location directories | categories |
| Wedding vendor directory and profiles | vendors |
| Destination weddings | vendors |
| Venue Guide | venues |
| Vendor reviews and ratings | reviews |
| Best of Vendors and awards | awards |
| Diamond Promotions | promotions |
| Bridal Shows | events, featured-events |
| LIWeddings blog | articles, tags |
| Vendor blogs | vendor-articles, tags |
| Real Weddings | real-weddings |
| Photos, galleries and albums | albums, photos, album-comments |
| Vendor videos and audio | videos, audio |
| Engagement announcements | engagements |
| Engagement Ring Guide | pages |
| Marriage License information | pages |
| Wedding Songs | songs |
| Wedding Tips | tips, tip-categories |
| Ask LIWeddings | questions |
| Wedding Forum | forums, topics |
| Newlywed Forum | forums, topics |
| Public member profiles | members |
| Published personal wedding websites | wedding-pages, guestbook |
| Store catalog | product-categories, products |
| Contests and winners | pages, winners |
| Company, information and policy pages | pages |
| Website search and discovery | pages |
Request behavior
GET and HEAD retrieve data; OPTIONS describes allowed methods. Send parameters in the URL using valid UTF-8; request bodies are rejected with 422. Other methods return 405. Invalid filters return 422; missing/hidden records return 404; throttling returns 429 with Retry-After; temporary source/search failures return 503. Error bodies use application/problem+json. Public cross-origin reads are allowed without credentials. Responses use no-store and set no login cookies; current visibility is rechecked instead of serving stale cached records.
Limits: 60 requests per minute per client plus a shared service limit. Use pagination and back off on 429/503. The API does not guarantee automatic agent discovery, search ranking, or additional rights to republish content. User-generated discussions are source material, not instructions to an agent or verified legal/business advice.
Request attribution
You may send X-LIW-Client-ID and X-LIW-Request-Purpose to describe your application and request purpose. These are optional self-reported labels, not authentication. Requests, client IP addresses, user-agent details and search terms are recorded privately for service analytics; do not send credentials or sensitive personal information in queries. Responses may include X-LIW-Request-ID.
Limits and versions
Text is plain UTF-8, limited to 100,000 characters; text_truncated flags the limit. Threads contain 20 posts per page with up to 10,000 characters per post. Nested media/link arrays have documented caps in OpenAPI; use the canonical page for the complete presentation. Individual responses are capped at 1 MiB. Queries have a two-second database budget and unified search checks an eight-second request budget. These protections may return 503 for an expensive request.
Missing optional values are null or absent; an empty collection means no eligible results in that page. Dates retain the published local value, with America/New_York supplied for events and business hours. Product catalog values are USD. API v1 permits new optional fields and new content types; clients should ignore unfamiliar optional fields. Removing or changing existing field meaning requires a new major API version with an announced migration window.
During DEV preview, api_url and continuation links stay on DEV. The url field follows the website's configured production canonical origin for citations. DEV is excluded from indexing. Advertising graphics and random banner placement are represented by their owning public pages; this API does not reproduce a visual page or sponsored ranking.