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

# Start SOV Parsing Job

> Submit an Excel file to be parsed as an SOV.



## OpenAPI

````yaml https://api-staging.sovfixer.com/api/schema/?format=json post /api/v1/sov
openapi: 3.0.3
info:
  title: Ping.Extraction API
  version: v1.0
  description: >-
    ### Ping.Extraction API


    This API provides an asynchronous method for parsing Excel SOV documents
    using the Ping Intel SOV Fixer platform.


    The typical SOV Fixer usage flow is:


    * POST to `/api/v1/sov`

    * Poll GET `/api/v1/sov/{id}`, passing the `id` given by the previous
    response until `response.request.status` is `COMPLETE` or `FAILED`.
    Depending on load, number of buildings in the SOV, and 3rd party
    integrations, it may take anywhere from a few seconds to many minutes.

    * Download the parsed SOV data as JSON from
    `/api/v1/sov/{id}/output/{filename}`. The exact url comes from the response
    to the above query, in `response.result.outputs[].url`.


    API Usage Examples: [Python](/api/v1/sov-api-usage-example.py) |
    [.NET](/api/v1/sov-api-usage-example.cs)

    Client Libraries: [Python](https://pypi.org/project/pingintel-api/)


    #### Authorization

    Most endpoints are protected by Bearer authentication. Under each endpoint
    listed below, click into the `authorizations` section to see what is
    required for that endpoint.


    #### Output JSON Example:

    ```json

    {

    "id": "s-e-xxxxxxx",

    "source_filename": "My Example SOV.xls",

    "num_buildings": 26,

    "extra_data": {
        "insured_name": "Joe Insured",
        "... custom document-level data fields ...": ""
    },

    "buildings": [
        {
        "item_key": "i-s-e-xxxxxxx!Original SOV Sheet!7",
        "building_counter": 1,
        "sheet_name": "Original SOV Sheet",
        "sheet_row_number": 7,
        "parsing_sheet_name": "Original SOV Sheet",
        "location_code": {
            "value": "A-1",
            "confidence": 0.5,
            "comment": "Adjusted."
        },
        "bldg_name": {
            "value": "Elementary School",
            "confidence": 0.7
        },
        "street": {
            "value": "1212 Mockingbird Lane",
            "confidence": 0.7
        },
        "city": {
            "value": "Tewksbury",
            "confidence": 0.5
        },
        "state": {
            "original": "Mass",
            "value": "MA",
            "confidence": 0.9
        },
        "zip": {
            "value": "01876",
            "original": 1876,
            "confidence": 0,
            "comment": "Please check."
        },
        "... more building attributes ...": "",
        "external_data": {
            "PG": {
            "latitude": 42.6109,
            "longitude": -71.2342,
            "confidence": 0.9,
            "street": "1212 Mockingbird Ln",
            "city": "Tewksbury",
            "... rest of the data from the Ping Geocoding (PG) external data source ...": ""
            },
            "... any other requested third party data sources ...": ""
        },
        "extra": {
            "... columns that were not identified as a standard SOV field ...": "",
            "Unidentified Column": "123213",
            "Another Unidentified Column": "abc"
        }
        },
        "... additional buildings ...": ""
    ]

    }

    ```


    Complete JSON reference documentation can be found for each output type:
    [SOV](/docs/data/SOV/) | [Premium BDX](/docs/data/PREM_BDX/) | [Claim
    BDX](/docs/data/CLAIM_BDX/).


    Some notes about specific JSON output fields:

    * `limits__total_limit`: Contains the TIV if explicitly specified in the
    SOV. If not, it is summed from the fields `limits__building_limit` +
    `limits__bpp_limit` + `limits__bi_limit` + `limits__signs_and_other_limit`.

    * `limits__building_limit`: Building Limit is an aggregate of:

    * `limits__building_value`

    * `limits__location_limit`

    * `limits__blanket_limit`

    * `limits__building_only_limit`

    * `limits__real_property_limit`

    * `limits__structure_limit`

    * `limits__bpp_limit`: Business Personal Property (Contents) Limit is an
    aggregate of:

    * `limits__contents_value`

    * `limits__contents_limit`

    * `limits__bpp_value`

    * `limits__equip_limit`

    * `limits__personal_property_limit`

    * Any field identified as a limit field but not otherwise categorized.

    * `limits__bi_limit`: Business Interruption Limit is an aggregate of:

    * `limits__bi_value`

    * `limits__bi_income_limit`

    * `limits__business_interruption_limit`

    * `limits__time_element_limit`

    * `limits__signs_and_other_limit`: Signs and Other Structures Limit is an
    aggregate of:

    * `limits__signs_limit`

    * `limits__other_structures_limit`


    ### Ping Intel SOV History API

    This API provides a method for accessing historical SOV submissions
    including their revisions (SOV Updates) and the raw parsed output.


    The typical usage workflow is:

    * GET to `api/v1/sov/history?start={start_timestamp}` for a list of SOVIDs
    submitted between `start_timestamp` and now.

    * For each sovid:

    * GET to `api/v1/sov/history/{id}` to get information about the SOV or SOV
    Update. This includes any output we produced in servicing the request

    * GET to the the URL in the outputs dict to download the resource you need.
        
  contact:
    email: support@pingintel.com
    name: Ping Intel
    url: https://www.pingintel.com
servers:
  - url: https://api.sovfixer.com
    description: Ping.Extraction API
  - url: https://api-staging.sovfixer.com
    description: Ping.Extraction API (staging)
security: []
paths:
  /api/v1/sov:
    post:
      tags:
        - Parse SOVs
      summary: Start SOV Parsing Job
      description: Submit an Excel file to be parsed as an SOV.
      operationId: sov_create
      requestBody:
        content:
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/StartSOVParsingRequestRequest'
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StartSOVParsingSuccessResponse'
          description: ''
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StartSOVParsingBadRequestResponse'
          description: ''
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StartSOVParsingUnauthorizedResponse'
          description: ''
      security:
        - tokenAuth: []
        - cookieAuth: []
components:
  schemas:
    StartSOVParsingRequestRequest:
      type: object
      properties:
        file:
          type: string
          format: binary
          description: >-
            Document to submit for processing. Must be a valid Excel file (.xls,
            .xlsx, .xlsm, .xlsb) or ACORD (.pdf). Max file size 75 MB.
        callback_url:
          type: string
          format: uri
          minLength: 1
          description: >-
            Optional webhook URL for POSTing results. If provided, results will
            be provided upon completion in the same format as the GET /sov/{id}
            response.
        client_ref:
          type: string
          minLength: 1
          description: Optional user reference identifier, usable for any purpose.
        company:
          type: string
          minLength: 1
          description: >-
            If set, specifies the company for the submission. Can be a company
            UUID or company short name. Also requires team.
        document_type:
          enum:
            - SOV
            - PREM_BDX
            - CLAIM_BDX
            - SOV_BDX
            - ACORD
          type: string
          x-spec-enum-id: 77b3f31c6b393874
          default: SOV
          description: >-
            If set, specifies the type of file being sent. Defaults to SOV.
            ACORD is an alias to SOV.


            * `SOV` - SOV

            * `PREM_BDX` - PREM_BDX

            * `CLAIM_BDX` - CLAIM_BDX

            * `SOV_BDX` - SOV_BDX

            * `ACORD` - ACORD
        extra_data_*:
          type: string
          minLength: 1
          description: >-
            Optional extra data fields to be associated with this request. Any
            parameter following this pattern will be stored as extra data.
            Common fields include: insured_name, inception_date,
            expiration_date, sov_description, predominant_occupancy,
            predominant_construction, insured_business_description,
            total_insured_value.
        integrations:
          type: array
          items:
            enum:
              - PG
              - PH
              - PFPC
            type: string
            x-spec-enum-id: 7066edafaaede991
            description: |-
              Integration option.

              * `PG` - PG
              * `PH` - PH
              * `PFPC` - PFPC
          description: >-
            If set, specifies the desired integrations to enrich the data with.
            WARNING: If set without a geocoder, you may get incorrect results.
            Defaults to your workflow's default--the integrations used when you
            email us.
        output_formats:
          type: array
          items:
            enum:
              - json
              - pingv2
              - amrisc
            type: string
            x-spec-enum-id: f23d2be1ffe08a2e
            description: |-
              Output format option.

              * `json` - json
              * `pingv2` - pingv2
              * `amrisc` - amrisc
          default:
            - json
          description: If set, specifies the desired output format(s). Defaults to json.
        team:
          type: string
          minLength: 1
          description: >-
            If set, specifies the team to use for processing. Can be a team UUID
            or team name. Also requires company.
        update_callback_url:
          type: string
          format: uri
          minLength: 1
          description: >-
            Optional webhook URL for POSTing results. If provided, will be used
            as the callback_url in subsequent reoutput api calls.
        workflow:
          type: string
          minLength: 1
          description: >-
            If set, specifies the workflow to use for processing. Defaults to
            the organization's default workflow.
      required:
        - file
    StartSOVParsingSuccessResponse:
      type: object
      properties:
        id:
          type: string
          description: >-
            Newly-created SOV processing ID. Use this as the id for future
            requests.
        message:
          type: string
          default: OK
          description: API Message.
      required:
        - id
    StartSOVParsingBadRequestResponse:
      type: object
      properties:
        error:
          type: string
          description: Server error message detail.
      required:
        - error
    StartSOVParsingUnauthorizedResponse:
      type: object
      properties:
        detail:
          type: string
          description: Authorization error message.
      required:
        - detail
  securitySchemes:
    tokenAuth:
      type: apiKey
      in: header
      name: Authorization
      description: Token-based authentication with required prefix "Token"
    cookieAuth:
      type: apiKey
      in: cookie
      name: sessionid

````