Rulebase Reports API

The Reports API from Rulebase — 6 operation(s) for reports.

Operations 8

GET /reports Get reports #
GET /reports/{id} Get reports by id #
DELETE /reports/{id} Delete reports by id #
GET /reports/{id}/sharing Get reports by id sharing #
PATCH /reports/{id}/sharing Update reports by id sharing #
POST /reports/{id}/sharing/grants Create reports by id sharing grants #
DELETE /reports/{id}/sharing/grants/{shareId} Delete reports by id sharing grants by share id #
GET /reports/{id}/sharing/candidates Get reports by id sharing candidates #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/rulebase:rulebase-reports-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

rulebase-reports-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Rulebase API2 Reports API
  version: 0.0.1
tags:
- name: Reports
paths:
  /reports:
    get:
      parameters:
      - schema:
          type: string
        required: false
        name: reportTypeId
        in: query
      - schema:
          type: string
          enum:
          - 'true'
          - 'false'
        required: false
        name: ungrouped
        in: query
      - schema:
          type: string
          enum:
          - 'true'
          - 'false'
        required: false
        name: own
        in: query
      - schema:
          type: string
        required: false
        name: subjectEmployeeId
        in: query
      - schema:
          type: string
        required: false
        name: cursor
        in: query
      - schema:
          type: integer
          minimum: 1
          maximum: 100
          default: 50
        required: false
        name: limit
        in: query
      responses:
        '200':
          description: List of reports
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        organizationId:
                          type: string
                        reportTypeId:
                          type: string
                          nullable: true
                        reportTypeName:
                          type: string
                          nullable: true
                        reportTemplateId:
                          type: string
                          nullable: true
                        reportTemplateVersion:
                          type: integer
                          nullable: true
                        workflowRunId:
                          type: string
                          nullable: true
                        invocationKey:
                          type: string
                          nullable: true
                        invocationScope:
                          type: object
                          additionalProperties:
                            nullable: true
                        subjectEmployeeId:
                          type: number
                          nullable: true
                        teamId:
                          type: number
                          nullable: true
                        periodStart:
                          type: string
                        periodEnd:
                          type: string
                        title:
                          type: string
                          nullable: true
                        content:
                          type: string
                          nullable: true
                        structuredData:
                          type: object
                          nullable: true
                          additionalProperties:
                            nullable: true
                        resolvedVariables:
                          type: object
                          additionalProperties:
                            nullable: true
                        deliveryResults:
                          type: array
                          items:
                            type: object
                            properties:
                              channel:
                                type: string
                                enum:
                                - email
                                - slack
                              target:
                                type: string
                              ok:
                                type: boolean
                              error:
                                type: string
                            required:
                            - channel
                            - target
                            - ok
                        status:
                          type: string
                        sentTo:
                          type: array
                          nullable: true
                          items:
                            type: string
                        generatedAt:
                          type: string
                          nullable: true
                        sentAt:
                          type: string
                          nullable: true
                        createdAt:
                          type: string
                        updatedAt:
                          type: string
                      required:
                      - id
                      - organizationId
                      - reportTypeId
                      - reportTypeName
                      - reportTemplateId
                      - reportTemplateVersion
                      - workflowRunId
                      - invocationKey
                      - invocationScope
                      - subjectEmployeeId
                      - teamId
                      - periodStart
                      - periodEnd
                      - title
                      - content
                      - structuredData
                      - resolvedVariables
                      - deliveryResults
                      - status
                      - sentTo
                      - generatedAt
                      - sentAt
                      - createdAt
                      - updatedAt
                  nextCursor:
                    type: string
                    nullable: true
                required:
                - data
                - nextCursor
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
        '404':
          description: Report type not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
      tags:
      - Reports
      summary: Get reports
      x-summary-source: derived
      operationId: getReports
      x-operation-id-source: derived
  /reports/{id}:
    get:
      parameters:
      - schema:
          type: string
        required: true
        name: id
        in: path
      responses:
        '200':
          description: Report found
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      id:
                        type: string
                      organizationId:
                        type: string
                      reportTypeId:
                        type: string
                        nullable: true
                      reportTypeName:
                        type: string
                        nullable: true
                      reportTemplateId:
                        type: string
                        nullable: true
                      reportTemplateVersion:
                        type: integer
                        nullable: true
                      workflowRunId:
                        type: string
                        nullable: true
                      invocationKey:
                        type: string
                        nullable: true
                      invocationScope:
                        type: object
                        additionalProperties:
                          nullable: true
                      subjectEmployeeId:
                        type: number
                        nullable: true
                      teamId:
                        type: number
                        nullable: true
                      periodStart:
                        type: string
                      periodEnd:
                        type: string
                      title:
                        type: string
                        nullable: true
                      content:
                        type: string
                        nullable: true
                      structuredData:
                        type: object
                        nullable: true
                        additionalProperties:
                          nullable: true
                      resolvedVariables:
                        type: object
                        additionalProperties:
                          nullable: true
                      deliveryResults:
                        type: array
                        items:
                          type: object
                          properties:
                            channel:
                              type: string
                              enum:
                              - email
                              - slack
                            target:
                              type: string
                            ok:
                              type: boolean
                            error:
                              type: string
                          required:
                          - channel
                          - target
                          - ok
                      status:
                        type: string
                      sentTo:
                        type: array
                        nullable: true
                        items:
                          type: string
                      generatedAt:
                        type: string
                        nullable: true
                      sentAt:
                        type: string
                        nullable: true
                      createdAt:
                        type: string
                      updatedAt:
                        type: string
                    required:
                    - id
                    - organizationId
                    - reportTypeId
                    - reportTypeName
                    - reportTemplateId
                    - reportTemplateVersion
                    - workflowRunId
                    - invocationKey
                    - invocationScope
                    - subjectEmployeeId
                    - teamId
                    - periodStart
                    - periodEnd
                    - title
                    - content
                    - structuredData
                    - resolvedVariables
                    - deliveryResults
                    - status
                    - sentTo
                    - generatedAt
                    - sentAt
                    - createdAt
                    - updatedAt
                required:
                - data
        '404':
          description: Report not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
      tags:
      - Reports
      summary: Get reports by id
      x-summary-source: derived
      operationId: getReportsById
      x-operation-id-source: derived
    delete:
      parameters:
      - schema:
          type: string
        required: true
        name: id
        in: path
      responses:
        '204':
          description: Report deleted
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
        '404':
          description: Report not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
      tags:
      - Reports
      summary: Delete reports by id
      x-summary-source: derived
      operationId: deleteReportsById
      x-operation-id-source: derived
  /reports/{id}/sharing:
    get:
      parameters:
      - schema:
          type: string
        required: true
        name: id
        in: path
      responses:
        '200':
          description: Who can open the report
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      generalAccess:
                        type: string
                        enum:
                        - members
                        - restricted
                      audience:
                        type: object
                        properties:
                          kind:
                            type: string
                            enum:
                            - workspace
                            - team
                          name:
                            type: string
                        required:
                        - kind
                        - name
                      grants:
                        type: array
                        items:
                          oneOf:
                          - type: object
                            properties:
                              id:
                                type: string
                              kind:
                                type: string
                                enum:
                                - member
                              membershipId:
                                type: integer
                              name:
                                type: string
                              email:
                                type: string
                            required:
                            - id
                            - kind
                            - membershipId
                            - name
                            - email
                          - type: object
                            properties:
                              id:
                                type: string
                              kind:
                                type: string
                                enum:
                                - team
                              teamId:
                                type: integer
                              name:
                                type: string
                              memberCount:
                                type: integer
                            required:
                            - id
                            - kind
                            - teamId
                            - name
                            - memberCount
                      canManage:
                        type: boolean
                    required:
                    - generalAccess
                    - audience
                    - grants
                    - canManage
                required:
                - data
        '404':
          description: Report not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
      tags:
      - Reports
      summary: Get reports by id sharing
      x-summary-source: derived
      operationId: getReportsByIdSharing
      x-operation-id-source: derived
    patch:
      parameters:
      - schema:
          type: string
        required: true
        name: id
        in: path
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                generalAccess:
                  type: string
                  enum:
                  - members
                  - restricted
              required:
              - generalAccess
      responses:
        '200':
          description: Who can open the report
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      generalAccess:
                        type: string
                        enum:
                        - members
                        - restricted
                      audience:
                        type: object
                        properties:
                          kind:
                            type: string
                            enum:
                            - workspace
                            - team
                          name:
                            type: string
                        required:
                        - kind
                        - name
                      grants:
                        type: array
                        items:
                          oneOf:
                          - type: object
                            properties:
                              id:
                                type: string
                              kind:
                                type: string
                                enum:
                                - member
                              membershipId:
                                type: integer
                              name:
                                type: string
                              email:
                                type: string
                            required:
                            - id
                            - kind
                            - membershipId
                            - name
                            - email
                          - type: object
                            properties:
                              id:
                                type: string
                              kind:
                                type: string
                                enum:
                                - team
                              teamId:
                                type: integer
                              name:
                                type: string
                              memberCount:
                                type: integer
                            required:
                            - id
                            - kind
                            - teamId
                            - name
                            - memberCount
                      canManage:
                        type: boolean
                    required:
                    - generalAccess
                    - audience
                    - grants
                    - canManage
                required:
                - data
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
        '404':
          description: Report not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
      tags:
      - Reports
      summary: Update reports by id sharing
      x-summary-source: derived
      operationId: patchReportsByIdSharing
      x-operation-id-source: derived
  /reports/{id}/sharing/grants:
    post:
      parameters:
      - schema:
          type: string
        required: true
        name: id
        in: path
      requestBody:
        content:
          application/json:
            schema:
              anyOf:
              - type: object
                properties:
                  membershipId:
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                required:
                - membershipId
              - type: object
                properties:
                  teamId:
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                required:
                - teamId
      responses:
        '200':
          description: Who can open the report
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      generalAccess:
                        type: string
                        enum:
                        - members
                        - restricted
                      audience:
                        type: object
                        properties:
                          kind:
                            type: string
                            enum:
                            - workspace
                            - team
                          name:
                            type: string
                        required:
                        - kind
                        - name
                      grants:
                        type: array
                        items:
                          oneOf:
                          - type: object
                            properties:
                              id:
                                type: string
                              kind:
                                type: string
                                enum:
                                - member
                              membershipId:
                                type: integer
                              name:
                                type: string
                              email:
                                type: string
                            required:
                            - id
                            - kind
                            - membershipId
                            - name
                            - email
                          - type: object
                            properties:
                              id:
                                type: string
                              kind:
                                type: string
                                enum:
                                - team
                              teamId:
                                type: integer
                              name:
                                type: string
                              memberCount:
                                type: integer
                            required:
                            - id
                            - kind
                            - teamId
                            - name
                            - memberCount
                      canManage:
                        type: boolean
                    required:
                    - generalAccess
                    - audience
                    - grants
                    - canManage
                required:
                - data
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
        '404':
          description: Report, member or team not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
      tags:
      - Reports
      summary: Create reports by id sharing grants
      x-summary-source: derived
      operationId: postReportsByIdSharingGrants
      x-operation-id-source: derived
  /reports/{id}/sharing/grants/{shareId}:
    delete:
      parameters:
      - schema:
          type: string
        required: true
        name: id
        in: path
      - schema:
          type: string
        required: true
        name: shareId
        in: path
      responses:
        '200':
          description: Who can open the report
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      generalAccess:
                        type: string
                        enum:
                        - members
                        - restricted
                      audience:
                        type: object
                        properties:
                          kind:
                            type: string
                            enum:
                            - workspace
                            - team
                          name:
                            type: string
                        required:
                        - kind
                        - name
                      grants:
                        type: array
                        items:
                          oneOf:
                          - type: object
                            properties:
                              id:
                                type: string
                              kind:
                                type: string
                                enum:
                                - member
                              membershipId:
                                type: integer
                              name:
                                type: string
                              email:
                                type: string
                            required:
                            - id
                            - kind
                            - membershipId
                            - name
                            - email
                          - type: object
                            properties:
                              id:
                                type: string
                              kind:
                                type: string
                                enum:
                                - team
                              teamId:
                                type: integer
                              name:
                                type: string
                              memberCount:
                                type: integer
                            required:
                            - id
                            - kind
                            - teamId
                            - name
                            - memberCount
                      canManage:
                        type: boolean
                    required:
                    - generalAccess
                    - audience
                    - grants
                    - canManage
                required:
                - data
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
        '404':
          description: Report or share not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
      tags:
      - Reports
      summary: Delete reports by id sharing grants by share id
      x-summary-source: derived
      operationId: deleteReportsByIdSharingGrantsByShareId
      x-operation-id-source: derived
  /reports/{id}/sharing/candidates:
    get:
      parameters:
      - schema:
          type: string
        required: true
        name: id
        in: path
      - schema:
          type: string
          maxLength: 200
          default: ''
        required: false
        name: q
        in: query
      responses:
        '200':
          description: Members and teams the report can be shared with
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      oneOf:
                      - type: object
                        properties:
                          kind:
                            type: string
                            enum:
                            - member
                          membershipId:
                            type: integer
                          name:
                            type: string
                          email:
                            type: string
                        required:
                        - kind
                        - membershipId
                        - name
                        - email
                      - type: object
                        properties:
                          kind:
                            type: string
                            enum:
                            - team
                          teamId:
                            type: integer
                          name:
                            type: string
                          memberCount:
                            type: integer
                        required:
                        - kind
                        - teamId
                        - name
                        - memberCount
                required:
                - data
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
        '404':
          description: Report not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
      tags:
      - Reports
      summary: Get reports by id sharing candidates
      x-summary-source: derived
      operationId: getReportsByIdSharingCandidates
      x-operation-id-source: derived
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Rulebase organization API key