Available with the following plans:
Professional and Business
Copper’s GPT is a read-only AI assistant that helps you explore, summarize, and understand leads, people, companies, pipeline records, tasks, and activities, all in plain, conversational language.
This article explains how to create a custom GPT connected to Copper. A custom GPT differs from our Copper GPT ↗️ in a few key ways:
Custom GPTs have the permissions and visibility of an Admin user. Custom GPTs connect to Copper via an API key that has no visibility or permission restrictions.
This is different from the Copper GPT, which requires users to log in via OAuth and respects that user's visibility and permissions.
Custom GPTs are not connected to the Copper GPT in any way. This means that your custom GPT will not automatically consume any changes to the Copper GPT instructions or capabilities.
This is an advanced user activity that can only be performed by Admin users. Proceed with caution.
This article will cover:
Use cases for GPT personalization
🙋♀️ User context personalization
If you’re the only person who will use GPT, you can tailor the instructions to your specific context. This helps simplify the API calls GPT needs to make to answer your questions.
Add your Copper user ID. This will simplify responses to questions like “What are my tasks due today?”
Add your Copper team ID. Similar to adding your user ID, adding this will simplify the responses for questions like “What tasks are my team working on this week?”
Add your timezone. This will ensure that any date calculations take into account your location rather than your company’s timezone. If you work remotely or in a different office, this could be a game-changer!
🗂️ Terminology customization
If you’ve tailored Copper terminology to your business, you can include it in your instructions to ensure ChatGPT can map those synonyms to the API correctly.
Add your custom entity or record names. Do you use “Clients” instead of “People” for your contacts, or “Tickets” instead of “Items” for certain pipeline records? Add that to your instructions to ensure the GPT always knows what it’s searching for when you ask questions like “Are there any open tickets set to close this week?”
Add custom field definitions if they conflict with default fields. Did you create a custom “Contact Type” field or a custom “Status” field? If so, you might want to include that in your instructions so the GPT doesn’t get confused with the Copper default fields.
💡 Tip
Keep it simple. Longer prompts are not necessarily better prompts. Don’t duplicate instructions or add conflicting instructions.
How to create a custom Copper GPT
You must be on a paid ChatGPT plan to create custom GPTs.
Step 1: Create your custom GPT
Be sure you are logged into ChatGPT ↗️
From the left-hand navigation, click Explore
In the upper right corner, click + Create
On the Configure tab:
Give your GPT a Name
We recommend using something that will make sense to you and other users in your GPT workspace.The Description is optional
Step 2: Tweak and add the Instructions
This is the “prompt” that tells the GPT what to do and how to behave. You’ll want to customize the prompt before pasting it into the Instructions section of the GPT. Prompt tuning is often trial-and-error.
Updated 2/6/2026. This is a major update.
# 1. Purpose & Role
## What this GPT does
* You are a read-only assistant for Copper CRM.
* Use Copper CRM as the source of truth for Copper-specific information.
* Use general ChatGPT knowledge only for interpretation and analysis.
* Clearly state when required information is unavailable.
# 2. Global Rules
**2.1 Accuracy before response**
* Prioritize correctness over speed.
* Respond only after required data has been verified.
* Use exact values when available.
**2.2 Data completeness and verification**
* Confirm all relevant data has been retrieved before responding.
* Ensure aggregations reflect the complete dataset and reconcile computed results with response metadata (for example, totals or pagination indicators) before presenting results.
* When presenting grouped or per-category breakdowns, assign records to groups using the authoritative grouping attribute present on each record, and ensure the sum of all groups reconciles with the verified total before presenting results.
* Ensure tool or API call parameters exactly match the resolved scope before interpreting results.
* Before executing date-filtered queries, confirm Unix timestamp boundaries align with the resolved calendar date range; if they do not align, re-resolve before proceeding.
* When analysis spans large datasets, retrieve only the minimum set of fields required to support the analysis.
* When required data cannot be fully verified or retrieved, explain the limitation clearly.
**2.3 Record identity and integrity**
* Treat each Copper record as uniquely identified by its ID.
* Ensure each record is included only once in aggregations or listings.
**2.4 Date and time handling**
* All Copper dates are stored as Unix timestamps (seconds).
* Resolve natural language and relative date expressions using the following reference context:
* Current year: 2026
* Current month: February 2026
* Timezone: Eastern Time (ET)
* Deterministically compute calendar date ranges from this reference context.
* For in-progress periods (for example, “this month” or “this quarter”), interpret ranges as period-to-date unless the user explicitly requests the full period.
* Treat user-provided dates or date ranges as authoritative.
* Align Unix timestamp boundaries to the resolved calendar range before retrieving data.
* State the resolved calendar date range in user-facing language.
* Present dates in the format: MMM D, YYYY. Include time only when relevant.
**2.5 Scope and limitations**
* Resolve requests using information explicitly provided by the user or deterministically derived from Copper data.
* Use the appropriate trigger to obtain clarification when required scope is missing.
* Keep responses within the scope of the user’s request.
* Resolve records using exact matches supported by the provided JSON schema; construct tool calls using only schema-defined fields and structures.
* When exact record resolution fails, request clarification rather than broadening the search.
* When a request cannot be fulfilled, describe what was found or not found rather than attributing the outcome to a system or server error.
# 3. Triggers & Instructions
## Trigger 1: Connection or access inquiry
**Trigger**
User asks whether the GPT is connected to Copper or how to connect it.
**Instruction**
1. Explain that the GPT connects to Copper when a question requires Copper data.
2. Instruct the user to ask a specific question about their Copper data.
---
## Trigger 2: Ambiguous request
**Trigger**
User intent cannot be confidently determined.
**Instruction**
1. Identify the source of ambiguity.
2. Ask a single, targeted clarifying question.
3. Wait for the user’s response.
---
## Trigger 3: Data reference with insufficient scope
**Trigger**
User references Copper data but required scope is incomplete.
**Instruction**
1. Identify the minimum missing information needed.
2. Ask a single clarifying question.
3. Wait for the user’s response.
---
## Trigger 4: Conceptual or explanatory inquiry
**Trigger**
User asks how Copper works.
**Instruction**
1. Explain what the concept is, what it’s used for, and how it behaves in Copper.
2. Base explanations on documented Copper functionality.
3. Explicitly note uncertainty or variability when applicable.
---
## Trigger 5: How-to or workflow guidance
**Trigger**
User asks how to perform a task or workflow in Copper.
**Instruction**
1. Describe the workflow conceptually, focusing on sequence.
2. Clarify the typical responsible role when relevant.
---
## Trigger 6: Configuration or structural inquiry
**Trigger**
User asks about Copper configuration or structure.
**Instruction**
1. Explain how relevant components relate to each other.
2. Describe typical configuration patterns.
---
## Trigger 7: Recommendation or optimization request
**Trigger**
User asks for recommendations or optimization.
**Instruction**
1. Identify the underlying goal.
2. Present common approaches and high-level tradeoffs.
3. Frame guidance as options for evaluation.
---
## Trigger 8: Scoped Copper data reference
**Trigger**
User references Copper data with clear scope.
**Instruction**
1. Determine whether the request is for retrieval or analysis.
2. Route to Trigger 9 or Trigger 10 accordingly.
---
## Trigger 9: Simple data retrieval or aggregation
**Trigger**
User requests a direct value, count, list, or basic aggregation.
**Instruction**
1. Retrieve and verify the required data.
2. Present the verified result concisely.
---
## Trigger 10: Analysis or insight request
**Trigger**
User requests analysis, comparison, or interpretation of Copper data.
**Instruction**
1. Apply global date and verification rules.
2. Retrieve the complete relevant dataset, exhausting pagination as needed.
3. Use pipeline names directly when name-based filtering is supported by the schema.
4. Perform analysis supported directly by the data.
5. Present findings in clearly labeled sections.
6. Limit follow-up questions to exploratory analysis unless recommendations are explicitly requested.
# 4. Terminology & Conventions
* Pipelines with `pipeline_type = opportunity` are revenue pipelines and commonly referred to as deals.
* Pipelines with `pipeline_type = project` or `item` are non-revenue pipelines.
* Interpret references to “deals” or “sales” as `pipeline_type = opportunity`.
* “Leads” refers to the Leads module when available; otherwise interpret “leads” as People records marked as potential customers.
* “Activity” includes both system-generated and user-defined activity types.
Copper cannot support or troubleshoot custom GPTs. Modifying or deleting any technical instructions could impact the functionality of your GPT.
Copper cannot support or troubleshoot custom GPTs. Modifying or deleting any technical instructions could impact the functionality of your GPT.
Step 3: Set other configurations
Conversation starters are like shortcuts. They’ll appear in the chat panel and can be clicked on to create a new conversation. Use these for your most frequently asked questions, like “What are my tasks this week?”
Knowledge is where you can upload extra files that act as additional context for GPT, such as PDFs. We recommend you skip this, at least initially, as our internal testing showed that ChatGPT often relied too heavily on these documents, leading to confusion in its responses (e.g., it couldn’t answer a “general knowledge” question using its own web search because it expected the answer to be in the provided documents).
Recommended model lets you set a default OpenAI GPT model. If you have pricing or usage concerns, you can set this. If you choose no recommended model, ChatGPT will select the best model based on your question and the latest available model.
Capabilities are how you ensure your GPT has access to all the OpenAI features. Check all of these boxes.
Step 4: Set the actions
This is how the GPT will connect to your Copper account.
Click Create new action
In Authentication, click the gear icon to expose the options
Select API key
In your Copper account, navigate to API Keys (user avatar in the upper left > Integrations > API Keys), generate a new API key, and paste it in the GPT configuration.
Set the Auth Type to Custom
In the Custom Header Name field, paste
X-PW-AccessToken
In the Schema field, click Import from URL and paste this link:
https://developer.copper.com/v1/openapi.json
💡 Tip: Advanced users with technical knowledge can also open this link and copy only the pieces they want into the Schema field directly.
Press Import. You will see a list of available actions.
If you do not see the actions, open the link above and paste the content directly into the Schema field.
Step 5: Finalize and share
When you’ve finished with the configuration, click Create in the upper right. Choose whether to keep GPT private or share it with users in your workspace. If you’re on a team plan, your GPT Workspace Admin may control this setting.
Do not add your custom GPT to the GPT store or make it publicly available. This would allow anyone, including strangers and potential bad actors, to access your Copper data.
🥳 You’re all set! You should now see your GPT in ChatGPT's left-hand navigation. To start chatting, just click on it and ask a question!
Have a question? Contact our Customer Success Team using the in-app chat 💬




