parseAIProviderName resolves a "provider_name" filter param against ai_providers.name. Unknown names produce a validation error so typos surface immediately rather than returning a silently-empty result set.
(ctx context.Context, db database.Store, parser *httpapi.QueryParamParser, vals url.Values)
| 706 | // ai_providers.name. Unknown names produce a validation error so typos |
| 707 | // surface immediately rather than returning a silently-empty result set. |
| 708 | func parseAIProviderName(ctx context.Context, db database.Store, parser *httpapi.QueryParamParser, vals url.Values) string { |
| 709 | name := parser.String(vals, "", "provider_name") |
| 710 | if name == "" { |
| 711 | return "" |
| 712 | } |
| 713 | if _, err := db.GetAIProviderByName(ctx, name); err != nil { |
| 714 | parser.Errors = append(parser.Errors, codersdk.ValidationError{ |
| 715 | Field: "provider_name", |
| 716 | Detail: `Query param "provider_name" has invalid value: provider not found or unauthorized`, |
| 717 | }) |
| 718 | return "" |
| 719 | } |
| 720 | return name |
| 721 | } |
| 722 | |
| 723 | func parseUser(ctx context.Context, db database.Store, parser *httpapi.QueryParamParser, vals url.Values, queryParam string, actorID uuid.UUID) uuid.UUID { |
| 724 | return httpapi.ParseCustom(parser, vals, uuid.Nil, queryParam, func(v string) (uuid.UUID, error) { |
no test coverage detected