Procore Counts API

The Counts API from Procore — 1 operation(s) for counts.

Operations 1

GET /rest/v1.1/projects/{project_id}/daily_logs/counts List Counts of Daily Logs #

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-counts-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-counts-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Procore REST Counts 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: Counts
paths:
  /rest/v1.1/projects/{project_id}/daily_logs/counts:
    parameters:
    - name: Procore-Company-Id
      in: header
      description: Unique company identifier associated with the Procore User Account.
      required: true
      schema:
        type: integer
    - name: project_id
      in: path
      required: true
      description: Unique identifier for the project.
      schema:
        type: integer
    x-compliance-level: partial
    get:
      x-doc:
        visibility: public
        stage: ga
        exposure: public
      summary: List Counts of Daily Logs
      description: 'Returns counts of all daily logs arranged by type, given the current user permissions. Read Only/Standard users will

        see only counts of approved logs, Collaborator users will see only counts of logs created by themselves, Admins

        can use filter options to see all logs, or only a specific approval status (defaulting to approved).


        See Working with Daily Logs for information on filtering the response using the log\_date, start\_date, and end\_date parameters. Note that if none of the date parameters are provided in the call, only logs from the current date are returned.'
      tags:
      - Counts
      parameters:
      - name: log_date
        in: query
        description: Date of specific logs desired. Example formats YYYY-MM-DD, YYYY/MM/DD, DD-MM-YYYY, DD/MM/YYYY
        schema:
          type: string
          format: date
      - name: start_date
        in: query
        description: Start date of specific logs desired. Use together with end_date to specify a date range. Example formats YYYY-MM-DD, YYYY/MM/DD, DD-MM-YYYY, DD/MM/YYYY
        schema:
          type: string
          format: date
      - name: end_date
        in: query
        description: End date of specific logs desired. Use together with start_date to specify a date range. Example formats YYYY-MM-DD, YYYY/MM/DD, DD-MM-YYYY, DD/MM/YYYY
        schema:
          type: string
          format: date
      - name: filters[status]
        in: query
        description: Filter on log status
        schema:
          type: string
          enum:
          - all
          - approved
          - pending
      - name: filters[created_by_id]
        in: query
        description: Returns item(s) created by the specified User IDs.
        style: form
        explode: false
        schema:
          type: array
          items:
            type: integer
      - name: page
        in: query
        description: Page
        schema:
          type: integer
      - name: per_page
        in: query
        description: Elements per page
        schema:
          type: integer
      - example:
        - 123456
        name: filters[daily_log_segment_id]
        in: query
        description: Daily Log Segment ID filter
        schema:
          type: array
          items:
            type: integer
      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: array
                items:
                  type: object
                  description: Meta data about a daily log module
                  properties:
                    module_name:
                      type: string
                      description: The name of the log type
                      example: manpower_log
                    count:
                      type: integer
                      description: The number of logs that match the current date and permissions filters for this module
                      example: 11
                    position:
                      type: integer
                      description: The position this module is shown at, on the web
                      example: 6
        '403':
          description: User does not have right permissions
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    format: int32
                  message:
                    type: string
                  fields:
                    type: string
                  reason:
                    description: A human-readable code providing additional detail on the cause of the error.
                    type: string
                  error:
                    description: Description of the error thrown.
                    type:
                    - string
                    - 'null'
                    example: Invalid Token
      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/v1.1/projects/%7Bproject_id%7D/daily_logs/counts',\n  qs: {\n    log_date: 'SOME_STRING_VALUE',\n    start_date: 'SOME_STRING_VALUE',\n    end_date: 'SOME_STRING_VALUE',\n    'filters[status]': 'SOME_STRING_VALUE',\n    'filters[created_by_id]': 'SOME_ARRAY_VALUE',\n    page: 'SOME_INTEGER_VALUE',\n    per_page: 'SOME_INTEGER_VALUE',\n    'filters[daily_log_segment_id]': '123456'\n  }\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")


          conn.request("GET", "/rest/v1.1/projects/%7Bproject_id%7D/daily_logs/counts?log_date=SOME_STRING_VALUE&start_date=SOME_STRING_VALUE&end_date=SOME_STRING_VALUE&filters%5Bstatus%5D=SOME_STRING_VALUE&filters%5Bcreated_by_id%5D=SOME_ARRAY_VALUE&page=SOME_INTEGER_VALUE&per_page=SOME_INTEGER_VALUE&filters%5Bdaily_log_segment_id%5D=123456")


          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/v1.1/projects/%7Bproject_id%7D/daily_logs/counts?log_date=SOME_STRING_VALUE&start_date=SOME_STRING_VALUE&end_date=SOME_STRING_VALUE&filters%5Bstatus%5D=SOME_STRING_VALUE&filters%5Bcreated_by_id%5D=SOME_ARRAY_VALUE&page=SOME_INTEGER_VALUE&per_page=SOME_INTEGER_VALUE&filters%5Bdaily_log_segment_id%5D=123456'"
      - 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/v1.1/projects/%7Bproject_id%7D/daily_logs/counts?log_date=SOME_STRING_VALUE&start_date=SOME_STRING_VALUE&end_date=SOME_STRING_VALUE&filters%5Bstatus%5D=SOME_STRING_VALUE&filters%5Bcreated_by_id%5D=SOME_ARRAY_VALUE&page=SOME_INTEGER_VALUE&per_page=SOME_INTEGER_VALUE&filters%5Bdaily_log_segment_id%5D=123456\"),\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: List Counts of Daily Logs
        description: 'Returns counts of all daily logs arranged by type, given the current user permissions. Read Only/Standard users will

          see only counts of approved logs, Collaborator users will see only counts of logs created by themselves, Admins

          can use filter options to see all logs, or only a specific approval status (defaulting to approved).


          See [Working with Daily Logs](https://developers.procore.com/documentation/daily-logs) for information on filtering the response using the log\_date, start\_date, and end\_date parameters.'
        endpoint: GET /projects/{project_id}/daily_logs/counts
        type: new
        breaking: false
        datestamp: '2021-01-26'
        versions:
        - '1.1'
        x-doc:
          visibility: public
          stage: ga
          exposure: public
        link: daily-log-counts?version=1.1#list-counts-of-daily-logs
      - summary: Add daily_log_segment_id filter parameter for Daily Log Counts endpoint
        description: Add daily_log_segment_id filter parameter for Daily Log Counts endpoint.
        endpoint: GET /projects/{project_id}/daily_logs/counts
        type: feature
        breaking: false
        datestamp: '2025-08-07'
        versions:
        - '1.1'
        x-doc:
          visibility: public
          stage: ga
          exposure: public
        link: daily-log-counts?version=1.1#list-counts-of-daily-logs
      operationId: listCountsOfDailyLogs
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer