{
  "info": {
    "_postman_id": "maildrop-v4-2",
    "name": "MailDrop Developer API V4.2",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "auth": {
    "type": "bearer",
    "bearer": [
      {
        "key": "token",
        "value": "{{apiKey}}",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://api.maildrop.online/v1"
    },
    {
      "key": "apiKey",
      "value": "YOUR_API_KEY"
    }
  ],
  "item": [
    {
      "name": "Get authenticated account and plan",
      "request": {
        "method": "GET",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/account",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "account"
          ]
        },
        "description": "Get authenticated account and plan"
      },
      "response": []
    },
    {
      "name": "Get effective plan limits",
      "request": {
        "method": "GET",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/limits",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "limits"
          ]
        },
        "description": "Get effective plan limits"
      },
      "response": []
    },
    {
      "name": "Get current-month usage",
      "request": {
        "method": "GET",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/usage",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "usage"
          ]
        },
        "description": "Get current-month usage"
      },
      "response": []
    },
    {
      "name": "List developer domains available to the active plan",
      "request": {
        "method": "GET",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/domains",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "domains"
          ]
        },
        "description": "List developer domains available to the active plan"
      },
      "response": []
    },
    {
      "name": "List private inboxes",
      "request": {
        "method": "GET",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/inboxes",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "inboxes"
          ]
        },
        "description": "List private inboxes"
      },
      "response": []
    },
    {
      "name": "Create private inbox",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          },
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/inboxes",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "inboxes"
          ]
        },
        "description": "Create private inbox",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"local\": \"checkout-qa\",\n  \"domain\": \"tests.maildrop.online\",\n  \"lifetime_hours\": 24,\n  \"access_scope\": \"personal\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      },
      "response": []
    },
    {
      "name": "Get private inbox",
      "request": {
        "method": "GET",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/inboxes/{inbox_id}",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "inboxes",
            "{inbox_id}"
          ]
        },
        "description": "Get private inbox"
      },
      "response": []
    },
    {
      "name": "Delete private inbox",
      "request": {
        "method": "DELETE",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/inboxes/{inbox_id}",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "inboxes",
            "{inbox_id}"
          ]
        },
        "description": "Delete private inbox"
      },
      "response": []
    },
    {
      "name": "List inbox messages",
      "request": {
        "method": "GET",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/inboxes/{inbox_id}/messages",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "inboxes",
            "{inbox_id}",
            "messages"
          ]
        },
        "description": "List inbox messages"
      },
      "response": []
    },
    {
      "name": "Get full message and OTP metadata",
      "request": {
        "method": "GET",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/messages/{message_id}",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "messages",
            "{message_id}"
          ]
        },
        "description": "Get full message and OTP metadata"
      },
      "response": []
    },
    {
      "name": "Delete message",
      "request": {
        "method": "DELETE",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/messages/{message_id}",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "messages",
            "{message_id}"
          ]
        },
        "description": "Delete message"
      },
      "response": []
    },
    {
      "name": "List attachment metadata",
      "request": {
        "method": "GET",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/messages/{message_id}/attachments",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "messages",
            "{message_id}",
            "attachments"
          ]
        },
        "description": "List attachment metadata"
      },
      "response": []
    },
    {
      "name": "List webhook endpoints",
      "request": {
        "method": "GET",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/webhooks",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "webhooks"
          ]
        },
        "description": "List webhook endpoints"
      },
      "response": []
    },
    {
      "name": "Create signed webhook endpoint",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          },
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/webhooks",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "webhooks"
          ]
        },
        "description": "Create signed webhook endpoint",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"CI receiver\",\n  \"url\": \"https://example.com/maildrop-events\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      },
      "response": []
    },
    {
      "name": "Update webhook endpoint",
      "request": {
        "method": "PATCH",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          },
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/webhooks/{webhook_id}",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "webhooks",
            "{webhook_id}"
          ]
        },
        "description": "Update webhook endpoint",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"<name>\",\n  \"url\": \"<url>\",\n  \"status\": \"<status>\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      },
      "response": []
    },
    {
      "name": "Delete webhook endpoint",
      "request": {
        "method": "DELETE",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/webhooks/{webhook_id}",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "webhooks",
            "{webhook_id}"
          ]
        },
        "description": "Delete webhook endpoint"
      },
      "response": []
    },
    {
      "name": "Send signed webhook test",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          },
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/webhooks/{webhook_id}/test",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "webhooks",
            "{webhook_id}",
            "test"
          ]
        },
        "description": "Send signed webhook test",
        "body": {
          "mode": "raw",
          "raw": "{}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      },
      "response": []
    },
    {
      "name": "List team state",
      "request": {
        "method": "GET",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/team",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "team"
          ]
        },
        "description": "Requires team:read. Returns workspace identity, members, invitations, per-member effective limits, monthly API usage, and plan seats."
      },
      "response": []
    },
    {
      "name": "Create team invitation",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          },
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/team/invitations",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "team",
            "invitations"
          ]
        },
        "description": "Requires team:write and an API key created by an active owner or admin.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"email\": \"<email>\",\n  \"role\": \"developer\",\n  \"resource_mode\": \"shared\",\n  \"permissions\": {},\n  \"limits\": {},\n  \"expires_hours\": 168\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      },
      "response": []
    },
    {
      "name": "Revoke team invitation",
      "request": {
        "method": "DELETE",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/team/invitations/{invitation_id}",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "team",
            "invitations",
            "{invitation_id}"
          ]
        },
        "description": "Revoke team invitation"
      },
      "response": []
    },
    {
      "name": "Update team member",
      "request": {
        "method": "PATCH",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          },
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/team/members/{user_id}",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "team",
            "members",
            "{user_id}"
          ]
        },
        "description": "Update team member",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"action\": \"<action>\",\n  \"role\": \"<role>\",\n  \"resource_mode\": \"<resource_mode>\",\n  \"permissions\": {},\n  \"limits\": {}\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      },
      "response": []
    },
    {
      "name": "Remove team member",
      "request": {
        "method": "DELETE",
        "header": [
          {
            "key": "Accept",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/team/members/{user_id}",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "team",
            "members",
            "{user_id}"
          ]
        },
        "description": "Remove team member"
      },
      "response": []
    }
  ]
}