AI Newsletter Digest improvements: fixed QP soft line break decoding, URL extraction, and content cleaning
This commit is contained in:
@@ -2,6 +2,6 @@
|
||||
"version": 1,
|
||||
"registry": "https://clawhub.ai",
|
||||
"slug": "api-gateway",
|
||||
"installedVersion": "1.0.35",
|
||||
"installedAt": 1771418208448
|
||||
"installedVersion": "1.0.51",
|
||||
"installedAt": 1772222728871
|
||||
}
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
---
|
||||
name: api-gateway
|
||||
description: |
|
||||
API gateway for calling third-party APIs with managed OAuth connections, provided by Maton (https://maton.ai).
|
||||
Use this skill when users want to interact with external services like Slack, HubSpot, Salesforce, Google Workspace, Stripe, and more.
|
||||
Access is scoped to connections you explicitly authorize via OAuth - the API key alone does not grant access to any third-party service.
|
||||
Requires network access and valid Maton API key.
|
||||
Connect to 100+ APIs (Google Workspace, Microsoft 365, Notion, Slack, Airtable, HubSpot, etc.) with managed OAuth.
|
||||
Use this skill when users want to interact with external services.
|
||||
Security: The MATON_API_KEY authenticates with Maton.ai but grants NO access to third-party services by itself. Each service requires explicit OAuth authorization by the user through Maton's connect flow. Access is strictly scoped to connections the user has authorized. Provided by Maton (https://maton.ai).
|
||||
compatibility: Requires network access and valid Maton API key
|
||||
metadata:
|
||||
author: maton
|
||||
version: "1.0"
|
||||
@@ -210,6 +210,7 @@ If omitted, the gateway uses the default (oldest) active connection for that app
|
||||
| GetResponse | `getresponse` | `api.getresponse.com` |
|
||||
| GitHub | `github` | `api.github.com` |
|
||||
| Gumroad | `gumroad` | `api.gumroad.com` |
|
||||
| Granola | `granola` | `mcp.granola.ai` (MCP) |
|
||||
| Google Ads | `google-ads` | `googleads.googleapis.com` |
|
||||
| Google BigQuery | `google-bigquery` | `bigquery.googleapis.com` |
|
||||
| Google Analytics Admin | `google-analytics-admin` | `analyticsadmin.googleapis.com` |
|
||||
@@ -245,6 +246,7 @@ If omitted, the gateway uses the default (oldest) active connection for that app
|
||||
| Mailgun | `mailgun` | `api.mailgun.net` |
|
||||
| ManyChat | `manychat` | `api.manychat.com` |
|
||||
| Microsoft Excel | `microsoft-excel` | `graph.microsoft.com` |
|
||||
| Microsoft Teams | `microsoft-teams` | `graph.microsoft.com` |
|
||||
| Microsoft To Do | `microsoft-to-do` | `graph.microsoft.com` |
|
||||
| Monday.com | `monday` | `api.monday.com` |
|
||||
| Motion | `motion` | `api.usemotion.com` |
|
||||
@@ -255,13 +257,16 @@ If omitted, the gateway uses the default (oldest) active connection for that app
|
||||
| PDF.co | `pdf-co` | `api.pdf.co` |
|
||||
| Pipedrive | `pipedrive` | `api.pipedrive.com` |
|
||||
| Podio | `podio` | `api.podio.com` |
|
||||
| PostHog | `posthog` | `{subdomain}.posthog.com` |
|
||||
| QuickBooks | `quickbooks` | `quickbooks.api.intuit.com` |
|
||||
| Quo | `quo` | `api.openphone.com` |
|
||||
| Salesforce | `salesforce` | `{instance}.salesforce.com` |
|
||||
| Sentry | `sentry` | `{subdomain}.sentry.io` |
|
||||
| SignNow | `signnow` | `api.signnow.com` |
|
||||
| Slack | `slack` | `slack.com` |
|
||||
| Snapchat | `snapchat` | `adsapi.snapchat.com` |
|
||||
| Square | `squareup` | `connect.squareup.com` |
|
||||
| Squarespace | `squarespace` | `api.squarespace.com` |
|
||||
| Stripe | `stripe` | `api.stripe.com` |
|
||||
| Systeme.io | `systeme` | `api.systeme.io` |
|
||||
| Tally | `tally` | `api.tally.so` |
|
||||
@@ -322,6 +327,7 @@ See [references/](references/) for detailed routing guides per provider:
|
||||
- [GetResponse](references/getresponse.md) - Campaigns, contacts, newsletters, autoresponders, tags, segments
|
||||
- [GitHub](references/github.md) - Repositories, issues, pull requests, commits
|
||||
- [Gumroad](references/gumroad.md) - Products, sales, subscribers, licenses, webhooks
|
||||
- [Granola](references/granola.md) - Meeting notes, transcripts, queries (MCP)
|
||||
- [Google Ads](references/google-ads.md) - Campaigns, ad groups, GAQL queries
|
||||
- [Google Analytics Admin](references/google-analytics-admin.md) - Reports, dimensions, metrics
|
||||
- [Google Analytics Data](references/google-analytics-data.md) - Reports, dimensions, metrics
|
||||
@@ -357,6 +363,7 @@ See [references/](references/) for detailed routing guides per provider:
|
||||
- [Mailgun](references/mailgun.md) - Email sending, domains, routes, templates, mailing lists, suppressions
|
||||
- [ManyChat](references/manychat.md) - Subscribers, tags, flows, messaging
|
||||
- [Microsoft Excel](references/microsoft-excel.md) - Workbooks, worksheets, ranges, tables, charts
|
||||
- [Microsoft Teams](references/microsoft-teams.md) - Teams, channels, messages, members, chats
|
||||
- [Microsoft To Do](references/microsoft-to-do.md) - Task lists, tasks, checklist items, linked resources
|
||||
- [Monday.com](references/monday.md) - Boards, items, columns, groups (GraphQL)
|
||||
- [Motion](references/motion.md) - Tasks, projects, workspaces, schedules
|
||||
@@ -367,14 +374,17 @@ See [references/](references/) for detailed routing guides per provider:
|
||||
- [PDF.co](references/pdf-co.md) - PDF conversion, merge, split, edit, text extraction, barcodes
|
||||
- [Pipedrive](references/pipedrive.md) - Deals, persons, organizations, activities
|
||||
- [Podio](references/podio.md) - Organizations, workspaces, apps, items, tasks, comments
|
||||
- [PostHog](references/posthog.md) - Product analytics, feature flags, session recordings, experiments, HogQL queries
|
||||
- [QuickBooks](references/quickbooks.md) - Customers, invoices, reports
|
||||
- [Quo](references/quo.md) - Calls, messages, contacts, conversations, webhooks
|
||||
- [Salesforce](references/salesforce.md) - SOQL, sObjects, CRUD
|
||||
- [SignNow](references/signnow.md) - Documents, templates, invites, e-signatures
|
||||
- [SendGrid](references/sendgrid.md) - Email sending, contacts, templates, suppressions, statistics
|
||||
- [Sentry](references/sentry.md) - Issues, events, projects, teams, releases
|
||||
- [Slack](references/slack.md) - Messages, channels, users
|
||||
- [Snapchat](references/snapchat.md) - Ad accounts, campaigns, ad squads, ads, creatives, audiences
|
||||
- [Square](references/squareup.md) - Payments, customers, orders, catalog, inventory, invoices
|
||||
- [Squarespace](references/squarespace.md) - Products, inventory, orders, profiles, transactions
|
||||
- [Stripe](references/stripe.md) - Customers, subscriptions, payments
|
||||
- [Systeme.io](references/systeme.md) - Contacts, tags, courses, communities, webhooks
|
||||
- [Tally](references/tally.md) - Forms, submissions, workspaces, webhooks
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"ownerId": "kn75240wq8bnv2qm2xgry748jd80b9r0",
|
||||
"slug": "api-gateway",
|
||||
"version": "1.0.35",
|
||||
"publishedAt": 1771398200201
|
||||
"version": "1.0.51",
|
||||
"publishedAt": 1772102946067
|
||||
}
|
||||
@@ -90,6 +90,7 @@ Content-Type: application/json
|
||||
"data": {
|
||||
"content": "Task description",
|
||||
"format": "plaintext",
|
||||
"deadline_at": null,
|
||||
"assignees": [],
|
||||
"linked_records": []
|
||||
}
|
||||
@@ -106,14 +107,182 @@ GET /attio/v2/workspace_members
|
||||
GET /attio/v2/self
|
||||
```
|
||||
|
||||
## Notes
|
||||
### Notes
|
||||
|
||||
#### List Notes
|
||||
```bash
|
||||
GET /attio/v2/notes?limit=50&parent_object={object}&parent_record_id={record_id}
|
||||
```
|
||||
|
||||
#### Get Note
|
||||
```bash
|
||||
GET /attio/v2/notes/{note_id}
|
||||
```
|
||||
|
||||
#### Create Note
|
||||
```bash
|
||||
POST /attio/v2/notes
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"data": {
|
||||
"format": "plaintext",
|
||||
"title": "Meeting Summary",
|
||||
"content": "Note content here",
|
||||
"parent_object": "companies",
|
||||
"parent_record_id": "{record_id}",
|
||||
"created_by_actor": {
|
||||
"type": "workspace-member",
|
||||
"id": "{workspace_member_id}"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
#### Delete Note
|
||||
```bash
|
||||
DELETE /attio/v2/notes/{note_id}
|
||||
```
|
||||
|
||||
### Comments
|
||||
|
||||
#### Create Comment on Record
|
||||
```bash
|
||||
POST /attio/v2/comments
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"data": {
|
||||
"format": "plaintext",
|
||||
"content": "Comment text",
|
||||
"author": {
|
||||
"type": "workspace-member",
|
||||
"id": "{workspace_member_id}"
|
||||
},
|
||||
"record": {
|
||||
"object": "companies",
|
||||
"record_id": "{record_id}"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
#### Reply to Comment Thread
|
||||
```bash
|
||||
POST /attio/v2/comments
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"data": {
|
||||
"format": "plaintext",
|
||||
"content": "This is a reply",
|
||||
"author": {
|
||||
"type": "workspace-member",
|
||||
"id": "{workspace_member_id}"
|
||||
},
|
||||
"thread_id": "{thread_id}"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Lists
|
||||
|
||||
#### List All Lists
|
||||
```bash
|
||||
GET /attio/v2/lists
|
||||
```
|
||||
|
||||
#### Get List
|
||||
```bash
|
||||
GET /attio/v2/lists/{list_id}
|
||||
```
|
||||
|
||||
### List Entries
|
||||
|
||||
#### Query List Entries
|
||||
```bash
|
||||
POST /attio/v2/lists/{list}/entries/query
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"limit": 50,
|
||||
"offset": 0
|
||||
}
|
||||
```
|
||||
|
||||
#### Create List Entry
|
||||
```bash
|
||||
POST /attio/v2/lists/{list}/entries
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"data": {
|
||||
"parent_record_id": "{record_id}",
|
||||
"parent_object": "companies",
|
||||
"entry_values": {}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
#### Get List Entry
|
||||
```bash
|
||||
GET /attio/v2/lists/{list}/entries/{entry_id}
|
||||
```
|
||||
|
||||
#### Update List Entry
|
||||
```bash
|
||||
PATCH /attio/v2/lists/{list}/entries/{entry_id}
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"data": {
|
||||
"entry_values": {
|
||||
"status": "Active"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
#### Delete List Entry
|
||||
```bash
|
||||
DELETE /attio/v2/lists/{list}/entries/{entry_id}
|
||||
```
|
||||
|
||||
### Meetings
|
||||
|
||||
#### List Meetings
|
||||
```bash
|
||||
GET /attio/v2/meetings?limit=50
|
||||
```
|
||||
|
||||
#### Get Meeting
|
||||
```bash
|
||||
GET /attio/v2/meetings/{meeting_id}
|
||||
```
|
||||
|
||||
### Call Recordings
|
||||
|
||||
#### List Call Recordings for Meeting
|
||||
```bash
|
||||
GET /attio/v2/meetings/{meeting_id}/call_recordings?limit=50
|
||||
```
|
||||
|
||||
#### Get Call Recording
|
||||
```bash
|
||||
GET /attio/v2/meetings/{meeting_id}/call_recordings/{call_recording_id}
|
||||
```
|
||||
|
||||
## Usage Notes
|
||||
|
||||
- Object slugs are lowercase snake_case (e.g., `people`, `companies`)
|
||||
- Record IDs are UUIDs
|
||||
- For personal-name attributes, include `full_name` when creating records
|
||||
- Task creation requires `format` and `assignees` fields
|
||||
- Task creation requires `format`, `deadline_at`, `assignees`, and `linked_records` fields
|
||||
- Note creation requires `format`, `content`, `parent_object`, and `parent_record_id`
|
||||
- Comment creation requires `format`, `content`, `author`, plus one of `record`, `entry`, or `thread_id`
|
||||
- Meetings use cursor-based pagination
|
||||
- Rate limits: 100 read/sec, 25 write/sec
|
||||
- Pagination uses `limit` and `offset` parameters
|
||||
- Pagination uses `limit` and `offset` parameters (or `cursor` for meetings)
|
||||
|
||||
## Resources
|
||||
|
||||
|
||||
@@ -11,11 +11,9 @@
|
||||
|
||||
**Note:** Dropbox Business API uses POST for almost all endpoints, including read operations. Request bodies should be JSON (use `null` for endpoints with no parameters).
|
||||
|
||||
## Common Endpoints
|
||||
## Team Information
|
||||
|
||||
### Team Information
|
||||
|
||||
#### Get Team Info
|
||||
### Get Team Info
|
||||
```bash
|
||||
POST /dropbox-business/2/team/get_info
|
||||
Content-Type: application/json
|
||||
@@ -23,39 +21,72 @@ Content-Type: application/json
|
||||
null
|
||||
```
|
||||
|
||||
#### Get Team Features
|
||||
### Get Team Features
|
||||
```bash
|
||||
POST /dropbox-business/2/team/features/get_values
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"features": [{".tag": "upload_api_rate_limit"}]
|
||||
"features": [
|
||||
{".tag": "upload_api_rate_limit"},
|
||||
{".tag": "has_team_shared_dropbox"},
|
||||
{".tag": "has_team_file_events"},
|
||||
{".tag": "has_team_selective_sync"}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### Team Members
|
||||
### Get Authenticated Admin
|
||||
```bash
|
||||
POST /dropbox-business/2/team/token/get_authenticated_admin
|
||||
Content-Type: application/json
|
||||
|
||||
#### List Members
|
||||
null
|
||||
```
|
||||
|
||||
## Team Members
|
||||
|
||||
### List Members
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/list
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"limit": 100
|
||||
}
|
||||
{"limit": 100}
|
||||
```
|
||||
|
||||
#### Get Member Info
|
||||
### List Members (V2) - Recommended
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/list_v2
|
||||
Content-Type: application/json
|
||||
|
||||
{"limit": 100, "include_removed": false}
|
||||
```
|
||||
|
||||
### Continue Listing Members
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/list/continue
|
||||
Content-Type: application/json
|
||||
|
||||
{"cursor": "..."}
|
||||
```
|
||||
|
||||
### Get Member Info
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/get_info
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"members": [{".tag": "email", "email": "user@company.com"}]
|
||||
}
|
||||
{"members": [{".tag": "email", "email": "user@company.com"}]}
|
||||
```
|
||||
|
||||
#### Add Member
|
||||
### Get Member Info (V2) - Recommended
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/get_info_v2
|
||||
Content-Type: application/json
|
||||
|
||||
{"members": [{".tag": "email", "email": "user@company.com"}]}
|
||||
```
|
||||
|
||||
### Add Member
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/add
|
||||
Content-Type: application/json
|
||||
@@ -64,24 +95,152 @@ Content-Type: application/json
|
||||
"new_members": [{
|
||||
"member_email": "user@company.com",
|
||||
"member_given_name": "John",
|
||||
"member_surname": "Doe"
|
||||
"member_surname": "Doe",
|
||||
"send_welcome_email": true
|
||||
}]
|
||||
}
|
||||
```
|
||||
|
||||
### Groups
|
||||
### Suspend Member
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/suspend
|
||||
Content-Type: application/json
|
||||
|
||||
#### List Groups
|
||||
{"user": {".tag": "email", "email": "user@company.com"}, "wipe_data": false}
|
||||
```
|
||||
|
||||
### Unsuspend Member
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/unsuspend
|
||||
Content-Type: application/json
|
||||
|
||||
{"user": {".tag": "email", "email": "user@company.com"}}
|
||||
```
|
||||
|
||||
### Remove Member
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/remove
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"user": {".tag": "email", "email": "user@company.com"},
|
||||
"wipe_data": true,
|
||||
"transfer_dest_id": {".tag": "email", "email": "admin@company.com"},
|
||||
"transfer_admin_id": {".tag": "email", "email": "admin@company.com"},
|
||||
"keep_account": false
|
||||
}
|
||||
```
|
||||
|
||||
### Send Welcome Email
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/send_welcome_email
|
||||
Content-Type: application/json
|
||||
|
||||
{".tag": "email", "email": "pending@company.com"}
|
||||
```
|
||||
|
||||
### Set Member Profile (V2)
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/set_profile_v2
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"user": {".tag": "team_member_id", "team_member_id": "dbmid:AAA..."},
|
||||
"new_given_name": "John",
|
||||
"new_surname": "Smith"
|
||||
}
|
||||
```
|
||||
|
||||
### Set Admin Permissions (V2)
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/set_admin_permissions_v2
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"user": {".tag": "email", "email": "user@company.com"},
|
||||
"new_roles": ["pid_dbtmr:..."]
|
||||
}
|
||||
```
|
||||
|
||||
### Delete Profile Photo (V2)
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/delete_profile_photo_v2
|
||||
Content-Type: application/json
|
||||
|
||||
{"user": {".tag": "team_member_id", "team_member_id": "dbmid:AAA..."}}
|
||||
```
|
||||
|
||||
## Secondary Emails
|
||||
|
||||
### Add Secondary Emails
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/secondary_emails/add
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"new_secondary_emails": [{
|
||||
"user": {".tag": "email", "email": "user@company.com"},
|
||||
"secondary_emails": ["alias@company.com"]
|
||||
}]
|
||||
}
|
||||
```
|
||||
|
||||
### Delete Secondary Emails
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/secondary_emails/delete
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"emails_to_delete": [{
|
||||
"user": {".tag": "email", "email": "user@company.com"},
|
||||
"secondary_emails": ["alias@company.com"]
|
||||
}]
|
||||
}
|
||||
```
|
||||
|
||||
### Resend Verification Emails
|
||||
```bash
|
||||
POST /dropbox-business/2/team/members/secondary_emails/resend_verification_emails
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"emails_to_resend": [{
|
||||
"user": {".tag": "email", "email": "user@company.com"},
|
||||
"secondary_emails": ["alias@company.com"]
|
||||
}]
|
||||
}
|
||||
```
|
||||
|
||||
## Groups
|
||||
|
||||
### List Groups
|
||||
```bash
|
||||
POST /dropbox-business/2/team/groups/list
|
||||
Content-Type: application/json
|
||||
|
||||
{"limit": 100}
|
||||
```
|
||||
|
||||
### Get Group Info
|
||||
```bash
|
||||
POST /dropbox-business/2/team/groups/get_info
|
||||
Content-Type: application/json
|
||||
|
||||
{".tag": "group_ids", "group_ids": ["g:1d31f47b..."]}
|
||||
```
|
||||
|
||||
### List Group Members
|
||||
```bash
|
||||
POST /dropbox-business/2/team/groups/members/list
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"group": {".tag": "group_id", "group_id": "g:1d31f47b..."},
|
||||
"limit": 100
|
||||
}
|
||||
```
|
||||
|
||||
#### Create Group
|
||||
### Create Group
|
||||
```bash
|
||||
POST /dropbox-business/2/team/groups/create
|
||||
Content-Type: application/json
|
||||
@@ -92,43 +251,136 @@ Content-Type: application/json
|
||||
}
|
||||
```
|
||||
|
||||
### Team Folders
|
||||
### Update Group
|
||||
```bash
|
||||
POST /dropbox-business/2/team/groups/update
|
||||
Content-Type: application/json
|
||||
|
||||
#### List Team Folders
|
||||
{
|
||||
"group": {".tag": "group_id", "group_id": "g:1d31f47b..."},
|
||||
"new_group_name": "New Name"
|
||||
}
|
||||
```
|
||||
|
||||
### Add Members to Group
|
||||
```bash
|
||||
POST /dropbox-business/2/team/groups/members/add
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"group": {".tag": "group_id", "group_id": "g:1d31f47b..."},
|
||||
"members": [{"user": {".tag": "email", "email": "user@company.com"}, "access_type": {".tag": "member"}}],
|
||||
"return_members": true
|
||||
}
|
||||
```
|
||||
|
||||
### Remove Members from Group
|
||||
```bash
|
||||
POST /dropbox-business/2/team/groups/members/remove
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"group": {".tag": "group_id", "group_id": "g:1d31f47b..."},
|
||||
"users": [{".tag": "email", "email": "user@company.com"}],
|
||||
"return_members": true
|
||||
}
|
||||
```
|
||||
|
||||
### Delete Group
|
||||
```bash
|
||||
POST /dropbox-business/2/team/groups/delete
|
||||
Content-Type: application/json
|
||||
|
||||
{".tag": "group_id", "group_id": "g:1d31f47b..."}
|
||||
```
|
||||
|
||||
### Check Group Job Status
|
||||
```bash
|
||||
POST /dropbox-business/2/team/groups/job_status/get
|
||||
Content-Type: application/json
|
||||
|
||||
{"async_job_id": "dbjid:..."}
|
||||
```
|
||||
|
||||
## Team Folders
|
||||
|
||||
### List Team Folders
|
||||
```bash
|
||||
POST /dropbox-business/2/team/team_folder/list
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"limit": 100
|
||||
}
|
||||
{"limit": 100}
|
||||
```
|
||||
|
||||
#### Create Team Folder
|
||||
### Get Team Folder Info
|
||||
```bash
|
||||
POST /dropbox-business/2/team/team_folder/get_info
|
||||
Content-Type: application/json
|
||||
|
||||
{"team_folder_ids": ["13646676387"]}
|
||||
```
|
||||
|
||||
### Create Team Folder
|
||||
```bash
|
||||
POST /dropbox-business/2/team/team_folder/create
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"name": "Folder Name"
|
||||
}
|
||||
{"name": "Folder Name", "sync_setting": {".tag": "default"}}
|
||||
```
|
||||
|
||||
### Namespaces
|
||||
### Rename Team Folder
|
||||
```bash
|
||||
POST /dropbox-business/2/team/team_folder/rename
|
||||
Content-Type: application/json
|
||||
|
||||
#### List Namespaces
|
||||
{"team_folder_id": "13646676387", "name": "New Name"}
|
||||
```
|
||||
|
||||
### Archive Team Folder
|
||||
```bash
|
||||
POST /dropbox-business/2/team/team_folder/archive
|
||||
Content-Type: application/json
|
||||
|
||||
{"team_folder_id": "13646676387", "force_async_off": false}
|
||||
```
|
||||
|
||||
### Activate Team Folder
|
||||
```bash
|
||||
POST /dropbox-business/2/team/team_folder/activate
|
||||
Content-Type: application/json
|
||||
|
||||
{"team_folder_id": "13646676387"}
|
||||
```
|
||||
|
||||
### Update Sync Settings
|
||||
```bash
|
||||
POST /dropbox-business/2/team/team_folder/update_sync_settings
|
||||
Content-Type: application/json
|
||||
|
||||
{"team_folder_id": "13646676387", "sync_setting": {".tag": "default"}}
|
||||
```
|
||||
|
||||
### Permanently Delete Team Folder
|
||||
```bash
|
||||
POST /dropbox-business/2/team/team_folder/permanently_delete
|
||||
Content-Type: application/json
|
||||
|
||||
{"team_folder_id": "13646676387"}
|
||||
```
|
||||
|
||||
## Namespaces
|
||||
|
||||
### List Namespaces
|
||||
```bash
|
||||
POST /dropbox-business/2/team/namespaces/list
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"limit": 100
|
||||
}
|
||||
{"limit": 100}
|
||||
```
|
||||
|
||||
### Devices
|
||||
## Devices
|
||||
|
||||
#### List Members' Devices
|
||||
### List Members' Devices
|
||||
```bash
|
||||
POST /dropbox-business/2/team/devices/list_members_devices
|
||||
Content-Type: application/json
|
||||
@@ -136,16 +388,147 @@ Content-Type: application/json
|
||||
{}
|
||||
```
|
||||
|
||||
### Audit Log
|
||||
### List Member Devices
|
||||
```bash
|
||||
POST /dropbox-business/2/team/devices/list_member_devices
|
||||
Content-Type: application/json
|
||||
|
||||
#### Get Events
|
||||
{"team_member_id": "dbmid:AAA..."}
|
||||
```
|
||||
|
||||
### Revoke Device Session
|
||||
```bash
|
||||
POST /dropbox-business/2/team/devices/revoke_device_session
|
||||
Content-Type: application/json
|
||||
|
||||
{".tag": "web_session", "session_id": "dbwsid:...", "team_member_id": "dbmid:AAA..."}
|
||||
```
|
||||
|
||||
### Revoke Device Sessions (Batch)
|
||||
```bash
|
||||
POST /dropbox-business/2/team/devices/revoke_device_session_batch
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"revoke_devices": [
|
||||
{".tag": "web_session", "session_id": "dbwsid:...", "team_member_id": "dbmid:AAA..."}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
## Linked Apps
|
||||
|
||||
### List Members' Linked Apps
|
||||
```bash
|
||||
POST /dropbox-business/2/team/linked_apps/list_members_linked_apps
|
||||
Content-Type: application/json
|
||||
|
||||
{}
|
||||
```
|
||||
|
||||
### List Team Linked Apps
|
||||
```bash
|
||||
POST /dropbox-business/2/team/linked_apps/list_team_linked_apps
|
||||
Content-Type: application/json
|
||||
|
||||
{}
|
||||
```
|
||||
|
||||
### Revoke Linked App
|
||||
```bash
|
||||
POST /dropbox-business/2/team/linked_apps/revoke_linked_app
|
||||
Content-Type: application/json
|
||||
|
||||
{"app_id": "...", "team_member_id": "dbmid:AAA..."}
|
||||
```
|
||||
|
||||
## Member Space Limits
|
||||
|
||||
### Get Custom Quotas
|
||||
```bash
|
||||
POST /dropbox-business/2/team/member_space_limits/get_custom_quota
|
||||
Content-Type: application/json
|
||||
|
||||
{"users": [{".tag": "email", "email": "user@company.com"}]}
|
||||
```
|
||||
|
||||
### Set Custom Quotas
|
||||
```bash
|
||||
POST /dropbox-business/2/team/member_space_limits/set_custom_quota
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"users_and_quotas": [{
|
||||
"user": {".tag": "email", "email": "user@company.com"},
|
||||
"quota_gb": 100
|
||||
}]
|
||||
}
|
||||
```
|
||||
|
||||
### List Excluded Users
|
||||
```bash
|
||||
POST /dropbox-business/2/team/member_space_limits/excluded_users/list
|
||||
Content-Type: application/json
|
||||
|
||||
{}
|
||||
```
|
||||
|
||||
## Sharing Allowlist
|
||||
|
||||
### List Sharing Allowlist
|
||||
```bash
|
||||
POST /dropbox-business/2/team/sharing_allowlist/list
|
||||
Content-Type: application/json
|
||||
|
||||
{}
|
||||
```
|
||||
|
||||
### Add to Sharing Allowlist
|
||||
```bash
|
||||
POST /dropbox-business/2/team/sharing_allowlist/add
|
||||
Content-Type: application/json
|
||||
|
||||
{"domains": ["partner.com"], "emails": ["external@client.com"]}
|
||||
```
|
||||
|
||||
## Audit Log (Team Log)
|
||||
|
||||
### Get Events
|
||||
```bash
|
||||
POST /dropbox-business/2/team_log/get_events
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"limit": 100
|
||||
}
|
||||
{"limit": 100, "category": {".tag": "members"}}
|
||||
```
|
||||
|
||||
### Continue Getting Events
|
||||
```bash
|
||||
POST /dropbox-business/2/team_log/get_events/continue
|
||||
Content-Type: application/json
|
||||
|
||||
{"cursor": "..."}
|
||||
```
|
||||
|
||||
## Member File Access
|
||||
|
||||
Use the `Dropbox-API-Select-User` header with a team_member_id to access files on behalf of a member.
|
||||
|
||||
### List Member's Files
|
||||
```bash
|
||||
POST /dropbox-business/2/files/list_folder
|
||||
Content-Type: application/json
|
||||
Dropbox-API-Select-User: dbmid:AAA...
|
||||
|
||||
{"path": ""}
|
||||
```
|
||||
|
||||
### List Member's Shared Folders
|
||||
```bash
|
||||
POST /dropbox-business/2/sharing/list_folders
|
||||
Content-Type: application/json
|
||||
Dropbox-API-Select-User: dbmid:AAA...
|
||||
|
||||
{}
|
||||
```
|
||||
|
||||
## Notes
|
||||
@@ -154,9 +537,28 @@ Content-Type: application/json
|
||||
- Request bodies must be JSON (use `null` for no-parameter endpoints)
|
||||
- Many fields use `.tag` format for type indication
|
||||
- Pagination uses `cursor` and `has_more` fields
|
||||
- Requires team admin OAuth authorization
|
||||
- Use V2 endpoints for enhanced responses with roles info
|
||||
- `Dropbox-API-Select-User` header enables member file access
|
||||
- System-managed groups cannot be modified
|
||||
- Reports endpoints (`team/reports/*`) are deprecated
|
||||
|
||||
## OAuth Scopes
|
||||
|
||||
| Scope | Usage |
|
||||
|-------|-------|
|
||||
| `team_info.read` | Team info, features |
|
||||
| `members.read` | List/get members |
|
||||
| `members.write` | Add/modify members |
|
||||
| `members.delete` | Remove members |
|
||||
| `groups.read` | List/get groups |
|
||||
| `groups.write` | Create/modify groups |
|
||||
| `sessions.list` | List devices/sessions |
|
||||
| `sessions.modify` | Revoke sessions |
|
||||
| `events.read` | Team audit log |
|
||||
| `team_data.member` | Select-User header |
|
||||
|
||||
## Resources
|
||||
|
||||
- [Dropbox Business API Documentation](https://www.dropbox.com/developers/documentation/http/teams)
|
||||
- [Team Administration Guide](https://developers.dropbox.com/dbx-team-administration-guide)
|
||||
- [Team Files Guide](https://developers.dropbox.com/dbx-team-files-guide)
|
||||
|
||||
@@ -9,10 +9,80 @@
|
||||
/google-merchant/{sub-api}/{version}/accounts/{accountId}/{resource}
|
||||
```
|
||||
|
||||
The Merchant API uses sub-APIs: `products`, `accounts`, `datasources`, `reports`, `promotions`, `inventories`, `notifications`, `conversions`, `lfp`
|
||||
The Merchant API uses sub-APIs: `products`, `accounts`, `datasources`, `reports`, `promotions`, `inventories`, `notifications`, `conversions`
|
||||
|
||||
**Important:** The v1 API requires one-time developer registration per Merchant Center account. Complete the registration steps below before using any endpoints.
|
||||
|
||||
## Developer Registration
|
||||
|
||||
Before using v1 endpoints, you must complete a one-time registration:
|
||||
|
||||
### Step 1: Get Your Account ID
|
||||
|
||||
**Option A: Try fetching via API first**
|
||||
|
||||
Try listing accounts using the v1beta endpoint. If this works, you can get your account ID automatically:
|
||||
|
||||
```bash
|
||||
GET /google-merchant/accounts/v1beta/accounts
|
||||
```
|
||||
|
||||
Response (if successful):
|
||||
```json
|
||||
{
|
||||
"accounts": [
|
||||
{"accountId": "123456789", "accountName": "My Store"}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
**Option B: From Merchant Center UI (if Option A fails)**
|
||||
|
||||
If the v1beta endpoint is unavailable or returns an error:
|
||||
|
||||
1. Log in to [Google Merchant Center](https://merchants.google.com/)
|
||||
2. Your account ID is in the URL: `https://merchants.google.com/mc/overview?a=YOUR_ACCOUNT_ID`
|
||||
|
||||
For example, if your URL is `https://merchants.google.com/mc/overview?a=123456789`, your account ID is `123456789`.
|
||||
|
||||
### Step 2: Register for API Access
|
||||
|
||||
```bash
|
||||
POST /google-merchant/accounts/v1/accounts/{accountId}/developerRegistration:registerGcp
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"developerEmail": "your-email@example.com"
|
||||
}
|
||||
```
|
||||
|
||||
Replace `{accountId}` with your account ID from Step 1, and use the email associated with your Google account.
|
||||
|
||||
**Response:**
|
||||
```json
|
||||
{
|
||||
"name": "accounts/123456789/developerRegistration",
|
||||
"gcpIds": ["..."]
|
||||
}
|
||||
```
|
||||
|
||||
### Step 3: Verify Registration
|
||||
|
||||
After registration, test that v1 endpoints work:
|
||||
|
||||
```bash
|
||||
GET /google-merchant/accounts/v1/accounts/{accountId}
|
||||
```
|
||||
|
||||
**Note:** Registration only needs to be done once per Merchant Center account. After successful registration, all v1 endpoints will work for that account.
|
||||
|
||||
## Common Endpoints
|
||||
|
||||
### List Accounts
|
||||
```bash
|
||||
GET /google-merchant/accounts/v1/accounts
|
||||
```
|
||||
|
||||
### List Products
|
||||
```bash
|
||||
GET /google-merchant/products/v1/accounts/{accountId}/products
|
||||
@@ -34,7 +104,7 @@ Content-Type: application/json
|
||||
"offerId": "sku123",
|
||||
"contentLanguage": "en",
|
||||
"feedLabel": "US",
|
||||
"attributes": {
|
||||
"productAttributes": {
|
||||
"title": "Product Title",
|
||||
"link": "https://example.com/product",
|
||||
"imageLink": "https://example.com/image.jpg",
|
||||
@@ -60,33 +130,47 @@ POST /google-merchant/reports/v1/accounts/{accountId}/reports:search
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"query": "SELECT offer_id, title, clicks FROM product_performance_view WHERE date BETWEEN '2026-01-01' AND '2026-01-31'"
|
||||
"query": "SELECT id, offer_id, title FROM product_view LIMIT 10"
|
||||
}
|
||||
```
|
||||
|
||||
Note: The `product_view` table requires the `id` field in SELECT clause.
|
||||
|
||||
### List Promotions
|
||||
```bash
|
||||
GET /google-merchant/promotions/v1/accounts/{accountId}/promotions
|
||||
```
|
||||
|
||||
Note: Requires Promotions program enrollment.
|
||||
|
||||
### Get Account
|
||||
```bash
|
||||
GET /google-merchant/accounts/v1/accounts/{accountId}
|
||||
```
|
||||
|
||||
### List Regional Inventories
|
||||
```bash
|
||||
GET /google-merchant/inventories/v1/accounts/{accountId}/products/{productId}/regionalInventories
|
||||
```
|
||||
|
||||
### List Local Inventories
|
||||
```bash
|
||||
GET /google-merchant/inventories/v1/accounts/{accountId}/products/{productId}/localInventories
|
||||
```
|
||||
|
||||
Note: Local inventories only work for products with LOCAL channel.
|
||||
|
||||
## Notes
|
||||
|
||||
- **Developer registration required** - Complete registration before using v1 endpoints
|
||||
- Authentication is automatic - the router injects the OAuth token
|
||||
- Account ID is your Merchant Center numeric ID (visible in MC URL)
|
||||
- Product IDs use format `contentLanguage~feedLabel~offerId`
|
||||
- Monetary values use micros (divide by 1,000,000)
|
||||
- Products can only be inserted in data sources of type `API`
|
||||
- Products can only be inserted in data sources with `input: "API"` type
|
||||
- Uses token-based pagination with `pageSize` and `pageToken`
|
||||
- Promotions require account enrollment in Promotions program
|
||||
- Local inventories only work for LOCAL channel products
|
||||
|
||||
## Resources
|
||||
|
||||
|
||||
@@ -0,0 +1,95 @@
|
||||
# Granola Routing Reference
|
||||
|
||||
**App name:** `granola`
|
||||
**Base URL proxied:** `mcp.granola.ai` (MCP Server)
|
||||
|
||||
## API Path Pattern
|
||||
|
||||
Granola uses the Model Context Protocol (MCP). All requests are POST requests to tool endpoints:
|
||||
|
||||
```
|
||||
/granola/{tool_name}
|
||||
```
|
||||
|
||||
## MCP Tools
|
||||
|
||||
### Query Meeting Notes
|
||||
```bash
|
||||
POST /granola/query_granola_meetings
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"query": "What action items came from my last meeting?"
|
||||
}
|
||||
```
|
||||
|
||||
**Parameters:**
|
||||
- `query` (string, required): Natural language query about meetings
|
||||
|
||||
### List Meetings
|
||||
```bash
|
||||
POST /granola/list_meetings
|
||||
Content-Type: application/json
|
||||
|
||||
{}
|
||||
```
|
||||
|
||||
**Parameters:** None required. Returns recent meetings with metadata.
|
||||
|
||||
### Get Meetings
|
||||
```bash
|
||||
POST /granola/get_meetings
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"meeting_ids": ["0dba4400-50f1-4262-9ac7-89cd27b79371"]
|
||||
}
|
||||
```
|
||||
|
||||
**Parameters:**
|
||||
- `meeting_ids` (array of strings, required): Meeting IDs to retrieve
|
||||
|
||||
### Get Meeting Transcript
|
||||
```bash
|
||||
POST /granola/get_meeting_transcript
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"meeting_id": "0dba4400-50f1-4262-9ac7-89cd27b79371"
|
||||
}
|
||||
```
|
||||
|
||||
**Parameters:**
|
||||
- `meeting_id` (string, required): Meeting ID to get transcript for
|
||||
|
||||
**Note:** Only available on paid Granola tiers.
|
||||
|
||||
## Response Format
|
||||
|
||||
All responses follow MCP format:
|
||||
|
||||
```json
|
||||
{
|
||||
"content": [
|
||||
{
|
||||
"type": "text",
|
||||
"text": "Response content here..."
|
||||
}
|
||||
],
|
||||
"isError": false
|
||||
}
|
||||
```
|
||||
|
||||
## Notes
|
||||
|
||||
- All tool calls are POST requests with JSON body
|
||||
- Meeting IDs are UUIDs (e.g., `0dba4400-50f1-4262-9ac7-89cd27b79371`)
|
||||
- Users can only access their own meeting notes
|
||||
- Free tier users limited to notes from last 30 days
|
||||
- Transcripts require paid Granola tier
|
||||
- Rate limit: ~100 requests/minute
|
||||
|
||||
## Resources
|
||||
|
||||
- [Granola MCP Documentation](https://docs.granola.ai/help-center/sharing/integrations/mcp)
|
||||
- [Granola Help Center](https://docs.granola.ai)
|
||||
@@ -0,0 +1,306 @@
|
||||
# Microsoft Teams Routing Reference
|
||||
|
||||
**App name:** `microsoft-teams`
|
||||
**Base URL proxied:** `graph.microsoft.com`
|
||||
|
||||
## API Path Pattern
|
||||
|
||||
```
|
||||
/microsoft-teams/v1.0/{resource}
|
||||
```
|
||||
|
||||
## Common Endpoints
|
||||
|
||||
### Teams
|
||||
|
||||
#### List Joined Teams
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/me/joinedTeams
|
||||
```
|
||||
|
||||
#### Get Team
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/teams/{team-id}
|
||||
```
|
||||
|
||||
### Channels
|
||||
|
||||
#### List Channels
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/teams/{team-id}/channels
|
||||
```
|
||||
|
||||
#### List Private Channels
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/teams/{team-id}/channels?$filter=membershipType eq 'private'
|
||||
```
|
||||
|
||||
#### Get Channel
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/teams/{team-id}/channels/{channel-id}
|
||||
```
|
||||
|
||||
#### Create Channel
|
||||
```bash
|
||||
POST /microsoft-teams/v1.0/teams/{team-id}/channels
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"displayName": "Channel Name",
|
||||
"description": "Description",
|
||||
"membershipType": "standard"
|
||||
}
|
||||
```
|
||||
|
||||
#### Update Channel
|
||||
```bash
|
||||
PATCH /microsoft-teams/v1.0/teams/{team-id}/channels/{channel-id}
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"description": "Updated description"
|
||||
}
|
||||
```
|
||||
|
||||
#### Delete Channel
|
||||
```bash
|
||||
DELETE /microsoft-teams/v1.0/teams/{team-id}/channels/{channel-id}
|
||||
```
|
||||
|
||||
### Channel Members
|
||||
|
||||
#### List Channel Members
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/teams/{team-id}/channels/{channel-id}/members
|
||||
```
|
||||
|
||||
### Messages
|
||||
|
||||
#### List Channel Messages
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/teams/{team-id}/channels/{channel-id}/messages
|
||||
```
|
||||
|
||||
#### Send Message
|
||||
```bash
|
||||
POST /microsoft-teams/v1.0/teams/{team-id}/channels/{channel-id}/messages
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"body": {
|
||||
"content": "Hello World"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
#### Send HTML Message
|
||||
```bash
|
||||
POST /microsoft-teams/v1.0/teams/{team-id}/channels/{channel-id}/messages
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"body": {
|
||||
"contentType": "html",
|
||||
"content": "<p>Formatted message</p>"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
#### Reply to Message
|
||||
```bash
|
||||
POST /microsoft-teams/v1.0/teams/{team-id}/channels/{channel-id}/messages/{message-id}/replies
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"body": {
|
||||
"content": "Reply content"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
#### List Message Replies
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/teams/{team-id}/channels/{channel-id}/messages/{message-id}/replies
|
||||
```
|
||||
|
||||
#### Edit Message
|
||||
```bash
|
||||
PATCH /microsoft-teams/v1.0/teams/{team-id}/channels/{channel-id}/messages/{message-id}
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"body": {
|
||||
"content": "Updated message content"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Team Members
|
||||
|
||||
#### List Members
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/teams/{team-id}/members
|
||||
```
|
||||
|
||||
### Presence
|
||||
|
||||
#### Get User Presence
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/me/presence
|
||||
```
|
||||
|
||||
#### Get User Presence by ID
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/users/{user-id}/presence
|
||||
```
|
||||
|
||||
### Tabs
|
||||
|
||||
#### List Channel Tabs
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/teams/{team-id}/channels/{channel-id}/tabs
|
||||
```
|
||||
|
||||
### Apps
|
||||
|
||||
#### List Installed Apps
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/teams/{team-id}/installedApps
|
||||
```
|
||||
|
||||
### Online Meetings
|
||||
|
||||
#### Create Meeting
|
||||
```bash
|
||||
POST /microsoft-teams/v1.0/me/onlineMeetings
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"subject": "Team Sync",
|
||||
"startDateTime": "2026-02-18T10:00:00Z",
|
||||
"endDateTime": "2026-02-18T11:00:00Z"
|
||||
}
|
||||
```
|
||||
|
||||
#### Create Meeting with Attendees
|
||||
```bash
|
||||
POST /microsoft-teams/v1.0/me/onlineMeetings
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"subject": "Project Review",
|
||||
"startDateTime": "2026-02-18T14:00:00Z",
|
||||
"endDateTime": "2026-02-18T15:00:00Z",
|
||||
"participants": {
|
||||
"attendees": [
|
||||
{
|
||||
"upn": "attendee@example.com",
|
||||
"role": "attendee"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
#### Get Meeting
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/me/onlineMeetings/{meeting-id}
|
||||
```
|
||||
|
||||
#### Find Meeting by Join URL
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/me/onlineMeetings?$filter=JoinWebUrl eq '{encoded-join-url}'
|
||||
```
|
||||
|
||||
#### Delete Meeting
|
||||
```bash
|
||||
DELETE /microsoft-teams/v1.0/me/onlineMeetings/{meeting-id}
|
||||
```
|
||||
|
||||
#### List Calendar Events
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/me/calendar/events?$top=10
|
||||
```
|
||||
|
||||
#### List Meeting Recordings
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/me/onlineMeetings/{meeting-id}/recordings
|
||||
```
|
||||
|
||||
#### Get Meeting Recording
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/me/onlineMeetings/{meeting-id}/recordings/{recording-id}
|
||||
```
|
||||
|
||||
#### List Meeting Transcripts
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/me/onlineMeetings/{meeting-id}/transcripts
|
||||
```
|
||||
|
||||
#### Get Meeting Transcript
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/me/onlineMeetings/{meeting-id}/transcripts/{transcript-id}
|
||||
```
|
||||
|
||||
#### List Attendance Reports
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/me/onlineMeetings/{meeting-id}/attendanceReports
|
||||
```
|
||||
|
||||
#### Get Attendance Report
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/me/onlineMeetings/{meeting-id}/attendanceReports/{report-id}
|
||||
```
|
||||
|
||||
### Chats
|
||||
|
||||
#### List Chats
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/me/chats
|
||||
```
|
||||
|
||||
#### Get Chat
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/chats/{chat-id}
|
||||
```
|
||||
|
||||
#### List Chat Messages
|
||||
```bash
|
||||
GET /microsoft-teams/v1.0/chats/{chat-id}/messages
|
||||
```
|
||||
|
||||
#### Send Chat Message
|
||||
```bash
|
||||
POST /microsoft-teams/v1.0/chats/{chat-id}/messages
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"body": {
|
||||
"content": "Hello"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## OData Query Parameters
|
||||
|
||||
- `$top=10` - Limit results
|
||||
- `$skip=20` - Skip results
|
||||
- `$select=id,displayName` - Select specific fields
|
||||
- `$filter=membershipType eq 'private'` - Filter results
|
||||
- `$orderby=displayName` - Sort results
|
||||
|
||||
## Notes
|
||||
|
||||
- Uses Microsoft Graph API (`graph.microsoft.com`)
|
||||
- Channel IDs include thread suffix: `19:xxx@thread.tacv2`
|
||||
- Message body content types: `text` or `html`
|
||||
- Channel membership types: `standard`, `private`, `shared`
|
||||
- Supports OData query parameters for filtering and pagination
|
||||
- Meeting recordings/transcripts available after meeting ends
|
||||
|
||||
## Resources
|
||||
|
||||
- [Microsoft Teams API Overview](https://learn.microsoft.com/en-us/graph/api/resources/teams-api-overview)
|
||||
- [Microsoft Graph API Reference](https://learn.microsoft.com/en-us/graph/api/overview)
|
||||
- [Channel Resource](https://learn.microsoft.com/en-us/graph/api/resources/channel)
|
||||
- [ChatMessage Resource](https://learn.microsoft.com/en-us/graph/api/resources/chatmessage)
|
||||
@@ -0,0 +1,166 @@
|
||||
# PostHog Routing Reference
|
||||
|
||||
**App name:** `posthog`
|
||||
**Base URL proxied:** `{subdomain}.posthog.com`
|
||||
|
||||
## API Path Pattern
|
||||
|
||||
```
|
||||
/posthog/api/{resource}
|
||||
/posthog/api/projects/{project_id}/{resource}
|
||||
```
|
||||
|
||||
## Common Endpoints
|
||||
|
||||
### Get Current User
|
||||
```bash
|
||||
GET /posthog/api/users/@me/
|
||||
```
|
||||
|
||||
### Get Current Organization
|
||||
```bash
|
||||
GET /posthog/api/organizations/@current/
|
||||
```
|
||||
|
||||
### List Projects
|
||||
```bash
|
||||
GET /posthog/api/projects/
|
||||
```
|
||||
|
||||
### Get Current Project
|
||||
```bash
|
||||
GET /posthog/api/projects/@current/
|
||||
```
|
||||
|
||||
### Run HogQL Query
|
||||
```bash
|
||||
POST /posthog/api/projects/{project_id}/query/
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"query": {
|
||||
"kind": "HogQLQuery",
|
||||
"query": "SELECT event, count() FROM events GROUP BY event LIMIT 10"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### List Persons
|
||||
```bash
|
||||
GET /posthog/api/projects/{project_id}/persons/?limit=10
|
||||
```
|
||||
|
||||
### Get Person
|
||||
```bash
|
||||
GET /posthog/api/projects/{project_id}/persons/{person_uuid}/
|
||||
```
|
||||
|
||||
### List Dashboards
|
||||
```bash
|
||||
GET /posthog/api/projects/{project_id}/dashboards/
|
||||
```
|
||||
|
||||
### Get Dashboard
|
||||
```bash
|
||||
GET /posthog/api/projects/{project_id}/dashboards/{dashboard_id}/
|
||||
```
|
||||
|
||||
### Create Dashboard
|
||||
```bash
|
||||
POST /posthog/api/projects/{project_id}/dashboards/
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"name": "My Dashboard",
|
||||
"description": "Analytics overview"
|
||||
}
|
||||
```
|
||||
|
||||
### List Insights
|
||||
```bash
|
||||
GET /posthog/api/projects/{project_id}/insights/?limit=10
|
||||
```
|
||||
|
||||
### List Feature Flags
|
||||
```bash
|
||||
GET /posthog/api/projects/{project_id}/feature_flags/
|
||||
```
|
||||
|
||||
### Create Feature Flag
|
||||
```bash
|
||||
POST /posthog/api/projects/{project_id}/feature_flags/
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"key": "my-feature-flag",
|
||||
"name": "My Feature Flag",
|
||||
"active": true,
|
||||
"filters": {
|
||||
"groups": [{"rollout_percentage": 100}]
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Delete Feature Flag
|
||||
Use soft delete by setting `deleted: true`:
|
||||
```bash
|
||||
PATCH /posthog/api/projects/{project_id}/feature_flags/{flag_id}/
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"deleted": true
|
||||
}
|
||||
```
|
||||
|
||||
### List Session Recordings
|
||||
```bash
|
||||
GET /posthog/api/projects/{project_id}/session_recordings/?limit=10
|
||||
```
|
||||
|
||||
### List Cohorts
|
||||
```bash
|
||||
GET /posthog/api/projects/{project_id}/cohorts/
|
||||
```
|
||||
|
||||
### List Actions
|
||||
```bash
|
||||
GET /posthog/api/projects/{project_id}/actions/
|
||||
```
|
||||
|
||||
### List Experiments
|
||||
```bash
|
||||
GET /posthog/api/projects/{project_id}/experiments/
|
||||
```
|
||||
|
||||
### List Surveys
|
||||
```bash
|
||||
GET /posthog/api/projects/{project_id}/surveys/
|
||||
```
|
||||
|
||||
### List Event Definitions
|
||||
```bash
|
||||
GET /posthog/api/projects/{project_id}/event_definitions/?limit=10
|
||||
```
|
||||
|
||||
### List Property Definitions
|
||||
```bash
|
||||
GET /posthog/api/projects/{project_id}/property_definitions/?limit=10
|
||||
```
|
||||
|
||||
## Notes
|
||||
|
||||
- Use `@current` as a shortcut for the current project ID (e.g., `/api/projects/@current/dashboards/`)
|
||||
- Project IDs are integers (e.g., `136209`)
|
||||
- Person UUIDs are in standard UUID format
|
||||
- The Events endpoint is deprecated; use the Query endpoint with HogQL instead
|
||||
- All project-scoped endpoints require `{project_id}` or `@current`
|
||||
- Pagination uses `limit` and `offset` query parameters
|
||||
- PostHog uses soft delete: use `PATCH` with `{"deleted": true}` instead of HTTP DELETE
|
||||
|
||||
## Resources
|
||||
|
||||
- [PostHog API Overview](https://posthog.com/docs/api)
|
||||
- [HogQL Documentation](https://posthog.com/docs/hogql)
|
||||
- [Feature Flags](https://posthog.com/docs/feature-flags)
|
||||
- [Session Replay](https://posthog.com/docs/session-replay)
|
||||
- [Experiments](https://posthog.com/docs/experiments)
|
||||
@@ -0,0 +1,155 @@
|
||||
# Sentry Routing Reference
|
||||
|
||||
**App name:** `sentry`
|
||||
**Base URL proxied:** `{subdomain}.sentry.io`
|
||||
|
||||
## API Path Pattern
|
||||
|
||||
```
|
||||
/sentry/api/0/{resource}
|
||||
```
|
||||
|
||||
Sentry API uses version `0` prefix in all paths.
|
||||
|
||||
## Common Endpoints
|
||||
|
||||
### List Organizations
|
||||
```bash
|
||||
GET /sentry/api/0/organizations/
|
||||
```
|
||||
|
||||
### Retrieve Organization
|
||||
```bash
|
||||
GET /sentry/api/0/organizations/{organization_slug}/
|
||||
```
|
||||
|
||||
### List Organization Projects
|
||||
```bash
|
||||
GET /sentry/api/0/organizations/{organization_slug}/projects/
|
||||
```
|
||||
|
||||
### List Organization Members
|
||||
```bash
|
||||
GET /sentry/api/0/organizations/{organization_slug}/members/
|
||||
```
|
||||
|
||||
### Retrieve Project
|
||||
```bash
|
||||
GET /sentry/api/0/projects/{organization_slug}/{project_slug}/
|
||||
```
|
||||
|
||||
### List Project Issues
|
||||
```bash
|
||||
GET /sentry/api/0/projects/{organization_slug}/{project_slug}/issues/
|
||||
```
|
||||
|
||||
Query parameters:
|
||||
- `statsPeriod` - Stats period: `24h`, `14d`, or empty
|
||||
- `query` - Sentry search query (default: `is:unresolved`)
|
||||
- `cursor` - Pagination cursor
|
||||
|
||||
### List Organization Issues
|
||||
```bash
|
||||
GET /sentry/api/0/organizations/{organization_slug}/issues/
|
||||
```
|
||||
|
||||
### Retrieve Issue
|
||||
```bash
|
||||
GET /sentry/api/0/issues/{issue_id}/
|
||||
```
|
||||
|
||||
### Update Issue
|
||||
```bash
|
||||
PUT /sentry/api/0/issues/{issue_id}/
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"status": "resolved"
|
||||
}
|
||||
```
|
||||
|
||||
Status values: `resolved`, `unresolved`, `ignored`
|
||||
|
||||
### Delete Issue
|
||||
```bash
|
||||
DELETE /sentry/api/0/issues/{issue_id}/
|
||||
```
|
||||
|
||||
### List Issue Events
|
||||
```bash
|
||||
GET /sentry/api/0/issues/{issue_id}/events/
|
||||
```
|
||||
|
||||
### List Project Events
|
||||
```bash
|
||||
GET /sentry/api/0/projects/{organization_slug}/{project_slug}/events/
|
||||
```
|
||||
|
||||
### List Organization Teams
|
||||
```bash
|
||||
GET /sentry/api/0/organizations/{organization_slug}/teams/
|
||||
```
|
||||
|
||||
### Create Team
|
||||
```bash
|
||||
POST /sentry/api/0/organizations/{organization_slug}/teams/
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"name": "New Team",
|
||||
"slug": "new-team"
|
||||
}
|
||||
```
|
||||
|
||||
### Retrieve Team
|
||||
```bash
|
||||
GET /sentry/api/0/teams/{organization_slug}/{team_slug}/
|
||||
```
|
||||
|
||||
### List Organization Releases
|
||||
```bash
|
||||
GET /sentry/api/0/organizations/{organization_slug}/releases/
|
||||
```
|
||||
|
||||
### Create Release
|
||||
```bash
|
||||
POST /sentry/api/0/organizations/{organization_slug}/releases/
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"version": "1.0.0",
|
||||
"projects": ["project-slug"]
|
||||
}
|
||||
```
|
||||
|
||||
### Retrieve Release
|
||||
```bash
|
||||
GET /sentry/api/0/organizations/{organization_slug}/releases/{version}/
|
||||
```
|
||||
|
||||
### Create Deploy
|
||||
```bash
|
||||
POST /sentry/api/0/organizations/{organization_slug}/releases/{version}/deploys/
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"environment": "production"
|
||||
}
|
||||
```
|
||||
|
||||
## Notes
|
||||
|
||||
- Organization and project identifiers use slugs (lowercase, hyphenated)
|
||||
- Issue IDs are numeric
|
||||
- Release versions can contain special characters (URL encode as needed)
|
||||
- Uses cursor-based pagination via Link header
|
||||
- Most endpoints require OAuth scopes like `event:read`, `project:read`, `org:read`
|
||||
|
||||
## Resources
|
||||
|
||||
- [Sentry API Documentation](https://docs.sentry.io/api/)
|
||||
- [Events API](https://docs.sentry.io/api/events/)
|
||||
- [Projects API](https://docs.sentry.io/api/projects/)
|
||||
- [Organizations API](https://docs.sentry.io/api/organizations/)
|
||||
- [Teams API](https://docs.sentry.io/api/teams/)
|
||||
- [Releases API](https://docs.sentry.io/api/releases/)
|
||||
@@ -0,0 +1,325 @@
|
||||
# Squarespace Routing Reference
|
||||
|
||||
**App name:** `squarespace`
|
||||
**Base URL proxied:** `api.squarespace.com`
|
||||
|
||||
## API Path Pattern
|
||||
|
||||
```
|
||||
/squarespace/v2/commerce/products # Products API (v2)
|
||||
/squarespace/1.0/commerce/store_pages # Store Pages (1.0 only)
|
||||
/squarespace/1.0/commerce/inventory # Inventory API
|
||||
/squarespace/1.0/commerce/orders # Orders API
|
||||
/squarespace/1.0/commerce/transactions # Transactions API
|
||||
/squarespace/1.0/profiles # Profiles API
|
||||
```
|
||||
|
||||
## Important Notes
|
||||
|
||||
- All requests require a `User-Agent` header describing your application
|
||||
- Requests without a custom User-Agent are subject to stricter rate limits
|
||||
- Maximum 50 items per batch request
|
||||
- Idempotency-Key header is required for stock adjustments and order creation
|
||||
- Rate limit: 300 requests per minute (5 per second)
|
||||
- Create Order has a stricter rate limit: 100 requests per hour per website
|
||||
|
||||
## Common Endpoints
|
||||
|
||||
### Inventory
|
||||
|
||||
#### List All Inventory
|
||||
```bash
|
||||
GET /squarespace/1.0/commerce/inventory
|
||||
GET /squarespace/1.0/commerce/inventory?cursor={cursor}
|
||||
```
|
||||
|
||||
#### Get Specific Inventory
|
||||
```bash
|
||||
GET /squarespace/1.0/commerce/inventory/{variantId1},{variantId2}
|
||||
```
|
||||
Max 50 variant IDs per request.
|
||||
|
||||
#### Adjust Stock Quantities
|
||||
```bash
|
||||
POST /squarespace/1.0/commerce/inventory/adjustments
|
||||
Content-Type: application/json
|
||||
Idempotency-Key: unique-key-here
|
||||
|
||||
{
|
||||
"incrementOperations": [{"variantId": "variant-id", "quantity": 5}],
|
||||
"decrementOperations": [{"variantId": "variant-id", "quantity": 2}],
|
||||
"setFiniteOperations": [{"variantId": "variant-id", "quantity": 100}],
|
||||
"setUnlimitedOperations": ["variant-id"]
|
||||
}
|
||||
```
|
||||
|
||||
### Orders
|
||||
|
||||
#### List All Orders
|
||||
```bash
|
||||
GET /squarespace/1.0/commerce/orders
|
||||
GET /squarespace/1.0/commerce/orders?fulfillmentStatus=PENDING
|
||||
GET /squarespace/1.0/commerce/orders?modifiedAfter=2024-01-01T00:00:00Z&modifiedBefore=2024-12-31T23:59:59Z
|
||||
GET /squarespace/1.0/commerce/orders?customerId={customerId}
|
||||
```
|
||||
|
||||
Note: Cannot combine `cursor` with date range parameters.
|
||||
|
||||
#### Get Specific Order
|
||||
```bash
|
||||
GET /squarespace/1.0/commerce/orders/{orderId}
|
||||
```
|
||||
|
||||
#### Create Order
|
||||
```bash
|
||||
POST /squarespace/1.0/commerce/orders
|
||||
Content-Type: application/json
|
||||
Idempotency-Key: unique-key-here
|
||||
|
||||
{
|
||||
"channelName": "External Store",
|
||||
"externalOrderReference": "ORDER-12345",
|
||||
"customerEmail": "customer@example.com",
|
||||
"lineItems": [
|
||||
{
|
||||
"lineItemType": "PHYSICAL_PRODUCT",
|
||||
"variantId": "variant-id",
|
||||
"quantity": 2,
|
||||
"unitPricePaid": {"currency": "USD", "value": "29.99"}
|
||||
}
|
||||
],
|
||||
"subtotal": {"currency": "USD", "value": "59.98"},
|
||||
"priceTaxInterpretation": "EXCLUSIVE",
|
||||
"grandTotal": {"currency": "USD", "value": "59.98"},
|
||||
"createdOn": "2024-01-15T10:30:00Z"
|
||||
}
|
||||
```
|
||||
|
||||
Note: `subtotal` must equal sum of `lineItems.unitPricePaid.value * quantity`.
|
||||
|
||||
#### Fulfill Order
|
||||
```bash
|
||||
POST /squarespace/1.0/commerce/orders/{orderId}/fulfillments
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"shouldSendNotification": true,
|
||||
"shipments": [
|
||||
{
|
||||
"shipDate": "2024-01-16T08:00:00Z",
|
||||
"carrierName": "USPS",
|
||||
"service": "Priority Mail",
|
||||
"trackingNumber": "9400111899223456789012",
|
||||
"trackingUrl": "https://tools.usps.com/go/TrackConfirmAction?tLabels=9400111899223456789012"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### Products (v2 API)
|
||||
|
||||
#### List Store Pages
|
||||
```bash
|
||||
GET /squarespace/1.0/commerce/store_pages
|
||||
```
|
||||
Note: Store Pages endpoint uses v1.0 (no v2 available).
|
||||
|
||||
#### List All Products
|
||||
```bash
|
||||
GET /squarespace/v2/commerce/products
|
||||
GET /squarespace/v2/commerce/products?type=PHYSICAL,SERVICE,GIFT_CARD,DIGITAL
|
||||
GET /squarespace/v2/commerce/products?modifiedAfter=2024-01-01T00:00:00Z
|
||||
```
|
||||
|
||||
Note: Cannot combine `cursor` with date/type filters.
|
||||
|
||||
#### Get Specific Products
|
||||
```bash
|
||||
GET /squarespace/v2/commerce/products/{productId1},{productId2}
|
||||
```
|
||||
Max 50 product IDs per request.
|
||||
|
||||
#### Create Product
|
||||
```bash
|
||||
POST /squarespace/v2/commerce/products
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"type": "PHYSICAL",
|
||||
"storePageId": "store-page-id",
|
||||
"name": "New Product",
|
||||
"description": "<p>Product description</p>",
|
||||
"urlSlug": "new-product",
|
||||
"isVisible": true,
|
||||
"variants": [
|
||||
{
|
||||
"sku": "SKU-001",
|
||||
"pricing": {"basePrice": {"currency": "USD", "value": "49.99"}},
|
||||
"stock": {"quantity": 100, "unlimited": false}
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
#### Update Product
|
||||
```bash
|
||||
POST /squarespace/v2/commerce/products/{productId}
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"name": "Updated Product Name",
|
||||
"isVisible": true
|
||||
}
|
||||
```
|
||||
|
||||
#### Delete Product
|
||||
```bash
|
||||
DELETE /squarespace/v2/commerce/products/{productId}
|
||||
```
|
||||
|
||||
### Product Variants (v2 API)
|
||||
|
||||
#### Create Variant
|
||||
```bash
|
||||
POST /squarespace/v2/commerce/products/{productId}/variants
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"sku": "SKU-002",
|
||||
"pricing": {"basePrice": {"currency": "USD", "value": "59.99"}},
|
||||
"stock": {"quantity": 50, "unlimited": false},
|
||||
"attributes": {"Size": "Large"}
|
||||
}
|
||||
```
|
||||
|
||||
Note: To use `attributes`, product must have matching `variantAttributes` set first via Update Product.
|
||||
|
||||
#### Update Variant
|
||||
```bash
|
||||
POST /squarespace/v2/commerce/products/{productId}/variants/{variantId}
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"sku": "SKU-002-UPDATED",
|
||||
"pricing": {"basePrice": {"currency": "USD", "value": "64.99"}}
|
||||
}
|
||||
```
|
||||
|
||||
#### Delete Variant
|
||||
```bash
|
||||
DELETE /squarespace/v2/commerce/products/{productId}/variants/{variantId}
|
||||
```
|
||||
|
||||
### Product Images (v2 API)
|
||||
|
||||
#### Upload Image
|
||||
```bash
|
||||
POST /squarespace/v2/commerce/products/{productId}/images
|
||||
Content-Type: multipart/form-data
|
||||
|
||||
curl "https://gateway.maton.ai/squarespace/v2/commerce/products/{productId}/images" \
|
||||
-H "Authorization: Bearer $MATON_API_KEY" \
|
||||
-H "User-Agent: MyClaude/1.0" \
|
||||
-X POST \
|
||||
-F file=@image.png
|
||||
```
|
||||
|
||||
#### Check Upload Status
|
||||
```bash
|
||||
GET /squarespace/v2/commerce/products/{productId}/images/{imageId}/status
|
||||
```
|
||||
|
||||
#### Update Image Alt Text
|
||||
```bash
|
||||
POST /squarespace/v2/commerce/products/{productId}/images/{imageId}
|
||||
Content-Type: application/json
|
||||
|
||||
{"altText": "Product image description"}
|
||||
```
|
||||
|
||||
#### Reorder Image
|
||||
```bash
|
||||
POST /squarespace/v2/commerce/products/{productId}/images/{imageId}/order
|
||||
Content-Type: application/json
|
||||
|
||||
{"afterImageId": "other-image-id"}
|
||||
```
|
||||
|
||||
#### Assign Image to Variant
|
||||
```bash
|
||||
POST /squarespace/v2/commerce/products/{productId}/variants/{variantId}/image
|
||||
Content-Type: application/json
|
||||
|
||||
{"imageId": "image-id"}
|
||||
```
|
||||
|
||||
#### Delete Image
|
||||
```bash
|
||||
DELETE /squarespace/v2/commerce/products/{productId}/images/{imageId}
|
||||
```
|
||||
|
||||
### Profiles (Customers)
|
||||
|
||||
#### List All Profiles
|
||||
```bash
|
||||
GET /squarespace/1.0/profiles
|
||||
GET /squarespace/1.0/profiles?filter=isCustomer,true
|
||||
GET /squarespace/1.0/profiles?sortField=email&sortDirection=asc
|
||||
```
|
||||
|
||||
Filters (semicolon-separated):
|
||||
- `isCustomer,true` or `isCustomer,false`
|
||||
- `hasAccount,true` or `hasAccount,false`
|
||||
- `email,customer@example.com`
|
||||
|
||||
Sort fields: `createdOn`, `id`, `email`, `lastName`
|
||||
|
||||
#### Get Specific Profiles
|
||||
```bash
|
||||
GET /squarespace/1.0/profiles/{profileId1},{profileId2}
|
||||
```
|
||||
Max 50 profile IDs per request.
|
||||
|
||||
### Transactions
|
||||
|
||||
#### List All Transactions
|
||||
```bash
|
||||
GET /squarespace/1.0/commerce/transactions
|
||||
GET /squarespace/1.0/commerce/transactions?modifiedAfter=2024-01-01T00:00:00Z&modifiedBefore=2024-12-31T23:59:59Z
|
||||
```
|
||||
|
||||
Note: Date filters must be used together (both `modifiedAfter` and `modifiedBefore` required).
|
||||
|
||||
#### Get Specific Transactions
|
||||
```bash
|
||||
GET /squarespace/1.0/commerce/transactions/{documentId1},{documentId2}
|
||||
```
|
||||
Max 50 document IDs per request.
|
||||
|
||||
## Pagination
|
||||
|
||||
Squarespace uses cursor-based pagination:
|
||||
|
||||
```json
|
||||
{
|
||||
"pagination": {
|
||||
"hasNextPage": true,
|
||||
"nextPageCursor": "cursor-value",
|
||||
"nextPageUrl": "https://api.squarespace.com/..."
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Use the `cursor` parameter to get the next page:
|
||||
```bash
|
||||
GET /squarespace/v2/commerce/products?cursor=cursor-value
|
||||
```
|
||||
|
||||
## Resources
|
||||
|
||||
- [Squarespace Commerce APIs Overview](https://developers.squarespace.com/commerce-apis/overview)
|
||||
- [Inventory API](https://developers.squarespace.com/commerce-apis/inventory-overview)
|
||||
- [Orders API](https://developers.squarespace.com/commerce-apis/orders-overview)
|
||||
- [Products API](https://developers.squarespace.com/commerce-apis/products-overview)
|
||||
- [Profiles API](https://developers.squarespace.com/commerce-apis/profiles-overview)
|
||||
- [Transactions API](https://developers.squarespace.com/commerce-apis/transactions-overview)
|
||||
@@ -6,24 +6,24 @@
|
||||
## API Path Pattern
|
||||
|
||||
```
|
||||
/todoist/rest/v2/{resource}
|
||||
/todoist/api/v1/{resource}
|
||||
```
|
||||
|
||||
## Common Endpoints
|
||||
|
||||
### List Projects
|
||||
```bash
|
||||
GET /todoist/rest/v2/projects
|
||||
GET /todoist/api/v1/projects
|
||||
```
|
||||
|
||||
### Get Project
|
||||
```bash
|
||||
GET /todoist/rest/v2/projects/{id}
|
||||
GET /todoist/api/v1/projects/{id}
|
||||
```
|
||||
|
||||
### Create Project
|
||||
```bash
|
||||
POST /todoist/rest/v2/projects
|
||||
POST /todoist/api/v1/projects
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
@@ -34,7 +34,7 @@ Content-Type: application/json
|
||||
|
||||
### Update Project
|
||||
```bash
|
||||
POST /todoist/rest/v2/projects/{id}
|
||||
POST /todoist/api/v1/projects/{id}
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
@@ -44,24 +44,24 @@ Content-Type: application/json
|
||||
|
||||
### Delete Project
|
||||
```bash
|
||||
DELETE /todoist/rest/v2/projects/{id}
|
||||
DELETE /todoist/api/v1/projects/{id}
|
||||
```
|
||||
|
||||
### List Tasks
|
||||
```bash
|
||||
GET /todoist/rest/v2/tasks
|
||||
GET /todoist/rest/v2/tasks?project_id={project_id}
|
||||
GET /todoist/rest/v2/tasks?filter={filter}
|
||||
GET /todoist/api/v1/tasks
|
||||
GET /todoist/api/v1/tasks?project_id={project_id}
|
||||
GET /todoist/api/v1/tasks?filter={filter}
|
||||
```
|
||||
|
||||
### Get Task
|
||||
```bash
|
||||
GET /todoist/rest/v2/tasks/{id}
|
||||
GET /todoist/api/v1/tasks/{id}
|
||||
```
|
||||
|
||||
### Create Task
|
||||
```bash
|
||||
POST /todoist/rest/v2/tasks
|
||||
POST /todoist/api/v1/tasks
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
@@ -73,7 +73,7 @@ Content-Type: application/json
|
||||
|
||||
### Update Task
|
||||
```bash
|
||||
POST /todoist/rest/v2/tasks/{id}
|
||||
POST /todoist/api/v1/tasks/{id}
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
@@ -84,28 +84,28 @@ Content-Type: application/json
|
||||
|
||||
### Close Task (Complete)
|
||||
```bash
|
||||
POST /todoist/rest/v2/tasks/{id}/close
|
||||
POST /todoist/api/v1/tasks/{id}/close
|
||||
```
|
||||
|
||||
### Reopen Task
|
||||
```bash
|
||||
POST /todoist/rest/v2/tasks/{id}/reopen
|
||||
POST /todoist/api/v1/tasks/{id}/reopen
|
||||
```
|
||||
|
||||
### Delete Task
|
||||
```bash
|
||||
DELETE /todoist/rest/v2/tasks/{id}
|
||||
DELETE /todoist/api/v1/tasks/{id}
|
||||
```
|
||||
|
||||
### List Sections
|
||||
```bash
|
||||
GET /todoist/rest/v2/sections
|
||||
GET /todoist/rest/v2/sections?project_id={project_id}
|
||||
GET /todoist/api/v1/sections
|
||||
GET /todoist/api/v1/sections?project_id={project_id}
|
||||
```
|
||||
|
||||
### Create Section
|
||||
```bash
|
||||
POST /todoist/rest/v2/sections
|
||||
POST /todoist/api/v1/sections
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
@@ -116,17 +116,17 @@ Content-Type: application/json
|
||||
|
||||
### Delete Section
|
||||
```bash
|
||||
DELETE /todoist/rest/v2/sections/{id}
|
||||
DELETE /todoist/api/v1/sections/{id}
|
||||
```
|
||||
|
||||
### List Labels
|
||||
```bash
|
||||
GET /todoist/rest/v2/labels
|
||||
GET /todoist/api/v1/labels
|
||||
```
|
||||
|
||||
### Create Label
|
||||
```bash
|
||||
POST /todoist/rest/v2/labels
|
||||
POST /todoist/api/v1/labels
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
@@ -137,18 +137,18 @@ Content-Type: application/json
|
||||
|
||||
### Delete Label
|
||||
```bash
|
||||
DELETE /todoist/rest/v2/labels/{id}
|
||||
DELETE /todoist/api/v1/labels/{id}
|
||||
```
|
||||
|
||||
### List Comments
|
||||
```bash
|
||||
GET /todoist/rest/v2/comments?task_id={task_id}
|
||||
GET /todoist/rest/v2/comments?project_id={project_id}
|
||||
GET /todoist/api/v1/comments?task_id={task_id}
|
||||
GET /todoist/api/v1/comments?project_id={project_id}
|
||||
```
|
||||
|
||||
### Create Comment
|
||||
```bash
|
||||
POST /todoist/rest/v2/comments
|
||||
POST /todoist/api/v1/comments
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
@@ -159,7 +159,7 @@ Content-Type: application/json
|
||||
|
||||
### Delete Comment
|
||||
```bash
|
||||
DELETE /todoist/rest/v2/comments/{id}
|
||||
DELETE /todoist/api/v1/comments/{id}
|
||||
```
|
||||
|
||||
## Notes
|
||||
@@ -172,5 +172,5 @@ DELETE /todoist/rest/v2/comments/{id}
|
||||
|
||||
## Resources
|
||||
|
||||
- [Todoist REST API v2 Documentation](https://developer.todoist.com/rest/v2)
|
||||
- [Todoist API v1 Documentation](https://developer.todoist.com/api/v1)
|
||||
- [Todoist Filter Syntax](https://todoist.com/help/articles/introduction-to-filters)
|
||||
|
||||
Reference in New Issue
Block a user