Procore Clones API

The Clones API from Procore — 1 operation(s) for clones.

Operations 1

POST /rest/v1.0/projects/{project_id}/daily_logs/clones Clones Daily Logs from one Date to another Date #

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-clones-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-clones-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Procore REST Clones 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: Clones
paths:
  /rest/v1.0/projects/{project_id}/daily_logs/clones:
    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
    - name: Idempotency-Token
      in: header
      description: Client-generated UUID v4 identifying a create operation. Retrying with the same token returns the original result instead of creating a duplicate.
      schema:
        type: string
    x-compliance-level: full
    post:
      x-doc:
        visibility: public
        stage: ga
        exposure: public
      summary: Clones Daily Logs from one Date to another Date
      description: Clones Daily Logs of the given log_types from the from_date to the to_date.
      tags:
      - Clones
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - from_date
              - to_date
              - log_types
              properties:
                from_date:
                  type: string
                  format: date
                  description: Date to copy logs from in YYYY-MM-DD format
                  example: '2020-11-12'
                to_date:
                  type: string
                  format: date
                  description: Date to copy logs to in YYYY-MM-DD format
                  example: '2020-11-12'
                log_types:
                  type: array
                  description: 'Log types to copy. More than one log type can be provided.

                    '
                  items:
                    type: string
                    example: notes_log
                    enum:
                    - accident_log
                    - call_log
                    - delay_log
                    - delivery_log
                    - dumpster_log
                    - equipment_log
                    - inspection_log
                    - manpower_log
                    - daily_construction_report_log
                    - notes_log
                    - plan_revision_log
                    - productivity_log
                    - quantity_log
                    - safety_violation_log
                    - timecard_entry
                    - visitor_log
                    - waste_log
                    - work_log
                daily_log_segment_id:
                  type:
                  - integer
                  - 'null'
                  description: "Optional. The ID of the daily log area to filter logs by. \nOnly logs belonging to the specified area will be copied.\nIf the area has associated log types, only those log types will be allowed.\n"
                  example: 140
        required: true
      responses:
        '200':
          description: OK (Duplicate Idempotency-token header)
        '201':
          description: The copy succeeded.
          content:
            application/json:
              schema:
                type: object
                description: 'An object where keys represent the copied log types, and their

                  values are arrays of the newly-copied logs. The object will be

                  empty if no logs are copied, such as when the to_date is

                  already completed.

                  '
                properties:
                  notes_log:
                    type: object
                    properties:
                      id:
                        type: number
                        example: 9
                      comment:
                        type: string
                        example: 123
                      created_at:
                        type: string
                        format: date-time
                        example: '2021-01-07T21:37:43Z'
                      created_by_collaborator:
                        type: boolean
                      custom_fields:
                        type: object
                      date:
                        type: string
                        format: date
                        example: '2021-01-07'
                      datetime:
                        type: string
                        format: date-time
                        example: '2021-01-07T20:00:00Z'
                      daily_log_header_id:
                        type: number
                        example: 4
                      deleted_at:
                        type:
                        - string
                        - 'null'
                      is_issue_day:
                        type:
                        - string
                        - 'null'
                      permissions:
                        type: object
                        properties:
                          can_update:
                            type:
                            - boolean
                            - 'null'
                          can_delete:
                            type:
                            - boolean
                            - 'null'
                      position:
                        type: number
                        example: 9
                      updated_at:
                        type: string
                        format: date-time
                        example: '2021-01-07T21:37:43Z'
                      status:
                        type: string
                        example: approved
                      attachments:
                        type: array
                        items:
                          type: object
                      created_by:
                        type: object
                        properties:
                          id:
                            type: number
                            example: 3
                          login:
                            type: string
                            example: carl.contractor@example.com
                          name:
                            type:
                            - string
                            - 'null'
                      location:
                        type:
                        - string
                        - 'null'
        '400':
          description: 'Request is invalid. The dates may be out-of-order or in the future,

            the log types might be invalid, or the specified log types may not

            belong to the provided daily_log_segment_id.'
          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
        '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
        mimeType: application/json
        title: Node.js
        content: "const request = require('request');\n\nconst options = {\n  method: 'POST',\n  url: 'https://api.procore.com/rest/v1.0/projects/%7Bproject_id%7D/daily_logs/clones',\n  headers: {'Idempotency-Token': 'SOME_STRING_VALUE', 'content-type': 'application/json'},\n  body: {\n    from_date: '2020-11-12',\n    to_date: '2020-11-12',\n    log_types: ['notes_log'],\n    daily_log_segment_id: 140\n  },\n  json: true\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
        mimeType: application/json
        title: Python3
        content: "import http.client\n\nconn = http.client.HTTPSConnection(\"api.procore.com\")\n\npayload = \"{\\\"from_date\\\":\\\"2020-11-12\\\",\\\"to_date\\\":\\\"2020-11-12\\\",\\\"log_types\\\":[\\\"notes_log\\\"],\\\"daily_log_segment_id\\\":140}\"\n\nheaders = {\n    'Idempotency-Token': \"SOME_STRING_VALUE\",\n    'content-type': \"application/json\"\n    }\n\nconn.request(\"POST\", \"/rest/v1.0/projects/%7Bproject_id%7D/daily_logs/clones\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"
      - id: shell_curl
        mimeType: application/json
        title: Curl
        content: "curl --request POST \\\n  --url https://api.procore.com/rest/v1.0/projects/%7Bproject_id%7D/daily_logs/clones \\\n  --header 'Idempotency-Token: SOME_STRING_VALUE' \\\n  --header 'content-type: application/json' \\\n  --data '{\"from_date\":\"2020-11-12\",\"to_date\":\"2020-11-12\",\"log_types\":[\"notes_log\"],\"daily_log_segment_id\":140}'"
      - id: csharp_httpclient
        mimeType: application/json
        title: C#
        content: "var client = new HttpClient();\nvar request = new HttpRequestMessage\n{\n    Method = HttpMethod.Post,\n    RequestUri = new Uri(\"https://api.procore.com/rest/v1.0/projects/%7Bproject_id%7D/daily_logs/clones\"),\n    Headers =\n    {\n        { \"Idempotency-Token\", \"SOME_STRING_VALUE\" },\n    },\n    Content = new StringContent(\"{\\\"from_date\\\":\\\"2020-11-12\\\",\\\"to_date\\\":\\\"2020-11-12\\\",\\\"log_types\\\":[\\\"notes_log\\\"],\\\"daily_log_segment_id\\\":140}\")\n    {\n        Headers =\n        {\n            ContentType = new MediaTypeHeaderValue(\"application/json\")\n        }\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: Adds daily_log_segment_id parameter
        description: 'Adds optional daily_log_segment_id parameter to filter cloned logs by area.

          When provided, only logs belonging to the specified area will be copied.

          If the area has associated log types, the request will validate that all

          requested log types belong to that area.'
        endpoint: POST /projects/{project_id}/daily_logs/clones
        type: feature
        breaking: false
        datestamp: '2026-01-12'
        versions:
        - '1.0'
        x-doc:
          visibility: public
          stage: ga
          exposure: public
        link: daily-log-clones?version=1.0#clones-daily-logs-from-one-date-to-another-date
      - summary: Responds with cloned logs
        description: 'Provides a response body containing the logs that have been cloned.

          For more information see the [Daily Log Clones](/reference/rest/v1/daily-log-clones) documentation.'
        endpoint: POST /projects/{project_id}/daily_logs/clones
        type: feature
        breaking: false
        datestamp: '2021-01-07'
        versions:
        - '1.0'
        x-doc:
          visibility: public
          stage: ga
          exposure: public
        link: daily-log-clones?version=1.0#clones-daily-logs-from-one-date-to-another-date
      - summary: Adds Idempotent token
        description: Supports idempotency token in request header to uniquely identify request.
        endpoint: POST /projects/{project_id}/daily_logs/clones
        type: feature
        breaking: false
        datestamp: '2022-04-02'
        versions:
        - '1.0'
        x-doc:
          visibility: public
          stage: ga
          exposure: public
        link: daily-log-clones?version=1.0#clones-daily-logs-from-one-date-to-another-date
      operationId: clonesDailyLogsFromOneDateToAnotherDate
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer