Procore Project Area Bids API

The Project Area Bids API from Procore — 1 operation(s) for project area bids.

Business capability
Sourcing Management BC-500.10

Operations 1

GET /rest/v2.0/companies/{company_id}/projects/{project_id}/bids List Bids within a Project #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/procore:procore-project-area-bids-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

procore-project-area-bids-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Procore REST Project Area Bids API
  version: v1.0/v2.0
  description: Merged from the per-resource OpenAPI documents Procore publishes through its developer portal (https://developers.procore.com/api/v1/resource_groups). Originals are kept verbatim in openapi/_original/resources/.
  x-source: https://developers.procore.com/api/v1/resource_groups
servers:
- url: https://api.procore.com
  description: Production
security:
- bearerAuth: []
tags:
- name: Project Area Bids
paths:
  /rest/v2.0/companies/{company_id}/projects/{project_id}/bids:
    parameters:
    - name: Procore-Company-Id
      in: header
      description: Unique company identifier associated with the Procore User Account.
      required: true
      schema:
        type: integer
    x-compliance-level: full
    get:
      x-doc:
        visibility: public
        stage: beta
        exposure: public
      summary: List Bids within a Project
      description: Return a list of Bids within a Project.
      tags:
      - Project Area Bids
      parameters:
      - name: company_id
        in: path
        description: Unique identifier for the company.
        required: true
        schema:
          type: string
      - name: project_id
        in: path
        required: true
        description: Unique identifier for the project.
        schema:
          type: string
      - name: page
        in: query
        description: Page
        required: false
        schema:
          type: integer
      - name: per_page
        in: query
        description: Elements per page
        required: false
        schema:
          type: integer
          default: 10
          minimum: 1
          maximum: 100
      responses:
        '200':
          description: OK
          headers:
            Per-Page:
              description: Number of items retrieved per page
              schema:
                type: integer
            Total:
              description: Total number of items to be retrieved
              schema:
                type: integer
            Link:
              description: Link headers for the first, prev, next, and last link
              schema:
                type: string
          content:
            application/json:
              schema:
                type: object
                description: Data
                properties:
                  data:
                    type: array
                    description: Array of Bids
                    items:
                      type: object
                      description: Project Area Bid
                      properties:
                        id:
                          type: string
                          description: ID
                          example: '75414'
                        bid_package_id:
                          type: string
                          description: Bid Package ID
                          example: '91011'
                        bid_package_title:
                          type: string
                          description: Bid Package title
                          example: Test Bid documents email link from correspondence
                        bid_form_title:
                          type: string
                          description: Bid Form Title
                          example: Bid Form Title
                        bid_form_id:
                          type:
                          - string
                          - 'null'
                          description: Bid Form ID
                          example: '12345'
                        bid_status:
                          type: string
                          description: Bid status
                          enum:
                          - undecided
                          - will_not_bid
                          - will_bid
                          - not_invited
                          - submitted
                        awarded:
                          type:
                          - boolean
                          - 'null'
                          description: Bid awarded to vendor
                          example: false
                        company_id:
                          type: string
                          description: Company ID
                          example: '3355'
                        invitation_last_sent_at:
                          type:
                          - string
                          - 'null'
                          format: date-time
                          description: Date/time the Bid Package invitation was last sent
                          example: '2012-10-23T21:39:40Z'
                        is_bidder_committed:
                          type:
                          - boolean
                          - 'null'
                          description: Bidder committed
                          example: true
                        lump_sum_amount:
                          type: number
                          format: float
                          description: Lump sum (overall) amount
                          example: 200.5
                        lump_sum_enabled:
                          type: boolean
                          description: Lump sum bidding enabled
                          example: false
                        submitted:
                          type: boolean
                          description: Vendor submitted Bid
                          example: true
                        created_at:
                          type: string
                          format: date-time
                          description: Date/time the Bid Package was created
                          example: '2012-10-23T21:39:40Z'
                        updated_at:
                          type: string
                          format: date-time
                          description: Date/time the Bid Package was last updated
                          example: '2012-10-24T21:39:40Z'
                        due_date:
                          type: string
                          format: date-time
                          description: Due Date
                          example: '2016-12-13T03:00:00Z'
                        bidder_comments:
                          type:
                          - string
                          - 'null'
                          description: Comments
                          example: Test Bid
                        require_nda:
                          type: boolean
                          description: Whether the bid requires NDA
                          example: false
                        display_project_name:
                          type: boolean
                          description: Whether to display project name before NDA is signed
                          example: true
                        nda_first_name:
                          type:
                          - string
                          - 'null'
                          description: NDA signer first name
                          example: John
                        nda_last_name:
                          type:
                          - string
                          - 'null'
                          description: NDA signer last name
                          example: Doe
                        nda_updated_at:
                          type:
                          - string
                          - 'null'
                          format: date-time
                          description: Date/time when NDA was last updated
                          example: '2012-10-23T21:39:40Z'
                        nda_status:
                          type:
                          - string
                          - 'null'
                          description: NDA status
                          enum:
                          - viewed
                          - downloaded
                          - signed
                          - declined
                        nda_signed_at:
                          type:
                          - string
                          - 'null'
                          format: date-time
                          description: Date/time when NDA was signed
                          example: '2012-10-23T21:39:40Z'
                        nda_email_last_sent_at:
                          type:
                          - string
                          - 'null'
                          format: date-time
                          description: Date/time when NDA email was last sent
                          example: '2012-10-23T21:39:40Z'
                        bid_requester:
                          type: object
                          description: Bid Requester Info
                          properties:
                            company:
                              type: string
                              description: The bid requesters company name
                              example: Demo Company 1
                            contact:
                              type: string
                              description: The bid requester's contact information
                              example: John Doe ((503)744-3200 ext. 1234)
                            company_address:
                              type: string
                              description: Bid requesters company address
                              example: 123 Campus Way Carpinteria, CA 91303
                            company_phone:
                              type:
                              - string
                              - 'null'
                              description: Bid requesters company phone
                              example: 8051231234
                            company_website:
                              type:
                              - string
                              - 'null'
                              description: Bid requesters company website
                              example: https://www.procore.com/
                            email_address:
                              type: string
                              description: Bid requesters email_address
                              example: joe.doe@example.com
                            first_name:
                              type: string
                              description: Bid requesters first_name
                              example: Joe
                            last_name:
                              type: string
                              description: Bid requesters last_name
                              example: Doe
                            mobile_phone:
                              type:
                              - string
                              - 'null'
                              description: Bid requesters mobile number
                              example: 8051231234
                            vendor_address:
                              type: string
                              description: Bid requesters company address
                              example: 6309 Carpinteria Ave.
                            business_phone:
                              type:
                              - string
                              - 'null'
                              description: Bid requesters company phone number
                              example: 8051231234
                            fax_number:
                              type:
                              - string
                              - 'null'
                              description: Bid requesters company fax number
                              example: 8051231234
                        vendor:
                          type: object
                          description: Bid Vendor Info
                          properties:
                            name:
                              type: string
                              description: Name
                              example: Demo Company 1
                            avatar_url:
                              type:
                              - string
                              - 'null'
                              description: Link to avatar picture
                              example: https://s3.amazonaws.com/pro-core.com/prostore/20160422154654_production_397508974.png
                            trades:
                              type:
                              - string
                              - 'null'
                              description: List of trades for the vendor
                              example: General Conditions
                        project:
                          type: object
                          description: Project Info
                          properties:
                            name:
                              type: string
                              description: Name
                              example: Project 1
                            address:
                              type: string
                              description: Address
                              example: One Space Way<br>Risa SB12<br>United States
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                        description: HTTP status in screaming snake case (like BAD_REQUEST)
                      message:
                        type: string
                        description: Human readable message describing error.
                      details:
                        type: array
                        description: Additional information about the error.
                        items:
                          type: object
                          required:
                          - reason_code
                          - message
                          properties:
                            reason_code:
                              type: string
                              description: A machine-readable code that identifies the error specifically enough for the client to interpret what happened and take action.
                              example: BLANK
                            message:
                              type: string
                              description: Human readable message
                              example: Name can't be blank
                            source:
                              type: string
                              description: Source of the error
                              example: name
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                        description: HTTP status in screaming snake case (like BAD_REQUEST)
                      message:
                        type: string
                        description: Human readable message describing error.
                      details:
                        type: array
                        description: Additional information about the error.
                        items:
                          type: object
                          required:
                          - reason_code
                          - message
                          properties:
                            reason_code:
                              type: string
                              description: A machine-readable code that identifies the error specifically enough for the client to interpret what happened and take action.
                              example: BLANK
                            message:
                              type: string
                              description: Human readable message
                              example: Name can't be blank
                            source:
                              type: string
                              description: Source of the error
                              example: name
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                        description: HTTP status in screaming snake case (like BAD_REQUEST)
                      message:
                        type: string
                        description: Human readable message describing error.
                      details:
                        type: array
                        description: Additional information about the error.
                        items:
                          type: object
                          required:
                          - reason_code
                          - message
                          properties:
                            reason_code:
                              type: string
                              description: A machine-readable code that identifies the error specifically enough for the client to interpret what happened and take action.
                              example: BLANK
                            message:
                              type: string
                              description: Human readable message
                              example: Name can't be blank
                            source:
                              type: string
                              description: Source of the error
                              example: name
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                        description: HTTP status in screaming snake case (like BAD_REQUEST)
                      message:
                        type: string
                        description: Human readable message describing error.
                      details:
                        type: array
                        description: Additional information about the error.
                        items:
                          type: object
                          required:
                          - reason_code
                          - message
                          properties:
                            reason_code:
                              type: string
                              description: A machine-readable code that identifies the error specifically enough for the client to interpret what happened and take action.
                              example: BLANK
                            message:
                              type: string
                              description: Human readable message
                              example: Name can't be blank
                            source:
                              type: string
                              description: Source of the error
                              example: name
      x-code-samples:
      - id: node_request
        title: Node.js
        content: "const request = require('request');\n\nconst options = {\n  method: 'GET',\n  url: 'https://api.procore.com/rest/v2.0/companies/%7Bcompany_id%7D/projects/%7Bproject_id%7D/bids',\n  qs: {page: 'SOME_INTEGER_VALUE', per_page: 'SOME_INTEGER_VALUE'},\n  headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'}\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
      - id: python_python3
        title: Python3
        content: 'import http.client


          conn = http.client.HTTPSConnection("api.procore.com")


          headers = { ''Authorization'': "Bearer REPLACE_BEARER_TOKEN" }


          conn.request("GET", "/rest/v2.0/companies/%7Bcompany_id%7D/projects/%7Bproject_id%7D/bids?page=SOME_INTEGER_VALUE&per_page=SOME_INTEGER_VALUE", headers=headers)


          res = conn.getresponse()

          data = res.read()


          print(data.decode("utf-8"))'
      - id: shell_curl
        title: Curl
        content: "curl --request GET \\\n  --url 'https://api.procore.com/rest/v2.0/companies/%7Bcompany_id%7D/projects/%7Bproject_id%7D/bids?page=SOME_INTEGER_VALUE&per_page=SOME_INTEGER_VALUE' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"
      - id: csharp_httpclient
        title: C#
        content: "var client = new HttpClient();\nvar request = new HttpRequestMessage\n{\n    Method = HttpMethod.Get,\n    RequestUri = new Uri(\"https://api.procore.com/rest/v2.0/companies/%7Bcompany_id%7D/projects/%7Bproject_id%7D/bids?page=SOME_INTEGER_VALUE&per_page=SOME_INTEGER_VALUE\"),\n    Headers =\n    {\n        { \"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\" },\n    },\n};\nusing (var response = await client.SendAsync(request))\n{\n    response.EnsureSuccessStatusCode();\n    var body = await response.Content.ReadAsStringAsync();\n    Console.WriteLine(body);\n}"
      x-rate-limit-enabled: true
      x-procore-kong-tags:
      - rate-limit:enabled
      x-changelog:
      - summary: Decoupled (PCN) bidders now return Business Registry vendor data
        description: The vendor object for decoupled bids (no vendor_id, business_id present) now returns the bidder's Business Registry name, avatar, and trades instead of the "(No Company)" placeholder, matching the v1 bids index. The response shape is unchanged, and "(No Company)" is still returned when the vendor cannot be resolved.
        endpoint: GET /companies/{company_id}/projects/{project_id}/bids
        type: fix
        breaking: false
        datestamp: '2026-10-08'
        versions:
        - '2.0'
        x-doc:
          visibility: public
          stage: beta
          exposure: public
        link: project-area-bids?version=2.0#list-bids-within-a-project
      - summary: 'Expose endpoint as public beta: List Bids within a Project'
        description: 'Expose endpoint as public beta: List Bids within a Project'
        endpoint: GET /companies/{company_id}/projects/{project_id}/bids
        type: refinement
        breaking: false
        datestamp: '2026-04-22'
        versions:
        - '2.0'
        x-doc:
          visibility: public
          stage: beta
          exposure: public
        link: project-area-bids?version=2.0#list-bids-within-a-project
      operationId: listBidsWithinAProject2
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer