Skip to content
Back to skills

Procore Hello World

ASecurity

Prove a Procore connection with a read-only, company-routed smoke test before enabling mutations. Use when verifying a new token, app installation, DMSA project scope, environment, or deployment. Trigger with: "test my Procore connection", "run a Procore smoke test", "verify Procore access".

  • 2,719 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 21, 2026
ai-agentsapisecuritydocumentation

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 21, 2026

npx -y skills add jeremylongshore/claude-code-plugins-plus --skill procore-hello-world --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Procore Hello World?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Procore Hello World
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/jeremylongshore-procore-hello-world-41538b0f/badge)](https://www.skillsdirectory.com/skills/jeremylongshore-procore-hello-world-41538b0f)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: procore-hello-world
description: >-
  Prove a Procore connection with a read-only, company-routed smoke test before enabling mutations. Use when verifying a new token, app installation, DMSA project scope, environment, or deployment. Trigger with: "test my Procore connection", "run a Procore smoke test", "verify Procore access".
allowed-tools: Read, Grep, Write, Edit
version: 2.0.0
argument-hint: '[environment-and-company-id]'
model: inherit
effort: high
license: MIT
author: Jeremy Longshore <jeremy@intentsolutions.io>
tags:
  - saas
  - procore
  - smoke-test
  - connectivity
compatibility: 'Requires a valid Procore OAuth Bearer token and read access to at least one permitted company or project.'
---

# Procore Read-Only Connection Proof

## Overview

Establish identity, company routing, project visibility, and pagination without creating construction records. The proof must demonstrate the selected environment and permission boundary, not merely that an access token exists.

## Prerequisites

- Approved OAuth token obtained through the intended grant and environment
- Expected company identifier and at least one known permitted project
- Redacted evidence destination and named owner for permission failures

## Instructions

### Step 1: Freeze the target

Record the expected environment, API base, company ID, token alias, and app version. Reject mixed production and sandbox inputs before sending a request.

### Step 2: Verify identity

Call the documented current-user or company discovery surface using the Bearer token. Supply `Procore-Company-Id` when the contract requires company routing, especially for multi-region and DMSA traffic.

### Step 3: List visible projects

Use the documented projects list endpoint and a small page. Follow the returned pagination contract instead of assuming one page is complete.

### Step 4: Assert the boundary

Confirm the known permitted project appears and a known unpermitted project does not. Treat excess visibility as a security defect rather than a successful smoke test.

### Step 5: Capture a receipt

Record status, normalized route, company and project identifiers, page metadata, response latency, and a hash of the sanitized assertion output. Do not retain names or payloads unless the test requires them.

## Authentication

Authenticate with an OAuth 2.0 Bearer token produced for the selected Procore environment. The token carries either user permissions or DMSA permissions; the smoke test never broadens those permissions.

## Tool Discipline

Use Read and Grep to inspect environment configuration and expected identifiers. Use Write or Edit only for the approved test, assertion fixture, or redacted receipt; this workflow must not create, update, or delete Procore records.

## Output

- Environment and identity assertion
- Company-routing and permitted-project assertion
- Pagination and negative-access assertion

Return pass or fail with the exact failed boundary and a secret-free receipt.

## Examples

After a customer installs a DMSA app, the operator lists projects for that company and confirms the selected pilot project is visible. The test also confirms a non-permitted project is absent before the deployment is allowed to process events.

## Error Handling

| Failure | Response |
| --- | --- |
| 401 response | Verify token expiry, environment, revocation, and authorization header construction. |
| 403 or unexpected 404 | Check app connection, DMSA permissions, permitted projects, and enabled tools. |
| Empty project list | Validate company routing and the principal's project membership before expanding access. |
| Unexpected project visible | Stop deployment and reduce the user or DMSA permission boundary. |

## Resources

- [First-party source notes](references/official-docs.md)
- [Making your first API call](https://developers.procore.com/documentation/making-first-call)
- [Client Credentials test call](https://developers.procore.com/documentation/oauth-client-credentials)
- [Pagination](https://developers.procore.com/documentation/pagination)

Files in this skill

  • SKILL.md4 KB
  • references/official-docs.md976 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.