{"files":{"SKILL.md":"---\nname: call-control-api\ndescription: \"Call Control API skill. Use when working with Call Control for api. Covers 6 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# Call Control API\nAPI version: 2015-11-01\n\n## Auth\nApiKey apiKey in header\n\n## Base URL\nhttps://api.callcontrol.com\n\n## Setup\n1. Set your API key in the appropriate header\n2. GET /api/2015-11-01/Complaints/{phoneNumber} -- verify access\n3. POST /api/2015-11-01/Enterprise/UpsertUser -- create first UpsertUser\n\n## Endpoints\n\n6 endpoints across 1 groups. See references/api-spec.lap for full details.\n\n### api\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /api/2015-11-01/Complaints/{phoneNumber} | Complaints: Free service (with registration), providing community and government complaint lookup by phone number for up to 2,000 queries per month.  Details include number complaint rates from (FTC, FCC, IRS, Indiana Attorney  General) and key entity tag extractions from complaints. |\n| GET | /api/2015-11-01/Enterprise/ShouldBlock/{phoneNumber}/{userPhoneNumber} | Enterprise  GET: ShouldBlock |\n| GET | /api/2015-11-01/Enterprise/GetUser/{phoneNumber} | Enterprise  GET: GetUser |\n| POST | /api/2015-11-01/Enterprise/UpsertUser | UpsertUser: insert or update all properties from a user |\n| GET | /api/2015-11-01/Reputation/{phoneNumber} | Reputation: |\n| POST | /api/2015-11-01/Report | Report: report spam calls received to better tune our algorithms based upon spam calls you receive |\n\n## Common Questions\n\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"Get Complaint details?\" -> GET /api/2015-11-01/Complaints/{phoneNumber}\n- \"Get ShouldBlock details?\" -> GET /api/2015-11-01/Enterprise/ShouldBlock/{phoneNumber}/{userPhoneNumber}\n- \"Get GetUser details?\" -> GET /api/2015-11-01/Enterprise/GetUser/{phoneNumber}\n- \"Create a UpsertUser?\" -> POST /api/2015-11-01/Enterprise/UpsertUser\n- \"Get Reputation details?\" -> GET /api/2015-11-01/Reputation/{phoneNumber}\n- \"Create a Report?\" -> POST /api/2015-11-01/Report\n- \"How to authenticate?\" -> See Auth section\n\n## Response Tips\n- Check response schemas in references/api-spec.lap for field details\n- Create/update endpoints typically return the created/updated object\n\n## CLI\n\n```bash\n# Update this spec to the latest version\nnpx @lap-platform/lapsh get call-control-api -o references/api-spec.lap\n\n# Search for related APIs\nnpx @lap-platform/lapsh search call-control-api\n```\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 Call Control API\n@base https://api.callcontrol.com\n@version 2015-11-01\n@auth ApiKey apiKey in header\n@endpoints 6\n@toc api(6)\n\n@endpoint GET /api/2015-11-01/Complaints/{phoneNumber}\n@desc Complaints: Free service (with registration), providing community and government complaint lookup by phone number for up to 2,000 queries per month.  Details include number complaint rates from (FTC, FCC, IRS, Indiana Attorney  General) and key entity tag extractions from complaints.\n@required {phoneNumber: any # phone number to search}\n@returns(200) OK\n\n@endpoint GET /api/2015-11-01/Enterprise/ShouldBlock/{phoneNumber}/{userPhoneNumber}\n@desc Enterprise  GET: ShouldBlock\n@required {phoneNumber: any # phone number to search, userPhoneNumber: any # (OPTIONAL) phone number of user to look up block rules}\n@returns(200) true(block) false (no block)\n@errors {400: Bad request (invalid phone number)}\n\n@endpoint GET /api/2015-11-01/Enterprise/GetUser/{phoneNumber}\n@desc Enterprise  GET: GetUser\n@required {phoneNumber: any}\n@returns(200) User Object\n@errors {400: Bad request (invalid phone number)}\n\n@endpoint POST /api/2015-11-01/Enterprise/UpsertUser\n@desc UpsertUser: insert or update all properties from a user\n@required {user: map # [FromBody] User \r             This returns information required to perform basic call blocking behaviors.  The demo key will return ok, but will not save the data.}\n@returns(200) Ok\n@errors {400: Bad request (eg. invalid phone nubmer)}\n\n@endpoint GET /api/2015-11-01/Reputation/{phoneNumber}\n@desc Reputation:\n@required {phoneNumber: any # phone number to search}\n@returns(200) Reputation information\n@errors {400: Bad request (invalid phone number)}\n\n@endpoint POST /api/2015-11-01/Report\n@desc Report: report spam calls received to better tune our algorithms based upon spam calls you receive\n@required {callReport: map # [FromBody] Call Report\r             PhoneNumber, \r             Caller name(optional), \r             Call category(optional), \r             Comment or tags(free text) (optional), \r             Unwanted call  - yes/no(optional),}\n@errors {400: Bad request (eg. invalid phone nubmer)}\n\n@end\n"}}