SendGrid · Capability

Twilio SendGrid Account Provisioning API

The Twilio SendGrid Account Provisioning API provides a platform for Twilio SendGrid resellers to manage their customer accounts. This API is for companies that have a formal reseller partnership with Twilio SendGrid. You can access Twilio SendGrid sub-account functionality without becoming a reseller. If you require sub-account functionality, see the Twilio [SendGrid Subusers](https://docs.sendgrid.com/ui/account-and-settings/subusers) feature, which is available with [Pro and Premier plans](https://sendgrid.com/pricing/).

Run with Naftiko SendgridAPI

What You Can Do

GET
Listaccount — Get all accounts
/v3/partners/accounts
POST
Createaccount — Create an account
/v3/partners/accounts
DELETE
Deleteaccount — Delete an account
/v3/partners/accounts/{accountID}
GET
Listaccountoffering — Get account offerings
/v3/partners/accounts/{accountID}/offerings
PUT
Updateaccountoffering — Update account offerings
/v3/partners/accounts/{accountID}/offerings
POST
Authenticateaccount — Authenticate an account with single sign on
/v3/partners/accounts/{accountID}/sso
GET
Getaccountstate — Get an account's state
/v3/partners/accounts/{accountID}/state
PUT
Updateaccountstate — Update an account's state
/v3/partners/accounts/{accountID}/state
GET
Listoffering — Get all available offerings
/v3/partners/offerings

MCP Tools

listaccount

Get all accounts

read-only idempotent
createaccount

Create an account

deleteaccount

Delete an account

idempotent
listaccountoffering

Get account offerings

read-only idempotent
updateaccountoffering

Update account offerings

idempotent
authenticateaccount

Authenticate an account with single sign on

getaccountstate

Get an account's state

read-only idempotent
updateaccountstate

Update an account's state

idempotent
listoffering

Get all available offerings

read-only idempotent

Capability Spec

sendgrid-capability.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Twilio SendGrid Account Provisioning API
  description: The Twilio SendGrid Account Provisioning API provides a platform for Twilio SendGrid resellers to manage their
    customer accounts. This API is for companies that have a formal reseller partnership with Twilio SendGrid. You can access
    Twilio SendGrid sub-account functionality without becoming a reseller. If you require sub-account functionality, see the
    Twilio [SendGrid Subusers](https://docs.sendgrid.com/ui/account-and-settings/subusers) feature, which is available with
    [Pro and Premier plans](https://sendgrid.com/pricing/).
  tags:
  - Sendgrid
  - API
  created: '2026-05-06'
  modified: '2026-05-06'
capability:
  consumes:
  - type: http
    namespace: sendgrid
    baseUri: https://api.sendgrid.com
    description: Twilio SendGrid Account Provisioning API HTTP API.
    authentication:
      type: bearer
      token: '{{SENDGRID_TOKEN}}'
    resources:
    - name: v3-partners-accounts
      path: /v3/partners/accounts
      operations:
      - name: listaccount
        method: GET
        description: Get all accounts
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createaccount
        method: POST
        description: Create an account
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v3-partners-accounts-accountid
      path: /v3/partners/accounts/{accountID}
      operations:
      - name: deleteaccount
        method: DELETE
        description: Delete an account
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v3-partners-accounts-accountid-offerings
      path: /v3/partners/accounts/{accountID}/offerings
      operations:
      - name: listaccountoffering
        method: GET
        description: Get account offerings
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updateaccountoffering
        method: PUT
        description: Update account offerings
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v3-partners-accounts-accountid-sso
      path: /v3/partners/accounts/{accountID}/sso
      operations:
      - name: authenticateaccount
        method: POST
        description: Authenticate an account with single sign on
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v3-partners-accounts-accountid-state
      path: /v3/partners/accounts/{accountID}/state
      operations:
      - name: getaccountstate
        method: GET
        description: Get an account's state
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updateaccountstate
        method: PUT
        description: Update an account's state
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v3-partners-offerings
      path: /v3/partners/offerings
      operations:
      - name: listoffering
        method: GET
        description: Get all available offerings
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  exposes:
  - type: rest
    port: 8080
    namespace: sendgrid-rest
    description: REST adapter for Twilio SendGrid Account Provisioning API.
    resources:
    - path: /v3/partners/accounts
      name: listaccount
      operations:
      - method: GET
        name: listaccount
        description: Get all accounts
        call: sendgrid.listaccount
        outputParameters:
        - type: object
          mapping: $.
    - path: /v3/partners/accounts
      name: createaccount
      operations:
      - method: POST
        name: createaccount
        description: Create an account
        call: sendgrid.createaccount
        outputParameters:
        - type: object
          mapping: $.
    - path: /v3/partners/accounts/{accountID}
      name: deleteaccount
      operations:
      - method: DELETE
        name: deleteaccount
        description: Delete an account
        call: sendgrid.deleteaccount
        outputParameters:
        - type: object
          mapping: $.
    - path: /v3/partners/accounts/{accountID}/offerings
      name: listaccountoffering
      operations:
      - method: GET
        name: listaccountoffering
        description: Get account offerings
        call: sendgrid.listaccountoffering
        outputParameters:
        - type: object
          mapping: $.
    - path: /v3/partners/accounts/{accountID}/offerings
      name: updateaccountoffering
      operations:
      - method: PUT
        name: updateaccountoffering
        description: Update account offerings
        call: sendgrid.updateaccountoffering
        outputParameters:
        - type: object
          mapping: $.
    - path: /v3/partners/accounts/{accountID}/sso
      name: authenticateaccount
      operations:
      - method: POST
        name: authenticateaccount
        description: Authenticate an account with single sign on
        call: sendgrid.authenticateaccount
        outputParameters:
        - type: object
          mapping: $.
    - path: /v3/partners/accounts/{accountID}/state
      name: getaccountstate
      operations:
      - method: GET
        name: getaccountstate
        description: Get an account's state
        call: sendgrid.getaccountstate
        outputParameters:
        - type: object
          mapping: $.
    - path: /v3/partners/accounts/{accountID}/state
      name: updateaccountstate
      operations:
      - method: PUT
        name: updateaccountstate
        description: Update an account's state
        call: sendgrid.updateaccountstate
        outputParameters:
        - type: object
          mapping: $.
    - path: /v3/partners/offerings
      name: listoffering
      operations:
      - method: GET
        name: listoffering
        description: Get all available offerings
        call: sendgrid.listoffering
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    port: 9090
    namespace: sendgrid-mcp
    transport: http
    description: MCP adapter for Twilio SendGrid Account Provisioning API for AI agent use.
    tools:
    - name: listaccount
      description: Get all accounts
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: sendgrid.listaccount
      outputParameters:
      - type: object
        mapping: $.
    - name: createaccount
      description: Create an account
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: sendgrid.createaccount
      outputParameters:
      - type: object
        mapping: $.
    - name: deleteaccount
      description: Delete an account
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: sendgrid.deleteaccount
      outputParameters:
      - type: object
        mapping: $.
    - name: listaccountoffering
      description: Get account offerings
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: sendgrid.listaccountoffering
      outputParameters:
      - type: object
        mapping: $.
    - name: updateaccountoffering
      description: Update account offerings
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: sendgrid.updateaccountoffering
      outputParameters:
      - type: object
        mapping: $.
    - name: authenticateaccount
      description: Authenticate an account with single sign on
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: sendgrid.authenticateaccount
      outputParameters:
      - type: object
        mapping: $.
    - name: getaccountstate
      description: Get an account's state
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: sendgrid.getaccountstate
      outputParameters:
      - type: object
        mapping: $.
    - name: updateaccountstate
      description: Update an account's state
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: sendgrid.updateaccountstate
      outputParameters:
      - type: object
        mapping: $.
    - name: listoffering
      description: Get all available offerings
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: sendgrid.listoffering
      outputParameters:
      - type: object
        mapping: $.
binds:
- namespace: env
  keys:
    SENDGRID_TOKEN: SENDGRID_TOKEN