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

# Submit facts



## OpenAPI

````yaml /plugins/soundcheck/openapi.yaml post /facts
openapi: 3.0.0
info:
  title: soundcheck
  version: 0.1.0
  description: API for interacting with Soundcheck.
servers:
  - url: https://backstage.example.com/api/soundcheck
security: []
tags:
  - name: Campaigns
  - name: Certification
  - name: CheckResults
  - name: Checks
  - name: FactCollectors
  - name: Facts
  - name: Tracks
paths:
  /facts:
    post:
      tags:
        - Facts
      summary: Submit facts
      operationId: submitFacts
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FactsRequest'
      responses:
        '200':
          description: Facts submitted successfully
          content:
            application/json:
              schema:
                type: object
                required:
                  - facts
                properties:
                  facts:
                    type: array
                    items:
                      type: object
                      required:
                        - factRef
                        - entityRef
                      properties:
                        factRef:
                          type: string
                        entityRef:
                          type: string
                      additionalProperties: false
                additionalProperties: false
        '400':
          description: Invalid input
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Forbidden
          content:
            text/plain:
              schema:
                type: string
components:
  schemas:
    FactsRequest:
      type: object
      required:
        - facts
      properties:
        facts:
          type: array
          items:
            $ref: '#/components/schemas/FactInput'
        cache:
          $ref: '#/components/schemas/CacheConfig'
      additionalProperties: false
    Error:
      type: object
      properties:
        error:
          type: object
          properties:
            name:
              type: string
            message:
              type: string
          required:
            - name
            - message
          additionalProperties: true
        request:
          type: object
          properties:
            method:
              type: string
            url:
              type: string
          required:
            - method
            - url
          additionalProperties: false
        response:
          type: object
          properties:
            statusCode:
              type: integer
          required:
            - statusCode
          additionalProperties: false
      required:
        - error
        - response
      additionalProperties: false
    FactInput:
      type: object
      required:
        - factRef
        - entityRef
        - data
      properties:
        factRef:
          $ref: '#/components/schemas/FactRef'
        entityRef:
          $ref: '#/components/schemas/EntityRef'
        data:
          type: object
          additionalProperties: true
        timestamp:
          type: string
          format: date-time
      additionalProperties: false
    CacheConfig:
      oneOf:
        - type: boolean
        - type: object
          required:
            - duration
          properties:
            duration:
              $ref: '#/components/schemas/HumanDuration'
          additionalProperties: false
    FactRef:
      oneOf:
        - type: object
          required:
            - source
            - scope
            - name
          properties:
            source:
              type: string
            scope:
              type: string
            name:
              type: string
          additionalProperties: false
        - type: string
          pattern: ^.+:.+\/[a-zA-Z0-9]+(?:[_\-.][a-zA-Z0-9]+)*$
          description: |
            FactRef string in the form [source:][scope/]name.
    EntityRef:
      type: string
      pattern: ^.+:.+\/(?=.{1,256}$).+$
      description: Entity reference in the form kind:namespace/name.
    HumanDuration:
      type: object
      properties:
        years:
          type: number
        months:
          type: number
        weeks:
          type: number
        days:
          type: number
        hours:
          type: number
        minutes:
          type: number
        seconds:
          type: number
        milliseconds:
          type: number
      minProperties: 1
      additionalProperties: false

````