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

# Post organisations boards publish

> Publish a board at the revision specified by the provided event ID. This is an asynchronous action, callers
should await for a `BoardPublishedEvent` over the websocket API (recommended) or poll GetBoard until
`publishedEventId` matches the event ID which has been provided to publish.

If the request has caused a board to schedule then this request will always return 202.

If this request succeeds but then an error occurs in scheduling, a `BoardPublishFailedEvent` will be produced
over the websocket API; this functionality is not currently available over the REST API.




## OpenAPI

````yaml post /organisations/{organisationId}/boards/{boardId}/publish
openapi: 3.0.3
info:
  title: Switchboard API
  description: >-
    The Switchboard API provides users the ability to manage their Apps,
    Integrations and Workflows
  version: 0.0.1-alpha.0
servers:
  - url: https://platform.versori.com/api/switchboard/v1alpha1/
    description: Production server
  - url: http://localhost:8080/v1alpha1/
    description: Localhost
security:
  - apiKey: []
paths:
  /organisations/{organisationId}/boards/{boardId}/publish:
    post:
      tags:
        - boards
      description: >
        Publish a board at the revision specified by the provided event ID. This
        is an asynchronous action, callers

        should await for a `BoardPublishedEvent` over the websocket API
        (recommended) or poll GetBoard until

        `publishedEventId` matches the event ID which has been provided to
        publish.


        If the request has caused a board to schedule then this request will
        always return 202.


        If this request succeeds but then an error occurs in scheduling, a
        `BoardPublishFailedEvent` will be produced

        over the websocket API; this functionality is not currently available
        over the REST API.
      operationId: PublishBoard
      parameters:
        - name: organisationId
          in: path
          required: true
          schema:
            type: string
          example: '101'
        - name: boardId
          in: path
          required: true
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/PublishBoardRequest'
      responses:
        '202':
          $ref: '#/components/responses/PublishBoardResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
components:
  requestBodies:
    PublishBoardRequest:
      description: |
        Payload to trigger a board to be published
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BoardPublishCommand'
  responses:
    PublishBoardResponse:
      description: The response after a board has been scheduled to execute.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BoardPublishResult'
    ErrorResponse:
      description: The default error response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  schemas:
    BoardPublishCommand:
      type: object
      properties:
        lastEventId:
          type: string
        boardDeployVersion:
          type: string
          description: >
            The version of the board to deploy. It can be one of v2 for single
            executor board or v1 for current implementation.
      required:
        - lastEventId
    BoardPublishResult:
      description: >
        BoardPublishResult is used to indicate if the publish request has been
        accepted. The actual scheduling is

        done in the background and does not indicate the board is ready to
        accept data.
      type: object
      properties:
        ok:
          type: boolean
        taskId:
          type: string
      required:
        - ok
    Error:
      type: object
      properties:
        code:
          type: string
        message:
          type: string
        extensions:
          type: object
      required:
        - code
        - message
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: Authorization

````