Claude-code-plugins-plus-skills procore-hello-world

install
source · Clone the upstream repo
git clone https://github.com/jeremylongshore/claude-code-plugins-plus-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/jeremylongshore/claude-code-plugins-plus-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/plugins/saas-packs/procore-pack/skills/procore-hello-world" ~/.claude/skills/jeremylongshore-claude-code-plugins-plus-skills-procore-hello-world && rm -rf "$T"
manifest: plugins/saas-packs/procore-pack/skills/procore-hello-world/SKILL.md
source content

Procore Hello World

Overview

List companies and projects, then create your first RFI using the Procore REST API.

Prerequisites

  • Completed
    procore-install-auth
    with valid access token

Instructions

Step 1: List Projects

company_id = 12345  # From install-auth step
projects = requests.get(
    f"https://api.procore.com/rest/v1.0/projects?company_id={company_id}",
    headers=headers,
)
for p in projects.json():
    print(f"Project: {p['name']} (ID: {p['id']})")

Step 2: Create an RFI

project_id = 67890
rfi = requests.post(
    f"https://api.procore.com/rest/v1.0/projects/{project_id}/rfis",
    headers={**headers, "Content-Type": "application/json"},
    json={
        "rfi": {
            "subject": "Structural beam specification clarification",
            "question_body": "Please confirm the steel grade for beams on Level 3.",
            "assignee_id": 11111,  # User ID of the person to respond
        }
    },
)
rfi.raise_for_status()
print(f"RFI created: #{rfi.json()['number']} — {rfi.json()['subject']}")

Step 3: List Submittals

submittals = requests.get(
    f"https://api.procore.com/rest/v1.0/projects/{project_id}/submittals",
    headers=headers,
)
for s in submittals.json():
    print(f"Submittal #{s['number']}: {s['title']} — Status: {s['status']['name']}")

Output

  • Listed companies and projects
  • Created an RFI with subject and assignee
  • Listed submittals with status

Error Handling

ErrorCauseSolution
404 Project not found
Wrong project_idList projects first
422 Missing subject
Required fieldInclude subject in RFI
403 Forbidden
No project accessCheck user permissions

Resources

Next Steps

Full RFI workflow:

procore-core-workflow-a