openapi: 3.0.3 info: title: Affinda Data Sources API version: 3.0.0 description: "Affinda Data Sources API \u2014 subset of the Affinda v3 Document Processing API." servers: - url: https://{region}.affinda.com description: 'Select the correct server for your instance: api (AUS/Global), api.us1 (US), or api.eu1 (EU).' variables: region: default: api description: The instance region. Use 'api' for AUS/Global, 'api.us1' for US, or 'api.eu1' for EU. You can find your region in the Affinda web app URL. enum: - api - api.eu1 - api.us1 x-ms-parameter-location: client security: - ApiKeyAuth: [] paths: /v3/mapping_data_sources: post: tags: - Data Sources summary: Create a data source operationId: createMappingDataSource description: Create a custom mapping data source. responses: '201': description: Successfully created a mapping data source. content: application/json: schema: $ref: '#/components/schemas/MappingDataSource' '400': $ref: '#/components/responses/400Error' '401': $ref: '#/components/responses/401Error' default: $ref: '#/components/responses/DefaultError' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/MappingDataSourceCreate' get: tags: - Data Sources summary: List data sources operationId: listMappingDataSources parameters: - $ref: '#/components/parameters/offsetParam' - $ref: '#/components/parameters/limitParam' - in: query name: name required: false schema: $ref: '#/components/schemas/properties-name' description: Filter by name. - in: query name: organization required: false schema: $ref: '#/components/schemas/Organization_properties-identifier' description: Filter by organization. - in: query name: workspace required: false schema: $ref: '#/components/schemas/identifier' description: Filter by workspace. - in: query name: identifier required: false schema: $ref: '#/components/schemas/MappingDataSource_properties-identifier' description: Filter by identifier. description: Returns the list of all custom mapping data sources. responses: '200': description: Will return matching data sources x-summary: Will return matching data sources content: application/json: schema: type: object required: - results - count allOf: - $ref: '#/components/schemas/PaginatedResponse' - type: object properties: results: type: array items: $ref: '#/components/schemas/MappingDataSource' '400': $ref: '#/components/responses/400Error' '401': $ref: '#/components/responses/401Error' default: $ref: '#/components/responses/DefaultError' /v3/mapping_data_sources/{identifier}: get: tags: - Data Sources summary: Get specific data source operationId: getMappingDataSource description: Return a specific mapping data source. parameters: - in: path required: true name: identifier description: Data source's identifier schema: $ref: '#/components/schemas/MappingDataSource_properties-identifier' responses: '200': description: Successfully retrieved mapping data source value. content: application/json: schema: $ref: '#/components/schemas/MappingDataSource' '400': $ref: '#/components/responses/400Error' '401': $ref: '#/components/responses/401Error' default: $ref: '#/components/responses/DefaultError' delete: tags: - Data Sources summary: Delete specific data source operationId: deleteMappingDataSource description: Delete the specified mapping data source from the database. parameters: - in: path required: true name: identifier description: Data source's identifier schema: $ref: '#/components/schemas/MappingDataSource_properties-identifier' responses: '204': $ref: '#/components/responses/204NoContent' '400': $ref: '#/components/responses/400Error' '401': $ref: '#/components/responses/401Error' default: $ref: '#/components/responses/DefaultError' /v3/mapping_data_sources/{identifier}/values: get: tags: - Data Sources summary: List values for a data source operationId: listMappingDataSourceValues description: Returns the list of all values in a mapping data source parameters: - $ref: '#/components/parameters/limitParam' - $ref: '#/components/parameters/offsetParam' - in: query name: search required: false schema: type: string example: Supplier XYZ description: Search for specific values - in: query name: annotation required: false schema: type: integer example: 124 description: Filter based on annotation ID - in: query name: document required: false schema: type: string example: stXkrhIY description: Identifier of the document to apply filter lookups on if available - in: path required: true name: identifier description: Data source's identifier schema: $ref: '#/components/schemas/MappingDataSource_properties-identifier' responses: '200': description: Will return matching data source values x-summary: Will return matching data source values content: application/json: schema: type: object required: - results - count allOf: - $ref: '#/components/schemas/PaginatedResponse' - type: object properties: results: type: array items: type: object '400': $ref: '#/components/responses/400Error' '401': $ref: '#/components/responses/401Error' default: $ref: '#/components/responses/DefaultError' put: tags: - Data Sources summary: Replace values for a data source operationId: replaceMappingDataSourceValues description: 'Replaces the list of all values in a mapping data source Note: For large data sources (e.g. > 1000 values), it can take a few minutes after the request completes for the new values to be searchable.' parameters: - in: path required: true name: identifier description: Data source's identifier schema: $ref: '#/components/schemas/MappingDataSource_properties-identifier' requestBody: required: true content: application/json: schema: type: array items: type: object responses: '201': description: Will return matching data source values content: application/json: schema: type: array items: type: object '400': $ref: '#/components/responses/400Error' '401': $ref: '#/components/responses/401Error' default: $ref: '#/components/responses/DefaultError' post: tags: - Data Sources summary: Add value for a data source operationId: addMappingDataSourceValue description: Adds a value to a mapping data source parameters: - in: path required: true name: identifier description: Data source's identifier schema: $ref: '#/components/schemas/MappingDataSource_properties-identifier' requestBody: required: true content: application/json: schema: type: object responses: '201': description: Will return the created mapping data source value content: application/json: schema: type: object '400': $ref: '#/components/responses/400Error' '401': $ref: '#/components/responses/401Error' default: $ref: '#/components/responses/DefaultError' /v3/mapping_data_sources/{identifier}/values/{value}: get: tags: - Data Sources summary: Get specific data source value operationId: getMappingDataSourceValue description: Return a specific mapping dta source value. parameters: - in: path required: true name: identifier description: Data source's identifier schema: $ref: '#/components/schemas/MappingDataSource_properties-identifier' - in: path required: true name: value description: Data Source Value's value schema: type: string responses: '200': description: Successfully retrieved mapping data source value. content: application/json: schema: type: object '400': $ref: '#/components/responses/400Error' '401': $ref: '#/components/responses/401Error' default: $ref: '#/components/responses/DefaultError' put: tags: - Data Sources summary: Update specific data source value operationId: updateMappingDataSourceValue description: Update the specified mapping data source value. parameters: - in: path required: true name: identifier description: Data source's identifier schema: $ref: '#/components/schemas/MappingDataSource_properties-identifier' - in: path required: true name: value description: Data Source's value schema: type: string requestBody: required: true content: application/json: schema: type: object responses: '200': description: Successfully updated mapping data source value. content: application/json: schema: type: object '400': $ref: '#/components/responses/400Error' '401': $ref: '#/components/responses/401Error' default: $ref: '#/components/responses/DefaultError' delete: tags: - Data Sources summary: Delete specific data source value operationId: deleteMappingDataSourceValue description: Delete the specified mapping data source value from the database. parameters: - in: path required: true name: identifier description: Data source's identifier schema: $ref: '#/components/schemas/MappingDataSource_properties-identifier' - in: path required: true name: value description: Data Source Value's value schema: type: string responses: '204': $ref: '#/components/responses/204NoContent' '400': $ref: '#/components/responses/400Error' '401': $ref: '#/components/responses/401Error' default: $ref: '#/components/responses/DefaultError' components: securitySchemes: ApiKeyAuth: type: http scheme: bearer description: 'Basic authentication using an API key, e.g. `{Authorization: Bearer aff_0bb4fbdf97b7e4111ff6c0015471094155f91}`. You can find your API key within the Settings page of the [Affinda web app](https://app.affinda.com/). You can obtain an API key by [signing up for a free trial](https://app.affinda.com/auth/register).' schemas: Resume: allOf: - $ref: '#/components/schemas/Document' - type: object properties: data: $ref: '#/components/schemas/ResumeData' x-ms-discriminator-value: resume Invoice: allOf: - $ref: '#/components/schemas/Document' - type: object properties: data: $ref: '#/components/schemas/InvoiceData' x-ms-discriminator-value: invoice JobDescription: allOf: - $ref: '#/components/schemas/Document' - type: object properties: data: $ref: '#/components/schemas/JobDescriptionData' x-ms-discriminator-value: job-description ResumeRedact: allOf: - $ref: '#/components/schemas/Document' - type: object properties: data: type: object properties: redactedPdf: type: string description: URL to download the redacted resume. x-ms-discriminator-value: resume-redact DateRangeAnnotation: type: object nullable: true allOf: - $ref: '#/components/schemas/Annotation' - type: object properties: parsed: type: object properties: start: $ref: '#/components/schemas/DateRangeValue' end: $ref: '#/components/schemas/DateRangeValue' PhoneNumberAnnotation: type: object nullable: true allOf: - $ref: '#/components/schemas/Annotation' - type: object properties: parsed: type: object properties: rawText: type: string nullable: false example: '+61412632636' deprecated: true formattedNumber: type: string nullable: true example: +61 412 632 636 countryCode: type: string nullable: true example: AU internationalCountryCode: type: integer nullable: true example: 61 minimum: 1 nationalNumber: type: string nullable: true example: 0412 632 636 UrlAnnotation: type: object nullable: true allOf: - $ref: '#/components/schemas/Annotation' - type: object properties: parsed: type: object properties: url: type: string nullable: true example: https://2nb9s.com/hello/world?foo=bar#baz domain: type: string nullable: true example: 2nb9s.com identifier: type: string description: Uniquely identify a workspace. example: mEFayXdO properties-identifier: type: string description: Uniquely identify a collection. example: mEFayXdO DocumentState: type: string enum: - uploaded - review - validated - archived - rejected id: type: integer description: Uniquely identify a tag. example: 1 minimum: 1 DateRange: type: string enum: - today - yesterday - week - month - year DocumentMeta_properties-identifier: type: string description: Unique identifier for the document RequestError: type: object additionalProperties: false required: - type - errors properties: type: type: string example: validation_error errors: type: array items: type: object required: - attr - code - detail properties: attr: type: string nullable: true example: non_field_errors code: type: string example: unique detail: type: string example: This index name has already been used PaginatedResponse: type: object required: - count properties: count: type: integer example: 10 description: Number of items in results. minimum: 0 next: type: string nullable: true description: URL to request next page of results. previous: type: string nullable: true description: URL to request previous page of results. FileName: type: string nullable: true description: Optional filename of the file example: Document.pdf ExpiryTime: type: string nullable: true format: date-time description: The date/time in ISO-8601 format when the document will be automatically deleted. Defaults to no expiry. customIdentifier: type: string nullable: true description: Optional identifier for the document that you can set to track the document in the Affinda system. Is not required to be unique. example: 46ab8b02-0e5b-420c-877c-8b678d46a834 PageMeta: type: object required: - id - pageIndex - image - width - height - rotation properties: id: type: integer minimum: 1 pageIndex: type: integer example: 0 minimum: 0 description: Page number within the document, starts from 0. image: type: string nullable: true example: https://affinda-api.s3.amazonaws.com/media/pages/Page.png?AWSAccessKeyId=KEY&Signature=SIG&Expires=1663302062 description: The URL to the image of the page. imageTranslated: type: string nullable: true example: https://affinda-api.s3.amazonaws.com/media/pages/PageTranslated.png?AWSAccessKeyId=KEY&Signature=SIG&Expires=1663302062 description: The URL to the translated image of the page. height: type: number example: 700 description: Height of the page's image in px. width: type: number example: 500 description: Width of the page's image in px. rotation: type: integer example: 90 minimum: -360 maximum: 360 description: The degree of rotation applied to the page. Greater than 0 indicates clockwise rotation. Less than 0 indicates counter-clockwise rotation. name: type: string Extractor_properties-identifier: type: string description: Uniquely identify an extractor. example: resume validatable: type: boolean Identifier: type: string description: A random string that uniquely identify the resource. ValidationRule: type: object additionalProperties: false nullable: false description: A validation rule for a collection required: - slug - dataPoints properties: slug: type: string description: The slug of the validation rule, in lowercase snake_case pattern: ^[a-z0-9_]+$ example: supplier_name_is_alphanumeric dataPoints: type: array description: The data point identifier that this validation rule applies to, can be an empty list if the rule doens't use any data points as sources items: $ref: '#/components/schemas/Identifier' UserNullable: type: object nullable: true properties: id: type: integer description: Uniquely identify a user. example: 1 minimum: 1 name: type: string example: Carl Johnson username: type: string example: carljohnson email: type: string example: carljohnson@grove.street avatar: type: string nullable: true description: URL of the user's avatar. example: https://affinda-api.s3.amazonaws.com/media/user-avatar.png?AWSAccessKeyId=KEY&Signature=SIG errorCode: type: string nullable: true example: document_conversion_failed errorDetail: type: string nullable: true example: Unable to convert word document Tag: type: object required: - id - name - workspace - documentCount properties: id: type: integer description: Uniquely identify a tag. example: 1 minimum: 1 name: type: string workspace: $ref: '#/components/schemas/identifier' documentCount: type: integer minimum: 0 description: Number of documents tagged with this. User: type: object properties: id: type: integer description: Uniquely identify a user. example: 1 minimum: 1 name: type: string example: Carl Johnson username: type: string example: carljohnson email: type: string example: carljohnson@grove.street avatar: type: string nullable: true description: URL of the user's avatar. example: https://affinda-api.s3.amazonaws.com/media/user-avatar.png?AWSAccessKeyId=KEY&Signature=SIG RegionBias: type: object nullable: true properties: country: type: string nullable: true description: A single alpha-2 country code (e.g. AU) used by google geocoding service countries: type: array items: type: string nullable: true description: A list of alpha-2 country codes used by Pelias squareCoordinates: type: array items: type: number nullable: true description: A list of coordinates used by Pelias in the shape of [min_lon, min_lat, max_lon, max_lat] strict: type: boolean description: 'If true, the location must be within the region, as opposed to prefering locations within the region. Default to false. ' example: true DocumentMeta: type: object required: - identifier - pages - workspace properties: identifier: type: string description: Unique identifier for the document customIdentifier: type: string nullable: true description: Optional identifier for the document that you can set to track the document in the Affinda system. Is not required to be unique. example: 46ab8b02-0e5b-420c-877c-8b678d46a834 fileName: $ref: '#/components/schemas/FileName' ready: type: boolean nullable: false example: true description: If true, the document has finished processing. Particularly useful if an endpoint request specified wait=False, when polling use this variable to determine when to stop polling readyDt: type: string format: date-time example: '2020-12-10T01:43:32.276724Z' nullable: true description: The datetime when the document was ready failed: type: boolean nullable: false example: false description: If true, some exception was raised during processing. Check the 'error' field of the main return object. expiryTime: $ref: '#/components/schemas/ExpiryTime' language: type: string nullable: true example: en description: The document's language. pdf: type: string nullable: true example: https://affinda-api.s3.amazonaws.com/media/documents/Document.pdf?AWSAccessKeyId=KEY&Signature=SIG&Expires=1663302062 description: The URL to the document's pdf (if the uploaded document is not already pdf, it's converted to pdf as part of the parsing process). parentDocument: type: object nullable: true description: If this document is part of a splitted document, this attribute points to the original document that this document is splitted from. properties: identifier: $ref: '#/components/schemas/DocumentMeta_properties-identifier' customIdentifier: $ref: '#/components/schemas/customIdentifier' childDocuments: type: array description: If this document has been splitted into a number of child documents, this attribute points to those child documents. items: type: object properties: identifier: $ref: '#/components/schemas/DocumentMeta_properties-identifier' customIdentifier: $ref: '#/components/schemas/customIdentifier' pages: type: array items: $ref: '#/components/schemas/PageMeta' description: The document's pages. isOcrd: type: boolean ocrConfidence: type: number nullable: true reviewUrl: type: string nullable: true documentType: type: string description: The document type's identifier. Provide if you already know the document type. nullable: true collection: type: object nullable: true required: - identifier properties: identifier: $ref: '#/components/schemas/properties-identifier' name: $ref: '#/components/schemas/name' extractor: type: object nullable: true properties: identifier: $ref: '#/components/schemas/Extractor_properties-identifier' name: $ref: '#/components/schemas/name' baseExtractor: type: string description: Base extractor's identifier. nullable: true validatable: $ref: '#/components/schemas/validatable' validationRules: type: array items: $ref: '#/components/schemas/ValidationRule' autoRefreshValidationResults: type: boolean description: If True, validation results are refreshed whenever annotations are changed. workspace: type: object required: - identifier properties: identifier: $ref: '#/components/schemas/identifier' name: $ref: '#/components/schemas/name' archivedDt: type: string format: date-time nullable: true isArchived: type: boolean skipParse: type: boolean confirmedDt: type: string format: date-time nullable: true confirmedBy: $ref: '#/components/schemas/UserNullable' isConfirmed: type: boolean rejectedDt: type: string format: date-time nullable: true rejectedBy: $ref: '#/components/schemas/UserNullable' archivedBy: $ref: '#/components/schemas/UserNullable' isRejected: type: boolean createdDt: type: string format: date-time errorCode: $ref: '#/components/schemas/errorCode' errorDetail: $ref: '#/components/schemas/errorDetail' file: type: string nullable: true description: URL to view the file. html: type: string nullable: true description: URL to view the file converted to HTML. llmHint: type: string nullable: true description: Optional hint inserted into the LLM prompt when processing this document. tags: type: array items: $ref: '#/components/schemas/Tag' createdBy: $ref: '#/components/schemas/User' sourceEmail: type: string nullable: true description: If the document is created via email ingestion, this field stores the email file's URL. sourceEmailAddress: type: string nullable: true description: If the document is created via email ingestion, this field stores the email's From address. regionBias: $ref: '#/components/schemas/RegionBias' DocumentError: type: object additionalProperties: false properties: errorCode: type: string nullable: true example: document_conversion_failed errorDetail: type: string nullable: true example: Unable to convert word document DocumentWarning: type: object additionalProperties: false properties: warningCode: type: string nullable: true example: too_many_pages warningDetail: type: string nullable: true example: File exceeds maximum number of pages allowed, parsing the first 10 pages only. Document: type: object required: - meta - extractor properties: data: type: object extractor: type: string meta: $ref: '#/components/schemas/DocumentMeta' error: $ref: '#/components/schemas/DocumentError' warnings: type: array items: $ref: '#/components/schemas/DocumentWarning' discriminator: propertyName: extractor x-csharp-usage: input,output File: type: string format: binary description: 'File as binary data blob. Supported formats: PDF, DOC, DOCX, TXT, RTF, HTML, PNG, JPG, TIFF, ODT, XLS, XLSX' Wait: type: boolean description: If "true" (default), will return a response only after processing has completed. If "false", will return an empty data object which can be polled at the GET endpoint until processing is complete. example: true default: true nullable: false Language: type: string nullable: true description: Language code in ISO 639-1 format. Must specify zh-cn or zh-tw for Chinese. example: en RejectDuplicatesMaybeString: type: boolean description: If "true", parsing will fail when the uploaded document is duplicate of an existing document, no credits will be consumed. If "false", will parse the document normally whether its a duplicate or not. If not provided, will fallback to the workspace settings. example: true nullable: true DocumentCreate: type: object properties: file: $ref: '#/components/schemas/File' url: type: string nullable: true description: URL to download the document. example: https://api.affinda.com/static/sample_resumes/example.docx collection: $ref: '#/components/schemas/properties-identifier' documentType: type: string description: The document type's identifier. Provide if you already know the document type. nullable: true workspace: $ref: '#/components/schemas/identifier' wait: $ref: '#/components/schemas/Wait' identifier: type: string description: Deprecated in favor of `customIdentifier`. deprecated: true customIdentifier: type: string description: Specify a custom identifier for the document if you need one, not required to be unique. fileName: $ref: '#/components/schemas/FileName' expiryTime: $ref: '#/components/schemas/ExpiryTime' language: $ref: '#/components/schemas/Language' rejectDuplicates: $ref: '#/components/schemas/RejectDuplicatesMaybeString' regionBias: type: string description: A JSON representation of the RegionBias object. example: '{"country": "vn"}' lowPriority: type: boolean description: Explicitly mark this document as low priority. example: true compact: type: boolean description: If true, the returned parse result (assuming `wait` is also true) will be a compact version of the full result. example: true deleteAfterParse: type: boolean description: 'If true, no data will be stored after parsing. Only compatible with requests where wait: True.' example: true enableValidationTool: type: boolean description: If true, the document will be viewable in the Affinda Validation Tool. Set to False to optimize parsing speed. example: true useOcr: type: boolean nullable: true description: If true, the document will be treated like an image, and the text will be extracted using OCR. If false, the document will be treated like a PDF, and the text will be extracted using the parser. If not set, we will determine whether to use OCR based on whether words are found in the document. llmHint: type: string nullable: true description: Optional hint inserted into the LLM prompt when processing this document. limitToExamples: type: array nullable: true description: Restrict LLM example selection to the specified document identifiers. items: type: string warningMessages: type: array items: $ref: '#/components/schemas/DocumentWarning' DocumentFormat: type: string enum: - json - xml - hr-xml isConfirmed: type: boolean isRejected: type: boolean isArchived: type: boolean skipParse: type: boolean DocumentUpdate: type: object properties: collection: $ref: '#/components/schemas/properties-identifier' workspace: $ref: '#/components/schemas/identifier' documentType: type: string description: The document type's identifier. Provide if you already know the document type. nullable: true fileName: $ref: '#/components/schemas/FileName' expiryTime: $ref: '#/components/schemas/ExpiryTime' isConfirmed: $ref: '#/components/schemas/isConfirmed' isRejected: $ref: '#/components/schemas/isRejected' isArchived: $ref: '#/components/schemas/isArchived' skipParse: $ref: '#/components/schemas/skipParse' language: $ref: '#/components/schemas/Language' identifier: type: string description: Deprecated in favor of `customIdentifier`. deprecated: true customIdentifier: type: string description: Specify a custom identifier for the document if you need one, not required to be unique. llmHint: type: string nullable: true description: Optional hint inserted into the LLM prompt when processing this document. warningMessages: type: array items: $ref: '#/components/schemas/DocumentWarning' Organization_properties-identifier: type: string description: Uniquely identify an organization. example: mEFayXdO OrganizationRole: type: string enum: - admin - member example: admin PaletteColorOptions: type: object required: - main properties: main: type: string light: type: string dark: type: string contrastText: type: string ThemeConfig: type: object properties: palette: type: object properties: mode: type: string enum: - light - dark background: oneOf: - type: string - type: object properties: default: type: string paper: type: string text: type: object properties: primary: type: string secondary: type: string disabled: type: string divider: type: string primary: $ref: '#/components/schemas/PaletteColorOptions' secondary: $ref: '#/components/schemas/PaletteColorOptions' success: $ref: '#/components/schemas/PaletteColorOptions' annotation: $ref: '#/components/schemas/PaletteColorOptions' error: $ref: '#/components/schemas/PaletteColorOptions' info: $ref: '#/components/schemas/PaletteColorOptions' warning: $ref: '#/components/schemas/PaletteColorOptions' typography: type: object properties: fontFamily: type: string fontSize: oneOf: - type: string - type: number fontWeightRegular: type: string fontWeightMedium: type: string fontWeightBold: type: string borderRadius: type: number fontUrl: type: string Organization: type: object properties: identifier: type: string description: Uniquely identify an organization. example: mEFayXdO name: type: string example: Grove Street King userRole: type: string allOf: - $ref: '#/components/schemas/OrganizationRole' nullable: true description: The role of the logged in user within the organization. avatar: type: string nullable: true description: URL of the organization's avatar. example: https://affinda-api.s3.amazonaws.com/media/org-avatar.png?AWSAccessKeyId=KEY&Signature=SIG resthookSignatureKey: type: string nullable: true description: Used to sign webhook payloads so you can verify their integrity. example: 465c6598bd34c0558f0ce256c43209d49fa85b0ff3e4c18b24e408b7563143ad isTrial: type: boolean validationToolConfig: type: object nullable: true description: Configuration of the embeddable validation tool. properties: theme: $ref: '#/components/schemas/ThemeConfig' hideActions: type: boolean description: Hide the confirm document button and other actions. hideCollection: type: boolean description: Hide the collection selector. hideEditPages: type: boolean description: Hide the edit pages button. hideExport: type: boolean description: Hide the export menu. hideFilename: type: boolean description: Hide the filename input. hideShowRawValues: type: boolean description: Hide the toggle for showing raw annotation values. hideReject: type: boolean description: Hide the reject document button. hideReparse: type: boolean description: Hide the reparse button. hideRunOcr: type: boolean description: Hide the run OCR button. hideTags: type: boolean description: Hide the tags editor. hideWarnings: type: boolean description: Hide the warnings panel. restrictDocumentSplitting: type: boolean description: Disable the page editor after a document has been split once. disableCurrencyFormatting: type: boolean description: Disable currency formatting of decimals values. disableEditDocumentMetadata: type: boolean description: Disable editing document metadata. Makes the collection selector, filename input and tags editor read only. disableManualAnnotationEditing: type: boolean description: Disable manual editing of annotation values via the validation popover. hideDocumentStatus: type: boolean description: Hide the document status indicator in the toolbar. showCustomFieldCreation: type: boolean description: Whether to show the custom field creation in the UI. WorkspaceVisibility: type: string enum: - organization - private description: Visibility "organization" means everyone in the organization can access the workspace. Visibility "private" means only people explicitly added can access the workspace. example: organization namePlural: type: string isCustom: type: boolean createdDt: type: string format: date-time baseExtractor: type: object nullable: true required: - identifier - name - namePlural - validatable properties: identifier: $ref: '#/components/schemas/Extractor_properties-identifier' name: $ref: '#/components/schemas/name' namePlural: $ref: '#/components/schemas/namePlural' validatable: $ref: '#/components/schemas/validatable' isCustom: $ref: '#/components/schemas/isCustom' createdDt: $ref: '#/components/schemas/createdDt' category: type: string nullable: true example: Recruitment unvalidatedDocsCount: type: integer nullable: true minimum: 0 description: Number of unvalidated documents in the collection. confirmedDocsCount: type: integer nullable: true minimum: 0 description: Number of validated documents in the collection. RejectDuplicates: type: boolean description: If "true", parsing will fail when the uploaded document is duplicate of an existing document, no credits will be consumed. If "false", will parse the document normally whether its a duplicate or not. If not provided, will fallback to the workspace settings. example: true nullable: true DocumentSplitter_properties-identifier: type: string description: Uniquely identify a document splitter. example: NqIvMvZl WorkspaceDocumentSplitter: type: object required: - identifier - name properties: identifier: $ref: '#/components/schemas/DocumentSplitter_properties-identifier' name: $ref: '#/components/schemas/name' Workspace: type: object required: - identifier properties: identifier: type: string description: Uniquely identify a workspace. example: mEFayXdO organization: $ref: '#/components/schemas/Organization' name: type: string visibility: $ref: '#/components/schemas/WorkspaceVisibility' collections: type: array items: type: object required: - identifier - name - extractor properties: identifier: $ref: '#/components/schemas/properties-identifier' name: $ref: '#/components/schemas/name' extractor: type: object required: - identifier - name - namePlural - validatable properties: identifier: $ref: '#/components/schemas/Extractor_properties-identifier' name: $ref: '#/components/schemas/name' namePlural: $ref: '#/components/schemas/namePlural' baseExtractor: $ref: '#/components/schemas/baseExtractor' category: $ref: '#/components/schemas/category' validatable: $ref: '#/components/schemas/validatable' createdDt: $ref: '#/components/schemas/createdDt' unvalidatedDocsCount: $ref: '#/components/schemas/unvalidatedDocsCount' confirmedDocsCount: $ref: '#/components/schemas/confirmedDocsCount' documentTypes: type: array description: Document types associated with this workspace items: $ref: '#/components/schemas/properties-identifier' rejectInvalidDocuments: type: boolean description: If true, the uploaded document will be rejected if it's of the wrong document type, or if its document type cannot be determined. No credits will be consumed. rejectDuplicates: $ref: '#/components/schemas/RejectDuplicates' members: type: array items: $ref: '#/components/schemas/User' unvalidatedDocsCount: type: integer minimum: 0 description: Number of unvalidated documents in the workspace. confirmedDocsCount: type: integer minimum: 0 description: Number of validated documents in the workspace. ingestEmail: type: string description: When you send email to this address, any document attached in the body will be uploaded to this workspace. whitelistIngestAddresses: type: array nullable: true description: If specified, only emails from these addresses will be ingested for parsing. Wild cards are allowed, e.g. "*@eyefind.info". items: type: string example: '*@eyefind.info' documentSplitter: $ref: '#/components/schemas/WorkspaceDocumentSplitter' nullable: true rejectInvalidDocuments: type: boolean description: If true, the uploaded document will be rejected if it's of the wrong document type, or if its document type cannot be determined. No credits will be consumed. whitelistIngestAddresses: type: array nullable: true description: If specified, only emails from these addresses will be ingested for parsing. Wild cards are allowed, e.g. "*@eyefind.info". items: type: string example: '*@eyefind.info' WorkspaceCreate: type: object required: - organization - name properties: organization: $ref: '#/components/schemas/Organization_properties-identifier' name: $ref: '#/components/schemas/name' visibility: $ref: '#/components/schemas/WorkspaceVisibility' rejectInvalidDocuments: $ref: '#/components/schemas/rejectInvalidDocuments' rejectDuplicates: $ref: '#/components/schemas/RejectDuplicates' documentTypes: type: array description: Document types to associate with this workspace items: $ref: '#/components/schemas/properties-identifier' whitelistIngestAddresses: $ref: '#/components/schemas/whitelistIngestAddresses' documentSplitter: $ref: '#/components/schemas/DocumentSplitter_properties-identifier' nullable: true WorkspaceUpdate: type: object properties: name: $ref: '#/components/schemas/name' visibility: $ref: '#/components/schemas/WorkspaceVisibility' rejectInvalidDocuments: $ref: '#/components/schemas/rejectInvalidDocuments' rejectDuplicates: $ref: '#/components/schemas/RejectDuplicates' documentTypes: type: array description: Document types to associate with this workspace items: $ref: '#/components/schemas/properties-identifier' whitelistIngestAddresses: $ref: '#/components/schemas/whitelistIngestAddresses' documentSplitter: $ref: '#/components/schemas/DocumentSplitter_properties-identifier' nullable: true UsageByWorkspace: type: object description: Monthly credits consumption required: - month - count properties: month: type: string description: Month of the usage example: 2023-07 count: type: integer description: Usage count example: 100 additionalProperties: false UsageByWorkspaceResponse: type: array description: Monthly credits consumption items: $ref: '#/components/schemas/UsageByWorkspace' WorkspaceMembership: type: object properties: identifier: type: string description: Uniquely identify a membership. example: mEFayXdO workspace: $ref: '#/components/schemas/identifier' user: $ref: '#/components/schemas/User' properties-id: type: integer description: Uniquely identify a user. example: 1 minimum: 1 WorkspaceMembershipCreate: type: object properties: workspace: $ref: '#/components/schemas/identifier' user: $ref: '#/components/schemas/properties-id' WorkspaceMembership_properties-identifier: type: string description: Uniquely identify a membership. example: mEFayXdO DocumentType: type: object required: - identifier - name - organization properties: identifier: type: string description: Uniquely identify a document type. example: mEFayXdO name: type: string description: The name of the document type. description: type: string nullable: true description: A description of the document type. ingest_email: type: string description: The email address that can be used to email documents directly to this document type. organization: type: string description: The identifier of the organization this document type belongs to. DocumentTypeCreate: type: object required: - name - organization properties: name: type: string description: The name of the document type. description: type: string nullable: true description: A description of the document type. organization: type: string description: The identifier of the organization this document type belongs to. DocumentTypeUpdate: type: object properties: name: type: string description: The new name of the document type. description: type: string nullable: true description: A new description of the document type. DocumentType_properties-identifier: type: string description: Uniquely identify a document type. example: mEFayXdO PydanticModelsResponse: type: object required: - code properties: code: type: string description: Pydantic model code properties-name: type: string example: My supplier list nullable: true MappingDataSource_properties-identifier: type: string description: Uniquely identify a mapping data source. example: mEFayXdO readOnly: true MappingDataSource: type: object description: A mapping data source is used to map from raw data found by our AI models to records in your database. required: - identifier - organization - workspace - keyProperty - displayProperty properties: identifier: type: string description: Uniquely identify a mapping data source. example: mEFayXdO readOnly: true name: type: string example: My supplier list nullable: true keyProperty: type: string example: value description: Attribute in the schema which uniquely identifiers the value displayProperty: type: string example: value description: Attribute in the schema which is used to display the value organization: type: string example: mewlkWEKL description: The organization that this mapping data source belongs to. nullable: true workspace: type: string example: mewlkWEKL description: The workspace that this mapping data source belongs to. nullable: true schema: type: object description: The schema of the mapping data source. example: type: object $schema: http://json-schema.org/draft-07/schema# required: - label properties: label: type: string description: type: string MappingDataSourceCreate: type: object description: A mapping data source is used to map from raw data found by our AI models to records in your database. required: - identifier properties: name: type: string example: My supplier list nullable: true organization: type: string example: mewlkWEKL description: The organization that this mapping data source belongs to. nullable: true workspace: type: string example: mewlkWEKL description: The workspace that this mapping data source belongs to. nullable: true keyProperty: type: string example: value description: Attribute in the schema which uniquely identifiers the value displayProperty: type: string example: label description: Attribute in the schema which is used to display the value values: type: array writeOnly: true items: type: object schema: type: object description: The schema of the mapping data source. example: type: object $schema: http://json-schema.org/draft-07/schema# required: - label properties: label: type: string description: type: string ValidationResult: type: object additionalProperties: false nullable: false description: Validation result arising from a ValidationRule required: - id - annotations - passed - ruleSlug - message - document properties: id: type: integer description: Validation Result's ID example: 1 minimum: 1 annotations: type: array items: type: integer description: List of annotation ids that were validated nullable: false example: - 1 - 2 - 3 passed: type: boolean description: Whether the validation passed or not, null if the validation was not applicable example: true nullable: true ruleSlug: type: string description: The kebab-case slug of the validation rule that was applied example: supplier-name-is-alphanumeric pattern: ^[a-z0-9][a-z0-9-]*[a-z0-9]$ message: type: string description: Message explaining why the validation failed example: Expected 'ThisInputShouldMatch' to match regex pattern '[0-9]* document: $ref: '#/components/schemas/DocumentMeta_properties-identifier' annotations: type: array items: type: integer description: List of annotation ids that were validated nullable: false example: - 1 - 2 - 3 passed: type: boolean description: Whether the validation passed or not, null if the validation was not applicable example: true nullable: true ruleSlug: type: string description: The kebab-case slug of the validation rule that was applied example: supplier-name-is-alphanumeric pattern: ^[a-z0-9][a-z0-9-]*[a-z0-9]$ message: type: string description: Message explaining why the validation failed example: Expected 'ThisInputShouldMatch' to match regex pattern '[0-9]* ValidationResultCreate: type: object required: - annotations - ruleSlug - message - document properties: annotations: $ref: '#/components/schemas/annotations' passed: $ref: '#/components/schemas/passed' ruleSlug: $ref: '#/components/schemas/ruleSlug' message: $ref: '#/components/schemas/message' document: $ref: '#/components/schemas/DocumentMeta_properties-identifier' ValidationResult_properties-id: type: integer description: Validation Result's ID example: 1 minimum: 1 ValidationResultUpdate: type: object properties: annotations: $ref: '#/components/schemas/annotations' passed: $ref: '#/components/schemas/passed' ruleSlug: $ref: '#/components/schemas/ruleSlug' message: $ref: '#/components/schemas/message' document: $ref: '#/components/schemas/DocumentMeta_properties-identifier' BatchDeleteValidationResultsRequest: type: object additionalProperties: false required: - ids properties: ids: type: array items: type: integer description: List of validation result IDs to delete. example: - 123 - 124 - 125 Organization_properties-name: type: string example: Grove Street King resthookSignatureKey: type: string nullable: true description: Used to sign webhook payloads so you can verify their integrity. example: 465c6598bd34c0558f0ce256c43209d49fa85b0ff3e4c18b24e408b7563143ad OrganizationCreate: type: object required: - name properties: name: $ref: '#/components/schemas/Organization_properties-name' avatar: type: string format: binary description: Upload avatar for the organization. resthookSignatureKey: $ref: '#/components/schemas/resthookSignatureKey' avatar: type: string format: binary description: Upload avatar for the organization. validationToolConfig: type: object nullable: true description: Configuration of the embeddable validation tool. properties: theme: $ref: '#/components/schemas/ThemeConfig' hideActions: type: boolean description: Hide the confirm document button and other actions. hideCollection: type: boolean description: Hide the collection selector. hideEditPages: type: boolean description: Hide the edit pages button. hideExport: type: boolean description: Hide the export menu. hideFilename: type: boolean description: Hide the filename input. hideShowRawValues: type: boolean description: Hide the toggle for showing raw annotation values. hideReject: type: boolean description: Hide the reject document button. hideReparse: type: boolean description: Hide the reparse button. hideRunOcr: type: boolean description: Hide the run OCR button. hideTags: type: boolean description: Hide the tags editor. hideWarnings: type: boolean description: Hide the warnings panel. restrictDocumentSplitting: type: boolean description: Disable the page editor after a document has been split once. disableCurrencyFormatting: type: boolean description: Disable currency formatting of decimals values. disableEditDocumentMetadata: type: boolean description: Disable editing document metadata. Makes the collection selector, filename input and tags editor read only. disableManualAnnotationEditing: type: boolean description: Disable manual editing of annotation values via the validation popover. hideDocumentStatus: type: boolean description: Hide the document status indicator in the toolbar. OrganizationUpdate: type: object properties: name: $ref: '#/components/schemas/Organization_properties-name' avatar: $ref: '#/components/schemas/avatar' resthookSignatureKey: $ref: '#/components/schemas/resthookSignatureKey' validationToolConfig: $ref: '#/components/schemas/validationToolConfig' UsageItem: type: object description: Daily credits consumption for a single date in the requested period. required: - date - count properties: date: type: string format: date description: The day this usage was recorded against, in YYYY-MM-DD. example: '2025-04-15' count: type: integer description: Credits consumed on this day. example: 123 additionalProperties: false UsageResponse: type: object description: Daily credits consumption for an organization over a date range, optionally scoped to a single workspace or document type. required: - scope - scopeIdentifier - start - end - total - items properties: scope: type: string description: What the usage was scoped to. enum: - organization - workspace - documentType scopeIdentifier: type: string description: Identifier of the scoped entity (organization, workspace, or document type). start: type: string format: date description: Inclusive start of the reported period (YYYY-MM-DD). example: '2025-04-01' end: type: string format: date description: Inclusive end of the reported period (YYYY-MM-DD). example: '2025-04-30' total: type: integer description: Total credits consumed over the period. example: 4320 items: type: array description: Per-day breakdown. Days with zero usage are omitted. items: $ref: '#/components/schemas/UsageItem' additionalProperties: false TagCreate: type: object required: - name - workspace properties: name: $ref: '#/components/schemas/name' workspace: $ref: '#/components/schemas/identifier' TagUpdate: type: object properties: name: $ref: '#/components/schemas/name' workspace: $ref: '#/components/schemas/identifier' BatchAddTagRequest: type: object properties: identifiers: type: array items: $ref: '#/components/schemas/DocumentMeta_properties-identifier' description: List of documents to tag tag: type: integer example: 1 description: The tag's ID BatchRemoveTagRequest: type: object properties: identifiers: type: array items: $ref: '#/components/schemas/DocumentMeta_properties-identifier' description: List of documents to remove tag from tag: type: integer description: The tag's ID Rectangle: type: object additionalProperties: false nullable: false required: - x0 - y0 - x1 - y1 properties: pageIndex: type: integer nullable: false example: 1 minimum: 0 x0: type: number nullable: false example: 2.43 y0: type: number nullable: false example: 4.55 x1: type: number nullable: false example: 4.56 y1: type: number nullable: false example: 6.32 AnnotationContentType: type: string description: The different data types of annotations enum: - text - integer - float - decimal - date - datetime - daterange - boolean - enum - location - phonenumber - json - table - expectedremuneration - jobtitle - language - skill - yearsexperience - group - table_deprecated - url - image - docclf Annotation: type: object additionalProperties: true nullable: true required: - id - rectangle - rectangles - document - pageIndex - raw - confidence - classificationConfidence - textExtractionConfidence - isVerified - isClientVerified - isAutoVerified - contentType properties: id: type: integer description: Annotation's ID example: 1 minimum: 1 rectangle: $ref: '#/components/schemas/Rectangle' nullable: true description: x/y coordinates for the rectangular bounding box containing the data rectangles: type: array items: $ref: '#/components/schemas/Rectangle' description: x/y coordinates for the rectangles containing the data. An annotation can be contained within multiple rectangles. document: $ref: '#/components/schemas/DocumentMeta_properties-identifier' pageIndex: type: integer nullable: true example: 0 minimum: 0 description: The page number within the document, starting from 0. raw: type: string nullable: true description: Raw data extracted from the before any post-processing confidence: type: number nullable: true example: 0.86 description: The overall confidence that the model's prediction is correct classificationConfidence: type: number nullable: true example: 0.95 description: The model's confidence that the text has been classified correctly textExtractionConfidence: type: number nullable: true example: 0.9 description: If the document was submitted as an image, this is the confidence that the text in the image has been correctly read by the model isVerified: type: boolean description: Indicates whether the data has been validated, either by a human using our validation tool or through auto-validation rules isClientVerified: type: boolean description: Indicates whether the data has been validated by a human isAutoVerified: type: boolean description: Indicates whether the data has been auto-validated dataPoint: type: string description: Data point's identifier field: type: string description: Field's identifier nullable: true contentType: $ref: '#/components/schemas/AnnotationContentType' parent: type: integer description: The parent annotation's ID nullable: true rectangles: type: array items: $ref: '#/components/schemas/Rectangle' description: x/y coordinates for the rectangles containing the data. An annotation can be contained within multiple rectangles. pageIndex: type: integer nullable: true example: 0 minimum: 0 description: The page number within the document, starting from 0. dataPoint: type: string description: Data point's identifier field: type: string description: Field's identifier nullable: true raw: type: string nullable: true description: Raw data extracted from the before any post-processing AnnotationCreate: type: object required: - document - pageIndex properties: rectangles: $ref: '#/components/schemas/rectangles' document: $ref: '#/components/schemas/DocumentMeta_properties-identifier' pageIndex: $ref: '#/components/schemas/pageIndex' dataPoint: $ref: '#/components/schemas/dataPoint' field: $ref: '#/components/schemas/field' raw: $ref: '#/components/schemas/raw' parsed: oneOf: - type: string nullable: true - type: integer nullable: true - type: number nullable: true - type: boolean nullable: true - type: object nullable: true additionalProperties: true - type: array nullable: true items: $ref: '#/components/schemas/AnnotationCreate' isClientVerified: $ref: '#/components/schemas/isClientVerified' parent: type: integer description: The parent annotation's ID nullable: true validationResults: type: array description: The validation results created, changed or deleted as a result of creating the annotation. items: $ref: '#/components/schemas/ChangedValidationResults' isClientVerified: type: boolean description: Indicates whether the data has been validated by a human ChangedValidationResults: type: object additionalProperties: true nullable: true properties: created: type: array description: List of validation results created during this operation. items: $ref: '#/components/schemas/ValidationResult' updated: type: array description: List of validation results updated during this operation. items: $ref: '#/components/schemas/ValidationResult' deleted: type: array description: List of validation results deleted during this operation. items: $ref: '#/components/schemas/ValidationResult' AnnotationWithValidationResults: type: object nullable: true allOf: - $ref: '#/components/schemas/Annotation' - type: object properties: validationResults: type: array description: List of validation results for this annotation. items: $ref: '#/components/schemas/ValidationResult' Annotation_properties-id: type: integer description: Annotation's ID example: 1 minimum: 1 AnotationDelete: type: object properties: validationResults: type: object description: The validation results created, changed or deleted as a result of deleting the annotation. items: $ref: '#/components/schemas/ChangedValidationResults' parent: type: integer description: The parent annotation's ID nullable: true AnnotationUpdate: type: object properties: rectangles: $ref: '#/components/schemas/rectangles' document: $ref: '#/components/schemas/DocumentMeta_properties-identifier' pageIndex: $ref: '#/components/schemas/pageIndex' raw: $ref: '#/components/schemas/raw' parsed: oneOf: - type: string nullable: true - type: integer nullable: true - type: number nullable: true - type: boolean nullable: true - type: object nullable: true additionalProperties: true - type: array nullable: true items: $ref: '#/components/schemas/AnnotationCreate' isClientVerified: $ref: '#/components/schemas/isClientVerified' dataPoint: $ref: '#/components/schemas/dataPoint' field: $ref: '#/components/schemas/field' parent: $ref: '#/components/schemas/parent' validationResults: type: array description: The validation results created, changed or deleted as a result of updating the annotation. items: $ref: '#/components/schemas/ChangedValidationResults' BatchCreateAnnotationsRequest: type: array items: $ref: '#/components/schemas/AnnotationCreate' BatchCreateAnnotationsResponse: type: array items: $ref: '#/components/schemas/Annotation' parsed: oneOf: - type: string nullable: true - type: integer nullable: true - type: number nullable: true - type: boolean nullable: true - type: object nullable: true additionalProperties: true - type: array nullable: true items: $ref: '#/components/schemas/AnnotationCreate' validationResults: type: array description: The validation results created, changed or deleted as a result of updating the annotation. items: $ref: '#/components/schemas/ChangedValidationResults' AnnotationBatchUpdate: type: object required: - id properties: id: $ref: '#/components/schemas/Annotation_properties-id' rectangles: $ref: '#/components/schemas/rectangles' document: $ref: '#/components/schemas/DocumentMeta_properties-identifier' pageIndex: $ref: '#/components/schemas/pageIndex' raw: $ref: '#/components/schemas/raw' parsed: $ref: '#/components/schemas/parsed' isClientVerified: $ref: '#/components/schemas/isClientVerified' dataPoint: $ref: '#/components/schemas/dataPoint' parent: $ref: '#/components/schemas/parent' validationResults: $ref: '#/components/schemas/validationResults' BatchUpdateAnnotationsRequest: type: array items: $ref: '#/components/schemas/AnnotationBatchUpdate' BatchUpdateAnnotationsResponse: type: array items: $ref: '#/components/schemas/Annotation' BatchDeleteAnnotationsRequest: type: array description: Array of annotation IDs to be deleted items: $ref: '#/components/schemas/Annotation_properties-id' BatchDeleteAnnotationsResponse: type: object properties: validationResults: type: object description: The validation results created, changed or deleted as a result of deleting the annotations. items: $ref: '#/components/schemas/ChangedValidationResults' ResthookEvent: type: string enum: - resume.parse.succeeded - resume.parse.failed - resume.parse.completed - invoice.parse.succeeded - invoice.parse.failed - invoice.parse.completed - invoice.validate.completed - document.parse.succeeded - document.parse.failed - document.parse.completed - document.validate.completed - document.classify.succeeded - document.classify.failed - document.classify.completed - document.rejected - annotation.validated description: The event name to subscribe to. example: document.parse.succeeded ResthookSubscriptionWorkspace: type: object required: - identifier - name - organization properties: identifier: $ref: '#/components/schemas/identifier' name: $ref: '#/components/schemas/name' organization: $ref: '#/components/schemas/Organization' ResthookSubscription: type: object required: - id - event - organization - workspace - targetUrl - active - autoDeactivated - autoDeactivateReason - version properties: id: type: integer description: Resthook subscription's ID. event: $ref: '#/components/schemas/ResthookEvent' organization: $ref: '#/components/schemas/Organization' nullable: true workspace: $ref: '#/components/schemas/ResthookSubscriptionWorkspace' nullable: true targetUrl: type: string description: URL of the resthook's receiver. example: https://my-site.com/receive active: type: boolean description: Resthooks only fire for active subscriptions. example: true autoDeactivated: type: boolean description: Resthook subscriptions can be auto deactivated if the receiver continuously returns error status code over a period of time. example: true autoDeactivateReason: type: string description: The reason for the subscription being auto deactivated. May contains the error response that the receiver returned. example: 'Resthook fails after 10 retries. The last error received was: 500 - Internal server error.' version: type: string enum: - v1 - v2 - v3 description: Version of the resthook subscription. Determines the resthook body being fired. example: v3 targetUrl: type: string description: URL of the resthook's receiver. example: https://my-site.com/receive version: type: string enum: - v1 - v2 - v3 description: Version of the resthook subscription. Determines the resthook body being fired. example: v3 ResthookSubscriptionCreate: type: object required: - targetUrl - event properties: targetUrl: $ref: '#/components/schemas/targetUrl' event: $ref: '#/components/schemas/ResthookEvent' organization: type: string allOf: - $ref: '#/components/schemas/Organization_properties-identifier' - type: string description: Specify to create an organization scope resthook. Not required if you're a member of only 1 organization. workspace: type: string allOf: - $ref: '#/components/schemas/identifier' - type: string description: Specify to create a workspace scope resthook. version: $ref: '#/components/schemas/version' ResthookSubscription_properties-id: type: integer description: Resthook subscription's ID. ResthookSubscriptionUpdate: type: object properties: event: $ref: '#/components/schemas/ResthookEvent' organization: $ref: '#/components/schemas/Organization_properties-identifier' workspace: $ref: '#/components/schemas/identifier' version: $ref: '#/components/schemas/version' Location: type: object nullable: true required: - rawInput properties: formatted: type: string nullable: true readOnly: true example: Blacksburg, VA, USA postalCode: type: string readOnly: true example: '3124' nullable: true state: type: string readOnly: true nullable: true example: Virginia stateCode: type: string nullable: true readOnly: true example: TX country: type: string readOnly: true nullable: true example: United States countryCode: type: string nullable: true readOnly: true example: US description: Two letter country code (ISO 3166-1 alpha-2) rawInput: type: string example: Blacksburg, VA streetNumber: type: string nullable: true readOnly: true example: '1' street: type: string nullable: true readOnly: true example: Smith St apartmentNumber: type: string nullable: true readOnly: true example: '12' city: type: string nullable: true readOnly: true example: Blacksburg latitude: type: number nullable: true readOnly: true example: '67.0124' longitude: type: number nullable: true readOnly: true example: '67.0124' poBox: type: string nullable: true readOnly: true example: P.O. Box 123 Accreditation: type: object nullable: true additionalProperties: false properties: education: type: string example: Bachelor of Science inputStr: type: string readOnly: true example: Bachelor of Science, Mechanical Engineering, expected matchStr: type: string nullable: true readOnly: true example: Bachelor of Science educationLevel: type: string nullable: true readOnly: true example: bachelors Education: type: object properties: id: type: integer nullable: false minimum: 1 organization: type: string nullable: true example: Virginia Polytechnic Institute and State University (Virginia Tech) accreditation: $ref: '#/components/schemas/Accreditation' grade: type: object additionalProperties: true nullable: true properties: raw: type: string example: 'GPA : 3.35' metric: type: string example: GPA nullable: true value: type: string example: '3.35' location: $ref: '#/components/schemas/Location' dates: type: object nullable: true additionalProperties: false properties: completionDate: type: string format: date example: '2021-05-01' isCurrent: type: boolean startDate: type: string format: date nullable: true example: '2019-05-01' rawText: type: string example: May-Aug '18 ManagementLevel: type: string example: Low nullable: true enum: - None - Low - Mid - Upper x-ms-enum: name: managementLevel ResumeData: type: object additionalProperties: anyOf: - type: object nullable: true - type: string nullable: true - type: integer nullable: true - type: number nullable: true - type: boolean nullable: true - type: array items: {} description: 'For fields with multiple entries, use lists. E.g. ''multipleField'': [''entry1'', ''entry2'']' nullable: true description: 'For custom fields. E.g. ''isAvailable'': true' not: type: object nullable: true description: A JSON-encoded string of the `ResumeData` object. properties: name: type: object nullable: true additionalProperties: false properties: raw: type: string example: Tim A. Smith first: type: string example: Tim last: type: string example: Smith middle: type: string example: A. title: type: string example: Dr phoneNumbers: type: array items: type: string example: - (704) 996-9966 - '+61412632636' phoneNumberDetails: type: array items: type: object properties: rawText: type: string nullable: false example: '+61412632636' formattedNumber: type: string nullable: true example: +61 412 632 636 countryCode: type: string nullable: true example: AU internationalCountryCode: type: integer nullable: true example: 61 minimum: 1 nationalNumber: type: string nullable: true example: 0412 632 636 websites: type: array items: type: string example: - www.timsmith.com emails: type: array items: type: string format: email example: - timsmith@vt.edu dateOfBirth: type: string example: '1992-01-01' nullable: true location: $ref: '#/components/schemas/Location' objective: type: string default: '' nullable: true languages: type: array items: type: string enum: - Ainu - Akan - Akkadian - Amharic - Anam - Arabic - Aramaic - Arem - Armenian - Awadhi - Aymara - Azari - Bagheli - Bagri - Bahasa - Bahasa Indonesian - Bambara - Bangala - Bardi - Bassa - Batak - Belarusian - Bemba - Benga - Bengali - Berber - Bhojpuri - Bislama - Brahui - Bulgarian - Bunu - Cambodian - Carew - Carib - Catalan - Cebuano - Chakma - Chamorro - Chango - Chewa - Croatian - Czech - Dagbani - Danish - Dari - Dayi - Dhatki - Dhivehi - Dinka - Dogri - Duala - Dutch - English - Esperanto - Estonian - Ewondo - Faroese - Filipino - Finnish - Formula - French - Frisian - Friulian - Fula - Gaelic - Galo - Garhwali - Garifuna - German - Gikuyu - Gujarati - Gujerati - Gwere - Hawaiian - Haya - Hebrew - Hindi - Hmu - Hokkien - Hopi - Hungarian - Hup - Ibanag - Igbo - Ilokano - Indonesian - Intermediate - Irish - Italian - Japanese - Jiba - Kachin - Kalenjin - Kamayo - Kannada - Kaonde - Kayan - Khandeshi - Khmer - Kikuyu - Kodava - Koma - Kongo - Konkani - Korean - Korwa - Kreyol - Krio - Kumaoni - Kurdish - Kurukh - Kwa - Ladino - Lango - Latvian - Lawa - Lingala - Lithuanian - Lule - Luxembourgish - Magahi - Maithili - Malay - Malayalam - Malaysian - Malvi - Maninka - Manipuri - Manx - Marathi - Mayan - Medumba - Memoni - Mewari - Mizo - Montenegrin - Mwan - Mwanga - Ndebele - Nepali - Nimadi - Oriya - Oromo - Ovambo - Pamona - Pangasinan - Pashto - Phoenician - Polish - Portuguese - Pulaar - Pular - Punjabi - Quecha - Rajasthani - Romanian - Russian - Sakha - Sango - Santhali - Saraiki - Seim - Shading - Shama - Shan - Shona - Silesian - Sindhi - Slovak - Slovene - Soga - Sogdian - Sotho - Spanish - Sudanese - Sumerian - Surajpuri - Surigaonon - Swati - Swazi - Swedish - Tagalog - Tamil - Tausug - Telugu - Tetum - Tharu - Tibetan - Tigrinya - Tripuri - Tswana - Tulu - Turkish - Tuwali - Ubi - Ukrainian - Urdu - Veps - Vietnamese - Wagdi - Waziri - Xhosa - Yiddish - Yoruba example: - English - French - Arabic languageCodes: type: array items: type: string readOnly: true example: - en - fr - ar summary: type: string default: '' nullable: true totalYearsExperience: type: integer example: 13 nullable: true minimum: 0 headShot: type: string format: byte nullable: true readOnly: true description: base64 encoded string education: type: array items: $ref: '#/components/schemas/Education' profession: type: string example: Software Developer description: Prediction of the candidate's profession based on recent work experience nullable: true readOnly: true linkedin: type: string example: https://www.linkedin.com/in/user-name description: Linkedin account associated with the candidate nullable: true readOnly: true workExperience: type: array items: type: object additionalProperties: false properties: id: type: integer nullable: false minimum: 1 jobTitle: type: string nullable: true example: Sales and retail assistants socCode: type: string nullable: true readOnly: true example: '7111' socName: type: string nullable: true readOnly: true example: Sales and retail assistants organization: type: string nullable: true example: General Motors industry: type: string nullable: true readOnly: true example: Automotive location: $ref: '#/components/schemas/Location' jobDescription: type: string nullable: true example: Interned with supercar Development from May 2017 to August 2017. dates: type: object additionalProperties: false nullable: true properties: startDate: type: string format: date nullable: true example: '2018-05-01' endDate: type: string format: date nullable: true example: '2018-08-01' monthsInPosition: type: integer nullable: true minimum: 0 isCurrent: type: boolean rawText: type: string example: May-Aug '18 occupation: type: object additionalProperties: false nullable: false readOnly: true properties: jobTitle: type: string nullable: true example: Sr. Software Developer description: The raw (not normalized) job title pulled from the work experience entry jobTitleNormalized: type: string example: Software Developer nullable: true description: Mapped onto the EMSI job title taxonomy if a sufficiently close match exists. emsiId: type: string nullable: true example: ETE2AD3A1C11B4EC9B description: EMSI id of the normalised job title. managementLevel: $ref: '#/components/schemas/ManagementLevel' classification: type: object additionalProperties: false nullable: true properties: title: type: string example: Book-keepers, payroll managers and wages clerks description: SOC2020 classification for this job title minorGroup: type: string example: 'Administrative Occupations: Finance' description: SOC2020 minor group subMajorGroup: type: string example: ADMINISTRATIVE OCCUPATIONS description: SOC2020 sub major group majorGroup: type: string example: ADMINISTRATIVE AND SECRETARIAL OCCUPATIONS description: SOC2020 major group socCode: type: integer example: 4122 minimum: 1 maximum: 9999 description: The 4 digit code representing the SOC2020 classification for this job title minorGroupCode: type: integer example: 4122 minimum: 1 maximum: 9999 description: The 4 digit code representing the SOC2020 classification for this job title subMajorGroupCode: type: integer example: 4122 minimum: 1 maximum: 9999 description: The 4 digit code representing the SOC2020 classification for this job title majorGroupCode: type: integer example: 4122 minimum: 1 maximum: 9999 description: The 4 digit code representing the SOC2020 classification for this job title skills: type: array items: type: object additionalProperties: false properties: id: type: integer nullable: false minimum: 1 emsiId: type: string nullable: true readOnly: true example: KS1218W78FGVPVP2KXPX description: EMSI id of this skill. name: type: string example: Applied Mechanics lastUsed: nullable: true type: string example: '2012-01-01' numberOfMonths: type: integer nullable: true example: 12 minimum: 0 type: type: string readOnly: true example: hard_skill count: type: integer nullable: true readOnly: true example: 16 minimum: 0 weighting: type: number nullable: true readOnly: true example: 0.057699221573302296 sources: type: array readOnly: true items: type: object additionalProperties: false properties: section: type: string example: WorkExperience position: type: integer nullable: true example: 0 description: If this skill is extracted from a "workExperience" section, the "position" is the index of the work experience where this skill is found, with 0 being the first work experience, 1 being the second work experience, and so on. workExperienceId: type: integer nullable: true example: 1234 description: If this skill is extracted from a "workExperience" section, the "workExperienceId" is the id of the work experience where this skill is found. certifications: type: array items: type: string example: - Certificate in AWS publications: type: array items: type: string example: - Tim Smith et al., Investigations of nanoparticles in the pathology of the human eye, Cell 2014 referees: type: array items: type: object additionalProperties: true properties: name: type: string example: Stephen Smith nullable: true text: type: string example: 'Stephen Smith, Team Member/Mentor, Company Power Generation: stephen.smith@company.com' email: type: string format: email example: stephen.smith@company.com nullable: true number: type: string example: '+61490667215' nullable: true position: type: string nullable: true example: Principal sections: type: array readOnly: true items: type: object additionalProperties: false properties: sectionType: type: string example: PersonalDetails bbox: type: array items: type: number example: - 0 - 36.392 - 612 - 111.056 minItems: 4 maxItems: 4 pageIndex: type: integer text: type: string example: isResumeProbability: type: integer readOnly: true nullable: true example: 98 description: Probability that the given document is a resume. Values below 30 suggest that the document is not a resume. rawText: type: string example: Christopher Nolan 3210 fake street '... ' description: All of the raw text of the parsed resume, example is shortened for readability redactedText: type: string example: '**** Objective: To obtain a job ''... ''' description: Redacted version of the text in the resume, removing PII. JobTitleAnnotation: type: object nullable: true allOf: - $ref: '#/components/schemas/Annotation' - properties: parsed: type: object nullable: true description: Years of experience range properties: name: type: string nullable: true managementLevel: type: string nullable: true example: Mid classification: type: object nullable: true properties: socCode: type: number example: 2463 title: type: string example: Clergy minorGroup: type: string example: Welfare Professionals subMajorGroup: type: string example: BUSINESS, MEDIA AND PUBLIC SERVICE PROFESSIONALS majorGroup: type: string example: PROFESSIONAL OCCUPATIONS minorGroupCode: type: integer example: 4122 minimum: 1 maximum: 9999 description: The 4 digit code representing the SOC2020 classification for this job title subMajorGroupCode: type: integer example: 4122 minimum: 1 maximum: 9999 description: The 4 digit code representing the SOC2020 classification for this job title majorGroupCode: type: integer example: 4122 minimum: 1 maximum: 9999 description: The 4 digit code representing the SOC2020 classification for this job title TextAnnotation: type: object nullable: true allOf: - $ref: '#/components/schemas/Annotation' - type: object properties: parsed: type: string nullable: true DateAnnotation: type: object nullable: true allOf: - $ref: '#/components/schemas/Annotation' - type: object properties: parsed: type: string format: date nullable: true example: '2022-02-09' LanguageAnnotation: type: object nullable: true allOf: - $ref: '#/components/schemas/Annotation' - type: object properties: parsed: type: string readOnly: true nullable: true example: Basket weaving SkillAnnotation: type: object nullable: true allOf: - $ref: '#/components/schemas/Annotation' - type: object properties: parsed: type: string readOnly: true nullable: true example: Mandarin Chinese ExpectedRemunerationAnnotation: type: object nullable: true allOf: - $ref: '#/components/schemas/Annotation' - type: object properties: parsed: type: object properties: minimum: type: number nullable: true example: '3455343.50' maximum: type: number nullable: true example: '55545343.50' currency: type: string nullable: true example: USD unit: type: string nullable: true example: Annually LocationAnnotation: type: object nullable: true allOf: - $ref: '#/components/schemas/Annotation' - type: object properties: parsed: $ref: '#/components/schemas/Location' YearsExperienceAnnotation: type: object nullable: true allOf: - $ref: '#/components/schemas/Annotation' - type: object properties: parsed: type: object description: Years of experience range properties: minimum: type: number nullable: true description: Minimum years of experience example: 0.5 maximum: type: number nullable: true description: Maximum years of experience example: 5 JobDescriptionData: type: object additionalProperties: anyOf: - type: string nullable: true - type: integer nullable: true - type: number nullable: true - type: boolean nullable: true - type: array items: {} description: 'For fields with multiple entries, use lists. E.g. ''multipleField'': [''entry1'', ''entry2'']' nullable: true description: 'For custom fields. E.g. ''isAvailable'': true' not: type: object nullable: true description: A JSON-encoded string of the `JobDescriptionData` object. properties: jobTitle: $ref: '#/components/schemas/JobTitleAnnotation' contactEmail: $ref: '#/components/schemas/TextAnnotation' contactName: $ref: '#/components/schemas/TextAnnotation' contactPhone: $ref: '#/components/schemas/TextAnnotation' startDate: $ref: '#/components/schemas/DateAnnotation' endDate: $ref: '#/components/schemas/DateAnnotation' jobType: $ref: '#/components/schemas/TextAnnotation' languages: type: array items: $ref: '#/components/schemas/LanguageAnnotation' skills: type: array items: $ref: '#/components/schemas/SkillAnnotation' organizationName: $ref: '#/components/schemas/TextAnnotation' organizationWebsite: $ref: '#/components/schemas/TextAnnotation' educationLevel: $ref: '#/components/schemas/TextAnnotation' educationAccreditation: $ref: '#/components/schemas/TextAnnotation' expectedRemuneration: $ref: '#/components/schemas/ExpectedRemunerationAnnotation' location: $ref: '#/components/schemas/LocationAnnotation' certifications: type: array items: $ref: '#/components/schemas/TextAnnotation' yearsExperience: $ref: '#/components/schemas/YearsExperienceAnnotation' rawText: type: string example: Human Resources Assistant Switzerland '... ' description: All of the raw text of the parsed job description, example is shortened for readability x-csharp-usage: output DocumentCreateFromData: type: object required: - data properties: data: description: Create resume or job description directly from data. oneOf: - $ref: '#/components/schemas/ResumeData' - $ref: '#/components/schemas/JobDescriptionData' AnnotationBase: type: object additionalProperties: true nullable: true properties: id: type: integer rectangle: $ref: '#/components/schemas/Rectangle' nullable: true rectangles: type: array readOnly: true items: $ref: '#/components/schemas/Rectangle' nullable: true pageIndex: type: integer nullable: true example: 0 raw: type: string nullable: true example: 2/9/2022 confidence: type: number nullable: true example: 0.86 description: The overall confidence that the model's prediction is correct classificationConfidence: type: number nullable: true example: 0.95 description: The model's confidence that the text has been classified correctly textExtractionConfidence: type: number nullable: true example: 0.9 description: If the document was submitted as an image, this is the confidence that the text in the image has been correctly read by the model. isVerified: type: boolean isClientVerified: type: boolean isAutoVerified: type: boolean dataPoint: type: string contentType: type: string JobTitleParsed: type: object properties: parsed: type: object nullable: true description: Matching job title to extracted text readOnly: true properties: name: type: string nullable: true managementLevel: type: string nullable: true example: Mid classification: type: object nullable: true properties: socCode: type: number example: 2463 title: type: string example: Clergy minorGroup: type: string example: Welfare Professionals subMajorGroup: type: string example: BUSINESS, MEDIA AND PUBLIC SERVICE PROFESSIONALS majorGroup: type: string example: PROFESSIONAL OCCUPATIONS minorGroupCode: type: integer example: 4122 description: The 4 digit code representing the SOC2020 classification for this job title subMajorGroupCode: type: integer example: 4122 description: The 4 digit code representing the SOC2020 classification for this job title majorGroupCode: type: integer example: 4122 description: The 4 digit code representing the SOC2020 classification for this job title JobTitleAnnotationUpdate: type: object nullable: true allOf: - $ref: '#/components/schemas/AnnotationBase' - $ref: '#/components/schemas/JobTitleParsed' TextAnnotationUpdate: type: object nullable: true allOf: - $ref: '#/components/schemas/AnnotationBase' - type: object properties: parsed: type: string nullable: true example: John Smith DateAnnotationUpdate: type: object nullable: true allOf: - $ref: '#/components/schemas/AnnotationBase' - type: object properties: parsed: type: string format: date nullable: true example: '2022-02-09' LanguageAnnotationUpdate: type: object nullable: true allOf: - $ref: '#/components/schemas/AnnotationBase' - type: object properties: parsed: type: string readOnly: true nullable: true example: Mandarin Chinese SkillAnnotationUpdate: type: object nullable: true allOf: - $ref: '#/components/schemas/AnnotationBase' - type: object properties: parsed: type: string readOnly: true nullable: true example: Basket weaving ExpectedRemunerationAnnotationUpdate: type: object nullable: true allOf: - $ref: '#/components/schemas/AnnotationBase' - type: object properties: parsed: type: object properties: minimum: type: number nullable: true example: '3455343.50' maximum: type: number nullable: true example: '55545343.50' currency: type: string nullable: true example: USD unit: type: string nullable: true example: Annually LocationAnnotationUpdate: type: object nullable: true allOf: - $ref: '#/components/schemas/AnnotationBase' - type: object properties: parsed: readOnly: true allOf: - $ref: '#/components/schemas/Location' YearsExperienceAnnotationUpdate: type: object nullable: true allOf: - $ref: '#/components/schemas/AnnotationBase' - type: object properties: parsed: type: object description: Years of experience range properties: minimum: type: number nullable: true description: Minimum years of experience example: 0.5 maximum: type: number nullable: true description: Maximum years of experience example: 5 JobDescriptionDataUpdate: type: object additionalProperties: anyOf: - type: string nullable: true - type: integer nullable: true - type: number nullable: true - type: boolean nullable: true - type: array items: {} description: 'For fields with multiple entries, use lists. E.g. ''multipleField'': [''entry1'', ''entry2'']' nullable: true description: 'For custom fields. E.g. ''isAvailable'': true' not: type: object nullable: true description: A JSON-encoded string of the `JobDescriptionData` object. properties: jobTitle: $ref: '#/components/schemas/JobTitleAnnotationUpdate' contactEmail: $ref: '#/components/schemas/TextAnnotationUpdate' contactName: $ref: '#/components/schemas/TextAnnotationUpdate' contactPhone: $ref: '#/components/schemas/TextAnnotationUpdate' startDate: $ref: '#/components/schemas/DateAnnotationUpdate' endDate: $ref: '#/components/schemas/DateAnnotationUpdate' jobType: $ref: '#/components/schemas/TextAnnotationUpdate' languages: type: array items: $ref: '#/components/schemas/LanguageAnnotationUpdate' skills: type: array items: $ref: '#/components/schemas/SkillAnnotationUpdate' organizationName: $ref: '#/components/schemas/TextAnnotationUpdate' organizationWebsite: $ref: '#/components/schemas/TextAnnotationUpdate' educationLevel: $ref: '#/components/schemas/TextAnnotationUpdate' educationAccreditation: $ref: '#/components/schemas/TextAnnotationUpdate' expectedRemuneration: $ref: '#/components/schemas/ExpectedRemunerationAnnotationUpdate' location: $ref: '#/components/schemas/LocationAnnotationUpdate' certifications: type: array items: $ref: '#/components/schemas/TextAnnotationUpdate' yearsExperience: $ref: '#/components/schemas/YearsExperienceAnnotationUpdate' x-csharp-usage: output OccupationGroup: type: object additionalProperties: false required: - code - name - children properties: code: type: integer name: type: string children: type: array items: $ref: '#/components/schemas/OccupationGroup' ResumeSearchParametersLocation: type: object properties: name: type: string default: '' coordinates: type: object nullable: true properties: latitude: type: number nullable: true longitude: type: number nullable: true distance: type: integer default: 100 minimum: 1 unit: type: string enum: - km - mi default: km x-ms-enum: name: searchLocationUnit ResumeSearchParametersSkill: type: object properties: name: type: string required: type: boolean EducationLevel: type: string example: bachelors nullable: true enum: - school - certificate - bachelors - masters - doctoral x-ms-enum: name: educationLevel SearchParametersCustomData: type: object required: - filterType - query properties: filterType: type: string enum: - equals - range example: equals description: Data points of "text" type support only "equals" filterType, others support both "equals" and "range" dataPoint: type: string nullable: true example: isAvailable description: The data point's slug, used for portal v2 (deprecated) deprecated: true field: type: string nullable: true example: isAvailable description: The field's slug query: type: object example: value: true description: '"equals" searches require the "value" key inside the query, and "range" searches require at least one of "gte" (greater than or equal) and "lte" (less than or equal)' required: type: boolean weight: type: number minimum: 0 maximum: 1 ResumeSearchParametersCustomData: type: object allOf: - $ref: '#/components/schemas/SearchParametersCustomData' ResumeSearchParameters: type: object additionalProperties: false nullable: false required: - indices properties: indices: type: array example: - all-resumes items: type: string jobDescription: $ref: '#/components/schemas/Identifier' nullable: true resume: $ref: '#/components/schemas/Identifier' nullable: true jobTitles: type: array items: type: string jobTitlesCurrentOnly: type: boolean description: Search only through the canditate's current job jobTitlesRequired: type: boolean jobTitlesWeight: type: number minimum: 0 maximum: 1 yearsExperienceMin: type: integer nullable: true minimum: 0 description: Minimum years of total work experience yearsExperienceMax: type: integer nullable: true minimum: 0 description: Maximum years of total work experience yearsExperienceRequired: type: boolean yearsExperienceWeight: type: number minimum: 0 maximum: 1 locations: type: array description: Search by location name or by coordinates items: $ref: '#/components/schemas/ResumeSearchParametersLocation' locationsWeight: type: number minimum: 0 maximum: 1 locationsRequired: type: boolean skills: type: array items: $ref: '#/components/schemas/ResumeSearchParametersSkill' skillsWeight: type: number minimum: 0 maximum: 1 languages: type: array items: $ref: '#/components/schemas/ResumeSearchParametersSkill' languagesWeight: type: number minimum: 0 maximum: 1 institutions: type: array items: type: string institutionsRequired: type: boolean degrees: type: array items: type: string degreesRequired: type: boolean highestDegreeTypes: type: array uniqueItems: true items: $ref: '#/components/schemas/EducationLevel' highestDegreeTypesRequired: type: boolean isCurrentStudent: type: boolean description: Search for student canditates isCurrentStudentRequired: type: boolean isRecentGraduate: type: boolean description: Search for canditates that graduated less than a year ago isRecentGraduateRequired: type: boolean educationWeight: type: number minimum: 0 maximum: 1 searchExpression: type: string nullable: true description: Search through resumes' raw text searchExpressionRequired: type: boolean searchExpressionWeight: type: number minimum: 0 maximum: 1 socCodes: type: array items: type: integer description: A list of occupation group IDs, more details can be found in the endpoint minimum: 1 maximum: 9999 socCodesWeight: type: number minimum: 0 maximum: 1 socCodesRequired: type: boolean managementLevel: $ref: '#/components/schemas/ManagementLevel' managementLevelRequired: type: boolean managementLevelWeight: type: number minimum: 0 maximum: 1 customData: type: array items: $ref: '#/components/schemas/ResumeSearchParametersCustomData' JobTitleSearchScoreComponent: type: object additionalProperties: false required: - label properties: value: type: string example: Software Developer label: type: string example: Job Title score: type: number nullable: true example: 0.68 ManagementLevelSearchScoreComponent: type: object additionalProperties: false required: - label properties: value: type: string example: Low label: type: string example: Management level score: type: number nullable: true example: 0.68 ExperienceSearchScoreComponent: type: object additionalProperties: false required: - label properties: value: type: string example: 2.0 - 3.0 years label: type: string example: Experience score: type: number nullable: true example: 0.68 SkillsSearchScoreComponent: type: object additionalProperties: false required: - label properties: value: type: string example: Python (Programming Language), Software Development label: type: string example: Skills score: type: number nullable: true example: 0.68 LanguagesSearchScoreComponent: type: object additionalProperties: false required: - label properties: value: type: string example: English label: type: string example: Languages score: type: number nullable: true example: 0.68 LocationSearchScoreComponent: type: object additionalProperties: false required: - label properties: value: type: string example: Roxburgh Park, Australia label: type: string example: Location score: type: number nullable: true example: 0.68 EducationSearchScoreComponent: type: object additionalProperties: false required: - label properties: value: type: string example: Architecture Interior Design label: type: string example: Education score: type: number nullable: true example: 0.68 OccupationGroupSearchScoreComponent: type: object additionalProperties: false required: - label properties: value: type: string example: Programmers and software development professionals label: type: string example: Occupation group score: type: number nullable: true example: 0.68 SearchExpressionSearchScoreComponent: type: object additionalProperties: false required: - label properties: label: type: string example: Search expression value: type: string score: type: number nullable: true example: 0.68 CustomDataSearchScoreComponent: type: object additionalProperties: type: object required: - label properties: value: type: string example: 'True' label: type: string example: Is available score: type: number nullable: true example: 0.68 ResumeSearchResult: type: object additionalProperties: false required: - identifier - score - pdf - jobTitle - managementLevel - experience - skills - languages - location - education - occupationGroup - searchExpression - customData properties: identifier: $ref: '#/components/schemas/Identifier' score: type: number example: 0.98 pdf: type: string example: https://affinda-api.s3.amazonaws.com/media/documents/Example-Resume nullable: true name: type: string example: Mary Jane jobTitle: $ref: '#/components/schemas/JobTitleSearchScoreComponent' managementLevel: $ref: '#/components/schemas/ManagementLevelSearchScoreComponent' experience: $ref: '#/components/schemas/ExperienceSearchScoreComponent' skills: $ref: '#/components/schemas/SkillsSearchScoreComponent' languages: $ref: '#/components/schemas/LanguagesSearchScoreComponent' location: $ref: '#/components/schemas/LocationSearchScoreComponent' education: $ref: '#/components/schemas/EducationSearchScoreComponent' occupationGroup: $ref: '#/components/schemas/OccupationGroupSearchScoreComponent' searchExpression: $ref: '#/components/schemas/SearchExpressionSearchScoreComponent' customData: $ref: '#/components/schemas/CustomDataSearchScoreComponent' ResumeSearch: type: object additionalProperties: false properties: count: type: integer example: 130 minimum: 0 description: Total number of results next: type: string nullable: true example: https://api.affinda.com/v3/documents?limit=300&offset=300 description: URL to request next page of results previous: type: string nullable: true example: https://api.affinda.com/v3/documents?limit=300 description: URL to request previous page of results parameters: $ref: '#/components/schemas/ResumeSearchParameters' results: type: array items: $ref: '#/components/schemas/ResumeSearchResult' ResumeSkill: type: object properties: name: type: string nullable: true lastUsed: type: string nullable: true example: '2022-05-16' numberOfMonths: type: integer nullable: true minimum: 0 type: type: string nullable: true sources: type: array items: type: object properties: section: type: string enum: - Achievements - AdditionalInformation - Education - Extracurriculars - Organisations - Other - PersonalDetails - Projects - Publications - Referees - Skills - Summary - Training - WorkExperience - NotPopulated - Header - Footer - Skills/Interests/Languages - Training/Certifications - Extracurriculars/Leadership position: type: integer nullable: true minimum: 0 OccupationGroupSearchResult: type: object additionalProperties: false required: - code - name properties: match: type: boolean example: true code: type: integer name: type: string children: type: array items: $ref: '#/components/schemas/OccupationGroup' parents: type: array items: $ref: '#/components/schemas/OccupationGroup' ResumeSearchDetail: type: object properties: jobTitle: type: object nullable: false properties: missing: type: array items: type: string value: type: array items: type: object properties: name: type: string nullable: true example: Javascript developer startDate: type: string nullable: true example: '2021-06-16' endDate: type: string nullable: true example: '2022-05-01' companyName: type: string nullable: true example: Affinda match: type: boolean example: true location: type: object nullable: false properties: missing: type: array items: $ref: '#/components/schemas/ResumeSearchParametersLocation' value: type: object nullable: true allOf: - $ref: '#/components/schemas/Location' - type: object properties: match: type: boolean example: true education: type: object nullable: false properties: missing: type: object properties: degrees: type: array items: type: string highestDegreeTypes: type: array items: type: string institutions: type: array items: type: string currentStudent: type: boolean recentGraduate: type: boolean value: type: array items: type: object allOf: - $ref: '#/components/schemas/Education' - type: object properties: match: type: boolean example: true skills: type: object nullable: false properties: missing: type: array items: $ref: '#/components/schemas/ResumeSearchParametersSkill' value: type: array items: type: object allOf: - $ref: '#/components/schemas/ResumeSkill' - type: object properties: match: type: boolean example: true experience: type: object properties: years: type: integer nullable: true minimum: 0 match: type: boolean example: true occupationGroup: type: object nullable: false properties: missing: type: array items: type: integer value: type: array items: $ref: '#/components/schemas/OccupationGroupSearchResult' languages: type: object nullable: false properties: missing: type: array items: $ref: '#/components/schemas/ResumeSearchParametersSkill' value: type: array items: type: object allOf: - $ref: '#/components/schemas/ResumeSkill' - type: object properties: match: type: boolean example: true managementLevel: type: object nullable: true properties: level: $ref: '#/components/schemas/ManagementLevel' match: type: boolean example: true searchExpression: type: object properties: missing: type: array items: type: string value: type: array items: type: string SearchConfigAction: type: object required: - label - eventName properties: label: description: Human readable label to display in the UI type: string example: Add to shortlist eventName: description: Name of the event to be triggered type: string example: addToShortlist CustomFieldConfig: type: object required: - dataPoint - weight properties: dataPoint: type: string description: Data point identifier. example: RdNAniIH weight: type: number minimum: 0 maximum: 1 example: 0.5 default: 0.5 ResumeSearchConfig: type: object properties: allowPdfDownload: type: boolean nullable: false maxResults: type: integer minimum: 1 nullable: true description: Maximum number of results that can be returned. Setting to "null" means no limitation. example: 10 displayJobTitle: type: boolean nullable: false displayLocation: type: boolean nullable: false displayYearsExperience: type: boolean nullable: false displayOccupationGroup: type: boolean nullable: false displayEducation: type: boolean nullable: false displaySkills: type: boolean nullable: false displayLanguages: type: boolean nullable: false displayManagementLevel: type: boolean nullable: false displayKeywords: type: boolean nullable: false weightJobTitle: type: number nullable: false weightLocation: type: number nullable: false weightYearsExperience: type: number nullable: false weightOccupationGroup: type: number nullable: false weightEducation: type: number nullable: false weightSkills: type: number nullable: false weightLanguages: type: number nullable: false weightManagementLevel: type: number nullable: false weightKeywords: type: number nullable: false indices: type: array items: type: string description: List of index names. example: - all-resumes - my-index showIndexDropdown: type: boolean nullable: true description: Controls whether or not the index dropdown is displayed to the user searchToolTheme: type: object allOf: - $ref: '#/components/schemas/ThemeConfig' nullable: true description: Customize the theme of the embeded search tool. userId: type: integer nullable: false readOnly: true description: ID of the logged in user. example: 1234 minimum: 1 username: type: string nullable: false readOnly: true description: Username of the logged in user. example: big.smoke actions: type: array nullable: true description: A list of actions to show in the dropdown in the embedded search tool items: $ref: '#/components/schemas/SearchConfigAction' hideToolbar: type: boolean nullable: false description: Hide the reset/import toolbar. hideSidePanel: type: boolean nullable: false description: Hide the entire side panel. customFieldsConfig: type: array nullable: true items: $ref: '#/components/schemas/CustomFieldConfig' distanceUnit: type: string nullable: false description: The unit of distance to use for location based searches example: km enum: - mi - km ResumeSearchEmbed: type: object properties: url: type: string nullable: false description: The signed URL for the embedable search tool. example: https://app.affinda.com/resume-search?signature=eyJhbGxvd19wZGZfZG ResumeSearchMatch: type: object properties: score: type: number minimum: 0 maximum: 1 nullable: false description: The matching score between the provided resume and job description. example: 0.75 details: type: object properties: jobTitle: $ref: '#/components/schemas/JobTitleSearchScoreComponent' managementLevel: $ref: '#/components/schemas/ManagementLevelSearchScoreComponent' experience: $ref: '#/components/schemas/ExperienceSearchScoreComponent' skills: $ref: '#/components/schemas/SkillsSearchScoreComponent' languages: $ref: '#/components/schemas/LanguagesSearchScoreComponent' location: $ref: '#/components/schemas/LocationSearchScoreComponent' education: $ref: '#/components/schemas/EducationSearchScoreComponent' occupationGroup: $ref: '#/components/schemas/OccupationGroupSearchScoreComponent' searchExpression: $ref: '#/components/schemas/SearchExpressionSearchScoreComponent' JobDescriptionSearchParameters: type: object additionalProperties: false nullable: true required: - indices properties: indices: type: array example: - all-job-descriptions items: type: string resume: $ref: '#/components/schemas/Identifier' nullable: true jobTitles: type: array items: type: string jobTitlesRequired: type: boolean jobTitlesWeight: type: number minimum: 0 maximum: 1 totalYearsExperience: type: number nullable: true yearsExperienceRequired: type: boolean yearsExperienceWeight: type: number minimum: 0 maximum: 1 locations: type: array items: $ref: '#/components/schemas/ResumeSearchParametersLocation' locationsWeight: type: number minimum: 0 maximum: 1 locationsRequired: type: boolean skills: type: array items: $ref: '#/components/schemas/ResumeSearchParametersSkill' skillsWeight: type: number minimum: 0 maximum: 1 languages: type: array items: $ref: '#/components/schemas/ResumeSearchParametersSkill' languagesWeight: type: number minimum: 0 maximum: 1 degrees: type: array items: type: string degreesRequired: type: boolean degreeTypes: type: array uniqueItems: true items: $ref: '#/components/schemas/EducationLevel' degreeTypesRequired: type: boolean educationWeight: type: number minimum: 0 maximum: 1 searchExpression: type: string nullable: true searchExpressionRequired: type: boolean searchExpressionWeight: type: number minimum: 0 maximum: 1 socCodes: type: array items: type: integer minimum: 1 maximum: 9999 socCodesWeight: type: number minimum: 0 maximum: 1 socCodesRequired: type: boolean managementLevel: $ref: '#/components/schemas/ManagementLevel' managementLevelRequired: type: boolean managementLevelWeight: type: number minimum: 0 maximum: 1 customData: type: array items: $ref: '#/components/schemas/SearchParametersCustomData' JobDescriptionSearchResult: type: object additionalProperties: false required: - identifier - score - pdf - jobTitle - managementLevel - experience - skills - languages - location - education - searchExpression - organizationName - customData properties: identifier: $ref: '#/components/schemas/Identifier' score: type: number example: 0.98 pdf: type: string example: https://affinda-api.s3.amazonaws.com/media/documents/Example-Job-Description nullable: true jobTitle: $ref: '#/components/schemas/JobTitleSearchScoreComponent' managementLevel: $ref: '#/components/schemas/ManagementLevelSearchScoreComponent' experience: $ref: '#/components/schemas/ExperienceSearchScoreComponent' skills: $ref: '#/components/schemas/SkillsSearchScoreComponent' languages: $ref: '#/components/schemas/LanguagesSearchScoreComponent' location: $ref: '#/components/schemas/LocationSearchScoreComponent' education: $ref: '#/components/schemas/EducationSearchScoreComponent' occupationGroup: $ref: '#/components/schemas/OccupationGroupSearchScoreComponent' searchExpression: $ref: '#/components/schemas/SearchExpressionSearchScoreComponent' organizationName: type: string nullable: true example: Microsoft customData: $ref: '#/components/schemas/CustomDataSearchScoreComponent' JobDescriptionSearch: type: object additionalProperties: false properties: count: type: integer example: 130 description: Total number of results minimum: 0 next: type: string nullable: true example: https://api.affinda.com/v3/search?limit=20&offset=20 description: URL to request next page of results previous: type: string nullable: true example: https://api.affinda.com/v3/search?limit=20 description: URL to request previous page of results parameters: $ref: '#/components/schemas/JobDescriptionSearchParameters' results: type: array items: $ref: '#/components/schemas/JobDescriptionSearchResult' JobDescriptionSearchDetail: type: object properties: jobTitle: type: object nullable: false properties: missing: type: array items: type: string value: type: object properties: name: type: string nullable: true example: Javascript developer companyName: type: string nullable: true example: Affinda match: type: boolean example: true location: type: object nullable: false properties: missing: type: array items: $ref: '#/components/schemas/ResumeSearchParametersLocation' value: type: object nullable: true allOf: - $ref: '#/components/schemas/Location' - type: object properties: match: type: boolean example: true education: type: object nullable: false properties: missing: type: object properties: degrees: type: array items: type: string degreeTypes: type: array items: type: string value: type: object properties: degrees: type: array items: type: string degreeTypes: type: array items: type: string match: type: boolean example: true skills: type: object nullable: false properties: missing: type: array items: $ref: '#/components/schemas/ResumeSearchParametersSkill' value: type: array items: type: object properties: name: type: string example: Java Programming Language match: type: boolean example: true experience: type: object properties: minimumExperience: type: integer nullable: true minimum: 0 maximumExperience: type: integer nullable: true minimum: 0 match: type: boolean example: true occupationGroup: type: object nullable: false properties: missing: type: array items: type: integer value: type: object nullable: true allOf: - $ref: '#/components/schemas/OccupationGroupSearchResult' languages: type: object nullable: false properties: missing: type: array items: $ref: '#/components/schemas/ResumeSearchParametersSkill' value: type: array items: type: object properties: name: type: string example: English match: type: boolean example: true managementLevel: type: object nullable: true properties: level: $ref: '#/components/schemas/ManagementLevel' match: type: boolean example: true searchExpression: type: object properties: missing: type: array items: type: string value: type: array items: type: string JobDescriptionSearchConfig: type: object properties: allowPdfDownload: type: boolean nullable: false maxResults: type: integer nullable: true description: Maximum number of results that can be returned. Setting to "null" means no limitation. example: 10 minimum: 1 displayJobTitle: type: boolean nullable: false displayLocation: type: boolean nullable: false displayYearsExperience: type: boolean nullable: false displayOccupationGroup: type: boolean nullable: false displayEducation: type: boolean nullable: false displaySkills: type: boolean nullable: false displayLanguages: type: boolean nullable: false displayManagementLevel: type: boolean nullable: false displayKeywords: type: boolean nullable: false weightJobTitle: type: number nullable: false weightLocation: type: number nullable: false weightYearsExperience: type: number nullable: false weightOccupationGroup: type: number nullable: false weightEducation: type: number nullable: false weightSkills: type: number nullable: false weightLanguages: type: number nullable: false weightManagementLevel: type: number nullable: false weightKeywords: type: number nullable: false indices: type: array items: type: string description: List of index names. example: - all-job-descriptions - my-index showIndexDropdown: type: boolean nullable: true description: Controls whether or not the index dropdown is displayed to the user searchToolTheme: type: object allOf: - $ref: '#/components/schemas/ThemeConfig' nullable: true description: Customize the theme of the embeded search tool. userId: type: integer nullable: false readOnly: true description: ID of the logged in user. example: 1234 minimum: 1 username: type: string nullable: false readOnly: true description: Username of the logged in user. example: big.smoke actions: type: array nullable: true description: A list of actions to show in the dropdown in the embedded search tool items: $ref: '#/components/schemas/SearchConfigAction' hideToolbar: type: boolean nullable: false description: Hide the reset/import toolbar. hideSidePanel: type: boolean nullable: false description: Hide the entire side panel. customFieldsConfig: type: array nullable: true items: $ref: '#/components/schemas/CustomFieldConfig' distanceUnit: type: string nullable: false description: The unit of distance to use for location based searches example: km enum: - mi - km JobDescriptionSearchEmbed: type: object properties: url: type: string nullable: false description: The signed URL for the embedable search tool. example: https://app.affinda.com/job-description-search?signature=eyJhbGxvd19wZGZkGZ User_properties-name: type: string example: Carl Johnson email: type: string example: carljohnson@grove.street properties-avatar: type: string nullable: true description: URL of the user's avatar. example: https://affinda-api.s3.amazonaws.com/media/user-avatar.png?AWSAccessKeyId=KEY&Signature=SIG IndexUser: type: object description: The user who created this index readOnly: true additionalProperties: false required: - id - name - email - avatar properties: id: $ref: '#/components/schemas/properties-id' name: $ref: '#/components/schemas/User_properties-name' email: $ref: '#/components/schemas/email' avatar: $ref: '#/components/schemas/properties-avatar' Index: type: object additionalProperties: true required: - name - docType - user properties: name: type: string description: Unique index name example: my-index docType: type: string enum: - resumes - job_descriptions user: $ref: '#/components/schemas/IndexUser' Index_properties-name: type: string description: Unique index name example: my-index docType: type: string enum: - resumes - job_descriptions IndexCreate: type: object title: IndexRequestBody additionalProperties: true required: - name properties: name: $ref: '#/components/schemas/Index_properties-name' docType: $ref: '#/components/schemas/docType' IndexUpdate: type: object additionalProperties: false properties: name: $ref: '#/components/schemas/Index_properties-name' FieldDeprecated: type: object properties: label: type: string slug: type: string nullable: true deprecated: true fieldType: $ref: '#/components/schemas/AnnotationContentType' dataSource: type: string description: Data source mapping identifier nullable: true mapping: type: string description: Defines how the data point is mapped to the data source nullable: true dataPoint: type: string mandatory: type: boolean disabled: type: boolean autoValidationThreshold: type: number nullable: true showDropdown: type: boolean displayRawText: type: boolean dropNull: type: boolean description: If True, any dropdown annotations that fail to parse to a value will be discarded displayEnumValue: type: boolean fields: type: array items: $ref: '#/components/schemas/FieldDeprecated' required: - label - dataPoint - fieldType additionalProperties: true FieldGroup: type: object properties: label: type: string fields: type: array items: $ref: '#/components/schemas/FieldDeprecated' required: - label - fields additionalProperties: false Extractor: type: object required: - identifier - name - namePlural - validatable properties: identifier: type: string description: Uniquely identify an extractor. example: resume name: type: string namePlural: type: string baseExtractor: type: object nullable: true required: - identifier - name - namePlural - validatable properties: identifier: $ref: '#/components/schemas/Extractor_properties-identifier' name: $ref: '#/components/schemas/name' namePlural: $ref: '#/components/schemas/namePlural' validatable: $ref: '#/components/schemas/validatable' isCustom: $ref: '#/components/schemas/isCustom' createdDt: $ref: '#/components/schemas/createdDt' organization: $ref: '#/components/schemas/Organization' nullable: true category: type: string nullable: true example: Recruitment validatable: type: boolean isCustom: type: boolean fieldGroups: type: array nullable: true items: $ref: '#/components/schemas/FieldGroup' createdDt: type: string format: date-time lastTrainedDt: type: string format: date-time nullable: true Field: type: object properties: label: type: string dataPoint: type: string description: Data point identifier fieldType: $ref: '#/components/schemas/AnnotationContentType' dataSource: type: string description: Data source mapping identifier nullable: true mapping: type: string description: Defines how the data point is mapped to the data source nullable: true mandatory: type: boolean autoValidationThreshold: type: number nullable: true minimum: 0 maximum: 1 description: Threshold for auto validation. If null, uses the collection's autoValidationThreshold. enableAutoValidationThreshold: type: boolean nullable: true description: If true, the autoValidationThreshold enable auto validation from the threshold from this field if specified, else from the collection showDropdown: type: boolean deprecated: true displayEnumValue: type: boolean description: If true, both the value and the label for the enums will appear in the dropdown in the validation tool. hideEnumDetail: type: boolean description: If true, the hoverable enum value detail icon will be hidden. dropNull: type: boolean description: If True, any dropdown annotations that fail to parse to a value will be discarded enabledChildFields: type: array items: $ref: '#/components/schemas/Field' disabledChildFields: type: array items: $ref: '#/components/schemas/Field' slug: type: string nullable: true deprecated: true displayRawText: type: boolean description: If true, then the validation tool will show the user the raw text found on the page, not the value that has been parsed to a specific type. fields: type: array items: type: object nullable: true deprecated: true required: - label - dataPoint - fieldType additionalProperties: true FieldCategory: type: object properties: label: type: string enabledFields: type: array items: $ref: '#/components/schemas/Field' disabledFields: type: array items: $ref: '#/components/schemas/Field' required: - label - enabledFields - disabledFields additionalProperties: false FieldsLayout: type: object properties: defaultCategory: $ref: '#/components/schemas/FieldCategory' categories: type: array items: $ref: '#/components/schemas/FieldCategory' required: - defaultCategory - categories additionalProperties: false RedactConfig: type: object properties: redactHeadshot: type: boolean example: true redactPersonalDetails: type: boolean example: true redactWorkDetails: type: boolean example: true redactReferees: type: boolean example: true redactEducationDetails: type: boolean example: true redactLocations: type: boolean example: true redactDates: type: boolean example: true redactGender: type: boolean example: true ExtractorConfig: type: object nullable: true description: Extra configurations specific to an extractor. properties: resumeRedact: $ref: '#/components/schemas/RedactConfig' Collection: type: object required: - identifier properties: identifier: type: string description: Uniquely identify a collection. example: mEFayXdO name: type: string workspace: type: object properties: identifier: $ref: '#/components/schemas/identifier' organization: $ref: '#/components/schemas/Organization' name: $ref: '#/components/schemas/name' extractor: $ref: '#/components/schemas/Extractor' nullable: true autoValidationThreshold: type: number enableAutoValidationThreshold: type: boolean default: false autoValidateIfValidationRulesPass: type: boolean default: false fields: type: array nullable: true items: $ref: '#/components/schemas/FieldGroup' deprecated: true fieldsLayout: $ref: '#/components/schemas/FieldsLayout' fieldsConfigured: type: boolean dateFormatPreference: type: string enum: - DMY - MDY - YMD nullable: true dateFormatFromDocument: type: boolean nullable: true description: Predict the date format from any dates in the document that is not ambiguous. extractorConfig: $ref: '#/components/schemas/ExtractorConfig' unvalidatedDocsCount: type: integer nullable: true minimum: 0 description: Number of unvalidated documents in the collection. confirmedDocsCount: type: integer nullable: true minimum: 0 description: Number of validated documents in the collection. ingestEmail: type: string description: When you send email to this address, any document attached in the body will be uploaded to this collection. tailoredExtractorRequested: type: boolean description: Whether a tailored extractor has been requested for this collection. allowOpenai: type: boolean default: false description: Whether to allow OpenAI API to be used to assist in creating a model for this collection. trainsExtractor: type: boolean description: Whether this collection feeds documents into the extractor's training queue. This setting can only be toggled for custom extractors. disableConfirmationIfValidationRulesFail: type: boolean default: false description: If True, users cannot validate documents with missing mandatory fields, or failing validation rules. autoRefreshValidationResults: type: boolean default: true description: If True, validation results are refreshed whenever annotations are changed. autoValidationThreshold: type: number enableAutoValidationThreshold: type: boolean default: false fields: type: array nullable: true items: $ref: '#/components/schemas/FieldGroup' deprecated: true dateFormatPreference: type: string enum: - DMY - MDY - YMD nullable: true dateFormatFromDocument: type: boolean nullable: true description: Predict the date format from any dates in the document that is not ambiguous. allowOpenai: type: boolean default: false description: Whether to allow OpenAI API to be used to assist in creating a model for this collection. trainsExtractor: type: boolean description: Whether this collection feeds documents into the extractor's training queue. This setting can only be toggled for custom extractors. disableConfirmationIfValidationRulesFail: type: boolean default: false description: If True, users cannot validate documents with missing mandatory fields, or failing validation rules. CollectionCreate: type: object required: - name - workspace properties: name: $ref: '#/components/schemas/name' workspace: $ref: '#/components/schemas/identifier' extractor: type: string description: Uniquely identify an extractor. Required if you are not a super user. example: resume baseExtractor: type: string description: Not applicable, please leave empty. This feature is reserved for super user. autoValidationThreshold: $ref: '#/components/schemas/autoValidationThreshold' enableAutoValidationThreshold: $ref: '#/components/schemas/enableAutoValidationThreshold' fields: $ref: '#/components/schemas/fields' fieldsLayout: $ref: '#/components/schemas/FieldsLayout' dateFormatPreference: $ref: '#/components/schemas/dateFormatPreference' dateFormatFromDocument: $ref: '#/components/schemas/dateFormatFromDocument' extractorConfig: $ref: '#/components/schemas/ExtractorConfig' allowOpenai: $ref: '#/components/schemas/allowOpenai' trainsExtractor: $ref: '#/components/schemas/trainsExtractor' disableConfirmationIfValidationRulesFail: $ref: '#/components/schemas/disableConfirmationIfValidationRulesFail' CollectionUpdate: type: object properties: name: $ref: '#/components/schemas/name' autoValidationThreshold: $ref: '#/components/schemas/autoValidationThreshold' enableAutoValidationThreshold: $ref: '#/components/schemas/enableAutoValidationThreshold' fields: $ref: '#/components/schemas/fields' fieldsLayout: $ref: '#/components/schemas/FieldsLayout' dateFormatPreference: $ref: '#/components/schemas/dateFormatPreference' dateFormatFromDocument: $ref: '#/components/schemas/dateFormatFromDocument' extractorConfig: $ref: '#/components/schemas/ExtractorConfig' allowOpenai: $ref: '#/components/schemas/allowOpenai' trainsExtractor: $ref: '#/components/schemas/trainsExtractor' disableConfirmationIfValidationRulesFail: $ref: '#/components/schemas/disableConfirmationIfValidationRulesFail' categoryLabel: type: string description: The label of the category that this field will be put into. If not provided, the field will be put into the default category. If no category exists with the specified label, a new category will be created. label: type: string mandatory: type: boolean showDropdown: type: boolean deprecated: true displayEnumValue: type: boolean description: If true, both the value and the label for the enums will appear in the dropdown in the validation tool. properties-autoValidationThreshold: type: number nullable: true minimum: 0 maximum: 1 description: Threshold for auto validation. If null, uses the collection's autoValidationThreshold. properties-enableAutoValidationThreshold: type: boolean nullable: true description: If true, the autoValidationThreshold enable auto validation from the threshold from this field if specified, else from the collection dataSource: type: string description: Data source mapping identifier nullable: true mapping: type: string description: Defines how the data point is mapped to the data source nullable: true displayRawText: type: boolean description: If true, then the validation tool will show the user the raw text found on the page, not the value that has been parsed to a specific type. DataFieldCreateField: type: object description: The field to be created. required: - label properties: label: $ref: '#/components/schemas/label' fieldType: $ref: '#/components/schemas/AnnotationContentType' mandatory: $ref: '#/components/schemas/mandatory' showDropdown: $ref: '#/components/schemas/showDropdown' displayEnumValue: $ref: '#/components/schemas/displayEnumValue' autoValidationThreshold: $ref: '#/components/schemas/properties-autoValidationThreshold' enableAutoValidationThreshold: $ref: '#/components/schemas/properties-enableAutoValidationThreshold' dataSource: $ref: '#/components/schemas/dataSource' mapping: $ref: '#/components/schemas/mapping' displayRawText: $ref: '#/components/schemas/displayRawText' DataPoint_properties-name: type: string description: Name of the data point. slug: type: string description: A camelCase string that will be used as the key in the API response. description: type: string nullable: true multiple: type: boolean noRect: type: boolean properties-parent: type: string description: The identifier of the parent data point if applicable. nullable: true example: DdCbJhhx manualEntry: type: boolean description: If true, the model will not be used to predict this data point. Instead, the user will be able to manually enter the value in the validation tool. mappingDataSource: type: string nullable: true example: mEFayXdO description: If populated, the model will learn to predict this field using the data source, rather than relying on fuzzy string matching. DataFieldCreateDataPoint: type: object description: The data point to be created for this field. If a data point with the same slug and collection already exists, it will be reused. required: - name - slug - type properties: name: $ref: '#/components/schemas/DataPoint_properties-name' slug: $ref: '#/components/schemas/slug' description: $ref: '#/components/schemas/description' type: $ref: '#/components/schemas/AnnotationContentType' multiple: $ref: '#/components/schemas/multiple' noRect: $ref: '#/components/schemas/noRect' parent: $ref: '#/components/schemas/properties-parent' manualEntry: $ref: '#/components/schemas/manualEntry' mappingDataSource: $ref: '#/components/schemas/mappingDataSource' DataFieldCreate: type: object required: - field - dataPoint properties: categoryLabel: $ref: '#/components/schemas/categoryLabel' field: $ref: '#/components/schemas/DataFieldCreateField' dataPoint: $ref: '#/components/schemas/DataFieldCreateDataPoint' enabledChildFields: type: array items: $ref: '#/components/schemas/Field' disabledChildFields: type: array items: $ref: '#/components/schemas/Field' DataPoint_properties-identifier: type: string description: Uniquely identify a data point. example: XprEvgai DataPoint: type: object properties: identifier: type: string description: Uniquely identify a data point. example: XprEvgai name: type: string description: Name of the data point. slug: type: string description: A camelCase string that will be used as the key in the API response. description: type: string nullable: true annotationContentType: $ref: '#/components/schemas/AnnotationContentType' organization: $ref: '#/components/schemas/Organization' nullable: true extractor: $ref: '#/components/schemas/Extractor_properties-identifier' nullable: true multiple: type: boolean noRect: type: boolean parent: type: string description: The identifier of the parent data point if applicable. nullable: true example: DdCbJhhx children: type: array items: $ref: '#/components/schemas/DataPoint' availableDataSources: type: array items: $ref: '#/components/schemas/MappingDataSource' mappingDataSource: type: string nullable: true example: mEFayXdO description: If populated, the model will learn to predict this field using the data source, rather than relying on fuzzy string matching. manualEntry: type: boolean description: If true, the model will not be used to predict this data point. Instead, the user will be able to manually enter the value in the validation tool. required: - identifier - name - slug - organization - annotationContentType - extractor children: type: array items: $ref: '#/components/schemas/DataPoint' availableDataSources: type: array items: $ref: '#/components/schemas/MappingDataSource' DataField: type: object required: - field - dataPoint properties: categoryLabel: type: string description: The label of the category that this field will be put into. If not provided, the field will be put into the default category. If no category exists with the specified label, a new category will be created. field: type: object description: The field to be created. required: - label - mandatory - displayEnumValue - autoValidationThreshold - enabledChildFields - disabledChildFields properties: label: $ref: '#/components/schemas/label' fieldType: $ref: '#/components/schemas/AnnotationContentType' mandatory: $ref: '#/components/schemas/mandatory' showDropdown: $ref: '#/components/schemas/showDropdown' displayEnumValue: $ref: '#/components/schemas/displayEnumValue' autoValidationThreshold: $ref: '#/components/schemas/properties-autoValidationThreshold' enableAutoValidationThreshold: $ref: '#/components/schemas/properties-enableAutoValidationThreshold' enabledChildFields: $ref: '#/components/schemas/enabledChildFields' disabledChildFields: $ref: '#/components/schemas/disabledChildFields' dataSource: $ref: '#/components/schemas/dataSource' mapping: $ref: '#/components/schemas/mapping' displayRawText: $ref: '#/components/schemas/displayRawText' dataPoint: type: object description: The data point to be created for this field. If a data point with the same slug and collection already exists, it will be reused. required: - identifier - name - slug - description - type - multiple - noRect - parent - children properties: identifier: $ref: '#/components/schemas/DataPoint_properties-identifier' name: $ref: '#/components/schemas/DataPoint_properties-name' slug: $ref: '#/components/schemas/slug' description: $ref: '#/components/schemas/description' type: $ref: '#/components/schemas/AnnotationContentType' multiple: $ref: '#/components/schemas/multiple' noRect: $ref: '#/components/schemas/noRect' parent: $ref: '#/components/schemas/properties-parent' children: $ref: '#/components/schemas/children' manualEntry: $ref: '#/components/schemas/manualEntry' availableDataSources: $ref: '#/components/schemas/availableDataSources' CollectionField: type: object properties: label: $ref: '#/components/schemas/label' fieldType: $ref: '#/components/schemas/AnnotationContentType' mandatory: $ref: '#/components/schemas/mandatory' showDropdown: $ref: '#/components/schemas/showDropdown' displayEnumValue: $ref: '#/components/schemas/displayEnumValue' autoValidationThreshold: $ref: '#/components/schemas/properties-autoValidationThreshold' enableAutoValidationThreshold: $ref: '#/components/schemas/properties-enableAutoValidationThreshold' dataSource: $ref: '#/components/schemas/dataSource' mapping: $ref: '#/components/schemas/mapping' displayRawText: $ref: '#/components/schemas/mapping' UsageByCollection: type: object description: Monthly credits consumption required: - month - count properties: month: type: string description: Month of the usage example: 2023-07 count: type: integer description: Usage count example: 100 additionalProperties: false UsageByCollectionResponse: type: array description: Monthly credits consumption items: $ref: '#/components/schemas/UsageByCollection' DataPointCreate: type: object required: - name - slug - annotationContentType - extractor - organization properties: name: $ref: '#/components/schemas/DataPoint_properties-name' slug: $ref: '#/components/schemas/slug' description: $ref: '#/components/schemas/description' annotationContentType: $ref: '#/components/schemas/AnnotationContentType' organization: $ref: '#/components/schemas/Organization_properties-identifier' extractor: $ref: '#/components/schemas/Extractor_properties-identifier' multiple: $ref: '#/components/schemas/multiple' noRect: $ref: '#/components/schemas/noRect' parent: $ref: '#/components/schemas/properties-parent' manualEntry: $ref: '#/components/schemas/manualEntry' mappingDataSource: $ref: '#/components/schemas/mappingDataSource' DataPointUpdate: type: object properties: name: $ref: '#/components/schemas/DataPoint_properties-name' slug: $ref: '#/components/schemas/slug' description: $ref: '#/components/schemas/description' parent: $ref: '#/components/schemas/properties-parent' mappingDataSource: $ref: '#/components/schemas/mappingDataSource' DataPointChoice: type: object required: - id - label - value properties: id: type: integer description: Data point choice's ID example: 1 minimum: 1 label: type: string example: USD value: type: string example: USD synonyms: type: array nullable: true items: type: string description: type: string nullable: true properties-label: type: string example: USD value: type: string example: USD synonyms: type: array nullable: true items: type: string DataPointChoiceCreate: type: object required: - dataPoint - label - value properties: dataPoint: $ref: '#/components/schemas/DataPoint_properties-identifier' organization: $ref: '#/components/schemas/Organization_properties-identifier' collection: $ref: '#/components/schemas/properties-identifier' label: $ref: '#/components/schemas/properties-label' value: $ref: '#/components/schemas/value' synonyms: $ref: '#/components/schemas/synonyms' description: $ref: '#/components/schemas/description' DataPointChoice_properties-id: type: integer description: Data point choice's ID example: 1 minimum: 1 DataPointChoiceUpdate: type: object properties: dataPoint: $ref: '#/components/schemas/DataPoint_properties-identifier' organization: $ref: '#/components/schemas/Organization_properties-identifier' collection: $ref: '#/components/schemas/properties-identifier' label: $ref: '#/components/schemas/properties-label' value: $ref: '#/components/schemas/value' synonyms: $ref: '#/components/schemas/synonyms' description: $ref: '#/components/schemas/description' DataPointChoiceForReplace: type: object required: - value additionalProperties: false properties: value: $ref: '#/components/schemas/value' label: $ref: '#/components/schemas/properties-label' synonyms: $ref: '#/components/schemas/synonyms' description: $ref: '#/components/schemas/description' DataPointChoiceReplaceRequest: type: object description: Request body for replacing choices of a data point. Either `collection` or `organization` is required. required: - dataPoint - choices additionalProperties: false properties: dataPoint: $ref: '#/components/schemas/DataPoint_properties-identifier' collection: $ref: '#/components/schemas/properties-identifier' organization: $ref: '#/components/schemas/Organization_properties-identifier' choices: type: array description: Incoming choices to replace existing choices of a data point. Existing choices and incoming choices are matched base on their `value`. New `value` will be created, existing `value` will be updated, and `value` not in incoming choices will be deleted. items: $ref: '#/components/schemas/DataPointChoiceForReplace' DataPointChoiceReplaceResponse: type: object required: - dataPoint - collection - organization - choices additionalProperties: false properties: dataPoint: $ref: '#/components/schemas/DataPoint_properties-identifier' collection: nullable: true type: string description: Uniquely identify a collection. example: mEFayXdO organization: nullable: true type: string description: Uniquely identify an organization. example: mEFayXdO choices: type: array items: type: object required: - id - value - label - synonyms - description additionalProperties: false properties: id: $ref: '#/components/schemas/DataPointChoice_properties-id' value: $ref: '#/components/schemas/value' label: $ref: '#/components/schemas/properties-label' synonyms: $ref: '#/components/schemas/synonyms' description: $ref: '#/components/schemas/description' username: type: string example: carljohnson ApiUserWithoutKey: type: object required: - id - name - username - email - avatar - organizations properties: id: $ref: '#/components/schemas/properties-id' name: $ref: '#/components/schemas/User_properties-name' username: $ref: '#/components/schemas/username' email: $ref: '#/components/schemas/email' avatar: $ref: '#/components/schemas/properties-avatar' organizations: type: array items: type: object required: - identifier - name properties: identifier: $ref: '#/components/schemas/Organization_properties-identifier' name: $ref: '#/components/schemas/Organization_properties-name' apiKeyLastChars: type: string description: The last 4 characters of the API key. additionalProperties: false ApiUserCreate: type: object required: - organization properties: name: $ref: '#/components/schemas/User_properties-name' username: $ref: '#/components/schemas/username' email: $ref: '#/components/schemas/email' avatar: $ref: '#/components/schemas/properties-avatar' organization: $ref: '#/components/schemas/Organization_properties-identifier' additionalProperties: false ApiUserWithKey: type: object required: - id - name - username - email - avatar - organizations - apiKey properties: id: $ref: '#/components/schemas/properties-id' name: $ref: '#/components/schemas/User_properties-name' username: $ref: '#/components/schemas/username' email: $ref: '#/components/schemas/email' avatar: $ref: '#/components/schemas/properties-avatar' organizations: type: array items: type: object required: - identifier - name properties: identifier: $ref: '#/components/schemas/Organization_properties-identifier' name: $ref: '#/components/schemas/Organization_properties-name' apiKey: type: string description: Use this key to authenticate with the API. apiKeyLastChars: type: string description: The last 4 characters of the API key. additionalProperties: false ApiUserUpdate: type: object properties: name: $ref: '#/components/schemas/User_properties-name' username: $ref: '#/components/schemas/username' email: $ref: '#/components/schemas/email' avatar: $ref: '#/components/schemas/properties-avatar' additionalProperties: false DocumentSplitterType: type: string description: The different types of document splitters enum: - llm - llm_v2 - extractor - keyword DocumentSplitter: type: object required: - identifier - name - type - organization - extractor - llmHint properties: identifier: type: string description: Uniquely identify a document splitter. example: NqIvMvZl name: type: string type: $ref: '#/components/schemas/DocumentSplitterType' organization: $ref: '#/components/schemas/Organization_properties-identifier' nullable: true extractor: $ref: '#/components/schemas/Extractor_properties-identifier' nullable: true llmHint: type: string nullable: true description: The hint about when to split which is passed into the LLM prompt. DocumentSplitPage: type: object required: - id description: List the pages within this split. Not including a page here will signal that the page should be deleted. properties: id: type: integer description: Page's ID minimum: 1 rotation: type: integer minimum: -360 maximum: 360 description: Specify a degree of rotation if you want to rotate a page. Possitive number for clockwise rotation, and negative number for counter-clockwise rotation. example: 90 DocumentSplit: type: object required: - pages description: Describe a split of a document. properties: identifier: allOf: - $ref: '#/components/schemas/DocumentMeta_properties-identifier' - description: Specify document identifier in the first split to signal that this is the root document where other splits are splitted from. Don't specify document identifier in subsequent splits. pages: type: array items: $ref: '#/components/schemas/DocumentSplitPage' DocumentEditRequest: type: object required: - splits properties: splits: type: array items: $ref: '#/components/schemas/DocumentSplit' Meta_properties-identifier: type: string description: Unique identifier for the document Meta: type: object properties: identifier: type: string description: Unique identifier for the document customIdentifier: type: string nullable: true description: Optional identifier for the document that you can set to track the document in the Affinda system. Is not required to be unique. example: 46ab8b02-0e5b-420c-877c-8b678d46a834 fileName: $ref: '#/components/schemas/FileName' ready: type: boolean nullable: false example: true description: If true, the document has finished processing. Particularly useful if an endpoint request specified wait=False, when polling use this variable to determine when to stop polling readyDt: type: string format: date-time example: '2020-12-10T01:43:32.276724Z' nullable: true description: The datetime when the document was ready failed: type: boolean nullable: false example: false description: If true, some exception was raised during processing. Check the 'error' field of the main return object. expiryTime: $ref: '#/components/schemas/ExpiryTime' language: type: string nullable: true example: en description: The document's language. pdf: type: string nullable: true example: https://affinda-api.s3.amazonaws.com/media/documents/Document.pdf?AWSAccessKeyId=KEY&Signature=SIG&Expires=1663302062 description: The URL to the document's pdf (if the uploaded document is not already pdf, it's converted to pdf as part of the parsing process). parentDocument: type: object nullable: true description: If this document is part of a splitted document, this attribute points to the original document that this document is splitted from. properties: identifier: $ref: '#/components/schemas/Meta_properties-identifier' childDocuments: type: array description: If this document has been splitted into a number of child documents, this attribute points to those child documents. items: type: object properties: identifier: $ref: '#/components/schemas/Meta_properties-identifier' pages: type: array items: $ref: '#/components/schemas/PageMeta' description: The document's pages. isVerified: type: boolean nullable: false example: false description: This is true if the 'confirm' button has been clicked in the Affinda validation tool reviewUrl: type: string nullable: true example: https://app.affinda.com/review/XJ5kK123?signature=12345 description: Signed URL (valid for 60 minutes) to access the validation tool. Not applicable for documents types such a resumes. ocrConfidence: type: number nullable: true example: 0.97 description: The overall confidence in the conversion of image to text. (only applicable for images or PDF documents without a text layer) createdDt: type: string format: date-time documentType: type: string example: resume regionBias: $ref: '#/components/schemas/RegionBias' isOcrd: type: boolean DocumentEditResponse: type: array items: $ref: '#/components/schemas/Meta' fieldGroups: type: array nullable: true items: $ref: '#/components/schemas/FieldGroup' ExtractorCreate: type: object required: - name - organization properties: name: $ref: '#/components/schemas/name' namePlural: $ref: '#/components/schemas/namePlural' baseExtractor: $ref: '#/components/schemas/Extractor_properties-identifier' organization: $ref: '#/components/schemas/Organization_properties-identifier' category: $ref: '#/components/schemas/category' validatable: $ref: '#/components/schemas/validatable' fieldGroups: $ref: '#/components/schemas/fieldGroups' ExtractorUpdate: type: object properties: name: $ref: '#/components/schemas/name' namePlural: $ref: '#/components/schemas/namePlural' baseExtractor: $ref: '#/components/schemas/Extractor_properties-identifier' category: $ref: '#/components/schemas/category' validatable: $ref: '#/components/schemas/validatable' fieldGroups: $ref: '#/components/schemas/fieldGroups' OrganizationMembership: type: object required: - identifier - organization - user - role properties: identifier: $ref: '#/components/schemas/Identifier' organization: $ref: '#/components/schemas/Organization_properties-identifier' user: $ref: '#/components/schemas/User' role: $ref: '#/components/schemas/OrganizationRole' OrganizationMembershipUpdate: type: object properties: role: $ref: '#/components/schemas/OrganizationRole' InvitationStatus: type: string enum: - pending - accepted - declined Invitation: type: object properties: identifier: type: string description: Uniquely identify an invitation. example: mEFayXdO organization: $ref: '#/components/schemas/Organization' email: type: string example: carljohnson@grove.street description: The email which the invitation is sent to. role: $ref: '#/components/schemas/OrganizationRole' status: $ref: '#/components/schemas/InvitationStatus' expiryDate: type: string format: date description: The date after which the invitation expires. Default is 10 days from now. invitedBy: $ref: '#/components/schemas/User' respondedBy: type: object nullable: true allOf: - $ref: '#/components/schemas/User' - type: object description: The person who receives this invitation can register/signin with any account and respond to it. This field stores which account has responded to the invitation. createdDt: type: string format: date-time properties-email: type: string example: carljohnson@grove.street description: The email which the invitation is sent to. InvitationCreate: type: object required: - organization - email - role properties: organization: $ref: '#/components/schemas/Organization_properties-identifier' email: $ref: '#/components/schemas/properties-email' role: $ref: '#/components/schemas/OrganizationRole' Invitation_properties-identifier: type: string description: Uniquely identify an invitation. example: mEFayXdO InvitationUpdate: type: object properties: role: $ref: '#/components/schemas/OrganizationRole' InvitationResponse: type: object properties: status: type: string enum: - accepted - declined Mapping_properties-identifier: type: string description: Uniquely identify a mapping. example: mEFayXdO readOnly: true Mapping: type: object description: A mapping allows you to specify specific settings regarding a lookup against a MappingDataSource should be applied. required: - identifier - dataSource properties: identifier: type: string description: Uniquely identify a mapping. example: mEFayXdO readOnly: true organization: type: string example: mewlkWEKL description: The organization that this mapping belongs to. nullable: true dataSource: type: string example: mewERBRJJ description: The mapping data source this mapping applies to. nullable: true scoreCutoff: type: number example: 10 description: Higher values will result in more strict matching. nullable: true orderBy: type: string example: label description: The field to order the results by. Leave blank for ordering by relevance. nullable: true properties-dataSource: type: string example: mewERBRJJ description: The mapping data source this mapping applies to. nullable: true scoreCutoff: type: number example: 10 description: Higher values will result in more strict matching. nullable: true organization: type: string example: mewlkWEKL description: The organization that this mapping belongs to. nullable: true orderBy: type: string example: label description: The field to order the results by. Leave blank for ordering by relevance. nullable: true MappingCreate: type: object required: - dataSource properties: dataSource: $ref: '#/components/schemas/properties-dataSource' scoreCutoff: $ref: '#/components/schemas/scoreCutoff' organization: $ref: '#/components/schemas/organization' orderBy: $ref: '#/components/schemas/orderBy' MappingUpdate: type: object properties: scoreCutoff: $ref: '#/components/schemas/scoreCutoff' orderBy: $ref: '#/components/schemas/orderBy' FloatAnnotation: type: object nullable: true allOf: - $ref: '#/components/schemas/Annotation' - type: object properties: parsed: type: number nullable: true example: 1.23 RowAnnotation: type: object nullable: true allOf: - $ref: '#/components/schemas/Annotation' - type: object properties: parsed: type: object properties: itemCode: $ref: '#/components/schemas/TextAnnotation' itemDate: $ref: '#/components/schemas/DateAnnotation' itemDescription: $ref: '#/components/schemas/TextAnnotation' itemUnit: $ref: '#/components/schemas/TextAnnotation' itemUnitPrice: $ref: '#/components/schemas/FloatAnnotation' itemQuantity: $ref: '#/components/schemas/FloatAnnotation' itemDiscount: $ref: '#/components/schemas/TextAnnotation' itemBaseTotal: $ref: '#/components/schemas/FloatAnnotation' itemTaxRate: $ref: '#/components/schemas/TextAnnotation' itemTaxTotal: $ref: '#/components/schemas/FloatAnnotation' itemTotal: $ref: '#/components/schemas/FloatAnnotation' itemOther: $ref: '#/components/schemas/TextAnnotation' TableAnnotation: type: object nullable: true allOf: - $ref: '#/components/schemas/Annotation' - type: object properties: parsed: type: object properties: rows: type: array items: $ref: '#/components/schemas/RowAnnotation' RowBetaAnnotation: type: object nullable: true allOf: - $ref: '#/components/schemas/Annotation' - type: object properties: parsed: type: object properties: itemCodeBeta: $ref: '#/components/schemas/TextAnnotation' itemDateBeta: $ref: '#/components/schemas/DateAnnotation' itemDescriptionBeta: $ref: '#/components/schemas/TextAnnotation' itemUnitBeta: $ref: '#/components/schemas/TextAnnotation' itemUnitPriceBeta: $ref: '#/components/schemas/FloatAnnotation' itemQuantityBeta: $ref: '#/components/schemas/FloatAnnotation' itemDiscountBeta: $ref: '#/components/schemas/TextAnnotation' itemBaseTotalBeta: $ref: '#/components/schemas/FloatAnnotation' itemTaxRateBeta: $ref: '#/components/schemas/TextAnnotation' itemTaxTotalBeta: $ref: '#/components/schemas/FloatAnnotation' itemTotalBeta: $ref: '#/components/schemas/FloatAnnotation' itemOtherBeta: $ref: '#/components/schemas/TextAnnotation' TableBetaAnnotation: type: object nullable: true allOf: - $ref: '#/components/schemas/Annotation' - type: object properties: parsed: type: object properties: rows: type: array items: $ref: '#/components/schemas/RowBetaAnnotation' CurrencyCodeAnnotation: type: object nullable: true allOf: - $ref: '#/components/schemas/Annotation' - type: object properties: parsed: $ref: '#/components/schemas/DataPointChoice' nullable: true InvoiceData: type: object additionalProperties: false nullable: false properties: tables: type: array items: $ref: '#/components/schemas/TableAnnotation' tablesBeta: type: array items: $ref: '#/components/schemas/TableBetaAnnotation' invoiceDate: $ref: '#/components/schemas/DateAnnotation' invoiceOrderDate: $ref: '#/components/schemas/DateAnnotation' paymentDateDue: $ref: '#/components/schemas/DateAnnotation' paymentAmountBase: $ref: '#/components/schemas/TextAnnotation' paymentAmountTax: $ref: '#/components/schemas/TextAnnotation' paymentAmountTotal: $ref: '#/components/schemas/TextAnnotation' paymentAmountPaid: $ref: '#/components/schemas/TextAnnotation' paymentAmountDue: $ref: '#/components/schemas/TextAnnotation' invoiceNumber: $ref: '#/components/schemas/TextAnnotation' invoicePurchaseOrderNumber: $ref: '#/components/schemas/TextAnnotation' supplierBusinessNumber: $ref: '#/components/schemas/TextAnnotation' customerNumber: $ref: '#/components/schemas/TextAnnotation' customerBusinessNumber: $ref: '#/components/schemas/TextAnnotation' paymentReference: $ref: '#/components/schemas/TextAnnotation' bankAccountNumber: $ref: '#/components/schemas/TextAnnotation' supplierVat: $ref: '#/components/schemas/TextAnnotation' customerVat: $ref: '#/components/schemas/TextAnnotation' bpayBillerCode: $ref: '#/components/schemas/TextAnnotation' bpayReference: $ref: '#/components/schemas/TextAnnotation' bankSortCode: $ref: '#/components/schemas/TextAnnotation' bankIban: $ref: '#/components/schemas/TextAnnotation' bankSwift: $ref: '#/components/schemas/TextAnnotation' bankBsb: $ref: '#/components/schemas/TextAnnotation' customerContactName: $ref: '#/components/schemas/TextAnnotation' customerCompanyName: $ref: '#/components/schemas/TextAnnotation' supplierCompanyName: $ref: '#/components/schemas/TextAnnotation' customerBillingAddress: $ref: '#/components/schemas/LocationAnnotation' customerDeliveryAddress: $ref: '#/components/schemas/LocationAnnotation' supplierAddress: $ref: '#/components/schemas/LocationAnnotation' customerPhoneNumber: $ref: '#/components/schemas/TextAnnotation' supplierPhoneNumber: $ref: '#/components/schemas/TextAnnotation' supplierFax: $ref: '#/components/schemas/TextAnnotation' customerEmail: $ref: '#/components/schemas/TextAnnotation' supplierEmail: $ref: '#/components/schemas/TextAnnotation' supplierWebsite: $ref: '#/components/schemas/TextAnnotation' currencyCode: $ref: '#/components/schemas/CurrencyCodeAnnotation' customFields: type: object nullable: true additionalProperties: true rawText: type: string description: All of the raw text of the parsed invoice. DateRangeValue: type: object nullable: true properties: date: type: string format: date example: '2022-02-09' isCurrent: type: boolean day: type: integer nullable: true month: type: integer nullable: true year: type: integer nullable: true parameters: offsetParam: in: query name: offset required: false schema: type: integer minimum: 0 example: 0 description: The number of documents to skip before starting to collect the result set. x-ms-parameter-location: method limitParam: in: query name: limit required: false schema: type: integer minimum: 1 maximum: 100 example: 20 description: The numbers of results to return. x-ms-parameter-location: method responses: DefaultError: description: UnexpectedError content: application/json: schema: $ref: '#/components/schemas/RequestError' x-ms-error-response: true 400Error: description: Bad request. If it is a validation error will contain a list of each invalid field content: application/json: schema: $ref: '#/components/schemas/RequestError' x-ms-error-response: true 401Error: description: Authorisation error content: application/json: schema: $ref: '#/components/schemas/RequestError' x-ms-error-response: true 403Error: description: Forbidden error content: application/json: schema: $ref: '#/components/schemas/RequestError' x-ms-error-response: true 400ErrorMaybeXML: description: Bad request. If it is a validation error will contain a list of each invalid field content: application/json: schema: $ref: '#/components/schemas/RequestError' application/xml: schema: $ref: '#/components/schemas/RequestError' x-ms-error-response: true 401ErrorMaybeXML: description: Authorisation error content: application/json: schema: $ref: '#/components/schemas/RequestError' application/xml: schema: $ref: '#/components/schemas/RequestError' x-ms-error-response: true 204NoContent: description: Delete successful, no content returned