> ## 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.

# Get a DMARC aggregate report

> Returns complete report metadata, transport details, published policy, raw aggregate XML, and a paginated set of normalized authentication records.



## OpenAPI

````yaml /openapi.json get /dmarc/reports/{reportKey}
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/reports/{reportKey}:
    get:
      tags:
        - DMARC
      summary: Get a DMARC aggregate report
      description: >-
        Returns complete report metadata, transport details, published policy,
        raw aggregate XML, and a paginated set of normalized authentication
        records.
      parameters:
        - name: reportKey
          in: path
          required: true
          description: 64-character hexadecimal report key.
          schema:
            type: string
            pattern: ^[0-9a-fA-F]{64}$
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 2000
            default: 500
        - name: offset
          in: query
          required: false
          schema:
            type: integer
            minimum: 0
            default: 0
      responses:
        '200':
          description: Complete DMARC aggregate report
          content:
            application/json:
              schema:
                type: object
                required:
                  - success
                  - report
                  - records
                  - total
                properties:
                  success:
                    type: boolean
                    example: true
                  report:
                    $ref: '#/components/schemas/DmarcReportDetail'
                  records:
                    type: array
                    items:
                      $ref: '#/components/schemas/DmarcRecord'
                  total:
                    type: integer
                    format: int64
                    minimum: 0
        '400':
          description: Invalid report key or pagination
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DmarcError'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DmarcError'
        '404':
          description: DMARC report not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DmarcError'
        '503':
          description: Regional DMARC report service is unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DmarcError'
components:
  schemas:
    DmarcReportDetail:
      allOf:
        - $ref: '#/components/schemas/DmarcReportSummary'
        - type: object
          properties:
            dmarc_id:
              type: string
              description: Private identifier used in the RUA address.
            reporter_extra_contact_info:
              type: string
            reporter_generator:
              type: string
            report_errors:
              type: array
              items:
                type: string
            policy_discovery_method:
              type: string
            policy_fo:
              type: string
            policy_testing:
              type: string
            recipient:
              type: string
              format: email
            peer_ip:
              type: string
              description: SMTP peer IP address.
            mail_from:
              type: string
            header_from:
              type: string
            message_id:
              type: string
            subject:
              type: string
            tls:
              type: integer
              enum:
                - 0
                - 1
              description: Whether SMTP transport used TLS.
            attachment_filename:
              type: string
            attachment_content_type:
              type: string
            compressed_bytes:
              type: integer
              format: int64
              minimum: 0
            decompressed_bytes:
              type: integer
              format: int64
              minimum: 0
            report_extensions_xml:
              type: string
            raw_xml:
              type: string
              description: Original decompressed aggregate report XML.
            raw_xml_sha256:
              type: string
              pattern: ^[0-9a-f]{64}$
    DmarcRecord:
      type: object
      properties:
        record_key:
          type: string
        source_ip:
          type: string
          example: 192.0.2.10
        message_count:
          type: integer
          format: int64
          minimum: 0
          example: 125
        disposition:
          type: string
          enum:
            - none
            - quarantine
            - reject
        dkim:
          type: string
          example: pass
        spf:
          type: string
          example: pass
        policy_reason_types:
          type: array
          items:
            type: string
        policy_reason_comments:
          type: array
          items:
            type: string
        header_from:
          type: string
          format: hostname
        envelope_from:
          type: string
        envelope_to:
          type: string
        dkim_domains:
          type: array
          items:
            type: string
        dkim_selectors:
          type: array
          items:
            type: string
        dkim_results:
          type: array
          items:
            type: string
        dkim_human_results:
          type: array
          items:
            type: string
        spf_domains:
          type: array
          items:
            type: string
        spf_scopes:
          type: array
          items:
            type: string
        spf_results:
          type: array
          items:
            type: string
        spf_human_results:
          type: array
          items:
            type: string
        extensions_xml:
          type: string
    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
    DmarcReportSummary:
      type: object
      required:
        - report_key
        - domain_uuid
        - policy_domain
        - schema_version
        - reporter_org_name
        - reporter_email
        - external_report_id
        - report_begin
        - report_end
        - policy_p
        - policy_sp
        - policy_np
        - policy_adkim
        - policy_aspf
        - policy_pct
        - record_count
        - total_messages
        - pass_messages
        - fail_messages
        - disposition_none
        - disposition_quarantine
        - disposition_reject
        - received_at
      properties:
        report_key:
          type: string
          pattern: ^[0-9a-f]{64}$
          description: Stable SHA-256 identifier for the normalized aggregate report.
        domain_uuid:
          type: string
          format: uuid
        policy_domain:
          type: string
          format: hostname
          example: example.com
        schema_version:
          type: string
          example: '1.0'
        reporter_org_name:
          type: string
          example: Google Inc.
        reporter_email:
          type: string
          example: noreply-dmarc-support@google.com
        external_report_id:
          type: string
          example: '1234567890123456789'
        report_begin:
          type: integer
          format: int64
          description: Beginning of the report interval as Unix seconds.
        report_end:
          type: integer
          format: int64
          description: End of the report interval as Unix seconds.
        policy_p:
          type: string
          example: reject
        policy_sp:
          type: string
          example: reject
        policy_np:
          type: string
          example: reject
        policy_adkim:
          type: string
          example: r
        policy_aspf:
          type: string
          example: r
        policy_pct:
          type: integer
          minimum: 0
          maximum: 100
          example: 100
        record_count:
          type: integer
          format: int32
          minimum: 0
          example: 12
        total_messages:
          type: integer
          format: int64
          minimum: 0
          example: 1842
        pass_messages:
          type: integer
          format: int64
          minimum: 0
          example: 1800
        fail_messages:
          type: integer
          format: int64
          minimum: 0
          example: 42
        disposition_none:
          type: integer
          format: int64
          minimum: 0
          example: 1800
        disposition_quarantine:
          type: integer
          format: int64
          minimum: 0
          example: 12
        disposition_reject:
          type: integer
          format: int64
          minimum: 0
          example: 30
        received_at:
          type: integer
          format: int64
          description: Time the aggregate email was received as Unix milliseconds.
  securitySchemes:
    apiKeyAuth:
      type: http
      scheme: bearer
      description: API key for account management endpoints. Use your api_ prefixed token.

````