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

# Get outreach data

> Returns citation opportunities for the specified brand. These are high-impact recommendations
for citation wins, including:
- **Low-hanging fruit**: Existing articles where competitors are cited but your brand isn't
- **Publication gaps**: High-value domains that could be pitched for new articles

Opportunities include detailed analysis, pitch templates, contact information, and strategic recommendations.
Results are sorted by priority score and paginated.




## OpenAPI

````yaml openapi.yaml get /get-outreach
openapi: 3.0.0
info:
  title: Trakkr API
  description: Monitor your brand visibility and presence across AI models and prompts
  version: 1.0.0
  contact:
    name: Trakkr Support
    email: mack@trakkr.ai
    url: https://learn.trakkr.ai
  license:
    name: Proprietary
    url: https://trakkr.ai/
servers:
  - url: https://api.trakkr.ai
    description: Production server
security:
  - bearerAuth: []
paths:
  /get-outreach:
    get:
      summary: Get outreach data
      description: >
        Returns citation opportunities for the specified brand. These are
        high-impact recommendations

        for citation wins, including:

        - **Low-hanging fruit**: Existing articles where competitors are cited
        but your brand isn't

        - **Publication gaps**: High-value domains that could be pitched for new
        articles


        Opportunities include detailed analysis, pitch templates, contact
        information, and strategic recommendations.

        Results are sorted by priority score and paginated.
      operationId: getOutreach
      parameters:
        - name: brand
          in: query
          required: true
          schema:
            type: string
            pattern: ^[0-9a-fx]{32}$
            minLength: 32
            maxLength: 32
          description: The brand ID (32-character hexadecimal string)
          example: 0000000000000x000000000000000000
        - name: opportunity_type
          in: query
          required: false
          schema:
            type: string
            enum:
              - low-hanging-fruit
              - publication-gap
          description: Filter by opportunity type
          example: low-hanging-fruit
        - name: status
          in: query
          required: false
          schema:
            type: string
            enum:
              - New
              - In Progress
              - Done
              - Archived
          description: Filter by opportunity status
          example: New
        - name: difficulty
          in: query
          required: false
          schema:
            type: string
            enum:
              - Easy
              - Medium
              - Hard
          description: Filter by difficulty level
          example: Easy
        - name: domain
          in: query
          required: false
          schema:
            type: string
          description: Filter by domain (substring match)
          example: forbes.com
        - name: archived
          in: query
          required: false
          schema:
            type: boolean
          description: 'Include archived opportunities (default: false)'
          example: false
        - name: sort_by
          in: query
          required: false
          schema:
            type: string
            enum:
              - priority_score
              - fit_score
              - last_seen
            default: priority_score
          description: Sort opportunities by field
          example: priority_score
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 500
            default: 100
          description: Number of items per page (1-500)
          example: 100
        - name: cursor
          in: query
          required: false
          schema:
            type: string
          description: Pagination cursor from previous response
          example: MTA=
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OutreachResponse'
              examples:
                outreach_example:
                  $ref: '#/components/examples/OutreachExample'
        '400':
          description: Bad Request - Missing or invalid parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '500':
          $ref: '#/components/responses/InternalServerError'
      security:
        - bearerAuth: []
components:
  schemas:
    OutreachResponse:
      type: object
      required:
        - brand_id
        - opportunities
        - pagination
      properties:
        brand_id:
          type: string
          description: The brand ID
          example: 1749113348709x432280934699237400
        opportunities:
          type: array
          description: Array of outreach opportunity objects
          items:
            $ref: '#/components/schemas/OutreachOpportunity'
        pagination:
          $ref: '#/components/schemas/PaginationMetadata'
    Error:
      type: object
      required:
        - error
        - timestamp
      properties:
        error:
          type: string
          description: Error code
          example: INVALID_PARAMETER
        message:
          type: string
          description: Human-readable error message
          example: The 'brand' parameter is required
        errors:
          type: array
          description: Array of error messages (alternative to details)
          items:
            type: string
        details:
          type: array
          items:
            type: object
            properties:
              field:
                type: string
                description: Field that caused the error
              message:
                type: string
                description: Specific error message for this field
          description: Detailed error information
        timestamp:
          type: string
          format: date-time
          description: When the error occurred
          example: '2025-01-15T12:30:00Z'
        request_id:
          type: string
          description: Unique request identifier for debugging
          example: req_1234567890
    OutreachOpportunity:
      type: object
      description: Citation opportunity with analysis, pitch template, and contact info
      properties:
        _id:
          type: string
          description: Bubble record ID
          example: 1751366661128x982280299254958800
        unique_key:
          type: string
          description: Unique identifier for deduplication
          example: low-hanging-fruit:forbes.com/article-slug
        opportunity_type:
          type: string
          enum:
            - low-hanging-fruit
            - publication-gap
          description: Type of opportunity
          example: low-hanging-fruit
        url:
          type: string
          description: Target URL (for low-hanging fruit)
          example: https://www.forbes.com/best-running-shoes-2025
        domain:
          type: string
          description: Target domain
          example: forbes.com
        title:
          type: string
          description: Article or opportunity title
          example: Best Running Shoes for Marathon Training in 2025
        content_type:
          type: string
          description: Type of content
          example: Listicle
        language:
          type: string
          description: Content language
          example: English
        country:
          type: string
          nullable: true
          description: Target country
          example: United States
        status:
          type: string
          enum:
            - New
            - In Progress
            - Done
            - Archived
          description: Opportunity status
          example: New
        archived:
          type: boolean
          description: Whether opportunity is archived
          example: false
        difficulty:
          type: string
          enum:
            - Easy
            - Medium
            - Hard
          description: Difficulty level
          example: Medium
        strategy_name:
          type: string
          description: Recommended strategy
          example: Direct Pitch to Author
        topics_covered:
          type: array
          description: Topics covered in the content
          items:
            type: string
          example:
            - marathon training
            - running gear
            - footwear reviews
        site_type:
          type: string
          description: Type of publication
          example: Business News & Analysis
        audience_profile:
          type: string
          description: Target audience description
          example: Business professionals and entrepreneurs aged 25-54
        content_style:
          type: string
          description: Editorial style
          example: Data-driven analysis with expert interviews
        competitors:
          type: array
          description: Competing brands mentioned
          items:
            type: string
          example:
            - Adidas
            - Hoka One One
            - ASICS
        competitor_count:
          type: integer
          description: Number of competitors mentioned
          example: 5
        gap_analysis:
          type: string
          description: Why brand is missing from the conversation
          example: >-
            Article focuses on established brands but doesn't mention emerging
            innovations
        why_competitors_win:
          type: string
          description: Why competitors are cited
          example: >-
            They have strong relationships with the publication and provide
            exclusive data
        brand_angle:
          type: string
          description: Recommended angle for the brand
          example: >-
            Highlight Nike's sustainability initiatives and carbon-negative
            products
        fit_score:
          type: integer
          minimum: 0
          maximum: 100
          description: Brand fit score (0-100)
          example: 85
        topics_aligned:
          type: array
          description: Topics that align with brand
          items:
            type: string
          example:
            - performance
            - innovation
            - athlete endorsements
        audience_match:
          type: string
          description: How audience matches brand
          example: >-
            High overlap with Nike's target demographic of active lifestyle
            enthusiasts
        why_relevant:
          type: string
          description: Why this opportunity is relevant to the brand
          example: Strong alignment with Nike's brand values and target market
        pitch_subject:
          type: string
          description: Suggested email subject line
          example: Nike's Innovation in Sustainable Running Footwear
        pitch_body:
          type: string
          description: Complete pitch email template
          example: |-
            Hi [Author Name],

            I noticed your recent article...
        author_name:
          type: string
          nullable: true
          description: Content author name
          example: John Smith
        contact_emails:
          type: array
          description: >-
            Contact email addresses (may include " CATCH" suffix for catch-all
            emails)
          items:
            type: string
          example:
            - john.smith@forbes.com
            - tips@forbes.com CATCH
        contact_confidence:
          type: string
          description: Confidence level for contact info
          example: High
        appearance_count:
          type: integer
          description: Times this content appeared in results
          example: 15
        prompt_count:
          type: integer
          description: Number of prompts that surfaced this
          example: 3
        query_count:
          type: integer
          description: Number of queries that surfaced this
          example: 8
        priority_score:
          type: integer
          minimum: 0
          maximum: 100
          description: Overall priority score for outreach
          example: 92
        brand_citations_on_prompt:
          type: integer
          description: Brand citations on related prompts
          example: 2
        competitor_citations_on_prompt:
          type: integer
          description: Competitor citations on related prompts
          example: 12
        original_prompts:
          type: array
          description: Original prompts (low-hanging fruit)
          items:
            type: string
          example:
            - best marathon shoes
            - top running gear 2025
        search_queries:
          type: array
          description: Search queries that found this (low-hanging fruit)
          items:
            type: string
          example:
            - 'best marathon shoes 2025: 5'
            - 'running gear reviews: 3'
        weak_prompt:
          type: string
          nullable: true
          description: Prompt where brand is weak (publication gap)
          example: best sustainable running shoes
        competitors_winning:
          type: array
          description: Competitors dominating this space (publication gap)
          items:
            type: string
          example:
            - Allbirds
            - Veja
        instructions:
          type: array
          description: Step-by-step outreach instructions
          items:
            type: string
          example:
            - Research author's recent articles
            - Personalize pitch with specific data points
        what_itll_do:
          type: string
          description: Expected outcome of pursuing this opportunity
          example: >-
            Secure a mention in a high-authority article reaching 500K+ monthly
            readers
        last_seen_date:
          type: string
          format: date-time
          description: When this opportunity was last seen
          example: '2025-11-13T10:30:00Z'
        Created Date:
          type: string
          format: date-time
          description: When opportunity was created
          example: '2025-11-13T10:30:00Z'
        Modified Date:
          type: string
          format: date-time
          description: When opportunity was last modified
          example: '2025-11-13T10:30:00Z'
    PaginationMetadata:
      type: object
      required:
        - limit
        - has_more
        - next_cursor
      properties:
        limit:
          type: integer
          description: Items per page
          example: 100
        has_more:
          type: boolean
          description: Whether more results exist
          example: true
        next_cursor:
          type: string
          nullable: true
          description: Cursor for next page (null if no more results)
          example: MTA=
  examples:
    OutreachExample:
      summary: Outreach opportunities response example
      value:
        brand_id: 1749113348709x432280934699237400
        opportunities:
          - _id: 1751366661128x982280299254958800
            unique_key: low-hanging-fruit:forbes.com/best-running-shoes-2025
            opportunity_type: low-hanging-fruit
            url: https://www.forbes.com/best-running-shoes-2025
            domain: forbes.com
            title: Best Running Shoes for Marathon Training in 2025
            status: New
            difficulty: Medium
            priority_score: 92
            fit_score: 88
            pitch_subject: Nike's Innovation in Sustainable Marathon Footwear
            competitors:
              - Adidas
              - Hoka One One
              - ASICS
            contact_emails:
              - sarah.johnson@forbes.com
            last_seen_date: '2025-11-13T10:30:00Z'
          - _id: 1751366662000x123456789012345600
            unique_key: publication-gap:wired.com:sustainability
            opportunity_type: publication-gap
            domain: wired.com
            title: 'Pitch: Sustainable Running Shoes Innovation Story'
            status: New
            difficulty: Hard
            priority_score: 78
            fit_score: 82
            weak_prompt: best sustainable running shoes
            competitors_winning:
              - Allbirds
              - Veja
            last_seen_date: '2025-11-13T10:30:00Z'
        pagination:
          limit: 100
          has_more: false
          next_cursor: null
  responses:
    Unauthorized:
      description: Unauthorized - Invalid or missing API key
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: UNAUTHORIZED
            message: Missing API key
            errors:
              - >-
                API key must be provided in the Authorization header as 'Bearer
                <api_key>'
            timestamp: '2025-01-15T12:30:00Z'
            request_id: req_1234567890
    Forbidden:
      description: Forbidden - Access denied to this resource
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: FORBIDDEN
            message: Invalid API key
            errors:
              - No accounts found for this API key
            timestamp: '2025-01-15T12:30:00Z'
            request_id: req_1234567890
    InternalServerError:
      description: Internal Server Error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: INTERNAL_ERROR
            message: An unexpected error occurred
            errors:
              - 'An unexpected error occurred: Database connection failed'
            timestamp: '2025-01-15T12:30:00Z'
            request_id: req_1234567890
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >
        API key authentication. Include your API key in the Authorization
        header:

        `Authorization: Bearer YOUR_API_KEY`

````