{"files":{"SKILL.md":"---\nname: instancemetadataclient\ndescription: \"InstanceMetadataClient API skill. Use when working with InstanceMetadataClient for instance, attested, identity. Covers 4 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# InstanceMetadataClient\nAPI version: 2019-08-15\n\n## Auth\nbasic\n\n## Base URL\nhttp://169.254.169.254/metadata\n\n## Setup\n1. Configure auth: basic\n2. GET /instance -- get instance metadata for the virtual machine.\n3. Explore available endpoints below\n\n## Endpoints\n4 endpoints across 3 groups. See references/api-spec.lap for full details.\n\n### Instance\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /instance | Get Instance Metadata for the Virtual Machine. |\n\n### Attested\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /attested/document | Get Attested Data for the Virtual Machine. |\n\n### Identity\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /identity/oauth2/token | Get a Token from Azure AD |\n| GET | /identity/info | Get information about AAD Metadata |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"List all instance?\" -> GET /instance\n- \"List all document?\" -> GET /attested/document\n- \"List all token?\" -> GET /identity/oauth2/token\n- \"List all info?\" -> GET /identity/info\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\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 InstanceMetadataClient\n@base http://169.254.169.254/metadata\n@version 2019-08-15\n@auth basic\n@endpoints 4\n@toc instance(1), attested(1), identity(2)\n\n@group instance\n@endpoint GET /instance\n@desc Get Instance Metadata for the Virtual Machine.\n@required {api-version: any # This is the API version to use., Metadata: any # This must be set to 'true'.}\n@returns(200) OK\n\n@endgroup\n\n@group attested\n@endpoint GET /attested/document\n@desc Get Attested Data for the Virtual Machine.\n@required {api-version: any # This is the API version to use., Metadata: any # This must be set to 'true'.}\n@optional {nonce: any # This is a string of up to 32 random alphanumeric characters.}\n@returns(200) OK\n\n@endgroup\n\n@group identity\n@endpoint GET /identity/oauth2/token\n@desc Get a Token from Azure AD\n@required {Metadata: any # This must be set to 'true'., resource: any # This is the urlencoded identifier URI of the sink resource for the requested Azure AD token. The resulting token contains the corresponding aud for this resource., api-version: any # This is the API version to use.}\n@optional {client_id: any # This identifies, by Azure AD client id, a specific explicit identity to use when authenticating to Azure AD. Mutually exclusive with object_id and msi_res_id., object_id: any # This identifies, by Azure AD object id, a specific explicit identity to use when authenticating to Azure AD. Mutually exclusive with client_id and msi_res_id., msi_res_id: any # This identifies, by urlencoded ARM resource id, a specific explicit identity to use when authenticating to Azure AD. Mutually exclusive with client_id and object_id., authority: any # This indicates the authority to request AAD tokens from. Defaults to the known authority of the identity to be used., bypass_cache: any # If provided, the value must be 'true'. This indicates to the server that the token must be retrieved from Azure AD and cannot be retrieved from an internal cache.}\n@returns(200) Successful operation\n\n@endpoint GET /identity/info\n@desc Get information about AAD Metadata\n@required {Metadata: any # This must be set to 'true'., api-version: any # This is the API version to use.}\n@returns(200) Successful operation\n\n@endgroup\n\n@end\n"}}