Charthop email-template API

The email-template API from Charthop — 5 operation(s) for email-template.

OpenAPI Specification

charthop-email-template-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  description: REST API for ChartHop
  version: V1.0.0
  title: ChartHop access email-template API
  contact:
    name: ChartHop
    url: https://www.charthop.com
    email: support@charthop.com
host: localhost
schemes:
- https
- http
consumes:
- application/json
produces:
- application/json
tags:
- name: email-template
paths:
  /v1/email-template:
    post:
      tags:
      - email-template
      summary: Create a new email template
      operationId: createEmailTemplate
      consumes:
      - application/json
      produces:
      - application/json
      parameters:
      - name: body
        in: body
        description: Email template to create
        required: true
        schema:
          $ref: '#/definitions/CreateEmailTemplate'
      responses:
        '201':
          description: email template created
          schema:
            $ref: '#/definitions/EmailTemplate'
        '400':
          description: invalid data
        '401':
          description: not authorized
        '403':
          description: permission denied
  /v1/email-template/essential:
    get:
      tags:
      - email-template
      summary: Return all essential email templates
      operationId: getEssentialEmailTemplates
      consumes:
      - application/json
      produces:
      - application/json
      responses:
        '200':
          description: successful operation
          schema:
            $ref: '#/definitions/ResultsEmailTemplate'
        '400':
          description: bad request
        '404':
          description: not found
  /v1/email-template/name/{name}:
    get:
      tags:
      - email-template
      summary: Return the email template by name
      operationId: getEmailTemplateByName
      consumes:
      - application/json
      produces:
      - application/json
      parameters:
      - name: name
        in: path
        description: Email template name
        required: true
        type: string
      responses:
        '200':
          description: successful operation
          schema:
            $ref: '#/definitions/EmailTemplate'
        '400':
          description: bad request
        '404':
          description: not found
  /v1/email-template/non-essential:
    get:
      tags:
      - email-template
      summary: Return all non-essential email templates
      operationId: getNonEssentialEmailTemplates
      consumes:
      - application/json
      produces:
      - application/json
      responses:
        '200':
          description: successful operation
          schema:
            $ref: '#/definitions/ResultsEmailTemplate'
        '400':
          description: bad request
        '404':
          description: not found
  /v1/email-template/{emailTemplateId}:
    patch:
      tags:
      - email-template
      summary: Update an existing email template
      operationId: updateEmailTemplate
      consumes:
      - application/json
      produces:
      - application/json
      parameters:
      - name: emailTemplateId
        in: path
        description: Email template id
        required: true
        type: string
      - name: body
        in: body
        description: Email template data to update
        required: true
        schema:
          $ref: '#/definitions/UpdateEmailTemplate'
      responses:
        '204':
          description: email template updated
        '400':
          description: invalid data
        '401':
          description: not authorized
        '403':
          description: permission denied
        '404':
          description: not found
definitions:
  AccessAction:
    type: object
    required:
    - action
    properties:
      action:
        type: string
      fields:
        type: array
        uniqueItems: true
        items:
          type: string
      types:
        type: array
        uniqueItems: true
        items:
          type: string
  ResultsAccess:
    type: object
    required:
    - allowed
    properties:
      ids:
        type: array
        uniqueItems: true
        items:
          type: string
          example: 588f7ee98f138b19220041a7
      allowed:
        type: array
        uniqueItems: true
        items:
          $ref: '#/definitions/AccessAction'
  EmailTemplate:
    type: object
    required:
    - id
    - name
    - category
    properties:
      id:
        type: string
        description: globally unique id
        example: 588f7ee98f138b19220041a7
      name:
        type: string
        description: name of the email template
        example: self_serve_welcome
      category:
        type: string
        description: email category
        enum:
        - ADMINISTRATIVE
        - BILLING
        - DATA_IMPORT_AND_SYNC_STATUS
        - TRIAL_REMINDERS
        - APPROVAL_NOTIFICATIONS
  UpdateEmailTemplate:
    type: object
    properties:
      name:
        type: string
        description: name of the email template
        example: self_serve_welcome
      category:
        type: string
        description: email category
        enum:
        - ADMINISTRATIVE
        - BILLING
        - DATA_IMPORT_AND_SYNC_STATUS
        - TRIAL_REMINDERS
        - APPROVAL_NOTIFICATIONS
  ResultsEmailTemplate:
    type: object
    required:
    - data
    properties:
      data:
        type: array
        items:
          $ref: '#/definitions/EmailTemplate'
      next:
        type: string
      access:
        type: array
        items:
          $ref: '#/definitions/ResultsAccess'
  CreateEmailTemplate:
    type: object
    required:
    - name
    - category
    properties:
      name:
        type: string
        description: name of the email template
        example: self_serve_welcome
      category:
        type: string
        description: email category
        enum:
        - ADMINISTRATIVE
        - BILLING
        - DATA_IMPORT_AND_SYNC_STATUS
        - TRIAL_REMINDERS
        - APPROVAL_NOTIFICATIONS