Pipeliner CRM · Schema

Opportunity

CRMSalesAutomationPipelinesCloud

Properties

Name Type Description
is_delete_protected boolean Tells if the entity instance is protected against delete (Entities that need to be present in the system at any time). Delete action still may fail if entity is deletable, due some other additional va
id string Unique identifier of entity.
is_deleted boolean Specifies if the entity is considered deleted.
modified string Last modification time.
created string Creation time.
active_quote string Quote currently used to drive the opportunity (e.g. for synchronisation of monetary fields). Empty when no quote is active. Relation to Quote. By default it is returned as URI to related resource. Usi
currency_exchange_rates_list string Currency exchange rate list used to convert monetary fields linked to this opportunity. Empty to inherit the team space default. Relation to CurrencyExchangeRatesList. By default it is returned as URI
lead_source string How the opportunity originated (e.g. Website, Referral, Trade Show). Configurable per team space. Relation to Data. By default it is returned as URI to related resource. Using parameter 'expand', it w
oppty_type string Opportunity type that classifies this opportunity. Each type maps to one pipeline and drives which form, fields and stages apply. Relation to OpportunityType. By default it is returned as URI to relat
owner string Sales user who owns this opportunity. Relation to Client. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'Client' object for propertie
product_currency string Currency used for product line-item prices on this opportunity. Relation to Currency. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: '
product_price_list string Product price list used to populate prices for product line items added to this opportunity. Empty to use catalog defaults. Relation to ProductPriceList. By default it is returned as URI to related re
reason_of_close string Configurable reason recorded when the opportunity is archived (lost). Required when the lost form mandates it. Relation to Data. By default it is returned as URI to related resource. Using parameter '
step string Pipeline step the opportunity is currently sitting in. Reaching the last step in the pipeline marks the opportunity as won; archiving sets it to lost. Relation to Step. By default it is returned as UR
unit string Sales unit this opportunity is assigned to. Determines which team members can see the record under unit-based sharing. Relation to SalesUnit. By default it is returned as URI to related resource. Usin
active_quote_id string Id of the active quote.
closing_date string Expected or actual closing date of the opportunity.
currency_exchange_rates_list_id string Id of the currency exchange rate list applied to this opportunity.
description string Free-form description of the opportunity.
is_archived boolean True when the opportunity has been archived (lost). Archived opportunities remain readable but are hidden from active lists and cannot be edited until reactivated.
is_value_auto_calculate boolean True when value is auto-calculated from the opportunity product line items. False when the user enters value directly.
label_flag string User-set colored flag used to highlight the opportunity in lists and reports.
last_ai_buying_center_applied string Time when an AI-suggested buying center was last applied to this opportunity.
lead_source_id string Id of the lead source.
name string Name of the entity and its default text representation.
oppty_type_id string Id of the opportunity type.
owner_id string Id of the opportunity owner.
product_currency_id string Id of the product currency.
product_price_list_id string Id of the product price list.
product_sections object Product sections grouping the record's line items, as a JSON array of {"id": , "name": } objects. Validated on write. Full structure: https://graphql.api-doc.pipelinersales.com/latest/gr
quick_account_email string Free-text company email captured at opportunity creation when no Account record has been linked yet.
quick_account_name string Free-text company name captured at opportunity creation when no Account record has been linked yet.
quick_account_phone string Free-text company phone captured at opportunity creation when no Account record has been linked yet.
quick_contact_name string Free-text contact name captured at opportunity creation when no Contact record has been linked yet.
quick_email string Free-text contact email captured at opportunity creation when no Contact record has been linked yet.
quick_phone string Free-text contact phone captured at opportunity creation when no Contact record has been linked yet.
ranking integer Qualitative ranking score (1-10) the user assigns to indicate the strength of the opportunity.
reason_of_close_description string Free-form note explaining why the opportunity was archived (lost).
reason_of_close_id string Id of the reason-of-close value.
share_mode integer Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access. I
step_id string Id of the pipeline step.
table_name string Discriminator identifying the concrete record type — always "opportunity" for Opportunity records. Read-only; useful when consuming polymorphic LeadOppty results.
unit_id string Id of the sales unit.
was_qualified boolean True when the opportunity has gone through the qualification step at least once.
revision integer Revision when entity was lastly changed.
value object Monetary value of the opportunity in the team space base currency, with the foreign value and currency code preserved alongside.
oppty_recurrence string Recurrence schedule generating periodic copies of this opportunity, or empty when no recurrence is set up. Relation to OpptyRecurrence. By default it is returned as URI to related resource. Using para
revenue_schedule string Revenue schedule splitting the opportunity value across periods, or empty when revenue scheduling is not enabled for this opportunity. Relation to OpptyRevenueSchedule. By default it is returned as UR
product_relations array Product line items on this opportunity. Each entry holds the product, quantity, price and discount that contribute to the opportunity value when is_value_auto_calculate is true.
primary_contact string Primary contact of this opportunity. Set automatically from the contact relation marked as primary. Relation to Contact. By default it is returned as URI to related resource. Using parameter 'expand',
primary_account string Primary account of this opportunity. Set automatically from the account relation marked as primary. Relation to Account. By default it is returned as URI to related resource. Using parameter 'expand',
contact_relations array Contacts linked to this opportunity, including their roles and org-chart positions.
account_relations array Accounts linked to this opportunity, including the primary-account flag.
documents array Documents linked to this opportunity.
quote_relations array Quotes prepared for this opportunity.
status integer Current status of the opportunity (Open, Won, Lost). Read-only; derived from the current pipeline step and the archived flag. Integer enum value: 1 - Open, 2 - Lost, 3 - Won
qualify_date string Timestamp of when the opportunity was qualified, taken from the matching KPI event. Empty for opportunities that have not been qualified. Read-only.
won_date string Timestamp of when the opportunity was won. Setting it adjusts the underlying win event; empty for opportunities that have not been won.
lost_date string Timestamp of when the opportunity was archived (lost). Setting it adjusts the underlying loss event; empty for opportunities that have not been archived.
days_in_step integer Number of days the opportunity has been sitting in its current pipeline step. Read-only; computed by Coevera from the most recent move event and per-step timeframe history.
is_favorite boolean True when the current authenticated user has marked this opportunity as favorite. Per-user.
sharing_units array Sales units that have been granted shared access to this opportunity. Editable only when share_mode allows unit sharing.
sharing_clients array Users that have been granted shared access to this opportunity. Editable only when share_mode allows user sharing.
tags array Tag labels applied to this opportunity.
static_profiles array Saved view profiles this opportunity currently matches.
formatted_name string Display version of the opportunity name, used in lists and references.
modified_by_user string Timestamp of the most recent modification made by an end user (excluding system changes). Read-only; computed by Coevera.
View JSON Schema on GitHub

JSON Schema

pipeliner-opportunity-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/pipeliner/main/json-schema/pipeliner-opportunity-schema.json",
  "title": "Opportunity",
  "x-generated": "2026-09-22",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/pipeliner-openapi.json#/components/schemas/Opportunity",
  "properties": {
    "is_delete_protected": {
      "type": "boolean",
      "description": "Tells if the entity instance is protected against delete (Entities that need to be present in the system at any time). Delete action still may fail if entity is deletable, due some other additional validations.",
      "readOnly": true
    },
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "Unique identifier of entity.",
      "readOnly": true
    },
    "is_deleted": {
      "type": "boolean",
      "description": "Specifies if the entity is considered deleted.",
      "readOnly": true
    },
    "modified": {
      "type": "string",
      "format": "date-time",
      "description": "Last modification time.",
      "readOnly": true
    },
    "created": {
      "type": "string",
      "format": "date-time",
      "description": "Creation time."
    },
    "active_quote": {
      "type": "string",
      "format": "uri",
      "description": "Quote currently used to drive the opportunity (e.g. for synchronisation of monetary fields). Empty when no quote is active.\n\nRelation to Quote. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'Quote' object for properties."
    },
    "currency_exchange_rates_list": {
      "type": "string",
      "format": "uri",
      "description": "Currency exchange rate list used to convert monetary fields linked to this opportunity. Empty to inherit the team space default.\n\nRelation to CurrencyExchangeRatesList. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'CurrencyExchangeRatesList' object for properties."
    },
    "lead_source": {
      "type": "string",
      "format": "uri",
      "description": "How the opportunity originated (e.g. Website, Referral, Trade Show). Configurable per team space.\n\nRelation to Data. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'Data' object for properties."
    },
    "oppty_type": {
      "type": "string",
      "format": "uri",
      "description": "Opportunity type that classifies this opportunity. Each type maps to one pipeline and drives which form, fields and stages apply.\n\nRelation to OpportunityType. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'OpportunityType' object for properties."
    },
    "owner": {
      "type": "string",
      "format": "uri",
      "description": "Sales user who owns this opportunity.\n\nRelation to Client. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'Client' object for properties."
    },
    "product_currency": {
      "type": "string",
      "format": "uri",
      "description": "Currency used for product line-item prices on this opportunity.\n\nRelation to Currency. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'Currency' object for properties."
    },
    "product_price_list": {
      "type": "string",
      "format": "uri",
      "description": "Product price list used to populate prices for product line items added to this opportunity. Empty to use catalog defaults.\n\nRelation to ProductPriceList. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'ProductPriceList' object for properties."
    },
    "reason_of_close": {
      "type": "string",
      "format": "uri",
      "description": "Configurable reason recorded when the opportunity is archived (lost). Required when the lost form mandates it.\n\nRelation to Data. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'Data' object for properties."
    },
    "step": {
      "type": "string",
      "format": "uri",
      "description": "Pipeline step the opportunity is currently sitting in. Reaching the last step in the pipeline marks the opportunity as won; archiving sets it to lost.\n\nRelation to Step. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'Step' object for properties."
    },
    "unit": {
      "type": "string",
      "format": "uri",
      "description": "Sales unit this opportunity is assigned to. Determines which team members can see the record under unit-based sharing.\n\nRelation to SalesUnit. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'SalesUnit' object for properties."
    },
    "active_quote_id": {
      "type": "string",
      "format": "uuid",
      "description": "Id of the active quote."
    },
    "closing_date": {
      "type": "string",
      "format": "date",
      "description": "Expected or actual closing date of the opportunity."
    },
    "currency_exchange_rates_list_id": {
      "type": "string",
      "format": "uuid",
      "description": "Id of the currency exchange rate list applied to this opportunity."
    },
    "description": {
      "type": "string",
      "description": "Free-form description of the opportunity."
    },
    "is_archived": {
      "type": "boolean",
      "description": "True when the opportunity has been archived (lost). Archived opportunities remain readable but are hidden from active lists and cannot be edited until reactivated."
    },
    "is_value_auto_calculate": {
      "type": "boolean",
      "description": "True when value is auto-calculated from the opportunity product line items. False when the user enters value directly."
    },
    "label_flag": {
      "type": "string",
      "enum": [
        1,
        2,
        4
      ],
      "description": "User-set colored flag used to highlight the opportunity in lists and reports."
    },
    "last_ai_buying_center_applied": {
      "type": "string",
      "format": "date-time",
      "description": "Time when an AI-suggested buying center was last applied to this opportunity."
    },
    "lead_source_id": {
      "type": "string",
      "format": "uuid",
      "description": "Id of the lead source."
    },
    "name": {
      "type": "string",
      "description": "Name of the entity and its default text representation."
    },
    "oppty_type_id": {
      "type": "string",
      "format": "uuid",
      "description": "Id of the opportunity type."
    },
    "owner_id": {
      "type": "string",
      "format": "uuid",
      "description": "Id of the opportunity owner."
    },
    "product_currency_id": {
      "type": "string",
      "format": "uuid",
      "description": "Id of the product currency."
    },
    "product_price_list_id": {
      "type": "string",
      "format": "uuid",
      "description": "Id of the product price list."
    },
    "product_sections": {
      "type": "object",
      "description": "Product sections grouping the record's line items, as a JSON array of {\"id\": <UUID>, \"name\": <string>} objects. Validated on write. Full structure: https://graphql.api-doc.pipelinersales.com/latest/graphql/space/productsection.doc.html"
    },
    "quick_account_email": {
      "type": "string",
      "description": "Free-text company email captured at opportunity creation when no Account record has been linked yet."
    },
    "quick_account_name": {
      "type": "string",
      "description": "Free-text company name captured at opportunity creation when no Account record has been linked yet."
    },
    "quick_account_phone": {
      "type": "string",
      "description": "Free-text company phone captured at opportunity creation when no Account record has been linked yet."
    },
    "quick_contact_name": {
      "type": "string",
      "description": "Free-text contact name captured at opportunity creation when no Contact record has been linked yet."
    },
    "quick_email": {
      "type": "string",
      "description": "Free-text contact email captured at opportunity creation when no Contact record has been linked yet."
    },
    "quick_phone": {
      "type": "string",
      "description": "Free-text contact phone captured at opportunity creation when no Contact record has been linked yet."
    },
    "ranking": {
      "type": "integer",
      "format": "int32",
      "description": "Qualitative ranking score (1-10) the user assigns to indicate the strength of the opportunity."
    },
    "reason_of_close_description": {
      "type": "string",
      "description": "Free-form note explaining why the opportunity was archived (lost)."
    },
    "reason_of_close_id": {
      "type": "string",
      "format": "uuid",
      "description": "Id of the reason-of-close value."
    },
    "share_mode": {
      "type": "integer",
      "description": "Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit",
      "enum": [
        0,
        1,
        2,
        3
      ]
    },
    "step_id": {
      "type": "string",
      "format": "uuid",
      "description": "Id of the pipeline step."
    },
    "table_name": {
      "type": "string",
      "description": "Discriminator identifying the concrete record type — always \"opportunity\" for Opportunity records. Read-only; useful when consuming polymorphic LeadOppty results.",
      "readOnly": true
    },
    "unit_id": {
      "type": "string",
      "format": "uuid",
      "description": "Id of the sales unit."
    },
    "was_qualified": {
      "type": "boolean",
      "description": "True when the opportunity has gone through the qualification step at least once."
    },
    "revision": {
      "type": "integer",
      "format": "int32",
      "description": "Revision when entity was lastly changed."
    },
    "value": {
      "type": "object",
      "properties": {
        "base_value": {
          "type": "number",
          "format": "double",
          "description": "Currency."
        },
        "currency_id": {
          "type": "string",
          "format": "uuid",
          "description": "Relation to single entity instance."
        },
        "value_foreign": {
          "type": "number",
          "format": "double",
          "description": "Decimal number."
        }
      },
      "required": [
        "base_value",
        "currency_id",
        "value_foreign"
      ],
      "description": "Monetary value of the opportunity in the team space base currency, with the foreign value and currency code preserved alongside."
    },
    "oppty_recurrence": {
      "type": "string",
      "format": "uri",
      "description": "Recurrence schedule generating periodic copies of this opportunity, or empty when no recurrence is set up.\n\nRelation to OpptyRecurrence. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'OpptyRecurrence' object for properties."
    },
    "revenue_schedule": {
      "type": "string",
      "format": "uri",
      "description": "Revenue schedule splitting the opportunity value across periods, or empty when revenue scheduling is not enabled for this opportunity.\n\nRelation to OpptyRevenueSchedule. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'OpptyRevenueSchedule' object for properties."
    },
    "product_relations": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uri",
        "description": "Relation to OpptyProductRelation. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'OpptyProductRelation' object for properties."
      },
      "description": "Product line items on this opportunity. Each entry holds the product, quantity, price and discount that contribute to the opportunity value when is_value_auto_calculate is true."
    },
    "primary_contact": {
      "type": "string",
      "format": "uri",
      "description": "Primary contact of this opportunity. Set automatically from the contact relation marked as primary.\n\nRelation to Contact. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'Contact' object for properties."
    },
    "primary_account": {
      "type": "string",
      "format": "uri",
      "description": "Primary account of this opportunity. Set automatically from the account relation marked as primary.\n\nRelation to Account. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'Account' object for properties."
    },
    "contact_relations": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uri",
        "description": "Relation to LeadOpptyContactRelation. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'LeadOpptyContactRelation' object for properties."
      },
      "description": "Contacts linked to this opportunity, including their roles and org-chart positions."
    },
    "account_relations": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uri",
        "description": "Relation to LeadOpptyAccountRelation. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'LeadOpptyAccountRelation' object for properties."
      },
      "description": "Accounts linked to this opportunity, including the primary-account flag."
    },
    "documents": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uri",
        "description": "Relation to CloudObjectRelation. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'CloudObjectRelation' object for properties."
      },
      "description": "Documents linked to this opportunity."
    },
    "quote_relations": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uri",
        "description": "Relation to Quote. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'Quote' object for properties."
      },
      "description": "Quotes prepared for this opportunity."
    },
    "status": {
      "type": "integer",
      "description": "Current status of the opportunity (Open, Won, Lost). Read-only; derived from the current pipeline step and the archived flag.\n\nInteger enum value: 1 - Open, 2 - Lost, 3 - Won",
      "enum": [
        1,
        2,
        3
      ],
      "readOnly": true
    },
    "qualify_date": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp of when the opportunity was qualified, taken from the matching KPI event. Empty for opportunities that have not been qualified. Read-only."
    },
    "won_date": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp of when the opportunity was won. Setting it adjusts the underlying win event; empty for opportunities that have not been won."
    },
    "lost_date": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp of when the opportunity was archived (lost). Setting it adjusts the underlying loss event; empty for opportunities that have not been archived."
    },
    "days_in_step": {
      "type": "integer",
      "format": "int32",
      "description": "Number of days the opportunity has been sitting in its current pipeline step. Read-only; computed by Coevera from the most recent move event and per-step timeframe history."
    },
    "is_favorite": {
      "type": "boolean",
      "description": "True when the current authenticated user has marked this opportunity as favorite. Per-user."
    },
    "sharing_units": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uri",
        "description": "Relation to LeadOpptySharingSalesUnitRelation. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'LeadOpptySharingSalesUnitRelation' object for properties."
      },
      "description": "Sales units that have been granted shared access to this opportunity. Editable only when share_mode allows unit sharing."
    },
    "sharing_clients": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uri",
        "description": "Relation to LeadOpptySharingClientRelation. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'LeadOpptySharingClientRelation' object for properties."
      },
      "description": "Users that have been granted shared access to this opportunity. Editable only when share_mode allows user sharing."
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uri",
        "description": "Relation to TagRelation. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'TagRelation' object for properties."
      },
      "description": "Tag labels applied to this opportunity."
    },
    "static_profiles": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uri",
        "description": "Relation to ProfileRelation. By default it is returned as URI to related resource. Using parameter 'expand', it will return full entity. See: 'ProfileRelation' object for properties."
      },
      "description": "Saved view profiles this opportunity currently matches."
    },
    "formatted_name": {
      "type": "string",
      "description": "Display version of the opportunity name, used in lists and references."
    },
    "modified_by_user": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp of the most recent modification made by an end user (excluding system changes). Read-only; computed by Coevera."
    }
  },
  "required": [
    "is_delete_protected",
    "id",
    "oppty_type",
    "owner",
    "product_currency",
    "step",
    "unit",
    "closing_date",
    "name",
    "owner_id",
    "step_id",
    "table_name",
    "value",
    "status",
    "days_in_step",
    "is_favorite",
    "formatted_name"
  ]
}

Work with this as data

Every JSON Schema 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 schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • 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 JSON Schema
curl "https://apis.io/api/v1/json-schemas/pipeliner-opportunity"
All schemas
curl "https://apis.io/api/v1/json-schemas?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.