naftiko: 1.0.0-alpha2 info: label: Twilio SendGrid Suppressions API — Blocks description: 'Twilio SendGrid Suppressions API — Blocks. 4 operations. Lead operation: Retrieve all blocks. Self-contained Naftiko capability covering one Sendgrid business surface.' tags: - Sendgrid - Blocks created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SENDGRID_API_KEY: SENDGRID_API_KEY capability: consumes: - type: http namespace: tsg_suppressions_v3-blocks baseUri: https://api.sendgrid.com description: Twilio SendGrid Suppressions API — Blocks business capability. Self-contained, no shared references. resources: - name: v3-suppression-blocks path: /v3/suppression/blocks operations: - name: listsuppressionblock method: GET description: Retrieve all blocks outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: start_time in: query type: integer description: The start of the time range when a blocked email was created (inclusive). This is a unix timestamp. - name: end_time in: query type: integer description: The end of the time range when a blocked email was created (inclusive). This is a unix timestamp. - name: deletesuppressionblocks method: DELETE description: Delete blocks outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: v3-suppression-blocks-email path: /v3/suppression/blocks/{email} operations: - name: getsuppressionblock method: GET description: Retrieve a specific block outputRawFormat: json outputParameters: - name: result type: object value: $. - name: deletesuppressionblock method: DELETE description: Delete a specific block outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: bearer token: '{{env.SENDGRID_API_KEY}}' exposes: - type: rest namespace: tsg_suppressions_v3-blocks-rest port: 8080 description: REST adapter for Twilio SendGrid Suppressions API — Blocks. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/v3/suppression/blocks name: v3-suppression-blocks description: REST surface for v3-suppression-blocks. operations: - method: GET name: listsuppressionblock description: Retrieve all blocks call: tsg_suppressions_v3-blocks.listsuppressionblock with: start_time: rest.start_time end_time: rest.end_time outputParameters: - type: object mapping: $. - method: DELETE name: deletesuppressionblocks description: Delete blocks call: tsg_suppressions_v3-blocks.deletesuppressionblocks with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v3/suppression/blocks/{email} name: v3-suppression-blocks-email description: REST surface for v3-suppression-blocks-email. operations: - method: GET name: getsuppressionblock description: Retrieve a specific block call: tsg_suppressions_v3-blocks.getsuppressionblock outputParameters: - type: object mapping: $. - method: DELETE name: deletesuppressionblock description: Delete a specific block call: tsg_suppressions_v3-blocks.deletesuppressionblock outputParameters: - type: object mapping: $. - type: mcp namespace: tsg_suppressions_v3-blocks-mcp port: 9090 transport: http description: MCP adapter for Twilio SendGrid Suppressions API — Blocks. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: retrieve-all-blocks description: Retrieve all blocks hints: readOnly: true destructive: false idempotent: true call: tsg_suppressions_v3-blocks.listsuppressionblock with: start_time: tools.start_time end_time: tools.end_time outputParameters: - type: object mapping: $. - name: delete-blocks description: Delete blocks hints: readOnly: false destructive: true idempotent: true call: tsg_suppressions_v3-blocks.deletesuppressionblocks with: body: tools.body outputParameters: - type: object mapping: $. - name: retrieve-specific-block description: Retrieve a specific block hints: readOnly: true destructive: false idempotent: true call: tsg_suppressions_v3-blocks.getsuppressionblock outputParameters: - type: object mapping: $. - name: delete-specific-block description: Delete a specific block hints: readOnly: false destructive: true idempotent: true call: tsg_suppressions_v3-blocks.deletesuppressionblock outputParameters: - type: object mapping: $.