{"files":{"SKILL.md":"---\nname: taggun-receipt-ocr-scanning-api\ndescription: \"TAGGUN Receipt OCR Scanning API skill. Use when working with TAGGUN Receipt OCR Scanning for api. Covers 23 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# TAGGUN Receipt OCR Scanning API\nAPI version: 1.16.102\n\n## Auth\nApiKey apikey in header\n\n## Base URL\nhttps://api.taggun.io/\n\n## Setup\n1. Set your API key in the appropriate header\n2. GET /api/account/v1/known-merchants/export -- export a list of merchant names and addresses to normalise and match in csv format\n3. POST /api/account/v1/feedback -- create first feedback\n\n## Endpoints\n23 endpoints across 1 group. See references/api-spec.lap for full details.\n\n### Api\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /api/account/v1/known-merchants/export | Export a list of merchant names and addresses to normalise and match in CSV format |\n| GET | /api/account/v1/known-product-codes/export | Export a list of product codes to normalise and match in CSV format |\n| GET | /api/account/v1/product-categories/export | Export a list of product categories and descriptions to match in CSV format |\n| GET | /api/validation/v1/campaign/settings/list | list all campaign setting IDs for a client |\n| GET | /api/validation/v1/campaign/settings/{campaignId} | get campaign settings for a client |\n| POST | /api/account/v1/feedback | Add manually verified receipt data to a given receipt for feedback and training purposes |\n| POST | /api/account/v1/known-merchants/import | Import a list of merchant names and addresses to normalise and match in CSV to TSV format. |\n| POST | /api/account/v1/known-product-codes/import | Import a list of product codes to normalise in and match in CSV to TSV format. |\n| POST | /api/account/v1/merchantname/add | Add a keyword to your account's model to predict merchant name. Changes in your account's model are updated daily. |\n| POST | /api/account/v1/product-categories/import | Import a list of product categories and descriptions to match in CSV to TSV format. |\n| POST | /api/receipt/v1/simple/encoded | transcribe a receipt using base64 encoded image in json payload |\n| POST | /api/receipt/v1/simple/file | transcribe a receipt by uploading an image file |\n| POST | /api/receipt/v1/simple/url | transcribe a receipt from URL |\n| POST | /api/receipt/v1/verbose/encoded | transcribe a receipt using base64 encoded image in json payload and return detailed result |\n| POST | /api/receipt/v1/verbose/file | transcribe a receipt by uploading an image file and return detailed result |\n| POST | /api/receipt/v1/verbose/url | transcribe a receipt from URL and return detailed result |\n| POST | /api/validation/v1/campaign/file | validate and match a receipt against a receipt validation settings by uploading an image file |\n| POST | /api/validation/v1/campaign/product-validation/file | validate if user-submitted info like serial number are detected an image file |\n| POST | /api/validation/v1/campaign/receipt-validation/file | validate and match a receipt against a receipt validation settings by uploading an image file |\n| POST | /api/validation/v1/campaign/receipt-validation/url | validate and match a receipt against a receipt validation settings from URL |\n| POST | /api/validation/v1/campaign/settings/create/{campaignId} | create campaign settings for a client |\n| PUT | /api/validation/v1/campaign/settings/update/{campaignId} | update campaign settings for a client |\n| DELETE | /api/validation/v1/campaign/settings/delete/{campaignId} | delete campaign settings for a client |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"List all export?\" -> GET /api/account/v1/known-merchants/export\n- \"List all list?\" -> GET /api/validation/v1/campaign/settings/list\n- \"Get setting details?\" -> GET /api/validation/v1/campaign/settings/{campaignId}\n- \"Create a feedback?\" -> POST /api/account/v1/feedback\n- \"Create a import?\" -> POST /api/account/v1/known-merchants/import\n- \"Create a add?\" -> POST /api/account/v1/merchantname/add\n- \"Create a encoded?\" -> POST /api/receipt/v1/simple/encoded\n- \"Create a file?\" -> POST /api/receipt/v1/simple/file\n- \"Create a url?\" -> POST /api/receipt/v1/simple/url\n- \"Update a update?\" -> PUT /api/validation/v1/campaign/settings/update/{campaignId}\n- \"Delete a delete?\" -> DELETE /api/validation/v1/campaign/settings/delete/{campaignId}\n- \"How to authenticate?\" -> See Auth section above\n\n## Response Tips\n- Check response schemas in references/api-spec.lap for field details\n- Create/update endpoints return the modified resource on success\n- Error responses include status codes and descriptions in the spec\n\n## References\n- Full spec: See references/api-spec.lap for complete endpoint details, parameter tables, and response schemas\n\n> Generated from the official API spec by [LAP](https://lap.sh)\n","references/api-spec.lap":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api TAGGUN Receipt OCR Scanning API\n@base https://api.taggun.io/\n@version 1.16.100\n@auth ApiKey apikey in header\n@common_fields {apikey: any # API authentication key.}\n@endpoints 23\n@hint download_for_search\n@toc api(23)\n\n@endpoint GET /api/account/v1/known-merchants/export\n@desc Export a list of merchant names and addresses to normalise and match in CSV format\n@errors {400: Bad Request}\n\n@endpoint GET /api/account/v1/known-product-codes/export\n@desc Export a list of product codes to normalise and match in CSV format\n@errors {400: Bad Request}\n\n@endpoint GET /api/account/v1/product-categories/export\n@desc Export a list of product categories and descriptions to match in CSV format\n@errors {400: Bad Request}\n\n@endpoint GET /api/validation/v1/campaign/settings/list\n@desc list all campaign setting IDs for a client\n@errors {400: Bad Request}\n\n@endpoint GET /api/validation/v1/campaign/settings/{campaignId}\n@desc get campaign settings for a client\n@required {campaignId: any # The ID of the campaign to validate the receipt}\n@errors {400: Bad Request}\n\n@endpoint POST /api/account/v1/feedback\n@desc Add manually verified receipt data to a given receipt for feedback and training purposes\n@optional {body: map}\n@returns(200) Success\n@errors {400: Bad Request}\n\n@endpoint POST /api/account/v1/known-merchants/import\n@desc Import a list of merchant names and addresses to normalise and match in CSV to TSV format.\n@optional {file: any # file less than 20MB. Accepted file types: CSV, TSV}\n@returns(200) Success\n@errors {400: Bad Request}\n\n@endpoint POST /api/account/v1/known-product-codes/import\n@desc Import a list of product codes to normalise in and match in CSV to TSV format.\n@optional {file: any # file less than 20MB. Accepted file types: CSV, TSV}\n@returns(200) Success\n@errors {400: Bad Request}\n\n@endpoint POST /api/account/v1/merchantname/add\n@desc Add a keyword to your account's model to predict merchant name. Changes in your account's model are updated daily.\n@optional {body: map}\n@returns(200) Success\n@errors {400: Bad Request}\n\n@endpoint POST /api/account/v1/product-categories/import\n@desc Import a list of product categories and descriptions to match in CSV to TSV format.\n@optional {file: any # file less than 20MB. Accepted file types: CSV, TSV}\n@returns(200) Success\n@errors {400: Bad Request}\n\n@endpoint POST /api/receipt/v1/simple/encoded\n@desc transcribe a receipt using base64 encoded image in json payload\n@optional {body: map}\n@returns(200) Success\n@errors {400: Bad Request}\n\n@endpoint POST /api/receipt/v1/simple/file\n@desc transcribe a receipt by uploading an image file\n@optional {file: any # file less than 20MB. Accepted file types: PDF, JPG, PNG, GIF, HEIC, refresh: any # Set true to force re-process image transcription if the receipt is already in storage, incognito: any # Set true to avoid saving the receipt in storage, ipAddress: any # IP Address of the end user, near: any # A geo location to search for merchant. Typically in the format of city, state, country., ignoreMerchantName: any # Ignore this merchant name if detected on the receipt. Use this field to avoid detecting the customer name as the merchant name., language: any # Set language as a hint. Leave empty for auto detect. Supported languages: , en, es, fr, jp, he, iw, et, lv, lt, fi, el, zh, th, ar, extractTime: any # Set true to return time if found on the receipt. Otherwise, the time is always set to 12:00:00.000., subAccountId: any # Tag a request with sub-account ID for billing purposes, referenceId: any # Tag a request with a unique reference ID for feedback/training and receipt similarity check purposes, userId: any # Tag a request with a user ID so that duplicate receipts by the same user can be detected, containerId: any # Tag a request with a container ID for fraud detection purposes}\n@returns(200) Success\n@errors {400: Bad Request}\n\n@endpoint POST /api/receipt/v1/simple/url\n@desc transcribe a receipt from URL\n@optional {body: map}\n@returns(200) Success\n@errors {400: Bad Request}\n\n@endpoint POST /api/receipt/v1/verbose/encoded\n@desc transcribe a receipt using base64 encoded image in json payload and return detailed result\n@optional {body: map}\n@returns(200) Success\n@errors {400: Bad Request}\n\n@endpoint POST /api/receipt/v1/verbose/file\n@desc transcribe a receipt by uploading an image file and return detailed result\n@optional {file: any # file less than 20MB. Accepted file types: PDF, JPG, PNG, GIF, HEIC, refresh: any # Set true to force re-process image transcription if the receipt is already in storage, incognito: any # Set true to avoid saving the receipt in storage, ipAddress: any # IP Address of the end user, near: any # A geo location to search for merchant. Typically in the format of city, state, country., ignoreMerchantName: any # Ignore this merchant name if detected on the receipt. Use this field to avoid detecting the customer name as the merchant name., language: any # Set language as a hint. Leave empty for auto detect. Supported languages: , en, es, fr, jp, he, iw, et, lv, lt, fi, el, zh, th, ar, extractTime: any # Set true to return time if found on the receipt. Otherwise, the time is always set to 12:00:00.000., subAccountId: any # Tag a request with sub-account ID for billing purposes, referenceId: any # Tag a request with a unique reference ID for feedback/training and receipt similarity check purposes, userId: any # Tag a request with a user ID so that duplicate receipts by the same user can be detected, containerId: any # Tag a request with a container ID for fraud detection purposes, extractLineItems: any # Set true to return product line itmes in an array if found on the receipt.}\n@returns(200) Success\n@errors {400: Bad Request}\n\n@endpoint POST /api/receipt/v1/verbose/url\n@desc transcribe a receipt from URL and return detailed result\n@optional {body: map}\n@returns(200) Success\n@errors {400: Bad Request}\n\n@endpoint POST /api/validation/v1/campaign/file\n@desc validate and match a receipt against a receipt validation settings by uploading an image file\n@required {campaignId: any # The ID of the campaign to validate the receipt}\n@optional {file: any # file less than 20MB. Accepted file types: PDF, JPG, PNG, GIF, HEIC, incognito: any # Set true to avoid saving the receipt in storage, ipAddress: any # IP Address of the end user, near: any # A geo location to search for merchant. Typically in the format of city, state, country., referenceId: any # Tag a request with a unique reference ID for feedback/training and receipt similarity check purposes, userId: any # Tag a request with a user ID so that duplicate receipts by the same user can be detected, subAccountId: any # Tag a request with a subAccountId, language: any # Set language as a hint. Leave empty for auto detect. Supported languages: , en, es, fr, jp, he, iw, et, lv, lt, fi, el, zh, th, ar}\n@returns(200) Success\n@errors {400: Bad Request}\n\n@endpoint POST /api/validation/v1/campaign/product-validation/file\n@desc validate if user-submitted info like serial number are detected an image file\n@required {productVerificationNumber: any # The number of the product to validate the receipt}\n@optional {file: any # file less than 20MB. Accepted file types: PDF, JPG, PNG, GIF, HEIC, incognito: any # Set true to avoid saving the receipt in storage, subAccountId: any # Tag a request with sub-account ID for billing purposes, referenceId: any # Tag a request with a unique reference ID for feedback and training purposes}\n@returns(200) Success\n@errors {400: Bad Request}\n\n@endpoint POST /api/validation/v1/campaign/receipt-validation/file\n@desc validate and match a receipt against a receipt validation settings by uploading an image file\n@required {campaignId: any # The ID of the campaign to validate the receipt}\n@optional {file: any # file less than 20MB. Accepted file types: PDF, JPG, PNG, GIF, HEIC, incognito: any # Set true to avoid saving the receipt in storage, ipAddress: any # IP Address of the end user, near: any # A geo location to search for merchant. Typically in the format of city, state, country., referenceId: any # Tag a request with a unique reference ID for feedback/training and receipt similarity check purposes, userId: any # Tag a request with a user ID so that duplicate receipts by the same user can be detected, subAccountId: any # Tag a request with a subAccountId, language: any # Set language as a hint. Leave empty for auto detect. Supported languages: , en, es, fr, jp, he, iw, et, lv, lt, fi, el, zh, th, ar}\n@returns(200) Success\n@errors {400: Bad Request}\n\n@endpoint POST /api/validation/v1/campaign/receipt-validation/url\n@desc validate and match a receipt against a receipt validation settings from URL\n@optional {body: map}\n@returns(200) Success\n@errors {400: Bad Request}\n\n@endpoint POST /api/validation/v1/campaign/settings/create/{campaignId}\n@desc create campaign settings for a client\n@required {campaignId: any # The ID of the campaign to validate the receipt}\n@optional {body: map}\n@errors {400: Bad Request}\n\n@endpoint PUT /api/validation/v1/campaign/settings/update/{campaignId}\n@desc update campaign settings for a client\n@required {campaignId: any # The ID of the campaign to validate the receipt}\n@optional {body: map}\n@errors {400: Bad Request}\n\n@endpoint DELETE /api/validation/v1/campaign/settings/delete/{campaignId}\n@desc delete campaign settings for a client\n@required {campaignId: any # Remove campaign settings with a campaign ID}\n@errors {400: Bad Request}\n\n@end\n"}}