Parcha Admin - Profiler Testing API

The Admin - Profiler Testing API from Parcha — 1 operation(s) for admin - profiler testing.

OpenAPI Specification

parcha-admin-profiler-testing-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Parcha Admin Admin - Profiler Testing API
  version: 1.0.0
  description: API for managing Parcha jobs and checks
servers:
- url: https://api.parcha.ai/api/v1
  description: Agent Hub API server
- url: https://demo.parcha.ai/api/v1
  description: Sandbox API server
- url: https://us1.parcha.ai/api/v1
  description: Legacy API server
- url: http://{your-company-domain}.parcha.ai/api/v1
  description: Custom Enterpris server (your company's API server)
security:
- bearerAuth: []
tags:
- name: Admin - Profiler Testing
paths:
  /admin/profiler/test:
    post:
      tags:
      - Admin - Profiler Testing
      summary: Test Web Profiler
      operationId: test_web_profiler_admin_profiler_test_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WebProfilerTestRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebProfilerTestResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    SimpleProductsAndServices:
      properties:
        products_and_services_summary:
          anyOf:
          - type: string
          - type: 'null'
          title: Products And Services Summary
          description: A paragraph with the products and services offered by the business. There will be a list, this should be an introduction to that list.
        products_and_services_list:
          anyOf:
          - items:
              $ref: '#/components/schemas/ProductOrServiceItem'
            type: array
          - type: 'null'
          title: Products And Services List
          description: A list of the products and services offered by the business and their descriptions
      type: object
      title: SimpleProductsAndServices
    WebProfilerTestRequest:
      properties:
        business_name:
          type: string
          title: Business Name
          description: The name of the business to profile.
        official_websites:
          items:
            type: string
          type: array
          title: Official Websites
          description: A list of official website URLs for the business.
        job_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Job Id
          description: Optional Job ID to track the profiler run.
        platforms_to_search:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Platforms To Search
          description: List of platforms to search (e.g., ['yelp', 'google_places']). Empty list means no platform search.
        platform_finder_addresses:
          anyOf:
          - items:
              $ref: '#/components/schemas/PlatformFinderAddressInput'
            type: array
          - type: 'null'
          title: Platform Finder Addresses
          description: Specific addresses for Platform Finder.
        platforms_to_search_pf:
          anyOf:
          - items:
              $ref: '#/components/schemas/BusinessReviewType'
            type: array
          - type: 'null'
          title: Platforms To Search Pf
          description: Specific platforms for Platform Finder to search.
        max_urls_to_analyze:
          anyOf:
          - type: integer
          - type: 'null'
          title: Max Urls To Analyze
          description: Max URLs from initial scrape to deep scrape.
        serp_profiles:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Serp Profiles
          description: Whether to perform SERP for social/platform profiles.
        enable_embeddings_storage:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Enable Embeddings Storage
          description: Enable storage of embeddings.
      type: object
      required:
      - business_name
      - official_websites
      title: WebProfilerTestRequest
    ProfileStatus:
      type: string
      enum:
      - not_started
      - in_progress
      - completed
      title: ProfileStatus
    TraceNode:
      properties:
        id:
          type: string
          title: Id
          description: Unique identifier for the node.
        name:
          type: string
          title: Name
          description: Human-readable name for the step (e.g., 'Scrape Website', 'Call PDL API').
        status:
          type: string
          title: Status
          description: Current status of the step (e.g., pending, running, completed, failed).
          default: pending
        start_time:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Start Time
          description: Timestamp when the step started execution.
        end_time:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: End Time
          description: Timestamp when the step finished execution.
        details:
          type: object
          title: Details
          description: Arbitrary key-value pairs for additional context (e.g., url, task_id, error_message).
        parent_ids:
          items:
            type: string
          type: array
          title: Parent Ids
          description: List of node IDs that must complete before this node can start, representing dependencies.
      type: object
      required:
      - name
      title: TraceNode
      description: Represents a single step or operation in a workflow trace.
    WorkflowTrace:
      properties:
        workflow_name:
          type: string
          title: Workflow Name
          description: Name of the overall workflow (e.g., 'WebProfiler').
        start_time:
          type: string
          format: date-time
          title: Start Time
        end_time:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: End Time
        nodes:
          items:
            $ref: '#/components/schemas/TraceNode'
          type: array
          title: Nodes
          description: List of all nodes in the trace.
      type: object
      required:
      - workflow_name
      title: WorkflowTrace
      description: Represents the entire trace graph for a workflow execution.
    AddressWithType:
      properties:
        type:
          type: string
          title: Type
          description: The type of the model
          exclude_from_llm: true
        street_1:
          anyOf:
          - type: string
          - type: 'null'
          title: Street 1
          description: The first line of the street address
          examples:
          - 123 Main St
        street_2:
          anyOf:
          - type: string
          - type: 'null'
          title: Street 2
          description: The second line of the street address
          examples:
          - Apt 4B
        city:
          anyOf:
          - type: string
          - type: 'null'
          title: City
          description: The city of the address
          examples:
          - Anytown
        state:
          anyOf:
          - type: string
          - type: 'null'
          title: State
          description: The state of the address
          examples:
          - AnyState
        country_code:
          anyOf:
          - type: string
          - type: 'null'
          title: Country Code
          description: The country of the address as 2-letter code (ISO 3166-1 alpha-2)
          examples:
          - US
        postal_code:
          anyOf:
          - type: string
          - type: 'null'
          title: Postal Code
          description: The postal code of the address
          examples:
          - '54321'
        address_type:
          anyOf:
          - $ref: '#/components/schemas/AddressType'
          - type: 'null'
          description: The type of address
      type: object
      required:
      - type
      title: AddressWithType
    AlternateBusiness:
      properties:
        business_name:
          type: string
          title: Business Name
          description: Name of the alternate business
        description:
          type: string
          title: Description
          description: Brief description of what this business does
        website:
          anyOf:
          - type: string
          - type: 'null'
          title: Website
          description: Website URL if found
        address_of_operation:
          anyOf:
          - $ref: '#/components/schemas/AddressWithType'
          - type: 'null'
          description: Operating address of this alternate business
      type: object
      required:
      - business_name
      - description
      title: AlternateBusiness
      description: Represents an alternate business found in discarded sources.
    WebProfilerTestResponse:
      properties:
        built_profile:
          anyOf:
          - $ref: '#/components/schemas/WebPresenceConsistencyCheckResult'
          - type: 'null'
          description: The final synthesized business profile.
        structured_scrape_results:
          items:
            $ref: '#/components/schemas/ScannedWebsiteWithAnalysis'
          type: array
          title: Structured Scrape Results
          description: Websites where structured data (e.g., PDL, LinkedIn) was the primary source.
        unstructured_scrape_results:
          items:
            $ref: '#/components/schemas/ScannedWebsiteWithAnalysis'
          type: array
          title: Unstructured Scrape Results
          description: Websites scraped for text/HTML content and analyzed.
        error_log:
          items:
            type: string
          type: array
          title: Error Log
          description: Log of errors encountered during the profiling process.
        trace:
          anyOf:
          - $ref: '#/components/schemas/WorkflowTrace'
          - type: 'null'
          description: Workflow execution trace providing a step-by-step graph.
      type: object
      required:
      - structured_scrape_results
      - unstructured_scrape_results
      - error_log
      title: WebProfilerTestResponse
    ScannedWebsite:
      properties:
        type:
          type: string
          title: Type
          description: The type of the model
          exclude_from_llm: true
        source_id:
          type: string
          title: Source Id
          description: The source id of the webpage.
        source_name:
          anyOf:
          - type: string
          - type: 'null'
          title: Source Name
          description: The source name of the webpage.
        language:
          anyOf:
          - type: string
          - type: 'null'
          title: Language
          description: The language of the webpage.
        webpage_url:
          anyOf:
          - type: string
          - type: 'null'
          title: Webpage Url
        webpage_title:
          anyOf:
          - type: string
          - type: 'null'
          title: Webpage Title
        webpage_text:
          anyOf:
          - type: string
          - type: 'null'
          title: Webpage Text
        webpage_urls:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Webpage Urls
          description: The urls inside the webpage.
          exclude_from_llm: true
        screenshot_url:
          anyOf:
          - type: string
          - type: 'null'
          title: Screenshot Url
        is_valid_url:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Is Valid Url
          description: Whether the URL is valid and could be opened.
        response_code:
          anyOf:
          - type: integer
          - type: 'null'
          title: Response Code
          description: The response code of the URL.
          default: 200
        search_snippet:
          anyOf:
          - type: string
          - type: 'null'
          title: Search Snippet
          description: The search snippet of the URL.
        is_relevant:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Is Relevant
          description: Whether the URL is relevant to business or person being searched.
        content_type:
          anyOf:
          - type: string
          - type: 'null'
          title: Content Type
          description: The content type of the URL.
        urls_with_context:
          anyOf:
          - items:
              $ref: '#/components/schemas/UrlWithContext'
            type: array
          - type: 'null'
          title: Urls With Context
          description: The urls with context of the webpage.
          exclude_from_llm: true
        webpage_structured_scrape:
          anyOf:
          - type: object
          - type: 'null'
          title: Webpage Structured Scrape
          description: The structured scrape of the webpage
        scrape_type:
          $ref: '#/components/schemas/ScrapeType'
          description: The type of webpage scrape
          default: generic
        publication_date:
          anyOf:
          - type: string
          - type: 'null'
          title: Publication Date
          description: The publication date of the webpage.
        publication_date_source:
          anyOf:
          - type: string
          - type: 'null'
          title: Publication Date Source
          description: The source of the publication date of the webpage.
        pdf_snapshot_url:
          anyOf:
          - type: string
          - type: 'null'
          title: Pdf Snapshot Url
          description: The URL of the PDF snapshot of the webpage.
        cloudflare_encountered:
          type: boolean
          title: Cloudflare Encountered
          description: Whether Cloudflare protection was encountered during scraping
          default: false
        error:
          anyOf:
          - type: string
          - type: 'null'
          title: Error
          description: Error message if any error occurred during scraping
      type: object
      required:
      - type
      title: ScannedWebsite
    WebPresenceConsistencyCheckResult:
      properties:
        business_name:
          anyOf:
          - $ref: '#/components/schemas/FoundDocBusinessName'
          - type: 'null'
          description: The name of the business that the webpages are about.
        alternate_business_names:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Alternate Business Names
          description: List of alternate business names including DBAs (Doing Business As), trade names, or operating names found with strong signals. ONLY include names with explicit DBA/trade name indicators, NOT partners, customers, or similar businesses.
          examples:
          - XYZ Services
          - Quick Solutions
          - FastTech
        business_description:
          anyOf:
          - items:
              $ref: '#/components/schemas/FoundDocBusinessDescription'
            type: array
          - type: 'null'
          title: Business Description
          description: The comprehensive description about the business, in one or more paragraphs. Each paragraph should be a separate string in the list.
        business_products_and_services:
          anyOf:
          - $ref: '#/components/schemas/FoundDocStructuredProductsAndServices'
          - type: 'null'
          description: A detailed description of the products and services the business offers.
        business_customers:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Business Customers
          description: The customers of the business
          examples:
          - Customer 1
          - Customer 2
        business_country_code:
          anyOf:
          - type: string
          - type: 'null'
          title: Business Country Code
          description: The most likely country code of the business
        keywords:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Keywords
          description: The keywords that would be most relevant to the business when searching for it on the web and in documents
        associated_individuals:
          items:
            $ref: '#/components/schemas/FoundDocSimpleAssociatedIndividual'
          type: array
          title: Associated Individuals
          description: The associated individuals of the business
        addresses_found:
          anyOf:
          - items:
              $ref: '#/components/schemas/FoundDocNonStrictAddress'
            type: array
          - type: 'null'
          title: Addresses Found
          description: Addresses found across all relevant webpages, with source evidence.
        type:
          type: string
          title: Type
          description: The type of the model
          exclude_from_llm: true
        profile_confidence:
          $ref: '#/components/schemas/ConfidenceTier'
          description: The confidence you had in the generating this profile, from low to high
        profile_status:
          anyOf:
          - $ref: '#/components/schemas/ProfileStatus'
          - type: 'null'
          description: The status of the business profile report
          exclude_from_llm: true
        alternate_businesses:
          items:
            $ref: '#/components/schemas/AlternateBusiness'
          type: array
          title: Alternate Businesses
          description: List of other businesses found in discarded sources that might be related or confused with the target business
        source_ids_to_discard:
          items:
            type: string
          type: array
          title: Source Ids To Discard
          description: List of source_ids that should NOT be stored in GCS because they are about different businesses or completely irrelevant
      type: object
      required:
      - type
      - profile_confidence
      title: WebPresenceConsistencyCheckResult
      description: This class represents the results for the Web Presence Consistency Check.
    FoundDocBusinessName:
      properties:
        source_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Source Id
          description: The source id for webpage source.
        evidence:
          anyOf:
          - type: string
          - type: 'null'
          title: Evidence
          description: A short citation for the source. DO NOT USE DOUBLE OR SINGLE QUOTES.
        business_name:
          anyOf:
          - type: string
          - type: 'null'
          title: Business Name
          description: The business name
      type: object
      title: FoundDocBusinessName
    WebRelevanceCheckResult:
      properties:
        type:
          type: string
          title: Type
          description: The type of the model
          exclude_from_llm: true
        reason_for_relevance:
          anyOf:
          - type: string
          - type: 'null'
          title: Reason For Relevance
          description: The reason why the webpage is relevant to the business
        reason_against_relevance:
          anyOf:
          - type: string
          - type: 'null'
          title: Reason Against Relevance
          description: The reason why the webpage could not be relevant to the business
        is_relevant:
          type: boolean
          title: Is Relevant
          description: Whether the webpage is relevant to the business
        extracted_metadata:
          anyOf:
          - $ref: '#/components/schemas/BusinessWebpageMetadataV3'
          - type: 'null'
          description: The metadata of the webpage
      type: object
      required:
      - type
      - is_relevant
      title: WebRelevanceCheckResult
    ProductOrServiceItem:
      properties:
        name:
          type: string
          title: Name
          description: The name of the product or service
        description:
          anyOf:
          - type: string
          - type: 'null'
          title: Description
          description: The description of the product or service
      type: object
      required:
      - name
      title: ProductOrServiceItem
    PlatformFinderAddressInput:
      properties:
        street_1:
          anyOf:
          - type: string
          - type: 'null'
          title: Street 1
        street_2:
          anyOf:
          - type: string
          - type: 'null'
          title: Street 2
        city:
          anyOf:
          - type: string
          - type: 'null'
          title: City
        state:
          anyOf:
          - type: string
          - type: 'null'
          title: State
        postal_code:
          anyOf:
          - type: string
          - type: 'null'
          title: Postal Code
        country_code:
          type: string
          title: Country Code
        address_type:
          $ref: '#/components/schemas/AddressType'
          default: operations
      type: object
      required:
      - country_code
      title: PlatformFinderAddressInput
    UrlWithContext:
      properties:
        url:
          type: string
          title: Url
          description: The URL of the webpage.
        context:
          anyOf:
          - type: string
          - type: 'null'
          title: Context
          description: The unstructured context of the webpage.
      type: object
      required:
      - url
      title: UrlWithContext
    FoundDocBusinessDescription:
      properties:
        sources:
          anyOf:
          - items:
              $ref: '#/components/schemas/SimpleWebSource'
            type: array
          - type: 'null'
          title: Sources
          description: The sources of the data
        description:
          anyOf:
          - type: string
          - type: 'null'
          title: Description
          description: A paragraph, part of the business description.
      type: object
      title: FoundDocBusinessDescription
    WebpageType:
      type: string
      enum:
      - official_business_website
      - personal_website
      - search_engine_result
      - adverse_media
      - social_media
      - news_article
      - customer_review
      - business_directory
      - other
      title: WebpageType
    SimpleWebSource:
      properties:
        source_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Source Id
          description: The source id
      type: object
      title: SimpleWebSource
    BusinessReviewType:
      type: string
      enum:
      - yelp
      - tripadvisor
      - better_business_bureau
      - google_place
      - trustpilot
      title: BusinessReviewType
    ai__data_loaders__schema__base__Address:
      properties:
        type:
          type: string
          title: Type
          description: The type of the model
          exclude_from_llm: true
        street_1:
          anyOf:
          - type: string
          - type: 'null'
          title: Street 1
          description: The first line of the street address
          examples:
          - 123 Main St
        street_2:
          anyOf:
          - type: string
          - type: 'null'
          title: Street 2
          description: The second line of the street address
          examples:
          - Apt 4B
        city:
          anyOf:
          - type: string
          - type: 'null'
          title: City
          description: The city of the address
          examples:
          - Anytown
        state:
          anyOf:
          - type: string
          - type: 'null'
          title: State
          description: The state of the address
          examples:
          - AnyState
        country_code:
          anyOf:
          - type: string
          - type: 'null'
          title: Country Code
          description: The country of the address as 2-letter code (ISO 3166-1 alpha-2)
          examples:
          - US
        postal_code:
          anyOf:
          - type: string
          - type: 'null'
          title: Postal Code
          description: The postal code of the address
          examples:
          - '54321'
      type: object
      required:
      - type
      title: Address
      description: Address
    BusinessWebpageMetadataV3:
      properties:
        type:
          type: string
          title: Type
          description: The type of the model
          exclude_from_llm: true
        found_business_name:
          anyOf:
          - type: string
          - type: 'null'
          title: Found Business Name
          description: The name of the business that the webpages are about.
        found_business_country:
          anyOf:
          - type: string
          - type: 'null'
          title: Found Business Country
          description: The two-letter country code of the business that the webpages are about.
        found_business_state:
          anyOf:
          - type: string
          - type: 'null'
          title: Found Business State
          description: The state (as in a state of a country) of the business that the webpages are about.
        webpage_type:
          anyOf:
          - $ref: '#/components/schemas/WebpageType'
          - type: 'null'
          description: The type of webpage.
        visual_summary:
          anyOf:
          - type: string
          - type: 'null'
          title: Visual Summary
          description: A visual summary of the webpage.
        summary:
          anyOf:
          - type: string
          - type: 'null'
          title: Summary
          description: An extensive summary of the webpage.
          exclude_from_llm: true
        simple_profile:
          anyOf:
          - $ref: '#/components/schemas/SimpleBusinessProfile'
          - type: 'null'
          description: A simple profile of the business that the webpage is about.
        short_summary:
          anyOf:
          - type: string
          - type: 'null'
          title: Short Summary
          description: A short summary of the webpage content in the `summary` field.
        search_keywords:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Search Keywords
          description: Search keywords used to find the business represented.
        is_website_accessible:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Is Website Accessible
          description: Whether the website is accessible and could be opened.
        not_accessible_reason:
          anyOf:
          - type: string
          - type: 'null'
          title: Not Accessible Reason
          description: The reason why the website is not accessible.
        urls_to_analyze:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Urls To Analyze
          description: The urls to analyze in depth.
        source_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Source Id
          description: The source id of the webpage.
        found_associated_individual_names:
          anyOf:
          - items:
              $ref: '#/components/schemas/SimpleAssociatedIndividual'
            type: array
          - type: 'null'
          title: Found Associated Individual Names
          description: The names and titles of individuals found associated with the business on the page.
        addresses_found:
          anyOf:
          - items:
              $ref: '#/components/schemas/ai__data_loaders__schema__base__Address'
            type: array
          - type: 'null'
          title: Addresses Found
          description: List of addresses found on the webpage.
        email_addresses_found:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Email Addresses Found
          description: List of email addresses found on the webpage.
        phone_numbers_found:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Phone Numbers Found
          description: List of phone numbers found on the webpage.
        detected_language:
          anyOf:
          - type: string
          - type: 'null'
          title: Detected Language
          description: The primary language of the webpage content using ISO 639-1 code (e.g., 'en' for English, 'pt' for Portuguese, 'es' for Spanish)
        platform_rating:
          anyOf:
          - type: number
          - type: 'null'
          title: Platform Rating
          description: Business rating on the platform (e.g., 4.5 out of 5).
        platform_max_rating:
          anyOf:
          - type: number
          - type: 'null'
          title: Platform Max Rating
          description: Maximum possible rating on the platform (e.g., 5.0).
        platform_total_reviews:
          anyOf:
          - type: integer
          - type: 'null'
          title: Platform Total Reviews
          description: Total number of reviews on the platform.
        platform_name:
          anyOf:
          - type: string
          - type: 'null'
          title: Platform Name
          description: Name of the platform (e.g., 'Yelp', 'Google Places', 'TripAdvisor').
        platform_business_category:
          anyOf:
          - type: string
          - type: 'null'
          title: Platform Business Category
          description: Business category as listed on the platform.
        platform_business_hours:
          anyOf:
          - type: string
          - type: 'null'
          title: Platform Business Hours
          description: Business operating hours as listed on the platform.
        platform_phone_number:
          anyOf:
          - type: string
          - type: 'null'
          title: Platform Phone Number
          description: Phone number found on the platform profile.
        platform_website_url:
          anyOf:
          - type: string
          - type: 'null'
          title: Platform Website Url
          description: Official website URL found on the platform profile.
        platform_image_urls:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Platform Image Urls
          description: List of image URLs associated with the business on the platform.
        image_analysis_details:
          anyOf:
          - type: string
          - type: 'null'
          title: Image Analysis Details
          description: A detailed description and analysis of the images found on the platform profile (e.g., storefront, food, interior, menu, ambiance, quality, professional/user-submitted).
      type: object
      required:
      - type
      title: BusinessWebpageMetadataV3
    ConfidenceTier:
      type: string
      enum:
      - LOW
      - MEDIUM
      - HIGH
      title: ConfidenceTier
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    FoundDocSimpleAssociatedIndividual:
      properties:
        sources:
          anyOf:
          - items:
              $ref: '#/components/schemas/SimpleWebSource'
            type: array
          - type: 'null'
          title: Sources
          description: The sources of the data
        first_name:
          anyOf:
          - type: string
          - type: 'null'
          title: First Name
          description: The first name of the individual associated with the business.
        last_name:
          anyOf:
          - type: string
          - type: 'null'
          title: Last Name
          description: The last name of the individual associated with the business.
        role:
          anyOf:
          - type: string
          - type: 'n

# --- truncated at 32 KB (38 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/parcha/refs/heads/main/openapi/parcha-admin-profiler-testing-api-openapi.yml