Skip to content

Built for people who want to own their automations. Join the waitlist for an invite.

Package listing

@kody/sentry

src/resolve-project.ts

19 lines · 918 B · TypeScript
import { type ResolveProjectInput, requireRecord, requireStringOrNumber, resolveProject } from './client.ts'

/**
 * Resolve a Sentry project by slug or numeric id within an organization.
 *
 * @param params.orgSlug - Organization slug (required).
 * @param params.projectSlug - Project slug, or pass `projectId` instead.
 * @param params.host - Optional API host. Default `sentry.io`.
 * @returns Project record with slug, id, and platform.
 * @example
 * import resolveProject from 'kody:@kody/sentry/resolve-project'
 * const project = await resolveProject({ orgSlug: 'acme', projectSlug: 'web-app' })
 * // => { slug: 'web-app', id: '...', platform: 'javascript' }
 */
export default async function resolveProjectEntrypoint(params: unknown) {
	const input = requireRecord(params, 'resolve-project')
	requireStringOrNumber(input, 'orgSlug', 'resolve-project')
	return resolveProject(input as ResolveProjectInput)
}