mirror of
https://gitlab.com/ric_harvey/MailHog.git
synced 2024-11-23 22:34:04 +00:00
API v2 search and message list documentation for #36
This commit is contained in:
parent
693d6590f2
commit
da1b7ec64a
3 changed files with 453 additions and 0 deletions
8
docs/APIv2.md
Normal file
8
docs/APIv2.md
Normal file
|
@ -0,0 +1,8 @@
|
|||
MailHog API v2
|
||||
==============
|
||||
|
||||
The v2 API is hopefully less of a mess than v1.
|
||||
|
||||
The specification is written in [Swagger 2.0](http://swagger.io/).
|
||||
|
||||
See the YAML and JSON specifications in the [APIv2](./APIv2) directory.
|
259
docs/APIv2/swagger-2.0.json
Normal file
259
docs/APIv2/swagger-2.0.json
Normal file
|
@ -0,0 +1,259 @@
|
|||
{
|
||||
"swagger": "2.0",
|
||||
"info": {
|
||||
"version": "2.0.0",
|
||||
"title": "MailHog API"
|
||||
},
|
||||
"paths": {
|
||||
"/api/v2/messages": {
|
||||
"get": {
|
||||
"description": "Retrieve a list of messages\n",
|
||||
"parameters": [
|
||||
{
|
||||
"name": "start",
|
||||
"in": "query",
|
||||
"description": "Start index",
|
||||
"required": false,
|
||||
"type": "number",
|
||||
"format": "int64",
|
||||
"default": 0
|
||||
},
|
||||
{
|
||||
"name": "limit",
|
||||
"in": "query",
|
||||
"description": "Number of messages",
|
||||
"required": false,
|
||||
"type": "number",
|
||||
"format": "int64",
|
||||
"default": 50
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Successful response",
|
||||
"schema": {
|
||||
"title": "Messages",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"total": {
|
||||
"type": "number",
|
||||
"format": "int64",
|
||||
"description": "Total number of stored messages"
|
||||
},
|
||||
"start": {
|
||||
"type": "number",
|
||||
"format": "int64",
|
||||
"description": "Start index of first returned message"
|
||||
},
|
||||
"count": {
|
||||
"type": "number",
|
||||
"format": "int64",
|
||||
"description": "Number of returned messages"
|
||||
},
|
||||
"messages": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"title": "Message",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "string"
|
||||
},
|
||||
"from": {
|
||||
"title": "Path",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"relays": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"mailbox": {
|
||||
"type": "string"
|
||||
},
|
||||
"domain": {
|
||||
"type": "string"
|
||||
},
|
||||
"params": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
},
|
||||
"to": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"title": "Path",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"relays": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"mailbox": {
|
||||
"type": "string"
|
||||
},
|
||||
"domain": {
|
||||
"type": "string"
|
||||
},
|
||||
"params": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"headers": {
|
||||
"type": "object"
|
||||
},
|
||||
"size": {
|
||||
"type": "number",
|
||||
"format": "int64"
|
||||
},
|
||||
"created": {
|
||||
"type": "string",
|
||||
"format": "date-time"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"/api/v2/search": {
|
||||
"get": {
|
||||
"description": "Search messages\n",
|
||||
"parameters": [
|
||||
{
|
||||
"name": "kind",
|
||||
"in": "query",
|
||||
"description": "Kind of search",
|
||||
"required": true,
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"from",
|
||||
"to",
|
||||
"containing"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "start",
|
||||
"in": "query",
|
||||
"description": "Start index",
|
||||
"required": false,
|
||||
"type": "number",
|
||||
"format": "int64",
|
||||
"default": 0
|
||||
},
|
||||
{
|
||||
"name": "limit",
|
||||
"in": "query",
|
||||
"description": "Number of messages",
|
||||
"required": false,
|
||||
"type": "number",
|
||||
"format": "int64",
|
||||
"default": 50
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Successful response",
|
||||
"schema": {
|
||||
"title": "Messages",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"total": {
|
||||
"type": "number",
|
||||
"format": "int64",
|
||||
"description": "Total number of stored messages"
|
||||
},
|
||||
"start": {
|
||||
"type": "number",
|
||||
"format": "int64",
|
||||
"description": "Start index of first returned message"
|
||||
},
|
||||
"count": {
|
||||
"type": "number",
|
||||
"format": "int64",
|
||||
"description": "Number of returned messages"
|
||||
},
|
||||
"messages": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"title": "Message",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "string"
|
||||
},
|
||||
"from": {
|
||||
"title": "Path",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"relays": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"mailbox": {
|
||||
"type": "string"
|
||||
},
|
||||
"domain": {
|
||||
"type": "string"
|
||||
},
|
||||
"params": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
},
|
||||
"to": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"title": "Path",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"relays": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"mailbox": {
|
||||
"type": "string"
|
||||
},
|
||||
"domain": {
|
||||
"type": "string"
|
||||
},
|
||||
"params": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"headers": {
|
||||
"type": "object"
|
||||
},
|
||||
"size": {
|
||||
"type": "number",
|
||||
"format": "int64"
|
||||
},
|
||||
"created": {
|
||||
"type": "string",
|
||||
"format": "date-time"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
186
docs/APIv2/swagger-2.0.yaml
Normal file
186
docs/APIv2/swagger-2.0.yaml
Normal file
|
@ -0,0 +1,186 @@
|
|||
swagger: '2.0'
|
||||
|
||||
info:
|
||||
version: "2.0.0"
|
||||
title: MailHog API
|
||||
|
||||
paths:
|
||||
/api/v2/messages:
|
||||
get:
|
||||
description: |
|
||||
Retrieve a list of messages
|
||||
parameters:
|
||||
-
|
||||
name: start
|
||||
in: query
|
||||
description: Start index
|
||||
required: false
|
||||
type: number
|
||||
format: int64
|
||||
default: 0
|
||||
-
|
||||
name: limit
|
||||
in: query
|
||||
description: Number of messages
|
||||
required: false
|
||||
type: number
|
||||
format: int64
|
||||
default: 50
|
||||
responses:
|
||||
200:
|
||||
description: Successful response
|
||||
schema:
|
||||
title: Messages
|
||||
type: object
|
||||
properties:
|
||||
total:
|
||||
type: number
|
||||
format: int64
|
||||
description: Total number of stored messages
|
||||
start:
|
||||
type: number
|
||||
format: int64
|
||||
description: Start index of first returned message
|
||||
count:
|
||||
type: number
|
||||
format: int64
|
||||
description: Number of returned messages
|
||||
messages:
|
||||
type: array
|
||||
items:
|
||||
title: Message
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
from:
|
||||
title: Path
|
||||
type: object
|
||||
properties:
|
||||
relays:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
mailbox:
|
||||
type: string
|
||||
domain:
|
||||
type: string
|
||||
params:
|
||||
type: string
|
||||
to:
|
||||
type: array
|
||||
items:
|
||||
title: Path
|
||||
type: object
|
||||
properties:
|
||||
relays:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
mailbox:
|
||||
type: string
|
||||
domain:
|
||||
type: string
|
||||
params:
|
||||
type: string
|
||||
headers:
|
||||
type: object
|
||||
size:
|
||||
type: number
|
||||
format: int64
|
||||
created:
|
||||
type: string
|
||||
format: date-time
|
||||
/api/v2/search:
|
||||
get:
|
||||
description: |
|
||||
Search messages
|
||||
parameters:
|
||||
-
|
||||
name: kind
|
||||
in: query
|
||||
description: Kind of search
|
||||
required: true
|
||||
type: string
|
||||
enum: [ from, to, containing ]
|
||||
-
|
||||
name: start
|
||||
in: query
|
||||
description: Start index
|
||||
required: false
|
||||
type: number
|
||||
format: int64
|
||||
default: 0
|
||||
-
|
||||
name: limit
|
||||
in: query
|
||||
description: Number of messages
|
||||
required: false
|
||||
type: number
|
||||
format: int64
|
||||
default: 50
|
||||
responses:
|
||||
200:
|
||||
description: Successful response
|
||||
schema:
|
||||
title: Messages
|
||||
type: object
|
||||
properties:
|
||||
total:
|
||||
type: number
|
||||
format: int64
|
||||
description: Total number of stored messages
|
||||
start:
|
||||
type: number
|
||||
format: int64
|
||||
description: Start index of first returned message
|
||||
count:
|
||||
type: number
|
||||
format: int64
|
||||
description: Number of returned messages
|
||||
messages:
|
||||
type: array
|
||||
items:
|
||||
title: Message
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
from:
|
||||
title: Path
|
||||
type: object
|
||||
properties:
|
||||
relays:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
mailbox:
|
||||
type: string
|
||||
domain:
|
||||
type: string
|
||||
params:
|
||||
type: string
|
||||
to:
|
||||
type: array
|
||||
items:
|
||||
title: Path
|
||||
type: object
|
||||
properties:
|
||||
relays:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
mailbox:
|
||||
type: string
|
||||
domain:
|
||||
type: string
|
||||
params:
|
||||
type: string
|
||||
headers:
|
||||
type: object
|
||||
size:
|
||||
type: number
|
||||
format: int64
|
||||
created:
|
||||
type: string
|
||||
format: date-time
|
Loading…
Reference in a new issue