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

# Get a brief

> Get a brief's current status and, when complete, its Markdown guidance and selected assets.



## OpenAPI

````yaml https://www.trybloom.ai/api/v1/spec.json get /briefs/{id}
openapi: 3.1.1
info:
  title: Bloom API
  version: 1.0.0
servers:
  - url: https://www.trybloom.ai/api/v1
security:
  - apiKey: []
  - bearer: []
tags:
  - name: Uploads
    description: >-
      Stage private local files for Brand sources, Library images, and other
      supported operations.
  - name: Account
    description: >-
      Inspect the authenticated account — profile, credit balance, and
      accessible workspaces.
  - name: Brands
    description: Manage brands and brand identity.
  - name: Images
    description: Generate, edit, and retrieve images.
  - name: Briefs
    description: Get brand guidance and selected assets for a specific task.
  - name: Models
    description: Find available models and check their inputs.
  - name: Generations
    description: Generate images, video, audio, and SVG, then retrieve the results.
  - name: Reviews
    description: >-
      Check an asset against a brand's color, typography, logo, and copy
      guidance.
paths:
  /briefs/{id}:
    get:
      tags:
        - Briefs
      summary: Get a brief
      description: >-
        Get a brief's current status and, when complete, its Markdown guidance
        and selected assets.
      operationId: briefs.get
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
            format: uuid
            description: Brief ID.
        - name: wait
          in: query
          schema:
            anyOf:
              - type: boolean
              - enum:
                  - '0'
                  - '1'
                  - 'true'
                  - 'false'
                type: string
            default: false
            description: Hold the connection until the resource reaches a terminal status
          allowEmptyValue: true
          allowReserved: true
        - name: timeout
          in: query
          schema:
            type: integer
            minimum: 1
            maximum: 295
            default: 120
            description: Max seconds to wait (default 120, max 295)
          allowEmptyValue: true
          allowReserved: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      id:
                        type: string
                        format: uuid
                        description: Brief ID.
                      status:
                        enum:
                          - pending
                          - processing
                          - completed
                          - failed
                        type: string
                        description: Current status of the brief.
                      skillId:
                        anyOf:
                          - type: string
                            format: uuid
                          - type: 'null'
                        description: >-
                          Brand Skill version used to prepare the brief, or null
                          if that version was deleted.
                      createdAt:
                        type: string
                        format: date-time
                        description: When the brief was requested.
                      completedAt:
                        type: string
                        format: date-time
                        description: When the brief completed.
                      guidance:
                        type: string
                        description: >-
                          Brand guidance for the task, in Markdown. Available
                          when completed.
                      assets:
                        type: array
                        items:
                          type: object
                          properties:
                            kind:
                              enum:
                                - logo
                                - image
                                - font
                                - font_render
                              type: string
                              description: >-
                                Asset type. A font render is an image preview of
                                a font.
                            mediaType:
                              enum:
                                - image/avif
                                - image/gif
                                - image/jpeg
                                - image/png
                                - image/svg+xml
                                - image/webp
                                - image/x-icon
                                - font/otf
                                - font/ttf
                                - font/woff
                                - font/woff2
                              type: string
                              description: MIME type of the image or font file.
                            url:
                              type: string
                              format: uri
                              description: >-
                                Stable Bloom asset URL with no scheduled expiry.
                                Redirects to fresh storage access while the
                                completed brief, brand, saved Brand Skill
                                version, and asset remain available. Anyone with
                                this link can access the asset without signing
                                in.
                          required:
                            - kind
                            - mediaType
                            - url
                          additionalProperties: false
                        description: Files selected for the task. Available when completed.
                      error:
                        type: object
                        properties:
                          code:
                            type: string
                            description: Error code identifying the failure.
                          message:
                            type: string
                            description: Human-readable explanation of the failure.
                          retryable:
                            type: boolean
                            description: >-
                              Whether you can retry by creating a new brief with
                              a new idempotency key.
                        required:
                          - code
                          - message
                          - retryable
                        description: Failure details. Available when the brief failed.
                      failedAt:
                        type: string
                        format: date-time
                        description: When the brief failed.
                    required:
                      - id
                      - status
                      - skillId
                      - createdAt
                required:
                  - data
        '401':
          description: '401'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BriefsGet401ErrorResponse'
        '403':
          description: '403'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BriefsGet403ErrorResponse'
        '404':
          description: '404'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BriefsGet404ErrorResponse'
        '429':
          description: '429'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BriefsGet429ErrorResponse'
          headers:
            Retry-After:
              description: >-
                Seconds until the API-key request limit resets. Present only
                when the request-rate limiter can calculate the delay.
              schema:
                type: integer
                minimum: 0
components:
  schemas:
    BriefsGet401ErrorResponse:
      type: object
      properties:
        error:
          allOf:
            - $ref: '#/components/schemas/ApiError'
            - anyOf:
                - type: object
                  properties:
                    code:
                      const: UNAUTHORIZED
                    status:
                      const: 401
                    message:
                      type: string
                      default: Invalid or missing API credentials
                    data: {}
                  required:
                    - code
                    - status
                    - message
                - type: object
                  properties:
                    code:
                      type: string
                    status:
                      type: integer
                    message:
                      type: string
                    data: {}
                  required:
                    - code
                    - status
                    - message
      required:
        - error
    BriefsGet403ErrorResponse:
      type: object
      properties:
        error:
          allOf:
            - $ref: '#/components/schemas/ApiError'
            - anyOf:
                - type: object
                  properties:
                    code:
                      const: ACCOUNT_BANNED
                    status:
                      const: 403
                    message:
                      type: string
                      default: This account has been suspended.
                    data: {}
                  required:
                    - code
                    - status
                    - message
                - type: object
                  properties:
                    code:
                      const: FORBIDDEN
                    status:
                      const: 403
                    message:
                      type: string
                      default: Plan upgrade required
                    data: {}
                  required:
                    - code
                    - status
                    - message
                - type: object
                  properties:
                    code:
                      type: string
                    status:
                      type: integer
                    message:
                      type: string
                    data: {}
                  required:
                    - code
                    - status
                    - message
      required:
        - error
    BriefsGet404ErrorResponse:
      type: object
      properties:
        error:
          allOf:
            - $ref: '#/components/schemas/ApiError'
            - anyOf:
                - type: object
                  properties:
                    code:
                      const: BRIEF_NOT_FOUND
                    status:
                      const: 404
                    message:
                      type: string
                      default: Brief not found
                    data: {}
                  required:
                    - code
                    - status
                    - message
                - type: object
                  properties:
                    code:
                      const: BRAND_NOT_FOUND
                    status:
                      const: 404
                    message:
                      type: string
                      default: Brand not found.
                    data: {}
                  required:
                    - code
                    - status
                    - message
                - type: object
                  properties:
                    code:
                      type: string
                    status:
                      type: integer
                    message:
                      type: string
                    data: {}
                  required:
                    - code
                    - status
                    - message
      required:
        - error
    BriefsGet429ErrorResponse:
      type: object
      properties:
        error:
          allOf:
            - $ref: '#/components/schemas/ApiError'
            - anyOf:
                - type: object
                  properties:
                    code:
                      const: TOO_MANY_REQUESTS
                    status:
                      const: 429
                    message:
                      type: string
                      default: Rate limit exceeded
                    data: {}
                  required:
                    - code
                    - status
                    - message
                - type: object
                  properties:
                    code:
                      type: string
                    status:
                      type: integer
                    message:
                      type: string
                    data: {}
                  required:
                    - code
                    - status
                    - message
      required:
        - error
    ApiError:
      type: object
      properties:
        code:
          type: string
        status:
          type: integer
        message:
          type: string
        data: {}
      required:
        - code
        - status
        - message
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: x-api-key
      description: 'Bloom API key, for example `x-api-key: bloom_sk_...`.'
    bearer:
      type: http
      scheme: bearer
      description: Bloom API key (`Bearer bloom_sk_...`) or Bloom OAuth access token.

````

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