SendGrid Offering API

Twilio SendGrid Account Provisioning API offerings operations.

Documentation

📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/account-provisioning
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/alerts
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/api-keys
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/domain-authentication
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/email-activity
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/email-address-validation
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/enforced-tls
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/sendgrid-integrations
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/ip-access-management
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/ip-address-management-api
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/ip-warmup
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/ip-address
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/link-branding
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/campaigns-api
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/contacts-api-custom-fields
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/sender-identities-api
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/mail-settings
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/mail-send
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/contacts
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/custom-fields
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/designs-api
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/lists
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/segmenting-contacts-v2
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/segmenting-contacts
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/senders
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/single-sends
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/marketing-campaign-stats
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/send-test-email
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/partner-settings
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/recipients-data-erasure
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/reverse-dns
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/cancel-scheduled-sends
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/api-key-permissions
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/sendgrid-engagement-quality-api
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/single-sign-on-settings
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/stats
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/subusers-api
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/suppressions-unsubscribe-groups
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/teammates
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/transactional-templates
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/settings-tracking
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/users-api
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/sender-verification
📖
Documentation
https://www.twilio.com/docs/sendgrid/api-reference/webhooks

Specifications

OpenAPI Specification

sendgrid-offering-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Twilio SendGrid Provisioning Account Offering API
  summary: The Twilio SendGrid Account Provisioning API provides a platform for Twilio SendGrid resellers to manage their customer accounts.
  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/).'
  termsOfService: https://www.twilio.com/legal/tos
  contact:
    name: Twilio SendGrid Support
    url: https://support.sendgrid.com/hc/en-us
  license:
    name: MIT
    url: https://code.hq.twilio.com/twilio/sendgrid-oas/blob/main/LICENSE
  version: 1.0.0
  x-sendgrid:
    libraryPackage: account_provisioning
servers:
- url: https://api.sendgrid.com
  description: for global users and subusers
- url: https://api.eu.sendgrid.com
  description: for EU regional subusers
security:
- BearerAuth: []
tags:
- name: Offering
  description: Twilio SendGrid Account Provisioning API offerings operations.
paths:
  /v3/partners/accounts/{accountID}/offerings:
    parameters:
    - $ref: '#/components/parameters/AccountProvisioningAccountId'
    get:
      operationId: ListAccountOffering
      summary: Get account offerings
      description: Retrieves offering information about the specified account.
      tags:
      - Offering
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountProvisioningOfferingList'
        '400':
          $ref: '#/components/responses/AccountProvisioningErrorResponse400'
        '401':
          $ref: '#/components/responses/AccountProvisioningErrorResponse401'
        '403':
          $ref: '#/components/responses/AccountProvisioningErrorResponse403'
        '404':
          $ref: '#/components/responses/AccountProvisioningErrorResponse404'
        '500':
          $ref: '#/components/responses/AccountProvisioningErrorResponse500'
        '502':
          $ref: '#/components/responses/AccountProvisioningErrorResponse502'
        '503':
          $ref: '#/components/responses/AccountProvisioningErrorResponse503'
        '504':
          $ref: '#/components/responses/AccountProvisioningErrorResponse504'
    put:
      operationId: UpdateAccountOffering
      summary: Update account offerings
      description: Changes a package offering for the specified account. Please note that an account can have only one package offering. Also associates one or more add-on offerings such as Marketing Campaigns, Dedicated IP Addresses, and Expert Services to the specified account.
      tags:
      - Offering
      requestBody:
        required: true
        content:
          application/json:
            schema:
              title: OfferingsToAdd
              type: object
              properties:
                offerings:
                  type: array
                  description: List of offerings to assign to account.
                  items:
                    $ref: '#/components/schemas/AccountProvisioningOfferingV1'
              required:
              - offerings
            example:
              offerings:
              - name: org.ei.free.v1
                type: package
                quantity: 1
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountProvisioningOfferingList'
        '400':
          $ref: '#/components/responses/AccountProvisioningErrorResponse400'
        '401':
          $ref: '#/components/responses/AccountProvisioningErrorResponse401'
        '403':
          $ref: '#/components/responses/AccountProvisioningErrorResponse403'
        '500':
          $ref: '#/components/responses/AccountProvisioningErrorResponse500'
        '502':
          $ref: '#/components/responses/AccountProvisioningErrorResponse502'
        '503':
          $ref: '#/components/responses/AccountProvisioningErrorResponse503'
        '504':
          $ref: '#/components/responses/AccountProvisioningErrorResponse504'
  /v3/partners/offerings:
    get:
      operationId: ListOffering
      summary: Get all available offerings
      tags:
      - Offering
      description: Retrieves offerings available under the organization.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountProvisioningCatalog'
        '400':
          $ref: '#/components/responses/AccountProvisioningErrorResponse400'
        '401':
          $ref: '#/components/responses/AccountProvisioningErrorResponse401'
        '403':
          $ref: '#/components/responses/AccountProvisioningErrorResponse403'
        '404':
          $ref: '#/components/responses/AccountProvisioningErrorResponse404'
        '500':
          $ref: '#/components/responses/AccountProvisioningErrorResponse500'
        '502':
          $ref: '#/components/responses/AccountProvisioningErrorResponse502'
        '503':
          $ref: '#/components/responses/AccountProvisioningErrorResponse503'
        '504':
          $ref: '#/components/responses/AccountProvisioningErrorResponse504'
components:
  schemas:
    Type:
      type: string
      enum:
      - package
      - addon
    AccountProvisioningCatalog:
      title: Catalog
      type: object
      properties:
        catalog:
          type: array
          items:
            title: CatalogEntry
            type: object
            properties:
              offering:
                $ref: '#/components/schemas/AccountProvisioningOfferingV1'
              entitlements:
                type: object
                description: Set of entitlements the specified offering comes with
                properties:
                  email_sends_max_monthly:
                    type: integer
                    format: int64
                    description: Total number of email sends per month
                  ip_count:
                    type: integer
                    format: int64
                    description: Number of dedicated IPs offered
                  teammates_max_total:
                    type: integer
                    format: int64
                    description: Total number of teammates allowed
                  users_max_total:
                    type: integer
                    format: int64
                    description: Total number of subusers allowed
      required:
      - catalog
      example:
        catalog:
        - offering:
            name: org.ei.free.v1
            type: package
            quantity: 1
          entitlements:
            email_sends_max_monthly: 10000
            ip_count: 0
            teammates_max_total: 0
            users_max_total: 0
    AccountProvisioningOfferingV1:
      title: Offering
      type: object
      description: An offering is a package (email infrastructure) or add-on (marketing campaigns, dedicated IP addresses, EASE) that an account can acquire. Each offering has a list of entitlements that indicate the benefits the account receives from the acquisition.
      properties:
        name:
          type: string
          description: Name of the offering
        type:
          type: string
          description: Defines the type of offering (e.g., package or addon).
          $ref: '#/components/schemas/Type'
        quantity:
          type: integer
          format: int64
          description: Quantity of the specified addon to be added. If offering type is `package`, quantity must be 1.
      required:
      - name
      - type
      example:
        name: org.ei.free.v1
        type: package
        quantity: 1
    ErrorResponse:
      title: Error
      type: object
      properties:
        message:
          type: string
          description: The message representing the error from the API.
        field:
          type: string
          description: The field associated with the error.
        error_id:
          type: string
          description: ID representing the error as a unique nubmer.
      required:
      - message
      - field
      - error_id
    AccountProvisioningOfferingList:
      title: OfferingList
      type: object
      properties:
        offerings:
          type: array
          items:
            $ref: '#/components/schemas/AccountProvisioningOfferingV1'
  responses:
    AccountProvisioningErrorResponse401:
      description: Request lacks valid authentication credentials
      content:
        application/json:
          schema:
            title: Unauthorized
            type: object
            properties:
              errors:
                type: array
                items:
                  $ref: '#/components/schemas/ErrorResponse'
          example:
            errors:
            - message: Failed to authenticate user
              field: ''
              error_id: 10-40100
    AccountProvisioningErrorResponse403:
      description: Not authorized to make the request
      content:
        application/json:
          schema:
            title: Forbidden
            type: object
            properties:
              errors:
                type: array
                items:
                  $ref: '#/components/schemas/ErrorResponse'
          example:
            errors:
            - message: The authenticated user is not authorized to perfrom this request
              field: ''
              error_id: 10-40300
    AccountProvisioningErrorResponse504:
      description: Endpoint request timed out
      content:
        application/json:
          schema:
            title: Endpoint request timed out
            type: object
            properties:
              errors:
                type: array
                items:
                  $ref: '#/components/schemas/ErrorResponse'
          example:
            errors:
            - message: Endpoint request timed out
              field: ''
              error_id: 10-50400
    AccountProvisioningErrorResponse503:
      description: Service Unavailable
      content:
        application/json:
          schema:
            title: Service Unavailable
            type: object
            properties:
              errors:
                type: array
                items:
                  $ref: '#/components/schemas/ErrorResponse'
          example:
            errors:
            - message: Service Unavailable
              field: ''
              error_id: 10-50300
    AccountProvisioningErrorResponse404:
      description: Not Found
      content:
        application/json:
          schema:
            title: Not Found
            type: object
            properties:
              errors:
                type: array
                items:
                  $ref: '#/components/schemas/ErrorResponse'
          example:
            errors:
            - message: No such endpoint
              field: ''
              error_id: 10-40400
    AccountProvisioningErrorResponse500:
      description: Internal Server Error
      content:
        application/json:
          schema:
            title: InternalServerError
            type: object
            properties:
              errors:
                type: array
                items:
                  $ref: '#/components/schemas/ErrorResponse'
          example:
            errors:
            - message: Something went wrong
              field: ''
              error_id: 10-50000
    AccountProvisioningErrorResponse400:
      description: The request was formatted incorrectly or missing required parameters.
      content:
        application/json:
          schema:
            title: Bad Request
            type: object
            properties:
              errors:
                type: array
                items:
                  $ref: '#/components/schemas/ErrorResponse'
            required:
            - errors
          example:
            errors:
            - message: Field must be a valid email
              field: email
              error_id: 10-40002
            - message: Field must be formatted using the E.164 standard consisting of [+] [country code] [subscriber number including area code] and can have a maximum of fifteen digits.
              field: phone
              error_id: 10-40010
            - message: Field must be a valid URL
              field: company_website
              error_id: 10-40008
    AccountProvisioningErrorResponse502:
      description: Bad Gateway
      content:
        application/json:
          schema:
            title: Bad Gateway
            type: object
            properties:
              errors:
                type: array
                items:
                  $ref: '#/components/schemas/ErrorResponse'
          example:
            errors:
            - message: Bad Gateway
              field: ''
              error_id: 10-50200
  parameters:
    AccountProvisioningAccountId:
      name: accountID
      in: path
      description: Twilio SendGrid account ID
      schema:
        type: string
      required: true
      example: sg2a2bcd3ef4ab5c67d8efab91c01de2fa
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: Twilio SendGrid requires you to authenticate with its APIs using an API key. The API key must be sent as a bearer token in the Authorization header.
externalDocs:
  description: Twilio SendGrid's official developer documentation.
  url: https://www.twilio.com/docs/sendgrid