{"files":{"SKILL.md":"---\nname: seldon-external-api\ndescription: \"Seldon External API skill. Use when working with Seldon External for seldon. Covers 2 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# Seldon External API\nAPI version: 0.1\n\n## Auth\nBearer bearer\n\n## Base URL\nhttps://localhost:80\n\n## Setup\n1. Set Authorization header with Bearer token\n2. Verify API access with a test request\n3. POST /seldon/{namespace}/{deployment}/api/v1.0/predictions -- create first prediction\n\n## Endpoints\n2 endpoints across 1 group. See references/api-spec.lap for full details.\n\n### Seldon\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /seldon/{namespace}/{deployment}/api/v1.0/predictions |  |\n| POST | /seldon/{namespace}/{deployment}/api/v1.0/feedback |  |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"Create a prediction?\" -> POST /seldon/{namespace}/{deployment}/api/v1.0/predictions\n- \"Create a feedback?\" -> POST /seldon/{namespace}/{deployment}/api/v1.0/feedback\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\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 Seldon External API\n@base https://localhost:80\n@version 0.1\n@auth Bearer bearer\n@endpoints 2\n@toc seldon(2)\n\n@endpoint POST /seldon/{namespace}/{deployment}/api/v1.0/predictions\n@required {namespace: str, deployment: str}\n@optional {status: map{code: int(int32), info: str, reason: str, status: str}, meta: map{puid: str, tags: map, routing: map, requestPath: map, metrics: [map]}, data: map{names: [str], tensor: map, ndarray: [any], tftensor: map}, binData: str(byte), strData: str}\n@returns(200) {status: map{code: int(int32), info: str, reason: str, status: str}, meta: map{puid: str, tags: map, routing: map, requestPath: map, metrics: [map]}, data: map{names: [str], tensor: map{shape: [int(int32)], values: [num(double)]}, ndarray: [any], tftensor: map{dtype: str, tensor_shape: map{dim: [map], unknown_rank: bool}, version_number: int(int32), tensor_content: str(byte), half_val: [int(int32)], float_val: [num(float)], double_val: [num(double)], int_val: [int(int32)], string_val: [str(byte)], scomplex_val: [num(float)], int64_val: [str(int64)], bool_val: [bool], dcomplex_val: [num(double)], resource_handle_val: [map], variant_val: [map], uint32_val: [int(int64)], uint64_val: [str(uint64)]}}, binData: str(byte), strData: str} # A successful response.\n@example_request {\"data\":{\"names\":[\"feature1\"],\"tensor\":{\"shape\":[1,1],\"values\":[1]}}}\n\n@endpoint POST /seldon/{namespace}/{deployment}/api/v1.0/feedback\n@required {namespace: str, deployment: str}\n@optional {request: map{status: map, meta: map, data: map, binData: str(byte), strData: str}, response: map{status: map, meta: map, data: map, binData: str(byte), strData: str}, reward: num(float), truth: map{status: map, meta: map, data: map, binData: str(byte), strData: str}}\n@returns(200) {status: map{code: int(int32), info: str, reason: str, status: str}, meta: map{puid: str, tags: map, routing: map, requestPath: map, metrics: [map]}, data: map{names: [str], tensor: map{shape: [int(int32)], values: [num(double)]}, ndarray: [any], tftensor: map{dtype: str, tensor_shape: map{dim: [map], unknown_rank: bool}, version_number: int(int32), tensor_content: str(byte), half_val: [int(int32)], float_val: [num(float)], double_val: [num(double)], int_val: [int(int32)], string_val: [str(byte)], scomplex_val: [num(float)], int64_val: [str(int64)], bool_val: [bool], dcomplex_val: [num(double)], resource_handle_val: [map], variant_val: [map], uint32_val: [int(int64)], uint64_val: [str(uint64)]}}, binData: str(byte), strData: str} # A successful response.\n\n@end\n"}}