openapi: 3.1.0 info: title: Fieldwire Account Actual Costs Bubbles API description: 'Account-scoped (super) endpoints used to authenticate, exchange the long-lived API key (refresh token) for a short-lived JWT access token, and manage account-level users, roles, attachments, data types, custom stamps, account form templates, and project transfers. All requests target the global super host: `https://client-api.super.fieldwire.com`. Project-scoped reads/writes use the regional Projects API (`client-api.us.fieldwire.com` or `client-api.eu.fieldwire.com`). ' version: v3.1 contact: name: Fieldwire Developer Support url: https://developers.fieldwire.com/ license: name: Fieldwire Terms of Service url: https://www.fieldwire.com/terms/ servers: - url: https://client-api.super.fieldwire.com description: Global Super Host security: - BearerAuth: [] tags: - name: Bubbles description: Task-attached comments, photos, video, links, and file attachments. paths: /projects/{project_id}/tasks/{task_id}/bubbles: get: operationId: getBubblesInTask summary: Get Bubbles In Task description: Retrieve all bubbles (comments, photos, video, links, attachments) associated with a task. tags: - Bubbles parameters: - $ref: '#/components/parameters/ProjectId' - $ref: '#/components/parameters/TaskId' responses: '200': description: Bubble list. content: application/json: schema: type: array items: $ref: '#/components/schemas/Bubble' post: operationId: createBubbleInTask summary: Create Bubble In Task description: 'Create a new bubble in a task. Bubble kinds include `comment`, `photo`, `video`, `link`, `pdf`, and `attachment` (S3-uploaded file). ' tags: - Bubbles parameters: - $ref: '#/components/parameters/ProjectId' - $ref: '#/components/parameters/TaskId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/BubbleCreate' responses: '201': description: Created bubble. content: application/json: schema: $ref: '#/components/schemas/Bubble' components: schemas: BubbleCreate: type: object required: - kind properties: kind: type: string enum: - comment - photo - video - link - pdf - attachment text: type: string attachment_id: type: integer format: int64 Bubble: type: object properties: id: type: integer format: int64 task_id: type: integer format: int64 kind: type: string enum: - comment - photo - video - link - pdf - attachment text: type: string attachment_id: type: integer format: int64 author_user_id: type: integer format: int64 created_at: type: string format: date-time parameters: TaskId: name: task_id in: path required: true schema: type: integer format: int64 ProjectId: name: project_id in: path required: true schema: type: integer format: int64 securitySchemes: BearerAuth: type: http scheme: bearer bearerFormat: JWT description: 'Send the short-lived access token returned by `POST /api_keys/jwt` as `Authorization: Bearer `. Also include the `Fieldwire-Version` request header and `Content-Type: application/json`. '