diff --git a/packages/mcp-server/src/server.ts b/packages/mcp-server/src/server.ts index 22cb350..2e42fa9 100644 --- a/packages/mcp-server/src/server.ts +++ b/packages/mcp-server/src/server.ts @@ -28,7 +28,7 @@ export const newMcpServer = async ({ new McpServer( { name: 'linqapp_sdk_api', - version: '0.33.1', + version: '0.34.0', }, { instructions: await getInstructions({ stainlessApiKey, customInstructionsPath }), diff --git a/src/resources/attachments.ts b/src/resources/attachments.ts index 3958713..d93c21e 100644 --- a/src/resources/attachments.ts +++ b/src/resources/attachments.ts @@ -435,7 +435,8 @@ export interface AttachmentCreateResponse { /** * Presigned URL for uploading the file. PUT the raw binary file content to this * URL with the `required_headers`. Do not JSON-encode or multipart-wrap the body. - * Expires after 15 minutes. + * Expires after 15 minutes. Treat the URL as opaque — the hostname depends on + * partner configuration and is the same across sandbox and production. */ upload_url: string; } diff --git a/src/resources/chats/chats.ts b/src/resources/chats/chats.ts index e91117a..28572d2 100644 --- a/src/resources/chats/chats.ts +++ b/src/resources/chats/chats.ts @@ -392,9 +392,10 @@ export namespace Chat { * part of a longer one: `STOP` counts, `please stop` does not. Most keywords must * match exactly, including case. `OPT OUT` is the exception — it matches in any * casing, with or without the space or a hyphen, so `opt out`, `Opt-Out` and - * `optout` all count. It clears if they later send `START`, `OPTIN`, or `UNSTOP`, - * or if they keep replying on the chat — sustained two-way conversation is treated - * as a sign the stop keyword was a false positive. + * `optout` all count. It clears if they later send `START`, `OPTIN`, or `UNSTOP` — + * these match in any casing — or if they keep replying — replies in any + * conversation with you count, the same way the block does — since sustained + * two-way conversation is treated as a sign the stop keyword was a false positive. * * Linq enforces this: while a recipient is opted out, every send to them is * rejected with `403` (error code `2024`) before the message is queued, across @@ -880,9 +881,10 @@ export namespace ChatCreateResponse { * part of a longer one: `STOP` counts, `please stop` does not. Most keywords must * match exactly, including case. `OPT OUT` is the exception — it matches in any * casing, with or without the space or a hyphen, so `opt out`, `Opt-Out` and - * `optout` all count. It clears if they later send `START`, `OPTIN`, or `UNSTOP`, - * or if they keep replying on the chat — sustained two-way conversation is treated - * as a sign the stop keyword was a false positive. + * `optout` all count. It clears if they later send `START`, `OPTIN`, or `UNSTOP` — + * these match in any casing — or if they keep replying — replies in any + * conversation with you count, the same way the block does — since sustained + * two-way conversation is treated as a sign the stop keyword was a false positive. * * Linq enforces this: while a recipient is opted out, every send to them is * rejected with `403` (error code `2024`) before the message is queued, across diff --git a/src/resources/webhooks.ts b/src/resources/webhooks.ts index ab62932..c2038d8 100644 --- a/src/resources/webhooks.ts +++ b/src/resources/webhooks.ts @@ -190,9 +190,10 @@ export namespace MessageEventV2 { * part of a longer one: `STOP` counts, `please stop` does not. Most keywords must * match exactly, including case. `OPT OUT` is the exception — it matches in any * casing, with or without the space or a hyphen, so `opt out`, `Opt-Out` and - * `optout` all count. It clears if they later send `START`, `OPTIN`, or `UNSTOP`, - * or if they keep replying on the chat — sustained two-way conversation is treated - * as a sign the stop keyword was a false positive. + * `optout` all count. It clears if they later send `START`, `OPTIN`, or `UNSTOP` — + * these match in any casing — or if they keep replying — replies in any + * conversation with you count, the same way the block does — since sustained + * two-way conversation is treated as a sign the stop keyword was a false positive. * * Linq enforces this: while a recipient is opted out, every send to them is * rejected with `403` (error code `2024`) before the message is queued, across @@ -1206,9 +1207,10 @@ export namespace MessageEditedWebhookEvent { * part of a longer one: `STOP` counts, `please stop` does not. Most keywords must * match exactly, including case. `OPT OUT` is the exception — it matches in any * casing, with or without the space or a hyphen, so `opt out`, `Opt-Out` and - * `optout` all count. It clears if they later send `START`, `OPTIN`, or `UNSTOP`, - * or if they keep replying on the chat — sustained two-way conversation is treated - * as a sign the stop keyword was a false positive. + * `optout` all count. It clears if they later send `START`, `OPTIN`, or `UNSTOP` — + * these match in any casing — or if they keep replying — replies in any + * conversation with you count, the same way the block does — since sustained + * two-way conversation is treated as a sign the stop keyword was a false positive. * * Linq enforces this: while a recipient is opted out, every send to them is * rejected with `403` (error code `2024`) before the message is queued, across @@ -1643,9 +1645,10 @@ export namespace ChatCreatedWebhookEvent { * part of a longer one: `STOP` counts, `please stop` does not. Most keywords must * match exactly, including case. `OPT OUT` is the exception — it matches in any * casing, with or without the space or a hyphen, so `opt out`, `Opt-Out` and - * `optout` all count. It clears if they later send `START`, `OPTIN`, or `UNSTOP`, - * or if they keep replying on the chat — sustained two-way conversation is treated - * as a sign the stop keyword was a false positive. + * `optout` all count. It clears if they later send `START`, `OPTIN`, or `UNSTOP` — + * these match in any casing — or if they keep replying — replies in any + * conversation with you count, the same way the block does — since sustained + * two-way conversation is treated as a sign the stop keyword was a false positive. * * Linq enforces this: while a recipient is opted out, every send to them is * rejected with `403` (error code `2024`) before the message is queued, across