> ## Documentation Index
> Fetch the complete documentation index at: https://jetemail.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Add a DMARC monitoring domain

> Creates a private aggregate-reporting address for a domain. Reports for covered subdomains may use the same RUA destination. The domain is normalized to lowercase and a trailing root dot is removed.



## OpenAPI

````yaml /openapi.json post /dmarc/domains
openapi: 3.0.0
info:
  title: JetEmail API
  version: 1.0.0
  description: API documentation for JetEmail's transactional email service.
servers:
  - url: https://api.jetemail.com
    description: Production
security:
  - apiKeyAuth: []
tags:
  - name: Email
    description: Send transactional email
  - name: Outbound
    description: 'Outbound sending: keys, SMTP users, domains, logs, suppression'
  - name: Inbound
    description: Inbound routing, domains and forward destinations
  - name: DMARC
    description: DMARC aggregate-report domain setup, DNS verification and analytics
  - name: Marketing
    description: >-
      Marketing suite: templates, audiences, contacts, broadcasts, themes,
      assets and signup forms
  - name: Signup Forms
    description: Hosted signup pages and form submissions
externalDocs:
  description: Download OpenAPI Specification
  url: /openapi.json
paths:
  /dmarc/domains:
    post:
      tags:
        - DMARC
      summary: Add a DMARC monitoring domain
      description: >-
        Creates a private aggregate-reporting address for a domain. Reports for
        covered subdomains may use the same RUA destination. The domain is
        normalized to lowercase and a trailing root dot is removed.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - domain
              additionalProperties: false
              properties:
                domain:
                  type: string
                  format: hostname
                  maxLength: 254
                  pattern: >-
                    ^(?:[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?\.)+(?:[A-Za-z]{2,63}|xn--[A-Za-z0-9-]{1,59})\.?$
                  example: example.com
      responses:
        '201':
          description: DMARC domain created
          content:
            application/json:
              schema:
                type: object
                required:
                  - success
                  - domain
                properties:
                  success:
                    type: boolean
                    example: true
                  domain:
                    $ref: '#/components/schemas/DmarcDomain'
        '400':
          description: Malformed JSON or invalid domain
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DmarcError'
        '401':
          description: Unauthorized or account log storage is not configured
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DmarcError'
        '403':
          description: DMARC domain limit reached
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DmarcError'
        '409':
          description: Domain is already registered
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DmarcError'
        '500':
          description: Failed to create the DMARC domain
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DmarcError'
components:
  schemas:
    DmarcDomain:
      type: object
      required:
        - uuid
        - domain
        - status
        - logLocation
        - ruaAddress
        - dns
        - verifiedAt
        - createdAt
        - updatedAt
      properties:
        uuid:
          type: string
          format: uuid
          example: b814c25d-b18c-4044-ae31-49e22ce908b5
        domain:
          type: string
          format: hostname
          example: example.com
        status:
          type: string
          enum:
            - pending
            - verified
            - disabled
          example: verified
        logLocation:
          type: string
          enum:
            - au
            - us
            - eu
          example: au
        ruaAddress:
          type: string
          format: email
          example: 5e2f617ea64848ab9073@rua.jetsmtp.net
        dns:
          $ref: '#/components/schemas/DmarcDnsConfiguration'
        verifiedAt:
          type: integer
          format: int64
          nullable: true
          description: Unix timestamp in seconds.
        createdAt:
          type: integer
          format: int64
          description: Unix timestamp in seconds.
        updatedAt:
          type: integer
          format: int64
          description: Unix timestamp in seconds.
    DmarcError:
      type: object
      required:
        - error
      properties:
        success:
          type: boolean
          example: false
        error:
          type: string
          example: Invalid domain
        code:
          type: string
          example: invalid_domain
        details:
          type: string
    DmarcDnsConfiguration:
      type: object
      required:
        - host
        - type
        - value
        - verified
        - lastCheckedAt
      properties:
        host:
          type: string
          example: _dmarc.example.com
        type:
          type: string
          enum:
            - TXT
          example: TXT
        value:
          type: string
          example: v=DMARC1; p=none; rua=mailto:5e2f617ea64848ab9073@rua.jetsmtp.net
        verified:
          type: boolean
          example: true
        lastCheckedAt:
          type: integer
          format: int64
          nullable: true
          description: Unix timestamp in seconds, or null if DNS has not been checked.
          example: 1786248000
  securitySchemes:
    apiKeyAuth:
      type: http
      scheme: bearer
      description: API key for account management endpoints. Use your api_ prefixed token.

````