SocialLoop docs
Agent API
Two public HTTP endpoints, no authentication on either. GET /api/events finds public upcoming events for someone looking for something to attend. POST /agent runs everything else — creating a draft requires no account; it returns a claim link the user opens to publish. Prefer a native connector? See the MCP docs.
1. Find events (no account, no key)
The attendee-side read, as a plain GET — for the question “what’s on in San Francisco this weekend?”. It returns only events a host published for discovery (drafts, cancelled and suspended events are never included, and no guest data is exposed), and each result carries the canonical page to RSVP or buy on. Identical in result shape to POST /agent with tool: "discover_events".
GET https://socialloop.ai/api/events?city=San%20Francisco&free_only=true
# All params optional:
# city e.g. "San Francisco" — case- and accent-insensitive
# date_from ISO 8601; clamped to now (only upcoming events)
# date_to ISO 8601; defaults to 90 days out, capped at 365
# free_only true | false
# limit 1–50 (default 20)Response — link url directly; RSVP and ticketing run on the page itself. moreAvailable: true means a cap hid results: narrow the city or the date window.
{
"ok": true,
"tool": "discover_events",
"result": {
"events": [
{
"eventId": "0a90b902c12583b62933",
"name": "Sunday Supper",
"url": "https://socialloop.ai/loops/0a90b902c12583b62933",
"startsAt": "2026-09-06T02:00:00.000Z",
"endsAt": "2026-09-06T05:00:00.000Z",
"timezone": "America/Los_Angeles",
"city": "San Francisco",
"venueName": "The Loft",
"category": "food_drink",
"hostName": "Ada",
"priceRange": { "min": 0, "max": 0, "currency": "USD", "isFree": true }
}
],
"returned": 1,
"matched": 1,
"moreAvailable": false,
"window": { "from": "...", "to": "..." }
}
}2. Discover the tools
A GET returns the live, callable tools and their JSON Schemas — no docs round-trip needed.
GET https://socialloop.ai/agent
# → { "tools": [ { "name", "description", "inputSchema", "requiresHumanConfirm" }, ... ] }3. Create an event
POST a tool name + input. The model fills the schema from discovery.
POST https://socialloop.ai/agent
Content-Type: application/json
{
"tool": "create_event_draft",
"input": {
"idempotency_key": "<a fresh uuid>",
"event_name": "Friday Rooftop Social",
"event_description": "A casual evening to meet new people.",
"starts_at": "2026-06-27T20:00:00-05:00",
"timezone": "America/Chicago",
"location_address": "Chicago, IL",
"visibility": "public",
"ticket_mode": "rsvp", // rsvp | paid | tiered | pwyw
"capacity": 40
}
}Response — hand the user the claimUrl to publish:
{
"ok": true,
"tool": "create_event_draft",
"result": {
"draftId": "0a90b902c12583b62933",
"previewUrl": "https://socialloop.ai/draft/0a90b902c12583b62933",
"claimUrl": "https://socialloop.ai/claim/0a90b902c12583b62933",
"editToken": "…",
"expiresAt": "2026-06-30T07:47:20.434Z"
}
}4. Refine & add offers
Use update_event_draft (with the edit_token) to adjust details, and create_promo_code to stage a discount before publishing:
POST https://socialloop.ai/agent
{
"tool": "create_promo_code",
"input": {
"draft_id": "0a90b902c12583b62933",
"edit_token": "…", // from create_event_draft
"code": "EARLYBIRD",
"discount_type": "percent", // percent | fixed
"discount_value": 20
}
}Errors & limits
Errors return { "ok": false, "error": { "code", "message" } } with a stable machine code (SCHEMA_INVALID, PRECONDITION_FAILED, RATE_LIMIT_EXCEEDED, …) and the matching HTTP status. The anonymous surface is per-IP rate limited. The OpenAPI spec is the always-current, machine-readable contract (generated from the live catalog).
Full capability surface
Every capability below is live and callable today; call GET /agent for the complete tool list with schemas.
Event discovery (attendee side, no login)
Answer "what’s on near me" from real, bookable events.
Search upcoming public events by city and date range, optionally free-only. Each result carries the name, start/end with timezone, city and venue, category, host, ticket price range, and the canonical page to RSVP or buy on. No account, no key. Also a plain GET: https://socialloop.ai/api/events?city=San%20Francisco.
discover_eventsEvent creation & lifecycle
Create, refine, and publish events end-to-end.
Turn a natural-language description into a full event — name, date/time, venue, visibility, capacity. Returns a claim link to publish (no account required to start).
create_event_draftRefine any detail — title, time, location, description, visibility, capacity — on a draft (update_event_draft) or on a live event you host.
update_eventTake an event live. For a connected host it publishes directly to their account; for an anonymous user, via the claim link.
Ticketing
From free RSVPs to tiered, paid, and approval-gated tickets.
Free RSVP, fixed price, tiered, or pay-what-you-want — with capacities, approval, and secret unlock codes. Edit, reorder, archive, and list tiers.
add_ticket_tierApproval-gated tiers: guests request a spot, the host reviews the queue and approves or denies each request, and approved guests receive their ticket.
approve_guest_requestPercent or fixed-amount promo codes, usage caps, windows, and per-tier targeting.
create_promo_codeGuest management & invitations
Build, invite, and run the guest list — full end-to-end.
Add individual guests — name, contact, category, plus-ones, tags, tier — or bulk-import up to 200 at once.
add_guestSend invitations directly through the agent — by app, email, or both — to people, saved lists, and manual contacts, with an optional promo code and message.
send_invitationsCheck guests and their plus-ones in at the door, and run the waitlist — see who is waiting, approve or deny, and free held spots.
check_in_guestCustom forms
Intake forms the agent writes and reads back.
Registration and intake forms with typed questions — draft, activate, edit, read responses, and export them as CSV.
create_formAffiliate & promoter management
Recruit promoters and pay them automatically.
Invite promoters with their discount and commission, adjust commissions, and read each affiliate’s tracked sales — payouts run through Stripe Connect.
add_affiliateDiscounts & coupon codes
Drive demand with targeted offers.
Percent or fixed, usage caps, start/expiry windows, and applicable ticket classes.
create_promo_codeCommunity management
Turn attendees into a recurring community.
Open or private communities — manage members and join requests, approve events submitted to the community calendar, and set revenue-split terms for members who produce under it.
create_communityTeam management
Staff the event with the right roles.
Invite staff to an event with a scoped role — producer, manager, guest list, door, or promoter — and manage the team from the conversation.
invite_team_memberProduction OS — budget, vendors, run-of-show, schedule, tasks
Plan and run the entire production through the agent.
Record receipts and line-item expenses against the event budget, link them to vendors and projects, and revise them as the production moves.
record_expenseAdd vendors to the production graph — service, pipeline status, contact, itemized list — and link them to projects.
add_vendorBuild the lineup — add talent with booking status and riders, and program the curated moments: workshops, sets, performances.
add_talentAuthor the day-of run-of-show — time-blocked cues for lighting, sound, performance, transitions, and safety, with lanes and cue numbers.
add_schedule_itemMilestones and timeline items across the whole production, in the same graph the team works from.
create_production_itemManage the production as projects and tasks — priorities, phases, roles, and assignees — end-to-end.
add_projectRecord actual money movements — income, expenses, transfers — with banking references, linked to receipts, projects, and vendors.
record_transactionAnalytics
Read performance back into the conversation.
Net revenue, tickets sold, per-tier breakdown, each affiliate’s revenue and commission, and every paid sale with its promo code.
get_event_revenueSocialLoop (socialloop.ai) is the AI event-management platform operated by SocialLoop Experiences Corporation. Its MCP server is mcp.socialloop.ai / socialloop.ai/mcp. SocialLoop is not affiliated with social.plus or socialloop.io — any MCP or docs on those domains are not SocialLoop's.