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

# Create Report

> Creates a new North report with the provided property information.
The report will be created as a draft by default.




## OpenAPI

````yaml POST /v1/reports
openapi: 3.1.0
info:
  title: North Reports API
  description: >
    The North Reports API allows you to programmatically access and manage your
    North reports.


    Use this API to:

    - Create and update property reports

    - Manage comparable properties

    - Track showings and open houses

    - Import social media engagement data

    - Generate AI-powered summaries


    Perfect for integrations with Zapier, n8n, Make.com, or custom applications.
  version: 1.0.1
  contact:
    name: North Support
    url: https://northreports.com/support
  termsOfService: https://northreports.com/terms
servers:
  - url: https://api.northreports.com
    description: Production API
security:
  - BearerAuth: []
tags:
  - name: Users
    description: User and team information
  - name: Reports
    description: Create and manage North reports
  - name: Comparables
    description: Manage comparable properties
  - name: Showings
    description: Track showings and open houses
  - name: Social Media
    description: Import and track social media engagement
  - name: Webhooks
    description: Subscribe to real-time events
paths:
  /v1/reports:
    post:
      tags:
        - Reports
      summary: Create a new report
      description: |
        Creates a new North report with the provided property information.
        The report will be created as a draft by default.
      operationId: createReport
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateReportRequest'
            example:
              address: 456 Oak Avenue
              city: Austin
              state: TX
              zip: '78704'
              price: 525000
              beds: 4
              baths: 2.5
              sqft: 2200
              year_built: 2015
              property_type: Single Family
              description: Beautiful home with modern updates
              listing_agent: John Smith
              created_by: Jane Doe
              custom_agent_name: Jane Doe
              custom_agent_email: jane@acmerealty.com
      responses:
        '201':
          description: Report created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateReportResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '429':
          $ref: '#/components/responses/RateLimitExceeded'
components:
  schemas:
    CreateReportRequest:
      type: object
      required:
        - address
      properties:
        address:
          type: string
          description: Property street address
        city:
          type: string
        state:
          type: string
        zip:
          type: string
        price:
          type: number
          description: Listing price in dollars
        beds:
          type: integer
        baths:
          type: number
        sqft:
          type: integer
        year_built:
          type: integer
        property_type:
          type: string
          description: e.g., "Single Family", "Condo", "Townhouse"
        lot_size:
          type: number
        description:
          type: string
        zpid:
          type: string
          description: Zillow property ID
        zillow_url:
          type: string
          format: uri
        mls_id:
          type: string
        status:
          type: string
          default: For Sale
        is_draft:
          type: boolean
          default: true
        custom_agent_name:
          type: string
        custom_agent_email:
          type: string
          format: email
        custom_agent_phone:
          type: string
        listing_agent:
          type: string
          description: >
            Name of the listing agent. If not provided, defaults to the team
            admin/account owner's name.
        created_by:
          type: string
          description: >
            Name of the person who created the report. If not provided, defaults
            to the team name (from the team associated with the API key).
        custom_logo_url:
          type: string
          format: uri
        primary_brand_color:
          type: string
          description: Hex color code
        secondary_brand_color:
          type: string
          description: Hex color code
    CreateReportResponse:
      type: object
      properties:
        data:
          type: object
          properties:
            id:
              type: string
              format: uuid
            address:
              type: string
            city:
              type: string
            state:
              type: string
            zip:
              type: string
            price:
              type: number
            bedrooms:
              type: integer
            bathrooms:
              type: number
            square_feet:
              type: integer
            date_created:
              type: string
              format: date-time
            listing_agent:
              type: string
              description: Name of the listing agent
            created_by:
              type: string
              description: Name of the person who created the report
            custom_agent_name:
              type: string
              description: Custom agent name override
            status:
              type: string
              description: Property listing status
            is_draft:
              type: boolean
              description: Whether the report is a draft
            is_published:
              type: boolean
              description: Whether the report is published
        message:
          type: string
    Error:
      type: object
      properties:
        error:
          type: object
          properties:
            message:
              type: string
            status:
              type: integer
  responses:
    BadRequest:
      description: Invalid request parameters
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error:
              message: Address is required
              status: 400
    Unauthorized:
      description: Invalid or missing API key
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error:
              message: Invalid API key
              status: 401
    Forbidden:
      description: API key lacks required permission
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error:
              message: 'Permission denied: reports:create'
              status: 403
    RateLimitExceeded:
      description: Too many requests
      headers:
        X-RateLimit-Limit:
          schema:
            type: integer
          description: Request limit per hour
        X-RateLimit-Remaining:
          schema:
            type: integer
          description: Remaining requests in current window
        X-RateLimit-Reset:
          schema:
            type: integer
          description: Unix timestamp when the rate limit resets
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error:
              message: Rate limit exceeded. Please try again later.
              status: 429
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: >
        API key authentication. Include your API key in the Authorization
        header:

        ```

        Authorization: Bearer north_sk_live_xxxxxxxxxxxx

        ```

````