openapi: 3.1.0 info: title: Fieldwire Account Actual Costs RFIs 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: RFIs description: Requests for Information lifecycle. paths: /projects/{project_id}/rfis: get: operationId: getRfisInProject summary: Get RFIs In Project tags: - RFIs parameters: - $ref: '#/components/parameters/ProjectId' responses: '200': description: RFI list. content: application/json: schema: type: array items: $ref: '#/components/schemas/Rfi' post: operationId: createRfiInProject summary: Create RFI In Project tags: - RFIs parameters: - $ref: '#/components/parameters/ProjectId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/RfiCreate' responses: '201': description: Created RFI. content: application/json: schema: $ref: '#/components/schemas/Rfi' /projects/{project_id}/rfis/{rfi_id}: get: operationId: getRfiById summary: Get RFI By ID tags: - RFIs parameters: - $ref: '#/components/parameters/ProjectId' - $ref: '#/components/parameters/RfiId' responses: '200': description: RFI. content: application/json: schema: $ref: '#/components/schemas/Rfi' patch: operationId: updateRfiById summary: Update RFI By ID tags: - RFIs parameters: - $ref: '#/components/parameters/ProjectId' - $ref: '#/components/parameters/RfiId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/RfiUpdate' responses: '200': description: Updated RFI. content: application/json: schema: $ref: '#/components/schemas/Rfi' components: parameters: ProjectId: name: project_id in: path required: true schema: type: integer format: int64 RfiId: name: rfi_id in: path required: true schema: type: integer format: int64 schemas: Rfi: type: object properties: id: type: integer format: int64 project_id: type: integer format: int64 number: type: string title: type: string question: type: string answer: type: string status: type: string enum: - draft - open - answered - closed - void priority: type: string enum: - low - normal - high - urgent spec_section_id: type: integer format: int64 ball_in_court_user_id: type: integer format: int64 due_at: type: string format: date-time created_at: type: string format: date-time updated_at: type: string format: date-time RfiCreate: type: object required: - title - question properties: title: type: string question: type: string priority: type: string enum: - low - normal - high - urgent spec_section_id: type: integer format: int64 ball_in_court_user_id: type: integer format: int64 due_at: type: string format: date-time RfiUpdate: type: object properties: title: type: string question: type: string answer: type: string status: type: string enum: - draft - open - answered - closed - void priority: type: string enum: - low - normal - high - urgent ball_in_court_user_id: type: integer format: int64 due_at: type: string format: date-time 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`. '