{
  "opencollection": "1.0.0",
  "info": {
    "name": "Novu Activity Domains API",
    "version": "3.15.0"
  },
  "request": {
    "auth": {
      "type": "apikey",
      "key": "Authorization",
      "value": "{{Authorization}}",
      "placement": "header"
    }
  },
  "items": [
    {
      "info": {
        "name": "Domains",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Novu List Domains for an Environment",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.novu.co/v1/domains",
            "params": [
              {
                "name": "after",
                "value": "",
                "type": "query",
                "description": "Cursor for pagination indicating the starting point after which to fetch results."
              },
              {
                "name": "before",
                "value": "",
                "type": "query",
                "description": "Cursor for pagination indicating the ending point before which to fetch results."
              },
              {
                "name": "limit",
                "value": "10",
                "type": "query",
                "description": "Limit the number of items to return"
              },
              {
                "name": "orderDirection",
                "value": "",
                "type": "query",
                "description": "Direction of sorting"
              },
              {
                "name": "orderBy",
                "value": "",
                "type": "query",
                "description": "Field to order by"
              },
              {
                "name": "includeCursor",
                "value": "",
                "type": "query",
                "description": "Include cursor item in response"
              },
              {
                "name": "name",
                "value": "",
                "type": "query",
                "description": "Domain name to filter results by."
              }
            ],
            "auth": {
              "type": "apikey",
              "key": "Authorization",
              "value": "{{Authorization}}",
              "placement": "header"
            }
          },
          "docs": "Returns a paginated list of inbound-email domains in the current environment. Supports cursor pagination and a name contains filter."
        },
        {
          "info": {
            "name": "Novu Create a Domain",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.novu.co/v1/domains",
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "apikey",
              "key": "Authorization",
              "value": "{{Authorization}}",
              "placement": "header"
            }
          },
          "docs": "Registers a new inbound-email domain. The response includes the DNS records customers must add at their DNS provider before the domain can receive mail."
        },
        {
          "info": {
            "name": "Novu Retrieve a Domain by Name",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.novu.co/v1/domains/:domain",
            "params": [
              {
                "name": "domain",
                "value": "",
                "type": "path"
              }
            ],
            "auth": {
              "type": "apikey",
              "key": "Authorization",
              "value": "{{Authorization}}",
              "placement": "header"
            }
          },
          "docs": "Returns the domain configuration and the DNS records that must be in place. This is a pure read; call `domains.verify` to refresh verification status from DNS."
        },
        {
          "info": {
            "name": "Novu Update a Domain",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "https://api.novu.co/v1/domains/:domain",
            "params": [
              {
                "name": "domain",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "apikey",
              "key": "Authorization",
              "value": "{{Authorization}}",
              "placement": "header"
            }
          },
          "docs": "Updates optional domain fields. When `data` is provided, it replaces the entire metadata object; omit `data` to leave it unchanged."
        },
        {
          "info": {
            "name": "Novu Delete a Domain",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "https://api.novu.co/v1/domains/:domain",
            "params": [
              {
                "name": "domain",
                "value": "",
                "type": "path"
              }
            ],
            "auth": {
              "type": "apikey",
              "key": "Authorization",
              "value": "{{Authorization}}",
              "placement": "header"
            }
          },
          "docs": "Removes the domain and cascades the deletion to all of its routes. Inbound mail for that domain stops being processed immediately."
        },
        {
          "info": {
            "name": "Novu Verify a Domain",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.novu.co/v1/domains/:domain/verify",
            "params": [
              {
                "name": "domain",
                "value": "",
                "type": "path"
              }
            ],
            "auth": {
              "type": "apikey",
              "key": "Authorization",
              "value": "{{Authorization}}",
              "placement": "header"
            }
          },
          "docs": "Performs a live DNS lookup to refresh the MX record status of the domain and updates the verification status accordingly. Returns the latest domain configuration."
        },
        {
          "info": {
            "name": "Novu Diagnose Inbound DNS for a Domain",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.novu.co/v1/domains/:domain/diagnose",
            "params": [
              {
                "name": "domain",
                "value": "",
                "type": "path"
              }
            ],
            "auth": {
              "type": "apikey",
              "key": "Authorization",
              "value": "{{Authorization}}",
              "placement": "header"
            }
          },
          "docs": "Runs live DNS checks for inbound email readiness (MX correctness, apex CNAME collision, and common DNS blocklists for the Novu mail host). Returns structured issues with plain-language fixes."
        },
        {
          "info": {
            "name": "Novu List Routes for a Domain",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.novu.co/v1/domains/:domain/routes",
            "params": [
              {
                "name": "domain",
                "value": "",
                "type": "path"
              },
              {
                "name": "after",
                "value": "",
                "type": "query",
                "description": "Cursor for pagination indicating the starting point after which to fetch results."
              },
              {
                "name": "before",
                "value": "",
                "type": "query",
                "description": "Cursor for pagination indicating the ending point before which to fetch results."
              },
              {
                "name": "limit",
                "value": "10",
                "type": "query",
                "description": "Limit the number of items to return"
              },
              {
                "name": "orderDirection",
                "value": "",
                "type": "query",
                "description": "Direction of sorting"
              },
              {
                "name": "orderBy",
                "value": "",
                "type": "query",
                "description": "Field to order by"
              },
              {
                "name": "includeCursor",
                "value": "",
                "type": "query",
                "description": "Include cursor item in response"
              },
              {
                "name": "agentId",
                "value": "",
                "type": "query",
                "description": "Agent identifier to filter routes by."
              }
            ],
            "auth": {
              "type": "apikey",
              "key": "Authorization",
              "value": "{{Authorization}}",
              "placement": "header"
            }
          },
          "docs": "Returns a paginated list of routes attached to the domain. Optionally filter by an agent identifier to find routes pointing to a specific agent."
        },
        {
          "info": {
            "name": "Novu Create a Route",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.novu.co/v1/domains/:domain/routes",
            "params": [
              {
                "name": "domain",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "apikey",
              "key": "Authorization",
              "value": "{{Authorization}}",
              "placement": "header"
            }
          },
          "docs": "Creates a route on the domain that forwards inbound mail addressed to `<address>@<domain>` to either a webhook or an agent. Each address on a domain may only have a single route."
        },
        {
          "info": {
            "name": "Novu Retrieve a Route by Address",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.novu.co/v1/domains/:domain/routes/:address",
            "params": [
              {
                "name": "domain",
                "value": "",
                "type": "path"
              },
              {
                "name": "address",
                "value": "",
                "type": "path"
              }
            ],
            "auth": {
              "type": "apikey",
              "key": "Authorization",
              "value": "{{Authorization}}",
              "placement": "header"
            }
          },
          "docs": "Returns the route bound to `<address>@<domain>`. Use `*` as the address to retrieve the wildcard route for the domain."
        },
        {
          "info": {
            "name": "Novu Update a Route",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "https://api.novu.co/v1/domains/:domain/routes/:address",
            "params": [
              {
                "name": "domain",
                "value": "",
                "type": "path"
              },
              {
                "name": "address",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "apikey",
              "key": "Authorization",
              "value": "{{Authorization}}",
              "placement": "header"
            }
          },
          "docs": "Updates the destination of the route bound to `<address>@<domain>`. The address itself is the resource identity and cannot be changed; delete and recreate the route to rename it."
        },
        {
          "info": {
            "name": "Novu Delete a Route",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "https://api.novu.co/v1/domains/:domain/routes/:address",
            "params": [
              {
                "name": "domain",
                "value": "",
                "type": "path"
              },
              {
                "name": "address",
                "value": "",
                "type": "path"
              }
            ],
            "auth": {
              "type": "apikey",
              "key": "Authorization",
              "value": "{{Authorization}}",
              "placement": "header"
            }
          },
          "docs": "Removes the route bound to `<address>@<domain>`. Inbound mail for that address will no longer be processed."
        },
        {
          "info": {
            "name": "Novu Test an Inbound Route",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.novu.co/v1/domains/:domain/routes/:address/test",
            "params": [
              {
                "name": "domain",
                "value": "",
                "type": "path"
              },
              {
                "name": "address",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "apikey",
              "key": "Authorization",
              "value": "{{Authorization}}",
              "placement": "header"
            }
          },
          "docs": "Sends a synthetic inbound email through the same delivery path as production (outbound webhooks for webhook routes, signed HTTP to the agent for agent routes). Use `dryRun: true` to preview the payload without delivering."
        },
        {
          "info": {
            "name": "Novu Retrieve Auto-configuration Availability",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://api.novu.co/v1/domains/:domain/auto-configure",
            "params": [
              {
                "name": "domain",
                "value": "",
                "type": "path"
              }
            ],
            "auth": {
              "type": "apikey",
              "key": "Authorization",
              "value": "{{Authorization}}",
              "placement": "header"
            }
          },
          "docs": "Returns whether DNS auto-configuration (Domain Connect) is available for this domain. When `available` is `false`, `manualRecords` lists the DNS records the customer must add manually."
        },
        {
          "info": {
            "name": "Novu Start DNS Auto-configuration",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.novu.co/v1/domains/:domain/auto-configure/start",
            "params": [
              {
                "name": "domain",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "apikey",
              "key": "Authorization",
              "value": "{{Authorization}}",
              "placement": "header"
            }
          },
          "docs": "Generates a signed redirect URL the customer can follow to apply Novu DNS records at their DNS provider. After the provider completes the flow, it redirects back to `redirectUri`."
        }
      ]
    }
  ],
  "bundled": true
}