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

# Create an on-demand or scheduled report

> Saves a configuration through the existing report creator, destination authorization and scheduling behavior. ONDEMAND requests also trigger native generation; the returned ID identifies configuration, not completed report content. The separate legacy /api/v1/report.generate API retains its existing generation contract.



## OpenAPI

````yaml /openapi.json post /v1/reports
openapi: 3.0.3
info:
  title: CodeRabbit API spec
  version: 1.0.0
servers:
  - url: https://api.coderabbit.ai
security:
  - ApiKeyAuth: []
paths:
  /v1/reports:
    post:
      tags:
        - Reports
      summary: Create an on-demand or scheduled report
      description: >-
        Saves a configuration through the existing report creator, destination
        authorization and scheduling behavior. ONDEMAND requests also trigger
        native generation; the returned ID identifies configuration, not
        completed report content. The separate legacy /api/v1/report.generate
        API retains its existing generation contract.
      operationId: create_report
      requestBody:
        required: true
        content:
          application/json:
            schema:
              anyOf:
                - type: object
                  properties:
                    org_id:
                      type: string
                      minLength: 1
                    name:
                      type: string
                    time:
                      type: string
                    timezone:
                      type: string
                    parameters:
                      type: array
                      items:
                        type: object
                        properties:
                          parameter:
                            enum:
                              - REPOSITORY
                              - LABEL
                              - TEAM
                              - USER
                              - SOURCEBRANCH
                              - TARGETBRANCH
                              - STATE
                            type: string
                          operator:
                            enum:
                              - IN
                              - ALL
                              - NOT_IN
                            type: string
                          values:
                            type: array
                            items:
                              type: string
                        required:
                          - parameter
                          - operator
                          - values
                    group:
                      enum:
                        - NONE
                        - REPOSITORY
                        - LABEL
                        - TEAM
                        - USER
                        - SOURCEBRANCH
                        - TARGETBRANCH
                        - STATE
                      type: string
                    subgroup:
                      enum:
                        - NONE
                        - REPOSITORY
                        - LABEL
                        - TEAM
                        - USER
                        - SOURCEBRANCH
                        - TARGETBRANCH
                        - STATE
                      type: string
                    platform:
                      enum:
                        - SLACK
                        - DISCORD
                        - EMAIL
                        - TEAMS
                      type: string
                    channel:
                      type: string
                    emails:
                      type: array
                      items:
                        type: string
                        format: email
                    promptTemplate:
                      enum:
                        - Daily Standup Report
                        - Sprint Report
                        - Release Notes
                        - Organization Stats
                        - Custom
                      type: string
                    prompt:
                      type: string
                    type:
                      enum:
                        - ONDEMAND
                    from:
                      type: string
                      maxLength: 255
                    to:
                      type: string
                      maxLength: 255
                  required:
                    - name
                    - time
                    - timezone
                    - parameters
                    - emails
                    - promptTemplate
                    - type
                    - from
                    - to
                - type: object
                  properties:
                    org_id:
                      type: string
                      minLength: 1
                    name:
                      type: string
                    time:
                      type: string
                    timezone:
                      type: string
                    parameters:
                      type: array
                      items:
                        type: object
                        properties:
                          parameter:
                            enum:
                              - REPOSITORY
                              - LABEL
                              - TEAM
                              - USER
                              - SOURCEBRANCH
                              - TARGETBRANCH
                              - STATE
                            type: string
                          operator:
                            enum:
                              - IN
                              - ALL
                              - NOT_IN
                            type: string
                          values:
                            type: array
                            items:
                              type: string
                        required:
                          - parameter
                          - operator
                          - values
                    group:
                      enum:
                        - NONE
                        - REPOSITORY
                        - LABEL
                        - TEAM
                        - USER
                        - SOURCEBRANCH
                        - TARGETBRANCH
                        - STATE
                      type: string
                    subgroup:
                      enum:
                        - NONE
                        - REPOSITORY
                        - LABEL
                        - TEAM
                        - USER
                        - SOURCEBRANCH
                        - TARGETBRANCH
                        - STATE
                      type: string
                    platform:
                      enum:
                        - SLACK
                        - DISCORD
                        - EMAIL
                        - TEAMS
                      type: string
                    channel:
                      type: string
                    emails:
                      type: array
                      items:
                        type: string
                        format: email
                    promptTemplate:
                      enum:
                        - Daily Standup Report
                        - Sprint Report
                        - Release Notes
                        - Organization Stats
                        - Custom
                      type: string
                    prompt:
                      type: string
                    type:
                      enum:
                        - WEEKLY
                    days:
                      type: array
                      items:
                        type: integer
                        minimum: 0
                        maximum: 6
                    frequency:
                      enum:
                        - '1'
                        - '2'
                        - '3'
                        - '4'
                      type: string
                  required:
                    - name
                    - time
                    - timezone
                    - parameters
                    - emails
                    - promptTemplate
                    - type
                    - days
                    - frequency
                - type: object
                  properties:
                    org_id:
                      type: string
                      minLength: 1
                    name:
                      type: string
                    time:
                      type: string
                    timezone:
                      type: string
                    parameters:
                      type: array
                      items:
                        type: object
                        properties:
                          parameter:
                            enum:
                              - REPOSITORY
                              - LABEL
                              - TEAM
                              - USER
                              - SOURCEBRANCH
                              - TARGETBRANCH
                              - STATE
                            type: string
                          operator:
                            enum:
                              - IN
                              - ALL
                              - NOT_IN
                            type: string
                          values:
                            type: array
                            items:
                              type: string
                        required:
                          - parameter
                          - operator
                          - values
                    group:
                      enum:
                        - NONE
                        - REPOSITORY
                        - LABEL
                        - TEAM
                        - USER
                        - SOURCEBRANCH
                        - TARGETBRANCH
                        - STATE
                      type: string
                    subgroup:
                      enum:
                        - NONE
                        - REPOSITORY
                        - LABEL
                        - TEAM
                        - USER
                        - SOURCEBRANCH
                        - TARGETBRANCH
                        - STATE
                      type: string
                    platform:
                      enum:
                        - SLACK
                        - DISCORD
                        - EMAIL
                        - TEAMS
                      type: string
                    channel:
                      type: string
                    emails:
                      type: array
                      items:
                        type: string
                        format: email
                    promptTemplate:
                      enum:
                        - Daily Standup Report
                        - Sprint Report
                        - Release Notes
                        - Organization Stats
                        - Custom
                      type: string
                    prompt:
                      type: string
                    type:
                      enum:
                        - MONTHLY
                    days:
                      type: array
                      items:
                        type: integer
                        minimum: 1
                        maximum: 31
                  required:
                    - name
                    - time
                    - timezone
                    - parameters
                    - emails
                    - promptTemplate
                    - type
                    - days
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  report_id:
                    type: string
                required:
                  - report_id
        '400':
          description: '400'
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        enum:
                          - invalid_request
                        type: string
                      message:
                        type: string
                      retry_after:
                        type: integer
                        minimum: 0
                        maximum: 9007199254740991
                        exclusiveMinimum: true
                    required:
                      - code
                      - message
                    additionalProperties: false
                required:
                  - error
                additionalProperties: false
        '401':
          description: '401'
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        enum:
                          - unauthenticated
                        type: string
                      message:
                        type: string
                      retry_after:
                        type: integer
                        minimum: 0
                        maximum: 9007199254740991
                        exclusiveMinimum: true
                    required:
                      - code
                      - message
                    additionalProperties: false
                required:
                  - error
                additionalProperties: false
        '403':
          description: '403'
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        enum:
                          - forbidden
                        type: string
                      message:
                        type: string
                      retry_after:
                        type: integer
                        minimum: 0
                        maximum: 9007199254740991
                        exclusiveMinimum: true
                    required:
                      - code
                      - message
                    additionalProperties: false
                required:
                  - error
                additionalProperties: false
        '404':
          description: '404'
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        enum:
                          - not_found
                        type: string
                      message:
                        type: string
                      retry_after:
                        type: integer
                        minimum: 0
                        maximum: 9007199254740991
                        exclusiveMinimum: true
                    required:
                      - code
                      - message
                    additionalProperties: false
                required:
                  - error
                additionalProperties: false
        '409':
          description: '409'
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        enum:
                          - head_changed
                          - conflict
                        type: string
                      message:
                        type: string
                      retry_after:
                        type: integer
                        minimum: 0
                        maximum: 9007199254740991
                        exclusiveMinimum: true
                    required:
                      - code
                      - message
                    additionalProperties: false
                required:
                  - error
                additionalProperties: false
        '412':
          description: '412'
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        enum:
                          - precondition_failed
                        type: string
                      message:
                        type: string
                      retry_after:
                        type: integer
                        minimum: 0
                        maximum: 9007199254740991
                        exclusiveMinimum: true
                    required:
                      - code
                      - message
                    additionalProperties: false
                required:
                  - error
                additionalProperties: false
        '413':
          description: '413'
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        enum:
                          - payload_too_large
                        type: string
                      message:
                        type: string
                      retry_after:
                        type: integer
                        minimum: 0
                        maximum: 9007199254740991
                        exclusiveMinimum: true
                    required:
                      - code
                      - message
                    additionalProperties: false
                required:
                  - error
                additionalProperties: false
        '429':
          description: '429'
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        enum:
                          - rate_limit_exceeded
                        type: string
                      message:
                        type: string
                      retry_after:
                        type: integer
                        minimum: 0
                        maximum: 9007199254740991
                        exclusiveMinimum: true
                    required:
                      - code
                      - message
                    additionalProperties: false
                required:
                  - error
                additionalProperties: false
        '500':
          description: '500'
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        enum:
                          - internal_error
                        type: string
                      message:
                        type: string
                      retry_after:
                        type: integer
                        minimum: 0
                        maximum: 9007199254740991
                        exclusiveMinimum: true
                    required:
                      - code
                      - message
                    additionalProperties: false
                required:
                  - error
                additionalProperties: false
        '503':
          description: '503'
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                        enum:
                          - unavailable
                      message:
                        type: string
                      retry_after:
                        type: integer
                        minimum: 0
                        maximum: 9007199254740991
                        exclusiveMinimum: true
                    required:
                      - code
                      - message
                    additionalProperties: false
                required:
                  - error
                additionalProperties: false
components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-coderabbitai-api-key
      description: >-
        API key for authentication. You can create an API key from the
        CodeRabbit dashboard.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.