Back to list
getlarge

aip-knowledge

by getlarge

A good API Hygiene, from the comfort of your agent

0🍴 0📅 Jan 25, 2026

SKILL.md


name: aip-knowledge description: This skill should be used when the user asks about "AIP rules", "API Improvement Proposals", "Google API guidelines", "AIP-158", "AIP-193", or any specific AIP number. Also use when user asks "how should I implement pagination", "what's the right error format", "how do I design a REST API following Google's standards", or needs guidance on errors, pagination, filtering, field masks, long-running operations, or batch operations in REST/OpenAPI APIs.

AIP Knowledge

Quick reference for API Improvement Proposals adapted to REST/OpenAPI.

How to Use This Skill

  1. For quick patterns: Use the Quick Reference section below
  2. For detailed guidance: Load the relevant reference file from the table
  3. For AIP rule violations: See linter-rules.md for all 17 automated rules
  4. For deeper explanation: Use the aip-lookup agent to fetch from google.aip.dev

Reference Files

Load the relevant reference file based on the task:

TopicReference FileWhen to Use
Error responseserrors.mdDesigning error schema, reviewing error handling
Paginationpagination.mdAdding pagination to list endpoints
Filtering & sortingfiltering.mdAdding filter/order_by parameters
Long-running opslro.mdAsync operations, jobs, polling
Partial updatesfield-masks.mdPATCH implementation, update semantics
Batch operationsbatch.mdBatch create/update/delete
Proto → REST mappingrest-mapping.mdTranslating AIP concepts to REST
Linter ruleslinter-rules.mdAll 17 automated AIP rules with skip options

Quick Reference

Standard Methods → HTTP

MethodHTTPPathIdempotentRelated Rules
GetGET/resources/{id}Yesaip131/get-no-body
ListGET/resourcesYesaip158/list-paginated, aip132/has-filtering, aip132/has-ordering
CreatePOST/resourcesNo*aip133/post-returns-201, aip155/idempotency-key
UpdatePATCH/resources/{id}Yesaip134/patch-over-put
DeleteDELETE/resources/{id}Yesaip135/delete-idempotent

*Use Idempotency-Key header for safe retries

Naming Rules (AIP-122)

  • /users, /orders, /products (plural nouns)
  • /user, /order (singular - triggers aip122/plural-resources)
  • /getUsers, /createOrder (verbs - triggers aip122/no-verbs)
  • /users/{id}/orders (nested ownership)

Pagination (AIP-158)

Request: ?page_size=20&page_token=xxx

Response:

{
  "data": [...],
  "next_page_token": "yyy"
}

Error Response (AIP-193)

{
  "error": {
    "code": "INVALID_ARGUMENT",
    "message": "Human-readable message",
    "details": [...],
    "request_id": "req_abc123"
  }
}

Fetch AIPs On Demand

For detailed guidance, fetch from:

  • https://google.aip.dev/{number} (e.g., /158 for pagination)
  • Only fetch when user needs deeper explanation

Score

Total Score

55/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

1ヶ月以内に更新

+10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

+5

Reviews

💬

Reviews coming soon