{"files":{"SKILL.md":"---\nname: openfigi-api\ndescription: \"OpenFIGI API skill. Use when working with OpenFIGI for mapping, search, filter. Covers 4 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# OpenFIGI API\nAPI version: 2.0.0\n\n## Auth\nApiKey X-OPENFIGI-APIKEY in header\n\n## Base URL\nhttps://api.openfigi.com/v3\n\n## Setup\n1. Set your API key in the appropriate header\n2. GET /mapping/values/{key} -- get values for enum-like fields.\n3. POST /mapping -- create first mapping\n\n## Endpoints\n4 endpoints across 3 groups. See references/api-spec.lap for full details.\n\n### Mapping\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /mapping | Allows mapping from third-party identifiers to FIGIs. |\n| GET | /mapping/values/{key} | Get values for enum-like fields. |\n\n### Search\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /search | Search for FIGIs using key words and other filters. |\n\n### Filter\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /filter | Search for FIGIs using key words and other filters. The results are listed alphabetically by FIGI and include the number of results. |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"Create a mapping?\" -> POST /mapping\n- \"Get value details?\" -> GET /mapping/values/{key}\n- \"Create a search?\" -> POST /search\n- \"Create a filter?\" -> POST /filter\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 OpenFIGI API\n@base https://api.openfigi.com/v3\n@version 2.0.0\n@auth ApiKey X-OPENFIGI-APIKEY in header\n@endpoints 4\n@toc mapping(2), search(1), filter(1)\n\n@group mapping\n@endpoint POST /mapping\n@desc Allows mapping from third-party identifiers to FIGIs.\n@returns(200) A list of FIGIs and their metadata.\n@errors {400: Invalid request (body)., 401: Unauthorized., 405: Method Not Allowed., 406: Not Acceptable., 415: Unsupported Media Type., 429: Too Many Requests., 500: Internal Server Error., 503: Service Unavailable.}\n@example_request [{\"idType\":\"ID_BB_GLOBAL\",\"idValue\":\"BBG000BLNNH6\"}]\n\n@endpoint GET /mapping/values/{key}\n@desc Get values for enum-like fields.\n@required {key: str(idType/exchCode/micCode/currency/marketSecDes/securityType/securityType2) # Key of MappingJob for which to get possible values.}\n@returns(200) {values: [str]} # The list of values.\n@errors {400: Invalid request (body)., 401: Unauthorized., 405: Method Not Allowed., 406: Not Acceptable., 415: Unsupported Media Type., 429: Too Many Requests., 500: Internal Server Error., 503: Service Unavailable.}\n\n@endgroup\n\n@group search\n@endpoint POST /search\n@desc Search for FIGIs using key words and other filters.\n@optional {query: str, start: str # The number of results returned for any given request is fixed. When more results are accessible, the response will contain a next property whose value should be sent in succeeding requests as the value of the start property. This will notify the API to return the next \"page\" of results.}\n@returns(200) A list of FIGIs and their metadata.\n@errors {400: Invalid request (body)., 401: Unauthorized., 405: Method Not Allowed., 406: Not Acceptable., 415: Unsupported Media Type., 429: Too Many Requests., 500: Internal Server Error., 503: Service Unavailable.}\n@example_request {\"query\":\"ibm\",\"exchCode\":\"US\"}\n\n@endgroup\n\n@group filter\n@endpoint POST /filter\n@desc Search for FIGIs using key words and other filters. The results are listed alphabetically by FIGI and include the number of results.\n@returns(200) A list of FIGIs and their metadata.\n@errors {400: Invalid request (body)., 401: Unauthorized., 405: Method Not Allowed., 406: Not Acceptable., 415: Unsupported Media Type., 429: Too Many Requests., 500: Internal Server Error., 503: Service Unavailable.}\n@example_request {\"query\":\"ibm\",\"exchCode\":\"US\"}\n\n@endgroup\n\n@end\n"}}