openapi: 3.1.0 info: title: Meshes API version: '2026-10-18' description: 'GENERATED FROM DOCUMENTATION by API Evangelist on 2026-10-18: 13 operation(s) read from 9 public documentation page(s) (each operation names its page in x-source). This is not the provider''s published contract; Meshes has published no machine-readable contract that the pipeline could find. Engine: local.' x-evidence-tiers: code-example: 3 documentation: 10 pages-with-code: 4 pages-read: 9 x-generated-from: documentation x-provenance: generated x-authored-by: API Evangelist x-generated: '2026-10-18' x-generator: generate-contract-from-docs.py x-engine: local x-sources: - https://meshes.io/docs/api/integrations-and-rules - https://meshes.io/docs/embed/session-api - https://meshes.io/compare/zapier - https://meshes.io/docs/embed/quickstart - https://meshes.io/docs/getting-started/quickstart - https://meshes.io/docs/getting-started/api-overview - https://meshes.io/docs/embed/roles-and-scopes - https://meshes.io/docs/embed/session-refresh - https://meshes.io/compare/n8n servers: - url: https://events.meshes.io paths: /api/v1/connections/{connectionId}/actions: get: operationId: get_api_v1_connections_connectionId_actions tags: - Api summary: Meshes Integrations and Rules API Guide for SaaS Teams Use Cases Pricing Security Docs x-source: https://meshes.io/docs/api/integrations-and-rules parameters: - name: connectionId in: path required: true schema: type: string responses: '200': description: Success (status as documented) x-evidence: kind: documentation /api/v1/events: post: operationId: post_api_v1_events tags: - Api summary: Meshes Integrations and Rules API Guide for SaaS Teams Use Cases Pricing Security Docs x-source: https://meshes.io/docs/api/integrations-and-rules responses: '201': description: Success (status as documented) x-evidence: kind: documentation /api/v1/events/{id}: get: operationId: get_api_v1_events_id tags: - Api summary: Meshes Integrations and Rules API Guide for SaaS Teams Use Cases Pricing Security Docs x-source: https://meshes.io/docs/api/integrations-and-rules parameters: - name: id in: path required: true schema: type: string responses: '200': description: Success (status as documented) x-evidence: kind: documentation /api/v1/integrations: get: operationId: get_api_v1_integrations tags: - Api summary: Meshes Integrations and Rules API Guide for SaaS Teams Use Cases Pricing Security Docs x-source: https://meshes.io/docs/api/integrations-and-rules responses: '200': description: Success (status as documented) x-evidence: kind: documentation /api/v1/rules: post: operationId: post_api_v1_rules tags: - Api summary: Meshes Integrations and Rules API Guide for SaaS Teams Use Cases Pricing Security Docs x-source: https://meshes.io/docs/api/integrations-and-rules requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PostApiV1RulesRequest' responses: '201': description: Success (status as documented) x-evidence: kind: documentation /api/v1/sessions: get: operationId: get_api_v1_sessions tags: - Api summary: List sessions x-source: https://meshes.io/docs/embed/session-api parameters: - name: workspace_id in: query required: true schema: type: string description: UUID - name: status in: query required: false schema: type: string description: active or revoked - name: cursor in: query required: false schema: type: string - name: limit in: query required: false schema: type: integer responses: '200': description: Success (status as documented) content: application/json: schema: $ref: '#/components/schemas/GetApiV1SessionsResponse' x-evidence: kind: documentation post: operationId: post_api_v1_sessions tags: - Api summary: Mint a session x-source: https://meshes.io/docs/embed/session-api requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PostApiV1SessionsRequest' responses: '201': description: Success (status as documented) content: application/json: schema: $ref: '#/components/schemas/PostApiV1SessionsResponse' x-evidence: kind: documentation /api/v1/sessions/{sessionid}: delete: operationId: delete_api_v1_sessions_sessionid tags: - Api summary: Revoke a session x-source: https://meshes.io/docs/embed/session-api parameters: - name: sessionid in: path required: true schema: type: string responses: '200': description: Success (status as documented) x-evidence: kind: documentation /api/v1/sessions/{sessionid}/refresh: post: operationId: post_api_v1_sessions_sessionid_refresh tags: - Api summary: Refresh a session x-source: https://meshes.io/docs/embed/session-api parameters: - name: sessionid in: path required: true schema: type: string responses: '201': description: Success (status as documented) content: application/json: schema: $ref: '#/components/schemas/PostApiV1SessionsSessionidRefreshResponse' x-evidence: kind: documentation /api/v1/workspaces: get: operationId: get_api_v1_workspaces tags: - Api summary: GET /api/v1/workspaces x-source: https://meshes.io/docs/getting-started/api-overview responses: '200': description: Success (status as documented) x-evidence: kind: code-example language: curl snippet: "curl https://api.meshes.io/api/v1/workspaces -H \"Authorization: Bearer $TOKEN \" -H \"Content-Type: application/json\" \n\ \ Which One Should You Use? Use the dashboard + event ingestion API when: you are validating the product for the first time you want\ \ to create connections and rules in the UI you just need to emit events from your app Use the management API when: you need to provision\ \ or manage Mes" /api/v1/workspaces/{id}/connections: get: operationId: get_api_v1_workspaces_id_connections tags: - Api summary: Meshes Integrations and Rules API Guide for SaaS Teams Use Cases Pricing Security Docs x-source: https://meshes.io/docs/api/integrations-and-rules parameters: - name: id in: path required: true schema: type: string responses: '200': description: Success (status as documented) x-evidence: kind: documentation /hooks/catch/your-zap: post: operationId: post_hooks_catch_your_zap tags: - Hooks summary: POST /hooks/catch/your-zap x-source: https://meshes.io/compare/zapier responses: '201': description: Success (status as documented) x-evidence: kind: code-example language: javascript snippet: "fetch ( \"https://hooks.zapier.com/hooks/catch/your-zap\" , { \n method: \"POST\" , \n body: JSON . stringify ({ email, plan,\ \ source })" /webhook/user-signup: post: operationId: post_webhook_user_signup tags: - Webhook summary: POST /webhook/user-signup x-source: https://meshes.io/compare/n8n responses: '201': description: Success (status as documented) x-evidence: kind: code-example language: javascript snippet: "fetch ( \"https://your-n8n.example.com/webhook/user-signup\" , { \n method: \"POST\" , \n headers: { \n \"Content-Type\" : \"\ application/json\" , \n }, \n body: JSON . stringify ({ email, plan, source })" components: schemas: PostApiV1RulesRequest: type: object properties: workspace: type: string connection: type: string event: type: string metadata: type: object required: - workspace - connection - event - metadata GetApiV1SessionsResponse: type: object properties: sessions: type: array description: list of session objects with fields such as session_id, access_token, expires_at, launch_url, workspace_id, role, session_type, resource, resource_id cursor: type: string description: pagination cursor PostApiV1SessionsRequest: type: object properties: workspace_id: type: string description: UUID role: type: string description: member, admin, owner; default member session_type: type: string description: workspace, resource, dashboard; default workspace external_user_id: type: string ttl_seconds: type: integer description: optional, 300-3600, default 1800 launch_ttl_seconds: type: integer description: optional, 15-60, default 30 launch_page: type: string description: dashboard, connections, rules, events; default dashboard resource: type: string description: required for resource sessions only resource_id: type: string description: required for resource sessions only allowed_origins: type: array description: optional array of up to 10 origin URLs; recommended for production scopes: type: array description: optional array; current public scope is events.payload:read required: - workspace_id PostApiV1SessionsResponse: type: object properties: session_id: type: string access_token: type: string expires_at: type: string description: ISO8601 timestamp launch_url: type: string workspace_id: type: string role: type: string session_type: type: string resource: type: string resource_id: type: string PostApiV1SessionsSessionidRefreshResponse: type: object properties: access_token: type: string session_id: type: string session_type: type: string resource: type: string resource_id: type: string securitySchemes: bearer: type: http scheme: bearer security: - bearer: [] tags: - name: Api - name: Hooks - name: Webhook