openapi: 3.0.0 components: examples: {} headers: {} parameters: {} requestBodies: {} responses: {} schemas: RomanceScriptResponse: properties: script: type: string required: - script type: object additionalProperties: false RomanceScriptRequest: properties: address: type: string required: - address type: object additionalProperties: false example: address: 158 Crawford Hill Road, Goodlettsville TN TaskStatusResponse: properties: status: type: string errorMessage: type: string nullable: true required: - status type: object additionalProperties: false RentEstimateResponse: properties: rentEstimate: type: number format: double description: predicted fair market rent rentLow: type: number format: double description: low bound estimate of the rent price rentHigh: type: number format: double description: high bound estimate of the rent price useScore: type: number format: double description: >- A quick-reference score that assesses the reliability of the rent estimate based on data completeness and location or property irregularities. Values between 0 (worst) and 1 (best) required: - rentEstimate - rentLow - rentHigh - useScore type: object additionalProperties: false example: rentEstimate: 1677 rentLow: 1640 rentHigh: 1703 useScore: 0.92 EstimateQueryParams: properties: address: type: string required: - address type: object additionalProperties: false InvoiceItem: properties: price: type: number format: double description: Unit price for the line item total: type: number format: double description: Total amount for the line item summary: type: string description: Description of the summary of related line items quantity: type: number format: double description: Unit quantity of the line item description: type: string description: Description of the line item accountingEnum: type: string description: Coming soon. Capex/Opex categorization operationCategory: type: string description: Extracted expense category of the line item required: - price - total - summary - quantity - description - accountingEnum - operationCategory type: object additionalProperties: false InvoiceParsingResponse: properties: items: items: $ref: "#/components/schemas/InvoiceItem" type: array nullable: true description: Extracted line items of the invoice propertyAddress: type: string nullable: true description: Property address related to this invoice invoiceFromName: type: string nullable: true description: Name of the vendor issuing the invoice invoiceFromAddress: type: string nullable: true description: Address of the vendor issuing the invoice invoiceFor: type: string nullable: true description: Invoiced issued to invoiceId: type: string nullable: true description: Id of the invoice workOrderId: type: string nullable: true description: Extracted work order referenced in the invoice invoiceDate: type: string nullable: true description: Date of the invoice dueDate: type: string nullable: true description: Due date amountPaid: type: number format: double nullable: true description: Amount paid as on the invoice amountDue: type: number format: double nullable: true description: Amount due as on the invoice required: - items - propertyAddress - invoiceFromName - invoiceFromAddress - invoiceFor - invoiceId - workOrderId - invoiceDate - dueDate - amountPaid - amountDue type: object additionalProperties: false example: items: - price: 228.78 total: 228.78 summary: Plumbing Repair quantity: 1 description: |- Removed the damage shower head and replace it with new one. Everything is working Perfectly. accountingEnum: Expense operationCategory: PLUMBING - REPAIRS_AND_MAINTENANCE - BATHROOM_RELATED invoiceFromName: PLUMBING PRESERVATION invoiceFromAddress: 123 Main Street, North Port, FL 34288 invoiceFor: Elara One Property Management invoiceId: WO-F7HK9KU workOrderId: WO-F7HK9KU invoiceDate: 2024-09-09 dueDate: 2024-09-09 amountPaid: 0 amountDue: 228.78 AuthResponse: properties: access_token: type: string refresh_token: type: string required: - access_token - refresh_token type: object additionalProperties: false GRANT_TYPE: enum: - client_credentials - refresh_token type: string AuthRequest: properties: client_id: type: string client_secret: type: string refresh_token: type: string nullable: true grant_type: allOf: - $ref: "#/components/schemas/GRANT_TYPE" nullable: true type: object additionalProperties: false securitySchemes: oauth2: type: oauth2 flows: clientCredentials: tokenUrl: https://api.pickethomes.com/v1/auth/token scopes: {} info: title: Picket Web Services version: 1.0.0 license: name: ISC contact: {} servers: - url: https://api.pickethomes.com paths: /v1/romance/process/sync: post: operationId: romanceScript responses: "200": description: Ok content: application/json: schema: $ref: "#/components/schemas/RomanceScriptResponse" examples: Example 1: value: script: Welcome home to a charming haven that effortlessly blends modern comfort with timeless elegance. This pet-friendly abode boasts 3 bedrooms and 2 baths, with a sprawling open floor plan that invites an abundance of natural light and spaciousness. The primary selling point of this home is its expansive living area, which serves as the perfect sanctuary for relaxation and entertainment.\n\nThe heart of this residence lies in its gourmet kitchen, adorned with sleek quartz countertops, state-of-the-art stainless steel appliances, and a large island that makes meal preparation a delight. Picture yourself unwinding in the luxurious primary bedroom, complete with an en-suite bath featuring a deep soaking tub and a separate walk-in shower. The beautifully landscaped backyard offers an oasis for outdoor gatherings, with a cozy patio ideal for alfresco dining or simply basking in the sun.\n\nSpecial features include energy-efficient windows, a smart home system, and ample storage space throughout the home. Located just 10 miles from the nearest city center, a short 15-minute drive brings you the best of urban conveniences while you enjoy the peace and tranquility of suburban living. "404": description: Could not find address description: >- Generate a romance copy for a house based on all available data about it. Input address that is not recognized will return 404 error code. Endpoint will accept address in most forms and perform normalization before executing. This is a synchronous method that can take substantial time to execute. tags: - RomanceScript security: - oauth2: [] parameters: [] requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/RomanceScriptRequest" /v1/estimate/rent: get: operationId: estimateRent responses: "200": description: Ok content: application/json: schema: $ref: "#/components/schemas/RentEstimateResponse" "404": description: Could not find address tags: - Estimate security: - oauth2: [] parameters: - in: query name: address required: true schema: type: string /v1/auth/token: post: operationId: authentication responses: "200": description: Ok content: application/json: schema: $ref: "#/components/schemas/AuthResponse" tags: - Auth security: [] parameters: [] requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/AuthRequest" /v1/invoice/process/sync: post: operationId: extractDataFromInvoice responses: "200": description: Ok content: application/json: schema: $ref: "#/components/schemas/InvoiceParsingResponse" description: |- Extract structured data from an invoice file supplied as a PDF document. This is a synchronous method that can take substantial time to execute. Scope of the extracted data is: - vendor information - general invoice data - line items details tags: - Invoice security: - oauth2: [] parameters: [] requestBody: required: true content: multipart/form-data: schema: type: string format: binary