openapi: 3.2.0 info: title: Iterable Web Push API version: '1.0' description: 'Operations tagged webPush across 2 of this provider''s published API definitions: iterable-api-openapi.json, iterable-rest-api-openapi.yml. Each path carries the servers of the definition it was published in.' servers: - url: https://api.iterable.com/ - url: https://api.iterable.com/api description: US Data Center (USDC) - url: https://api.eu.iterable.com/api description: European Data Center (EDC) tags: - name: Web Push paths: /api/webPush/cancel: post: description: 'Cancels a web push notification to a specific user. Request must include a campaignId and an email or userId, or just a scheduledMessageId. Learn about identifying users by userId and email.' operationId: cancel responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/IterableApiResponse' '400': description: Invalid parameters '401': description: Invalid API key summary: Cancel a web push notification to a user tags: - Web Push requestBody: content: application/json: schema: $ref: '#/components/schemas/CancelScheduledMessageRequest_-_campaignId_OR_scheduledMessageId_are_required' description: Email and Campaign ID required: true security: - api_key: [] servers: - url: https://api.iterable.com/ /api/webPush/target: post: description: 'Sends a web push notification to a specific user. Request data fields override user profile data fields. A reference to the user profile is provided via the profile field, to help resolve field collisions. Learn about identifying users by userId and email.' operationId: target responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/IterableApiResponse' '400': description: Invalid parameters '401': description: Invalid API key summary: Send web push notification to user tags: - Web Push requestBody: content: application/json: schema: $ref: '#/components/schemas/TargetWebPushRequest' description: Recipient and email id required: true security: - api_key: [] servers: - url: https://api.iterable.com/ /webPush/target: post: operationId: sendWebPush summary: Send a web push notification description: Sends a web push notification to a specific user using a template. tags: - Web Push requestBody: required: true content: application/json: schema: type: object required: - campaignId - recipientEmail properties: campaignId: type: integer description: The campaign ID to send recipientEmail: type: string description: The recipient email address dataFields: type: object description: Personalization data fields additionalProperties: true responses: '200': description: Web push notification sent content: application/json: schema: $ref: '#/components/schemas/IterableResponse' '400': description: Bad request '401': description: Unauthorized security: - apiKeyAuth: [] servers: - url: https://api.iterable.com/api description: US Data Center (USDC) - url: https://api.eu.iterable.com/api description: European Data Center (EDC) components: schemas: IterableApiResponse: properties: code: enum: - Success - BadApiKey - BadAuthorizationHeader - BadJsonBody - BadParams - BatchTooLarge - DatabaseError - EmailAlreadyExists - ExternalKeyConflict - Forbidden - ForbiddenParamsError - ForgottenUserError - GenericError - InvalidEmailAddressError - InvalidJwtPayload - InvalidUserIdError - JwtUserIdentifiersMismatched - NotFound - QueueEmailError - RateLimitExceeded - RequestFieldsTypesMismatched - Unauthorized - UniqueFieldsLimitExceeded - UnknownEmailError - UnknownUserIdError - UserIdAlreadyExists type: string msg: description: Response description type: string params: description: Additional info type: object required: - code - msg type: object TargetWebPushRequest: properties: allowRepeatMarketingSends: description: Allow repeat marketing sends? Defaults to true. type: boolean campaignId: format: int64 type: integer dataFields: description: Fields to merge into template type: object recipientEmail: description: An email address that identifies a user profile in Iterable. Provide a recipientEmail or a recipientUserId (but not both), depending on how your project identifies users. type: string recipientUserId: description: A user ID that identifies a user profile in Iterable. Provide a recipientEmail or a recipientUserId (but not both), depending on how your project identifies users. type: string sendAt: description: Schedule the message for up to 365 days in the future. If set in the past, message is sent immediately. Format is YYYY-MM-DD HH:MM:SS in UTC type: string required: - campaignId type: object CancelScheduledMessageRequest_-_campaignId_OR_scheduledMessageId_are_required: properties: campaignId: description: The ID of the campaign associated with the scheduled message you'd like to cancel. If you provide a campaignId, you must also provide an email or userId, depending on how your project identifies users. type: number email: description: An email address that identifies a user profile in Iterable. If you provide a campaignId, you must also provide an email or a userId, depending on how your project identifies users. type: string scheduledMessageId: type: number userId: description: A user ID that identifies a user profile in Iterable. If you provide a campaignId, you must also provide an email or a userId, depending on how your project identifies users. type: string type: object IterableResponse: type: object description: Standard Iterable API response indicating success or failure properties: msg: type: string description: Human-readable response message code: type: string description: Response code indicating success or error type params: type: object description: Additional response parameters additionalProperties: true securitySchemes: api_key: in: header name: Api-Key type: apiKey apiKeyAuth: type: apiKey in: header name: Api-Key description: Iterable API key passed in the Api-Key header. API keys can be created and managed in the Iterable project settings. externalDocs: description: Iterable API Documentation url: https://api.iterable.com/api/docs x-refined-from: - iterable-api-openapi.json - iterable-rest-api-openapi.yml