{
  "openapi": "3.0.1",
  "info": {
    "title": "UK Conveyancing API - Cases, Quotes, Search Orders",
    "description": "Read a UK conveyancing and property search account into a dataset: quotes with every conveyancer fee quoted, cases with their people and documents, workflow tasks and completion, activity trails, notes, and compliance and search orders with their results. Read only: it never orders or uploads.",
    "version": "0.1",
    "x-build-id": "uHgCvTu6a1HP8LTad"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/nabeelbaghoor~uk-conveyancing-case-api/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-nabeelbaghoor-uk-conveyancing-case-api",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/nabeelbaghoor~uk-conveyancing-case-api/runs": {
      "post": {
        "operationId": "runs-sync-nabeelbaghoor-uk-conveyancing-case-api",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/nabeelbaghoor~uk-conveyancing-case-api/run-sync": {
      "post": {
        "operationId": "run-sync-nabeelbaghoor-uk-conveyancing-case-api",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "mode": {
            "title": "What to read",
            "enum": [
              "listCases",
              "caseDetails",
              "caseActivities",
              "caseTasks",
              "caseNotes",
              "listQuotes",
              "quoteDetails",
              "orderDetails",
              "orderStatus",
              "downloadCaseDocuments",
              "downloadOrderDocuments"
            ],
            "type": "string",
            "description": "List cases and list quotes page through the account with filters and sorting. The details modes read one record and expand the people, conveyancer options, documents and fee behind it. Activities, tasks and notes read a case's history. The order modes read a compliance or property search order and its results. The download modes fetch attached documents into this run's key value store. Every mode reads: none of them creates, instructs, orders or uploads anything.",
            "default": "listCases"
          },
          "environment": {
            "title": "Environment",
            "enum": [
              "production",
              "uat"
            ],
            "type": "string",
            "description": "Which environment to read. Test and live credentials are separate and are issued in that order, so this switch moves both the API host and the identity host together rather than leaving half of it behind.",
            "default": "production"
          },
          "caseIds": {
            "title": "Case IDs",
            "type": "array",
            "description": "One case ID per line, for the case detail, activity, task, note and document modes. Run list cases first to find them.",
            "items": {
              "type": "string"
            }
          },
          "quoteIds": {
            "title": "Quote IDs",
            "type": "array",
            "description": "One quote ID per line, for the quote detail mode. Run list quotes first to find them.",
            "items": {
              "type": "string"
            }
          },
          "orderIds": {
            "title": "Order IDs",
            "type": "array",
            "description": "One order ID per line, as returned when the order was placed, for the order modes.",
            "items": {
              "type": "string"
            }
          },
          "status": {
            "title": "Status",
            "enum": [
              "",
              "Pending callback",
              "Pending Approval",
              "Instructed",
              "In Progress",
              "On hold",
              "Completed",
              "Cancelled",
              "Under Review"
            ],
            "type": "string",
            "description": "Return only cases or quotes at this status. Leave empty for all of them.",
            "default": ""
          },
          "createdFrom": {
            "title": "Created from",
            "type": "string",
            "description": "Only return cases or quotes created on or after this date, as YYYY-MM-DD."
          },
          "createdTo": {
            "title": "Created to",
            "type": "string",
            "description": "Only return cases or quotes created on or before this date, as YYYY-MM-DD."
          },
          "updatedFrom": {
            "title": "Updated since",
            "type": "string",
            "description": "Only return cases or quotes updated on or after this date, as YYYY-MM-DD. This is the filter to run a daily sync on."
          },
          "filter": {
            "title": "Extra filter",
            "type": "string",
            "description": "An extra OData filter clause, combined with the fields above using and. Written in the provider's own filter syntax, for example status ne 'Cancelled'."
          },
          "orderBy": {
            "title": "Sort by",
            "type": "string",
            "description": "How to sort the listing, in the provider's own syntax, for example updatedDate desc or createdDate asc. Leave empty for the provider default, which is most recently updated first."
          },
          "includePeople": {
            "title": "Include people",
            "type": "boolean",
            "description": "Emit the people on each case or quote as their own rows, with their roles, contact details and correspondence address. One person is often both buyer and borrower, so roles arrive as a list.",
            "default": true
          },
          "includeDocuments": {
            "title": "Include document records",
            "type": "boolean",
            "description": "Emit the documents attached to each case or order as their own rows, with type, file name, media type and date. This lists them; the download modes fetch the files themselves.",
            "default": true
          },
          "includeOrderResults": {
            "title": "Include order results",
            "type": "boolean",
            "description": "Include the full results object on order rows. Results differ entirely by product, so they travel as the provider sent them rather than flattened onto columns that would fit only one product.",
            "default": true
          },
          "pageSize": {
            "title": "Records per request",
            "type": "integer",
            "description": "How many records to ask for per listing request. A run never asks for more rows than it is allowed to keep.",
            "default": 50
          },
          "startAt": {
            "title": "Start at record",
            "type": "integer",
            "description": "Skip this many records before collecting. Use it to resume a large listing where a previous run stopped.",
            "default": 0
          },
          "maxResults": {
            "title": "Maximum rows",
            "type": "integer",
            "description": "Stop after this many rows. Counts every row: cases, quotes, people, documents, activities, tasks and notes alike.",
            "default": 100
          },
          "requestsPerMinute": {
            "title": "Requests per minute",
            "type": "integer",
            "description": "How fast to call the provider. Lower this if your account's rate limit is being hit.",
            "default": 60
          },
          "clientId": {
            "title": "Client ID",
            "type": "string",
            "description": "Your own client ID, issued when your integration was onboarded. It identifies the account, so there is no separate account header. Stored encrypted and never written into the dataset."
          },
          "clientSecret": {
            "title": "Client secret",
            "type": "string",
            "description": "Your own client secret. Exchanged once for an access token, which is cached until it is close to expiring rather than re-fetched per request. Can also be supplied as the DATA_API_KEY environment secret."
          },
          "baseUrl": {
            "title": "API host",
            "type": "string",
            "description": "Overrides the API host. Leave empty unless the provider has given you a different one: the environment switch already moves it."
          },
          "tokenUrl": {
            "title": "Token endpoint",
            "type": "string",
            "description": "Overrides the identity host the client ID and secret are exchanged at. Leave empty unless the provider has given you a different one."
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}