SEDNA Message API API
The Message API API from SEDNA — 19 operation(s) for message api.
The Message API API from SEDNA — 19 operation(s) for message api.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/sedna-message-api-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
contact:
name: Support
url: https://support.sedna.com
termsOfService: https://www.sedna.com/terms-of-service
title: Sedna Authentication Message API
version: '2019-01-01'
servers:
- description: Platform endpoint
url: https://{tenant}.sednanetwork.com/platform
variables:
tenant:
default: example
description: Your tenant's unique identifier
security:
- Basic: []
- OAuth: []
tags:
- name: Message API
paths:
/2019-01-01/download/message/{id}/attachments/zip:
get:
description: 'Download all attachments of a message as a zip file, using presigned S3 link if available or generating it otherwise.
Required API Permissions: DOCUMENT_READ'
operationId: downloadAllMessageAttachments
parameters:
- in: path
name: id
required: true
schema:
type: string
responses:
default:
content:
application/json: {}
application/vnd.api+json: {}
description: default response
tags:
- Message API
/2019-01-01/message:
post:
description: 'Create a draft message
Required API Permissions: MESSAGE_WRITE'
operationId: createMessageDraft
parameters:
- in: query
name: appendSignature
schema:
type: boolean
default: true
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/MessageCreate'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/MessageCreate'
responses:
default:
content:
application/json: {}
application/vnd.api+json: {}
description: default response
tags:
- Message API
/2019-01-01/message/quarantine:
get:
description: 'List messages that have been quarantined/released.
Required API Permissions: QUARANTINED_MESSAGE_READ'
operationId: listQuarantinedMessages
parameters:
- in: query
name: page[limit]
schema:
type: integer
format: int32
default: 100
maximum: 1000
- in: query
name: page[offset]
schema:
type: integer
format: int64
default: 0
- in: query
name: filter[id]
schema:
type: string
- in: query
name: filter[quarantineStatus]
schema:
type: boolean
- in: query
name: fields[message]
schema:
type: string
- in: query
name: filter[quarantinedDate.from]
schema:
type: string
- in: query
name: filter[quarantinedDate.to]
schema:
type: string
- in: query
name: filter[releasedDate.from]
schema:
type: string
- in: query
name: filter[releasedDate.to]
schema:
type: string
- in: query
name: filter[team]
schema:
type: string
responses:
default:
content:
application/json:
schema:
$ref: '#/components/schemas/MessageCollection'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/MessageCollection'
description: default response
tags:
- Message API
/2019-01-01/message/send:
post:
description: 'Create and send a message
Required API Permissions: MESSAGE_WRITE, MESSAGE_READ'
operationId: sendNewMessage
parameters:
- in: query
name: appendSignature
schema:
type: boolean
default: true
- in: query
name: scanForVirus
schema:
type: integer
format: int32
- in: query
name: sendDelay
schema:
type: integer
format: int32
- in: query
name: currentTeamId
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/MessageCreate'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/MessageCreate'
responses:
default:
content:
application/json: {}
application/vnd.api+json: {}
description: default response
tags:
- Message API
/2019-01-01/message/{id}:
get:
description: 'Fetch a message
Required API Permissions: MESSAGE_READ'
operationId: getMessage
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
- description: 'Comma separated list of fields to return. Available fields: subject,snippet,fromName,fromEmail,bodyText,bodyHtml,hasAttachment,receivedAt,sentAt,messageId,inReplyTo,references,from,to,cc,bcc,signed. Id is always returned.'
in: query
name: fields[message]
schema:
type: string
responses:
default:
content:
application/json:
schema:
$ref: '#/components/schemas/MessageSingle'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/MessageSingle'
description: default response
tags:
- Message API
patch:
description: 'Update a draft message
Required API Permissions: MESSAGE_WRITE, MESSAGE_READ'
operationId: updateMessageDraft
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
- in: query
name: noContent
schema:
type: integer
format: int32
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/MessageUpdate'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/MessageUpdate'
responses:
default:
content:
application/json: {}
application/vnd.api+json: {}
description: default response
tags:
- Message API
/2019-01-01/message/{id}/assignment:
get:
description: 'Fetch a message''s related assignments
Required API Permissions: MESSAGE_READ'
operationId: getMessageAssignments
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
responses:
default:
content:
application/json:
schema:
$ref: '#/components/schemas/UserCollection'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/UserCollection'
description: default response
tags:
- Message API
/2019-01-01/message/{id}/category-tag:
get:
description: 'Fetch a message''s related category tags
Required API Permissions: MESSAGE_READ'
operationId: getMessageCategoryTags
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
responses:
default:
content:
application/json:
schema:
$ref: '#/components/schemas/CategoryTagCollection'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/CategoryTagCollection'
description: default response
tags:
- Message API
/2019-01-01/message/{id}/comment:
get:
description: 'Get all comments for the message
Required API Permissions: COMMENT_READ'
operationId: getMessageComments
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
responses:
default:
content:
application/json:
schema:
$ref: '#/components/schemas/CommentCollection'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/CommentCollection'
description: default response
tags:
- Message API
/2019-01-01/message/{id}/document:
post:
description: '
Adds an attachment to a message.
Returns an S3 Upload URL that will be valid for 5 minutes. This link can be used to upload the content of the file.
If a base64 body is provided this link will already contain the content of the file.
Required API Permissions: MESSAGE_READ, MESSAGE_WRITE'
operationId: addDocumentToMessage
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NewDocumentDescription'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/NewDocumentDescription'
responses:
default:
content:
application/json:
schema:
$ref: '#/components/schemas/NewDocumentSingle'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/NewDocumentSingle'
description: default response
tags:
- Message API
get:
description: 'Fetch a message''s documents
Required API Permissions: MESSAGE_READ'
operationId: getMessageDocuments
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
- in: query
name: includeArchiveAttachment
schema:
type: boolean
responses:
default:
content:
application/json:
schema:
$ref: '#/components/schemas/DocumentCollection'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/DocumentCollection'
description: default response
tags:
- Message API
/2019-01-01/message/{id}/job-reference:
get:
description: 'Fetch a message''s related job references
Required API Permissions: MESSAGE_READ'
operationId: getMessageJobReferences
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
responses:
default:
content:
application/json:
schema:
$ref: '#/components/schemas/JobReferenceCollection'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/JobReferenceCollection'
description: default response
tags:
- Message API
/2019-01-01/message/{id}/quarantine:
patch:
description: 'Quarantine a message from users until it is released.
Required API Permissions: QUARANTINED_MESSAGE_WRITE'
operationId: quarantineMessage
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/MessageQuarantineUpdate'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/MessageQuarantineUpdate'
responses:
default:
content:
application/json: {}
application/vnd.api+json: {}
description: default response
tags:
- Message API
/2019-01-01/message/{id}/quarantine/event:
get:
description: 'List quarantine and release events of a message.
Required API Permissions: QUARANTINED_MESSAGE_READ, EVENT_READ'
operationId: getMessageQuarantineEvents
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
responses:
default:
content:
application/json:
schema:
$ref: '#/components/schemas/QuarantinedMessageEventCollection'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/QuarantinedMessageEventCollection'
description: default response
tags:
- Message API
/2019-01-01/message/{id}/relationships/assignment:
post:
description: 'Add people to a message''s assignment relationships
Required API Permissions: MESSAGE_WRITE'
operationId: addAssignments
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateAssignmentRelToMany'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/UpdateAssignmentRelToMany'
responses:
default:
content:
application/json:
schema:
$ref: '#/components/schemas/AssignmentRelToMany'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/AssignmentRelToMany'
description: default response
tags:
- Message API
/2019-01-01/message/{id}/relationships/category-tag:
post:
description: 'Add tags to a message''s category tag relationships
Required API Permissions: MESSAGE_READ, MESSAGE_WRITE'
operationId: addMessageCategoryTags
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateCategoryTagRelToMany'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/UpdateCategoryTagRelToMany'
responses:
default:
content:
application/json:
schema:
$ref: '#/components/schemas/CategoryTagRelToMany'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/CategoryTagRelToMany'
description: default response
tags:
- Message API
get:
description: 'Fetch a message''s category tag relationships
Required API Permissions: MESSAGE_READ'
operationId: getMessageCategoryTagRelationships
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
responses:
default:
content:
application/json:
schema:
$ref: '#/components/schemas/CategoryTagRelToMany'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/CategoryTagRelToMany'
description: default response
tags:
- Message API
delete:
description: 'Remove tags from a message''s category tag relationships
Required API Permissions: MESSAGE_READ, MESSAGE_DELETE'
operationId: removeMessageCategoryTags
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateCategoryTagRelToMany'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/UpdateCategoryTagRelToMany'
responses:
default:
content:
application/json:
schema:
$ref: '#/components/schemas/CategoryTagRelToMany'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/CategoryTagRelToMany'
description: default response
tags:
- Message API
patch:
description: 'Replace teams to a message''s category tag relationships (Note: Forbidden)
Required API Permissions: MESSAGE_READ, MESSAGE_WRITE'
operationId: replaceMessageCategoryTags
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
responses:
default:
content:
application/json: {}
application/vnd.api+json: {}
description: default response
tags:
- Message API
/2019-01-01/message/{id}/relationships/document:
get:
description: 'Fetch a message''s document relationships
Required API Permissions: MESSAGE_READ'
operationId: getMessageDocumentRelationships
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
responses:
default:
content:
application/json:
schema:
$ref: '#/components/schemas/DocumentRelToMany'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/DocumentRelToMany'
description: default response
tags:
- Message API
/2019-01-01/message/{id}/relationships/job-reference:
post:
description: 'Add job references to a message''s job reference relationships
Required API Permissions: MESSAGE_READ, MESSAGE_WRITE'
operationId: addMessageJobReferences
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateJobReferenceRelToMany'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/UpdateJobReferenceRelToMany'
responses:
default:
content:
application/json:
schema:
$ref: '#/components/schemas/JobReferenceRelToMany'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/JobReferenceRelToMany'
description: default response
tags:
- Message API
delete:
description: 'Remove job references from a message''s job reference relationships
Required API Permissions: MESSAGE_READ, MESSAGE_DELETE'
operationId: deleteMessageJobReferences
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateJobReferenceRelToMany'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/UpdateJobReferenceRelToMany'
responses:
default:
content:
application/json:
schema:
$ref: '#/components/schemas/JobReferenceRelToMany'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/JobReferenceRelToMany'
description: default response
tags:
- Message API
get:
description: 'Fetch a message''s job reference relationships
Required API Permissions: MESSAGE_READ'
operationId: getMessageJobReferenceRelationships
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
responses:
default:
content:
application/json:
schema:
$ref: '#/components/schemas/JobReferenceRelToMany'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/JobReferenceRelToMany'
description: default response
tags:
- Message API
patch:
description: 'Replace teams to a message''s job reference relationships (Note: Forbidden)
Required API Permissions: MESSAGE_READ, MESSAGE_WRITE'
operationId: replaceMessageJobReferences
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
responses:
default:
content:
application/json: {}
application/vnd.api+json: {}
description: default response
tags:
- Message API
/2019-01-01/message/{id}/relationships/team:
post:
description: 'Add teams to a message''s team relationships
Required API Permissions: MESSAGE_READ, MESSAGE_WRITE'
operationId: addMessageTeams
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
- in: query
name: fromTeamId
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateTeamRelToMany'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/UpdateTeamRelToMany'
responses:
default:
content:
application/json: {}
application/vnd.api+json: {}
description: default response
tags:
- Message API
delete:
description: 'Remove teams from a message''s team relationships
Required API Permissions: MESSAGE_READ, MESSAGE_DELETE'
operationId: deleteMessageTeams
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateTeamRelToMany'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/UpdateTeamRelToMany'
responses:
default:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateTeamRelToMany'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/UpdateTeamRelToMany'
description: default response
tags:
- Message API
get:
description: 'Fetch a message''s team relationships
Required API Permissions: MESSAGE_READ, MESSAGE_DELETE'
operationId: getMessageTeamRelationships
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
responses:
default:
content:
application/json:
schema:
$ref: '#/components/schemas/TeamRelToMany'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/TeamRelToMany'
description: default response
tags:
- Message API
patch:
description: 'Replace teams to a message''s team relationships (Note: Forbidden)
Required API Permissions: MESSAGE_READ, MESSAGE_WRITE'
operationId: replaceMessageTeams
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
responses:
default:
content:
application/json: {}
application/vnd.api+json: {}
description: default response
tags:
- Message API
/2019-01-01/message/{id}/send:
post:
description: 'Send a message
Required API Permissions: MESSAGE_WRITE, MESSAGE_READ'
operationId: sendMessage
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
- in: query
name: scanForVirus
schema:
type: integer
format: int32
- in: query
name: sendDelay
schema:
type: integer
format: int32
- in: query
name: currentTeamId
schema:
type: string
responses:
default:
content:
application/json: {}
application/vnd.api+json: {}
description: default response
tags:
- Message API
patch:
description: 'Update and send a message
Required API Permissions: MESSAGE_WRITE, MESSAGE_READ'
operationId: updateAndSendMessagePatch
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
- in: query
name: scanForVirus
schema:
type: integer
format: int32
- in: query
name: sendDelay
schema:
type: integer
format: int32
- in: query
name: currentTeamId
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/MessageUpdate'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/MessageUpdate'
responses:
default:
content:
application/json: {}
application/vnd.api+json: {}
description: default response
tags:
- Message API
/2019-01-01/message/{id}/team:
get:
description: 'Fetch a message''s related teams
Required API Permissions: MESSAGE_READ'
operationId: getMessageTeams
parameters:
- in: path
name: id
required: true
schema:
type: integer
format: int64
responses:
default:
content:
application/json:
schema:
$ref: '#/components/schemas/TeamCollection'
application/vnd.api+json:
schema:
$ref: '#/components/schemas/TeamCollection'
description: default response
tags:
- Message API
components:
schemas:
MessageCollection:
type: object
description: The resource
properties:
data:
type: array
items:
$ref: '#/components/schemas/MessageReadResource'
included:
type: array
items:
type: object
links:
$ref: '#/components/schemas/MessageCollectionLinks'
meta:
$ref: '#/components/schemas/MessageCollectionMeta'
TeamRelToMany:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/TeamRelData'
links:
$ref: '#/components/schemas/TeamRelLinks'
TeamAttributeAutoBccEmail:
type: object
properties:
email:
type: string
name:
type: string
required:
- email
UpdateTeamRelToMany:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/TeamRelData'
CommentAttributes:
type: object
properties:
content:
type: string
createdAt:
type: string
format: date-time
required:
- content
- createdAt
ResourceObjectIdentifier:
type: object
properties:
id:
type: string
meta:
$ref: '#/components/schemas/MetaObject'
type:
type: string
MessageRelToOne:
type: object
properties:
data:
$ref: '#/components/schemas/MessageRelData'
links:
$ref: '#/components/schemas/MessageRelLinks'
CategoryTagRelToMany:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/CategoryTagRelData'
links:
$ref: '#/components/schemas/CategoryTagRelLinks'
MessageQuarantineUpdate:
type: object
properties:
data:
$ref: '#/components/schemas/MessageQuarantineUpdateResource'
MessageReadAttributes:
type: object
properties:
bcc:
type: array
items:
type: string
bodyHtml:
type: string
bodyText:
type: string
cc:
type: array
items:
type: string
from:
type: array
items:
type: string
fromEmail:
type: string
fromName:
type: string
hasAttachment:
type: boolean
inReplyTo:
type: string
messageId:
type: string
quarantineStatus:
type: string
receivedAt:
type: string
format: date-time
references:
type: string
sentAt:
type: string
format: date-time
signed:
type: string
enum:
- UNVERIFIED
- UNSIGNED
- VERIFIED
- FAILED_VERIFICATION
snippet:
type: string
subject:
type: string
to:
type: array
items:
type: string
MessageLinks:
type: object
properties:
self:
type: string
TeamRelationships:
type: object
properties:
categoryTag:
$ref: '#/components/schemas/CategoryTagRelToMany'
user:
$ref: '#/components/schemas/UserRelToMany'
NewDocumentMeta:
type: object
properties:
download:
type: string
publicDownload:
type: string
uploadUri:
type: string
NewDocumentAttributes:
type: object
properties:
base64Content:
type: string
description: Optional Base64 encoded data of the file to upload.
example: data:image/png;base64,iVBORw0KGgoAA...5CYII=';
fileName:
type: string
description: Filename of the uploaded file.
example: image.jpg
fileSize:
type: integer
format: int64
description: Filesize of the uploaded file in bytes.
example: 10000
MessageTag:
type: object
properties:
assignedToUserId:
type: string
createdAt:
type: string
format: date-time
eventId:
$ref: '#/components/schemas/EventId'
messageId:
type: string
messageTagId:
$ref: '#/components/schemas/MessageTagId'
removedAt:
type: string
format: date-time
removedByUserId:
type: string
tag:
$ref: '#/components/schemas/Tag'
tagId:
$ref: '#/components/schemas/TagId'
userId:
type: string
TeamRelData:
type: object
properties:
id:
type: string
type:
type: string
DocumentAttributes:
type: object
properties:
createdAt:
type: string
hash:
type: string
name:
type: string
size:
type: number
type:
type: string
JobReferenceRelToMany:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/JobReferenceRelData'
links:
$ref: '#/components/schemas/JobReferenceRelLinks'
UpdateJobReferenceRelToMany:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/JobReferenceRelData'
UserRelationships:
type: object
properties:
deactivationPeriod:
$ref: '#/components/schemas/UserDeactivationPeriodRelToMany'
defaultTeam:
$ref: '#/components/schemas/TeamRelationship'
disableSendTeams:
$ref: '#/components/schemas/TeamRelToMany'
notificationDevice:
$ref: '#/components/schemas/NotificationDeviceRelToMany'
privateLabel:
$ref: '#/components/schemas/Privat
# --- truncated at 32 KB (57 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/sedna/refs/heads/main/openapi/sedna-message-api-api-openapi.yml