openapi: 3.2.0
info:
title: Email Template Category API
version: v1
servers:
- url: https://rls.congacloud.com
security:
- Bearer: []
tags:
- name: Email Template Category
paths:
/api/email/v1/email-template-categories:
get:
tags:
- Email Template Category
summary: Get the list of email template categories
description: Returns the list of email template categories.
parameters:
- name: parentId
in: query
description: Email template category ID of the parent category
schema:
type: string
- name: sortField
in: query
description: Field name for sorting
schema:
type: string
default: CategoryType
- name: pageSize
in: query
description: Number of email template categories in each page
schema:
type: integer
format: int32
default: 100
- name: pageNumber
in: query
description: Number of page for which email template categories to be featched
schema:
type: integer
format: int32
default: 1
- name: sortDirection
in: query
description: Sort direction of the data
schema:
$ref: '#/components/schemas/SortDirection'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/EmailTemplateCategoryResponseAPIResponse'
'400':
description: Bad Request
'404':
description: Not Found
'500':
description: Internal Server Error
post:
tags:
- Email Template Category
summary: Create an email template category
description: Validates and creates an email template category.
requestBody:
description: 'Email template category to be created
- Id (string, optional): Email template category ID. Guid Id.
- Name (string, *required): The name of the email template category. It can include letters, numbers, special characters, and underscores. For example: Marketing_Emails.
- ParentId (string, optional): Parent category ID. Guid Id.
- Description (string, optional): Description of the category.
- CategoryType (string, *required): Indicates the type of category. For email templates, this should be set to ''EmailTemplate''.
- OwnerId (string, optional): Owner identifier. Guid Id.
- AccessType (string, *required): Specifies the access type for the email template category. Allowed values are: Private, Public.
'
content:
application/json:
schema:
$ref: '#/components/schemas/EmailTemplateCategory'
example:
ParentId: null
Description: Private email template
CategoryType: EmailTemplate
OwnerId: null
AccessType: private
Id: 128f4fa0-b926-4d67-be14-ba9c8e3f9287
Name: Some Category
CreatedBy: null
CreatedDate: '0001-01-01T00:00:00'
ModifiedBy: null
ModifiedDate: '0001-01-01T00:00:00'
ExternalId: null
ETag: null
text/json:
schema:
$ref: '#/components/schemas/EmailTemplateCategory'
example:
ParentId: null
Description: Private email template
CategoryType: EmailTemplate
OwnerId: null
AccessType: private
Id: 128f4fa0-b926-4d67-be14-ba9c8e3f9287
Name: Some Category
CreatedBy: null
CreatedDate: '0001-01-01T00:00:00'
ModifiedBy: null
ModifiedDate: '0001-01-01T00:00:00'
ExternalId: null
ETag: null
application/*+json:
schema:
$ref: '#/components/schemas/EmailTemplateCategory'
example:
ParentId: null
Description: Private email template
CategoryType: EmailTemplate
OwnerId: null
AccessType: private
Id: 128f4fa0-b926-4d67-be14-ba9c8e3f9287
Name: Some Category
CreatedBy: null
CreatedDate: '0001-01-01T00:00:00'
ModifiedBy: null
ModifiedDate: '0001-01-01T00:00:00'
ExternalId: null
ETag: null
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/EmailTemplateCategoryAPIResponse'
example:
Success: true
Data:
ParentId: 78edfcbf-b89c-4dc7-baa4-a6d10b74eafa
Description: My Email Template Category
CategoryType: null
OwnerId: null
AccessType: null
Id: ad6c76d0-f670-439b-a98b-2b816878ba4f
Name: MyEmailTemplateCategory
CreatedBy: null
CreatedDate: '0001-01-01T00:00:00'
ModifiedBy: null
ModifiedDate: '0001-01-01T00:00:00'
ExternalId: null
ETag: null
StatusCode: OK
'400':
description: Bad Request
'404':
description: Not Found
'500':
description: Internal Server Error
/api/email/v1/email-template-categories/{id}:
delete:
tags:
- Email Template Category
summary: Delete the email template category
description: Removes the email template category based on the email template category ID.
parameters:
- name: id
in: path
description: Email template category ID to be deleted
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/StringAPIResponse'
example:
Success: true
Data: EmailTemplate 99d606d8-14c2-47d6-8a15-c596f40e1eb8 is deleted successfully.
StatusCode: OK
'400':
description: Bad Request
'404':
description: Not Found
'500':
description: Internal Server Error
get:
tags:
- Email Template Category
summary: Get an email template category by ID
description: Validates and retrieves the email template category based on the email template category ID.
parameters:
- name: id
in: path
description: Email template category ID to be fetched
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/EmailTemplateCategoryAPIResponse'
example:
Success: true
Data:
ParentId: f9273a58-81f3-4f2f-93b2-cf7e798176c3
Description: My Email Template Category
CategoryType: null
OwnerId: null
AccessType: null
Id: 353131c0-e913-46aa-a9a6-925520ce6ab7
Name: MyEmailTemplateCategory
CreatedBy: null
CreatedDate: '0001-01-01T00:00:00'
ModifiedBy: null
ModifiedDate: '0001-01-01T00:00:00'
ExternalId: null
ETag: null
StatusCode: OK
'400':
description: Bad Request
'404':
description: Not Found
'500':
description: Internal Server Error
put:
tags:
- Email Template Category
summary: Update an email template category
description: Validates and updates the email template category based on the email template category ID.
parameters:
- name: id
in: path
description: Email template category ID to be updated
required: true
schema:
type: string
requestBody:
description: 'Email template category information to be updated:
- Id (string, optional): Email template category ID. Guid Id.
- Name (string, *required): The name of the email template category. It can include letters, numbers, special characters, and underscores. For example: Marketing_Email.s
- ParentId (string, optional): Parent category ID. Guid Id.
- Description (string, optional): Description of the category.
- CategoryType (string, *required): Indicates the type of category. For email templates, this should be set to ''EmailTemplate''.
- OwnerId (string, optional): Owner identifier. Guid Id.
- AccessType (string, *required): Specifies the access type for the email template category. Allowed values are: Private, Public.
'
content:
application/json:
schema:
$ref: '#/components/schemas/EmailTemplateCategory'
example:
ParentId: null
Description: Private email template
CategoryType: EmailTemplate
OwnerId: null
AccessType: private
Id: 7e18c37e-9732-4533-8009-5ca0e412e091
Name: Some Category
CreatedBy: null
CreatedDate: '0001-01-01T00:00:00'
ModifiedBy: null
ModifiedDate: '0001-01-01T00:00:00'
ExternalId: null
ETag: null
text/json:
schema:
$ref: '#/components/schemas/EmailTemplateCategory'
example:
ParentId: null
Description: Private email template
CategoryType: EmailTemplate
OwnerId: null
AccessType: private
Id: 7e18c37e-9732-4533-8009-5ca0e412e091
Name: Some Category
CreatedBy: null
CreatedDate: '0001-01-01T00:00:00'
ModifiedBy: null
ModifiedDate: '0001-01-01T00:00:00'
ExternalId: null
ETag: null
application/*+json:
schema:
$ref: '#/components/schemas/EmailTemplateCategory'
example:
ParentId: null
Description: Private email template
CategoryType: EmailTemplate
OwnerId: null
AccessType: private
Id: 7e18c37e-9732-4533-8009-5ca0e412e091
Name: Some Category
CreatedBy: null
CreatedDate: '0001-01-01T00:00:00'
ModifiedBy: null
ModifiedDate: '0001-01-01T00:00:00'
ExternalId: null
ETag: null
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/BooleanNullableAPIResponse'
example:
Success: true
Data: true
StatusCode: OK
'400':
description: Bad Request
'404':
description: Not Found
'500':
description: Internal Server Error
components:
schemas:
BooleanNullableAPIResponse:
type: object
properties:
Success:
type: boolean
RecordCount:
type:
- integer
- 'null'
format: int64
Data:
type:
- boolean
- 'null'
Errors:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/ErrorDetail'
Profile:
type:
- string
- 'null'
TotalTime:
type: number
format: float
StatusCode:
$ref: '#/components/schemas/HttpStatusCode'
HasMoreRecords:
type:
- boolean
- 'null'
NextCursor:
type:
- string
- 'null'
Warnings:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/ErrorDetail'
additionalProperties: false
EmailTemplateCategory:
required:
- AccessType
- CategoryType
type: object
properties:
Id:
type:
- string
- 'null'
Name:
type:
- string
- 'null'
CreatedBy:
$ref: '#/components/schemas/LookupObject'
CreatedDate:
type: string
format: date-time
ModifiedBy:
$ref: '#/components/schemas/LookupObject'
ModifiedDate:
type: string
format: date-time
ExternalId:
type:
- string
- 'null'
ETag:
type:
- string
- 'null'
ParentId:
type:
- string
- 'null'
Description:
type:
- string
- 'null'
CategoryType:
type: string
OwnerId:
type:
- string
- 'null'
AccessType:
type: string
additionalProperties: {}
EmailTemplateCategoryAPIResponse:
type: object
properties:
Success:
type: boolean
RecordCount:
type:
- integer
- 'null'
format: int64
Data:
$ref: '#/components/schemas/EmailTemplateCategory'
Errors:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/ErrorDetail'
Profile:
type:
- string
- 'null'
TotalTime:
type: number
format: float
StatusCode:
$ref: '#/components/schemas/HttpStatusCode'
HasMoreRecords:
type:
- boolean
- 'null'
NextCursor:
type:
- string
- 'null'
Warnings:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/ErrorDetail'
additionalProperties: false
EmailTemplateCategoryResponseAPIResponse:
type: object
properties:
Success:
type: boolean
RecordCount:
type:
- integer
- 'null'
format: int64
Data:
$ref: '#/components/schemas/EmailTemplateCategoryResponse'
Errors:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/ErrorDetail'
Profile:
type:
- string
- 'null'
TotalTime:
type: number
format: float
StatusCode:
$ref: '#/components/schemas/HttpStatusCode'
HasMoreRecords:
type:
- boolean
- 'null'
NextCursor:
type:
- string
- 'null'
Warnings:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/ErrorDetail'
additionalProperties: false
LookupObject:
type: object
properties:
Id:
type:
- string
- 'null'
Name:
type:
- string
- 'null'
additionalProperties: false
SortDirection:
enum:
- Ascending
- Descending
type: string
ErrorDetail:
type: object
properties:
Message:
type:
- string
- 'null'
additionalProperties: false
StringAPIResponse:
type: object
properties:
Success:
type: boolean
RecordCount:
type:
- integer
- 'null'
format: int64
Data:
type:
- string
- 'null'
Errors:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/ErrorDetail'
Profile:
type:
- string
- 'null'
TotalTime:
type: number
format: float
StatusCode:
$ref: '#/components/schemas/HttpStatusCode'
HasMoreRecords:
type:
- boolean
- 'null'
NextCursor:
type:
- string
- 'null'
Warnings:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/ErrorDetail'
additionalProperties: false
EmailTemplateCategoryResponse:
type: object
properties:
EmailTemplateCategories:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/EmailTemplateCategory'
TotalRecordCount:
type:
- integer
- 'null'
format: int64
readOnly: true
additionalProperties: false
HttpStatusCode:
enum:
- Continue
- SwitchingProtocols
- Processing
- EarlyHints
- OK
- Created
- Accepted
- NonAuthoritativeInformation
- NoContent
- ResetContent
- PartialContent
- MultiStatus
- AlreadyReported
- IMUsed
- MultipleChoices
- MovedPermanently
- Found
- SeeOther
- NotModified
- UseProxy
- Unused
- TemporaryRedirect
- PermanentRedirect
- BadRequest
- Unauthorized
- PaymentRequired
- Forbidden
- NotFound
- MethodNotAllowed
- NotAcceptable
- ProxyAuthenticationRequired
- RequestTimeout
- Conflict
- Gone
- LengthRequired
- PreconditionFailed
- RequestEntityTooLarge
- RequestUriTooLong
- UnsupportedMediaType
- RequestedRangeNotSatisfiable
- ExpectationFailed
- MisdirectedRequest
- UnprocessableEntity
- Locked
- FailedDependency
- UpgradeRequired
- PreconditionRequired
- TooManyRequests
- RequestHeaderFieldsTooLarge
- UnavailableForLegalReasons
- InternalServerError
- NotImplemented
- BadGateway
- ServiceUnavailable
- GatewayTimeout
- HttpVersionNotSupported
- VariantAlsoNegotiates
- InsufficientStorage
- LoopDetected
- NotExtended
- NetworkAuthenticationRequired
type: string
securitySchemes:
Bearer:
type: apiKey
description: Please insert JWT with Bearer into field
name: Authorization
in: header