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

# Send the brief to Pencil Brief Mode



## OpenAPI

````yaml https://openapi.shareofmodel.ai/swagger.json post /v1/organizations/{organization_id}/workspaces/{workspace_id}/recommended-actions/{result_id}/tasks/{task_id}/brief/pencil
openapi: 3.0.3
info:
  title: Share Of Model API
  version: v1
  description: >-
    ## Model Context Protocol (MCP)


    In addition to this REST API, Share of Model exposes a **Model Context
    Protocol** server that lets AI assistants (Claude Desktop, Claude Code, MCP
    Inspector, custom agents…) call our endpoints directly as tools. Any
    MCP-compatible client can interact with Share of Model without writing
    custom integration code — connect once with your usual login and start
    asking the assistant to query the data for you.


    ### Connecting from Claude Desktop


    Open **Settings → Connectors**, scroll to the bottom and click **Add custom
    connector**, then paste `https://mcp.shareofmodel.ai/mcp/`. A browser window
    opens for you to log in with your Share of Model account (same login as the
    web app), and the assistant gains access to the tools.


    ### Connecting from Claude Code


    ```bash

    claude mcp add --transport http share-of-model
    https://mcp.shareofmodel.ai/mcp/

    ```


    The first time you call a tool, Claude Code opens your browser to complete
    the login.


    ### Connecting from MCP Inspector


    ```bash

    npx @modelcontextprotocol/inspector

    ```


    In the Inspector UI, pick **Streamable HTTP** as transport, paste
    `https://mcp.shareofmodel.ai/mcp/`, and click **Connect**. The first
    connection prompts you to log in.


    ### Available tools


    Every read-only (`GET`) endpoint of this specification and of the Search API
    specification is exposed as an MCP tool, except account administration (API
    keys, platform integrations and accounts, user roles, favourites, SSO and
    SCIM).


    Write endpoints are exposed only when they are marked for agents: creating
    and pricing brand analyses, Search analyses and GEO audits, creating
    personas, and managing asset evaluations. Write tools act with the role of
    the signed-in user, so creating requires the Organization Editor or Owner
    role, or Workspace Editor in the target workspace. Before creating an
    analysis or a GEO audit, the assistant shows the full setup and its cost and
    waits for an explicit confirmation.


    ### Example prompts


    Once connected, try asking your assistant things like:


    - _"List the workspaces I have access to."_

    - _"Show me the latest searches in workspace X."_

    - _"Compare the share of model between brand A and brand B over the last 30
    days."_

    - _"Set up a brand analysis for brand A in France."_


    For more details on the protocol itself, see the [Model Context Protocol
    specification](https://modelcontextprotocol.io/).
servers:
  - description: Production API
    url: https://api.shareofmodel.ai/
  - description: Development API
    url: https://api.dev.shareofmodel.ai/
security: []
tags:
  - name: Auth
    description: Endpoints needed for API authentication.
  - name: Organizations
    description: Endpoints related to organizations, to list all available organizations.
  - name: Workspaces
    description: Endpoints related to workspaces, to list all available workspaces.
  - name: Analyses
    description: Endpoints related to analyses and analyses management.
  - name: Asset Evaluations
    description: Endpoints related to assets and asset evaluations.
  - name: Brand Catalog
    description: Endpoints related to general brand information.
  - name: Content Briefs
    description: Endpoints related to content briefs generation and optimisation.
  - name: Metrics
    description: >+
      Endpoints related to brand metrics.


      **LEXICON**



      **Brand Awareness**: What opinion the LLMs have concerning specific
      brands, related to certain categories.



      **Brand Perception**: The general sentiment of the LLMs towards a brand,

      based on the pros and cons they mention.

paths:
  /v1/organizations/{organization_id}/workspaces/{workspace_id}/recommended-actions/{result_id}/tasks/{task_id}/brief/pencil:
    post:
      tags:
        - Recommended Action Brief
      summary: Send the brief to Pencil Brief Mode
      operationId: send_recommended_action_brief_to_pencil
      parameters:
        - in: path
          name: organization_id
          schema:
            type: string
            format: uuid
          description: Organization identifier
          required: true
        - in: path
          name: result_id
          schema:
            type: string
            format: uuid
          description: Recommended action result identifier
          required: true
        - in: path
          name: task_id
          schema:
            type: string
            format: uuid
          description: Task identifier
          required: true
        - in: path
          name: workspace_id
          schema:
            type: string
            format: uuid
          description: Workspace identifier
          required: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SendBriefToPencilRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/SendBriefToPencilRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/SendBriefToPencilRequest'
          '*/*':
            schema:
              $ref: '#/components/schemas/SendBriefToPencilRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RecommendedActionBrief'
          description: Brief created and submitted in Pencil
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SendBriefToPencilError'
          description: Invalid or past due date
        '401':
          description: Authentication credentials were not provided or are invalid
        '404':
          description: Task or brief not found
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SendBriefToPencilError'
          description: >-
            Brief already sent, not ready, workspace not connected to Pencil, or
            Pencil brief recipients not configured or invalid. When Pencil
            created a draft, `brief` carries its stored reference and the same
            brief can be sent again once the recipients are fixed
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SendBriefToPencilError'
          description: Brief content too long or rejected by Pencil
        '502':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SendBriefToPencilError'
          description: Unexpected Pencil error
        '503':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SendBriefToPencilError'
          description: Pencil or the workspace lookup unavailable, retryable
      security:
        - Bearer: []
components:
  schemas:
    SendBriefToPencilRequest:
      type: object
      properties:
        due_date:
          type: string
          format: date-time
      required:
        - due_date
    RecommendedActionBrief:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Brief UUID
        task_id:
          type: string
          format: uuid
          description: Task UUID this brief belongs to
        title:
          type: string
          description: Brief title
        body:
          type: string
          description: Brief body content
        is_user_edited:
          type: boolean
          description: True once a user has edited title or body
        status:
          enum:
            - not_started
            - in_progress
            - implemented
          type: string
          x-spec-enum-id: adebf71289e7c992
          description: |-
            User-facing status. One of: not_started, in_progress, implemented

            * `not_started` - not_started
            * `in_progress` - in_progress
            * `implemented` - implemented
        pencil_brief_id:
          type: string
          nullable: true
          description: Pencil brief id, set once sent
        pencil_status:
          type: string
          nullable: true
          description: Pencil brief status, as Pencil returns it
        pencil_url:
          type: string
          format: uri
          nullable: true
          description: Link to the brief in Pencil
        pencil_due_date:
          type: string
          format: date-time
          nullable: true
          description: Due date sent to Pencil
        pencil_synced_at:
          type: string
          format: date-time
          nullable: true
          description: Last time the Pencil fields were read from Pencil
        created_at:
          type: string
          format: date-time
          nullable: true
          description: Creation timestamp
        updated_at:
          type: string
          format: date-time
          nullable: true
          description: Last update timestamp
      required:
        - body
        - id
        - is_user_edited
        - pencil_brief_id
        - pencil_due_date
        - pencil_status
        - pencil_synced_at
        - pencil_url
        - status
        - task_id
        - title
    SendBriefToPencilError:
      type: object
      properties:
        brief:
          $ref: '#/components/schemas/RecommendedActionBrief'
        code:
          enum:
            - ALREADY_SENT
            - BRIEF_NOT_READY
            - BRIEF_CONTENT_TOO_LONG
            - DUE_DATE_IN_PAST
            - PENCIL_NOT_CONNECTED
            - WORKSPACE_UNAVAILABLE
            - PENCIL_RECIPIENTS_NOT_CONFIGURED
            - PENCIL_RECIPIENTS_INVALID
            - PENCIL_VALIDATION_ERROR
            - PENCIL_UNAVAILABLE
            - PENCIL_ERROR
          type: string
          x-spec-enum-id: e669f2bc09834bd6
          description: >-
            Stable error code. One of: ALREADY_SENT, BRIEF_NOT_READY,
            BRIEF_CONTENT_TOO_LONG, DUE_DATE_IN_PAST, PENCIL_NOT_CONNECTED,
            WORKSPACE_UNAVAILABLE, PENCIL_RECIPIENTS_NOT_CONFIGURED,
            PENCIL_RECIPIENTS_INVALID, PENCIL_VALIDATION_ERROR,
            PENCIL_UNAVAILABLE, PENCIL_ERROR


            * `ALREADY_SENT` - ALREADY_SENT

            * `BRIEF_NOT_READY` - BRIEF_NOT_READY

            * `BRIEF_CONTENT_TOO_LONG` - BRIEF_CONTENT_TOO_LONG

            * `DUE_DATE_IN_PAST` - DUE_DATE_IN_PAST

            * `PENCIL_NOT_CONNECTED` - PENCIL_NOT_CONNECTED

            * `WORKSPACE_UNAVAILABLE` - WORKSPACE_UNAVAILABLE

            * `PENCIL_RECIPIENTS_NOT_CONFIGURED` -
            PENCIL_RECIPIENTS_NOT_CONFIGURED

            * `PENCIL_RECIPIENTS_INVALID` - PENCIL_RECIPIENTS_INVALID

            * `PENCIL_VALIDATION_ERROR` - PENCIL_VALIDATION_ERROR

            * `PENCIL_UNAVAILABLE` - PENCIL_UNAVAILABLE

            * `PENCIL_ERROR` - PENCIL_ERROR
        message:
          type: string
          description: Readable message
      required:
        - brief
        - code
        - message
  securitySchemes:
    Bearer:
      type: apiKey
      in: header
      name: Authorization

````

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