openapi: 3.0.0
servers:
  - url: https://api.peoplefinderspro.com
info:
  description: |-
    Self Service Developer API documentation and demo.

    ##Getting Started

    You will need an API access profile user and password in order to access search endpoints.
    Your access profile user and password is used for authenticating all requests to our search API. 
    You MUST pass the user and password each time you perform a search request.
  title: Self Service Developer API
  version: 1.0.0
  x-apisguru-categories:
    - marketing
  x-origin:
    - format: swagger
      url: https://pfent1821.docs.apiary.io/api-description-document
      version: "2.0"
  x-providerName: peoplefinderspro.com
tags: []
paths:
  /address/autocomplete:
    post:
      description: |-
        ###### *Click on the grey search box above, to view sample request/response objects for Address Autocomplete Search*

        Perform a search:

        1. Add your key and key secret to the request headers.
            + galaxy-ap-name: [Key]
            + galaxy-ap-password: [Secret]
            + galaxy-search-type: DevAPIAddressAutoComplete

        2.  Add search criteria to your request.
            ~~~html
                    {
                        "Input":"1821 Q"
                    }
            ~~~

        3.  Submit your search

        The JSON request should have parts of the address.

        + <code>Input</code> = null (optional, string) ... address.
      parameters:
        - description: e.g. Key
          example: Key
          in: header
          name: galaxy-ap-name
          required: false
          schema:
            type: string
        - description: e.g. Secret
          example: Secret
          in: header
          name: galaxy-ap-password
          required: false
          schema:
            type: string
        - description: e.g. DevAPIAddressAutoComplete
          example: DevAPIAddressAutoComplete
          in: header
          name: galaxy-search-type
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                Input: 1821 Q
              properties:
                Input:
                  type: string
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    suggestions:
                      - addressLine1: house number, street, possible apt
                        addressLine2: City, State
                        city: ""
                        fullAddress: full address
                        houseNumber: ""
                        id: id
                        postDirection: ""
                        preDirection: ""
                        state: ""
                        streetName: ""
                        streetType: ""
          description: OK
          headers: {}
      summary: Search
      tags: []
  /contact/enrich:
    post:
      description: |-
        ###### *Click on the grey search box above, to view sample request/response objects for Contact Enrichment Search*

        Perform a search:

        1. Add your key and key secret to the request headers.
            + galaxy-ap-name: [Key]
            + galaxy-ap-password: [Secret]
            + galaxy-search-type: DevAPIContactEnrich

        2.  Add search criteria to your request. At least two are required: Name, Phone, Address, or Email.
            ~~~html
                    {
                        "FirstName": "John",
                        "MiddleName": "T",
                        "LastName": "Lawrence",
                        "Dob":"",
                        "Age": 0,
                        "Address": {
                            "addressLine1":"123 Q Street",
                            "addressLine2":"Sacramento, CA"
                        },
                        "PhoneNumber":"",
                        "Email":""
                    }
            ~~~

        3.  Submit your search

        A complete list of JSON request properties follows.

        + <code>FirstName</code>= null (optional, string) ... First name.

        + <code>MiddleName</code> = null (optional, string) ... Middle name or middle initial.

        + <code>LastName</code> = null (optional, string) ... Last name.

        + <code>Dob</code> = null (optional, string) ... Date of birth (format: MM/DD/YYYY).

        + <code>Age</code> = null (optional, int) ... Age.

        + <code>Addresses</code> = null (optional, Addresses[]) ... List of addresses.
            + <code>Members</code>
                + <code>AddressLine1</code> = null (optional, string) ... House number, street name and Unit number (i.e. 123 Q Street, Unit 102) or PO Box (i.e. 1821 Q Street).
                + <code>AddressLine2</code> = null (optional, string) ... State or City and State or Zip (i.e. Sacramento, CA).

        + <code>Phone</code> = null (optional, string) ... Phone number (formats: ###-###-####, (###) ###-####).

        + <code>Email</code> = null (optional, string) ... E-mail address.
      parameters:
        - description: e.g. Key
          example: Key
          in: header
          name: galaxy-ap-name
          required: false
          schema:
            type: string
        - description: e.g. Secret
          example: Secret
          in: header
          name: galaxy-ap-password
          required: false
          schema:
            type: string
        - description: e.g. DevAPIContactEnrich
          example: DevAPIContactEnrich
          in: header
          name: galaxy-search-type
          required: false
          schema:
            type: string
      requestBody:
        $ref: "#/components/requestBodies/SearchBody"
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    person:
                      addresses:
                        - city: city
                          firstReportedDate: date
                          lastReportedDate: date
                          state: state
                          street: street
                          unit: unit
                          zip: zip
                      age: age
                      emails:
                        - email: email
                      name:
                        firstName: firstName
                        lastName: lastname
                        middleName: middlename
                      phones:
                        - firstReportedDate: date
                          isConnected: true
                          lastReportedDate: date
                          number: phone
                          type: mobile
          description: OK
          headers: {}
      summary: Search
      tags: []
  /email/enrich:
    post:
      description: |-
        ###### *Click on the grey search box above, to view sample request/response objects for Email Enrichment Search*

        Perform a search:

        1. Add your Access Profile username and password to the request headers.
            + galaxy-ap-name: [Key]
            + galaxy-ap-password: [Secret]
            + galaxy-search-type: DevAPIEmailID

        2.  Add search criteria to your request.
            ~~~html
                    {
                        "Email":"johnsmith@somedomain"
                    }
            ~~~

        3.  Submit your search

        The JSON request should have an email.

        + <code>Email</code> = null (optional, string) ... E-mail address.
      parameters:
        - description: e.g. Key
          example: Key
          in: header
          name: galaxy-ap-name
          required: false
          schema:
            type: string
        - description: e.g. Secret
          example: Secret
          in: header
          name: galaxy-ap-password
          required: false
          schema:
            type: string
        - description: e.g. DevAPIEmailID
          example: DevAPIEmailID
          in: header
          name: galaxy-search-type
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                Email: ""
              properties:
                Email:
                  type: string
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    person:
                      address:
                        city: city
                        state: state
                        street: street
                        unit: unit
                        zip: zip
                      age: age
                      email: email
                      name:
                        firstName: John
                        lastName: Smith
                        middleName: A
          description: OK
          headers: {}
      summary: Search
      tags: []
  /identity/verify_id:
    post:
      description: |-
        ###### *Click on the grey search box above, to view sample request/response objects for the Identity Verification Search*

        Perform a search:

        1. Add your key and key secret to the request headers.
            + galaxy-ap-name: [Key]
            + galaxy-ap-password: [Secret]
            + galaxy-search-type: DevAPIIDVerification

        2.  Add search criteria to your request. At least two are required: SSN, Name, Phone, Address or Email.
            ~~~html
                    {
                        "FirstName": "John",
                        "MiddleName": "T",
                        "LastName": "Lawrence",
                        "Dob":"",
                        "Age": 0,
                        "Address": {
                            "addressLine1":"123 Q Street, Unit 102",
                            "addressLine2":"Sacramento, CA"
                        },
                        "PhoneNumber":"",
                        "Email":""
                    }
            ~~~

        3.  Submit your search

        A complete list of JSON request properties follows.

        + <code>FirstName</code>= null (optional, string) ... First name.

        + <code>MiddleName</code> = null (optional, string) ... Middle name or middle initial.

        + <code>LastName</code> = null (optional, string) ... Last name.

        + <code>Dob</code> = null (optional, string) ... Date of birth (format: MM/DD/YYYY).

        + <code>Age</code> = null (optional, int) ... Age.

        + <code>Addresses</code> = null (optional, Addresses[]) ... List of addresses.
            + <code>Members</code>
                + <code>AddressLine1</code> = null (optional, string) ... House number, street name and Unit number (i.e. 123 Q Street, Unit 102) or PO Box (i.e. 1821 Q Street).
                + <code>AddressLine2</code> = null (optional, string) ... State or City and State or Zip (i.e. Sacramento, CA).

        + <code>Phone</code> = null (optional, string) ... Phone number (formats: ###-###-####, (###) ###-####).

        + <code>Email</code> = null (optional, string) ... E-mail address.
      operationId: Search
      parameters:
        - description: e.g. Key
          example: Key
          in: header
          name: galaxy-ap-name
          required: false
          schema:
            type: string
        - description: e.g. Secret
          example: Secret
          in: header
          name: galaxy-ap-password
          required: false
          schema:
            type: string
        - description: e.g. DevAPIIDVerification
          example: DevAPIIDVerification
          in: header
          name: galaxy-search-type
          required: false
          schema:
            type: string
      requestBody:
        $ref: "#/components/requestBodies/SearchBody"
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    identityVerified: true
                    verifiedPeople:
                      - addresses:
                          - matchTypeCode: Match
                            value: address
                        age:
                          matchTypeCode: NA
                          value: age
                        dob:
                          day:
                            matchTypeCode: NA
                            value: day
                          month:
                            matchTypeCode: NA
                            value: month
                          year:
                            matchTypeCode: NA
                            value: year
                        emails:
                          - matchTypeCode: NA
                            value: email
                        firstName:
                          matchTypeCode: Match
                          value: firstname
                        identityScore: 100
                        lastName:
                          matchTypeCode: Match
                          value: lastname
                        middleName:
                          matchTypeCode: Match
                          value: middlename
                        phones:
                          - matchTypeCode: NA
                            value: phone
          description: OK
          headers: {}
      summary: Search
      tags: []
  /phone/enrich:
    post:
      description: |-
        ###### *Click on the grey search box above, to view sample request/response objects for Phone Enrichment Search*

        Perform a search:

        1. Add your key and key secret to the request headers.
            + galaxy-ap-name: [Key]
            + galaxy-ap-password: [Secret]
            + galaxy-search-type: DevAPICallerID

        2.  Add search criteria to your request.
            ~~~html
                    {
                        "Phone":"(123) 456-7890"
                    }
            ~~~

        3.  Submit your search

        The JSON request should have a phone number.

        + <code>Phone</code> = null (optional, string) ... Phone number (formats: ###-###-####, (###) ###-####).
      parameters:
        - description: e.g. Key
          example: Key
          in: header
          name: galaxy-ap-name
          required: false
          schema:
            type: string
        - description: e.g. Secret
          example: Secret
          in: header
          name: galaxy-ap-password
          required: false
          schema:
            type: string
        - description: e.g. DevAPICallerID
          example: DevAPICallerID
          in: header
          name: galaxy-search-type
          required: false
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                Phone: ""
              properties:
                Phone:
                  type: string
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    person:
                      address:
                        city: city
                        state: state
                        street: street
                        unit: unit
                        zip: zip
                      age: age
                      email: email
                      name:
                        firstName: fistname
                        lastName: lastname
                        middleName: m
          description: OK
          headers: {}
      summary: Search
      tags: []
components:
  requestBodies:
    SearchBody:
      content:
        application/json:
          schema:
            example:
              Address:
                addressLine1: ""
                addressLine2: ""
              Age: 0
              Dob: ""
              Email: ""
              FirstName: ""
              LastName: ""
              MiddleName: ""
              PhoneNumber: ""
            properties:
              Address:
                properties:
                  addressLine1:
                    type: string
                  addressLine2:
                    type: string
                type: object
              Age:
                type: number
              Dob:
                type: string
              Email:
                type: string
              FirstName:
                type: string
              LastName:
                type: string
              MiddleName:
                type: string
              PhoneNumber:
                type: string
            type: object
  schemas:
    Address_AutoComplete: {}
    Caller_ID: {}
    Contact_Enrichment: {}
    Email_ID: {}
    ID_Verification: {}
