@@ -20,6 +20,7 @@ import { buildOidcClientMetadata } from '#src/oidc/utils.js';
2020import assertThat from '#src/utils/assert-that.js' ;
2121import { parseSearchParamsForSearch } from '#src/utils/search.js' ;
2222
23+ import { EnvSet } from '../../env-set/index.js' ;
2324import type { ManagementApiRouter , RouterInitArgs } from '../types.js' ;
2425
2526import applicationCustomDataRoutes from './application-custom-data.js' ;
@@ -161,7 +162,7 @@ export default function applicationRoutes<T extends ManagementApiRouter>(
161162 koaGuard ( {
162163 body : applicationCreateGuard ,
163164 response : Applications . guard ,
164- status : [ 200 , 400 , 422 , 500 ] ,
165+ status : [ 200 , 400 , 422 , 403 , 500 ] ,
165166 } ) ,
166167 // eslint-disable-next-line complexity
167168 async ( ctx , next ) => {
@@ -226,6 +227,11 @@ export default function applicationRoutes<T extends ManagementApiRouter>(
226227 void quota . reportSubscriptionUpdatesUsage ( 'machineToMachineLimit' ) ;
227228 }
228229
230+ // TODO: remove this dev feature guard when new pro plan and add-on skus are ready.
231+ if ( EnvSet . values . isDevFeaturesEnabled && rest . isThirdParty ) {
232+ void quota . reportSubscriptionUpdatesUsage ( 'thirdPartyApplicationsLimit' ) ;
233+ }
234+
229235 return next ( ) ;
230236 }
231237 ) ;
@@ -361,7 +367,8 @@ export default function applicationRoutes<T extends ManagementApiRouter>(
361367 } ) ,
362368 async ( ctx , next ) => {
363369 const { id } = ctx . guard . params ;
364- const { type, protectedAppMetadata } = await queries . applications . findApplicationById ( id ) ;
370+ const { type, protectedAppMetadata, isThirdParty } =
371+ await queries . applications . findApplicationById ( id ) ;
365372
366373 if ( type === ApplicationType . SAML ) {
367374 throw new RequestError ( 'application.saml.use_saml_app_api' ) ;
@@ -383,6 +390,11 @@ export default function applicationRoutes<T extends ManagementApiRouter>(
383390 void quota . reportSubscriptionUpdatesUsage ( 'machineToMachineLimit' ) ;
384391 }
385392
393+ // TODO: remove this dev feature guard when new pro plan and add-on skus are ready.
394+ if ( EnvSet . values . isDevFeaturesEnabled && isThirdParty ) {
395+ void quota . reportSubscriptionUpdatesUsage ( 'thirdPartyApplicationsLimit' ) ;
396+ }
397+
386398 return next ( ) ;
387399 }
388400 ) ;
0 commit comments