openapi: 3.2.0 info: title: Storefront V1 API Specification JWT API version: 1.0.0 contact: name: Storefront API Support email: storefront-api-support@doordash.com description: Endpoints for JWT resources servers: - url: https://openapi.doordash.com variables: {} security: - BearerAuth: [] tags: - name: JWT description: Endpoints for JWT resources paths: /storefront/api/v1/jwt: post: tags: - JWT summary: Create JWT for the integration_id which could be business, business group or… description: Create JWT for a onboarded integration id. operationId: CreateJWTForIntegrationId requestBody: description: request body which should contain integration_id. required: true content: application/json: schema: $ref: '#/components/schemas/StorefrontCreateJWTRequest' responses: '200': description: Ok headers: {} content: application/json: schema: $ref: '#/components/schemas/StorefrontCreateJWTResponse' '400': description: Request Validation Failed headers: {} content: application/json: schema: $ref: '#/components/schemas/ValidationFieldError' '401': description: Request not authenticated headers: {} content: application/json: schema: $ref: '#/components/schemas/AuthenticationError' '403': description: Operation not authorized headers: {} content: application/json: schema: $ref: '#/components/schemas/AuthorizationError' '404': description: Request resources not found headers: {} content: application/json: schema: $ref: '#/components/schemas/StoreResourceNotFoundError' '429': description: Rate limited headers: {} content: application/json: schema: $ref: '#/components/schemas/RateLimitedError' '500': description: Internal service failure, please try again later headers: {} content: application/json: schema: $ref: '#/components/schemas/InternalError' deprecated: false components: schemas: AuthenticationError: x-error: true type: object description: Authorization error, available credentials don't match requested operation required: - code - message properties: code: type: string enum: - authentication_error message: type: string example: Request does not contain a JWT. StoreResourceNotFoundError: x-error: true title: StoreResourceNotFoundError type: object description: The response returned when requested resource is not found/available. required: - code - message properties: code: type: string enum: - not_found message: type: string example: Store is inactive/invalid. StorefrontCreateJWTRequest: type: object required: - integration_id properties: integration_id: $ref: '#/components/schemas/IntegrationId' integration_type: $ref: '#/components/schemas/IntegrationType' IntegrationType: type: string enum: - BUSINESS - BUSINESS_GROUP - STORE example: store default: business description: Type of the integration id InternalError: x-error: true title: InternalError type: object description: Internal errors that occur during the api call. required: - code - message properties: code: type: string enum: - internal_service_error message: type: string example: Internal Service Error. IntegrationId: type: string pattern: ^([1-9][0-9]*)$ description: Unique ID for the business, business group or store. example: '987654' StorefrontCreateJWTResponse: type: object required: - jwt - expires_in properties: jwt: type: string description: jwt expires_in: type: number format: integer description: minutes after which generated jwt will expire. ValidationFieldError: x-error: true title: ValidationFieldError type: object description: The response returned when validation for field errors are encountered. required: - code - message - field_errors properties: code: type: string enum: - validation_error message: type: string example: Request validation failed. errors: type: string example: Missing business/store id. RateLimitedError: x-error: true title: RateLimitedError type: object description: Rate limited. required: - code - message properties: code: type: string enum: - rate_limit_error message: type: string example: Developer account endpoint rate limit exceeded. AuthorizationError: x-error: true type: object description: Authorization error, available credentials don't match requested operation required: - code - message properties: code: type: string enum: - authorization_error message: type: string example: You are not authorized to perform this action. securitySchemes: BearerAuth: type: http scheme: bearer