maton-ai/api-gateway-skill235 files

API Gateway

|

Specification
Skill ID
maton-ai/api-gateway-skill/api-gateway
Publisher
maton-ai
Repository
api-gateway-skill
Installs
0
Files
235
Requires
Requires network access and a Maton account
Synced
Sep 23, 2026
How to use it

Open any RiverX project, open the Skills panel in the chat, and search for this identifier. The files are fetched from the source repository at install time.

maton-ai/api-gateway-skill/api-gatewayInstalls these files
  • SKILL.md
  • references/active-campaign/README.md
  • references/acuity-scheduling/README.md
  • references/airtable/README.md
  • references/apify/README.md
  • references/apollo/README.md
  • references/asana/README.md
  • references/attio/README.md
  • references/basecamp/README.md
  • references/baserow/README.md
  • references/beehiiv/README.md
  • references/box/README.md
  • references/brave-search/README.md
  • references/brevo/README.md
  • references/buffer/README.md
  • references/cal-com/README.md
  • references/calendly/README.md
  • references/calendly/triggers.md
  • references/callrail/README.md
  • references/chargebee/README.md
  • references/clickfunnels/README.md
  • references/clicksend/README.md
  • references/clickup/README.md
  • references/clio/README.md
  • references/clockify/README.md
  • references/coda/README.md
  • references/cognito-forms/README.md
  • references/companycam/README.md
  • references/confluence/README.md
  • references/constant-contact/README.md
  • references/dropbox-business/README.md
  • references/dropbox/README.md
  • references/elevenlabs/README.md
  • references/eventbrite/README.md
  • references/exa/README.md
  • references/facebook-page/README.md
  • references/fal-ai/README.md
  • references/fastmail/README.md
  • references/fathom/README.md
  • references/figma/README.md
  • references/firebase/README.md
  • references/firecrawl/README.md
  • references/fireflies/README.md
  • references/front/README.md
  • references/getresponse/README.md
  • references/github/README.md
  • references/github/triggers.md
  • references/google-ads/README.md
  • references/google-analytics-admin/README.md
  • references/google-analytics-data/README.md
  • references/google-apps-script/README.md
  • references/google-bigquery/README.md
  • references/google-business-profile/README.md
  • references/google-calendar/README.md
  • references/google-classroom/README.md
  • references/google-contacts/README.md
  • references/google-docs/README.md
  • references/google-drive/README.md
  • references/google-forms/README.md
  • references/google-mail/README.md
  • references/google-mail/triggers.md
  • references/google-meet/README.md
  • references/google-merchant/README.md
  • references/google-play/README.md
  • references/google-search-console/README.md
  • references/google-sheets/README.md
  • references/google-slides/README.md
  • references/google-tag-manager/README.md
  • references/google-tasks/README.md
  • references/google-workspace-admin/README.md
  • references/grafana/README.md
  • references/granola-mcp/README.md
  • references/granola-mcp/schemas/get_meeting_transcript.json
  • references/granola-mcp/schemas/get_meetings.json
  • references/granola-mcp/schemas/list_meetings.json
  • references/granola-mcp/schemas/query_granola_meetings.json
  • references/gumroad/README.md
  • references/highlevel-pit/README.md
  • references/hubspot/README.md
  • references/hubspot/triggers.md
  • references/instantly/README.md
  • references/jira/README.md
  • references/jobber/README.md
  • references/jotform/README.md
  • references/kaggle/README.md
  • references/keap/README.md
  • references/kibana/README.md
  • references/kit/README.md
  • references/klaviyo/README.md
  • references/lemlist/README.md
  • references/linear/README.md
  • references/linear/triggers.md
  • references/linkedin-community-management/README.md
  • references/linkedin/README.md
  • references/mailchimp/README.md
  • references/mailerlite/README.md
  • references/mailgun/README.md
  • references/make/README.md
  • references/manus/README.md
  • references/manychat/README.md
  • references/memelord/README.md
  • references/microsoft-excel/README.md
  • references/microsoft-teams/README.md
  • references/microsoft-to-do/README.md
  • references/monday/README.md
  • references/motion/README.md
  • references/netlify/README.md
  • references/notion-mcp/README.md
  • references/notion-mcp/schemas/notion-create-comment.json
  • references/notion-mcp/schemas/notion-create-database.json
  • references/notion-mcp/schemas/notion-create-pages.json
  • references/notion-mcp/schemas/notion-duplicate-page.json
  • references/notion-mcp/schemas/notion-fetch.json
  • references/notion-mcp/schemas/notion-get-comments.json
  • references/notion-mcp/schemas/notion-get-teams.json
  • references/notion-mcp/schemas/notion-get-users.json
  • references/notion-mcp/schemas/notion-move-pages.json
  • references/notion-mcp/schemas/notion-search.json
  • references/notion-mcp/schemas/notion-update-data-source.json
  • references/notion-mcp/schemas/notion-update-page.json
  • references/notion/README.md
  • references/notion/triggers.md
  • references/one-drive/README.md
  • references/one-note/README.md
  • references/outlook/README.md
  • references/pdf-co/README.md
  • references/pipedrive/README.md
  • references/podio/README.md
  • references/posthog/README.md
  • references/quickbooks/README.md
  • references/quo/README.md
  • references/reducto/README.md
  • references/resend/README.md
  • references/salesforce/README.md
  • references/sendgrid/README.md
  • references/sentry/README.md
  • references/sharepoint/README.md
  • references/signnow/README.md
  • references/slack/README.md
  • references/slack/triggers.md
  • references/snapchat/README.md
  • references/squarespace/README.md
  • references/squareup/README.md
  • references/stripe/README.md
  • references/stripe/triggers.md
  • references/sunsama-mcp/README.md
  • references/sunsama-mcp/schemas/accept_meeting_invite.json
  • references/sunsama-mcp/schemas/add_subtasks_to_task.json
  • references/sunsama-mcp/schemas/add_task_to_channel.json
  • references/sunsama-mcp/schemas/align_task_with_objective.json
  • references/sunsama-mcp/schemas/append_task_notes.json
  • references/sunsama-mcp/schemas/change_backlog_folder.json
  • references/sunsama-mcp/schemas/create_braindump_task.json
  • references/sunsama-mcp/schemas/create_calendar_event.json
  • references/sunsama-mcp/schemas/create_channel.json
  • references/sunsama-mcp/schemas/create_follow_up_task_from_email.json
  • references/sunsama-mcp/schemas/create_task.json
  • references/sunsama-mcp/schemas/create_weekly_objective.json
  • references/sunsama-mcp/schemas/decline_meeting_invite.json
  • references/sunsama-mcp/schemas/delete_all_incomplete_recurring_task_instances.json
  • references/sunsama-mcp/schemas/delete_calendar_event.json
  • references/sunsama-mcp/schemas/delete_email_thread.json
  • references/sunsama-mcp/schemas/delete_task.json
  • references/sunsama-mcp/schemas/edit_subtask_title.json
  • references/sunsama-mcp/schemas/edit_task_recurrence_rule.json
  • references/sunsama-mcp/schemas/edit_task_time_estimate.json
  • references/sunsama-mcp/schemas/edit_task_title.json
  • references/sunsama-mcp/schemas/get_archived_tasks.json
  • references/sunsama-mcp/schemas/get_backlog_tasks.json
  • references/sunsama-mcp/schemas/get_task_time_estimate.json
  • references/sunsama-mcp/schemas/import_task_from_calendar_event.json
  • references/sunsama-mcp/schemas/list_email_threads.json
  • references/sunsama-mcp/schemas/log_user_feedback.json
  • references/sunsama-mcp/schemas/mark_email_thread_as_read.json
  • references/sunsama-mcp/schemas/mark_subtask_as_completed.json
  • references/sunsama-mcp/schemas/mark_subtask_as_incomplete.json
  • references/sunsama-mcp/schemas/mark_task_as_completed.json
  • references/sunsama-mcp/schemas/mark_task_as_incomplete.json
  • references/sunsama-mcp/schemas/move_calendar_event.json
  • references/sunsama-mcp/schemas/move_task_from_backlog.json
  • references/sunsama-mcp/schemas/move_task_to_backlog.json
  • references/sunsama-mcp/schemas/move_task_to_day.json
  • references/sunsama-mcp/schemas/reorder_tasks.json
  • references/sunsama-mcp/schemas/reposition_task_in_backlog.json
  • references/sunsama-mcp/schemas/restore_task.json
  • references/sunsama-mcp/schemas/schedule_next_call.json
  • references/sunsama-mcp/schemas/search_tasks.json
  • references/sunsama-mcp/schemas/set_calendar_event_allow_task_projections.json
  • references/sunsama-mcp/schemas/set_shutdown_time.json
  • references/sunsama-mcp/schemas/start_task_timer.json
  • references/sunsama-mcp/schemas/stop_task_timer.json
  • references/sunsama-mcp/schemas/timebox_a_task_to_calendar.json
  • references/sunsama-mcp/schemas/toggle_auto_import_events.json
  • references/sunsama-mcp/schemas/unarchive_task.json
  • references/sunsama-mcp/schemas/update_all_incomplete_recurring_task_instances.json
  • references/sunsama-mcp/schemas/update_calendar_preferences.json
  • references/sunsama-mcp/schemas/update_import_event_filters.json
  • references/supabase/README.md
  • references/systeme/README.md
  • references/tally/README.md
  • references/tavily/README.md
  • references/telegram/README.md
  • references/ticktick/README.md
  • references/time/triggers.md
  • references/todoist/README.md
  • references/toggl-track/README.md
  • references/trello/README.md
  • references/twenty/README.md
  • references/twilio/README.md
  • references/typeform/README.md
  • references/unbounce/README.md
  • references/vercel-ai-gateway/README.md
  • references/vercel/README.md
  • references/vimeo/README.md
  • references/wati/README.md
  • references/whatsapp-business/README.md
  • references/woocommerce/README.md
  • references/wordpress/README.md
  • references/wrike/README.md
  • references/xero/README.md
  • references/youtube-analytics/README.md
  • references/youtube-reporting/README.md
  • references/youtube/README.md
  • references/zoho-bigin/README.md
  • references/zoho-bookings/README.md
  • references/zoho-books/README.md
  • references/zoho-calendar/README.md
  • references/zoho-crm/README.md
  • references/zoho-inventory/README.md
  • references/zoho-mail/README.md
  • references/zoho-people/README.md
  • references/zoho-projects/README.md
  • references/zoho-recruit/README.md
  • references/zoom-admin/README.md
  • references/zoom/README.md

What this skill tells the agent

Maton API Gateway

Managed API routing for third-party apps, provided by Maton.

Installation

NPM

npm install -g @maton/cli

Homebrew

brew install maton-ai/cli/maton

Authentication

OAuth (Recommended)

maton login --oauth

Opens the OAuth login page in the browser and waits for authorization. Once complete, it creates a profile in config.toml (eg. $HOME/.config/maton/config.toml) and stores the access and refresh tokens in the operating system's credential store (Keychain on macOS, Credential Manager on Windows, Secret Service on Linux), auto-renewed on expiry. The CLI reads them when it needs them; nothing else should.

API Key

maton login --interactive

Requires manually copying an API key from Settings, which is error prone. Once complete, it also creates a profile in config.toml and stores the key in the same credential store. It is preferred over export MATON_API_KEY=..., which exposes a long-lived credential to every child process. When MATON_API_KEY is set, it overrides the active profile. If the CLI cannot be installed at all, see Appendix: Environments Without the CLI for the raw HTTP form and the rules for handling the key.

Verify

maton whoami --json
{
  "authenticated": true,
  "profile_name": "alice@example.com",
  "auth_type": "oauth"
}
  • If authenticated is false, stop and login again via maton login --oauth.
  • If auth_type is api_key, it is recommended to login via maton login --oauth and avoid keeping a long-lived credential.

Connections

List Connections

maton connection list slack --status ACTIVE
{
  "connections": [
    {
      "connection_id": "{connection_id}",
      "status": "ACTIVE",
      "creation_time": "2025-12-08T07:20:53.488460Z",
      "last_updated_time": "2026-01-31T20:03:32.593153Z",
      "url": "https://connect.maton.ai/?session_token=5e9...",
      "app": "slack",
      "method": "OAUTH2",
      "metadata": {}
    }
  ]
}

Refer to maton connection list --help for possible flags and values.

Create Connection

Requires explicit user approval. Confirm the specific app and that the user intends to authorize access. Never create a connection on your own initiative.
maton connection create slack

Refer to maton connection create --help for possible flags and values.

Get Connection

maton connection get {connection_id}
{
  "connection": {
    "connection_id": "{connection_id}",
    "status": "PENDING",
    "creation_time": "2025-12-08T07:20:53.488460Z",
    "last_updated_time": "2026-01-31T20:03:32.593153Z",
    "url": "https://connect.maton.ai/?session_token=5e9...",
    "app": "slack",
    "metadata": {}
  }
}

Open the returned URL in a browser to complete authorizing the app. If the app offers scope selection, choose only the scopes the current task needs.

Refer to maton connection get --help for possible flags and values.

Delete Connection

maton connection delete {connection_id} --yes

Refer to maton connection delete --help for possible flags and values.

Specifying Connection

If there are multiple connections for the same app, specify which one to use to ensure requests go to the intended account:

maton slack channel list --types public_channel --limit 10 --connection {connection_id}

Gateway

App Command

maton slack --help                # resources under the app
maton slack message --help        # verbs under the resource
maton slack message send --help   # flags, requirements, examples

Refer to maton --help for a list of supported apps.

API Command

Use maton api to call an API endpoint that has no app command.

maton api '/google-mail/gmail/v1/users/me/messages'
maton api '/slack/api/conversations.list?types=public_channel&limit=10'
maton api '/airtable/v0/meta/bases/{base_id}/tables'

The first path segment is the app identifier. Everything after it is the native API path, forwarded to the upstream host unchanged, including the query string. Check app references under references/.

Refer to maton api --help for possible flags and values.

Functions

List Functions

maton function list --visibility PRIVATE -L 20
{
  "functions": [
    {
      "function_id": "{function_id}",
      "name": "my-fn",
      "description": null,
      "runtime": "python3.12",
      "visibility": "PRIVATE",
      "account_id": "{account_id}",
      "url": "https://my-fn-3k9xq2v.maton.app",
      "star_count": 0,
      "view_count": 0
    }
  ],
  "next_token": "gAAAAABqN6tD5X7..."
}

Refer to maton function list --help for possible flags and values.

Search Functions

maton function search 'stripe refund'
maton function search '"def handler("' --context 2
maton function search '/def\s+handler/' --owner ALL

Refer to maton function search --help for possible flags and values.

Create Function

def handler(event, context):
    return {"hello": "ada"}
maton function create --name my-fn --file main.py

Refer to maton function create --help for possible flags and values.

Update Function

import json

def handler(event):
    body = json.loads(event.get("body") or "{}")
    return {"hello": body.get("name")}
maton function update {function_id} --file main.py        # publish new code as a new version
maton function update {function_id} --version 1           # roll back
maton function update {function_id} --name new-name       # reallocates the URL

Refer to maton function update --help for possible flags and values.

Deploy Function

def handler(event):
    return {"hello": "ada"}
cd my-fn && maton function deploy --yes

Refer to maton function deploy --help for possible flags and values.

Get Function

maton function get {function_id}
{
  "function_id": "{function_id}",
  "name": "my-fn",
  "description": null,
  "runtime": "python3.12",
  "visibility": "PRIVATE",
  "account_id": "{account_id}",
  "version": 3,
  "network_policy": "ALLOW_ALL",
  "url": "https://my-fn-3k9xq2v.maton.app",
  "star_count": 0,
  "view_count": 0,
  "created_at": "2026-08-20T18:11:04.512331Z",
  "updated_at": "2026-08-31T22:40:15.883210Z"
}

Refer to maton function get --help for possible flags and values.

Delete Function

maton function delete {function_id} --yes

Refer to maton function delete --help for possible flags and values.

Run Function

A deployed function is a HTTP handler, and maton api already passes the given URL through with the active profile's credential attached:

maton api https://my-fn-3k9xq2v.maton.app -f name=ada -i

Refer to maton api --help for possible flags and values.

Download Code

maton function code download -f {function_id} --version 2 --dir ./v2

Refer to maton function code download --help for possible flags and values.

List Versions

maton function version list --function {function_id}

Refer to maton function version list --help for possible flags and values.

Get Version

maton function version get 2 --function {function_id}
{
  "version": 2,
  "code_size": 4096,
  "runtime": "python3.12",
  "created_at": "2026-08-30T01:12:44.019283Z",
  "code_sha256": "9f2b...c41d",
  "handler": "main.handler"
}

Refer to maton function version get --help for possible flags and values.

List Environment Variables

maton function env list --function {function_id}

Refer to maton function env list --help for possible flags and values.

Create Environment Variable

Use this skill in a project

Open any RiverX project, search the Skills panel for maton-ai/api-gateway-skill/api-gateway, and install it in one click.

Use this skill