openapi: 3.2.0 info: title: Gr4vy Digital wallets - Sessions API description: The Gr4vy API. version: 1.0.0 tags: - name: Digital wallets - Sessions description: Create sessions for digital wallets like Apple Pay and Google Pay. paths: /digital-wallets/google/session: post: tags: - Digital wallets - Sessions summary: Create a Google Pay session description: Create a session for use with Google Pay. operationId: create_google_pay_digital_wallet_session security: - OAuth2PasswordBearer: - digital-wallets.write - embed parameters: - name: x-gr4vy-merchant-account-id in: header required: false schema: anyOf: - type: string - type: 'null' description: The ID of the merchant account to use for this request. examples: - default title: X-Gr4Vy-Merchant-Account-Id description: The ID of the merchant account to use for this request. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/GooglePaySessionRequest' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GooglePaySession' '400': description: The request was invalid. content: application/json: schema: $ref: '#/components/schemas/Error400' '401': description: The request was unauthorized. content: application/json: schema: $ref: '#/components/schemas/Error401' '403': description: The credentials were invalid or the caller did not have permission to act on the resource. content: application/json: schema: $ref: '#/components/schemas/Error403' '404': description: The resource was not found. content: application/json: schema: $ref: '#/components/schemas/Error404' '405': description: The request method was not allowed. content: application/json: schema: $ref: '#/components/schemas/Error405' '409': description: A duplicate record was found. content: application/json: schema: $ref: '#/components/schemas/Error409' '425': description: The request was too early. content: application/json: schema: $ref: '#/components/schemas/Error425' '429': description: Too many requests were made. content: application/json: schema: $ref: '#/components/schemas/Error429' '500': description: The server encountered an error. content: application/json: schema: $ref: '#/components/schemas/Error500' '502': description: The server encountered an error. content: application/json: schema: $ref: '#/components/schemas/Error502' '504': description: The server encountered an error. content: application/json: schema: $ref: '#/components/schemas/Error504' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-speakeasy-name-override: google_pay x-speakeasy-group: digital-wallets.sessions /digital-wallets/apple/session: post: tags: - Digital wallets - Sessions summary: Create a Apple Pay session description: Create a session for use with Apple Pay. operationId: create_apple_pay_digital_wallet_session security: - OAuth2PasswordBearer: - digital-wallets.write - embed parameters: - name: x-gr4vy-merchant-account-id in: header required: false schema: anyOf: - type: string - type: 'null' description: The ID of the merchant account to use for this request. examples: - default title: X-Gr4Vy-Merchant-Account-Id description: The ID of the merchant account to use for this request. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApplePaySessionRequest' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApplePaySession' '400': description: The request was invalid. content: application/json: schema: $ref: '#/components/schemas/Error400' '401': description: The request was unauthorized. content: application/json: schema: $ref: '#/components/schemas/Error401' '403': description: The credentials were invalid or the caller did not have permission to act on the resource. content: application/json: schema: $ref: '#/components/schemas/Error403' '404': description: The resource was not found. content: application/json: schema: $ref: '#/components/schemas/Error404' '405': description: The request method was not allowed. content: application/json: schema: $ref: '#/components/schemas/Error405' '409': description: A duplicate record was found. content: application/json: schema: $ref: '#/components/schemas/Error409' '425': description: The request was too early. content: application/json: schema: $ref: '#/components/schemas/Error425' '429': description: Too many requests were made. content: application/json: schema: $ref: '#/components/schemas/Error429' '500': description: The server encountered an error. content: application/json: schema: $ref: '#/components/schemas/Error500' '502': description: The server encountered an error. content: application/json: schema: $ref: '#/components/schemas/Error502' '504': description: The server encountered an error. content: application/json: schema: $ref: '#/components/schemas/Error504' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-speakeasy-name-override: apple_pay x-speakeasy-group: digital-wallets.sessions /digital-wallets/paze/session/create: post: tags: - Digital wallets - Sessions summary: Create a Paze mobile session description: Create a mobile session for use with Paze. operationId: create_paze_mobile_session security: - OAuth2PasswordBearer: - digital-wallets.write - embed parameters: - name: x-gr4vy-merchant-account-id in: header required: false schema: anyOf: - type: string - type: 'null' description: The ID of the merchant account to use for this request. examples: - default title: X-Gr4Vy-Merchant-Account-Id description: The ID of the merchant account to use for this request. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PazeMobileSessionCreateRequest' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PazeMobileSessionCreate' '400': description: The request was invalid. content: application/json: schema: $ref: '#/components/schemas/Error400' '401': description: The request was unauthorized. content: application/json: schema: $ref: '#/components/schemas/Error401' '403': description: The credentials were invalid or the caller did not have permission to act on the resource. content: application/json: schema: $ref: '#/components/schemas/Error403' '404': description: The resource was not found. content: application/json: schema: $ref: '#/components/schemas/Error404' '405': description: The request method was not allowed. content: application/json: schema: $ref: '#/components/schemas/Error405' '409': description: A duplicate record was found. content: application/json: schema: $ref: '#/components/schemas/Error409' '425': description: The request was too early. content: application/json: schema: $ref: '#/components/schemas/Error425' '429': description: Too many requests were made. content: application/json: schema: $ref: '#/components/schemas/Error429' '500': description: The server encountered an error. content: application/json: schema: $ref: '#/components/schemas/Error500' '502': description: The server encountered an error. content: application/json: schema: $ref: '#/components/schemas/Error502' '504': description: The server encountered an error. content: application/json: schema: $ref: '#/components/schemas/Error504' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-speakeasy-name-override: paze_mobile_session_create x-speakeasy-group: digital-wallets.sessions /digital-wallets/paze/session: post: tags: - Digital wallets - Sessions summary: Create a Paze session description: Create a session for use with Paze. operationId: create_paze_digital_wallet_session security: - OAuth2PasswordBearer: - digital-wallets.write - embed parameters: - name: x-gr4vy-merchant-account-id in: header required: false schema: anyOf: - type: string - type: 'null' description: The ID of the merchant account to use for this request. examples: - default title: X-Gr4Vy-Merchant-Account-Id description: The ID of the merchant account to use for this request. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PazeSessionRequest' responses: '200': description: Successful Response content: application/json: schema: anyOf: - $ref: '#/components/schemas/PazeWebSession' - $ref: '#/components/schemas/PazeMobileSession' title: Response Create Paze Digital Wallet Session '400': description: The request was invalid. content: application/json: schema: $ref: '#/components/schemas/Error400' '401': description: The request was unauthorized. content: application/json: schema: $ref: '#/components/schemas/Error401' '403': description: The credentials were invalid or the caller did not have permission to act on the resource. content: application/json: schema: $ref: '#/components/schemas/Error403' '404': description: The resource was not found. content: application/json: schema: $ref: '#/components/schemas/Error404' '405': description: The request method was not allowed. content: application/json: schema: $ref: '#/components/schemas/Error405' '409': description: A duplicate record was found. content: application/json: schema: $ref: '#/components/schemas/Error409' '425': description: The request was too early. content: application/json: schema: $ref: '#/components/schemas/Error425' '429': description: Too many requests were made. content: application/json: schema: $ref: '#/components/schemas/Error429' '500': description: The server encountered an error. content: application/json: schema: $ref: '#/components/schemas/Error500' '502': description: The server encountered an error. content: application/json: schema: $ref: '#/components/schemas/Error502' '504': description: The server encountered an error. content: application/json: schema: $ref: '#/components/schemas/Error504' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-speakeasy-name-override: paze x-speakeasy-group: digital-wallets.sessions /digital-wallets/paze/session/review: post: tags: - Digital wallets - Sessions summary: Review a Paze session description: Review a Paze checkout session and retrieve the selected card, consumer, and shipping address details. operationId: review_paze_mobile_session security: - OAuth2PasswordBearer: - digital-wallets.write - embed parameters: - name: x-gr4vy-merchant-account-id in: header required: false schema: anyOf: - type: string - type: 'null' description: The ID of the merchant account to use for this request. examples: - default title: X-Gr4Vy-Merchant-Account-Id description: The ID of the merchant account to use for this request. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PazeSessionReviewRequest' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PazeSessionReview' '400': description: The request was invalid. content: application/json: schema: $ref: '#/components/schemas/Error400' '401': description: The request was unauthorized. content: application/json: schema: $ref: '#/components/schemas/Error401' '403': description: The credentials were invalid or the caller did not have permission to act on the resource. content: application/json: schema: $ref: '#/components/schemas/Error403' '404': description: The resource was not found. content: application/json: schema: $ref: '#/components/schemas/Error404' '405': description: The request method was not allowed. content: application/json: schema: $ref: '#/components/schemas/Error405' '409': description: A duplicate record was found. content: application/json: schema: $ref: '#/components/schemas/Error409' '425': description: The request was too early. content: application/json: schema: $ref: '#/components/schemas/Error425' '429': description: Too many requests were made. content: application/json: schema: $ref: '#/components/schemas/Error429' '500': description: The server encountered an error. content: application/json: schema: $ref: '#/components/schemas/Error500' '502': description: The server encountered an error. content: application/json: schema: $ref: '#/components/schemas/Error502' '504': description: The server encountered an error. content: application/json: schema: $ref: '#/components/schemas/Error504' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-speakeasy-name-override: paze_mobile_session_review x-speakeasy-group: digital-wallets.sessions /digital-wallets/paze/session/complete: post: tags: - Digital wallets - Sessions summary: Complete a Paze session description: Complete a Paze checkout session and retrieve the secure payload required to settle the payment. operationId: complete_paze_mobile_session security: - OAuth2PasswordBearer: - digital-wallets.write - embed parameters: - name: x-gr4vy-merchant-account-id in: header required: false schema: anyOf: - type: string - type: 'null' description: The ID of the merchant account to use for this request. examples: - default title: X-Gr4Vy-Merchant-Account-Id description: The ID of the merchant account to use for this request. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PazeSessionCompleteRequest' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PazeSessionComplete' '400': description: The request was invalid. content: application/json: schema: $ref: '#/components/schemas/Error400' '401': description: The request was unauthorized. content: application/json: schema: $ref: '#/components/schemas/Error401' '403': description: The credentials were invalid or the caller did not have permission to act on the resource. content: application/json: schema: $ref: '#/components/schemas/Error403' '404': description: The resource was not found. content: application/json: schema: $ref: '#/components/schemas/Error404' '405': description: The request method was not allowed. content: application/json: schema: $ref: '#/components/schemas/Error405' '409': description: A duplicate record was found. content: application/json: schema: $ref: '#/components/schemas/Error409' '425': description: The request was too early. content: application/json: schema: $ref: '#/components/schemas/Error425' '429': description: Too many requests were made. content: application/json: schema: $ref: '#/components/schemas/Error429' '500': description: The server encountered an error. content: application/json: schema: $ref: '#/components/schemas/Error500' '502': description: The server encountered an error. content: application/json: schema: $ref: '#/components/schemas/Error502' '504': description: The server encountered an error. content: application/json: schema: $ref: '#/components/schemas/Error504' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-speakeasy-name-override: paze_mobile_session_complete x-speakeasy-group: digital-wallets.sessions /digital-wallets/click-to-pay/session: post: tags: - Digital wallets - Sessions summary: Create a Click to Pay session description: Create a session for use with Click to Pay. operationId: create_click_to_pay_digital_wallet_session requestBody: content: application/json: schema: $ref: '#/components/schemas/ClickToPaySessionRequest' required: true responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ClickToPaySession' '400': description: The request was invalid. content: application/json: schema: $ref: '#/components/schemas/Error400' '401': description: The request was unauthorized. content: application/json: schema: $ref: '#/components/schemas/Error401' '403': description: The credentials were invalid or the caller did not have permission to act on the resource. content: application/json: schema: $ref: '#/components/schemas/Error403' '404': description: The resource was not found. content: application/json: schema: $ref: '#/components/schemas/Error404' '405': description: The request method was not allowed. content: application/json: schema: $ref: '#/components/schemas/Error405' '409': description: A duplicate record was found. content: application/json: schema: $ref: '#/components/schemas/Error409' '425': description: The request was too early. content: application/json: schema: $ref: '#/components/schemas/Error425' '429': description: Too many requests were made. content: application/json: schema: $ref: '#/components/schemas/Error429' '500': description: The server encountered an error. content: application/json: schema: $ref: '#/components/schemas/Error500' '502': description: The server encountered an error. content: application/json: schema: $ref: '#/components/schemas/Error502' '504': description: The server encountered an error. content: application/json: schema: $ref: '#/components/schemas/Error504' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' x-speakeasy-name-override: click_to_pay x-speakeasy-group: digital-wallets.sessions components: schemas: PazeBillingAddress: properties: name: anyOf: - type: string - type: 'null' title: Name description: Name of the organization or entity at the address. line1: type: string title: Line1 description: Line 1 of the address. line2: anyOf: - type: string - type: 'null' title: Line2 description: Line 2 of the address. line3: anyOf: - type: string - type: 'null' title: Line3 description: Line 3 of the address. city: type: string title: City description: City. state: type: string title: State description: State or region. zip: type: string title: Zip description: Postal code. countryCode: anyOf: - type: string - type: 'null' title: Countrycode description: ISO 3166-1 alpha-2 country code. additionalProperties: false type: object required: - line1 - city - state - zip title: PazeBillingAddress PazeEcomData: properties: cartContainsGiftCard: anyOf: - type: boolean - type: 'null' title: Cartcontainsgiftcard description: Whether the current transaction includes a gift card purchase. examples: - false orderForPickup: anyOf: - type: boolean - type: 'null' title: Orderforpickup description: Whether the consumer order will be picked up rather than shipped. examples: - false orderHighestCost: anyOf: - type: string maxLength: 32 - type: 'null' title: Orderhighestcost description: Dollar value of the most expensive item ordered. examples: - '99.99' orderQuantity: anyOf: - type: string maxLength: 32 - type: 'null' title: Orderquantity description: Number of items ordered. examples: - '3' finalShippingAddress: anyOf: - $ref: '#/components/schemas/PazeShippingAddress' - type: 'null' description: The selected shipping address. Returned only when `shippingPreference` is not `NONE`. additionalProperties: false type: object title: PazeEcomData PazeSessionReviewLinks: properties: CHANGE_CARD: anyOf: - type: string - type: 'null' title: Change Card description: Follow-up link to change the selected card. examples: - https://checkout.wallet.uat.earlywarning.io/... CHANGE_SHIPPING_ADDRESS: anyOf: - type: string - type: 'null' title: Change Shipping Address description: Follow-up link to change the shipping address. examples: - https://checkout.wallet.uat.earlywarning.io/... additionalProperties: false type: object required: - CHANGE_CARD - CHANGE_SHIPPING_ADDRESS title: PazeSessionReviewLinks PazeMaskedCard: properties: panLastFour: type: string title: Panlastfour description: Last four digits of the PAN. examples: - '2121' paymentAccountReference: type: string title: Paymentaccountreference description: Payment Account Reference (PAR). A non-financial reference assigned to each unique PAN. examples: - V0010013023108318841413393850 panExpirationMonth: anyOf: - type: string - type: 'null' title: Panexpirationmonth description: 2-digit PAN expiration month. examples: - '05' panExpirationYear: anyOf: - type: string - type: 'null' title: Panexpirationyear description: 4-digit PAN expiration year. examples: - '2032' paymentCardDescriptor: type: string title: Paymentcarddescriptor description: Free-form string used for card or program recognition. examples: - Visa Hero Card paymentCardType: type: string enum: - CREDIT - DEBIT title: Paymentcardtype description: Card type. examples: - CREDIT paymentCardBrand: type: string enum: - VISA - MASTERCARD - DISCOVER title: Paymentcardbrand description: Card brand. examples: - VISA paymentCardNetwork: type: string enum: - VISA - MASTERCARD - DISCOVER title: Paymentcardnetwork description: Card network. examples: - VISA digitalCardData: $ref: '#/components/schemas/PazeDigitalCardData' billingAddress: anyOf: - $ref: '#/components/schemas/PazeBillingAddress' - type: 'null' additionalProperties: false type: object required: - panLastFour - paymentAccountReference - panExpirationMonth - panExpirationYear - paymentCardDescriptor - paymentCardType - paymentCardBrand - paymentCardNetwork - digitalCardData - billingAddress title: PazeMaskedCard PazeTravelData: properties: passengerName: anyOf: - type: string maxLength: 100 minLength: 1 - type: 'null' title: Passengername description: Traveler name. examples: - Team Integrations roundTrip: anyOf: - type: boolean - type: 'null' title: Roundtrip description: Whether departure and return trips are being purchased in the same transaction. examples: - true departureDate: anyOf: - type: string maxLength: 20 - type: 'null' title: Departuredate description: Date and time of departure in ISO 8601 format. examples: - '2026-06-01T08:00:00Z' returnDate: anyOf: - type: string maxLength: 20 - type: 'null' title: Returndate description: Date and time of return in ISO 8601 format. examples: - '2026-06-08T18:30:00Z' departureLocation: anyOf: - $ref: '#/components/schemas/PazeLocationAddress' - type: 'null' description: Location from which the traveler departs. returnLocation: anyOf: - $ref: '#/components/schemas/PazeLocationAddress' - type: 'null' description: Location to which the traveler returns. additionalProperties: false type: object title: PazeTravelData Error401: properties: type: type: string const: error title: Type description: Always `error`. default: error examples: - error code: type: string title: Code description: Always `unauthorized` default: unauthorized examples: - unauthorized status: type: integer title: Status description: Always `401`. default: 401 examples: - 401 message: type: string title: Message description: A human readable message that provides more context to the error. default: No valid API authentication found examples: - No valid API authentication found details: items: $ref: '#/components/schemas/ErrorDetail' type: array title: Details description: A list of details that further ellaborate on the error. default: [] additionalProperties: false type: object title: Error401 PazeLocationAddress: properties: name: anyOf: - type: string - type: 'null' title: Name description: Name of the organization or entity at the address. line1: type: string title: Line1 description: Line 1 of the address. line2: anyOf: - type: string - type: 'null' title: Line2 description: Line 2 of the address. line3: anyOf: - type: string - type: 'null' title: Line3 description: Line 3 of the address. city: type: string title: City description: City. state: type: string title: State description: State or region. zip: type: string title: Zip description: Postal code. countryCode: type: string title: Countrycode description: ISO 3166-1 alpha-2 country code. additionalProperties: false type: object required: - line1 - city - state - zip - countryCode title: PazeLocationAddress Error404: properties: type: type: string const: error title: Type description: Always `error`. default: error examples: - error code: type: string title: Code description: Always `not_found` default: not_found examples: - not_found status: type: integer title: Status description: Always `404`. default: 404 examples: - 404 message: type: string title: Message description: A human readable message that provides more context to the error. default: The resource could not be found examples: - The resource could not be found details: items: $ref: '#/components/schemas/ErrorDetail' type: array title: Details description: A list of details that further ellaborate on the error. default: [] additionalProperties: false type: object title: Error404 ErrorLocation: type: string enum: - query - body - path - header - unknown title: ErrorLocation PazeSessionReviewRequest: properties: sessionId: type: string maxLength: 255 title: Sessionid description: Session reference identifier generated by the merchant. Must match the value sent in the Paze session create call. examples: - 7c1cba03-d20e-4a3f-9d77-e5dc23a39ac2 code: type: string maxLength: 10240 title: Code description: Opaque token issued by the Paze service in the response from the most recent Paze UX interaction (checkout, change card, or change shipping address). examples: - eyJhdWQiOm51bGwsImtpZCI6IjE3... accessToken: type: string title: Accesstoken description: The Paze OAuth access token returned by the Paze mobile session create call. Used to authenticate the request to Paze. examples: - eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9... additionalProperties: false type: object required: - sessionId - code - accessToken title: PazeSessionReviewRequest PazeSessionComplete: properties: payloadId: type: string title: Payloadid description: Unique identifier generated by Paze to track and link the wallet transaction. Used as the wallet transaction identifier. examples: - 5C90F1500800f8dc1ce2-2b49-9d82-823e-111195cd4301 completeResponse: anyOf: - type: string - type: 'null' title: Completeresponse description: Opaque token returned by Paze for the completion call. examples: - eyJhdWQiOm51bGwsImtpZCI6IjE3... securePayload: anyOf: - type: string - type: 'null' title: Securepayload description: Signed and encrypted payload containing the data necessary to process the payment. Returned when `payloadTypeIndicator` is PAYMENT. examples: - eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9... clientContext: type: string title: Clientcontext description: Echo of the `clientContext` sent on the request. Returned by Paze for client-side tracing. examples: - 7c1cba03-d20e-4a3f-9d77-e5dc23a39ac2 ewSID: type: string title: Ewsid description: Paze-issued session identifier returned for tracing. examples: - c4b5e9fa-9d35-4cf2-bfc2-2cb1b9f1f6ab timestampISO8601: type: string title: Timestampiso8601 description: Server timestamp of the Paze response in ISO 8601 format. Returned for tracing. examples: - '2026-05-25T12:18:09Z' additionalProperties: false type: object required: - payloadId - completeResponse - securePayload - clientContext - ewSID - timestampISO8601 title: PazeSessionComplete Error425: properties: type: type: string const: error title: Type description: Always `error`. default: error examples: - error code: type: string title: Code description: Always `too_early` default: too_early examples: - too_early status: type: integer title: Status description: Always `425`. default: 425 examples: - 425 message: type: string title: Message description: A human readable message that provides more context to the error. default: Generic error examples: - Request failed validation details: items: $ref: '#/components/schemas/ErrorDetail' type: array title: Details description: A list of details that further ellaborate on the error. default: [] additionalProperties: false type: object title: Error425 PazeWebSession: properties: id: type: string title: Id description: The Paze merchant data ID. examples: - W8GT9RLCNME754Z7025613H3PDM2T4HF2CSAOi9w2kkP3D4S0 name: type: string title: Name description: The merchant display name. examples: - ACME profileId: type: string title: Profileid description: The Paze profile ID for the given domain. examples: - 550e8400-e29b-41d4-a716-446655440000 additionalProperties: false type: object required: - id - name - profileId title: PazeWebSession PazeSessionRequest: properties: source: type: string enum: - web - mobile title: Source description: The platform that the Paze session is being created for. Defaults to `web`. default: web examples: - web domain_name: anyOf: - type: string - type: 'null' title: Domain Name description: The domain on which Paze is being loaded. Required when `source` is `web`. examples: - example.com additionalProperties: false type: object title: PazeSessionRequest HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array title: Detail type: object title: HTTPValidationError PazeClient: properties: id: type: string maxLength: 50 title: Id description: Client identifier generated by Paze and shared during onboarding. examples: - 0UVAS9Y03YNJ39XXYIN313F4DZNCjIGmqs4Iw32EPnZV0800o name: anyOf: - type: string maxLength: 50 - type: 'null' title: Name description: Display name associated with the client for presentation purposes. examples: - Gr4vy Test profileId: anyOf: - type: string maxLength: 50 - type: 'null' title: Profileid description: Client profile to use during checkout. examples: - 8614d0be-192e-45a7-a509-eceb7343d377 additionalProperties: false type: object required: - id title: PazeClient ErrorDetail: properties: location: $ref: '#/components/schemas/ErrorLocation' description: The part of the request where the property can be found that caused the error. examples: - body pointer: anyOf: - type: string format: json-pointer - type: string title: Pointer description: A JSON pointer for the particular property that caused the error. examples: - /currency message: type: string title: Message description: A human-readdable explanation of the error. examples: - 'Unknown ISO 4217 currency code: USX' type: type: string title: Type description: The type of error that was raised for this property. examples: - value_error additionalProperties: false type: object required: - location - pointer - message - type title: ErrorDetail PazeConsumer: properties: firstName: anyOf: - type: string - type: 'null' title: Firstname description: First name of the consumer. examples: - Team lastName: anyOf: - type: string - type: 'null' title: Lastname description: Last name of the consumer. examples: - Integrations fullName: type: string title: Fullname description: Full name of the consumer. examples: - Team Integrations countryCode: anyOf: - type: string - type: 'null' title: Countrycode description: ISO 3166-1 alpha-2 country code. examples: - US languageCode: anyOf: - type: string - type: 'null' title: Languagecode description: ISO 639-1 language code associated with the wallet. examples: - EN emailAddress: type: string title: Emailaddress description: Email address of the consumer. examples: - integrations@gr4vy.com mobileNumber: anyOf: - $ref: '#/components/schemas/PazeMobileNumber' - type: 'null' additionalProperties: false type: object required: - firstName - lastName - fullName - countryCode - languageCode - emailAddress - mobileNumber title: PazeConsumer PazeTransactionOptions: properties: merchantCategoryCode: anyOf: - type: string - type: 'null' title: Merchantcategorycode description: Merchant Category Code (MCC) of the merchant. examples: - '2121' billingPreference: anyOf: - type: string enum: - ALL - NONE - type: 'null' title: Billingpreference description: Verbosity of the billing address required by the merchant. examples: - ALL payloadTypeIndicator: anyOf: - type: string enum: - ID - PAYMENT - type: 'null' title: Payloadtypeindicator description: ID returns `payloadId` only (default). PAYMENT returns `payloadId` and `securePayload`. examples: - PAYMENT additionalProperties: false type: object title: PazeTransactionOptions ClickToPaySession: properties: digital_payment_application_id: type: string title: Digital Payment Application Id description: The ID of the Click to Pay application. examples: - a0c3ef2e-9cdb-4cbf-aaff-5baac2928e1b digital_payment_application_name: type: string title: Digital Payment Application Name description: The merchant name as configured ont he the Click to Pay wallet. examples: - ACME additionalProperties: false type: object required: - digital_payment_application_id - digital_payment_application_name title: ClickToPaySession Error405: properties: type: type: string const: error title: Type description: Always `error`. default: error examples: - error code: type: string title: Code description: Always `method_not_allowed` default: method_not_allowed examples: - method_not_allowed status: type: integer title: Status description: Always `405`. default: 405 examples: - 405 message: type: string title: Message description: A human readable message that provides more context to the error. default: Method Not Allowed examples: - Method Not Allowed details: items: $ref: '#/components/schemas/ErrorDetail' type: array title: Details description: A list of details that further ellaborate on the error. default: [] additionalProperties: false type: object title: Error405 Error429: properties: type: type: string const: error title: Type description: Always `error`. default: error examples: - error code: type: string title: Code description: Always `too_many_requests` default: too_many_requests examples: - too_many_requests status: type: integer title: Status description: Always `429`. default: 429 examples: - 429 message: type: string title: Message description: A human readable message that provides more context to the error. default: Generic error examples: - Request failed validation details: items: $ref: '#/components/schemas/ErrorDetail' type: array title: Details description: A list of details that further ellaborate on the error. default: [] additionalProperties: false type: object title: Error429 PazeMobileSessionCreate: properties: pazeCheckoutUrl: type: string title: Pazecheckouturl description: Session URL for launching the Paze checkout UI from the native mobile app. clientContext: type: string title: Clientcontext description: Merchant-defined transaction identifier echoed from the request. ewSID: type: string title: Ewsid description: Globally unique session identifier generated by Paze. timestampISO8601: type: string title: Timestampiso8601 description: Timestamp when the response was sent by Paze, in ISO 8601 format. additionalProperties: false type: object required: - pazeCheckoutUrl - clientContext - ewSID - timestampISO8601 title: PazeMobileSessionCreate PazeSessionReview: properties: consumer: $ref: '#/components/schemas/PazeConsumer' shippingAddress: anyOf: - $ref: '#/components/schemas/PazeShippingAddress' - type: 'null' maskedCard: $ref: '#/components/schemas/PazeMaskedCard' links: $ref: '#/components/schemas/PazeSessionReviewLinks' code: type: string title: Code description: Opaque token issued by the Paze service to be used in the next Paze interaction. examples: - eyJhdWQiOm51bGwsImtpZCI6IjE3... additionalProperties: false type: object required: - consumer - shippingAddress - maskedCard - links - code title: PazeSessionReview Error500: properties: type: type: string const: error title: Type description: Always `error`. default: error examples: - error code: type: string title: Code description: Always `server_error` default: server_error examples: - server_error status: type: integer title: Status description: Always `500`. default: 500 examples: - 500 message: type: string title: Message description: A human readable message that provides more context to the error. default: Request could not be processed examples: - Request could not be processed details: items: $ref: '#/components/schemas/ErrorDetail' type: array title: Details description: A list of details that further ellaborate on the error. default: [] additionalProperties: false type: object title: Error500 PazeMobileSession: properties: id: type: string title: Id description: The Paze merchant data ID. examples: - W8GT9RLCNME754Z7025613H3PDM2T4HF2CSAOi9w2kkP3D4S0 name: type: string title: Name description: The merchant display name. examples: - ACME profileId: type: string title: Profileid description: The Paze profile ID for the given domain. examples: - 550e8400-e29b-41d4-a716-446655440000 accessToken: type: string title: Accesstoken description: The Paze OAuth access token. Returned only when `source` is `mobile`. examples: - eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9... sessionId: type: string title: Sessionid description: The Paze session ID. Returned only when `source` is `mobile`. examples: - 550e8400-e29b-41d4-a716-446655440000 additionalProperties: false type: object required: - id - name - profileId - accessToken - sessionId title: PazeMobileSession Error504: properties: type: type: string const: error title: Type description: Always `error`. default: error examples: - error code: type: string title: Code description: Always `gateway_timeout` default: gateway_timeout examples: - gateway_timeout status: type: integer title: Status default: 504 message: type: string title: Message description: A human readable message that provides more context to the error. default: Request could not be processed examples: - Request could not be processed details: items: $ref: '#/components/schemas/ErrorDetail' type: array title: Details description: A list of details that further ellaborate on the error. default: [] additionalProperties: false type: object title: Error504 GooglePaySession: properties: gateway_merchant_id: type: string title: Gateway Merchant Id description: The gateway ID for the merchant as assigned by our platform. examples: - app.gr4vy.sandbox.example.default token: type: string title: Token description: The session token for Google Pay. examples: - UouQUGXehuqwQ7FI additionalProperties: false type: object required: - gateway_merchant_id - token title: GooglePaySession PazeShippingAddress: properties: line1: type: string title: Line1 description: Line 1 of the address. examples: - 51551 Raynor Stream line2: anyOf: - type: string - type: 'null' title: Line2 description: Line 2 of the address. line3: anyOf: - type: string - type: 'null' title: Line3 description: Line 3 of the address. city: type: string title: City description: City. examples: - East Kory state: type: string title: State description: State or region. examples: - ND zip: type: string title: Zip description: Postal code. examples: - '67137' countryCode: type: string title: Countrycode description: ISO 3166-1 alpha-2 country code. examples: - US deliveryContactDetails: anyOf: - $ref: '#/components/schemas/PazeDeliveryContactDetails' - type: 'null' additionalProperties: false type: object required: - line1 - city - state - zip - countryCode - deliveryContactDetails title: PazeShippingAddress Error400: properties: type: type: string const: error title: Type description: Always `error`. default: error examples: - error code: type: string title: Code description: Always `bad_request` default: bad_request examples: - bad_request status: type: integer title: Status description: Always `400`. default: 400 examples: - 400 message: type: string title: Message description: A human readable message that provides more context to the error. default: Generic error examples: - Request failed validation details: items: $ref: '#/components/schemas/ErrorDetail' type: array title: Details description: A list of details that further ellaborate on the error. default: [] additionalProperties: false type: object title: Error400 ApplePaySession: properties: {} additionalProperties: true type: object title: ApplePaySession Error502: properties: type: type: string const: error title: Type description: Always `error`. default: error examples: - error code: type: string title: Code description: Always `bad_gateway` default: bad_gateway examples: - bad_gateway status: type: integer title: Status description: Always `502`. default: 502 examples: - 502 message: type: string title: Message description: A human readable message that provides more context to the error. default: Request could not be processed examples: - Request could not be processed details: items: $ref: '#/components/schemas/ErrorDetail' type: array title: Details description: A list of details that further ellaborate on the error. default: [] additionalProperties: false type: object title: Error502 ValidationError: properties: loc: items: anyOf: - type: string - type: integer type: array title: Location msg: type: string title: Message type: type: string title: Error Type input: title: Input ctx: type: object title: Context type: object required: - loc - msg - type title: ValidationError PazeMobileSessionCreateRequest: properties: client: $ref: '#/components/schemas/PazeClient' description: The merchant client integrating with Paze. sessionId: type: string maxLength: 255 title: Sessionid description: Session reference identifier generated by the merchant. Must be reused across all Paze APIs in a checkout session. examples: - 24e4dbb9-4f5e-43e8-8375-e9fd45650bc9 accessToken: type: string title: Accesstoken description: Access token obtained from the Paze session endpoint with source=mobile. callbackURLScheme: type: string maxLength: 40 title: Callbackurlscheme description: Merchant app's ID (iOS bundle identifier or Android application ID) used as the callback URL scheme. examples: - Gr4vyCallback intent: type: string enum: - REVIEW_AND_PAY - EXPRESS_CHECKOUT - ADD_CARD title: Intent description: Primary intent of the checkout session. examples: - EXPRESS_CHECKOUT transactionValue: anyOf: - $ref: '#/components/schemas/PazeTransactionValue' - type: 'null' description: Currency and amount of the transaction. Required when intent is EXPRESS_CHECKOUT. transactionType: anyOf: - type: string enum: - PURCHASE - CARD_ON_FILE - BOTH - type: 'null' title: Transactiontype description: Type of transaction. shippingPreference: anyOf: - type: string enum: - ALL - NONE - type: 'null' title: Shippingpreference description: Whether to collect a shipping address from the consumer. billingPreference: anyOf: - type: string enum: - ALL - ZIP_COUNTRY - NONE - type: 'null' title: Billingpreference description: Verbosity of billing address required. emailAddress: anyOf: - type: string maxLength: 128 - type: 'null' title: Emailaddress description: Consumer email address for checkout flow optimization. phoneNumber: anyOf: - type: string maxLength: 10 - type: 'null' title: Phonenumber description: Consumer phone number for checkout flow optimization. examples: - '7735550100' cobrand: anyOf: - items: $ref: '#/components/schemas/PazeCobrandItem' type: array maxItems: 10 - type: 'null' title: Cobrand description: Details for cobranded cards offered by the merchant. acceptedShippingCountries: anyOf: - items: type: string type: array - type: 'null' title: Acceptedshippingcountries description: ISO 3166-1 alpha-2 country codes restricting eligible shipping addresses. Empty list or absence means all countries accepted. acceptedPaymentCardNetworks: anyOf: - items: type: string enum: - VISA - MASTERCARD type: array - type: 'null' title: Acceptedpaymentcardnetworks description: Accepted payment card networks. Empty list or absence means all networks accepted. alwaysEnableCheckout: type: boolean title: Alwaysenablecheckout description: Set to true to enable Paze checkout even if the provided email address or phone number does not match a Paze wallet. default: false additionalProperties: false type: object required: - client - sessionId - accessToken - callbackURLScheme - intent title: PazeMobileSessionCreateRequest PazeEnhancedTransactionData: properties: ecomData: anyOf: - $ref: '#/components/schemas/PazeEcomData' - type: 'null' description: Details pertaining to electronic commerce purchases. travelData: anyOf: - $ref: '#/components/schemas/PazeTravelData' - type: 'null' description: Details pertaining to travel bookings. additionalProperties: false type: object title: PazeEnhancedTransactionData PazeMobileNumber: properties: countryCode: type: string title: Countrycode description: ITU country dialing code. examples: - '1' phoneNumber: type: string title: Phonenumber description: Phone number without country code. examples: - '3213213211' additionalProperties: false type: object required: - countryCode - phoneNumber title: PazeMobileNumber Error409: properties: type: type: string const: error title: Type description: Always `error`. default: error examples: - error code: type: string title: Code description: Always `duplicate_record` default: duplicate_record examples: - duplicate_record status: type: integer title: Status description: Always `409`. default: 409 examples: - 409 message: type: string title: Message description: A human readable message that provides more context to the error. default: Generic error examples: - Request failed validation details: items: $ref: '#/components/schemas/ErrorDetail' type: array title: Details description: A list of details that further ellaborate on the error. default: [] resource_id: anyOf: - type: string - type: 'null' title: Resource Id description: The ID of the conflicting resource. examples: - cdc70639-cb9c-4222-a73f-b8ce39f7821b additionalProperties: false type: object title: Error409 Error403: properties: type: type: string const: error title: Type description: Always `error`. default: error examples: - error code: type: string title: Code description: Always `forbidden` default: forbidden examples: - forbidden status: type: integer title: Status description: Always `403`. default: 403 examples: - 403 message: type: string title: Message description: A human readable message that provides more context to the error. default: Generic error examples: - Request failed validation details: items: $ref: '#/components/schemas/ErrorDetail' type: array title: Details description: A list of details that further ellaborate on the error. default: [] additionalProperties: false type: object title: Error403 GooglePaySessionRequest: properties: origin_domain: type: string title: Origin Domain description: The domain on which Google Pay is being loaded. examples: - example.com additionalProperties: false type: object required: - origin_domain title: GooglePaySessionRequest ClickToPaySessionRequest: properties: checkout_session_id: type: string format: uuid title: Checkout Session Id description: The checkout session ID to create a Click to Pay session for. examples: - 4137b1cf-39ac-42a8-bad6-1c680d5dab6b additionalProperties: false type: object required: - checkout_session_id title: ClickToPaySessionRequest PazeTransactionValue: properties: transactionCurrency: type: string title: Transactioncurrency description: ISO 4217 currency code of the transaction. examples: - USD transactionAmount: type: string title: Transactionamount description: Amount of the transaction including dollar and cents, e.g. '99.95'. examples: - '5.39' additionalProperties: false type: object required: - transactionCurrency - transactionAmount title: PazeTransactionValue PazeCobrandItem: properties: name: type: string maxLength: 100 title: Name description: Product name of the cobrand card. Must match exactly with the card name from the network. examples: - Travel Rewards benefitsOffered: anyOf: - type: boolean - type: 'null' title: Benefitsoffered description: Whether benefits are offered for this cobrand card. additionalProperties: false type: object required: - name title: PazeCobrandItem PazeSessionCompleteRequest: properties: sessionId: type: string maxLength: 255 title: Sessionid description: Session reference identifier generated by the merchant. Must match the value sent in the Paze session create call. examples: - 7c1cba03-d20e-4a3f-9d77-e5dc23a39ac2 code: type: string maxLength: 10240 title: Code description: Opaque token issued by the Paze service in the response from the most recent Paze UX interaction. examples: - eyJhdWQiOm51bGwsImtpZCI6IjE3... accessToken: type: string title: Accesstoken description: The Paze OAuth access token returned by the Paze mobile session create call. Used to authenticate the request to Paze. examples: - eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9... transactionType: type: string enum: - PURCHASE - CARD_ON_FILE - BOTH title: Transactiontype description: The type of transaction being completed. PURCHASE for a one-off checkout, CARD_ON_FILE to retain the card for future use, or BOTH. examples: - PURCHASE transactionOptions: anyOf: - $ref: '#/components/schemas/PazeTransactionOptions' - type: 'null' description: Client configuration data overriding values configured during merchant onboarding. transactionValue: anyOf: - $ref: '#/components/schemas/PazeTransactionValue' - type: 'null' description: Required when `transactionType` is PURCHASE or BOTH. Must be omitted when `transactionType` is CARD_ON_FILE. processingNetwork: anyOf: - type: string enum: - VISA - MASTERCARD - DISCOVER - type: 'null' title: Processingnetwork description: Card network to process the transaction on. If not provided, Paze defaults to the network on the front of the card. examples: - VISA enhancedTransactionData: anyOf: - $ref: '#/components/schemas/PazeEnhancedTransactionData' - type: 'null' description: Additional purchase context used by Paze for risk scoring. additionalProperties: false type: object required: - sessionId - code - accessToken - transactionType title: PazeSessionCompleteRequest PazeDigitalCardData: properties: artUri: type: string title: Arturi description: URI hosting the card art image. examples: - https://sandbox.assets.vims.visa.com/vims/cardart/8f64614def1a41d39ea8acae4616bf6f_imageC artHeight: type: integer title: Artheight description: Card art height in pixels. examples: - 50 artWidth: type: integer title: Artwidth description: Card art width in pixels. examples: - 80 additionalProperties: false type: object required: - artUri - artHeight - artWidth title: PazeDigitalCardData PazeDeliveryContactDetails: properties: contactFullName: anyOf: - type: string - type: 'null' title: Contactfullname description: Consumer-provided name of the contact person. examples: - Team Integrations contactPhoneNumber: anyOf: - $ref: '#/components/schemas/PazeMobileNumber' - type: 'null' additionalProperties: false type: object required: - contactFullName - contactPhoneNumber title: PazeDeliveryContactDetails ApplePaySessionRequest: properties: validation_url: type: string title: Validation Url description: The validation URL as provided by the Apple SDK when processing a payment. examples: - https://apple-pay-gateway-cert.apple.com domain_name: type: string title: Domain Name description: The domain on which Apple Pay is being loaded. examples: - example.com additionalProperties: false type: object required: - validation_url - domain_name title: ApplePaySessionRequest securitySchemes: OAuth2PasswordBearer: type: oauth2 flows: password: scopes: embed: Shorthand for all gr4vy embed related scopes sessions.refresh: Refresh access-token anti-fraud-service-definitions.read: Read Anti Fraud Service Definitions anti-fraud-services.read: Read Anti Fraud Services api-key-pairs.read: Read API Key Pairs api-logs.read: Read API Logs apple-pay-certificates.read: Read Apple Pay Certificates audit-logs.read: Read Audit Logs bin-checker.read: Read BIN Checker buyers.read: Read Buyers buyers.billing-details.read: Read Billing Details card-scheme-definitions.read: Read Card Scheme Definitions checkout-sessions.read: Read Checkout Sessions connections.read: Read Connections digital-wallets.read: Read Digital Wallets flows.read: Read Flows gift-card-service-definitions.read: Read Gift Card Service Definitions gift-card-services.read: Read Gift Card Services gift-cards.read: Read Gift Cards merchant-accounts.read: Read Merchant Accounts payment-links.read: Read Payment Links payment-method-definitions.read: Read Payment Method Definitions payment-methods.read: Read Payment Methods payment-options.read: Read Payment Options payment-service-definitions.read: Read Payment Service Definitions payment-services.read: Read Payment Service payouts.read: Read Payouts reports.read: Read Reports roles.read: Read Roles three-ds-scenarios.read: Read 3DS Scenarios transactions.read: Read Transactions users.me.read: Read User Profile vault-forward.read: Read Vault Forward vault-forward-authentications.read: Read Vault Forward Authentications vault-forward-configs.read: Read Vault Forward Configurations vault-forward-definitions.read: Read Vault Forward Definitions webhook-subscriptions.read: Read Webhook Subscriptions business-contexts.read: Read Business Contexts health-dashboard.read: Read Health Dashboard metrics-explorer.read: Read Metrics Explorer monitoring.read: Read Monitoring reset.read: Read Reset sessions.read: Read Sessions users.read: Read Users anti-fraud-service-definitions.write: Write Anti Fraud Service Definitions anti-fraud-services.write: Write Anti Fraud Services api-key-pairs.write: Write API Key Pairs api-logs.write: Write API Logs apple-pay-certificates.write: Write Apple Pay Certificates audit-logs.write: Write Audit Logs bin-checker.write: Write BIN Checker buyers.write: Write Buyers buyers.billing-details.write: Write Billing Details card-scheme-definitions.write: Write Card Scheme Definitions checkout-sessions.write: Write Checkout Sessions connections.write: Write Connections digital-wallets.write: Write Digital Wallets flows.write: Write Flows gift-card-service-definitions.write: Write Gift Card Service Definitions gift-card-services.write: Write Gift Card Services gift-cards.write: Write Gift Cards merchant-accounts.write: Write Merchant Accounts payment-links.write: Write Payment Links payment-method-definitions.write: Write Payment Method Definitions payment-methods.write: Write Payment Methods payment-options.write: Write Payment Options payment-service-definitions.write: Write Payment Service Definitions payment-services.write: Write Payment Service payouts.write: Write Payouts reports.write: Write Reports roles.write: Write Roles three-ds-scenarios.write: Write 3DS Scenarios transactions.write: Write Transactions users.me.write: Write User Profile vault-forward.write: Write Vault Forward vault-forward-authentications.write: Write Vault Forward Authentications vault-forward-configs.write: Write Vault Forward Configurations vault-forward-definitions.write: Write Vault Forward Definitions webhook-subscriptions.write: Write Webhook Subscriptions business-contexts.write: Write Business Contexts health-dashboard.write: Write Health Dashboard metrics-explorer.write: Write Metrics Explorer monitoring.write: Write Monitoring reset.write: Write Reset sessions.write: Write Sessions users.write: Write Users tokenUrl: auth/token