> ## Documentation Index
> Fetch the complete documentation index at: https://docs.attention.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Update Team Opportunity

> Creates or updates an opportunity record associated with a team. If an opportunity with the given ID already exists for the team, it is updated; otherwise a new one is created.



## OpenAPI

````yaml put /teams/{id}/opportunity
openapi: 3.0.1
info:
  title: Attention Service V2
  description: Attention Service API V2
  termsOfService: https://www.attention.com/terms-of-use
  contact:
    name: Attention Team
    url: https://docs.attention.com/welcome
    email: support@attention.com
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  version: 1.8.0
servers:
  - url: https://api.attention.tech/v2
security:
  - APIKeyHeader: []
paths:
  /teams/{id}/opportunity:
    put:
      tags:
        - Team
        - Opportunity
      summary: Update Team Opportunity
      description: >-
        Creates or updates an opportunity record associated with a team. If an
        opportunity with the given ID already exists for the team, it is
        updated; otherwise a new one is created.
      operationId: updateTeamOpportunity
      parameters:
        - name: id
          in: path
          description: UUID of the team
          required: true
          schema:
            type: string
      requestBody:
        description: Opportunity details to upsert
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateTeamOpportunityRequest'
          application/vnd.api+json:
            schema:
              $ref: '#/components/schemas/UpdateTeamOpportunityRequest'
        required: true
      responses:
        '200':
          description: Opportunity created or updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateTeamOpportunityResponse'
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/UpdateTeamOpportunityResponse'
        '400':
          description: Invalid request parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Authentication failed - valid API key required
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Error'
        default:
          description: Unexpected error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    UpdateTeamOpportunityRequest:
      required:
        - opportunity_id
        - title
      type: object
      properties:
        opportunity_id:
          type: string
          description: External CRM opportunity ID to upsert
          example: opp_xyz789
        title:
          type: string
          description: Display title for the opportunity
          example: Enterprise Deal - Acme Corp
      example:
        opportunity_id: opp_xyz789
        title: Enterprise Deal - Acme Corp
    UpdateTeamOpportunityResponse:
      type: object
      properties:
        id:
          type: string
          description: UUID of the created or updated opportunity record
          example: rec_abc123
      example:
        id: rec_abc123
    Error:
      type: object
      properties:
        id:
          type: string
          description: A unique identifier for the error.
        status:
          type: string
          description: >-
            The HTTP status code applicable to this problem, expressed as a
            string value.
        code:
          type: string
          description: An application-specific error code, expressed as a string value.
        title:
          type: string
          description: A short, human-readable summary of the problem.
        detail:
          type: string
          description: >-
            A human-readable explanation specific to this occurrence of the
            problem.
        source:
          type: object
          properties:
            pointer:
              type: string
            parameter:
              type: string
        meta:
          type: object
          properties: {}
      example:
        id: not_found_error
        status: '404'
        code: '404'
        title: Not Found Error
        detail: The requested resource was not found
        source:
          pointer: /data/attributes/id
  securitySchemes:
    APIKeyHeader:
      type: apiKey
      name: Authorization
      in: header

````