# Public app profile (/docs/api/catalog/app_profile_get)

One public app: 30-day usage by day, top capabilities and providers.

`GET /v1/catalog/apps/{id}`

```json
{
  "operationId": "app_profile_get",
  "summary": "Public app profile",
  "description": "One public app: 30-day usage by day, top capabilities and providers.",
  "tags": [
    "catalog"
  ],
  "parameters": [
    {
      "schema": {
        "type": "string",
        "minLength": 2,
        "maxLength": 64,
        "pattern": "^[a-z0-9]+([.-][a-z0-9]+)*$"
      },
      "required": true,
      "name": "id",
      "in": "path"
    }
  ],
  "responses": {
    "200": {
      "description": "OK",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "properties": {
              "object": {
                "type": "string",
                "enum": [
                  "app_profile"
                ]
              },
              "source": {
                "type": "string",
                "enum": [
                  "live",
                  "unavailable",
                  "sample"
                ]
              },
              "generated_at": {
                "type": "string",
                "format": "date-time"
              },
              "app": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  },
                  "url": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "description": {
                    "type": "string"
                  },
                  "categories": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "enum": [
                        "ai-sdr",
                        "enrichment",
                        "list-building",
                        "crm-sync",
                        "research-agent",
                        "outbound",
                        "data-pipeline",
                        "internal-tool"
                      ]
                    }
                  },
                  "calls": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "hits": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "change": {
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "top_capabilities": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "calls": {
                          "type": "integer",
                          "minimum": 0
                        }
                      },
                      "required": [
                        "id",
                        "calls"
                      ]
                    }
                  },
                  "top_providers": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "calls": {
                          "type": "integer",
                          "minimum": 0
                        }
                      },
                      "required": [
                        "id",
                        "calls"
                      ]
                    }
                  }
                },
                "required": [
                  "id",
                  "name",
                  "url",
                  "description",
                  "categories",
                  "calls",
                  "hits",
                  "change",
                  "top_capabilities",
                  "top_providers"
                ]
              },
              "daily": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "date": {
                      "type": "string",
                      "format": "date"
                    },
                    "calls": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "hits": {
                      "type": "integer",
                      "minimum": 0
                    }
                  },
                  "required": [
                    "date",
                    "calls",
                    "hits"
                  ]
                }
              }
            },
            "required": [
              "object",
              "source",
              "generated_at",
              "app",
              "daily"
            ]
          }
        }
      }
    },
    "default": {
      "description": "Error",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "properties": {
              "error": {
                "type": "object",
                "properties": {
                  "code": {
                    "type": "string",
                    "enum": [
                      "invalid_request",
                      "unauthorized",
                      "insufficient_balance",
                      "max_cost_exceeded",
                      "scope_denied",
                      "budget_blocked",
                      "not_found",
                      "idempotency_mismatch",
                      "invalid_meta",
                      "rate_limited",
                      "upstream_error",
                      "response_buffer_limit",
                      "provider_capacity_unavailable",
                      "grid_saturated",
                      "upstream_timeout",
                      "conflict",
                      "internal_error",
                      "account_frozen",
                      "strict_filters",
                      "plan_limit_reached",
                      "validation_failed",
                      "deadline_exceeded",
                      "cancelled"
                    ]
                  },
                  "message": {
                    "type": "string"
                  },
                  "request_id": {
                    "type": "string"
                  },
                  "call_id": {
                    "type": "string"
                  },
                  "retry_after_ms": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "details": {
                    "type": "object",
                    "additionalProperties": {}
                  }
                },
                "required": [
                  "code",
                  "message"
                ]
              }
            },
            "required": [
              "error"
            ]
          }
        }
      }
    }
  }
}
```
