{"openapi":"3.1.0","info":{"title":"Milind Kumar Mishra Agent API","version":"1","description":"Read-only, machine-readable profile and availability endpoints for agents and developers.","contact":{"name":"Milind Kumar Mishra","email":"hey@milindmishra.com"}},"servers":[{"url":"https://milindmishra.com"}],"externalDocs":{"description":"Interactive Scalar API reference","url":"https://milindmishra.com/docs"},"x-api-versioning":{"strategy":"URL path","current":"1","canonicalPrefix":"/api/v1/"},"paths":{"/api/v1/index.json":{"get":{"operationId":"getApiIndexV1","summary":"Discover the public API","description":"Returns versioned endpoint URLs and the documented error response shape.","responses":{"200":{"description":"Discover the public API","headers":{"RateLimit-Limit":{"description":"Maximum requests in the current one-minute window.","schema":{"type":"integer","minimum":1}},"RateLimit-Remaining":{"description":"Advisory requests remaining in the current window.","schema":{"type":"integer","minimum":0}},"RateLimit-Reset":{"description":"Seconds until the current window resets.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiIndex"}}}},"404":{"description":"The requested resource does not exist.","headers":{"RateLimit-Limit":{"description":"Maximum requests in the current one-minute window.","schema":{"type":"integer","minimum":1}},"RateLimit-Remaining":{"description":"Advisory requests remaining in the current window.","schema":{"type":"integer","minimum":0}},"RateLimit-Reset":{"description":"Seconds until the current window resets.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded.","headers":{"RateLimit-Limit":{"description":"Maximum requests in the current one-minute window.","schema":{"type":"integer","minimum":1}},"RateLimit-Remaining":{"description":"Advisory requests remaining in the current window.","schema":{"type":"integer","minimum":0}},"RateLimit-Reset":{"description":"Seconds until the current window resets.","schema":{"type":"integer","minimum":0}},"Retry-After":{"description":"Seconds to wait before retrying.","schema":{"type":"integer","minimum":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Unexpected API error.","headers":{"RateLimit-Limit":{"description":"Maximum requests in the current one-minute window.","schema":{"type":"integer","minimum":1}},"RateLimit-Remaining":{"description":"Advisory requests remaining in the current window.","schema":{"type":"integer","minimum":0}},"RateLimit-Reset":{"description":"Seconds until the current window resets.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/api/v1/profile.json":{"get":{"operationId":"getProfileV1","summary":"Get Milind Mishra's professional profile","description":"Returns identity, role, expertise, contact, and canonical resource links.","responses":{"200":{"description":"Get Milind Mishra's professional profile","headers":{"RateLimit-Limit":{"description":"Maximum requests in the current one-minute window.","schema":{"type":"integer","minimum":1}},"RateLimit-Remaining":{"description":"Advisory requests remaining in the current window.","schema":{"type":"integer","minimum":0}},"RateLimit-Reset":{"description":"Seconds until the current window resets.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Profile"}}}},"404":{"description":"The requested resource does not exist.","headers":{"RateLimit-Limit":{"description":"Maximum requests in the current one-minute window.","schema":{"type":"integer","minimum":1}},"RateLimit-Remaining":{"description":"Advisory requests remaining in the current window.","schema":{"type":"integer","minimum":0}},"RateLimit-Reset":{"description":"Seconds until the current window resets.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded.","headers":{"RateLimit-Limit":{"description":"Maximum requests in the current one-minute window.","schema":{"type":"integer","minimum":1}},"RateLimit-Remaining":{"description":"Advisory requests remaining in the current window.","schema":{"type":"integer","minimum":0}},"RateLimit-Reset":{"description":"Seconds until the current window resets.","schema":{"type":"integer","minimum":0}},"Retry-After":{"description":"Seconds to wait before retrying.","schema":{"type":"integer","minimum":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Unexpected API error.","headers":{"RateLimit-Limit":{"description":"Maximum requests in the current one-minute window.","schema":{"type":"integer","minimum":1}},"RateLimit-Remaining":{"description":"Advisory requests remaining in the current window.","schema":{"type":"integer","minimum":0}},"RateLimit-Reset":{"description":"Seconds until the current window resets.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/api/v1/health.json":{"get":{"operationId":"getHealthV1","summary":"Check API availability","description":"Returns a small status payload when the API is available.","responses":{"200":{"description":"Check API availability","headers":{"RateLimit-Limit":{"description":"Maximum requests in the current one-minute window.","schema":{"type":"integer","minimum":1}},"RateLimit-Remaining":{"description":"Advisory requests remaining in the current window.","schema":{"type":"integer","minimum":0}},"RateLimit-Reset":{"description":"Seconds until the current window resets.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Health"}}}},"404":{"description":"The requested resource does not exist.","headers":{"RateLimit-Limit":{"description":"Maximum requests in the current one-minute window.","schema":{"type":"integer","minimum":1}},"RateLimit-Remaining":{"description":"Advisory requests remaining in the current window.","schema":{"type":"integer","minimum":0}},"RateLimit-Reset":{"description":"Seconds until the current window resets.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded.","headers":{"RateLimit-Limit":{"description":"Maximum requests in the current one-minute window.","schema":{"type":"integer","minimum":1}},"RateLimit-Remaining":{"description":"Advisory requests remaining in the current window.","schema":{"type":"integer","minimum":0}},"RateLimit-Reset":{"description":"Seconds until the current window resets.","schema":{"type":"integer","minimum":0}},"Retry-After":{"description":"Seconds to wait before retrying.","schema":{"type":"integer","minimum":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Unexpected API error.","headers":{"RateLimit-Limit":{"description":"Maximum requests in the current one-minute window.","schema":{"type":"integer","minimum":1}},"RateLimit-Remaining":{"description":"Advisory requests remaining in the current window.","schema":{"type":"integer","minimum":0}},"RateLimit-Reset":{"description":"Seconds until the current window resets.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/api/v1/error.json":{"get":{"operationId":"getApiErrorExampleV1","summary":"Read the not-found error contract","description":"Returns the JSON shape clients should expect for unsupported API resources.","responses":{"404":{"description":"Not-found error example","headers":{"RateLimit-Limit":{"description":"Maximum requests in the current one-minute window.","schema":{"type":"integer","minimum":1}},"RateLimit-Remaining":{"description":"Advisory requests remaining in the current window.","schema":{"type":"integer","minimum":0}},"RateLimit-Reset":{"description":"Seconds until the current window resets.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded.","headers":{"RateLimit-Limit":{"description":"Maximum requests in the current one-minute window.","schema":{"type":"integer","minimum":1}},"RateLimit-Remaining":{"description":"Advisory requests remaining in the current window.","schema":{"type":"integer","minimum":0}},"RateLimit-Reset":{"description":"Seconds until the current window resets.","schema":{"type":"integer","minimum":0}},"Retry-After":{"description":"Seconds to wait before retrying.","schema":{"type":"integer","minimum":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}},"components":{"schemas":{"Error":{"type":"object","additionalProperties":false,"required":["error"],"properties":{"error":{"type":"object","additionalProperties":false,"required":["code","message","hint"],"properties":{"code":{"type":"string","description":"Stable machine-readable code."},"message":{"type":"string","description":"Human-readable explanation."},"hint":{"type":"string","description":"Action an agent can take next."}}}}},"Profile":{"type":"object","required":["type","name","description","url","jobTitle","worksFor","location","knowsAbout","sameAs","contact","resources","apiVersion"],"properties":{"type":{"type":"string","example":"Person"},"name":{"type":"string","example":"Milind Kumar Mishra"},"alternateName":{"type":"string","example":"Milind Mishra"},"description":{"type":"string"},"url":{"type":"string","format":"uri"},"jobTitle":{"type":"string"},"worksFor":{"type":"object","required":["name","url"],"properties":{"name":{"type":"string"},"url":{"type":"string","format":"uri"}}},"location":{"type":"object","required":["city","region","country","countryCode","timezone"],"properties":{"city":{"type":"string"},"region":{"type":"string"},"country":{"type":"string"},"countryCode":{"type":"string"},"timezone":{"type":"string"},"timezoneLabel":{"type":"string"}}},"knowsAbout":{"type":"array","items":{"type":"string"}},"sameAs":{"type":"array","items":{"type":"string","format":"uri"}},"contact":{"type":"object","required":["email","contactType"],"properties":{"email":{"type":"string","format":"email"},"contactType":{"type":"string"}}},"resources":{"type":"object","required":["llms","fullContext","openapi","docs"],"properties":{"llms":{"type":"string","format":"uri"},"fullContext":{"type":"string","format":"uri"},"openapi":{"type":"string","format":"uri"},"docs":{"type":"string","format":"uri"}}},"apiVersion":{"type":"string","example":"1"}}},"ApiIndex":{"type":"object","required":["name","description","apiVersion","openapi","endpoints","errors"],"properties":{"name":{"type":"string"},"description":{"type":"string"},"apiVersion":{"type":"string"},"openapi":{"type":"string","format":"uri"},"endpoints":{"type":"array","items":{"type":"object","required":["name","url"],"properties":{"name":{"type":"string"},"url":{"type":"string","format":"uri"}}}},"errors":{"type":"object","required":["schema","example"],"properties":{"schema":{"type":"string","format":"uri-reference"},"example":{"type":"string","format":"uri"}}}}},"Health":{"type":"object","required":["status","service","version"],"properties":{"status":{"type":"string","enum":["ok"]},"service":{"type":"string"},"version":{"type":"string"}}}}}}