From procore-pack
Implements Procore REST API calls with OAuth2 authentication in Python for cost tuning in construction project management, RFIs, and submittals.
npx claudepluginhub jeremylongshore/claude-code-plugins-plus-skills --plugin procore-packThis skill is limited to using the following tools:
Implementation patterns for Procore cost tuning using the REST API with OAuth2 authentication.
Implements Procore REST API performance tuning with OAuth2 auth, efficient calls for companies/projects/RFIs/submittals, and rate limit backoff handling.
Guides Next.js Cache Components and Partial Prerendering (PPR): 'use cache' directives, cacheLife(), cacheTag(), revalidateTag() for caching, invalidation, static/dynamic optimization. Auto-activates on cacheComponents: true.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Share bugs, ideas, or general feedback.
Implementation patterns for Procore cost tuning using the REST API with OAuth2 authentication.
procore-install-auth setupimport os, requests
token_resp = requests.post("https://login.procore.com/oauth/token", data={
"grant_type": "client_credentials",
"client_id": os.environ["PROCORE_CLIENT_ID"],
"client_secret": os.environ["PROCORE_CLIENT_SECRET"],
})
access_token = token_resp.json()["access_token"]
headers = {"Authorization": f"Bearer {access_token}"}
companies = requests.get("https://api.procore.com/rest/v1.0/companies", headers=headers)
print(f"Companies: {len(companies.json())}")
| Error | Cause | Solution |
|---|---|---|
| 401 Unauthorized | Expired token | Re-authenticate |
| 429 Rate Limited | Too many requests | Implement backoff |
| 403 Forbidden | Insufficient permissions | Check project role |
See related Procore skills for more workflows.