Skip to content

Commit

Permalink
Merge pull request #7 from fivetran/feature/api-updates
Browse files Browse the repository at this point in the history
Feature/api updates
  • Loading branch information
fivetran-catfritz authored May 31, 2023
2 parents 464ed9f + 869ff3c commit c405845
Show file tree
Hide file tree
Showing 34 changed files with 144 additions and 179 deletions.
4 changes: 2 additions & 2 deletions .buildkite/scripts/run_models.sh
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ dbt seed --target "$db" --full-refresh
dbt compile --target "$db"
dbt run --target "$db" --full-refresh
dbt test --target "$db"
dbt run --vars '{recharge__payment_source_enabled: false, recharge__one_time_product_enabled: false, recharge__address_passthrough_columns: [cart_attribute_refersion_id]}' --target "$db" --full-refresh
dbt test --vars '{recharge__payment_source_enabled: false, recharge__one_time_product_enabled: false, recharge__address_passthrough_columns: [cart_attribute_refersion_id]}' --target "$db"
dbt run --vars '{recharge__one_time_product_enabled: false, recharge__address_passthrough_columns: [cart_attribute_id]}' --target "$db" --full-refresh
dbt test --vars '{recharge__one_time_product_enabled: false, recharge__address_passthrough_columns: [cart_attribute_id]}' --target "$db"

dbt run-operation fivetran_utils.drop_schemas_automation --target "$db"
6 changes: 0 additions & 6 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,3 @@
# dbt_recharge v0.1.1
[PR #2](https://github.com/fivetran/dbt_recharge/pull/2) includes the following changes:
## Under the Hood:

- Incorporated the new `fivetran_utils.drop_schemas_automation` macro into the end of each Buildkite integration test job.
- Updated the pull request [templates](/.github).
# dbt_Recharge_source v0.1.0
🎉 This is the initial release of this package! 🎉
# 📣 What does this dbt package do?
Expand Down
6 changes: 5 additions & 1 deletion DECISIONLOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,8 @@
- We also welcome suggestions for other situations unaccounted for in this model! Feature requests or issues can be submitted [here](https://github.com/fivetran/dbt_recharge/issues/new/choose).

## Charge Line Item History
- Since the billing history model summarized at the order level, we also wanted to provide insight at the line item model. For this model, the charges data was used since most of the line item data, such as shipping, tax, discounts, is provided at this level by the Fivetran connector.
- Since the billing history model summarized at the order level, we also wanted to provide insight at the line item model. For this model, the charges data was used since most of the line item data, such as shipping, tax, discounts, is provided at this level by the Fivetran connector.

## Customer Details
- We provide a column called `calculated_subscriptions_active_count`. This is meant to supplement the Recharge-provided `subscriptions_active_count` due to possible discrepancies with this value. Our calculation counts the number of subscriptions with an `active` status, from the `SUBSCRIPTION` table, for each customer.
- We use this column in the [example analysis model](https://fivetran.github.io/dbt_recharge/#!/analysis/analysis.recharge.recharge__churn_analysis), however we suggest you to use the column that works best for you.
9 changes: 3 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
# WORK IN PROGRESS!!
<p align="center">
<a alt="License"
href="https://github.com/fivetran/dbt_recharge/blob/main/LICENSE">
Expand Down Expand Up @@ -37,7 +36,7 @@ An example churn model is separately available in the analysis folder:
## Step 1: Prerequisites
To use this dbt package, you must have the following:
- At least one Fivetran Recharge connector syncing data into your destination.
- A **BigQuery**, **Snowflake**, **Redshift**, **PostgreSQL**, **Databricks** destination.
- A **BigQuery**, **Snowflake**, **Redshift**, **PostgreSQL**, or **Databricks** destination.

## Step 2: Install the package
Include the following recharge package version in your `packages.yml` file.
Expand Down Expand Up @@ -67,11 +66,10 @@ vars:
```

## Step 4: Disable models for non-existent sources
Your Recharge connector may not sync every table that this package expects. If you do not have the `PAYMENT_METHOD`, `ONE_TIME_PRODUCT`, and/or `CHARGE_TAX_LINE` tables synced, add the corresponding variable(s) to your root `dbt_project.yml` file to disable these sources:
Your Recharge connector may not sync every table that this package expects. If you do not have the `ONE_TIME_PRODUCT` and/or `CHARGE_TAX_LINE` tables synced, add the corresponding variable(s) to your root `dbt_project.yml` file to disable these sources:

```yml
vars:
recharge__payment_method_enabled: false # Disables if you do not have the PAYMENT_METHOD table. Default is True.
recharge__one_time_product_enabled: false # Disables if you do not have the ONE_TIME_PRODUCT table. Default is True.
recharge__charge_tax_line_enabled: false # Disables if you do not have the CHARGE_TAX_LINE table. Default is True.
```
Expand Down Expand Up @@ -101,7 +99,6 @@ vars:
recharge__charge_line_item_passthrough_columns:
recharge__order_passthrough_columns:
recharge__order_line_passthrough_columns:
recharge__product_passthrough_columns:
recharge__subscription_passthrough_columns:
recharge__subscription_history_passthrough_columns:
```
Expand Down Expand Up @@ -185,4 +182,4 @@ This dbt package takes an opinionated stance on revenue is calculated, using cha
# 🏪 Are there any resources available?
- If you have questions or want to reach out for help, please refer to the [GitHub Issue](https://github.com/fivetran/dbt_microsoft_ads/issues/new/choose) section to find the right avenue of support for you.
- If you would like to provide feedback to the dbt package team at Fivetran or would like to request a new dbt package, fill out our [Feedback Form](https://www.surveymonkey.com/r/DQ7K7WW).
- Have questions or want to be part of the community discourse? Create a post in the [Fivetran community](https://community.fivetran.com/t5/user-group-for-dbt/gh-p/dbt-user-group) and our team along with the community can join in on the discussion!
- Have questions or want to be part of the community discourse? Create a post in the [Fivetran community](https://community.fivetran.com/t5/user-group-for-dbt/gh-p/dbt-user-group) and our team along with the community can join in on the discussion!
25 changes: 14 additions & 11 deletions analyses/recharge__churn_analysis.sql
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,23 @@ with customers as (
select *
from {{ ref('recharge__customer_details') }}

), why_churned as (
), churn_types as (
select
customers.*,

{# Definitions of churned per recharge docs #}
case when calculated_active_subscriptions = 0 and has_valid_payment_method is false
then 'passive cancellation' as churn_reason,
case when calculated_active_subscriptions = 0 and has_valid_payment_method is true
then 'active cancellation' as churn_reason,
case when calculated_active_subscriptions > 0 and has_valid_payment_method is false
then 'charge error' as churn_reason

case when calculated_subscriptions_active_count > 0 and has_valid_payment_method = true
then false else true
end as is_churned,
{# Definitions of churn reasons per recharge docs #}
case when calculated_subscriptions_active_count = 0 and has_valid_payment_method = false
then 'passive cancellation'
when calculated_subscriptions_active_count = 0 and has_valid_payment_method = true
then 'active cancellation'
when calculated_subscriptions_active_count > 0 and has_valid_payment_method = false
then 'charge error'
else cast(null as {{ dbt.type_string() }})
end as churn_type
from customers
)

select *
from why_churned
from churn_type
9 changes: 4 additions & 5 deletions dbt_project.yml
Original file line number Diff line number Diff line change
@@ -1,25 +1,25 @@

name: 'recharge'
version: '0.1.1'
version: '0.1.0'
config-version: 2
require-dbt-version: [">=1.3.0", "<2.0.0"]

vars:
recharge:
address: "{{ ref('stg_recharge__address') }}"
address_discounts: "{{ ref('stg_recharge__address_discounts') }}"
address_shipping_line: "{{ ref('stg_recharge__address_shipping_line') }}"
charge: "{{ ref('stg_recharge__charge') }}"
charge_discount_code: "{{ ref('stg_recharge__charge_discount_code') }}"
charge_discount: "{{ ref('stg_recharge__charge_discount') }}"
charge_line_item: "{{ ref('stg_recharge__charge_line_item') }}"
charge_note_attribute: "{{ ref('stg_recharge__charge_note_attribute') }}"
charge_order_attribute: "{{ ref('stg_recharge__charge_order_attribute') }}"
charge_tax_line: "{{ ref('stg_recharge__charge_tax_line') }}"
charge_shipping_line: "{{ ref('stg_recharge__charge_shipping_line') }}"
customer: "{{ ref('stg_recharge__customer') }}"
discount: "{{ ref('stg_recharge__discount') }}"
one_time_product: "{{ ref('stg_recharge__one_time_product') }}"
order: "{{ ref('stg_recharge__order') }}"
order_line_item: "{{ ref('stg_recharge__order_line_item') }}"
payment_source: "{{ ref('stg_recharge__payment_source') }}"
product: "{{ ref('stg_recharge__product') }}"
subscription: "{{ ref('stg_recharge__subscription') }}"
subscription_history: "{{ ref('stg_recharge__subscription_history') }}"
Expand All @@ -29,7 +29,6 @@ vars:
recharge__charge_line_item_passthrough_columns: []
recharge__order_passthrough_columns: []
recharge__order_line_passthrough_columns: []
recharge__plan_passthrough_columns: []
recharge__subscription_passthrough_columns: []
recharge__subscription_history_passthrough_columns: []

Expand Down
2 changes: 1 addition & 1 deletion docs/catalog.json

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/manifest.json

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/run_results.json

Large diffs are not rendered by default.

12 changes: 6 additions & 6 deletions integration_tests/ci/sample.profiles.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,13 @@ integration_tests:
pass: "{{ env_var('CI_REDSHIFT_DBT_PASS') }}"
dbname: "{{ env_var('CI_REDSHIFT_DBT_DBNAME') }}"
port: 5439
schema: recharge_integration_tests_02
schema: recharge_integration_tests_03
threads: 8
bigquery:
type: bigquery
method: service-account-json
project: 'dbt-package-testing'
schema: recharge_integration_tests_02
schema: recharge_integration_tests_03
threads: 8
keyfile_json: "{{ env_var('GCLOUD_SERVICE_KEY') | as_native }}"
snowflake:
Expand All @@ -33,7 +33,7 @@ integration_tests:
role: "{{ env_var('CI_SNOWFLAKE_DBT_ROLE') }}"
database: "{{ env_var('CI_SNOWFLAKE_DBT_DATABASE') }}"
warehouse: "{{ env_var('CI_SNOWFLAKE_DBT_WAREHOUSE') }}"
schema: recharge_integration_tests_02
schema: recharge_integration_tests_03
threads: 8
postgres:
type: postgres
Expand All @@ -42,13 +42,13 @@ integration_tests:
pass: "{{ env_var('CI_POSTGRES_DBT_PASS') }}"
dbname: "{{ env_var('CI_POSTGRES_DBT_DBNAME') }}"
port: 5432
schema: recharge_integration_tests_02
schema: recharge_integration_tests_03
threads: 8
databricks:
catalog: "{{ env_var('CI_DATABRICKS_DBT_CATALOG') }}"
host: "{{ env_var('CI_DATABRICKS_DBT_HOST') }}"
http_path: "{{ env_var('CI_DATABRICKS_DBT_HTTP_PATH') }}"
schema: recharge_integration_tests_02
threads: 2
schema: recharge_integration_tests_03
threads: 8
token: "{{ env_var('CI_DATABRICKS_DBT_TOKEN') }}"
type: databricks
24 changes: 11 additions & 13 deletions integration_tests/dbt_project.yml
Original file line number Diff line number Diff line change
@@ -1,19 +1,20 @@
config-version: 2

name: 'recharge_integration_tests'
version: '0.1.1'
version: '0.1.0'

profile: 'integration_tests'

vars:
recharge_source:
recharge_schema: recharge_integration_tests_02
recharge_schema: recharge_integration_tests_03
recharge_address_identifier: "address_data"
recharge_address_discounts_identifier: "address_discounts_data"
recharge_address_shipping_line_identifier: "address_shipping_line_data"
recharge_charge_identifier: "charge_data"
recharge_charge_discount_code_identifier: "charge_discount_code_data"
recharge_charge_discount_identifier: "charge_discount_data"
recharge_charge_line_item_identifier: "charge_line_item_data"
recharge_charge_note_attribute_identifier: "charge_note_attribute_data"
recharge_charge_order_attribute_identifier: "charge_order_attribute_data"
recharge_charge_shipping_line_identifier: "charge_shipping_line_data"
recharge_charge_tax_line_identifier: "charge_tax_line_data"
recharge_customer_identifier: "customer_data"
Expand All @@ -22,8 +23,6 @@ vars:
order: "{{ ref('order_data') }}" # Comment out for generating docs -- Uncomment this before sending to buildkite.
# recharge_order_identifier: "order_data" # Uncomment for generating docs -- Comment this out before sending to buildkite.
recharge_order_line_item_identifier: "order_line_item_data"
recharge_payment_method_identifier: "payment_method_data"
recharge_plan_identifier: "plan_data"
recharge_subscription_identifier: "subscription_data"
recharge_subscription_history_identifier: "subscription_history_data"

Expand All @@ -42,24 +41,23 @@ seeds:
NEXT_CHARGE_SCHEDULED_AT: "timestamp"
SCHEDULED_AT: "timestamp"
SUBTOTAL_PRICE: "float"
TOTAL_PRICE: "float"
TOTAL_PRICE: "{{ 'string' if target.name in ['bigquery', 'spark', 'databricks'] else 'varchar' }}"
UPDATED_AT: "timestamp"
ID: "{{ 'INT64' if target.type == 'bigquery' else 'bigint' }}"
ADDRESS_ID: "{{ 'INT64' if target.type == 'bigquery' else 'bigint' }}"
CHARGE_ID: "{{ 'INT64' if target.type == 'bigquery' else 'bigint' }}"
CUSTOMER_ID: "{{ 'INT64' if target.type == 'bigquery' else 'bigint' }}"
DISCOUNT_ID: "{{ 'INT64' if target.type == 'bigquery' else 'bigint' }}"
SHOPIFY_PRODUCT_ID: "{{ 'INT64' if target.type == 'bigquery' else 'bigint' }}"
SHOPIFY_VARIANT_ID: "{{ 'INT64' if target.type == 'bigquery' else 'bigint' }}"
EXTERNAL_PRODUCT_ID_ECOMMERCE: "{{ 'INT64' if target.type == 'bigquery' else 'bigint' }}"
EXTERNAL_VARIANT_ID_ECOMMERCE: "{{ 'INT64' if target.type == 'bigquery' else 'bigint' }}"
SUBSCRIPTION_ID: "{{ 'INT64' if target.type == 'bigquery' else 'bigint' }}"
charge_data:
+column_types:
LAST_CHARGE_ATTEMPT_DATE: "timestamp"
RETRY_DATE: "timestamp"
charge_line_item_data:
charge_discount_data:
+column_types:
PROPERTY_BUNDLE_ID: "{{ 'INT64' if target.type == 'bigquery' else 'bigint' }}"
PROPERTY_WIDGET_ID: "{{ 'INT64' if target.type == 'bigquery' else 'bigint' }}"
VALUE: "float"
customer_data:
+column_types:
FIRST_CHARGE_PROCESSED_AT: "timestamp"
Expand All @@ -71,4 +69,4 @@ seeds:
order_data:
+column_types:
SHIPPED_DATE: "timestamp"
SHIPPING_DATE: "timestamp"
SHIPPING_DATE: "timestamp"
2 changes: 1 addition & 1 deletion integration_tests/seeds/address_data.csv
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
ID,CUSTOMER_ID,FIRST_NAME,LAST_NAME,ADDRESS_1,ADDRESS_2,CITY,PROVINCE,COUNTRY,ZIP,COMPANY,PHONE,CREATED_AT,UPDATED_AT,_FIVETRAN_DELETED,_FIVETRAN_SYNCED
ID,CUSTOMER_ID,FIRST_NAME,LAST_NAME,ADDRESS_1,ADDRESS_2,CITY,PROVINCE,COUNTRY_CODE,ZIP,COMPANY,PHONE,CREATED_AT,UPDATED_AT,_FIVETRAN_DELETED,_FIVETRAN_SYNCED
300000001,2000000001,First01,Last01,Address Line 1 01,Address Line 2 01,City01,,Country01,Zip01,,Phone01,2022-09-07T14:25:49Z,2022-09-07T14:26:02Z,FALSE,2022-09-08T03:56:04.798Z
300000002,2000000001,First02,Last02,Address Line 1 02,,City02,,Country02,Zip02,,Phone02,2022-09-07T12:25:55Z,2022-09-07T12:25:55Z,FALSE,2022-09-08T03:56:04.797Z
3 changes: 3 additions & 0 deletions integration_tests/seeds/address_discounts_data.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
ID,ADDRESS_ID,INDEX,_FIVETRAN_DELETED,_FIVETRAN_SYNCED
500000001,300000001,0,FALSE,2022-04-14T21:30:20.895Z
500000002,300000002,0,FALSE,2022-04-14T21:29:44.298Z
6 changes: 3 additions & 3 deletions integration_tests/seeds/charge_data.csv
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
ID,ADDRESS_ID,CUSTOMER_ID,FIRST_NAME,LAST_NAME,CUSTOMER_HASH,NOTE,CREATED_AT,UPDATED_AT,PROCESSED_AT,SCHEDULED_AT,SHIPMENTS_COUNT,SHOPIFY_ORDER_ID,SUB_TOTAL,SUBTOTAL_PRICE,TAGS,TAX_LINES,TOTAL_DISCOUNTS,TOTAL_LINE_ITEMS_PRICE,TOTAL_PRICE,TOTAL_TAX,TOTAL_WEIGHT,TYPE,STATUS,TOTAL_REFUNDS,TRANSACTION_ID,EMAIL,PROCESSOR_NAME,HAS_UNCOMMITED_CHANGES,LAST_CHARGE_ATTEMPT_DATE,RETRY_DATE,ERROR_TYPE,ERROR,NUMBER_TIMES_TRIED,SHOPIFY_VARIANT_ID_NOT_FOUND,CLIENT_DETAILS_BROWSER_IP,CLIENT_DETAILS_USER_AGENT,_FIVETRAN_SYNCED
400000001,300000001,90000001,First01,Last01,d81234567891234567891234567890c,next order in sequence 7,2022-09-08T03:21:55Z,2022-09-08T03:21:56Z,,2022-11-13T05:00:00Z,1,,,11.95,"Subscription, Subscription Recurring Order",1.99,0,11.95,11.95,1.99,100,RECURRING,QUEUED,,,[email protected],stripe,FALSE,,,,,,,,,2022-09-08T04:21:39.798Z
400000002,300000002,90000002,First02,Last02,d81234567891234567891234567891b,next order in sequence 25,2022-11-08T03:13:09Z,2022-11-08T03:13:10Z,,2022-11-10T04:00:00Z,1,,,9.95,"Subscription, Subscription Recurring Order",1.66,0,9.95,9.95,1.66,100,RECURRING,QUEUED,,,[email protected],braintree,FALSE,,,,,,,,,2022-11-08T03:54:57.851Z
ID,ADDRESS_ID,CUSTOMER_ID,CUSTOMER_HASH,NOTE,CREATED_AT,UPDATED_AT,PROCESSED_AT,SCHEDULED_AT,ORDERS_COUNT,EXTERNAL_ORDER_ID_ECOMMERCE,SUBTOTAL_PRICE,TAGS,TAX_LINES,TOTAL_DISCOUNTS,TOTAL_LINE_ITEMS_PRICE,TOTAL_PRICE,TOTAL_TAX,TOTAL_WEIGHT_GRAMS,TYPE,STATUS,TOTAL_REFUNDS,EXTERNAL_TRANSACTION_ID_PAYMENT_PROCESSOR,EMAIL,PAYMENT_PROCESSOR,HAS_UNCOMMITED_CHANGES,RETRY_DATE,ERROR_TYPE,ERROR,CHARGE_ATTEMPTS,EXTERNAL_VARIANT_ID_NOT_FOUND,CLIENT_DETAILS_BROWSER_IP,CLIENT_DETAILS_USER_AGENT,_FIVETRAN_SYNCED,LAST_CHARGE_ATTEMPT_DATE
400000001,300000001,90000001,d81234567891234567891234567890c,next order in sequence 7,2022-09-08T03:21:55Z,2022-09-08T03:21:56Z,,2022-11-13T05:00:00Z,1,,11.95,"Subscription, Subscription Recurring Order",1.99,0,11.95,11.95,1.99,100,RECURRING,QUEUED,,,[email protected],stripe,FALSE,,,,,,,,2022-09-08T04:21:39.798Z,2022-09-08T04:21:39.798Z
400000002,300000002,90000002,d81234567891234567891234567891b,next order in sequence 25,2022-11-08T03:13:09Z,2022-11-08T03:13:10Z,,2022-11-10T04:00:00Z,1,,9.95,"Subscription, Subscription Recurring Order",1.66,0,9.95,9.95,1.66,100,RECURRING,QUEUED,,,[email protected],braintree,FALSE,,,,,,,,2022-11-08T03:54:57.851Z,2022-09-08T04:21:39.798Z
3 changes: 0 additions & 3 deletions integration_tests/seeds/charge_discount_code_data.csv

This file was deleted.

3 changes: 3 additions & 0 deletions integration_tests/seeds/charge_discount_data.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
CHARGE_ID,INDEX,ID,CODE,VALUE,VALUE_TYPE,_FIVETRAN_SYNCED
400000001,0,500000001,code01,8.0,percentage,2022-09-07T04:34:10.697Z
400000002,0,500000002,code02,15.0,percentage,2022-09-08T03:54:53.419Z
6 changes: 3 additions & 3 deletions integration_tests/seeds/charge_line_item_data.csv
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
CHARGE_ID,INDEX,SUBSCRIPTION_ID,VARIANT_TITLE,TITLE,QUANTITY,GRAMS,PRICE,SKU,SHOPIFY_PRODUCT_ID,SHOPIFY_VARIANT_ID,VENDOR,_FIVETRAN_SYNCED,PROPERTY_TITLE
400000001,0,600000001,Variant Title 01,Title 01,1,100,11.95,SKU01,6800000000001,4800000000001,VendorName01,2022-09-08T03:54:53.419Z,Property Title 01
400000002,1,600000002,Variant Title 02,Title 02,1,100,15,SKU02,6800000000002,4800000000002,VendorName02,2022-09-08T03:54:53.419Z,Property Title 02
CHARGE_ID,INDEX,VARIANT_TITLE,TITLE,QUANTITY,GRAMS,TOTAL_PRICE,SKU,EXTERNAL_PRODUCT_ID_ECOMMERCE,VENDOR,_FIVETRAN_SYNCED,UNIT_PRICE,TAX_DUE,TAXABLE,TAXABLE_AMOUNT,UNIT_PRICE_INCLUDES_TAX,PURCHASE_ITEM_ID,PURCHASE_ITEM_TYPE,EXTERNAL_VARIANT_ID_ECOMMERCE
400000001,0,Variant Title 01,Title 01,1,100,11.95,SKU01,6800000000001,VendorName01,2022-09-08T03:54:53.419Z,11.95,1,true,1,false,1234,type1,91011
400000002,1,Variant Title 02,Title 02,1,100,15,SKU02,6800000000002,VendorName02,2022-09-08T03:54:53.419Z,15,1,true,1,false,5678,type2,121314
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
CHARGE_ID,INDEX,NOTE_ATTRIBUTE,_FIVETRAN_SYNCED
CHARGE_ID,INDEX,ORDER_ATTRIBUTE,_FIVETRAN_SYNCED
400000001,0,"{ ""name"": ""_elevar_visitor_info"", ""value"": “{\”utm_source\"":\""facebook\"",\""utm_medium\"":\""paid\"",\""utm_campaign\"":\""name01\"",\""fbclid\"":\""bunchoflettersandnumbers\""}""}",2022-09-04T03:55:57.776Z
400000002,1,"{ ""name"": ""Refersion ID"", ""value"": “morebunchesofnumbersletters”}",2022-09-04T03:55:57.776Z
Loading

0 comments on commit c405845

Please sign in to comment.